Small Mag customization Tutorial Complete

Creating -or- modding a vehicle to use as a gang car.

First off you will need access to the vehicle files. They are located in
the common.vpp_pc file that resides in your Saints Row 2 game folder.

Since there are other tutorials that cover how to use ThomasJepp tools
I will skip that part and for now just include unmodded copies of the
vehicle files.

On the first page of the Saints Row 2 Tool Releases you will find the post Saints Row 2 cvtf helper (vehicle customization)
Here you can get Masamaru's cvtf helper and find a link to the vehicle cruncher that it works with. You will need both.

Once you have your files unpacked and ready for use You should open SUV_4DR_LUXURY01.xtbl in a text editor. I just use notepad. Once it is open search for variant. There are several variants listed (Beater, Standard, Bling, Chop_Shop and Pierce.) For our purposes we'll just use beater.

Right Now all we are going to change is the body color.

If you open the Mag.txt file that I have included and scroll all the way down to almost the bottom you will see this section:

<Color_Group>
<Name>Standard</Name>
<Color_Chances>
<Color_Chance>
<Name>Auto</Name>
<Weight>100</Weight>
<Color_Choices>
<Color_Choice>
<Slot>Body Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Paint</Color_Slot>
<Color>
<Color_Set>Matte Paint</Color_Set>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 2</Color_Slot>
<Color>
<Color_Pool>Matte Deep Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 3</Color_Slot>
<Color>
<Color_Set>Matte Paint</Color_Set>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Trim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Body Color1</Slot>
<Component>paint</Component>
<Color_Slot>Bottom trim</Color_Slot>
<Color>
<Color_Pool>Matte Deep Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Rim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Misc. Color</Slot>
<Component>Paint</Component>
<Color_Slot>Luggage Trim</Color_Slot>
<Color>
<Color_Pool>Interiors Water Bucket Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Window Tint</Slot>
<Component>Window Tint</Component>
<Color_Slot>Tint</Color_Slot>
<Color>
<Color_Pool>Glass Tint 5%</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Interior Color</Slot>
<Component>Paint</Component>
<Color_Slot>interior</Color_Slot>
<Color>
<Color_Set>Interior Limited</Color_Set>
</Color>
</Color_Choice>
</Color_Choices>
</Color_Chance>
</Color_Chances>
</Color_Group>
</Colors>


The only parts that interest us right now are the Body Color1 and Body Color2 sections.
Body Color1 is the trim at the bottom of the vehicle while body color2 is the rest of the paint.

So in order to have a Royal Purple body with a White Gold stripe we would change
Body color 1 from Matte Deep Gray to Metal White Gold and body color2 from <Color_Set>Matte Paint</Color_Set> to <Color_Pool>Gloss Royal Purple</Color_Pool>.

Now there are two things of note here. The first concerns body color1. If you were to take your mag into Rim Jobs or Semi Broken and apply the color gloss white gold It would look fine on the vehicle in the game but if you use it in the xtbl file it could make your Mag come out looking very strange. So in the Xtbl use Metal White Gold to avoid this.

The next thing to be aware of is the entry for body color2. It says color_set and we need it to say
color_pool.

so your entries should look like this:

(Body Color1)

<Color_Choice>
<Slot>Body Color1</Slot>
<Component>paint</Component>
<Color_Slot>Bottom trim</Color_Slot>
<Color>
<Color_Pool>Metal White Gold</Color_Pool>
</Color>
</Color_Choice>

(Body Color2)

<Color_Choices>
<Color_Choice>
<Slot>Body Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Paint</Color_Slot>
<Color>
<Color_Pool>Gloss Royal Purple</Color_Pool>
</Color>
</Color_Choice>

One other thing to do is change the name within the variant tag. It needs to say gang_saints

<Variant>
<Name>gang_saints</Name>


Now you are ready to add your variant to the xtbl. Just put it under the last variant listed.

