Prop Footsteps: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Untabbed)
Line 51: Line 51:
===src\dlls\hl2mp_dll\hl2mp_player.cpp===
===src\dlls\hl2mp_dll\hl2mp_player.cpp===
====Precache====
====Precache====
Remove
{|
PrecacheFootStepSounds();
!colspan="2" style="text-align:center;"| In function <tt>CHL2MP_Player::Precache</tt>
From function <code>CHL2MP_Player::Precache</code>
|-
| Remove || <pre style="margin:0px 0px 0px 0px;"> PrecacheFootStepSounds();</pre>
|}
 
===src\dlls\hl2mp_dll\hl2mp_player.h===
===src\dlls\hl2mp_dll\hl2mp_player.h===
====Prototype Removal====
====Prototype Removal====

Revision as of 22:52, 31 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.

Note.pngNote:This will not make any difference if 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 );

src\game_shared\gamemovement.cpp

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

src\game_shared\hl2mp\hl2mp_player_shared.cpp

Symbol Removal

  • PlayStepSound
  • PrecacheFootStepSounds

src\dlls\hl2mp_dll\hl2mp_player.cpp

Precache

In function CHL2MP_Player::Precache
Remove
	PrecacheFootStepSounds();

src\dlls\hl2mp_dll\hl2mp_player.h

Prototype Removal

  • PlayStepSound
  • PrecacheFootStepSounds