ItsMods
[Tutorial] Fix 2 Game Hidden Perks - Printable Version

+- ItsMods (https://www.itsmods.com)
+-- Forum: Archive (https://www.itsmods.com/Forum-Archive.html)
+--- Forum: Archive (https://www.itsmods.com/Forum-Archive--64.html)
+--- Thread: [Tutorial] Fix 2 Game Hidden Perks (/Thread-Tutorial-Fix-2-Game-Hidden-Perks.html)



Fix 2 Game Hidden Perks - Yamato - 11-05-2011

Hello

A tutorial for fixing and improving some hidden game perks. First: specialty_siege.

1- Go to _perkfunctions.gsc
1.1 There are 2 different and correct ways of doing this, Ill say both. OMA
2- Find the thread trackSiegeDissable() and change it to:

Code:
trackSiegeDissable() { self endon ( "death" ); self endon ( "disconnect" ); self endon ( "stop_trackSiege" ); for ( ;; ) { self waittill ( "gambit_on" ); unsetSiege(); } }

2.1 Other option: change trackSiegeEnable() to this:

Code:
trackSiegeEnable() { self endon ( "death" ); self endon ( "disconnect" ); self endon ( "stop_trackSiege" ); for ( ;; ) { self waittill ( "gambit_on" ); self setStance( "crouch" ); self thread stanceStateListener(); self thread jumpStateListener(); self.moveSpeedScaler = 0; self maps\mp\gametypes\_weapons::updateMoveSpeedScale( "primary" ); class = weaponClass( self getCurrentWeapon() ); if ( class == "pistol" || class == "smg" ) self setSpreadOverride( 1 ); else self setSpreadOverride( 2 ); self player_recoilScaleOn( 0 ); self allowJump(false); } }

2nd perk: specialty_armorvest(aka juggernaut) Well change the damage feedback shader by adding a custom damagefeedback:

1- Go to _damagefeedback.gsc and add to init():

Code:
precacheShader("hint_health");

2- In updateDamageFeedback( typeHit ) add somewhere something like this:

Code:
if ( typeHit == "juggerNaut" ) { self.hud_damagefeedback setShader("hint_health", 48, 48); self.hud_damagefeedback.color = (252/255,117/255,174/255); self playlocalsound("MP_hit_alert"); }

3- Go into _damage.gsc and in Callback_PlayerDamage_internal( eInflictor, eAttacker, victim, iDamage, iDFlags, sMeansOfDeath, sWeapon, vPoint, vDir, sHitLoc, psOffsetTime ), find:

Code:
if ( attackerIsNPC && isDefined( eAttacker.gunner ) ) damager = eAttacker.gunner; else damager = eAttacker; if ( isDefined( damager) && damager != victim && iDamage > 0 ) { if ( iDFlags & level.iDFLAGS_STUN ) typeHit = "stun";

4- Under that ^^^^^^ change the if(isdefined(damager blablablabla) { blablabla } to:

Code:
if ( isDefined( damager) && damager != victim && iDamage > 0 ) { if ( iDFlags & level.iDFLAGS_STUN ) typeHit = "stun"; else if (isExplosiveDamage( sMeansOfDeath ) && victim _hasPerk( "_specialty_blastshield" )) typeHit = "hitBodyArmor"; else if( victim _hasPerk( "specialty_armorvest") ) typeHit = "juggerNaut"; else if ( victim _hasPerk( "specialty_combathigh") ) typeHit = "hitEndGame"; else typeHit = "standard"; damager thread maps\mp\gametypes\_damagefeedback::updateDamageFeedback( typeHit ); }

5- In _perks.gsc add in Init()

Code:
level.scriptPerks["specialty_armorvest"] = true;


I have modified and made some other perks, I hope I am not lazy and release them soon, OMA




RE: Fix 2 Game Hidden Perks - Nekochan - 11-05-2011

lolwat
Code:
attackerIsNPC
NPC in MP ?


RE: Fix 2 Game Hidden Perks - Yamato - 11-05-2011

(11-05-2011, 20:56)Se7en Wrote: lolwat
Code:
attackerIsNPC
NPC in MP ?

I dont know, maybe is chopper gunner or similar.