Replacing Cars

Quite some time ago I decided that I wanted to mod my game
in a way that made all the enemy gang boss's cars show up at
their respective hideouts and I did so. However the way I
had to do it was less than perfect.

I basically opened up the xtbls for all of the boss cars
and set the parking weight for all of the entries except
for the boss variant to 0. They could still be seen driving
but they wouldn't spawn in a parking space.

After doing that I sat the boss's variant of the vehicle's
parkingweight to 100 which made it the only vehicle to
spawn parked. I added parking space info in front of the
hideouts. Meat Packing Plant for Samedi, Tohoku Hotel for Ronin
and their clubhouse for Brotherhood. Dane was of course the
Ultor building.

I kept it this way for a while but I was never really satisfied
with the way I had to do it. Meanwhile at some point I read a
tutorial by Foam Cup that talked about adding new vehicles to
Saint's Row 2. After thinking about it a while I thought if you
can add vehicles, then you must be able to replace others.

That is what this is about.

Note: This will change the Ethel to the Jyunichi variant of the Zircon
but it does not alter the original Zircon vehicle in any way.

Find a vehicle that you don't like the looks of. For me
that is the Ethel.

(courtesy -SeaBoundSaint-)

According to our list the Ethel is CAR_4DR_CLASSIC02
and for the purposes of this tutorial I will replace it with the
Jyunichi variant of the Zircon. (CAR_4DR_STANDARD02)

So first we have to gather all the files:
(You will need ThomasJepp tools to unpack these.
See tools section below)

1. CAR_4DR_standard02.car_pc (meshes.vpp_pc)
2. CAR_4DR_standard02.g_car_pc (meshes.vpp_pc)
3. CAR_4DR_standard02.peg_pc (pegs.vpp_pc)
4. CAR_4DR_standard02.g_peg_pc (textures.vpp_pc)
5. CAR_4DR_standard02.xtbl (common.vpp_pc)
6. CAR_4DR_standard02_cust.xtbl (common.vpp_pc)
7. CAR_4DR_standard02_veh.xtbl (common.vpp_pc)

You will also need Masamaru's vehicle cruncher frontend
as well as the vehicle cruncher itself. (Link in tool section)

The files listed above are for the Zircon. What we are going to do
is remove all of the car variants except for the Jyunichi variant
from the CAR_4DR_standard02.xtbl and then we are going to make one
small change to all of the xtbl files.

Near the very top of all three xtbl files you will find the
<Name>car_4dr_standard02</Name> line. Since we are
replacing the Ethel with this car we need to replace the name
it should look like this: <Name>car_4dr_classic02</Name>. Save your files.

The next part of the mod is optional:

The CAR_4DR_standard02_cust.xtbl is the file that contains all of buyable components
there is a third decal listed in the file that is not listed in the Rim Jobs/Semi Broken
menu by default. We are going to change that.

Open CAR_4DR_standard02_cust.xtbl in a text editor and search for decal 3
Here is the entry:

Code:
<Slot>
          <Name>Decal 3</Name>
          <Camera_Info>Standard</Camera_Info>
          <Components>
            <Component>
              <Name>Ronin Side 1</Name>
              <DisplayName>COMPONENT_OPTION_1</DisplayName>
              <Price>100</Price>
              <Buyable>no</Buyable>
              <No_Backseat_Passengers>no</No_Backseat_Passengers>
              <Properties>
                <Texture_component>
                  <Material_list>Body_1, Body_2, Body_1a</Material_list>
                  <Texture_var_name>Decal_map_2</Texture_var_name>
                  <Texture_bmp_name>Dcl_Ronin_side1.tga</Texture_bmp_name>
                  <Null_Component>no</Null_Component>
                </Texture_component>
              </Properties>
            </Component>
            <Component>
              <Name>None</Name>
              <DisplayName>COMPONENT_NONE</DisplayName>
              <Price>0</Price>
              <Buyable>no</Buyable>
              <No_Backseat_Passengers>no</No_Backseat_Passengers>
              <Properties>
                <Texture_component>
                  <Material_list>Body_1, Body_2, Body_1a</Material_list>
                  <Texture_var_name>Decal_map_2</Texture_var_name>
                  <Texture_bmp_name>Dcl_BLANK.tga</Texture_bmp_name>
                  <Null_Component>yes</Null_Component>
                </Texture_component>
              </Properties>
            </Component>
          </Components>
        </Slot>

