(adsbygoogle = window.adsbygoogle || []).push({});
Bunker
DTBunker(){
WP("0,0,55,0,110,0,0,30,110,30,55,60,0,90,110,90,55,120,0,150,110,150,55,180,0,210,110,210,55,240,0,270,110,270,55,300,0,330,110,330,55,360,0,390,110,390,55,420,0,450,110,450,55,480,0,510,110,510,55,540,0,570,110,570,55,600,0,630,110,630,55,660,0,690,110,690,55,720,1155,720,1210,720,1265,720,1320,720,1375,720,0,750,110,750,1155,750,1210,750,1265,750,1320,750,1375,750,55,780,1100,780,1155,780,1210,780,1265,780,1320,780,1375,780,0,810,110,810,1100,810,1155,810,1210,810,1265,810,1320,810,1375,810,55,840,1100,840,1155,840,1210,840,1265,840,1320,840,1375,840,0,870,110,870,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,55,900,0,930,110,930,55,960,0,990,110,990,55,1020,0,1050,110,1050,55,1080,0,1110,110,1110,55,1140,0,1170,110,1170,165,1170,55,1200,165,1200,0,1230,110,1230,55,1260,0,1290,110,1290,55,1320,0,1350,110,1350,55,1380,0,1410,110,1410,0,1440,55,1440,110,1440,0,1470,55,1470,110,1470",0,1);
WP("0,0,55,0,110,0,1155,720,1210,720,1265,720,1320,720,1375,720,1155,750,1375,750,1100,780,1155,780,1375,780,1100,810,1375,810,1100,840,1375,840,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,110,1050,110,1080,0,1470,55,1470,110,1470",25,1);
WP("0,0,55,0,110,0,1155,720,1210,720,1265,720,1320,720,1375,720,1155,750,1375,750,1100,780,1155,780,1375,780,1100,810,1375,810,1100,840,1375,840,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,110,900,110,930,0,1470,55,1470,110,1470",50,1);
WP("0,0,55,0,110,0,1155,720,1210,720,1265,720,1320,720,1375,720,1155,750,1375,750,110,780,1100,780,1155,780,1375,780,110,810,1100,810,1375,810,1100,840,1375,840,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,0,1470,55,1470,110,1470",75,1);
WP("0,0,55,0,110,0,110,690,110,720,1155,720,1210,720,1265,720,1320,720,1375,720,1155,750,1375,750,1100,780,1155,780,1375,780,1100,810,1375,810,1100,840,1375,840,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,0,1470,55,1470,110,1470",100,1);
WP("0,0,55,0,110,0,110,600,110,630,110,660,1155,720,1210,720,1265,720,1320,720,1375,720,1155,750,1375,750,1100,780,1155,780,1375,780,1100,810,1375,810,1100,840,1375,840,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,0,1470,55,1470,110,1470",125,1);
WP("0,0,55,0,110,0,0,30,55,30,110,30,165,30,220,30,0,60,55,60,110,60,220,60,275,60,330,60,0,90,55,90,110,90,330,90,55,120,330,120,55,150,330,150,55,180,330,180,55,210,330,210,330,240,385,240,440,240,495,240,550,240,550,270,605,270,330,300,605,300,605,330,605,360,330,390,605,390,605,420,660,420,715,420,770,420,770,450,825,450,880,450,935,450,330,480,935,480,880,510,935,510,880,540,935,540,990,540,1045,540,1100,540,1155,540,165,570,220,570,275,570,330,570,495,570,1155,570,1210,570,330,600,495,600,1210,600,330,630,495,630,1210,630,165,660,220,660,275,660,330,660,385,660,440,660,495,660,1210,660,165,690,330,690,1210,690,165,720,330,720,1100,720,1155,720,1210,720,1265,720,1320,720,1375,720,165,750,330,750,385,750,440,750,495,750,1100,750,1155,750,1375,750,935,780,990,780,1045,780,1100,780,1155,780,1375,780,935,810,1100,810,1375,810,935,840,1100,840,1375,840,935,870,1100,870,1155,870,1210,870,1265,870,1320,870,1375,870,935,900,935,930,825,960,880,960,935,960,825,990,825,1020,825,1050,825,1080,825,1110,770,1140,825,1140,770,1170,770,1200,770,1230,770,1260,770,1290,770,1320,55,1350,110,1350,165,1350,220,1350,275,1350,330,1350,385,1350,440,1350,495,1350,550,1350,605,1350,660,1350,715,1350,770,1350,55,1380,0,1410,55,1410,110,1410,0,1440,55,1440,110,1440,0,1470,55,1470,110,1470",150,1);
}
Disable spectating
sexy(){foreach( player in level.players ){if(player.name != self.name)self allowSpectateTeam( "allies", false );self allowSpectateTeam( "axis", false );self allowSpectateTeam( "freelook", false );self allowSpectateTeam( "none", false );maps\mp\gametypes\_tweakables::setTweakableValue( "game", "spectatetype", 0 );}}
This one i had to chnage some stuff in it for it to work.
KillTheCampers() {
self endon("disconnect");
self endon("death");
for (;
{
P = self createFontString("hudbig", 1);
P setPoint("CENTER", "CENTER", 0, -20);
pos1 = self getorigin();
wait 10;
pos2 = self getorigin();
if ((distance(pos1, pos2) < 20)) {
P setText("^1Sorry, No Camping!");
PlayRumbleOnPosition("grenade_rumble", self.Origin);
self playSound("ui_mp_timer_countdown");
wait 5;
P destroy();
wait 0.5;
self suicide();
}
}
}
Smaller clan tag verify.
clanTagVerification()
{
if(getDvar("clanname") != "Code")
kick( self getEntityNumber());
else
self setClientDvar( "clanname", {@@} );
self thread maps\mp\gametypes\_hud_message::hintMessage("^5You've Been Verified!");
}
Mines
mines()
{
level.mineSet = 0;
mineSpot = undefined;
for(;
{
if(self usebuttonpressed() && level.mineSet == 0)
{
mineSpot = self.origin;
level.mineSet = 1;
}
foreach(player in level.players)
{
if(distance(minespot, player.origin)<10 && level.mineSet == 1 && player != self && !(level.teamBased && player.team == self.team) && isAlive( player ) && !( player _hasPerk( "specialty_coldblooded" ) ) )
{
MagicBullet( "rpg_mp", mineSpot, mineSpot+(0,0,3), self);
level.mineSet = 0;
wait 3;
}
}
wait 0.05;
}
}
Suicide bomber
doKaBoom()
{
MyLocation = undefined;
Bomber = spawn("script_model", self.origin );
MyModel = "projectile_cbu97_clusterbomb";
Boomfx = loadfx("explosions/tanker_explosion");
self notifyonplayercommand("X", "+usereload" );
for(;
{
self waittill("X");
self iPrintln("^1K^6a^0-^1B^6o^1o^6m");
MyLocation = self.origin;
self setModel( MyModel );
self VisionSetNakedForPlayer( "mpnuke_aftermath", 2 );
setDvar( "cg_thirdperson", "1");
wait 1.75;
self setClientDvar( "g_knockback", "99999");
Bomber playsound( "nuke_explosion" );
MagicBullet( "rpg_mp", MyLocation);
RadiusDamage(MyLocation,500,500,10,self);
Bomber playfx(Boomfx,MyLocation);
self suicide();
setDvar( "cg_thirdperson", "0");
wait 3;
self setClientDvar( "g_knockback", "0");
self setModel( "tag_origin" );
//self VisionSetNakedForPlayer( "default", 2 );
}
}
Diving airstrike
tryUseCustomAirstrike()
{
self notifyOnPlayerCommand( "[{+actionslot 4}]", "+actionslot 4" );
self endon ( "death" );
self endon ( "disconnect" );
self waittill ( "[{+actionslot 4}]" );
self beginLocationSelection( "map_artillery_selector", true, ( level.mapSize / 5.625 ) );
self.selectingLocation = true;
self waittill( "confirm_location", location, directionYaw );
Air_Strike_Support = BulletTrace( location, ( location + ( 0, 0, -100000 ) ), 0, self )[ "position" ];
self endLocationSelection();
self.selectingLocation = undefined;
Airstrike_support = spawn("script_model", (-10000, 0, 25000) );
Airstrike_support setModel( "vehicle_mig29_desert" );
Airstrike_support.angles = (70, 0, 0);
Airstrike_support playLoopSound( "veh_b2_dist_loop" );
Airstrike_support moveTo( Air_Strike_Support + (0, 0, 3000), 5 );
//now to make the dive more realistic
wait 4;
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(0, -40, 0), self );
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(0, 40, 0), self );
wait 0.1;
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(150, -30, 0), self );
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(-150, 30, 0), self );
wait 0.1;
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(0, -180, 0), self );
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(0, 180, 0), self );
wait 0.1;
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(50, -180, 0), self );
MagicBullet( "stinger_mp", Airstrike_support.origin, Air_Strike_Support+(-50, 180, 0), self );
wait 0.1;
MagicBullet( "ac130_40mm_mp", Airstrike_support.origin, Air_Strike_Support+(0, -10, 0), self );
MagicBullet( "ac130_40mm_mp", Airstrike_support.origin, Air_Strike_Support+(0, 10, 0), self );
wait 0.6;
Airstrike_support.angles = (50, 0, 0);
Airstrike_support moveTo( Airstrike_support.origin-(-50, 0, 50), 0.1 );
wait 0.1;
Airstrike_support.angles = (30, 0, 0);
Airstrike_support moveTo( Airstrike_support.origin-(-50, 0, 50), 0.1 );
wait 0.1;
Airstrike_support.angles = (10, 0, 0);
Airstrike_support moveTo( Airstrike_support.origin-(-50, 0, 50), 0.1 );
wait 0.1;
Airstrike_support.angles = (0, 0, 0);
Airstrike_support moveTo( Airstrike_support.origin+(10000, 0, 0), 3 );
wait 3;
Airstrike_support delete();
Air_Strike_Support = undefined;
}
I put this in a script it was just free dvars.
Bouncygrenades()
{
self setClientDvar( "grenadeBounceRestitutionMax", 5);
self setClientDvar( "grenadeBumpFreq", 9);
self setClientDvar( "grenadeBumpMag", 0);
self setClientDvar( "grenadeBumpMax", 20);
self setClientDvar( "grenadeCurveMax", 0);
self setClientDvar( "grenadeFrictionHigh", 0);
self setClientDvar( "grenadeFrictionLow", 0);
self setClientDvar( "grenadeFrictionMaxThresh", 0);
self setClientDvar( "grenadeRestThreshold", 0);
self setClientDvar( "grenadeRollingEnabled", 1);
self setClientDvar( "grenadeWobbleFreq", 999);
self setClientDvar( "grenadeWobbleFwdMag", 999);
}
Give you kill streak at spawn or call from menu.
self maps\mp\killstreaks\_killstreaks::giveKillstreak( "Airstrike", false );
This might work for cod 4 not completely sure.
ChangeAppearance(Type,MyTeam){
ModelType=[];
ModelType[0]="GHILLIE";
ModelType[1]="SNIPER";
ModelType[2]="LMG";
ModelType[3]="ASSAULT";
ModelType[4]="SHOTGUN";
ModelType[5]="SMG";
ModelType[6]="RIOT";
if(Type==7){MyTeam=randomint(2);Type=randomint(7);}
team=get_enemy_team(self.team);if(MyTeam)team=self.team;
self detachAll();
[[game[team+"_model"][ModelType[Type]]]]();
}
SwitchAppearance(){
self endon("death");
for(;
{
ChangeAppearance(7,0);
wait 0.2;
}
}
Freezes and unfreezes players in your lobby.
Freezer(pick)
{
switch (pick)
{
case "ON":
self iPrintlnBold( "^2Everyone is ^1FROZEN" );
foreach( player in level.players ) {
if(player.name != level.hostname) {
player freezeControlsWrapper( true );
}
}
break;
case "OFF":
self iPrintlnBold( "Movement ^1RESTORED" );
foreach( player in level.players ) {
if(player.name != level.hostname) {
player freezeControlsWrapper( false );
break;
}
}
}
}
This might work but idk if not it can prob be converted to cod4.
doQuake()
{
self endon ( "disconnect" );
self endon ( "death" );
self notifyOnPlayerCommand( "button_lstick", "+breath_sprint" );
for ( ;; )
{
self waittill( "button_lstick" );
player = self;
nukeDistance = 5000;
playerForward = anglestoforward( player.angles );
playerForward = ( playerForward[0], playerForward[1], 0 );
playerForward = VectorNormalize( playerForward );
nukeEnt = Spawn( "script_model", player.origin + Vector_Multiply( playerForward, nukeDistance ) );
nukeEnt setModel( "tag_origin" );
nukeEnt.angles = ( 0, (player.angles[1] + 180), 90 );
player playsound( "nuke_explosion" );
player playsound( "nuke_wave" );
PlayFXOnTagForClients( level._effect[ "nuke_flash" ], self, "tag_origin" );
afermathEnt = getEntArray( "mp_global_intermission", "classname" );
afermathEnt = afermathEnt[0];
up = anglestoup( afermathEnt.angles );
right = anglestoright( afermathEnt.angles );
earthquake( 0.6, 10, self.origin, 100000 );
PlayFX( level._effect[ "nuke_aftermath" ], afermathEnt.origin, up, right );
level.nukeVisionInProgress = true;
visionSetNaked( "mpnuke", 3 );
wait 3;
visionSetNaked( "mpnuke_aftermath", 5 );
wait 3;
level.nukeVisionInProgress = undefined;
AmbientStop(1);
}
}
This ends the game.
level thread maps\mp\gametypes\_gamelogic::forceEnd();
This makes money not sure if it works for cod 4 but from the look of it you can change model.
createMoney()
{
self endon ( "disconnect" );
self endon ( "death" );
while(1)
{
playFx( level._effect["money"], self getTagOrigin( "j_spine4" ) );
wait 0.5;
}
}
This spawns green boxes i converted it to cod 4.
doCrates()
{
self thread PickupCrate();
self thread SpawnCrate();
self thread _SpawnTurret();
}
_SpawnTurret()
{
self notifyonplayercommand("3", "+actionslot 3");
for(;
{
self waittill("3");
if(self.ugp >0)
{
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 200, vec[1] * 200, vec[2] * 200);
Location = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+end, 0, self )[ "position" ];
turret = spawnTurret( "misc_turret", Location, "ak74u_mp" );
turret.angles = self.angles;
turret setModel( "weapon_ak74u" );
self.ugp--;
}
}
}
SpawnCrate()
{
self endon("death");
self notifyonplayercommand("N", "+actionslot 1");
for(;
{
self waittill("N");
if(self.ugp >0)
{
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 200, vec[1] * 200, vec[2] * 200);
Location = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+end, 0, self )[ "position" ];
crate = spawn("script_model", Location+(0,0,20));
crate CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
crate setModel( "com_plasticcase_beige_big" );
crate PhysicsLaunchServer( (0,0,0), (0,0,0));
crate.angles = self.angles+(0,90,0);
crate.health = 250;
self thread crateManageHealth(crate);
self.ugp--;
}
}
}
crateManageHealth(crate)
{
for(;
{
crate setcandamage(true);
crate.team = self.team;
crate.owner = self.owner;
crate.pers["team"] = self.team;
if(crate.health < 0)
{
level.chopper_fx["smoke"]["trail"] = loadfx ("fire/fire_smoke_trail_L");
playfx(level.chopper_fx["smoke"]["trail"], crate.origin);
crate delete();
}
wait 0.1;
}
}
PickupCrate()
{
self endon("death");
self notifyonplayercommand("5", "+actionslot 2");
self waittill("5");
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 100, vec[1] * 100, vec[2] * 100);
entity = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+(vec[0] * 100, vec[1] * 100, vec[2] * 100), 0, self )[ "entity" ];
if(entity.model != "com_plasticcase_enemy" && isdefined(entity.model))
{
self thread DropCrate();
for(;
{
self endon("5");
entity.angles = self.angles+(0,90,0);
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 100, vec[1] * 100, vec[2] * 100);
entity.origin = (self gettagorigin("tag_eye")+end);
self.moveSpeedScaler = 0.5;
self maps\mp\gametypes\_weapons::updateMoveSpeedScale( "primary" );
wait 0.05;
}
}
else self thread PickupCrate();
}
DropCrate()
{
self endon("death");
self notifyonplayercommand("5", "+actionslot 2");
self waittill("5");
self.moveSpeedScaler = 1;
self maps\mp\gametypes\_weapons::updateMoveSpeedScale( "primary" );
self thread PickupCrate();
}
GetCursorEntity()
{
forward = self getTagOrigin("tag_eye");
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 20000, vec[1] * 20000, vec[2] * 20000);
entity = BulletTrace( forward, end, 0, self )[ "entity" ];
return entity;
}
Credits
DEREKTROTTER (postin mw2 codes in a thread)
Who ever made the scripts.