Car Mechanic Simulator 2015

Car Mechanic Simulator 2015

79 ratings
Modding 101: Editing Text Files
By jbauer127
This guide is to help beginner modders with modding Car Mechanic Simulator 2015. Eventually the game will support custom cars and it is important to know where to start.
   
Award
Favorite
Favorited
Unfavorite
Introduction
I have decided to put together a quick guide that goes over the basics of modifying a game for those that have never done this before. Before you get into any complex, three dimensional modifications to a game it is best to know how to do a text based edit. This can range from changing how much money you have to how much power an engine has. Anything in a game that is driven by numbers usually can be edited. Sometimes there are more complex edits involving file names or commands that can be done as well. The main focus of this guide will be on modifying the stats for the pushrod V8 in CMS2015. At the end of this guide, I will show you where the OBD scan tool command is that either allows or blocks the use of the OBD tool on a car. I will also point out other stats for a vehicle that can be changed.
Backing Up Files
To begin, you need to backup your save game and any text files you plan to edit. First, create a folder in your documents or games folder to copy this information to. I created a folder called CMS2015 Files in my documents. Inside this folder, I created two folders, one called "Save Game" and one called "Original Text Files". Hopefully you won't ever need your save game files but should something go badly, you can restore your game. It's always nice to have the original text files in case you want to go back to the stock settings for the game. Now that this has been created, you need to copy and paste the information you want to backup. The quickest and easiest way to backup your save game is to copy this string...

%userprofile%\appdata\locallow\Red Dot Games\Car Mechanic Simulator 2015\

and paste it into the run command window, which can be accessed by holding down the windows key and hitting "R".







If a drop down menu shows up, ignore it and just click on "OK". A new folder should pop up that looks like this...

Click on either the profile0 folder or the selectedprofile file and then hold down the shift key to select the other one. Now that both have been selected, you need to copy them by either right clicking on one of them to bring up a menu or hold the ctrl key and hit "C". You do not want to drag and drop them into the backup folder as that will move them. Go back to your backup files folder and open the "Save Game" folder. Once it is open, paste what you copied into the folder. This can be done by either right clicking anywhere inside the folder so that a menu shows up or hold the ctrl key down and hit "V". You should end up with a copy of your save game files in your new backed up files folder.

The next step is to backup the text files you plan to edit. In this guide, two text files will be edited and they will need to be backed up. Those two files are "engines" and "car_TempestMagnum". Copy both of them and then paste them into the original text files folder to back them up. The path to the data folder where these files are is:

Computer\C:\Program Files (x86)\Steam\steamapps\common\Car Mechanic Simulator 2015\cms2015_Data\Datacars


Once you've backed up any of the files from the data folder you plan on editing, you can move on to the next step.
Editing the Engine File
Now we are ready to edit the engine file. It is a text file that can be opened up in word or notepad, I use notepad. When you open it, the file will look like this...

Each engine has a specific name in the brackets and then the power, peak power, peak torque, minimum rpm and maximum rpm settings. These numbers can be changed but I would caution against using unrealistic numbers. If you put 1000 down for the power, the car will behave as such. The peak power and and torque settings don't mean a whole lot but changing them will slightly alter the way the car behaves. DO NOT put these two values higher than your max rpm. The min rpm should never be zero or a really low number like 100. In reality, a regular engine will have an idle RPM between 500 and 1100, typical is 750 or 1000.

In this example, I change the stats for the pushrod V8 to more realistic settings. If you want to understand the reasoning for each of my numbers, check out my discussion called Modding Specifics. Below are my changes but you can change these to whatever you want.

[engine_v8_stary]
maxPower=280
maxPowerRPM=5000
maxTorqueRPM=3300
minRPM=1000
maxRPM=6250

Once you are satisfied with your changes, go up to file and click save. Then close the file. If you wanted to go straight to the game to test out your changes, you can and the game will load just fine.
Editing a Car File
To finish off this guide, I will cover some of the info in the car text files. The example I'm going to use is the car_TempestMagnum text file. The first thing you should know about the car text files is this: DO NOT mess with any of the part names. Trying to change out any of the parts, suspension or engine will result in the car not loading when in the game. Your game will freeze, you'll have to manually exit the game using ctrl + alt + delete and you might hurt your save game. Maybe in the future this will be possible but that will require more information about how parts are connected to the vehicle.

When you open a car text file, it might look like two never ending sentences. This means that there are not any spaces in the file. Correctly spacing the information to look like the following is fine. This is the information found inside the text file for the Tempest Magnum.

