Replace any vehicle in GTA 5 | Lvl1 ∙ Part 2 ► Vehicle files and vehicles.meta
Learn how to replace any vehicle in GTA 5 by any mod.
Welcome in second part of first level of proper vehicle replacing tutorial. In first part we prepared all the files and we are ready to start replacing.
Replace models
From this moment I will be not putting every archive name between quotation marks because all the time when I’ll write ‘archive’ you will know I’m speaking about ‘.rpf’ file as for example was ‘dlc.rpf’, now I would call it only dlc.rpf archive or just dlc archive.
Let’s get started for the first easy step which is replacing a models we prepared. We got opened OpenIV and your folder with prepared files, so use search tool and search for reaper.yft as we did choose Reaper as the car we will replace.
As I mentioned in first part of tutorial, we got it in 2 locations and they should be with blue background in search results. If you see more or less locations where is this file, there are 3 possible reasons.
You see 4 locations. Two of them have a bit blue background and two of them have no background, meaning white background color. You should know this but in case you don’t I’m explaining this as well. Blue color background means locations are inside of mods folder and white color are original locations, but you know you have to always use mods folder so you never work with files with white background of location.
You see only 2 locations but both have white background. In this case between this search results and search box you have 2 lines. One says ‘Search area’ and second says ‘Search for’. In search area you can set up if you want search in both areas or only in original files or only in mods files. It’s up to you if you choose both areas or mods only as again, we never work with original game folder files. NOTE: If you have set ‘Search everywhere’ and see anyway only white background files, after opening this locations you should see big button ‘Copy to “mods” folder’ and you need to click on this, but I believe you already know about this basics of work in OpenIV.
One more option is that you have more than 2 locations with blue background. This can mean only one of following. Between time of me writing this and you reading this, Rockstar added new update for Reaper so there is new patchday archive where are Reaper files. Second possible scenario is you have any addon dlc pack where was Reaper edited. No worries, both scenarios are no problem and in both scenarios just do all following steps in that additional location as well.
Open first location which should be mpexecutive and drag and drop all 4 car files in here: reaper.yft, reaper_hi.yft, reaper.ytd and reaper+hi.ytd. Do the same in second location which should be patchday13ng. As I mentioned before, if you have any addon archive or there was added new patchday with Reaper by Rockstar meanwhile, repeat same step in this location.
Car is replaced and now we go to replace tuning parts. Using search tool find locations of reaper_mods.rpf. Result should be just one location — mpexecutive. Open this location and drag and drop our prepared reaper_mods.rpf in here. TIP: Everytime you are replacing files you can check if they was replaced by checking if the size of models changed inside of OpenIV.
For example, reaper_mods had 150 KB before and should have 2.249 KB after replacing ( if this mod of Lambo was updated meanwhile, it can have more or less ). If you want to check it twice to be sure it’s replaced just open the archive and there should be files called reventon_xxx. For car model files (reaper.yft & reaper_hi.yft), program open you 3D preview of model and you will see your Lambo and not original vehicle so you know, you really replaced it.
Pretty easy huh ? Your models are in the game but tuning will not appear and vehicle would act weird if you run game right now. Or even your game might crash in this moment in some cases. To avoid this, we need to change all the data starting with the vehicles.meta which will make your game and car work properly. First I will explain most of the lines of vehicle.meta so even experienced moders may benefit from this if they are looking just for one exact line to change one exact thing on their model. After that I will write resume with my tips what lines I always replace and what lines not.
Explaining vehicles.meta
If you don’t know how to open meta files in your folder outside of OpenIV and it don’t open automatically by notepad, just right click on the file, choose ‘Open with’ and choose notepad. Easiest way to work with meta files.
Every vehicle inside vehicles.meta is starting with following line:
<Item>
<modelName>NAME_OF_MODEL</modelName>Model name is written without extension ( means without file type and other extensions, for example without ‘.yft’ and without ‘_hi’ ) In our case we have name ‘lamboreventon’ in our new vehicles.meta and we will be searching for ‘reaper’ in original game meta when you’ll be editing it .
txdName
Name of used textures dictionary without extension ( means without file type and other extensions for example, without ‘.ytd’ and without ‘+hi’ ). So this is mostly the same as modelName, in our case reaper because we use model reaper.yft and textures reaper.ytd but we write both without extensions.
handlingId
Name which is used in handling.meta. Mostly default names are same as model name or a bit shortened when model name is too long as ‘schwarzer’ use ‘SCHWARZE’. Mostly are these names written all in uppercase.
gameName
Name corresponding to the model entry in GXT2 file, which is mostly again the same as modelName. This name is showed while entering the vehicle in game. Changing this require change in GXT2 as well because it depends on hash, I may learn you this later too.
vehicleMakeName
Name of manufacturer of vehicle corresponding to its GXT2 entry. Mostly written in uppercase as default. Again, possible to change but require changes in GXT2.
expressionDictName & expressionName
I have no idea at this moment what are these lines used for as this values are always ‘null’. May be useful in more complicated vehicles and may find it and explain it to you in more advanced tutorials.
animConvRoofDictName
Used only for vehicles with animated roof. Name of animation used for exact convertible roof animation as there are more different types of convertible roof animations.
animConvRoofName
Name of model part which is moving during animation, typically ‘roof’, but in mods depending on model’s author decision.
animConvRoofWindowsAffected
Names of model parts of windows affected by the movement of the convertible roof animation. Not necessary to be any, but mostly side windows retract during animations.
ptfxAssetName
Name of asset used on the vehicle, mostly used only with weapons on the roof of vehicle for proper working weapons.
audioNameHash
Name of the vehicle whose sounds are inherited by the vehicle. Vanilla cars have this always empty as every single vehicle have set sounds, but using mods you may change sound of vehicle by inheriting sound of different vehicle or addon sound and you do it by this line.
layout
Layout define how character entry, sittings positions of player and whole entry animation. Very important line while using right hand drive vehicle mods. Possible to add new layout but require edits in other files, will be explained in RHD tutorial later. For basic replacement, we are using any of existing layouts.
coverBoundOffsets
Define vehicle deformation and collisions style and range. Similar as Layout, it’s possible to add new or edit existing for special shaped mods, but for basic replacement we are using any of existing offsets. These data are defined in vehiclelayouts.meta, I will learn you editing later.
explosionInfo
Style and range of explosion. Example civilian car have different explosion as the truck, truck have different explosion as the tanker etc.
scenarioLayout
Mostly not used. Used only when vehicle is used in any scripted scenario of free gameplay and vehicle then don’t properly react on scene for example metro train is still driving it’s own way no matter what you do, even when you stop with a tank in front of it.
cameraName
Third-person view camera settings.
aimCameraName
Camera used during aiming while driving.
bonnetCameraName
Should be one of views of cinematic camera that is a bit different for each vehicle because of vehicle shape.
povCameraName
Should be the style where and how is character looking while you drive in reverse. For example in big trucks character look at the side windows but in small cars character look around thru the back window.
FirstPersonDriveByIKOffset
Including all following lines starting by ‘FirstPerson…’ are detailed data of Inverse Kinematics, meaning what moves character do if you play in first person and do specific moves as look back, use phone etc.
PovCameraOffset
Offset of first person camera to align driver in right position. In other words, settings up camera in first view to be in right place and not somewhere in the middle of car or middle of players body.
PovCameraVerticalAdjustmentForRollCage
Additional info for previous line used (applies) when you install rollcage tuning in the vehicle.
PovPassengerCameraOffset
Offset of first person camera used while for passenger.
PovRearPassengerCameraOffset
Same as previous but used for passengers on rear seats.
vfxInfoName
Used VFX effects, mostly exhaust smoke which is different for bike, for cars with one exhaust, for cars with exhaust on both sides or for trucks with vertical exhaust near driver cabin.
shouldUseCinematicViewMode
If set as false, you can’t use cinematic view on the vehicle.
shouldCameraTransitionOnClimbUpDown
Mostly set as true on airplanes so climbing or ‘failing’ ( in planes means going up or down ) don’t change camera position again vehicle. In cars set as false so camera change a bit to make you feel that you are failing down inside of car.
shouldCameraIgnoreExiting
I don’t remember to see this set as true on any car. Normally camera move slightly while you are exiting vehicle. When you set this as true, camera will not move while you are exiting and after exiting animation was finished, it move so it look like your game freezed for a second.
AllowPretendOccupants
If the peds driving this vehicle in the traffic act like normal civilian. For example ambulance drivers don’t as they have their own role and own driving style.
AllowJoyriding
Define if ped can drive this car like stolen car, meaning driving like crazy idiot and running out from police for example. These settings are changed mostly for professional company vehicles as bus, ambulance etc.
AllowSundayDriving
Should mean only if the cars are spawning and driving around with no reason in Sunday, For example some services as postman are not working at Sunday so there is no reason to see their cars driving around. Yes Rockstar take care of details lol.
wheelScale
Defines the size of front wheels to get correctly looking tires blow up effect and allow you slightly more fit moded vehicle to the ground.
wheelScaleRear
Same as previous but for rear wheels only.
dirtLevelMin
Minimum allowed level of dirtiness while driving off-road.
dirtLevelMax
Same as previous but maximum level.
envEffScale
4 lines Min, Max, Min2 and Max2 which define reflections levels of vehicle.
damageMapScale
Should be scaling of damage map meaning the stretching and shrinking of the damage textures as scratch as there are default textures used in all vehicles.
damageOffsetScale
Should define the size of damage made on vehicle in same way as previous line do with textures.
diffuseTint
Ignore first 4 digits and with last 6 digits you can change window tint color using HEX color code.
steerWheelMult
Multiplication of steering wheel. For example lowered on off-road vehicles to make them harder to turn. But you can rather set properly values in handling.meta and this don’t matter then.
HDTextureDist
You remember how I wrote about game not loading +hi.ytd file when using a lot of models ? Ignoring the mods now, you can set here in what distance game load xxx.ytd instance of xxx+hi.ytd on purpose to don’t load all details while you are far away from vehicle.
lodDistances
Defines the distance where game load which LOD’s of model which are known as L0-L4. If the mod is missing these LOD, you can set all LOD values on higher to keep loading the closet one. For example in our Lamborghini model are all values set as 500 which means model probably don’t have proper LODs, but thanks to this, it will load vehicle from far anyway. Try to set first 3 values for example at 100 on our model and once you move a bit from model, it will disappear. Setting all these values high solve problem with missing LOD, but are not good for smooth gameplay while using lot of mods as it make game load all details of car even when you are far away = more cars may be around you = more cars have to be loaded with all details = higher probability to get crash or different game errors mostly with high detailed models used.
minSeatHeight
May be some minor changes in seat position as I never spotted any difference even while testing and changing this on purpose.
identicalModelSpawnDistance
As saying, define the distance that same models can spawn next to each other in your sight.
maxNumOfSameColor
Define how many of the cars with same color can be spawned.
defaultBodyHealth
Health of the car meaning how much damage you can make to the car before it blows up.
pretendOccupantsScale
Define the chance of passengers, for example for the bus is this value higher to make sure there is minimum chance to spawn empty bus.
visibleSpawnDistScale
Multiplier of spawning vehicle distance in traffic, so it makes some vehicles as aircraft possible to spawn a bit more far away ( useful for spawns in air ).
trackerPathWidth & weaponForceMult
Not sure as I never noticed any change in this values for any vehicle.
frequency
Chance of the car to spawn in their certain areas. Value is in percentage and even that vanilla ones are higher, I recommend set it max at 65 and lowering it depending on used mod size. The bigger vehicle model size is the lower chance to spawn you should put to avoid spawning lot of big sized models.
swankness
Define how cool is the vehicle for AI npc, which affect acts like peds taking picture of your vehicle or just telling you a compliments.
maxNum
Maximum number of spawning the same car in area. Same as the frequency, even the vanilla values are higher I recommend set this at no higher than 13 which spawn a pretty lot cars of same model and putting it down when the model size is bigger. This not only again avoid spawning a lot of big sized models but will improve variety a bit as well.
flags
Understand as labels. There is lot of labels defining different aspects of the vehicle for example if car is spawning in areas defined as rich or poor destinations, if it’s spawning on trailer, if the vehicle can have liveries, weapons and many, many more.
type
Define what type is the vehicle for example car, boat, bike plane etc.
plateType
Define if vehicle have generated licenses and where — front, back or both. This don’t define what license types are used, that is defined in carvariations data.
dashboardType
Define which layout of the vehicle’s dashboard and dashboard lights areused. Mostly if you forgot to change this on mod, dials may not work properly.
vehicleClass
Class of the vehicle is shown while entering vehicle and entering a Los Santos Customs if not turned off. This value matter during races as well, so by changing these you can enter off-road race with supersport for example.
wheelType
Define just which type of tuning wheels is used as default. Useful for advanced changes of spawning tuned vehicles in another files to choose exact tuning wheels used.
trailers
Define what trailers can vehicle be towing. Affect what trailers can be attached on your vehicle and what trailers can vehicle spawn with in traffic. You have to use model name here so you can set up attaching of addon trailers to vanilla vehicles as well.
additionalTrailer
This define the trailers that can be attached to the vehicle, but vehicle is not spawning with these trailers in the traffic.
drivers
Define which specific peds can spawn as drivers of this vehicle. If you leave it empty, any ped can spawn as driver.
extraIncludes
This is force spawning of extras on the car, but require changing <requiredExtras> on the same values. Combined with FLAG_EXTRAS_REQUIRE spawn random of these defined extras. Combined with FLAG_EXTRAS_ALL will spawn all defined extras. Combined with FLAG_EXTRAS_RARE will spawn defined extra just about 10% of the time, which is best way how to force-stop loading any extra.
doorsWithCollisionWhenClosed
Define which parts of the vehicle must remain to collide when closed. Mostly used on big vehicles as trucks.
driveableDoors
Should define let’s say if you can change the seats. For example in the helicopter with the gun at side where should be a door, by defining that doors model part here, you should be able to switch position in there and be shooting from the weapon. But it’s not making weapons at the roof of the vehicles working, that is defined as mentioned in ptfxAssetName.
bumpersNeedToCollideWithMap
Forces the vehicle bumpers to collide with the map if there is contact. May cause a vehicle to be entirely blocked by spike strips.
needsRopeTexture
As it’s telling define if the vehicle need to load rope texture sometime. For example normal car don’t need rope texture never, but tow car need while you start towing, some helicopters need it for action as police helicopter etc.
requiredExtras
Mentioned in <extraIncludes>
rewards
Define what reward you as player get once you enter the vehicle, for example any weapon. These data to choose from are defined in pickups.meta
cinematicPartCamera
Define which cinematic cameras are used for this vehicle.
NmBraceOverrideSet
Define details about vehicle axles. For common car is empty, you change this just for vehicles as truck, bikes etc.
buoyancySphereOffset
This should have to do something about the gravity affect. Some trucks or helis for example have negative Z axis value here which seems to me like the gravity have to push them a bit more to the ground as they are heavy, but airship have a big positive number which may mean the opposite, that gravity don’t affect this vehicle much.
buoyancySphereSizeScale
Same as the previous, should define how gravity affect the vehicle. Both of these lines are not changed in most vehicle.
pOverrideRagdollThreshold
Should define if and how can you ram things with this vehicle for example with the tank.
firstPersonDrivebyData
This might change passengers seats camera view.
Editing vehicles.meta
Now you know what line of vehicles.meta affect what assets in the game and what you need, could and want to change. But this is tutorial how to change these data, not only explanation so I will now write you which lines I always edit and recommend you to edit as editing some of them may cause more damage than goodness.
Get ready by opening vehicles.meta that we exported from mod into your working folder and by searching in OpenIV for vehicles.meta. You already know which locations we would need — both locations of mpexecutive, update folder and update archive. Open first location, right click on vehicles.meta and click ‘edit’ or use shortcut Ctrl+Enter. In the top of the window click on ‘Search’ or again use shortcut Ctrl+F. Search for Reaper and you see the starting lines of the vehicles data.
So what to change for proper working of the model as replacement ? Skip all the names and handlings as we keep it all with original names. I may learn you how to rename vehicle later in GXT2 file. Our Lambo mod don’t have convertible roof so we skip this part too. First line which we can change is audioNameHash. It’s optionable as the car will work without it but will have reaper sound, but mods author think that sound of Cheetah fit more the sound of this Lambo. It’s up on you if you believe him.
Next two lines Layout and coverBoundOffsets you have to change every time. Next line explosionInfo is optionable to change. In our case it’s the same but if you will be changing civilian car with big truck, that small explosion on big truck can look a bit weird. Next lines we are looking for are cameras so CameraName, aimCameraName, bonnetCameraName and povCameraName. Car could work without them but may have weird camera views in some situations so I recommend to change them if these lines are different. In our case just last two of them are different, so let’s change them.
Following lines which all are starting by FirstPerson and later ones which are starting Pov I recommend to change every time. I believe you don’t want to spend 5 minutes to check every value if it’s different or not. Another details is that there is sometime more or less lines depending on vehicle type and you want to have all lines that author recommend for the mod.
So in our vehicles.meta mark everything from FirstPersonDriveByIKOffset to PovRearPassengerCameraOffset including this mentioned lines and copy it. Now go to the OpenIV vehicles.meta and mark all lines starting from FirstPersonDriveByIKOffset to PovRearPassengerCameraOffset including this mentioned lines and paste there lines that you copied. In our case, the number of lines is the same, if there will not be, don’t worry it’s ok if you have now more or less lines.
Next line vfxInfoName is optionable to change. In our case it’s the same but if you will be changing vehicle which have exhaust at the back with moded vehicle that have exhaust for example on the side, you should change this or you will have exhaust at the side of the car but exhaust smoke at the back of the car.
Next setups of camera and what’s allowed I always skip as I mostly replace car with similar so I don’t replace for example Ambulance with sport car, so I keep these settings vanilla always. Moving to the lines starting by wheelScale to MaxNum.
Same as before on FirstPerson data, you don’t want to spend 5 minutes by checking what values are different and what not, but you want to change them as there may be little differences and car can be for example floating few millimeters over the road or similar small bugs. So copy these lines from our vehicles.meta and paste them over the same lines inside of OpenIV vehicles.meta. There can be sometime one line more as in our case. It’s ok because original data didn’t contain minSeatHeight but data for our mod was based on any newer model which contain this line.
Next line is Flags. In this line you can simply copy the ones from mod and use all of them, but I’m checking and editing them manually for 2 reasons. First is to make sure the vehicle will not make crashes during mission animations which can be caused by some flags sometimes and second reason is to keep realism as I mentioned before, I replace vehicles with similar models. So I don’t replace old rusty car with super car, so I keep flags like rich and poor how they was original, as some mod author may have their own opinion what car seems to be for rich people only or not.
You may have your own opinion and edit it by your own taste. That means in our case I personally would first edit our moded data which we have opened in notepad and rewrite average_car for original rich_car, delete spawn_on_trailer and add no_broken_down_scenario and count_as_facebook_driven. It doesn’t matter what order are flags wrote. Now when I edited flags from our mod I will copy them and replace the ones in OpenIV, so I will keep vanilla variety but with all assets of mod. For example we have there flag_has_livery which I can’t miss or otherwise, my liveries won’t work on mod.
Next line Type is again optionable. I keep replacing similar models, so for me it’s 99% the same, if you use different model of vehicle, you can change this. Next line is plateType. This is as well optionable, but I recommend you to change it because if original vehicle have license on both sides but our new vehicle will have place for license only for back, you don’t want front license details to spawn. It even couldn’t spawn as it don’t have defined place for it so make it easier for the game and edit this line. In our case it’s the same so we are ok to skip this.
Next line is dashboardType, as I mentioned in explanation, you always have to change this or your dials may not work. So let’s change it. VehicleClass is again optionable, but in my case it’s almost every time the same. WheelType is optionable as well as it affect only what type is default while customizing the vehicle, but I like to edit it if it’s different as in our case.
Trailers and additionalTrailers have to be everytime checked because if you are replacing truck and it is using for example baletrailer but you did change baletrailer before for totally different trailer, it may cause a lot of problems when it try to spawn in the traffic. You may not notice it but some trailers have different type of attaching into the truck. If this happen it may try to spawn together, then it will collide one to each other as the models don’t fit and you may see just random truck around you explode from ‘no reason’, but reason is what I explained you right now.
From following lines you have to check and edit as well these doorsWithCollisionWhenClosed, driveableDoors, bumperNeedToCollidateWithMap, needsRopeTexture, others are optionable to change. ExtraIncludes and requiredExtras are recommended to change, it may not stop your vehicle working, but it may miss some of the extras which may not be very important, but if they are there, they probably look good on that vehicle.
I personally keep drivers and rewards vanilla always. CinamticPartCamera you don’t have to care about. NmBraceOverrideSet is again not much important, but you should change it if it’s different. In our case we don’t change any of these lines.
FirstPersonDrivebyData are optionable to change as you may not have any problems with not changing these, but again I like to change these all the time when it’s different to make sure vehicle work as it was mentioned to. So in our case let’s copy <Item>STD_DOMINATOR_FRONT_LEFT</Item> and <Item>STD_DOMINATOR_FRONT_RIGHT</Item> and paste it in OpenIV vehicles.meta over the <Item>LOW_REAPER_FRONT_LEFT</Item> and <Item>LOW_REAPER_FRONT_RIGHT</Item>.
Sometime there may be more or less lines, you can replace them with no worries. Even in vehicles.meta inside of one location, there can be different amount of lines than in second location, so this way I always make sure, I keep the same lines in both vehicles.meta locations.
Don’t close it up yet. One more thing to go. Scroll at the start of the opened vehicles.meta file, just click anywhere and search for the reaper again. Now right from the search box you have 3 arrows, down, up and right. Click the one that aim at the top and it will take you at the last search result of reaper in this file which should always in any searching vehicle look like this <child>CAR_NAME</child>. So in our case you should see <child>reaper</child>.
In our vehicles.meta for Lambo we have <child>lamboreventon</child>, but we care about the line at top of this. The line, which start as <parent>. Copy this one line and paste on the place of the <parent> line over the <child>reaper in OpenIV.
What does this do ? This line will change what interior textures are used. Sometimes it don’t make any change if author of model put all interior textures inside of models .ytd file, but if he used any from other vanilla file and didn’t put them in his ytd, your interior may look nasty. So this line make sure that your interior was replaced properly as well.
Don’t forgot to click the ‘Save’ please ! Well that’s how to replace vehicles.meta data. Was it easy or not ? You know what ? No matter of your answer, you should now go to the next location of vehicles.meta for mpexecutive vehicles which include reaper and do this same steps there again so you’ll practice it once again (:
You did that ? Congrats then ! You properly replaced the vehicles data and your Lambo will work without crashing your game. BUT, if it does crash, let’s go back into both edited vehicles.meta and check all changed lines, you probably missed or added any character. Mostly if you miss any parenthesis or make double parenthesis like ‘<<type>’ it may cause your game crash in loading or after spawning a certain vehicle.
I believe your Lambo is working in the game with no problems right now. In next part we will check out the handling even that in our case handling is pretty ok. But try to replace sedan with pickup or even truck and you may experience uncontrollable vehicle.