Hi there,
I’m using the new experience scripts to change some defaults. It seems however that the perks that should be disabled (like juggernaut and martyrdom) can just be used on my server. When I check the cvars for these settings, they are correct. Am I missing a step? I cannot find any documentation other than setting the cvars correctly.
Edit: I didn’t get it to work, so I changed some lines myself:
// main_shared/maps/mp/gametypes/_class.gsx
...
line 768 & line 872
grenadeCount = 1;
glonkeh
October 31, 2025, 10:48am
3
Second Edit: I’m stupid. I was disabling tripple_frag and testing if I could select tripple special grenades. I did edit the _class.gsx file to include all perks (line 265):
// allowed perks in each slot, for validation.
level.allowedPerks[0] = [];
level.allowedPerks[1] = [];
level.allowedPerks[2] = [];
level.allowedPerks[0][ 0] = 190; // 190 through 193 are attachments and "none"
level.allowedPerks[0][ 1] = 191;
level.allowedPerks[0][ 2] = 192;
level.allowedPerks[0][ 3] = 193;
if( !level.dvar[ "disable_c4" ] && isDefined( perkReferenceToIndex[ "specialty_weapon_c4" ] ) )
level.allowedPerks[0][ 4] = perkReferenceToIndex[ "specialty_weapon_c4" ];
else
level.allowedPerks[0][ 4] = 190;
if( !level.dvar[ "disable_specialgrenade" ] && isDefined( perkReferenceToIndex[ "specialty_specialgrenade" ] ) )
level.allowedPerks[0][ 5] = perkReferenceToIndex[ "specialty_specialgrenade" ];
else
level.allowedPerks[0][ 5] = 190;
if( !level.dvar[ "disable_rpg" ] && isDefined( perkReferenceToIndex[ "specialty_weapon_rpg" ] ) )
level.allowedPerks[0][ 6] = perkReferenceToIndex[ "specialty_weapon_rpg" ];
else
level.allowedPerks[0][ 6] = 190;
if( !level.dvar[ "disable_claymore" ] && isDefined( perkReferenceToIndex[ "specialty_weapon_claymore" ] ) )
level.allowedPerks[0][ 7] = perkReferenceToIndex[ "specialty_weapon_claymore" ];
else
level.allowedPerks[0][ 7] = 190;
if( !level.dvar[ "disable_tripplefrag" ] && isDefined( perkReferenceToIndex[ "specialty_fraggrenade" ] ) )
level.allowedPerks[0][ 8] = perkReferenceToIndex[ "specialty_fraggrenade" ];
else
level.allowedPerks[0][ 8] = 190;
if( !level.dvar[ "disable_extraammo" ] && isDefined( perkReferenceToIndex[ "specialty_extraammo" ] ) )
level.allowedPerks[0][ 9] = perkReferenceToIndex[ "specialty_extraammo" ];
else
level.allowedPerks[0][ 9] = 190;
if( !level.dvar[ "disable_detectexplosive" ] && isDefined( perkReferenceToIndex[ "specialty_detectexplosive" ] ) )
level.allowedPerks[0][10] = perkReferenceToIndex[ "specialty_detectexplosive" ];
else
level.allowedPerks[0][10] = 190;
level.allowedPerks[1][ 0] = 190;
if( !level.dvar[ "disable_bulletdamage" ] && isDefined( perkReferenceToIndex[ "specialty_bulletdamage" ] ) )
level.allowedPerks[1][ 1] = perkReferenceToIndex[ "specialty_bulletdamage" ];
else
level.allowedPerks[1][ 1] = 190;
if( !level.dvar[ "disable_jugger" ] && isDefined( perkReferenceToIndex[ "specialty_armorvest" ] ) )
level.allowedPerks[1][ 2] = perkReferenceToIndex[ "specialty_armorvest" ];
else
level.allowedPerks[1][ 2] = 190;
if( !level.dvar[ "disable_fastreload" ] && isDefined( perkReferenceToIndex[ "specialty_fastreload" ] ) )
level.allowedPerks[1][ 3] = perkReferenceToIndex[ "specialty_fastreload" ];
else
level.allowedPerks[1][ 3] = 190;
if( !level.dvar[ "disable_rof" ] && isDefined( perkReferenceToIndex[ "specialty_rof" ] ) )
level.allowedPerks[1][ 4] = perkReferenceToIndex[ "specialty_rof" ];
else
level.allowedPerks[1][ 4] = 190;
if( !level.dvar[ "disable_twoprimaries" ] && isDefined( perkReferenceToIndex[ "specialty_twoprimaries" ] ) )
level.allowedPerks[1][ 5] = perkReferenceToIndex[ "specialty_twoprimaries" ];
else
level.allowedPerks[1][ 5] = 190;
if( !level.dvar[ "disable_gpsjammer" ] && isDefined( perkReferenceToIndex[ "specialty_gpsjammer" ] ) )
level.allowedPerks[1][ 6] = perkReferenceToIndex[ "specialty_gpsjammer" ];
else
level.allowedPerks[1][ 6] = 190;
if( !level.dvar[ "disable_explosivedamage" ] && isDefined( perkReferenceToIndex[ "specialty_explosivedamage" ] ) )
level.allowedPerks[1][ 7] = perkReferenceToIndex[ "specialty_explosivedamage" ];
else
level.allowedPerks[1][ 7] = 190;
level.allowedPerks[2][ 0] = 190;
if( !level.dvar[ "disable_longersprint" ] && isDefined( perkReferenceToIndex[ "specialty_longersprint" ] ) )
level.allowedPerks[2][ 1] = perkReferenceToIndex[ "specialty_longersprint" ];
else
level.allowedPerks[2][ 1] = 190;
if( !level.dvar[ "disable_bulletaccuracy" ] && isDefined( perkReferenceToIndex[ "specialty_bulletaccuracy" ] ) )
level.allowedPerks[2][ 2] = perkReferenceToIndex[ "specialty_bulletaccuracy" ];
else
level.allowedPerks[2][ 2] = 190;
if( !level.dvar[ "disable_laststand" ] && isDefined( perkReferenceToIndex[ "specialty_pistoldeath" ] ) )
level.allowedPerks[2][ 3] = perkReferenceToIndex[ "specialty_pistoldeath" ];
else
level.allowedPerks[2][ 3] = 190;
if( !level.dvar[ "disable_marty" ] && isDefined( perkReferenceToIndex[ "specialty_grenadepulldeath" ] ) )
level.allowedPerks[2][ 4] = perkReferenceToIndex[ "specialty_grenadepulldeath" ];
else
level.allowedPerks[2][ 4] = 190;
if( !level.dvar[ "disable_bulletpenetration" ] && isDefined( perkReferenceToIndex[ "specialty_bulletpenetration" ] ) )
level.allowedPerks[2][ 5] = perkReferenceToIndex[ "specialty_bulletpenetration" ];
else
level.allowedPerks[2][ 5] = 190;
if( !level.dvar[ "disable_holdbreath" ] && isDefined( perkReferenceToIndex[ "specialty_holdbreath" ] ) )
level.allowedPerks[2][ 6] = perkReferenceToIndex[ "specialty_holdbreath" ];
else
level.allowedPerks[2][ 6] = 190;
if( !level.dvar[ "disable_quieter" ] && isDefined( perkReferenceToIndex[ "specialty_quieter" ] ) )
level.allowedPerks[2][ 7] = perkReferenceToIndex[ "specialty_quieter" ];
else
level.allowedPerks[2][ 7] = 190;
if( !level.dvar[ "disable_parabolic" ] && isDefined( perkReferenceToIndex[ "specialty_parabolic" ] ) )
level.allowedPerks[2][ 8] = perkReferenceToIndex[ "specialty_parabolic" ];
else
level.allowedPerks[2][ 8] = 190;