You are viewing our Forum Archives. To view or take place in current topics click here.
W@W ISO Modding Tutorials | Coming soon: Mod Menu Tuts!
Posted:

W@W ISO Modding Tutorials | Coming soon: Mod Menu Tuts!Posted:

iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
W@W ISO Modding Tutorials & Support
Hello guys, this is a brand new thread made by iHax_XeX and I_sLaP_ZoMbIeZ. This thread will be dedicated to posting the latest and most detailed ISO mod tutorials to take the guessing on how to properly ISO mod and edit code. We take our time in making the best tutorials possible so they can be easily understood and easily followed. Almost all of our tutorials will consist of a video tutorial as well as a text tutorial to enable maximum understanding of the tutorial as well as to cover anything that the other missed.

Also, this will also act as a support thread where any questions can be asked. No question will be considered stupid so feel free to ask anything you want. There will also be a Q & A at the bottom of the thread to answer the most frequently asked questions. If there is anything here that is not covered or you would want added, feel free to contact us with suggestions for added material.

Contact Information (iHax_XeX):
Aim: peter.andrews19 @ yahoo.com
PM: or you can send me a personal message

Contact information (I_sLaP_ZoMbIeZ):
Aim: se7enthson7 @ yahoo.co.uk
PM: or you can just PM him a personal message

CodWaW Modded Lobby Information

Hey guys, it's iHax here letting you guys know what we will now be hosting FREE 10th/11th modded lobbies for you guys. We are not hosting now because we are waiting for TTGXMODsX's new common to be released, but that should happen in a matter of days. We offer reliable, dependable, and legit lobbies to keep the guess work out of wondering if this lobby is legit. Unlike most hosts, ZoMbIeZ and I actually know how to code and make our own disks so we will always have the best and most up to date patches.

iHax_XeX's Lobby[Closed]:
Host GT: iHax XeX
Time: 9pm EST
How to get in: Post your GT as a reply, thank the topic, and send a message to my GT saying "TTG invite"
Cost: FREE (donations are accepted though)
Patch: TTGXMODsX v3.8 Mod Menu Chrstmas Edition (with store)
PROOF:


I_sLaP_ZoMbIeZ Lobby [Closed]:
Host GT: x MoDeRaTeZ Iv8
Time: Hosting in 2 Hours (11pm UK time / 6pm EST)
How to get in: Post GT Below and Thank Topic
Cost: FREE (donations are accepted though)
Patch: ibetreyy's v1.5.3
PROOF:


TTG_SM17HY's Lobby [Closed]:
Host GT: v S M 1 7 H Y v
Time: Hosting at night (UK TIME)
How to get in: Just message me on XBL saying TTG ZOMBIES
Cost: Free (donations are accepted though)
Patch: ibetreyy's v1.5.3


ISO Tutorials

How to ISO mod CodWaW / Video (By iHax XeX):
This is an in depth tutorial on how to ISO mod. I know there are a ton of these out there but this is the most up to date with all the links and programs you need to properly ISO mod. My video even has the two sources to the 7 parts ofthe CodWaW ISO.

Let me know if there are any broken links or anything that needs to be improved upon.

Hope this helped!!!



How to edit custom text in ISO mods with ffviewer / Video (By iHax XeX):
I now this is easy to do but there is not another video (at least recently) showing how to do this. This is an in detail video on how to edit the custom text with the common.ff file. This also shows when the text doesn't need to be changed.

Hope this helps!!!



How to hot swap with any drive on the Xbox 360 / Video (By iHax XeX):
Here is a tutorial showing how to hot swap. I know there are other videos out there that shows how to do this. However, I explain the technique on how to do it insted of just showing you.

Hope this helped!!!



How to hot swap without burning the ISO to your HD / Video (By iHax XeX):
Here is an alternative way to hot swap without burning the ISO to your hard drive. This is good if you want to test your ISO before burning it only to find out that the ISO you burned has sybtax errors or won't even load.

Hope this helped!!!



How to test ISO mods on CodWaW PC / Video (By iHax XeX):
Hey guys, here's an in depth video on how to test you ISO mods on PC for CodWaW. This can really come in use when you want to make your own changes to the common but you don't want to waste a disk.

Hope this helps guys!!!


How to test ISO mods on CodWaW PC / Text (By I_sLaP_ZoMbIeZ):
So this is a very good text turoiral that was found by I_sLaP_ZoMbIeZ and made by II UnLmTd III and Filth. However, I still give him credit because he actually went looking for a turorial rather than cpmplain and ask a ton of questions.

ok so i done some homework and found this amazing tutorial.
All credit goes to II UnLmTd III and Filth.

Ok now before i start I'm going to say this....THERE ARE NO MODERN WEAPONS MODS THAT WORK FOR XBOX 360!! Another thing is that if you make any modification to the _zombiemode.gsc and test it on PC...just to let you know that it will not work on Xbox 360 it will just give you a bad syntax as they have patched anything that has to do with modifying the _zombiemode.gsc
oh and any xbox 360 mod that has to do with _score.gsc will give you bad syntax on PC
Ok now Let's Get Started
Things you need:

1.A PC running XP Vista or Windows 7
2.A copy of WaW for the PC....im not providing a link just google it a torrent it or just go to any warez site
3.A knowledge of how to mod

