Table of Contents

Prop, Magneto, and Movement ConVars

Quick reference for tuning prop interaction, magneto manipulation, held-prop collision, player movement physics, and related damage/debug behavior.

Defaults below are the current game defaults and are subject to change.

Key Collision Tags

Tag Owner Purpose
idle_prop TerrorTownProp Applied to loose/resting props. movement ignores this tag through physics collision rules so ordinary props do not constantly fight player helper bodies.
held_prop TerrorTownProp Applied while a prop is actively held by the magneto. Held props are removed from idle_prop so they can physically collide with players while held.
movement player helper bodies Applied to player physics helper/shadow objects and used by collision rules/traces.

Player Movement / Collision

ConVar Default What it does
t.player_movement_held_props_not_stuck true If enabled, a held prop that starts inside the movement hull does not count as stuck for unstuck logic.
t.player_physics_shove_clamp false Enables clamping of helper-body velocity before it is inherited into player movement. Disable for raw velocity inheritance.
t.player_physics_shove_grounded_only false If shove clamp is enabled, applies it only while grounded.
t.player_physics_shove_max_planar_speed 90 Max planar helper-body velocity accepted when shove clamp is enabled.
t.player_physics_shove_max_vertical_speed 90 Max vertical helper-body velocity accepted when shove clamp is enabled.
t.player_physics_prop_stuck_handoff_clamp true Enables clamping of the stuck helper-body position handoff when the blocker is a prop.
t.player_physics_prop_stuck_handoff_held_only true Limits the prop stuck handoff clamp to held props only.
t.player_physics_prop_stuck_handoff_max_planar_speed 90 Max planar speed-equivalent accepted from prop stuck handoff.
t.player_physics_prop_stuck_handoff_max_vertical_speed 90 Max vertical speed-equivalent accepted from prop stuck handoff.
t.move.unstuck_push_max 160 Max velocity added by generic unstuck nudges.
t.move.unstuck_push_up_max 90 Max upward velocity added by generic unstuck nudges.
debug_playermovement_unstick false Draws/debugs custom unstuck attempts.
debug_playermovement false Draws/debugs player physics helper/shadow bodies.

Magneto Hold / Pickup

ConVar Default What it does
t.magneto_pickup_owner_grace 0.35 Short grace window for ownership after requesting pickup.
t.magneto_hold_break_distance 190 Drops the held prop if it strays this far from the holder's view origin for long enough.
t.magneto_hold_break_grace 0.15 Grace period before breaking hold due to distance.
t.magneto_corpse_hang_limit 3 Max corpses the magneto hang/rope behavior allows.
t.magneto_debug_release_launch_speed 0 Debug-only forced release launch speed. 0 disables.
ttt_magneto_debug false Legacy/general magneto debug toggle.
t.db.magneto false Magneto debug logging toggle.

Magneto Blocked-Hold Damping

These govern the softened hold-drive behavior when the held prop is blocked while trying to reach the crosshair target.

ConVar Default What it does
t.magneto_blocked_hold true Enables blocked-hold softening/damping.
t.magneto_blocked_hold_error 40 Minimum prop-to-target distance before normal obstruction can count as blocked. Player obstruction bypasses this.
t.magneto_blocked_hold_closing_speed 20 If the prop is already moving toward the target faster than this, it is not considered blocked. Player obstruction bypasses this.
t.magneto_blocked_hold_grace 0.12 How long obstruction must persist before full blocked behavior applies.
t.magneto_blocked_hold_recovery 0.25 Time to blend back from blocked behavior to normal hold behavior after obstruction clears.
t.magneto_blocked_hold_trace_size 2 Radius/size of the hold obstruction trace from held prop to wanted position.
t.magneto_blocked_hold_detect_players true Lets the obstruction trace treat other players as blockers.
t.magneto_blocked_hold_detect_movement false Lets the obstruction trace include movement helper bodies. Usually off.
t.magneto_blocked_hold_smooth_time 0.42 SmoothDamp time while blocked; higher feels softer/slower.
t.magneto_blocked_hold_max_speed 120 Global planar speed cap while blocked.
t.magneto_blocked_hold_speed_scale 0.50 Multiplier applied to the prop profile push/pull speed while blocked.
t.magneto_blocked_hold_vertical_cap 50 Vertical velocity cap while blocked.
t.magneto_blocked_hold_angular_damping 0.55 Angular velocity damping while blocked. Lower damps spin harder.

Prop Carry / Launch Tuning