Find the <Buyable>no</Buyable> line There are two instances of it.
They should both be changed to yes.

You do not need to alter the _veh file in any way unless you want to
change the vehicle name. If you do change the vehicle name make sure to
put a copy of the altered file in your mod directory so that it can be added
to the patch.

The next thing to do is rename all of the files. They should be named:

1. CAR_4DR_classic02.car_pc
2. CAR_4DR_classic02.g_car_pc
3. CAR_4DR_classic02.peg_pc
4. CAR_4DR_classic02.g_peg_pc
5. CAR_4DR_classic02.xtbl
6. CAR_4DR_classic02_cust.xtbl
7. CAR_4DR_classic02_veh.xtbl

Crunch your CAR_4DR_classic02.xtbl and CAR_4DR_classic02_cust.xtbl
and move the cvtf file that gets created to your mods directory.

You are basically done, but I want to make a couple of notes.

You can change decals 2 and 3. for some reason decal 1 cannot be removed.
Decal 2 will replace it tho.

Do not change the names of anything inside the peg files. Doing so
will make your vehicle not spawn. You should only change the peg file names themselves.

It should go without saying that the Ethel will disappear completely from the game, but
because we renamed the files for the replaced car to the same name that the Ethel originally
used there will be no issues with that.

If you forget to change the mesh file names (1 and 2 in list) then the mod will not work correctly.
You will have an untextured roofless Ethel instead of a Zircon.

Having two different in game cars named Zircon is not going to cause any issues.

* Revised Edit *
I had forgotten that one of the Escort car rewards was an Ethel. This wouldn't have been an issue but for the fact that
the original file I posted did not have the required variant information. That is fixed now and the old download
has been replaced.

The "Escort" variant is set to not be driven, nor parked on the street you can only get it now as a reward vehicle
unless you add it to a vehicle dealership.
Escort.png