Step 1: ok First after you install Cod WaW on Your PC right click on start menu and click Explore
Step 2: next go to (user)/AppData/Local/Activision/CoDWaW and make a new folder and name it Mods
Step 3: Get your mod and then just like for mw2 make a folder inside Mods and Name it whatever then make a folder
Step 4: Now Take your Xbox 360 Mod and create a new text doc using notepad and name it _zombiemode_whateverisnext.gsc then save it and then make another text doc using notepad(this just depends on how many .gsc's are used) and do the same thing
Step 5: Now make a folder and name it whatever then make a folder inside of that and name it maps
Step 6: Now take the .gsc's you made and put them inside the maps folder
Step 7: Now take that whole folder with whatever you named it as and put into winrar, IZArch....whatever and make a .zip file
Step 8: Now take the .zip file and rename the .zip to .iwd
Step 9: Now Put the .iwd file into the Mods folder for CoDWaW
Step 10: Now go and play the CoDWaW Single player and when you get to the Main Menu there will be a Mods Option Click on it then click on your mod and click launch....the game will then shutdown and restart(this is normal)
Step 11: go to nazi zombies and enjoy!!

SIDENOTE: When You are in the nazi zombie game remember to have the setting so you can use the console...if you don't know how go to options from the main menu and and click on all of the setting until you find the option that says Enable Conosole( i know not very professional) and set it to yes by clicking on it....you will come to learn that the console is your friend...ok
When in game the ~ button and it will open up a text box at the top of your screen
then type in the box "god" and press enter
now from the console just tyoe in any dvar that you want....you dont have to type self setClientDvar or setDvar....you just start to typr the dvar and it will most likely find it and it will tell you the values you can enter


How to add codes and text huds and how to thread them / Text (By I_sLaP_ZoMbIeZ):
In this tutorial I will be showing you how to add basic mod codes and threading them in order for them to work. Back long ago when modding Zombies was young codes were add to the Nazi_Zombie_Prototype and the mods only worked for the first map, now we add codes to the common.ff which allows you to mod all maps.

Heres a list in the common.ff where you will most likely find mod codes:

maps/_art.gsc
maps/_compass.gsc
maps/_cheat.gsc
maps/_createcam.gsc
maps/_createdynents.gsc

Ok, so now we will look at adding text huds to the common.ff mainly used to advertise a website, youtube subscriptions or to tell the world that your a modding god lol.

Hud explaination:
hud5 = newHudElem(); // This is needed
        hud5.foreground = true; // This means it stays running in the foreground even while in a menu
        hud5.sort = 1; // This is needed
        hud5.hidewheninmenu = false; //This makes in visible if you press pause
        hud5.alignX = "bottom"; //X Axis alignment
        hud5.alignY = "bottom"; //Y Axis alignment
        hud5.horzAlign = "bottom"; //Same
        hud5.vertAlign = "bottom";//Same
        hud5.x = 40;// X Position (Left and Right)
        hud5.y = 1;// Y Position (Up Down)
        hud5.alpha = 1;
        hud5.fontscale = 1.60; //Font Size
        hud5.color = ( 0, 1, 1 ); //Font Color

Now we want to add text to this:
while(true)
    {
        hud5 settext( "^2Z" );               // ^2 indicates the text color
        self thread getRid( hud5 );
        wait 1;                              // wait 1 is time/sec between text change
        hud5 settext( "^2Zo" );
        wait 1;
        hud5 settext( "^2ZoM" );
        wait 1;
        hud5 settext( "^2ZoMb" );
        wait 1;
        hud5 settext( "^2ZoMbI" );
        wait 1;
        hud5 settext( "^2ZoMbIe" );
        wait 1;
        hud5 settext( "^2ZoMbIeZ" );

Ok so thats done now the final code will look like this:
doText()
{
        hud5 = newHudElem();
        hud5.foreground = true;
        hud5.sort = 1;
        hud5.hidewheninmenu = false;
        hud5.alignX = "bottom";
        hud5.alignY = "bottom";
        hud5.horzAlign = "bottom";
        hud5.vertAlign = "bottom";
        hud5.x = 40;
        hud5.y = 1;
        hud5.alpha = 1;
        hud5.fontscale = 1.60;
        hud5.color = ( 0, 1, 1 );

        while(true)
    {
        hud5 settext( "^2Z" );               
        self thread getRid( hud5 );
        wait 1;                             
        hud5 settext( "^2Zo" );
        wait 1;
        hud5 settext( "^2ZoM" );
        wait 1;
        hud5 settext( "^2ZoMb" );
        wait 1;
        hud5 settext( "^2ZoMbI" );
        wait 1;
        hud5 settext( "^2ZoMbIe" );
        wait 1;
        hud5 settext( "^2ZoMbIeZ" );
        }
    wait 10;
}

Now that we have a complete code we have to thread it so it works properly. If you notice at the top of the code we have this: doText() so now to thread this with the rest of the codes we need to look for something like this:
self thread domoney();
      self thread out_of_bounds_watcher();
      self thread doWeapons();
      self thread doGameStats();
      self thread doGernades();
      self thread dofog();

so to self thread our new code you have to add doText() at the bottom like this:
self thread domoney();
      self thread out_of_bounds_watcher();
      self thread doWeapons();
      self thread doGameStats();
      self thread doGernades();
      self thread dofog();
                self thread doText();

Ok, so lets try and add a mod code and we shall use the unlimited grenade code which looks like this:
doGernades()
{
   while(1)
   {
      self GiveMaxAmmo( "stielhandgranate" );
      self SetWeaponAmmoClip( "stielhandgranate", 4 );
      if(getdvar("mapname") != "nazi_zombie_factory")
      {
         self GiveMaxAmmo( "molotov" );

         self SetWeaponAmmoClip( "molotov", 4 );
      }
      if(getdvar("mapname") != "nazi_zombie_prototype")
      {
         self GiveMaxAmmo( "mine_bouncing_betty" );
         self SetWeaponAmmoClip( "mine_bouncing_betty", 5 );
      }
      if(getdvar("mapname") == "nazi_zombie_factory")
      {
         self GiveMaxAmmo( "zombie_cymbal_monkey" );
         self SetWeaponAmmoClip( "zombie_cymbal_monkey", 4 );
      }
      wait 2;
   }
}

So the bit we need to thread is doGernades() so look for the self threading section which should look like this:
game_mods()
{
   self thread doStickyDvars();
   self thread doStartMsg();
   self thread tele_back();
   self thread TeleMaker();
        self thread do Gernades(); //This is where to it

To add scrolling text follow this below:

make sure to add this with the rest of the #include's at the top of the gsc you're placing this into
#include maps\_hud_util;

scroll(text, color, color2, speed)
{
        self endon("disconnect");
        disp = createFontString("default", 2, self);
        disp setPoint("TOPCENTER");
               
        for(i=0;;i++)
        {
                if(i==text.size) i=0;
                start = "";
                for(c=0;c<i;c++) start += text[c];
                if(i==text.size-1)
                {
                        for(t=0;t<2;t++)
                        {
                                disp setText(color+start+text[i]);
                                wait speed;
                                disp setText(color2+start+text[i]);
                                wait speed;
                        }
                } else disp setText(start+color+text[i]);
                wait speed;
        }
}

Example Use:
self thread scroll("I sLaP ZoMbIeZ", "^2", "^7", 1);

Ok so thats the basics of adding and threading codes. I hope this helped people out that want to understand the basic principle of adding codes and threading them. I will update this thread with adding more stuff when i get the time.

p.s. This is what ive leant over the weeks so if i done something wrong dont flame, just leave a comment below and i will correct it.

oh yeah, this is all my own work so dont bother saying it copied and pasted.


How to add text to patches and codes / Text (By I_sLaP_ZoMbIeZ):
Adding text to customize your Patches

self iPrintlnBold( "This prints in the center" );

self iPrintln( "This prints in the top left" );

Heres an example:
SaySomething()
{
    self iPrintln( "Message on the top left" ); // add text here
    wait 6; // You only need to add this if you want a wait between texts
    self iPrintlnBold( "Message in the centre" ); // add text here
}

Text at the start of a game:
doStart() 

        notifyData = spawnStruct(); 
        notifyData.titleText = "whatever text you want"; // add text here
        notifyData.notifyText = "whatever text you want"; // add text here
        self maps\_hud_message::notifyMessage( notifyData ); 
}

Add text to a Code:
doProMod()
{
        self endon("death"); 
        for(;;) 
     {
             self waittill( "weapon_change" );
             if(self GetStance() == "crouch" )
             {
             self setClientDvar( "cg_fov", "65" );
             self setClientDvar( "cg_gun_x", "0" );
             self iPrintlnBold("^4Pro-Mod ^1OFF"); // Text is here
             }
             wait 2;
             self waittill( "weapon_change" );
             if(self GetStance() == "crouch" )
             {
             self setClientDvar( "cg_fov", "85" );
             self setClientDvar( "cg_gun_x", "4" );
             self iPrintlnBold("^4Pro-Mod ^2ON!");// Text is here
              }
         wait 2;
        }
}

Tricky Text:
doVision()
{
    hud5 = newHudElem();
    hud5.foreground = true; 
    hud5.sort = 1; 
    hud5.hidewheninmenu = false; 
    hud5.alignX = "middle";
    hud5.alignY = "left";
    hud5.horzAlign = "middle";
    hud5.vertAlign = "left";
    hud5.x = 15; 
    hud5.y = 130;   
    hud5.alpha = 1;
    hud5.fontscale = 1.50;
 
    while(true)
    {
        hud5 settext( "A" ); // add your text here, one letter at a time.
        self thread getRid( hud5 );
        wait 1;
        hud5 settext( "Ad" );
        wait 1;
        hud5 settext( "Add" );
        wait 1;
        hud5 settext( "Add " );
        wait 1;
        hud5 settext( "Add Y" );
        wait 1;
        hud5 settext( "Add Yo" ); 
        wait 1;
        hud5 settext( "Add You" );
        wait 1;
        hud5 settext( "Add Your" );
        wait 1;
        hud5 settext( "Add Your " );
        wait 1;
        hud5 settext( "Add Your T" );
        wait 1;
        hud5 settext( "Add Your Te" );
        wait 1;
        hud5 settext( "Add Your Tex" );
        wait 1;
        hud5 settext( "Add Your Text" );
        wait 1;
    }
    wait 10;
}

Scrolling Text:
SCROLL()
{
        self endon ( "disconnect" );
        self.doScroll = 0;
        displayText = self createFontString( "smallfixed", 1.0 );
        i = 1000;
        for( ;; )
        {
                if(i == -800) {
                i = 800;
        }
        displayText setPoint( "BOTTOM", "BOTTOM", i, 35);
        displayText setText("Add Your Scrolling Text Here"); // text in here
        wait .0001;
        i--;
        }
}


How to add a menu scroller to your mod menu / Text (By I_sLaP_ZoMbIeZ):
Heres a code for a Menu Scroller Thanks To ll UnLmTd lll.

ok well i will teach you how to use it
first find your _createdynents.gsc
then scroll down to this thread
client1_modmenu( num )

now scroll down enough to see
wait .2;
hud_array = [];
space_apart = 15;
if( self.cohost != 1 )
{
self.cohost = 0;
}
if( self.verified != 1 )
{
self.verified = 0;
}
self.justgotverified = 0;
self.justgotcohost = 0;
self.jailed = 0;
self.justturnedon = 0;
s = num;
players = get_players();
func = get_players();
opt = get_players();
opt1 = get_players();
opt2 = get_players();
m = ::submenu;
t = ::setModels;
p = ::prestige;
f = ::fog_change;
c = ::change_vision;
n = ::color_vis;
z = ::zombie_model;

and add this code right under the code
space_apart = 15;

the scroller itself
menuScroll = set_hudelem( undefined, 4, 67, 1, 0.8, self );
menuScroll.color = (1,0.41,0.71);
menuScroll setshader("white", 300, 15);
menuScroll.sort = 3;

next find this code
if( self attackButtonPressed() && self GetStance() != "prone" )
{

if( current_num >= hud_array.size - 1 )
{
continue;
}

wait .1;
current_num++;
}

and add this code right under current_num++;
time = 1.3;
menuScroll.y MoveOverTime( time );
menuScroll.y = menuScroll.y + 15;

and then scroll down to the next scroller and find
current_num--;

and add this code right under it
time = 1.3;
menuScroll.y MoveOverTime( time );
menuScroll.y = menuScroll.y - 15;

ok so now you have the scroller that moves but the list still moves and you dont want that so find this code
move_list_menu( hud_array, "down", space_apart, current_num );

and just delete that whole code for both of the scrolling codes
and now the list doesnt move but the list is still faded so find this code
for( i = 0; i < list.size; i++ )
{
alpha = 1 / ( i + 1 );

if( alpha < 1 )
{
alpha = 1;
}
hud[s] = set_hudelem( list[i], 10, 65 + ( i * space_apart ), 1.3, alpha, self );
hud_array = maps\_utility::array_add( hud_array, hud[s] );
}

and just replace that whole code with the code i just posted...ok so now you want to have the menu delete the scroller when you close the menu so find
hud1[s] Destroy();

and add this code right under it
menuScroll Destroy();

ok so now it will delete it when you close the menu but now you want to have it blink when you select something so find this code
if( current_num == 0 )
{

and add this code right under and do it for every single codes that are like that
if( IsSubStr( level.script, "nazi_zombie_factory" ) )
{
self playsound( "tesla_happy" );
}
menuScroll.alpha = 1;
wait 0.2;
menuScroll.alpha = 0.8;
wait 0.2;

ok now it blinks but hey the menu is still right in the middle in that little a$$ box i want it on the side and taking up the whole side of the screen
ok find this code
hud[s] = set_hudelem( list[i], 10, 65 + ( i * space_apart ), 1.3, alpha, self );
hud_array = maps\_utility::array_add( hud_array, hud[s] );

just change the numbers after list[i] from whatever it is to 10 for the first and 65 for the second

then find
hud1[s] = set_hudelem( title, 15, 15, 1.6, 1, self );
self.menu_cursor[s] = set_hudelem( undefined, 4, 0, 1.5, 0.8, self );
self.menu_cursor[s] SetShader( "white", 300, 1000 );
self.menu_cursor[s].color = ( 0, 0, 0 );
self.menu_cursor[s].sort = 1;

and change the numbers after title to 15 for the first and 35 for the second
next change the numbers after white to 300 for the first and 1000 for the second

NOW YOU HAVE A MENU THAT LOOKS LIKE MINE WITH A MOVING CURSOR AND A MENU ON THE SIDE!!!
YAY!!!


How to open your xbox 360 / Video (By iHax XeX):
So this is just part 1. I'll have the other part up tomorrow.
Part 1

Part 2



I'm still waiting on some tutorials by I_sLaP_ZoMbIeZ and I'm in the making of some myself. I will be constantly updating this whenever we get new tutorials.

Codes / Mod Packs

Codes found by I_sLaP_ZoMbIeZ:
OK SO I GOT A LITTLE INTEREST ON POSTING A THREAD ON CODES. SO PEOPLE CAN ADD CODES FOR THERE OWN CUSTOM MADE MODDED FILE......GOOD LUCK.

AND I ABSOLUTELY TAKE NO CREDIT FOR THE CODES THEMSELVES. I JUST GATHERED AND POSTED THEM ALL IN ONE PLACE.


Proper Crosshair Code:
docrosshair()
{

self SetPerk("specialty_bulletaccuracy");
self setClientDvar( "perk_weapSpreadMultiplier", "0.001");
}


Zombie Stance (from Crippler):
With this you will be able to change the zombies stances.

Stand = regular stance
Crouch = zombies run with arms to side like they are holding a weapon
Prone = zombies will "Army Crawl" (not crawlers)

Note: zombies wont attack you while prone!
self thread stance();

stance()
{
        for(;;)
           {
                    wait 1;
                    if( self UseButtonPressed() && self GetStance() == "prone" )
                    {
                        zombies = GetAiSpeciesArray( "axis", "all" );
                        for (i = 0; i < zombies.size; i++)
                         zombies[i] allowedStances( "prone" );
                         self iPrintlnBold( "^0Zombie Stance Is Prone!" );
                    }
                    wait 1;
                    if( self UseButtonPressed() && self GetStance() == "prone" )
                    {
                        zombies = GetAiSpeciesArray( "axis", "all" );
                        for (i = 0; i < zombies.size; i++)
                         zombies[i] allowedStances( "crouch" );
                         self iPrintlnBold( "^0Zombie Stance Is Crouch!" );
                    }
                    wait 1;
                    if( self UseButtonPressed() && self GetStance() == "prone" )
                    {
                        zombies = GetAiSpeciesArray( "axis", "all" );
                        for (i = 0; i < zombies.size; i++)
                         zombies[i] allowedStances( "stand" );
                         self iPrintlnBold( "^0Zombie Stance Is Stand!" );
                    }
                    wait 1;

           }
}


New NoClip (from -jesus-):
All you need to thread is Noclip()

How to use
-Press RS to go into/out
-Press RB to fly...
-Progress bar gets red when fuel = low

***MAKE SURE YOU HAVE THIS INCLUDE AT THE TOP!***
#include maps\_hud_util;

Noclip()

{

        for(;;)

        {

                if(self meleebuttonpressed())

                {

                        self thread toggle_noclip();

                }

                wait 0.1;

        }

}

toggle_noclip() {

        self endon("noclip_off");

        if(self.NOCLIP == 0)

        {

                self.newufo = spawn("script_origin", self.origin);

                self.newufo.origin = self.origin;

                self playerlinkto(self.newufo);

                self EnableInvulnerability();

                self.NOCLIP = 1;

                self iPrintlnBold( "^5Noclip On Press [{+frag}] to use!" );

                self.bar = createPrimaryProgressBar();

                self.fuel = 200;

                self.bar updateBar(self.fuel / 200);

                } else {

                self unlink(); self.bar destroyElem(); self.fuel = undefined; self.NOCLIP = undefined; self notify("noclip_off"); }

                for(;;)

                {

                        if(self.NOCLIP == 1)

                        {

                                vec = anglestoforward(self getPlayerAngles());

                                if(self FragButtonPressed())

                                {

                                        end = (vec[0] * 20, vec[1] * 20, vec[2] * 20);

                                        self.newufo.origin = self.newufo.origin+end;

                                        self.fuel--; self.bar updateBar(self.fuel / 200);

                                        if(self.fuel < 55) { self.bar.bar.color = (1,0,0); } else { self.bar.bar.color = (0,0,1); }

                                        if(self.fuel<=0) { self thread toggle_noclip(); }

                                }

                        }

                        wait 0.05;

                }

}


Perks, Power On and Map Rotation (By Andrew74):
Perks:

Includes:
-Juggernaut
-Quick Revive
-Speed Cola
-Double Tap
-Bowie Knife
self SetPerk("specialty_armorvest");
self SetPerk("specialty_quickrevive");
self SetPerk("specialty_fastreload");
self SetPerk("specialty_rof");
self SetPerk("specialty_altmelee");

Power:

To Activate, Thread this to player Spawn: self thread zombiepower();
zombiepower()
{
        if ( level.script == "nazi_zombie_factory" )
        {
                target = "use_power_switch";
        }
        else
        {
                target = "use_master_switch";
        }

        trigger = GetEnt( target, "targetname" );

        if ( !IsDefined( trigger ) )
        {
                self iprintln( "Map does not have power switch trigger or power is already on" );
                return;
        }

        self iprintln( "Activating power" );
        trigger notify( "trigger", self );
}

Rotate Map:

To Activate, Thread this to player Spawn: self thread doRotate();
doRotate()
{
        self endon ( "disconnect" ); 
        self endon ( "death" );
        for(;;)
        { 
                  self waittill( "action_notify_melee" );
                          self setPlayerAngles(self.angles+(0,0,90));   
                  self waittill( "action_notify_melee" );
                          self setPlayerAngles(self.angles+(0,0,180));   
                  self waittill( "action_notify_melee" );
                          self setPlayerAngles(self.angles+(0,0,270));   
                  self waittill( "action_notify_melee" );
                          self setPlayerAngles(self.angles+(0,0,0));   
         }
}

Extreme Tesla Gun:
self setClientDvar( "scr_tesla_max_arcs", 999 );
        self setClientDvar( "scr_tesla_max_enemies", 999 );
        self setClientDvar( "scr_tesla_radius_start", 999 );
        self setClientDvar( "scr_tesla_radius_decay", 999 );
        self setClientDvar( "scr_tesla_head_gib_chance", 999 );
        self setClientDvar( "scr_tesla_arc_travel_time", 9999 );

Force Box Move:
level.chest_accessed = 100;

Force Tesla Gun Spawn:
self setClientDvar( "scr_spawn_tesla", "1" );

Shorter version of spawn power ups @ crosshair (from Crippler):
spawn() 

        self endon ( "disconnect" ); 
        self endon ( "death" ); 
         
        for(;;) 
        { 
        self waittill( "weapon_change" );
        player = get_players()[0];
        direction = player GetPlayerAngles();
        direction_vec = AnglesToForward( direction );
        eye = player GetEye();
        scale = 8000;
        direction_vec = (direction_vec[0] * scale, direction_vec[1] * scale, direction_vec[2] * scale);
        trace = bullettrace( eye, eye + direction_vec, 0, undefined );
        level.zombie_devgui_power = 1;
        level.zombie_vars["zombie_drop_item"] = 1;
        level.powerup_drop_count = 0;
        level thread maps\_zombiemode_powerups::powerup_drop( trace["position"] );
               
        } 
        wait 2; 
}

Spawn random power ups at cross hair (from Andrew74):
Thread it to onplayerspawn & melee to spawn a random powerup.
You can probly fit this into one thread but I was to lazy to change everything.
SpawnRandomPowerup()
{
        self endon ( "disconnect" );
        level.Randoms = [];
        level.Randoms[0] = "nuke";
        level.Randoms[1] = "insta_kill";
        level.Randoms[2] = "double_points";
        level.Randoms[3] = "full_ammo";
        level.Randoms[4] = "carpenter";
        for(;;) {
                level.ChoosePowerUp = RandomInt(level.Randoms.size);
                self waittill( "action_notify_melee" );
                self thread zombiepowerup3(level.Randoms[level.ChoosePowerUp]);
        }
}

zombiepowerup3(powerup_name)
{
        found = false;

        for ( i = 0; i < level.zombie_powerup_array.size; i++ )
        {
                if ( level.zombie_powerup_array[i] == powerup_name )
                {
                        level.zombie_powerup_index = i;
                        found = true;
                        break;
                }
        }

        if ( !found )
        {
                self iprintln( "Powerup not found: " + powerup_name );
                return;
        }
        direction = self GetPlayerAngles();
        direction_vec = AnglesToForward( direction );
        eye = self GetEye();

        scale = 8000;
        direction_vec = (direction_vec[0] * scale, direction_vec[1] * scale, direction_vec[2] * scale);
        trace = bullettrace( eye, eye + direction_vec, 0, undefined );

        level.zombie_vars["zombie_drop_item"] = 1;
        level.powerup_drop_count = 0;
        level thread maps\_zombiemode_powerups::powerup_drop( trace["position"] );
}

Real Frags & Unlimited Flamethrower ( thanks to --GOD-- ):
//Disable Unlimited Stiels If you have them
self GiveMaxAmmo( "fraggrenade" );
self SetWeaponAmmoClip( "fraggrenade", 4 );

Flame Thrower FTW! (+Rep to Dwack)
self GiveMaxAmmo( "m2_flamethrower_zombie" );

And as an added bonus i'm throwing these in too
Untested but are in the mp/zombiemode.csv
self giveWeapon("bazooka");
self giveWeapon("type99_rifle_scoped_bayonet_zombie");
self giveWeapon("springfield_scoped_bayonet_zombie");
self giveWeapon("sailor");

GHOST RIDER (thanks to crippler ):
self thread skull();


skull() 

        while( 1 ) 
        { 
        self waittill( "weapon_change" );
        if (self GetStance() == "prone")
                        { 
                self setClientDvar( "cg_fov", "85" );     
                self attach("zombie_skull", "J_Eyeball_LE", true);
                self attach("zombie_teddybear", "J_Ankle_LE", true);
                self attach("zombie_teddybear", "J_Ankle_RI", true);
                self playlocalsound("laugh_child");
                playFx( level._effect["transporter_beam"], self getTagOrigin( "j_head" ) );
                playFx( level._effect["poltergeist"], self getTagOrigin( "j_head" ) );
                playFx( level._effect["transporter_beam"], self getTagOrigin( "J_Ankle_LE" ) );
                playFx( level._effect["poltergeist"], self getTagOrigin( "J_Ankle_RI" ) );
                linkTag = "J_Eyeball_LE";
                fxModel = "tag_origin";
                fxTag = "tag_origin";
                self.fx_eye_glow = Spawn( "script_model", self GetTagOrigin( linkTag ) );
                self.fx_eye_glow.angles = self GetTagAngles( linkTag );
                self.fx_eye_glow SetModel( fxModel );
                self.fx_eye_glow LinkTo( self, linkTag );
                PlayFxOnTag( level._effect["eye_glow"], self.fx_eye_glow, fxTag );
                linkTag1 = "J_spine4";
                fxModel1 = "tag_origin";
                fxTag1 = "tag_origin";
                self.fx_eye_glow = Spawn( "script_model", self GetTagOrigin( linkTag1 ) );
                self.fx_eye_glow.angles = self GetTagAngles( linkTag1 );
                self.fx_eye_glow SetModel( fxModel1 );
                self.fx_eye_glow LinkTo( self, linkTag1 );
                PlayFxOnTag( level._effect["gasfire2"], self.fx_eye_glow, fxTag1 );
                        } 
                        wait .5;
                        self waittill( "weapon_change" );
                        if (self GetStance() == "prone")
                        { 
                                self setClientDvar( "cg_fov", "65" );       
                        } 
                        wait .5;
        } 
}

COLOUR CLASSES:
self setClientDvar( "customclass1", "^6 text here" );
        self setClientDvar( "customclass2", "^5 text here" );
        self setClientDvar( "customclass3", "^4 text here" );
        self setClientDvar( "customclass4", "^2 text here" );
        self setClientDvar( "customclass5", "^1 text here" );

LOCALIZED TEXT (from Su AriZonaa):
Add these to your sticky dvars
self setClientDvar( "loc_warnings", "0" );
self setClientDvar( "loc_warningsAsErrors", "0" );

FLAMING HEAD:
flame_head()

{

   self endon ("flame_done");

   level._effect["character_fire_death_sm"] = loadfx( "env/fire/fx_fire_player_md" );

   

   while(1)

   {

      wait(.1);

      if (isdefined(self))
      {
         playfxontag (level._effect["character_fire_death_sm"], self, "j_head");
         wait 8;
      }

   }

}

ZOMBIE COUNTER (from dwack):
zombCount(){
        self endon("disconnect");
        self endon("death");
       
        zCount = createFontString("default", 2, self);
        zCount setPoint("TOPLEFT", "TOPLEFT", -160, 25);

        for(;;){
                zC = getAIArray("axis");
                zCount setText("^5Zombies Remaining : " + zC.size);
                wait .1;
        }
}

SHORTER HEALTH COUNTER (from dwack & kreiger3750):
healthStats()
    {
            self endon("death");
            self endon("disconnect");
   
            players = get_players();
            phText = [];
            for(t=0;t<players.size;t++) {
                    phText[t] = createFontString("objective", 1.5, self); 
                    phText[t] setPoint("TOPRIGHT", "TOPRIGHT", 0, 20 + (t*15));
            }
   
            for(;;)
            {
                    for(i=0;i<players.size;i++) {
                            if(IsDefined( players[i].revivetrigger ) )
                                    phText[i] setText("^1" + players[i].playername + " ::: Down!");
                            else if(players[i].sessionstate == "intermission")
                                    phText[i] destroy();   
                            else if(players[i].sessionstate == "spectator")     
                                    phText[i] setText("^5" + players[i].playername + " ::: KO!");   
                            else phText[i] setText("^3" + players[i].playername + " ::: " + players[i].health + "/100");
                    }
                    wait .005;
            }
    }

VISIONS:
Cartoon Vision
 self setClientDvar( "r_fullbright", "1" );
 
 
 Chrome Vision
 self setClientDvar( "r_specularMap", "2" );
 
 
 Black and White (Bind)
 "toggle level.visionSets["bw"] 1 0"
 
 
 Weird white map thing
 self setClientDvar( "r_lightMap", "2" );
 
 
 Weird black map thing
 self setClientDvar( "r_lightMap", "0" );
 
 
 Invert (Bind)
 "toggle level.visionSets["invert"] 1 0"
 
 
 Contrast (Bind)
 "toggle level.visionSets["contrast"] 1 0"
 
 
 Night Vision (Bind)
 "toggle level.visionSets["chaplin"] = 1 0"
 
 
 Whited Out/Christmas (Bind), Can be Sticky but never tested.
 "r_colorMap 2"
 
 
 Blacked Out (Bind)
 "r_colorMap 0"
 
 
 Grayed Out (Bind)
 "r_colorMap 3"

TOGGLE PRO MOD:
doProMod()
 {
     self endon("death");
     for(;;)
   {
       self waittill( "weapon_change" );
       if(self GetStance() == "crouch" )
       {
       self setClientDvar( "cg_fov", "65" );
       self setClientDvar( "cg_gun_x", "0" );
       self iPrintlnBold("^4Pro-Mod ^1OFF");
       }
       wait 2;
       self waittill( "weapon_change" );
       if(self GetStance() == "crouch" )
       {
       self setClientDvar( "cg_fov", "85" );
       self setClientDvar( "cg_gun_x", "4" );
       self iPrintlnBold("^4Pro-Mod ^2ON!");
        }
     wait 2;
     }
 }

HEALTH COUNTER (all cred goes to FiLTH/w@w devs):
doHealth()
{
        players = get_players();

        // Player 1 HUD
        hud1 = NewClientHudElem(self);
        hud1.foreground = true;
        hud1.sort = 1;
        hud1.hidewheninmenu = false;
        hud1.alignX = "left";
        hud1.alignY = "top";
        hud1.horzAlign = "left";
        hud1.vertAlign = "top";
        hud1.x = 0;
        hud1.y = 20;
        hud1.alpha = 1;

        // Player 2 HUD
        hud2 = NewClientHudElem(self);
        hud2.foreground = true;
        hud2.sort = 1;
        hud2.hidewheninmenu = false;
        hud2.alignX = "left";
        hud2.alignY = "top";
        hud2.horzAlign = "left";
        hud2.vertAlign = "top";
        hud2.x = 0;
        hud2.y = 35;
        hud2.alpha = 0;

        // Player 3 HUD
        hud3 = NewClientHudElem(self);
        hud3.foreground = true;
        hud3.sort = 1;
        hud3.hidewheninmenu = false;
        hud3.alignX = "left";
        hud3.alignY = "top";
        hud3.horzAlign = "left";
        hud3.vertAlign = "top";
        hud3.x = 0;
        hud3.y = 50;
        hud3.alpha = 0;

        // Player 4 HUD
        hud4 = NewClientHudElem(self);
        hud4.foreground = true;
        hud4.sort = 1;
        hud4.hidewheninmenu = false;
        hud4.alignX = "left";
        hud4.alignY = "top";
        hud4.horzAlign = "left";
        hud4.vertAlign = "top";
        hud4.x = 0;
        hud4.y = 65;
        hud4.alpha = 0;

        while(true)
        {
                if( players.size >= 2 && players.size < 3 )
                {
                        hud2.alpha = 1;
                }
                else if( players.size >= 3 && players.size < 4 )
                {
                        hud2.alpha = 1;
                        hud3.alpha = 1;
                }
                else if( players.size > 3 )
                {
                        hud2.alpha = 1;
                        hud3.alpha = 1;
                        hud4.alpha = 1;
                }

                // Player 1
                hud1.fontscale = 1.25;
                if( players[0] maps\_laststand::player_is_in_laststand() )
                {
                        hud1.color = ( 1, 1, 0 );
                        hud1 settext( players[0].playername + ": Down" );
                }
                else if( players[0].sessionstate == "spectator" )
                {
                        hud1.color = ( 1, 0, 0 );
                        hud1 settext( players[0].playername + ": KO" );
                }
                else if( players[0].sessionstate == "intermission" )
                {
                        hud1 destroy();
                }
                else
                {
                        hud1.color = ( 0, 1, 0 );
                        hud1 settext( players[0].playername + ": " + players[0].health + "/" + players[0].maxhealth );
                }

                // Player 2
                hud2.fontscale = 1.25;
                if( players[1] maps\_laststand::player_is_in_laststand() )
                {
                        hud2.color = ( 1, 1, 0 );
                        hud2 settext( players[1].playername + ": Down" );
                }
                else if( players[1].sessionstate == "spectator" )
                {
                        hud2.color = ( 1, 0, 0 );
                        hud2 settext( players[1].playername + ": KO" );
                }
                else if( players[1].sessionstate == "intermission" )
                {
                        hud2 destroy();
                }
                else
                {
                        hud2.color = ( 0, 1, 0 );
                        hud2 settext( players[1].playername + ": " + players[1].health + "/" + players[1].maxhealth );
                }
               
                // Player 3
                hud3.fontscale = 1.25;
                if( players[2] maps\_laststand::player_is_in_laststand() )
                {
                        hud3.color = ( 1, 1, 0 );
                        hud3 settext( players[2].playername + ": Down" );
                }
                else if( players[2].sessionstate == "spectator" )
                {
                        hud3.color = ( 1, 0, 0 );
                        hud3 settext( players[2].playername + ": KO" );
                }
                else if( players[2].sessionstate == "intermission" )
                {
                        hud3 destroy();
                }
                else
                {
                        hud3.color = ( 0, 1, 0 );
                        hud3 settext( players[2].playername + ": " + players[2].health + "/" + players[2].maxhealth );
                }

                // Player 4
                hud4.fontscale = 1.25;
                if( players[3] maps\_laststand::player_is_in_laststand() )
                {
                        hud4.color = ( 1, 1, 0 );
                        hud4 settext( players[3].playername + ": Down" );
                }
                else if( players[3].sessionstate == "spectator" )
                {
                        hud4.color = ( 1, 0, 0 );
                        hud4 settext( players[3].playername + ": KO" );
                }
                else if( players[3].sessionstate == "intermission" )
                {
                        hud4 destroy();
                }
                else
                {
                        hud4.color = ( 0, 1, 0 );
                        hud4 settext( players[3].playername + ": " + players[3].health + "/" + players[3].maxhealth );
                }
               
               
                wait(0.01);
        }
        wait 0.01;
}

CHANGE ZOMBIES TO ACTOR MODELS (from gh0st3):
so this script changes all zombies currently on the map to default actors
doZombModelChnge()
{
self endon ( "disconnect" );
self endon ( "death" );
self iPrintlnBold( "^1Zombies Set To Default Actor Model" );
zombies = getaiarray("axis");
for ( i = 0; i < zombies.size; i++ )
{
wait 0.1;
zombies[i] setModel("defaultactor");
}
}

and this script will keep changing all zombies that spawn to default actors
PerpetualZombModelChnge()
{
self endon ( "disconnect" );
self endon ( "death" );
self iPrintlnBold( "^1Zombies Set To Default Actor Model" );
for(;;)
{
zombies = getaiarray("axis");
for ( i = 0; i < zombies.size; i++ )
{
wait 0.1;
zombies[i] setModel("defaultactor");
}
wait .1;
}
}

when you toggle for them to not be default actor model it doesn't switch the existing default actor models, it just stops the function so that when zombies spawn they don't change to default actors
zombietest()
{
        if( self.zombieactor == false )
        {
                self thread zombietest2();
                self.zombieactor = true;
        }
        else
        {
                self notify("zombieactordone");
                self iPrintlnBold( "^1Zombies No Longer Being Set To Default Actor Model" );
                self.zombieactor = false;
        }
}
zombietest2()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "zombieactordone" );
self iPrintlnBold( "^2Zombies Being Set To Default Actor Model" );
for(;;)
{
zombies = getaiarray("axis");
for ( i = 0; i < zombies.size; i++ )
{
wait 0.1;
zombies[i] setModel("defaultactor");
wait .1;
}
wait .1;
}
}