I am including a copy of the xtbl with the variant already added in the 'Ready To Be Crunched' folder. I have included this file because I know it is error free. So there should be no problems when it is crunched. (just drop all the files from the "ready to be crunched' folder into the folder where you unpacked your tools and drag the 'SUV_4DR_LUXURY01.xtbl' file on top of 'sr2_cvtf_helper.exe' It will then create a cvtf file that you will drop into the modders folder inside the Gentlemen of the row directory. Be sure to add the 'car_dealerships.xtbl' and 'gang_customization.xtbl' to the modding folder as well.
Now just compile your mod and you are ready to go.

I have also taken the liberty of preparing an entry for the mag at the SPD Compound ($100000) and in the gang customization files. I think it is in the third tier of Unlockable gang rides.

This is just a vehicle mod I create them all the time and have never had a problem with them messing my save files. But if you have already created a modded
Mag using the xtbl then this will overwrite it and may make break your save file.

Happy Modding
Now we are ready to customize the rim color, trim color
and interior color of our Mag.

Here is the relevant part of our xtbl

<Colors>
<Color_Group>
<Name>Standard</Name>
<Color_Chances>
<Color_Chance>
<Name>Auto</Name>
<Weight>100</Weight>
<Color_Choices>
<Color_Choice>
<Slot>Body Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Paint</Color_Slot>
<Color>
<Color_Pool>Gloss Royal Purple</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 2</Color_Slot>
<Color>
<Color_Pool>Matte Deep Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 3</Color_Slot>
<Color>
<Color_Set>Matte Paint</Color_Set>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Trim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Body Color1</Slot>
<Component>paint</Component>
<Color_Slot>Bottom trim</Color_Slot>
<Color>
<Color_Pool>Metal White Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Rim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Misc. Color</Slot>
<Component>Paint</Component>
<Color_Slot>Luggage Trim</Color_Slot>
<Color>
<Color_Pool>Interiors Water Bucket Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Window Tint</Slot>
<Component>Window Tint</Component>
<Color_Slot>Tint</Color_Slot>
<Color>
<Color_Pool>Glass Tint 5%</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Interior Color</Slot>
<Component>Paint</Component>
<Color_Slot>interior</Color_Slot>
<Color>
<Color_Set>Interior Limited</Color_Set>
</Color>
</Color_Choice>
</Color_Choices>
</Color_Chance>
</Color_Chances>
</Color_Group>
</Colors>


First we will be dealing with the Trim Color

(Original Code)

<Color_Choice>
<Slot>Trim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 2</Color_Slot>
<Color>
<Color_Pool>Matte Deep Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 3</Color_Slot>
<Color>
<Color_Set>Matte Paint</Color_Set>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Trim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>


We will be using Metal Gold for all of our trim so we can adjust our code like so.

(modded code)

<Color_Choice>
<Slot>Trim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 2</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 3</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Trim</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>

Look at Trim_color2 it says color_set so we must change it to color_pool then just change all the color options to metal gold.

And Now On To The Rim Color. Here we are adding an option for the second rim color. If you are wondering how I know that I can do this there is a second rim color mentioned in the customization options plus I also know it can be done because it is an option in Rim Jobs.

Sometimes the variants created by the xtbl don't use all the available options, so they just don't list them. But we are doing this our way and we want our car to have a second rim color.

(original code)
<Color_Choice>
<Slot>Rim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Rim</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>

(Original Code Modified to add Second Rime Color Option)

<Color_Choice>
<Slot>Rim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Rim1</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Rim2</Color_Slot>
<Color>
<Color_Pool>Metal Stainless Steel</Color_Pool>
</Color>
</Color_Choice>

So what we have done here is to just duplicate the previous entry and change the slot values. This is necessary for the second option to work. If you are wondering how I happened to know which values to add they care listed in the _cust file under rim color

So now that we have our code added we can change it to suit us.

(Modified Code)

<Color_Choice>
<Slot>Rim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Rim1</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Rim2</Color_Slot>
<Color>
<Color_Pool>Metal White Gold</Color_Pool>
</Color>
</Color_Choice>

That's it for the Rims.

The last thing we'll edit for now is the Interior Color

(Original code)

<Color_Choice>
<Slot>Interior Color</Slot>
<Component>Paint</Component>
<Color_Slot>interior</Color_Slot>
<Color>
<Color_Set>Interior Limited</Color_Set>
</Color>
</Color_Choice>

As we can see we'll have to change the color_set to the color_pool again
and then we just have to add out custom color

(modded code)

<Color_Choice>
<Slot>Interior Color</Slot>
<Component>Paint</Component>
<Color_Slot>interior</Color_Slot>
<Color>
<Color_Pool>Interiors Harlequin Purple</Color_Pool>
</Color>
</Color_Choice>

It is important that you add the word interiors to the front of your color choice. So that the gameknows which color pool to select from and so the game doesn't crash due to incorrect data. That's it for now

Note:I have included the customized files in theReady To Be Crunched
folder in the Part 2 zip file.

These files are error free and should crunch with no issues.
We are down to our last two pieces of the paint job
The Misc. Color and the glass tint.

Once again we look at the color section of our code:

<Colors>
<Color_Group>
<Name>Standard</Name>
<Color_Chances>
<Color_Chance>
<Name>Auto</Name>
<Weight>100</Weight>
<Color_Choices>
<Color_Choice>
<Slot>Body Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Paint</Color_Slot>
<Color>
<Color_Pool>Gloss Royal Purple</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 2</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Trim 3</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Trim Color</Slot>
<Component>Paint</Component>
<Color_Slot>Trim</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Body Color1</Slot>
<Component>paint</Component>
<Color_Slot>Bottom trim</Color_Slot>
<Color>
<Color_Pool>Metal White Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color1</Slot>
<Component>Paint</Component>
<Color_Slot>Rim1</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Rim Color2</Slot>
<Component>Paint</Component>
<Color_Slot>Rim2</Color_Slot>
<Color>
<Color_Pool>Metal White Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Misc. Color</Slot>
<Component>Paint</Component>
<Color_Slot>Luggage Trim</Color_Slot>
<Color>
<Color_Pool>Interiors Water Bucket Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Window Tint</Slot>
<Component>Window Tint</Component>
<Color_Slot>Tint</Color_Slot>
<Color>
<Color_Pool>Glass Tint 5%</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Interior Color</Slot>
<Component>Paint</Component>
<Color_Slot>interior</Color_Slot>
<Color>
<Color_Pool>Interiors Harlequin Purple</Color_Pool>
</Color>
</Color_Choice>
</Color_Choices>
</Color_Chance>
</Color_Chances>
</Color_Group>
</Colors>

Here is our relevant code

(original)


</Color_Choice>
<Color_Choice>
<Slot>Misc. Color</Slot>
<Component>Paint</Component>
<Color_Slot>Luggage Trim</Color_Slot>
<Color>
<Color_Pool>Interiors Water Bucket Gray</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Window Tint</Slot>
<Component>Window Tint</Component>
<Color_Slot>Tint</Color_Slot>
<Color>
<Color_Pool>Glass Tint 5%</Color_Pool>
</Color>
</Color_Choice>


So we want to change the Misc. Color. FYI There is no option at Rim Jobs Or Semi Broken
to change this. I opened up the _cust file and changed the flag from no to yes to make it
buyable but it doesn't show up. No matter we'll just change it here.

We will be changing the window tint as well, so we need to note a few things.

Our entry has to start with glass so it chooses the proper color pool.
For tinted glass you use the formula listed above. 5% 20% 40% 60% 80% 100%
just change the number at the end and don't forget the percent sign.

If you want to use a colored tint then the entry is slightly different.
Let's say I want dark purple tint. then I would type in glass purple dark tint
for green it would be glass green dark tint or maybe green light tint depending on what I've chosen to use. Today we are going to use teal dark tint.

So here are our changes:

(Modded Code)


</Color_Choice>
<Color_Choice>
<Slot>Misc. Color</Slot>
<Component>Paint</Component>
<Color_Slot>Luggage Trim</Color_Slot>
<Color>
<Color_Pool>Metal Gold</Color_Pool>
</Color>
</Color_Choice>
<Color_Choice>
<Slot>Window Tint</Slot>
<Component>Window Tint</Component>
<Color_Slot>Tint</Color_Slot>
<Color>
<Color_Pool>Glass Teal Dark Tint</Color_Pool>
</Color>
</Color_Choice>


And We are done with our paint.

Now let's change some tires. Here is our relevant code.

First thing to note is weight entry. This is the percentage of a chance
that your vehicle will spawn with this set of wheels. Since we are only
interested in modding one set of wheels right now we will change the weights
accordingly. Just pick one set of wheels and change the weight to 100
and for all the other sets change the weight to 0.

Let's take a look at our first entry here. It is the one we have chosen to use.
It tells us a few things:

the '000' is the tire tread F and R are front and rear respectively. The _Reg_Profile
tells us that these are rims set to the normal profile. (In the garage the rim size
options say 'Normal' but if you type normal in here it will not work.

when changing rim profile the options are: extra_low_profile, low_profile, Reg_profile, high_profile, extra_high_profile.

Now a quick word on front Vs Rear Axle. The <Component>R_229_F</Component> line
is used for the front axle and the <Component>R_229_R</Component> line for the back
What this means is that you can use different size tires or different rims or different hubcaps and different tire tread on these entries and have them show up on your vehicle. For both axles you make sure that the values are the same. Since we are learning to mod we are going to have different values.

<Component_Group>
<Name>Wheels</Name>
<Component_Chances>
<Component_Chance>
<Name>Standard Wheels</Name>
<Weight>100</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_000_F_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_000_R_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>
<Component_Chance>
<Name>Bling Wheel A</Name>
<Weight>0</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_000_F_High_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_000_R_High_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_175_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_175_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>
<Component_Chance>
<Name>Bling Wheel B</Name>
<Weight>0</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_000_F_High_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_000_R_High_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_175_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_175_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>
<Component_Chance>
<Name>Jacked Up</Name>
<Weight>0</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_006_F_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_006_R_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_230_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_230_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>
</Component_Chances>
</Component_Group>


Here are the relevant lines)
(original)


<Name>Wheels</Name>
<Component_Chances>
<Component_Chance>
<Name>Standard Wheels</Name>
<Weight>100</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_000_F_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_000_R_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>


For our Mag we will have white wall Tires, Bling #8 Rims On The front with Bling#4 Spinners and Dayton#1 Rims on the back with hubcaps. In the garage you can't put hubcaps on wheels that have spinners for their option. But we can.

(modded code)


<Name>Wheels</Name>
<Component_Chances>
<Component_Chance>
<Name>Standard Wheels</Name>
<Weight>100</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_001_F_Low_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_001_R_Low_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_182_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_201_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>

Now there is no entry to add either spinners or hubcaps yet. But we're fixing to change that.

(Original Code modded for spinners and hubcaps)

(original)


<Name>Wheels</Name>
<Component_Chances>
<Component_Chance>
<Name>Standard Wheels</Name>
<Weight>100</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_000_F_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_000_R_Reg_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_229_R</Component>
</Externalized_Component>
<Externalized_Component>
<Component>S_403_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>S_403_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>


This code just adds Spinner number 4 to the existing rims
This is partially what we want but we need to a couple
of small tweaks.

(modded)


<Name>Wheels</Name>
<Component_Chances>
<Component_Chance>
<Name>Standard Wheels</Name>
<Weight>100</Weight>
<Components />
<Externalized_Components>
<Externalized_Component>
<Component>W_001_F_Low_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>W_001_R_Low_Profile</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_182_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>R_201_R</Component>
</Externalized_Component>
<Externalized_Component>
<Component>S_403_F</Component>
</Externalized_Component>
<Externalized_Component>
<Component>H_613_R</Component>
</Externalized_Component>
</Externalized_Components>
</Component_Chance>


Now we have the first part of our wheels sorted out, but there is another entry concerning the wheels right under the color info that we've already worked with.

This one controls the size and the width of the front and rear tires.
In the garage you can only raise your wheel size to 18 and your wheel width to 2. We are going to ignore those values and use our own


(original code)
<Wheels>
<Wheel_Group>
<Name>Default</Name>
<Front_Width>2</Front_Width>
<Front_Size>17</Front_Size>
<Rear_Width>2</Rear_Width>
<Rear_Size>17</Rear_Size>
<Weight>100</Weight>
</Wheel_Group>
</Wheels>

(modded code)
<Wheels>
<Wheel_Group>
<Name>Default</Name>
<Front_Width>3</Front_Width>
<Front_Size>19</Front_Size>
<Rear_Width>4</Rear_Width>
<Rear_Size>20</Rear_Size>
<Weight>100</Weight>
</Wheel_Group>
</Wheels>

As usual I will provide an error free copy of the xtbl ready to be crunched.
For the next part of our custom vehicle we will talk about performance options.
(Here is the original code.)

<Component_Group>
<Name>Performance</Name>
<Component_Chances>
<Component_Chance>
<Name>None</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Nitrous</Slot>
<Component>None</Component>
</Component_Element>
<Component_Element>
<Slot>Kneecappers</Slot>
<Component>None</Component>
</Component_Element>
<Component_Element>
<Slot>Torque</Slot>
<Component>None</Component>
</Component_Element>
<Component_Element>
<Slot>Tire Durability</Slot>
<Component>None</Component>
</Component_Element>
<Component_Element>
<Slot>Reinforced Frame</Slot>
<Component>None</Component>
</Component_Element>
<Component_Element>
<Slot>Reinforced Bumper</Slot>
<Component>None</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>
</Components>

Keep in mind that you cannot enable all of these at once on cars with a hydraulics option.
Some of them are not compatible. If I remember correctly hydraulics and torque cannot be used
at the same time.

To figure out how to enable these for our vehicle we need to turn to the _cust file.

(excerpt from _cust.xtbl)

<Name>Nitrous</Name>
<Camera_Info>Exotic_Sport_Hood</Camera_Info>
<Components>
<Component>
<Name>Add Nitrous</Name> =============
<DisplayName>COMPONENT_ADD_NITROUS</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Gives NOS</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>
<Slot>
<Name>Kneecappers</Name>
<Camera_Info>SUV_Rim</Camera_Info>
<Components>
<Component>
<Name>Option 1</Name> ====================
<DisplayName>COMPONENT_OPTION_1</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Kneecappers</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>
<Slot>
<Name>Torque</Name>
<Camera_Info>Exotic_Sport_Hood</Camera_Info>
<Components>
<Component>
<Name>Option 1</Name> ==========================
<DisplayName>COMPONENT_OPTION_1</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Torque</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>
<Slot>
<Name>Tire Durability</Name>
<Camera_Info>SUV_Rim</Camera_Info>
<Components>
<Component>
<Name>Option 1</Name> ============================
<DisplayName>COMPONENT_OPTION_1</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Tire Durability</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>
<Slot>
<Name>Reinforced Frame</Name>
<Camera_Info>SUV_High</Camera_Info>
<Components>
<Component>
<Name>Option 1</Name> ==============================
<DisplayName>COMPONENT_OPTION_1</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Reinforced Frame</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>
<Slot>
<Name>Reinforced Bumper</Name>
<Camera_Info>SUV_Rear_Bumper</Camera_Info>
<Components>
<Component>
<Name>Option 1</Name> ============================
<DisplayName>COMPONENT_OPTION_1</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Reinforced Bumper</Flag>
</Performance_flags>
</Performance_component>
</Properties>
</Component>
<Component>
<Name>None</Name>
<DisplayName>COMPONENT_NONE</DisplayName>
<Price>0</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags />
</Performance_component>
</Properties>
</Component>
</Components>
</Slot>

I know there is a lot here to read through but I'll save you some trouble if I can. All we really need from the _cust file at the moment is the component name. Here is the nitrous component as an example.

<Name>Nitrous</Name>
<Camera_Info>Exotic_Sport_Hood</Camera_Info>
<Components>
<Component>
<Name>Add Nitrous</Name>
<DisplayName>COMPONENT_ADD_NITROUS</DisplayName>
<Price>150</Price>
<Buyable>yes</Buyable>
<No_Backseat_Passengers>no</No_Backseat_Passengers>
<Properties>
<Performance_component>
<Performance_flags>
<Flag>Gives NOS</Flag>
</Performance_flags>
</Performance_component>

If we look at our code we see that nitrous needs a component name

<Components>
<Component_Element>
<Slot>Nitrous</Slot>
<Component>None</Component>
</Component_Element>

checking out _cust file we see that the name is Add Nitrous. For all the rest of the options: Torque, Reinforced Frame, Reinforced Bumpers, Kneecappers and Tire Durability the name is 'Option 1'

(So our modded code would be)

<Component_Group>
<Name>Performance</Name>
<Component_Chances>
<Component_Chance>
<Name>None</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Nitrous</Slot>
<Component>Add Nitrous</Component>
</Component_Element>
<Component_Element>
<Slot>Kneecappers</Slot>
<Component>Option 1</Component>
</Component_Element>
<Component_Element>
<Slot>Torque</Slot>
<Component>Option 1</Component>
</Component_Element>
<Component_Element>
<Slot>Tire Durability</Slot>
<Component>Option 1</Component>
</Component_Element>
<Component_Element>
<Slot>Reinforced Frame</Slot>
<Component>Option 1</Component>
</Component_Element>
<Component_Element>
<Slot>Reinforced Bumper</Slot>
<Component>Option 1</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>
</Components>


Note that I have set all of these entries to the component added state. If you do not
want one of the components simply leave the component line at none for that entry.
Dirt and Decals.

Sometimes you will see an entry for decals in Rim Jobs/Semi Broken
but I have never seen one for dirt. Nonetheless you can set the
how dirty your car is in it's xtbl file.

I should note that when you take a car to Rim Jobs and repair/customize
it the dirt gets removed leaving your vehicle spotless. I have never added
dirt to a vehicle, only removed it, so I don't know if that would hold true
for a custom vehicle or not.

Let's get started. Here is our decal code:

(Original displays decal)

<Component_Group>
<Name>Decal</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Decal 1</Slot>
<Component>Option 1</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>


There is only one decal for this vehicle and it the little Mag
logo on the tailgate. It is set to have a 100 percent chance of
spawning. If you wanted to remove it you would set the weight
to 0.


(modded for no decal)

<Component_Group>
<Name>Decal</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Decal 1</Slot>
<Component>Option 1</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>


That's it for the decal. Now we play in the dirt

(Original)

<Component_Group>
<Name>Dirt</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 1</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>none</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 2</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>none</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 3</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>Option 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 4</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>Option 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>None</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>none</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>none</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>

The dirt entries are broken up into 4 options: option 1 covers 25% of the
vehicle in dirt option 2 covers 50%, option 3 covers 75% and option 4 covers
100%.

If you are studying the code you might have noticed that there is a dirt 1 and a dirt 3
but there is no dirt 2. This is because it is not listed in the _cust file.
Dirt 1 is where apply the amount of dirt you want on your vehicle. Dirt 3 is what you use
when you want a clean vehicle. This might be a little hard to follow because
of how the code is written but I'll try to explain.

Let's take dirt 1 option 1 for example

<Name>Dirt</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 1</Component>
</Component_Element>

Dirt 1 is the component and option 1 is the option name for the 25 percent dirt
option. So if you were to set the weight to 100 percent you would have a
vehicle that is approx 25 percent dirty.

<Component_Element>

<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 2</Component>
</Component_Element>


This is dirt 1 option 2 50% dirty. The dirt 1
just tells up that this is still part of the dirt 1 entry
the option 2 under it tells us that this it the 50% dirty option.
If you wanted to make your Mag use this option then you would set
the weight to 100 percent and set the option 1 weight to 0

(dirt 1 option 3)

<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 3</Component>
</Component_Element>


Here we have to exact same thing. Set your vehicle to 75% dirt by changing the
weights.

(Dirt 1 Option 4)

<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>Option 4</Component>
</Component_Element>
<Component_Element>

Set this one for 100% covered

(Dirt 3 - No Dirt)

<Slot>Dirt 3</Slot>
<Component>Option 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>None</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Dirt 1</Slot>
<Component>none</Component>
</Component_Element>
<Component_Element>
<Slot>Dirt 3</Slot>
<Component>none</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>

And here we finally have dirt 3 - 0% dirt. For our purposes we'll set it to
100 percent and all the other weights listed to 0.


NOTE: I just noticed that I made a mistake back in lesson 2. I said that I was going to change
the window tint but looking at my files I think I forgot to do so. The tint is corrected
but instead of using teal, I decided to use purple light tint. I think it looks better. (The
correction was made in part 5 so the previous lessons will still have the wrong tint.)
We have covered almost everything at this point. There are just four more components to tweak
and we'll take care of them this lesson.

All that's left is the hood, Bumpers, Bed Mod And Exhaust. Let's get at it.

Here is the unmodded Hood code:

<Component_Group>
<Name>Hood</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Stock</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Muscle</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Sport</Component>
</Component_Element>
</Components>
</Component_Chance>


As we can see there are only 3 options available and we want to
use number 3. So let's just scroll down the code and change the weight
options for 1 and 2 to 0. Then we'll change the 3rd option to 100

(modded code)

<Component_Group>
<Name>Hood</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Stock</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Muscle</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Hood</Slot>
<Component>Sport</Component>
</Component_Element>
</Components>
</Component_Chance>


The hood is done.

Bumpers:

(unmodded Code)

<Component_Group>
<Name>Bumpers</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Stock 1</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 10</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Stock 2</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 11</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Sport</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 12</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Off Road 1</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 10</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 5</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Off Road 2</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 11</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>

The License Plate is positioned differently on some of these
bumpers and that is why it is mentioned in code here.
We are going to use option 3 so we will set our weights accordingly

(Modded Code)

<Component_Group>
<Name>Bumpers</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Stock 1</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 10</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Stock 2</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 11</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Sport</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 12</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Off Road 1</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 10</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 5</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bumpers</Slot>
<Component>Off Road 2</Component>
</Component_Element>
<Component_Element>
<Slot>License Plate</Slot>
<Component>Option 11</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>

Now the bumpers are done and we can move on to Exhaust

(unmodded code)

<Component_Group>
<Name>Exhaust</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Street 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Stock Left</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Stock Right</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Street 1</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>

We are going to use option 3 (Dual Exhaust) so change the weights

(Modded Code)

<Component_Group>
<Name>Exhaust</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Street 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Stock Left</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Stock Right</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Exhaust Tips</Slot>
<Component>Street 1</Component>
</Component_Element>
</Components>
</Component_Chance>
</Component_Chances>
</Component_Group>

Exhaust is done.

One last component to change, The Bed Mods.

(unmodded code)
<Component_Group>
<Name>Rear Cab</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 4</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>70</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 5</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 5</Name>
<Weight>15</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 6</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 3</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 7</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Sport 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 8</Name>
<Weight>15</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Sport 2</Component>
</Component_Element>

We are going to use option 7. So lets mod our code

(Modded code)

<Component_Group>
<Name>Rear Cab</Name>
<Component_Chances>
<Component_Chance>
<Name>Option 1</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 4</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 2</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 5</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 3</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 4</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 5</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 2</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 6</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Stock 3</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 7</Name>
<Weight>100</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Sport 1</Component>
</Component_Element>
</Components>
</Component_Chance>
<Component_Chance>
<Name>Option 8</Name>
<Weight>0</Weight>
<Components>
<Component_Element>
<Slot>Bed Options</Slot>
<Component>Sport 2</Component>
</Component_Element>

We're finally done! Congratulations you've modded a vehicle.

(Note: There is a bug in the game code: sometimes the wrong option number will be applied to the
wrong mod. In this case I chose the option 7 bed mod but the game applied option 6. You
will run into a similar situation with the spoilers on the Socialite.)
The sr2_vehicle_table_crunch.exe tool provided by Volition is a small program created by people
who knew how to use it and as such there is not a lot of troubleshooting information
provided when the process does not complete successfully.

In my experience using it there are only two error messages. One is the message you get
when your vehicle fails to crunch and the one you get when you've made an error in your code
the first one is (could not parse customization tables) and the other is (cannot find option ...)
I may not have that second one exactly right but my point is

If you get the first error you more than likely have a code error. Maybe you have an extra
Line that doesn't belong or you haven't closed your code in properly. The second error
usually refers to a mistake in the options that the user inputs.

For instance if you use color2 where you should have used color 2 then you will receive this
error.

It is worth noting that the second error is not always fatal. Sometimes it will still
crunch the file, but you will likely either have a car that will not load or if it does
there may be errors in the rendering. I. E. one of your paint colors might not
show up correctly if at all.

(For those who have read all this through to the end the completed Customized Mag
cvtf file is included in the Part 7 zip file. Thank you for taking the time to check this
tutorial out.)

Now to the modders out there. I make mistakes, there are probably a few in this tutorial
If you notice any then feel free to correct me on them. I would appreciate the input.
Thanks.
Additional Resources (added for convenience sake.)

These posts belong to their respective authors. They are included here purely for the sake of
completion and because it's easier to have all the links in one place than to have to search
through a load of forum posts. My personal thanks to the authors for their hard work. Having access
to their work made it easier for me to do mine.

https://www.saintsrowmods.com/forum/threads/sr1-vehicles-overhaul.20023/ - Courtesy Spadita
https://www.saintsrowmods.com/forum/threads/sr1-vehicle-colors-for-sr2.17601/#post-111694 - Courtesy Qwerty Van Hallen
https://www.saintsrowmods.com/forum...s-restored-aka-the-return-of-red-alert.15146/ - Coutesy FusionH2o
https://web.archive.org/web/2010060...er.info/index.php?title=Creating_New_Vehicles - Courtesy Foamcup
 

Attachments

  • Add the Mag to Saints Gang Cars.zip
    35.5 KB · Views: 28
  • Part 2 Adding Rim And Trim Colors.zip
    25.5 KB · Views: 37
  • Part 3 Finishing Paint Changing Tires.zip
    25.6 KB · Views: 34
  • Part 4 Adding Performance Options.zip
    25.6 KB · Views: 34
  • Part 5 Dirt amd Decals.zip
    25.2 KB · Views: 35
  • Part 6 Finishing The Mod.zip
    25 KB · Views: 21
  • Part 7 The finished cvrf file).zip
    5.5 KB · Views: 23
Last edited:
Back
Top