Code:
<Variant>
          <Name>Escort</Name>
          <Weight>0</Weight>
          <ParkingWeight>0</ParkingWeight>
          <Type>riced</Type>
          <Siren>0</Siren>
          <Components>
            <Component_Group>
              <Name>Chassis</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Chassis</Slot>
                      <Component>Standard</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <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>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Hood</Slot>
                      <Component>Tuner</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Hood</Slot>
                      <Component>Racing</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>Bumpers</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Bumpers</Slot>
                      <Component>Stock</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Bumpers</Slot>
                      <Component>Tuner</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Bumpers</Slot>
                      <Component>Racing</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>Spoilers</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Spoiler</Slot>
                      <Component>Tuner</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Spoiler</Slot>
                      <Component>Sport</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Spoiler</Slot>
                      <Component>Racing</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>exhausts</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Exhaust Tips</Slot>
                      <Component>Stock</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Exhaust Tips</Slot>
                      <Component>Sport</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Exhaust Tips</Slot>
                      <Component>Racing</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>grills</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Grill</Slot>
                      <Component>Stock</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Grill</Slot>
                      <Component>Tuner</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Grill</Slot>
                      <Component>Sport</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>extras</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Window Guard</Slot>
                      <Component>Racing</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Window Guard</Slot>
                      <Component>none</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>Wheels</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>100</Weight>
                  <Components />
                  <Externalized_Components>
                    <Externalized_Component>
                      <Component>W_003_F_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>W_003_R_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_182_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_182_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>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components />
                  <Externalized_Components>
                    <Externalized_Component>
                      <Component>W_003_F_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>W_003_R_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_201_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_201_R</Component>
                    </Externalized_Component>
                  </Externalized_Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>0</Weight>
                  <Components />
                  <Externalized_Components>
                    <Externalized_Component>
                      <Component>W_003_F_Extra_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>W_003_R_Extra_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_177_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_177_R</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>S_413_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>S_413_R</Component>
                    </Externalized_Component>
                  </Externalized_Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 4</Name>
                  <Weight>0</Weight>
                  <Components />
                  <Externalized_Components>
                    <Externalized_Component>
                      <Component>W_003_F_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>W_003_R_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_127_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_127_R</Component>
                    </Externalized_Component>
                  </Externalized_Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 5</Name>
                  <Weight>0</Weight>
                  <Components />
                  <Externalized_Components>
                    <Externalized_Component>
                      <Component>W_003_F_Extra_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>W_003_R_Extra_Low_Profile</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_176_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>R_176_R</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>S_413_F</Component>
                    </Externalized_Component>
                    <Externalized_Component>
                      <Component>S_413_R</Component>
                    </Externalized_Component>
                  </Externalized_Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>Dirt</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>No Dirt</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Dirt 1</Slot>
                      <Component>none</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Dirt 2</Slot>
                      <Component>none</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Dirt 1</Slot>
                      <Component>Dirt 25</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Dirt 2</Slot>
                      <Component>Dirt 25</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 2</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Dirt 1</Slot>
                      <Component>Dirt 50</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Dirt 2</Slot>
                      <Component>Dirt 25</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 3</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Dirt 1</Slot>
                      <Component>Dirt 75</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Dirt 2</Slot>
                      <Component>Dirt 50</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
                <Component_Chance>
                  <Name>Option 4</Name>
                  <Weight>0</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Dirt 1</Slot>
                      <Component>Dirt 100</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Dirt 2</Slot>
                      <Component>Dirt 75</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>Decals</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>Option 1</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Decal 1</Slot>
                      <Component>None</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Decal 2</Slot>
                      <Component>None</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Decal 3</Slot>
                      <Component>Ronin Side 1</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>L plate</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>L plate</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>License Plate</Slot>
                      <Component>rear plate</Component>
                    </Component_Element>
                  </Components>
                </Component_Chance>
              </Component_Chances>
            </Component_Group>
            <Component_Group>
              <Name>performance</Name>
              <Component_Chances>
                <Component_Chance>
                  <Name>performance</Name>
                  <Weight>100</Weight>
                  <Components>
                    <Component_Element>
                      <Slot>Nitrous</Slot>
                      <Component>Add Nitrous</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Hydraulics</Slot>
                      <Component>None</Component>
                    </Component_Element>
                    <Component_Element>
                      <Slot>Kneecappers</Slot>
                      <Component>None</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>
          <Colors>
            <Color_Group>
              <Name>Standard</Name>
              <Color_Chances>
                <Color_Chance>
                  <Name>Double</Name>
                  <Weight>100</Weight>
                  <Color_Choices>
                    <Color_Choice>
                      <Slot>Window Tint</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Tint</Color_Slot>
                      <Color>
                        <Color_Pool>Glass Yellow Dark Tint</Color_Pool>
                      </Color>
                    </Color_Choice>
                    <Color_Choice>
                      <Slot>Body Color</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Paint</Color_Slot>
                      <Color>
                        <Color_Pool>Gloss True Black</Color_Pool>
                      </Color>
                    </Color_Choice>
                  </Color_Choices>
                </Color_Chance>
              </Color_Chances>
            </Color_Group>
            <Color_Group>
              <Name>Trim</Name>
              <Color_Chances>
                <Color_Chance>
                  <Name>Carbon</Name>
                  <Weight>100</Weight>
                  <Color_Choices>
                    <Color_Choice>
                      <Slot>Trim Color1</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Exhaust</Color_Slot>
                      <Color>
                        <Color_Pool>Metal Gold</Color_Pool>
                      </Color>
                    </Color_Choice>
                    <Color_Choice>
                      <Slot>Trim Color2</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>GrillArea</Color_Slot>
                      <Color>
                        <Color_Pool>Metal Gold</Color_Pool>
                      </Color>
                    </Color_Choice>
                    <Color_Choice>
                      <Slot>Rim Color</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Rim</Color_Slot>
                      <Color>
                        <Color_Pool>Metal Gold</Color_Pool>
                      </Color>
                    </Color_Choice>
                  </Color_Choices>
                </Color_Chance>
              </Color_Chances>
            </Color_Group>
            <Color_Group>
              <Name>Interior</Name>
              <Color_Chances>
                <Color_Chance>
                  <Name>Standard</Name>
                  <Weight>100</Weight>
                  <Color_Choices>
                    <Color_Choice>
                      <Slot>Interior Color</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Interior</Color_Slot>
                      <Color>
                        <Color_Pool>Interiors Galactic Dove Gray</Color_Pool>
                      </Color>
                    </Color_Choice>
                    <Color_Choice>
                      <Slot>Grill Color</Slot>
                      <Component>Paint</Component>
                      <Color_Slot>Grill</Color_Slot>
                      <Color>
                        <Color_Pool>Interiors Water Bucket Gray</Color_Pool>
                      </Color>
                    </Color_Choice>
                  </Color_Choices>
                </Color_Chance>
              </Color_Chances>
            </Color_Group>
          </Colors>
          <Wheels>
            <Wheel_Group>
              <Name>Default</Name>
              <Front_Width>3</Front_Width>
              <Front_Size>15</Front_Size>
              <Rear_Width>3</Rear_Width>
              <Rear_Size>15</Rear_Size>
              <Weight>100</Weight>
            </Wheel_Group>
          </Wheels>
        </Variant>