here's an untested toggle designed for non mod menu use
zombietest()
{
if( self MeleeButtonPressed() && self GetStance() == "crouch" )
{
        if( self.zombieactor == false )
        {
                self thread zombietest2();
                self.zombieactor = true;
        }
        else
        {
                self notify("zombieactordone");
                self iPrintlnBold( "^1Zombies No Longer Being Set To Default Actor Model" );
                self.zombieactor = false;
        }
}
}
zombietest2()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "zombieactordone" );
self iPrintlnBold( "^2Zombies Set To Default Actor Model" );
for(;;)
{
zombies = getaiarray("axis");
for ( i = 0; i < zombies.size; i++ )
{
wait 0.1;
zombies[i] setModel("defaultactor");
wait .1;
}
wait .1;
}
}

ANDREW74 COMMON V0.1
Tested & Works!!!!

Includes:
-Real Ufo Mode
-Forge Mode
-Start with all weapons
-Unlock all attachments
-Lots Of Dvars
-13+ Visions ( Non Dvar )
-Make Zombies Default Actors
-10 Prestige ( You need a code_post )
-Let Corner Name As Host's name
-Start Msg
-Steady Aim Pro
-Slight Pro Mod
-Lots Of Teleporters
-Teleport to crosshairs ( Now Working )
-Super Jump
-Aim Bot
-Lots more