[main]
model= car_TempestMagnum
rustMask= magnum_rustmask
rotation= 0.0,180,0.0

[other]
engineSound=v8old
transmissionType=RWD
gears=4
finalDriveRatio=3.0
weight=1242

[suspension]
frontAxleStart= 1.65
wheelBase= 2.89
height= 0.12
frontTrack= 1.60
rearTrack= 1.60
frontSpringLength= 0.0
scale= 0.926

frontCenterSet=#FrontCenterShort
frontRightSet=#FrontRightDoubleWishbone
rearCenterSet=#RearCenterLeafPowered
rearRightSet=#RearRightSolidDrumPowered

[engine]
position= 0.0, 0.38, 1.57
rotation= 0.0, 0.0, 0.0
scale= 1.2
type= engine_v8_stary

[driveshaft]
position= 0,0.1198,-0.9488
rotation= 0.0, 270, 3
scale= 1.0
size= 1.0
type= #Driveshaft
length= 1.945

[wheels]
wheelWidth= 215
tire= tire_standard
rim= rim_11
rimSize= 15
tireSize= 70

[parts0]
name= #Radiator
position= 0.0, 0.36, 2.27
rotation= 0.0, 0.0, 0.0
scale= 1.0

[parts1]
name= #FuelTank
position= 0.0, 0.3, -1.64
rotation= 0.0, 0.0, 0.0
scale= 1.0

[parts2]
name= #Battery
position= -0.47, 0.41, 2.09
rotation= 0.0, 90, 0.0
scale= 1.0

[parts3]
name= #Exhaust_V8Old_B
position= 0.0, 0.38, 1.57
rotation= 0.0, 0.0, 0.0
scale= 1.2

[parts4]
name= #BrakePump
position= -0.20, 0.51, 1.2438
rotation= 0.0, 0.0, 0.0
scale= 0.9

[interior]
seatLeftPos= -0.38,0.03908123,0.07
seatLeftRot= 0.0,270,0.0
seatScale= 1.0
seat= seat_3
wheel= steering_wheel_old1
wheelPos= -0.381,0.59,0.44
wheelRot= -10.0,180.0,0.0

[logic]
globalCondition= 0.4,0.6
partsConditions= 0.0,0.7
panelsConditions= 0.05,0.6
uniqueMod= 2.0
blockOBD=true

The first thing I want to point out is the very last line of code. This is a simple true / false command that blocks the OBD tool from being used on the classic cars. If you were to change it to false or remove it completely, you would then be able to use the OBD tool on a classic car. When the command is true, the OBD is blocked.

The next part of the code I'm goind to look at is the wheels. The size of the rim and tire can be changed but this change will be for the entire car in the game, not just yours. Currently the ability to change the size of rims in game does not exist. Below is the part of the code for the wheels.

[wheels]
wheelWidth= 215
tire= tire_standard
rim= rim_11
rimSize= 15
tireSize= 70

Do not mess with the rim and tire lines. Wheelwidth, rimsize and tiresize are the lines you want to alter. If you were to look at these three lines as parts of a tire size, the tire for the Magnum would be a 215 / 70R15. 215 and 70 are in mm and 15 is in inches. If you want to understand more about tire sizes, TireRack can help you out. Below is a picture of my Magnum with the GTR specs for width, tire size and rim size.



There is one last area I want to cover and it is at the top.

[other]
engineSound=v8old
transmissionType=RWD
gears=4
finalDriveRatio=3.0
weight=1242

There are three lines that can be changed, the number of gears, the final drive ratio and the vehicle weight. The number of gears can be changed, I've put 5 in the Magnum. The final drive ratio is a good line of code to change, due to how small the driving test coarse is. For the Magnum, I'm running a 7.17 final drive which is a real gear ratio for the Dana 60. The Dana 60 is the differential found in the Dodge Charger. The weight can be changed to a realistic weight, in kilograms. For the Charger, it weighed 1746 kg in the late 60's.

*Edit* Thanks to wilson2hall51783, there are two more lines of code that can be modified correctly now. The ride height line, listed as height, under suspension can be changed by increasing the number to decrease the ride height. For really wide wheels, the front and rear track can also be changed. Decrease the number to decrease the track, allowing for wider wheels.

[suspension]
frontAxleStart= 1.65
wheelBase= 2.89
height= 0.12
frontTrack= 1.60
rearTrack= 1.60
frontSpringLength= 0.0
scale= 0.926

