Prop Footsteps: Difference between revisions
Jump to navigation
Jump to search
Note:This will not make any difference if
m (Note) |
(HL2MP support) |
||
Line 1: | Line 1: | ||
For player footsteps, Valve used <code>MASK_PLAYERSOLID_BRUSHONLY</code> rather than <code>MASK_PLAYERSOLID</code>. This difference made it so only the static world would have dynamic footsteps. The following precedure will show how to fix this issue. | For player footsteps, Valve used <code>MASK_PLAYERSOLID_BRUSHONLY</code> rather than <code>MASK_PLAYERSOLID</code>. This difference made it so only the static world would have dynamic footsteps. The following precedure will show how to fix this issue. | ||
{{note|This will not make any difference if <code>PlayStepSound</code> is overridden by the player entity (i.e. HL2MP).}} | {{note|This will not make any difference if <code>PlayStepSound</code> is overridden by the player entity (i.e. HL2MP).}} | ||
==Basic Fix== | |||
===src\cl_dll\c_baseplayer.cpp=== | ===src\cl_dll\c_baseplayer.cpp=== | ||
<dl><dd> | <dl><dd> | ||
Line 45: | Line 46: | ||
</dd></dl> | </dd></dl> | ||
[[Category:Programming]] | [[Category:Programming]] | ||
==HL2MP Override Removal== | |||
===src\cl_dll\hl2mp\c_hl2mp_player.h=== | |||
====Prototype Removal==== | |||
* PlayStepSound | |||
* PrecacheFootStepSounds | |||
===src\game_shared\hl2mp\hl2mp_player_shared.cpp=== | |||
====Symbol Removal==== | |||
* PlayStepSound | |||
* PrecacheFootStepSounds | |||
===src\dlls\hl2mp_dll\hl2mp_player.cpp=== | |||
====Precache==== | |||
Remove | |||
PrecacheFootStepSounds(); | |||
From function <code>CHL2MP_Player::Precache</code> | |||
===src\dlls\hl2mp_dll\hl2mp_player.h=== | |||
====Prototype Removal==== | |||
* PlayStepSound | |||
* PrecacheFootStepSounds |
Revision as of 22:31, 30 March 2006
For player footsteps, Valve used MASK_PLAYERSOLID_BRUSHONLY
rather than MASK_PLAYERSOLID
. This difference made it so only the static world would have dynamic footsteps. The following precedure will show how to fix this issue.

PlayStepSound
is overridden by the player entity (i.e. HL2MP).Basic Fix
src\cl_dll\c_baseplayer.cpp
-
Shift Start Up
// Straight down end.z -= 64;
→ // Straight down start.z += 1; end.z -= 64;
Change Trace Mask
UTIL_TraceRay( ray, MASK_PLAYERSOLID_BRUSHONLY, this, COLLISION_GROUP_PLAYER_MOVEMENT, &trace );
↓ UTIL_TraceRay( ray, MASK_PLAYERSOLID, this, COLLISION_GROUP_PLAYER_MOVEMENT, &trace );
-
Shift Start Up
// Straight down end[2] -= 64;
→ // Straight down start[2] += 1; end[2] -= 64;
Change Trace Mask
TracePlayerBBox( start, end, MASK_PLAYERSOLID_BRUSHONLY, COLLISION_GROUP_PLAYER_MOVEMENT, trace );
↓ TracePlayerBBox( start, end, MASK_PLAYERSOLID, COLLISION_GROUP_PLAYER_MOVEMENT, trace );
HL2MP Override Removal
src\cl_dll\hl2mp\c_hl2mp_player.h
Prototype Removal
- PlayStepSound
- PrecacheFootStepSounds
Symbol Removal
- PlayStepSound
- PrecacheFootStepSounds
src\dlls\hl2mp_dll\hl2mp_player.cpp
Precache
Remove
PrecacheFootStepSounds();
From function CHL2MP_Player::Precache
src\dlls\hl2mp_dll\hl2mp_player.h
Prototype Removal
- PlayStepSound
- PrecacheFootStepSounds