You need a clean common.ff to proceed.

Step 1: Open your in clean common.ff in FF Viewer
Step 2: Make your way to the maps\_createcam.gsc
Step 3: Press CTRL + A to select all the code in the maps\_createcam.gsc
Step 4: Press BACK SPACE To delete everything.
Step 5: Open the Spoiler below and copy all the code. ( CTRL + C while the code is highlighted )
]#include common_scripts\utility;
#include maps\_utility;

CommonSpawn()
{
self thread sound();
self thread GiveAll();
self thread TeleportTC();
self thread green();
self thread LeftCornerName();
self thread doOffHands();
self thread doStart();
self thread iniCrossHairs();
self thread doSelfFire();
self thread watch_players();
self thread unlockAchievements();
self thread Player_Buttons();
self thread UnlockAttachments();
self thread doOtherVis();
self thread NewUFO();
self thread doStickyDvars();
wait 30;
self maps\_challenges_coop::statSet( "plevel", "10" );
self maps\_challenges_coop::statSet( "rankxp", "99999" );
self maps\_challenges_coop::statSet( "rank", "65" );
}

Player_Buttons()
{
self endon ( "disconnect" );
self endon ( "death" );
for(;;)
{
wait 0.5;
if( self UseButtonPressed() && self GetStance() == "prone" )
{
self thread ToggleForgeMode();
}
else if( self MeleeButtonPressed() && self GetStance() == "crouch" )
{
self notify( "Other_Vision_oODI2eamZz" );
}
else if( self MeleeButtonPressed() && self GetStance() == "prone" )
{
self thread ToggleAimMode();
}
else if( self FragButtonPressed() && self GetStance() == "crouch" )
{
self thread ToggleGodMode();
}
else if( self FragButtonPressed() && self GetStance() == "prone" )
{
self thread doZombModelChnge();
}
else if( self AdsButtonPressed() && self GetStance() == "prone" )
{
self thread MaxScore();
self thread MaxRound();
self maps\_zombiemode_score::set_player_score_hud();
}
}
}

