download true ringtones lorazepam cheap ringtone free monophonic ringtones mobile ringtone discount ultracet free mtv ringtones buy flexeril buy atenolol norvasc online cheap ephedrine home mortgage loans discount phentermine buy carisoprodol darvocet online albuterol online buy ultracet order pharmacy online cheap norvasc discount prozac glucophage cheap vigrx cipro online texas holdem poker cheap flexeril download motorola ringtones tmobile ringtones buy phendimetrazine sildenafil online free humour ringtones cheap ambien cheap lipitor cheap nexium telus ringtones discount fioricet rave ringtones buy zithromax buy norco effexor online free tv ringtones wwe ringtone free vocal ringtones clonazepam online student loan clomid online wwe ringtones order lorazepam lipitor cheap flonase carisoprodol online metformin diflucan true ringtones cricket ringtone pharmacy cheap zithromax tamiflu online techno ringtones buy zanaflex discount ambien order sildenafil download sony ericsson ringtones download caller ringtones caller ringtone motorola ringtone discount cialis cialis ativan sibutramine discount celexa download rock ringtones accutane zyban online download phone ringtones rock ringtones zocor hoodia download country ringtones cheap levitra didrex buy wellbutrin cheap zocor discount imitrex download turkey ringtones buy codeine fluoxetine online cheap oxycontin caller ringtones alltel ringtones download techno ringtones download metal ringtones free retro ringtones imitrex online buy soma kyocera ringtone download punk ringtones buspar online viagra online cheap cyclobenzaprine order hgh
Note:This issue has been resolved in the Half-Life 2: Episode Two codebase; if you are using its code, you should not try to implement this mod.
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: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 Trace Start Up
// Straight down
end.z -= 64;
|
→
|
// Straight down
start.z += 1;
end.z -= 64;
|
Smaller Trace Box Height
Ray_t ray;
ray.Init( start, end, GetPlayerMins(), GetPlayerMaxs() );
|
↓
|
Ray_t ray;
Vector mins = GetPlayerMins();
Vector maxs = GetPlayerMaxs();
maxs.z = mins.z + 1;
ray.Init( start, end, mins, maxs);
|
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 Trace Start Up
// Straight down
end[2] -= 64;
|
→
|
// Straight down
start[2] += 1;
end[2] -= 64;
|
Smaller Trace Box Height & Change Trace Mask
TracePlayerBBox( start, end, MASK_PLAYERSOLID_BRUSHONLY, COLLISION_GROUP_PLAYER_MOVEMENT, trace );
|
↓
|
Ray_t ray;
Vector mins = player->GetPlayerMins();
Vector maxs = player->GetPlayerMaxs();
maxs.z = mins.z + 1;
ray.Init( start, end, mins, maxs);
UTIL_TraceRay( ray, MASK_PLAYERSOLID, player, 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