Another area that can be edited without serious trial and error is the cost of the car at auction and the condition of the parts. globalCondition is the overall condition of the vehicle, partsConditions is the condition of the parts and panelsConditions is the condition of the body panels. Each of these has two numbers, ranging from 0.0 to 1.0, for 0% condition to 100% condition. The first number is the minimum and the second number is the maximum, providing a range. Lets say you wanted to have an old beat up looking car with a uniform condition of 25%, you would set each of the three conditions to 0.25, 0.25. This means the min and max are locked at 25%. You could do the exact same so that all the parts on the car are 100%. Body panels / parts can still be missing at 100% condition, you would just have to buy a few pieces and the car would be 100% complete. If you go for the 25% car, you will need to purchase a few of them so that you can remove parts from donors to create the beater car.

[logic]
globalCondition= 0.4,0.6
partsConditions= 0.0,0.7
panelsConditions= 0.05,0.6
uniqueMod= 2.0
blockOBD=true

The second thing I wanted to focus on in this edit was the cost of the car. The uniqueMod line sets the cost for the vehicle. I would advise against setting it at 0 but I don't know if that will cause a problem. Dirt cheap would be like 0.01. Really expensive would be like 10.0. If you want a quick cheat to have millions in the bank, set a car at like 10.0 and then sell it in the game.

I've seen someone change out the suspension for a classic car, but this type of mod takes a lot of trial and error. Remember that most things in a text file can be changed to something else, just make sure you save everything before messing around with part swaps. With the recent engine swap addition to the game, you could add addition engine options when looking at the engine section of a car's text file. It looks like this...the line you would add engine names to is sqapoptions. This would be the painless way to put a modern V8 in a classic car for example.

[engine]
position= 0.0, 0.397, 1.592
rotation= 0.0, 0.0, 0.0
scale= 1.25
type= engine_v8_stary
swapoptions=engine_v8_stary,engine_v8_stary_2carb,engine_v8_stary_scharged
pm=1.4

One last thing, the pm line at the very bottom is the power multiplier. This number is the part you would change when wanting the maximum power from any particular engine to go up or down. Below 1 would have the number go down, above 1 would have it go up. This is car specific rather than engine specific, as each car will get different amounts of power for a given engine.
Conclusion
Thanks for reading this guide and I hope it helps those of you who have never edited a text file for a game. I appreciate any constructive criticism and am happy to answer any questions. This information should still be useful even when mods are fully supported for the game. Any new rides will likely need these files in order to work properly.
< >
50 Comments
_Secton Dec 26, 2021 @ 4:37pm 
@jbauer127 thanks for taking your time to answer this question, i appreciate it
jbauer127  [author] Dec 17, 2021 @ 8:24pm 
@_Secton I know this is a really old comment but to answer it, you would need to modify the length of the driveshaft if you look at that part. Under {Driveshaft} the last line is length. You would need to do trial and error to get it to fit. Look at various car files to get an idea of how to adjust this value. If a car of equal length that had a bigger engine, say a V8, the length should be higher than the length on a similarly sized vehicle with an inline 4 rwd. You'd need to get pretty close for the game to work with it, so this is a lot of trial and error unfortunately. But that's the line to worry about.
SerioStromB Feb 18, 2021 @ 4:57am 
Thanks for the guide.
i have a problem
In the line "uniquemod" i can't apply changes,but the folder "Datacars" it's only read and i can't change this attribute and i understand
¿can i help me?
Thanks
Tail UwU Oct 31, 2017 @ 3:50pm 
xdd
_Secton May 10, 2017 @ 2:21pm 
Im trying to modify the engine swap options and every time it comes up with !engine_v8[driveshaft]...how do i fix it?
PistonHead Apr 24, 2017 @ 1:07pm 
@[WTD - COO] Hellcat cheers
jbauer127  [author] Apr 23, 2017 @ 2:23pm 
@brucestinger go back and read the section that talks about wheels. I start it out with...

"The next part of the code I'm going to look at is the wheels."

Your question has already been answered in that section.The text files are pretty specific about rim and tire size.
brucestinger Apr 23, 2017 @ 6:19am 
I had problems by editing the Rims ! The Tire would be big , example 28 inch but the Rims would be small , example 15 inch. What is the Problem ?
_Secton Mar 15, 2017 @ 7:20am 
PistonHead Mar 3, 2017 @ 12:55pm 
Accidently deleted one of the original text files for the Mayen M6 cant find out how to get the original specs any ideas?