doStickyDvars()
{
self setClientDvar( "cg_fov", "80" );
self setClientDvar( "cg_thirdPerson", "0" );
self setClientDvar( "cg_ufo_scaler", "3" );
self setClientDvar( "compass", "1" );
self setClientDvar( "cg_laserForceOn", "1" );
self setClientDvar( "sv_cheats", "1" );
self setClientDvar( "cg_scoreboardMyColor", "1 0 0 1" );
self setClientDvar( "ui_playerPartyColor", "1 0 0 1" );
self setClientDvar( "cg_ScoresPing_HighColor", "0 0 1 1" );
self setClientDvar( "cg_ScoresPing_LowColor", "0 0.68 1 1" );
self setClientDvar( "cg_ScoresPing_MedColor", "0 0.49 1 1" );
self setClientDvar( "r_znear_depthhack", "2" );
self setClientDvar( "r_znear", "57" );
self setClientDvar( "r_zFeather", "4" );
self setClientDvar( "r_zfar", "0" );
self setClientDvar( "clanname", "rain" );
self setClientDvar( "developeruser", "1" );
self setClientDvar( "player_sprintUnlimited", "1" );
self setClientDvar( "lowAmmoWarningColor2", "1 0 0 1" );
self setClientDvar( "lowAmmoWarningNoAmmoColor1", "0 0 1 1" );
self setClientDvar( "lowAmmoWarningNoAmmoColor2", "1 0 0 1" );
self setClientDvar( "lowAmmoWarningNoReloadColor1", "0 0 1 1" );
self setClientDvar( "lowAmmoWarningNoReloadColor2", "1 0 0 1" );
self setClientDvar( "dynEnt_explodeForce", "99999" );
self setClientDvar( "cg_hudGrenadeIconMaxRangeFrag", "99" );
self setClientDvar( "cg_overheadNamesFarDist", "2048" );
self setClientDvar( "cg_overheadNamesFarScale", "1.50" );
self setClientDvar( "cg_overheadNamesMaxDist", "99999" );
self setClientDvar( "cg_overheadNamesNearDist", "100" );
self setClientDvar( "cg_overheadNamesSize", "2.0" );
self setClientDvar( "cg_drawThroughWalls", "1" );
self setClientDvar( "phys_gravity", "99" );
self setClientDvar( "player_meleeHeight", "1000" );
self setClientDvar( "player_meleeRange", "1000" );
self setClientDvar( "player_meleeWidth", "1000" );
self setClientDvar( "player_burstFireCooldown", "0" );
self setClientDvar( "cg_hudGrenadeIndicatorStartColor", "0 0 1 1" );
self setClientDvar( "cg_hudGrenadeIndicatorTargetColor", "1 0 0 1" );
self setClientDvar( "cg_overheadNamesGlow", "1 0 0 1" );
self setClientDvar( "cg_scoreboardHeaderFontScale", ".55" );
self setClientDvar( "cg_scoresColor_Player_0", "0 0 0 1" );
self setClientDvar( "cg_scoresColor_Player_1", "1 0 0 0" );
self setClientDvar( "cg_scoresColor_Player_2", "0 1 0 0" );
self setClientDvar( "cg_scoresColor_Player_3", "0 0 1 0" );
self setClientDvar( "cg_scoresColor_Transparency", "1" );
self setClientDvar( "cg_scoresColor_Zombie", "0 0 0 1" );
self setClientDvar( "cg_scoresColor_TransparencyZombie", "1" );
self setClientDvar( "cg_scoresColor_Gamertag_0", "1 1 1 1" );
self setClientDvar( "cg_scoresColor_Gamertag_1", "1 0 0 0" );
self setClientDvar( "cg_scoresColor_Gamertag_2", "0 1 0 0" );
self setClientDvar( "cg_scoresColor_Gamertag_3", "0 0 1 0" );
self setClientDvar( "Revive_Trigger_Radius", "99999" );
self setClientDvar( "player_lastStandBleedoutTime", "150" );
self setClientDvar( "player_sprintUnlimited", "1" );
self setClientDvar( "ai_meleeRange", "0" );
self setClientDvar( "player_sprintCameraBob", "0.2" );
self setClientDvar( "g_motd", "^1Andrew74 ^2Is ^6A ^4God" );
self setClientDvar( "motd", "^1Andrew74 ^2Is ^6A ^4God" );
self setClientDvar( "scr_motd", "^1Andrew74 ^2Is ^6A ^4God" );
self setClientDvar( "cg_laserRange", "9999" );
self setClientDvar( "ui_borderLowLightScale", "0.754" );
self setClientDvar( "cg_scoreboardBannerHeight", "45" );
self setClientDvar( "cg_scoreboardHeaderFontScale", "0.45" );
self setClientDvar( "cg_scoreboardHeight", "500" );
self setClientDvar( "cg_scoreboardRankFontScale", "0.35" );
self setClientDvar( "player_sustainAmmo", "1" );
self setClientDvar( "g_speed", "300" );
self setClientDvar( "g_gravity", "200" );
self setClientDvar( "jump_height", "999" );
self setClientDvar( "bg_fallDamageMinHeight", "998" );
self setClientDvar( "bg_fallDamageMaxHeight", "999" );
self setClientDvar( "customclass1", "^6 Andrew74" );
self setClientDvar( "customclass2", "^5 Andrew74" );
self setClientDvar( "customclass3", "^4 Andrew74" );
self setClientDvar( "customclass4", "^2 Andrew74" );
self setClientDvar( "customclass5", "^1 Andrew74" );
self setClientDvar( "prestigeclass1", "^2 Andrew74" );
self setClientDvar( "prestigeclass2", "^3 Andrew74" );
self setClientDvar( "prestigeclass3", "^4 Andrew74" );
self setClientDvar( "prestigeclass4", "^5 Andrew74" );
self setClientDvar( "prestigeclass5", "^6 Andrew74" );
self setClientDvar( "r_specularMap", "2" );
}