Masumaru Vehicle Cruncher Front End (you can get the vehicle cruncher on the same page)

I am including the converted files for study purposes.
 

Attachments

  • Ethel Changed To Zircon Jyunichi Variant.zip
    2 MB · Views: 5
Last edited:
Hm, I wonder if this is the first step to get Saints Row 1 vehicles into Saints Row 2. There are a lot of really cool cars like the modern Venom, Fer De Lance, Traxx Master that didn't get to appear in future games. Hope that there will be more development to this.
 
I'm really not well versed in anything SR1 related but I welcome anyone to take any work I've done and build on it in
some way, assuming that it doesn't break any forum rules.

So if it's okay to transfer the assets between games now and someone else wants to do so then I say "Go for it!"
I'd love to see the results.
 
Last edited:
The next part of the mod is optional:

The CAR_4DR_standard02_cust.xtbl is the file that contains all of buyable components
there is a third decal listed in the file that is not listed in the Rim Jobs/Semi Broken
menu by default. We are going to change that.

Open CAR_4DR_standard02_cust.xtbl in a text editor and search for decal 3
Here is the entry:

Find the <Buyable>no</Buyable> line There are two instances of it.
They should both be changed to yes.
This is cool! Is this how one would go about making all unobtainable vehicle parts able to be applied in Rim Jobs? So one could take a stock Phoenix and make it look like Jessica's, something like that
 
Yes. Setting the decals for Jessica's car to be buyable would be easy enough. In fact most, if not all, of the unobtainable vehicle parts should be able to be made
buyable. The one modding the file would just have to make sure that the no customization flag was removed from any vehicle that has it. Like the Hounfor for example and then go through the _cust file and set any relevant parts to buyable.
 
Last edited:
Unpopular Asian Guy said:
Hm, I wonder if this is the first step to get Saints Row 1 vehicles into Saints Row 2. There are a lot of really cool cars like the modern Venom, Fer De Lance, Traxx Master that didn't get to appear in future games. Hope that there will be more development to this.

Just out of curosity I looked at some of the SR1 vehicle files and there are a few differences that could make
conversion to SR2 unviable.

SR2 vehicles require three xtbl files: (I'll use the Hounfor as example)
1.) sp_hearse02.xtbl (the vehicle's main xtbl. This is the file that you change when modding the car.
2.) sp_hearse02_cust.xtbl The file that contains all of the customizable parts of the car
3.) sp_hearse02_veh.xtbl The file that contains all of the drivability info. speed, yaw, etc.. as well as the in game vehicle name

In SR1 all I could find were the equivalent of #1 and #3. There are two copies of #1. One is located in misc.vpp_pc to other is located in variants.vpp_pc at first glance they appear to be the same. That being said, I did not run a file comparison so there might be differences.

The SR1 vehicle files appear to be similar in structure to the SR2 npc files in how they allow for randomization of vehicle
parts like fenders or spinners etc in the same manner that the npc clothing and clothing color can be.
(I will not post any file snippets due to forum rules - sorry.)

The vehicles.xtbl file in SR1 appears to hold the information that would be contained in an SR2 _veh file,
but I haven't found anything (atleast not yet), that would be the equal to the _cust file.

Somebody smarter than myself and/or with more SR1 modding and file structure knowledge might be able to
convert them to the SR2 format assuming all the information is available but I'm sorry to say that the task is beyond me at this time.
 
Last edited:
Back
Top