Making Mods Tutorial 1 - Using Codtool

Using Codtool

 

You should have at least a basic understanding of CFG modding before attempting to make a modded savegame with Codtool. If you don't, you can always head over to tutorials.

 

Requirements:

 

 

SVG mods have two main limitations. The first is that you can't set a dvar to anything more than 65 characters. The second is that you have a limit on the amount of characters used for dvars and their values. I am not sure what the limit is exactly, but it's somewhere in the neighborhood of 850 to 1000 characters.

 

Although not required, I STRONGLY recommend downloading notepad++. It's an amazing program and will make things a lot easier.

 

Before we start, you need a savegame. You can either make one on World at War or download one. You can find one in the downloads section. Remember that you need to rehash and resign to your profile for it to work for you.

 

Extracting a savegame:

 

 

Rehashing and Resigning:

 

 

No you can open codtool and either drag-and-drop your savegame onto the window, or click "open" and navigate to it. Head over to advanced tab.

Codtool Advanced Tab

 

You'll get a warning about anything going wrong being your fault. Don't worry, nothing is going to go wrong. Everything you add you can remove. Just click yes.

 

Codtool Advanced Warning "Yes"

 

 

You have two text input fields; one that says "setting", and another that says "value". By setting, they mean dvar. The first dvar we are going to put is called activeaction. The value of activeaction will be executed in the first frame of a game. This is how we are going to add all our mods. As I said before, SVGs limit us to 65 characters per dvar value. We can't fit very many mods in 65 characters, so we separate them into other dvars and use vstr. Activeaction is reset after every game, so we'll bind all the mods to a button. The start and back button are the only two that aren't reset, so we'll use one of those. I personally prefer using the start button. The start button is quite important, so instead of using bind, we're going to use bind2. As I said before, bind2 is the same thing as bind, but it won't overwrite the first bind. This way, we can activate the mods AND use the start menu. When I type the code inside the blue box, I'm typing the dvar on one line and its value on the line below. This is how I suggest you edit and save your code with notepad++ so you don't have to re-type it every time. Start off by typing in the following and pressing "Add Setting":

 

activeaction
bind2 button_start vstr a
Codtool Advanced Add Setting

 

"a" is going to be a dvar. Remember I said that we can use set to make our own dvars and that we can name our dvars anything? Because space is limited, we're going to use single letters for all our dvars.

 

Now let's add some mods to "a".

 

activeaction
bind2 button_start vstr a
a
bind button_rshldr noclip;bind button_lshldr god
Codtool Advanced

 

Here we don't need set because the game will understand that we are setting dvars. All of this should make sense to you if you read some of the tutorials.

 

We've hardly used any of the space we have and we have very little binds, so we'll need to vstr some more dvars. We could do:

activeaction
bind2 button_start vstr a 
a
bind button_rshldr noclip;bind button_lshldr god;vstr b
b
player_sustainammo 1;g_speed 300;g_gravity 100;vstr c
c
bind dpad_up ai axis delete;bind dpad_right give all;vstr d
d
setperk "walker neo" specialty_rof

 

There are a couple things you might notice. First is that I didn't use set when I set the dvars. If you are setting a dvar that already exists, you don't have to use set, you can just type the dvar and its value, and set is implied. DO NOT try to make a new dvar this way. If you try to make a new dvar without set, the game won't recognize the "term" and it will try to execute it as a command. Once you make a new dvar, however, you can set it without using set... Another thing is that I use quotes around my name instead of escaped quotes. This is because we aren't already in quotations. Not only will it work with quotes, but it WON'T with escaped quotes. As I said in the escaped quotes tutorial, only use them when already inside quotations.

 

You can continue adding mods this way, but it is better to have all your vstr commands in one dvar so it's easier to keep track of them. Instead of the above code, you should do:

activeaction
bind2 button_start vstr a 
a
vstr b;vstr c;vstr d;vstr e;vstr f;vstr g;vstr h;vstr i;vstr j
b
player_sustainammo 1;g_speed 300;g_gravity 100
c
bind dpad_up ai axis delete;bind dpad_right give all
d
setperk "walker neo" specialty_rof
e
bind button_rshldr noclip;bind button_lshldr god

 

This way we don't have to worry about using the vstr command at the end of every dvar; instead we have them all in one place. We only went up to dvar e, but we have vstr commands for f-j. They don't exist because we didn't set them, but we still have them there in case we do need to set them.

 

If you're still confused about something, you can head over to the forum for some support.