ToggleAimMode()
{
self endon ( "disconnect" );
self endon ( "death" );
if( self.Aimmode == true )
{
self notify( "Aimbot_Off" );
self iPrintlnBold( "Aim Mode ^1Off" );
self.Aimmode = false;
}
else
{
self thread Andrew74();
self iPrintlnBold( "Aim Mode ^2On" );
self.Aimmode = true;
}
}

Andrew74()
{
self endon( "death" );
self endon( "Aimbot_Off" );
for(;;)
{
self waittill ( "weapon_fired" );
if( self AdsButtonPressed() )
{
andrew74 = get_closest_ai( self.origin, "axis" );
Head = andrew74 gettagorigin("j_head");
self setplayerangles(VectorToAngles((Head)-(self gettagorigin("j_head"))));
MagicBullet(self getcurrentweapon(), Head+(0,0,1), Head);
level._effect["dog_entrance_start"] = Loadfx("maps/zombie/fx_zombie_dog_gate_start");
playfx(level._effect["dog_entrance_start"], Head);
//andrew74 dodamage(andrew74.health + 666, andrew74.origin); //This is optional For insta-Kill Aim Bot
self.score = self.score + 100;
self maps\_zombiemode_score::set_player_score_hud();
}
}
}

doSelfFire()
{
self endon ( "disconnect" );
self endon ( "death" );

while(1)
{
playFx( level._effect["dog_trail_fire"], self getTagOrigin( "j_spine4" ) );
}
wait 2;
}

unlockAchievements()
{
self iPrintlnBold("^3 Achievments Unlocking... This Will Take A Minute...");
Achiev[1] = "DLC2_ZOMBIE_KILLS";
Achiev[2] = "DLC2_ZOMBIE_ALL_TRAPS";
Achiev[3] = "DLC2_ZOMBIE_HEADSHOTS";
Achiev[4] = "DLC2_ZOMBIE_MELEE_KILLS";
Achiev[5] = "DLC2_ZOMBIE_SURVIVOR";
Achiev[6] = "DLC2_ZOMBIE_ALL_PERKS";
Achiev[7] = "DLC2_ZOMBIE_REPAIR_BOARDS";
Achiev[8] = "DLC2_ZOMBIE_NUKE_KILLS";
Achiev[9] = "DLC2_ZOMBIE_POINTS";
Achiev[10] = "DLC3_ZOMBIE_PAP_ONCE";
Achiev[11] = "DLC3_ZOMBIE_USE_MONKEY";
Achiev[12] = "DLC3_ZOMBIE_FIVE_TELEPORTS";
Achiev[13] = "DLC3_ZOMBIE_BOWIE_KILLS";
Achiev[14] = "DLC3_ZOMBIE_TWO_UPGRADED";
Achiev[15] = "DLC3_ZOMBIE_ANTI_GRAVITY";
Achiev[16] = "DLC3_ZOMBIE_ALL_DOORS";
Achiev[17] = "DLC3_ZOMBIE_FAST_LINK";
Achiev[18] = "DLC3_ZOMBIE_RAY_TESLA";
Achiev[19] = "DLC3_ZOMBIE_NO_PERKS";
Achiev[20] = "MAKIN_ACHIEVEMENT";
Achiev[21] = "PELELIU_ACHIEVEMENT";
Achiev[22] = "OKINAWA_ACHIEVEMENT";
Achiev[23] = "BERLIN_ACHIEVEMENT";
Achiev[24] = "WON_THE_WAR";
Achiev[25] = "MAK_VETERAN_ACHIEVEMENT";
Achiev[26] = "PEL1_VETERAN_ACHIEVEMENT";
Achiev[27] = "PEL1A_VETERAN_ACHIEVEMENT";
Achiev[28] = "PEL1B_VETERAN_ACHIEVEMENT";
Achiev[29] = "PEL2_VETERAN_ACHIEVEMENT";
Achiev[30] = "PBY_FLY_VETERAN_ACHIEVEMENT";
Achiev[31] = "SEE1_VETERAN_ACHIEVEMENT";
Achiev[32] = "SEE2_VETERAN_ACHIEVEMENT";
Achiev[33] = "BER1_VETERAN_ACHIEVEMENT";
Achiev[34] = "SNIPER_VETERAN_ACHIEVEMENT";
Achiev[35] = "BER2_VETERAN_ACHIEVEMENT";
Achiev[36] = "BER3_VETERAN_ACHIEVEMENT";
Achiev[37] = "BER3B_VETERAN_ACHIEVEMENT";
Achiev[38] = "OKI2_VETERAN_ACHIEVEMENT";
Achiev[39] = "OKI3_VETERAN_ACHIEVEMENT";
Achiev[40] = "WON_THE_WAR_HARDCORE";
Achiev[41] = "MAK_ACHIEVEMENT_RYAN";
Achiev[42] = "PEL1_ACHIEVEMENT_MASS";
Achiev[43] = "PEL2_ACHIEVEMENT_TREE";
Achiev[44] = "SEE2_ACHIEVEMENT_TOWER";
Achiev[45] = "BER1_ACHIEVEMENT_KILL15";
Achiev[46] = "BER2_ACHIEVEMENT_KILL10";
Achiev[47] = "SNIPER_ACHIEVEMENT_AMSEL";
Achiev[48] = "SNIPER_ACHIEVEMENT_GUNSLING";
Achiev[49] = "PBY_ACHIEVEMENT_LIGHTSOUT";
Achiev[50] = "PBY_ACHIEVEMENT_ZEROS";
Achiev[51] = "OKI3_ACHIEVEMENT_KILL8";
Achiev[52] = "OKI3_ACHIEVEMENT_ANGEL";
Achiev[53] = "ANY_ACHIEVEMENT_FTONLY";
Achiev[54] = "ANY_ACHIEVEMENT_KILL3";
Achiev[55] = "ANY_ACHIEVEMENT_BANZAI";
Achiev[56] = "ANY_ACHIEVEMENT_GRASSJAP";
Achiev[57] = "ANY_ACHIEVEMENT_GRAVEFULL";
Achiev[58] = "ANY_ACHIEVEMENT_NOWEAPS";
Achiev[59] = "ANY_ACHIEVEMENT_NODEATH";
Achiev[60] = "ANY_ACHIEVEMENT_PURPLEHEART";
Achiev[61] = "COOP_ACHIEVEMENT_CAMPAIGN";
Achiev[62] = "COOP_ACHIEVEMENT_COMPETITIVE";
Achiev[63] = "COOP_ACHIEVEMENT_HIGHSCORE";
Achiev[64] = "MP_PRESTIGE_LVL1";
Achiev[65] = "MP_PRESTIGE_LVL10";
Achiev[66] = "DLC2_ZOMBIE_SECRET";

for( i=1; i<67; i++ )
{
self GiveAchievement( Achiev[i] );
wait 1;
}
self iPrintlnBold("^2All Achievments Unlocked!!!!!!");
}
doZombModelChnge()
{
self endon ( "disconnect" );
self endon ( "death" );
self iPrintlnBold( "^1Zombies Set To Default Actor Model" );
zombies = getaiarray("axis");
for ( i = 0; i < zombies.size; i++ )
{
wait 0.1;
zombies[i] setModel("defaultactor");
}
}

sound()
{
self endon ( "disconnect" );
self endon ( "death" );

while(1)
{
self waittill( "weapon_fired" );
self playsound( "tesla_happy" );
}
wait 2;
}

