Console/Physics
From Blue Mars Developer Guidebook
There are security restrictions on this article

Contents 
Physics Console Variables
Console variables that control physics parameters start with "p_".
variable: p_accuracy_LCPCG type: float current: 0.005 help: Desired accuracy of LCP CG solver (velocityrelated, m/s) variable: p_accuracy_LCPCG_no_improvement type: float current: 0.05 help: Required LCP CG accuracy that allows to stop if there was no improvement after p_max_LCPCG_fruitless_iters variable: p_accuracy_MC type: float current: 0.005 help: Desired accuracy of microcontact solver (velocityrelated, m/s) variable: p_approx_caps_len type: float current: 1.2 help: Breakable trees are approximated with capsules of this length (0 disables approximation) variable: p_damping_group_size type: int current: 8 help: Sets contacting objects group size before group damping is used.Usage: p_damping_group_size 3 Used for internal tweaking only.
Character IK
variable: p_characterik type: int current: 1 help: Toggles character IK. Usage: p_characterik [0/1] Default is 1 (on). Set to 0 to disable inverse kinematics.
Debug
variable: p_cull_distance type: float current: 100 help: Culling distance for physics helpers rendering variable: p_break_on_validation type: int current: 0 help: Toggles break on validation error. Usage: p_break_on_validation [0/1] Default is 0 (off). Issues DebugBreak() call in case of a physics parameter validation error. variable: p_debug_explosions type: int current: 0 help: Turns on explosions debug mode variable: p_debug_joints type: int current: 0 help: If set, breakable objects will log tensions at the weakest spots variable: p_do_step type: int current: 0 help: Steps physics system forward when in single step mode. Usage: p_do_step 1 Default is 0 (off). Each 'p_do_step 1' instruction allows the physics system to advance a single step. variable: p_draw_helpers type: string current: 0 help: Same as p_draw_helpers_num, but encoded in letters Usage [Entity_Types]_[Helper_Types]  [tsrRligaye]_[gcblt(#)] Entity Types: t  show terrain s  show static entities r  show sleeping rigid bodies R  show active rigid bodies l  show living entities i  show independent entities g  show triggers a  show areas y  show rays in RayWorldIntersection e  show explosion occlusion maps Helper Types g  show geometry c  show contact points b  show bounding boxes l  show tetrahedra lattices for breakable objects j  show structural joints (will force translucency on the main geometry) t(#)  show bounding volume trees up to the level # f(#)  only show geometries with this bit flag set (multiple f's stack) Example: p_draw_helpers larRis_g  show geometry for static, sleeping, active, independent entities and areas variable: p_draw_helpers_num type: int current: 0 help: Toggles display of various physical helpers. The value is a bitmask: bit 0  show contact points bit 1  show physical geometry bit 8  show helpers for static objects bit 9  show helpers for sleeping physicalized objects (rigid bodies, ragdolls) bit 10  show helpers for active physicalized objects bit 11  show helpers for players bit 12  show helpers for independent entities (alive physical skeletons,particles,ropes) bits 1631  level of bounding volume trees to display (if 0, it just shows geometry) Examples: show static objects  258, show active rigid bodies  1026, show players  2050 variable: p_wireframe_distance type: float current: 5 help: Maximum distance at which wireframe is drawn on physics helpers variable: p_ray_fadein type: float current: 0.2 help: Fadein time for ray physics helpers variable: p_ray_peak_time type: float current: 0 help: Rays that take longer then this (in ms) will use different color variable: p_single_step_mode type: int current: 0 help: Toggles physics system 'single step' mode.Usage: p_single_step_mode [0/1] Default is 0 (off). Set to 1 to switch physics system (except players) to single step mode. Each step must be explicitly requested with a 'p_do_step' instruction variable: p_fly_mode type: int current: 0 help: Toggles fly mode. Usage: p_fly_mode [0/1] variable: p_list_active_objects type: int current: 0 help: variable: p_log_lattice_tension type: int current: 0 help: If set, breakable objects will log tensions at the weakest spots
Solver
variable: p_enable_triangle_cache type: int current: 0 help: Enables triangle caching for heightfields variable: p_fixed_timestep type: float current: 0 help: Toggles fixed time step mode.Usage: p_fixed_timestep [0/1] Forces fixed time step when set to 1. When set to 0, the time step is variable, based on the frame rate. variable: p_GEB_max_cells type: int current: 800 help: Specifies the cell number threshold after which GetEntitiesInBox issues a warning variable: p_group_damping type: float current: 0.5 help: Toggles damping for object groups. Usage: p_group_damping [0/1] Default is 1 (on). Used for internal tweaking only. variable: p_lattice_max_iters type: int current: 100000 help: Limits the number of iterations of lattice tension solver variable: p_limit_simple_solver_energy type: int current: 1 help: Specifies whether the energy added by the simple solver is limited (0 or 1) variable: p_max_approx_caps type: int current: 7 help: Maximum number of capsule approximation levels for breakable trees variable: p_max_contact_gap type: float current: 0.01 help: Sets the gap, enforced whenever possible, between contacting physical objects.Usage: p_max_contact_gap 0.01 This variable is used for internal tweaking only. variable: p_max_contact_gap_player type: float current: 0.01 help: Sets the safe contact gap for player collisions with the physical environment.Usage: p_max_contact_gap_player 0.01 This variable is used for internal tweaking only. variable: p_max_contact_gap_simple type: float current: 0.03 help: Specifies the maximum contact gap for objects that use the simple solver variable: p_max_contacts type: int current: 150 help: Maximum contact number, after which contact reduction mode is activated variable: p_max_debris_mass type: float current: 10 help: Broken pieces with mass<=this limit use debris collision settings variable: p_max_entity_cells type: int current: 300000 help: Limits the number of entity grid cells an entity can occupy variable: p_max_LCPCG_contacts type: int current: 100 help: Maximum number of contacts that LCPCG solver is allowed to handle variable: p_max_LCPCG_fruitless_iters type: int current: 4 help: Maximum number of LCP CG iterations w/o improvement (defined by p_min_LCPCGimprovement) variable: p_max_LCPCG_iters type: int current: 5 help: Maximum number of LCP CG iterations variable: p_max_LCPCG_microiters type: int current: 12000 help: Limits the total number of percontact iterations during one LCP CG iteration (number of microiters = number of subiters * number of contacts) variable: p_max_LCPCG_microiters_final type: int current: 25000 help: Same as p_max_LCPCG_microiters, but for the final LCP CG iteration variable: p_max_LCPCG_subiters type: int current: 120 help: Limits the number of LCP CG solver inner iterations (should be of the order of the number of contacts) variable: p_max_LCPCG_subiters_final type: int current: 250 help: Limits the number of LCP CG solver inner iterations during the final iteration (should be of the order of the number of contacts) variable: p_max_MC_iters type: int current: 6000 help: Specifies the maximum number of microcontact solver iterations variable: p_max_MC_mass_ratio type: float current: 100 help: Maximum mass ratio between objects in an island that MC solver is considered safe to handle variable: p_max_MC_vel type: float current: 15 help: Maximum object velocity in an island that MC solver is considered safe to handle variable: p_max_plane_contacts type: int current: 8 help: Maximum number of contacts lying in one plane between two rigid bodies (the system tries to remove the least important contacts to get to this value) variable: p_max_plane_contacts_distress type: int current: 4 help: Same as p_max_plane_contacts, but is effective if total number of contacts is above p_max_contacts variable: p_max_substeps type: int current: 5 help: Limits the number of substeps allowed in variable time step mode. Usage: p_max_substeps 5 Objects that are not allowed to perform time steps beyond some value make several substeps. variable: p_max_substeps_large_group type: int current: 5 help: Limits the number of substeps large groups of objects can make variable: p_max_world_step type: float current: 0.2 help: Specifies the maximum step physical world can make (larger steps will be truncated) variable: p_min_LCPCG_improvement type: float current: 0.05 help: Defines a required residual squared length improvement, in fractions of 1
Velocity
variable: p_max_unproj_vel type: float current: 2.5 help: Limits the maximum unprojection velocity request variable: p_max_velocity type: float current: 100 help: Clamps physicalized objects' velocities to this value variable: p_max_player_velocity type: float current: 150 help: Clamps players' velocities to this value
Collision
 p_min_bounce_speed
 Minimum speed for bounce to occur
 p_max_bounce_impulse
 Any bounce impulses exceeding this will be discarded
variable: p_min_separation_speed type: float current: 0.02 help: Used a threshold in some places (namely, to determine when a particle goes to rest, and a sliding condition in microcontact solver) variable: p_prohibit_unprojection type: int current: 0 help: Prohibit Unprojection and velocity penalties upon Unprojection variable: p_skip_redundant_colldet type: int current: 1 help: Specifies whether to skip furher collision checks between two convex objects using the simple solver when they have enough contacts between them
Gravity
 p_gravity_z
 gravity (m/s^{2})
Misc
variable: p_num_bodies_large_group type: int current: 100 help: Group size to be used with p_max_substeps_large_group, in bodies variable: p_penalty_scale type: float current: 0.3 help: Scales the penalty impulse for objects that use the simple solver variable: p_players_can_break type: int current: 0 help: Whether living entities are allowed to break static objects with breakable joints
Profiler
variable: p_profile_entities type: int current: 0 help: Enables perentity time step profiling variable: p_profile_functions type: int current: 0 help: Enables detailed profiling of physical environmentsampling functions variable: p_jump_to_profile_ent type: int current: 0 help: Move the local player next to the corresponding entity in the p_profile_entities list
variable: p_sleep_speed_multiple type: float current: 1 help: Multiplier applied to rigid body sleep threshold
Splash
variable: p_max_object_splashes type: int current: 3 help: Specifies how many splash events one entity is allowed to generate variable: p_splash_dist0 type: float current: 7 help: Range start for splash event distance culling variable: p_splash_dist1 type: float current: 30 help: Range end for splash event distance culling variable: p_splash_force0 type: float current: 10 help: Minimum water hit force to generate splash events at p_splash_dist0 variable: p_splash_force1 type: float current: 100 help: Minimum water hit force to generate splash events at p_splash_dist1 variable: p_splash_vel0 type: float current: 4.5 help: Minimum water hit velocity to generate splash events at p_splash_dist0 variable: p_splash_vel1 type: float current: 10 help: Minimum water hit velocity to generate splash events at p_splash_dist1
Time
variable: p_time_granularity type: float current: 0.0001 help: Sets physical time step granularity. Usage: p_time_granularity [0..0.1] Used for internal tweaking only.
variable: p_tick_breakable type: float current: 0.1 help: Sets the breakable objects structure update interval variable: p_unproj_vel_scale type: float current: 10 help: Requested unprojection velocity is set equal to penetration depth multiplied by this number variable: p_use_distance_contacts type: int current: 0 help: Allows to use distancebased contacts (is forced off in multiplayer) variable: p_use_unproj_vel type: int current: 0 help: internal solver tweak