ConVar Default What it does
t.prop.pickup_limit 3 Highest pickup scale that can be fully held by the magneto.
t.prop.push_pull_limit 4 Highest pickup scale that can still be manipulated by magneto push/pull.
t.prop.lethality_level 4 Global intentional-launch lethality scale. Ambient loose physics still uses derived prop scale.
t.prop.launch_impact_window 1.2 Time after intentional launch where prop impact can count for propkill damage.
t.prop.launch_owner_grace 0.2 Self-protection window after launch so the thrower does not instantly hit themselves.
t.prop.launch_peak_carryover 1 Keeps peak source speed around briefly so one bad physics frame does not erase a throw.
t.prop.launch_live_speed_forgiveness 1.25 Allows stored launch speed to exceed current live speed during the launch window.
t.prop.debug_profile false Shows derived profile/carry policy/bounds over props.
t.prop.debug_manipulation false Logs held/launch manipulation debug snapshots.
t.prop.debug_manipulation_interval 0.20 Console sample interval for manipulation debug.

Prop Impact / Ownership

ConVar Default What it does
t.prop.impact_player_max_damage 140 Hard cap for prop impact damage against players after per-prop scaling.
t.prop.impact_player_cooldown 0.2 Per-player cooldown so the same contact cannot deal damage every physics tick.
t.prop.impact_player_spawn_grace 0.75 Spawn grace where prop impact damage against a player is blocked.
t.prop.impact_player_standing_speed 900 Extra threshold when the target is standing on the prop, to avoid stomp/standing noise.
t.prop.push_carry_min_speed 70 Minimum prop speed before push-carry responsibility is recorded on player contact.
t.prop.owner_return_release_delay 0.2 Delay after release before host considers reclaiming prop ownership.
t.prop.owner_return_timeout 5 Failsafe maximum time before stale owned props can return to host.
t.prop.owner_return_linear_speed 12 Linear speed threshold for considering released prop settled enough for host ownership return.
t.prop.owner_return_angular_speed 25 Angular speed threshold for ownership return.

Player-Vs-Loose-Prop Nudge System

PlayerPropInteractionSystem is the host-side policy for ordinary player body contact nudging loose props.

ConVar Default What it does
t.prop.player_push_min_speed 35 Minimum player planar movement before body contact nudges a loose prop.
t.prop.player_push_speed_scale 0.16 Converts player movement speed into loose-prop shove speed before profile caps.
t.prop.player_push_max_speed 120 Global cap for player-body shove speed. Per-profile caps can be stricter.
t.prop.player_push_vertical_cap 35 Caps vertical velocity injected into props by walking/body shoves.
t.prop.player_push_angular_damping 0.75 Damps spin from player-body shoves.
t.prop.player_push_trace_distance 20 Distance ahead of the player used to find a loose prop to nudge.
t.prop.player_push_mass_reference 30 Legacy compatibility knob from old mass-based shove behavior.
t.prop.player_push_min_mass_scale 0.08 Legacy compatibility knob from old mass-based shove behavior.

Explosive Barrel / Prop Debug

ConVar Default What it does
t.barrel.reset_damage_grace 0.5 Grace after reset before barrel damage is accepted.
t.barrel.renderer_cleanup_client_window 2 Client-side window for renderer cleanup after barrel transitions.
t.barrel.renderer_cleanup_client_interval 0.25 Client-side interval for barrel renderer cleanup checks.
t.barrel.spawn_registry.match_radius 0.25 Position tolerance for matching barrels to spawn registry records.
t.db.barrel false Barrel debug logging.
t.db.barrel.max_rows 24 Max rows for barrel debug output.
t.db.barrel.client_autostart false Enables client autostart barrel probe/debug behavior.
t.db.barrel.client_autostart.max_rows 24 Max rows for client autostart barrel probe output.
t.db.barrel.spawn_registry false Barrel spawn registry debug logging.

These are not prop controls directly, but they often matter while testing prop shove, stuck, teleport, and fall-damage edge cases.

ConVar Default What it does
t.fall.min_airborne_time 0.08 Minimum airborne time before fall damage can apply.
t.fall.respawn_grace 0.6 Grace after respawn before fall damage applies.
t.fall.min_drop_distance 16 Minimum drop distance before fall damage applies.
t.fall.teleport_grace 1.0 Grace after teleport before fall damage applies.
t.fall.unstuck_grace 0.1 Grace after unstuck nudge before fall damage applies, with exploit mitigation checks.
t.fall.ladder_grace 0.45 Grace around ladder transitions before fall damage applies.
t.fall.max_self_damage 100 Max fall damage applied to the falling player.
t.fall.max_stomp_damage 100 Max stomp/fall impact damage applied to another player.
t.void_kill_z -16384 Z position below which void kill behavior applies.