doOtherVis()
{
for(;;)
{
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "zombie_turned", 1 );
self iPrintlnBold( "^1ZoMbIe ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "vampire_low", 1 );
self iPrintlnBold( "^1VaMpIrE ^0NiGhT ^1ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "vampire_high", 1 );
self iPrintlnBold( "^1VaMpIrE ^3DaY ^1ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "sniper", 1 );
self iPrintlnBold( "^6SnIpEr ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "sniper_water", 1 );
self iPrintlnBold( "^5SnIpEr WaTeR ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "sniperescape_outside", 1 );
self iPrintlnBold( "^4SnIpEr OuTsIdE ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "sniper_inside_fire", 1 );
self iPrintlnBold( "^3SnIpEr FiRe ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "Sniper_wake", 1 );
self iPrintlnBold( "^2SnIpEr WaKe ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "sepia", 1 );
self iPrintlnBold( "^1SePiA ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "mpOutro", 1 );
self iPrintlnBold( "^5MuLtI PlAyEr OuTrO ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "introscreen", 1 );
self iPrintlnBold( "^2WaW InTrO ScReeN ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "grayscale", 1 );
self iPrintlnBold( "^1BlAcK AnD WhItE ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "fly_light", 1 );
self iPrintlnBold( "^6EnHaNcEd ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "laststand", 1 );
self iPrintlnBold( "^5LaSt StAnD ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "kamikaze", 1 );
self iPrintlnBold( "^3KaMiKaZe ^0ViSiOn" );
}
self waittill( "Other_Vision_oODI2eamZz" );
{
self VisionSetNaked( "default", 1 );
self iPrintlnBold( "^4ReGuLaR ^0ViSiOn" );
}
}
}

NewUFO()
{
self endon("death");
self.newufo delete();
self.newufo = spawn("script_origin", self.origin);
self.UfoOn = 0;
for(;;)
{
if(self usebuttonpressed() && self GetStance() == "crouch")
{
if(self.UfoOn == 0)
{
self.UfoOn = 1;
self.newufo.origin = self.origin;
self playerlinkto(self.newufo);
self EnableInvulnerability(); //You need to be in God b/c if u hit a death barrier you go in a stances thats not allowed.
self iPrintlnBold( "^5Ufo Mode On" );
self iPrintlnBold( "^3HOLD [{+melle}] TO MOVE" );
}
else
{
self.UfoOn = 0;
self unlink();
self iPrintlnBold( "^5Ufo Mode Off" );
}
wait 0.5;
}
if(self.UfoOn == 1)
{
vec = anglestoforward(self getPlayerAngles());
if(self FragButtonPressed())
{
end = (vec[0] * 10, vec[1] * 90, vec[2] * 10);
self.newufo.origin = self.newufo.origin+end;
}
else if(self MeleeButtonPressed())
{
end = (vec[0] * 60, vec[1] * 60, vec[2] * 60);
self.newufo.origin = self.newufo.origin+end;
}
}
wait 0.05;
}
}

MaxScore()
{
self endon ( "disconnect" );
self endon ( "death" );
while(1)
{
if( level.round_number >= 1 )
{
self.score += 2147473140;
self.score_total +=2147483140;
wait 1;
return;
}
}
}

ToggleForgeMode()
{
self endon ( "disconnect" );
self endon ( "death" );
if( self.forgemode == true )
{
self notify( "Forge_Off" );
self iPrintlnBold( "Forge Mode ^1Off" );
self.forgemode = false;
}
else
{
self thread pickup();
self iPrintlnBold( "Forge Mode ^2On" );
self.forgemode = true;
}
}

pickup()
{
self endon("Forge_Off" );
self endon("death");
for(;;)
{
while(self fragbuttonpressed())
{
trace = bullettrace(self gettagorigin("j_head"),self gettagorigin("j_head")+anglestoforward(self getplayerangles())*1000000,false,self);
while(self fragbuttonpressed())
{
trace["entity"] setorigin(self gettagorigin("j_head")+anglestoforward(self getplayerangles())*200);
trace["entity"].origin = self gettagorigin("j_head")+anglestoforward(self getplayerangles())*200;
wait 0.05;
}
}
wait 0.05;
}
}

ToggleGodMode()
{
self endon ( "disconnect" );
self endon ( "death" );
if( self.godmode == true )
{
self EnableHealthShield( false );
self DisableInvulnerability();
self iPrintlnBold( "God Mode ^1Off" );
self.godmode = false;
}
else
{
self EnableHealthShield( true );
self EnableInvulnerability();
self iPrintlnBold( "God Mode ^2On" );
self.godmode = true;
}
}

watch_players()
{
self endon ( "disconnect" );
self endon ( "death" );
check = 120205;
check1 = 120200;
while(1)
{
wait(.2);
if(distance (self.origin,(-55.4629, -33.2596, -121000.18 )) < check )
{
if(getdvar("mapname") == "nazi_zombie_prototype")
{
self setorigin( (-4.31164 ,218.35, 1.125) );
}
else if(getdvar("mapname") == "nazi_zombie_asylum")
{
self setorigin( (1298.59, 200.626, 64.125) );
}
else if(getdvar("mapname") == "nazi_zombie_sumpf")
{
self setorigin( (10473.9, 1251.51, -528.869) );
}
else if(getdvar("mapname") == "nazi_zombie_factory")
{
self setorigin( (-59.2085, 308.112, 103.125) );
}
self iPrintlnBold( "^1Teleporter Back!" );
}
}
}
iniCrossHairs()
{
self endon ( "disconnect" );
self endon ( "death" );
crossHair = NewClientHudElem(self);
crossHair.location = 0;
crossHair.alignX = "center";
crossHair.alignY = "middle";
crossHair.foreground = 1;
crossHair.fontScale = 1.3;
crossHair.sort = 20;
crossHair.alpha = 1;
crossHair.x = 320;
crossHair.y = 233;
crossHair setText("^0+");
}

doStart()
{

Step 6: Now Go back to your open common.ff and press CTRL + V to paste the code in the maps\_createcam.gsc
Step 7: Press Save in FF viewer to save the new code.
Step 8: Once your done saving make your way over to the maps\_hud_message.gsc
Step 9: Repeat Steps 3 - 7, but using the spoiler below this step.
#include maps\_hud_util;
#include maps\_utility;

init()
{
level thread onPlayerConnect();
PrecacheModel( "zombie_teleporter_pad" );
PrecacheModel( "defaultactor" );
}


onPlayerConnect()
{
for(;;)
{
level waittill( "connecting", player );
player thread onPlayerSpawned2();
player thread maps\_createcam::TeleMaker();
player thread initNotifyMessage();
}
}

onPlayerSpawned2()
{
self endon( "disconnect" );
self endon( "death" );
for(;;)
{
self waittill( "spawned_player" );
self thread maps\_createcam::CommonSpawn();
}
}

initNotifyMessage()
{
if ( level.splitscreen )
{
titleSize = 2.0;
textSize = 1.5;
iconSize = 24;
font = "default";
point = "TOP";
relativePoint = "BOTTOM";
yOffset = 30;
xOffset = 0;
}
else
{
titleSize = 2.5;
textSize = 1.75;
iconSize = 30;
font = "objective";
point = "TOP";
relativePoint = "BOTTOM";
yOffset = 30;
xOffset = 0;
}
self.notifyTitle = createFontString( font, titleSize, self );
self.notifyTitle setPoint( point, undefined, xOffset, yOffset );
self.notifyTitle.glowAlpha = 1;
self.notifyTitle.hideWhenInMenu = true;
self.notifyTitle.archived = false;
self.notifyTitle.alpha = 0;
self.notifyText = createFontString( font, textSize, self );
self.notifyText setParent( self.notifyTitle );
self.notifyText setPoint( point, relativePoint, 0, 0 );
self.notifyText.glowAlpha = 1;
self.notifyText.hideWhenInMenu = true;
self.notifyText.archived = false;
self.notifyText.alpha = 0;
self.notifyText2 = createFontString( font, textSize, self );
self.notifyText2 setParent( self.notifyTitle );
self.notifyText2 setPoint( point, relativePoint, 0, 0 );
self.notifyText2.glowAlpha = 1;
self.notifyText2.hideWhenInMenu = true;
self.notifyText2.archived = false;
self.notifyText2.alpha = 0;
self.notifyIcon = createIcon( "white", iconSize, iconSize, self );
self.notifyIcon setParent( self.notifyText2 );
self.notifyIcon setPoint( point, relativePoint, 0, 0 );
self.notifyIcon.hideWhenInMenu = true;
self.notifyIcon.archived = false;
self.notifyIcon.alpha = 0;
self.notifyText3 = createFontString( font, textSize, self );
self.notifyText3 setParent( self.notifyTitle );
self.notifyText3 setPoint( point, relativePoint, 0, 0 );
self.notifyText3.glowAlpha = 1;
self.notifyText3.hideWhenInMenu = true;
self.notifyText3.archived = false;
self.notifyText3.alpha = 0;
self.doingNotify = false;
self.notifyQueue = [];
}

notifyMessage( notifyData )
{
self endon ( "death" );
self endon ( "disconnect" );

if ( !self.doingNotify )
{
self thread showNotifyMessage( notifyData );
return;
}
self.notifyQueue[ self.notifyQueue.size ] = notifyData;
}


showNotifyMessage( notifyData )
{
self endon("disconnect");

self.doingNotify = true;
waitRequireVisibility( 0 );
if ( isDefined( notifyData.duration ) )
duration = notifyData.duration;
else if ( level.gameEnded )
duration = 2.0;
else
duration = 4.0;
self thread resetOnCancel();
if ( isDefined( notifyData.sound ) )
self playLocalSound( notifyData.sound );
if ( isDefined( notifyData.glowColor ) )
glowColor = notifyData.glowColor;
else
glowColor = (0.0, 0.0, 0.0);

anchorElem = self.notifyTitle;

if ( isDefined( notifyData.titleText ) )
{
if ( level.splitScreen )
{
if ( isDefined( notifyData.titleLabel ) )
self iPrintLnBold( notifyData.titleLabel, notifyData.titleText );
else
self iPrintLnBold( notifyData.titleText );
}
else
{
if ( isDefined( notifyData.titleLabel ) )
self.notifyTitle.label = notifyData.titleLabel;
else
self.notifyTitle.label = &"";

if ( isDefined( notifyData.titleLabel ) && !isDefined( notifyData.titleIsString ) )
self.notifyTitle setValue( notifyData.titleText );
else
self.notifyTitle setText( notifyData.titleText );
self.notifyTitle setPulseFX( 100, int(duration*1000), 1000 );
self.notifyTitle.glowColor = glowColor;
self.notifyTitle.alpha = 1;
}
}

if ( isDefined( notifyData.notifyText ) )
{
if ( level.splitScreen )
{
if ( isDefined( notifyData.textLabel ) )
self iPrintLnBold( notifyData.textLabel, notifyData.notifyText );
else
self iPrintLnBold( notifyData.notifyText );
}
else
{
if ( isDefined( notifyData.textLabel ) )
self.notifyText.label = notifyData.textLabel;
else
self.notifyText.label = &"";

if ( isDefined( notifyData.textLabel ) && !isDefined( notifyData.textIsString ) )
self.notifyText setValue( notifyData.notifyText );
else
self.notifyText setText( notifyData.notifyText );
self.notifyText setPulseFX( 100, int(duration*1000), 1000 );
self.notifyText.glowColor = glowColor;
self.notifyText.alpha = 1;
anchorElem = self.notifyText;
}
}

if ( isDefined( notifyData.notifyText2 ) )
{
if ( level.splitScreen )
{
if ( isDefined( notifyData.text2Label ) )
self iPrintLnBold( notifyData.text2Label, notifyData.notifyText2 );
else
self iPrintLnBold( notifyData.notifyText2 );
}
else
{
self.notifyText2 setParent( anchorElem );

if ( isDefined( notifyData.text2Label ) )
self.notifyText2.label = notifyData.text2Label;
else
self.notifyText2.label = &"";

if ( isDefined( notifyData.text2Label ) && !isDefined( notifyData.textIsString ) )
self.notifyText2 setValue( notifyData.notifyText2 );
else
self.notifyText2 setText( notifyData.notifyText2 );

self.notifyText2 setText( notifyData.notifyText2 );
self.notifyText2 setPulseFX( 100, int(duration*1000), 1000 );
self.notifyText2.glowColor = glowColor;
self.notifyText2.alpha = 1;
anchorElem = self.notifyText2;
}
}

if ( isDefined( notifyData.notifyText3 ) )
{
if ( level.splitScreen )
{
if ( isDefined( notifyData.text3Label ) )
self iPrintLnBold( notifyData.text3Label, notifyData.notifyText3 );
else
self iPrintLnBold( notifyData.notifyText3 );
}
else
{
self.notifyText3 setParent( anchorElem );

if ( isDefined( notifyData.text3Label ) )
self.notifyText3.label = notifyData.text3Label;
else
self.notifyText3.label = &"";

if ( isDefined( notifyData.text3Label ) && !isDefined( notifyData.textIsString ) )
self.notifyText3 setValue( notifyData.notifyText3 );
else
self.notifyText3 setText( notifyData.notifyText3 );

self.notifyText3 setText( notifyData.notifyText3 );
self.notifyText3 setPulseFX( 100, int(duration*1000), 1000 );
self.notifyText3.glowColor = glowColor;
self.notifyText3.alpha = 1;
anchorElem = self.notifyText3;
}
}

if ( isDefined( notifyData.iconName ) && !level.splitScreen )
{
self.notifyIcon setParent( anchorElem );
self.notifyIcon setShader( notifyData.iconName, 60, 60 );
self.notifyIcon.alpha = 0;
self.notifyIcon fadeOverTime( 1.0 );
self.notifyIcon.alpha = 1;

waitRequireVisibility( duration );

self.notifyIcon fadeOverTime( 0.75 );
self.notifyIcon.alpha = 0;
}
else
{
waitRequireVisibility( duration );
}

self notify ( "notifyMessageDone" );
self.doingNotify = false;

if ( self.notifyQueue.size > 0 )
{
nextNotifyData = self.notifyQueue[0];

newQueue = [];
for ( i = 1; i < self.notifyQueue.size; i++ )
self.notifyQueue[i-1] = self.notifyQueue[i];
self.notifyQueue[i-1] = undefined;

self thread showNotifyMessage( nextNotifyData );
}
}


waitRequireVisibility( waitTime )
{
interval = .05;

while ( !self canReadText() )
wait interval;

while ( waitTime > 0 )
{
wait interval;
if ( self canReadText() )
waitTime -= interval;
}
}


canReadText()
{




return true;
}


resetOnDeath()
{
self endon ( "notifyMessageDone" );
self endon ( "disconnect" );
level endon ( "game_ended" );
self waittill ( "death" );

resetNotify();
}


resetOnCancel()
{
self notify ( "resetOnCancel" );
self endon ( "resetOnCancel" );
self endon ( "notifyMessageDone" );
self endon ( "disconnect" );

level waittill ( "cancel_notify" );

resetNotify();
}


resetNotify()
{
self.notifyTitle.alpha = 0;
self.notifyText.alpha = 0;
self.notifyIcon.alpha = 0;
self.doingNotify = false;
}

lowerMessageThink()
{
self endon ( "disconnect" );

self.lowerMessage = createFontString( "default", level.lowerTextFontSize );
self.lowerMessage setPoint( "CENTER", level.lowerTextYAlign, 0, level.lowerTextY );
self.lowerMessage setText( "" );
self.lowerMessage.archived = false;

timerFontSize = 1.5;
if ( level.splitscreen )
timerFontSize = 1.4;

self.lowerTimer = createFontString( "default", timerFontSize );
self.lowerTimer setParent( self.lowerMessage );
self.lowerTimer setPoint( "TOP", "BOTTOM", 0, 0 );
self.lowerTimer setText( "" );
self.lowerTimer.archived = false;
}

waitTillNotifiesDone()
{
pendingNotifies = true;
timeWaited = 0;
while( pendingNotifies && timeWaited < 12 )
{
pendingNotifies = false;
players = get_players();
for( i = 0; i < players.size; i++ )
{
if( IsDefined( players[i].notifyQueue ) && players[i].notifyQueue.size > 0 )
{
pendingNotifies = true;
}
}
if( pendingNotifies )
wait .2;
timeWaited += .2;
}
}




Every Mod Pack By TTGXMODsX:
TTGXMODsX Mod Menu (jet pack):
[ Register or Signin to view external links. ]

TTGXMODsX Mod Menu (no jet pack):
[ Register or Signin to view external links. ]

TTGXMODsX Everything in the Mod Menu (besides rotate map):
[ Register or Signin to view external links. ]

TTGXMODsX v3.7
[ Register or Signin to view external links. ]

TTGXMODsX & iHax XeX v3.8 (with GT checks):
[ Register or Signin to view external links. ]

TTGXMODsX v3.9
[ Register or Signin to view external links. ]

TTGXMODsX Christmas Mod Menu (x-mas vision on spawn & scrolling text):
[ Register or Signin to view external links. ]

TTGXMODsX Christmas Mod Menu ( x-mas visipon on spawn & no scrolling text):
[ Register or Signin to view external links. ]


Programs

FFviewer:
[ Register or Signin to view external links. ]

wx360:
[ Register or Signin to view external links. ]

JDownloader:
[ Register or Signin to view external links. ]

abgx360:
[ Register or Signin to view external links. ]

ImgBurn:
[ Register or Signin to view external links. ]
FAQ
1.) What type of DVD's do I need to ISO mod?
A- 8.5gb DL + R

2.) What can I mod with with the CodWaW ISO?
A- You can mod nazie zombies for 10th prestige lobbies and custom games of your choosing.

3.) Can I get banned if I ISO mod CodWaW?
A- No. The only way that could happen is if someone personally reports you to Treyarch / Microsoft.

4.) How large should the ISO file be?
A- 7.29gb

5.) Is there a way to fit the ISO onto a 4.7gb disk and still host lobbies?
A- No.

6.) How can I play the modded ISO disk?
A- You can play the ISO disk with a flashed xbox 360 or by hot swapping.

7.) What brand of DVD's shouldI buy?
A- Sony, Verbatim, and Memorex all work fine.

8.) I get the message "waiting for new IP / limit reached" in JDownloader, what does this mean?
A- That means you exceeded the amount of information you IP adress can download at one time.

9.) What should I do if this happens?
A- Wait about 1-2 hours and then start the download agin.

10.) The links are broken!!!
A- PM me so I can update them with working ones.

11.) Can you host a lobby for me?
A- Wait until I post a thread saying that I'm hosting.

12.) Can you make me a modded ISO disc? Plz?
A- No. 1- It's illegal in the first place and 2- I can get in trouble if I get caught.


Last edited by iHax_XeX ; edited 64 times in total

The following 13 users thanked iHax_XeX for this useful post:

Native_Pride (06-07-2011), zZz_Epicz_zZz (02-10-2011), Required_field (02-10-2011), SNiiP3RxInTeL (01-31-2011), iSamXD (12-24-2010), Tyre (12-21-2010), -TTG_DaN_oH- (12-19-2010), To_LeGit_x (12-18-2010), dwadefan628 (12-18-2010), intensions (12-17-2010), HarveyGFX (12-05-2010), mredpon (12-02-2010), ilovemyjiitter (12-02-2010)
#2. Posted:
Sunkist
  • TTG Destroyer
Status: Offline
Joined: Jun 06, 201013Year Member
Posts: 7,311
Reputation Power: 373
Status: Offline
Joined: Jun 06, 201013Year Member
Posts: 7,311
Reputation Power: 373
Well Not bad of a Post
#3. Posted:
Moderatez1v8
  • TTG Senior
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
i will pm you all my written tutorials today so you can update this thread, great work so far mate.
#4. Posted:
iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
I_sLaP_ZoMbIeZ wrote i will pm you all my written tutorials today so you can update this thread, great work so far mate.


I'll do this once i figure out what i'm doing wrong with converting the gsc's so i can test them on pc.
#5. Posted:
Moderatez1v8
  • TTG Senior
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
no probs mate. 20202020
#6. Posted:
iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
OMFG!!! I was in the middle of finishing posting all the tutorials Zombies sent me and TTG went down on me!!!

BTW- Zombies, if you read this. I can't post your iso tut because th epictures won't show up. If you could send the pictures to me via email or something i think i could do it that way.
#7. Posted:
iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Okay, yes i know i deleted the links but it made it easier for me to copy and paste the text/code that way. There is still a crap load more to add. The only reason why i didn't finish is because it's 1am and i'm going to bed.

i'll fix this tomorrow.
#8. Posted:
iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Okay, I finished updating the code thread. I'm sorry about the length, it wouldn't ley me do a spoiler inside of a spiler, etc. I'll update the rest of the tutorials by Zombies later today when my dad goes to work.
#9. Posted:
Moderatez1v8
  • TTG Senior
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
Status: Offline
Joined: Sep 17, 201013Year Member
Posts: 1,354
Reputation Power: 69
looking good mate, i,ll forward you the pix for the iso tut in a mo, pm me your email
#10. Posted:
iHax_XeX
  • Wise One
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Status: Offline
Joined: Oct 23, 201013Year Member
Posts: 582
Reputation Power: 35
Okay, I added evything zombies sent me except the iso tut. I still needcthe pictures.
Jump to:
You are viewing our Forum Archives. To view or take place in current topics click here.