Necessary Files
Replacement vehicles usually lack the necessary files to function as addon vehicles. Sometimes they just include a new texture pack, sometimes they include a new model and textures but no data files. Depending on what you already have, different files need to be created.
Scenario 1: Textures only
This is the scenario where you need to do the most work. Since there is no model data to work with, but you need a model for an addon car, you first need to export the model yft from the game. So if you have say police2.ytd for a new texture pack, you need to locate and export police2.yft and export it. Usually the mod's readme has the location of where to put the texture. In the same location you will find the model file. Export it and put it in the same folder your texture is in. Now you have Scenario 2.
Scenario 2: Model and texture file
Equipped with a model and a texture file, all there is left is telling the game about the new vehicle. For this, it needs at least a new entry in the vehicles.meta file. At the end of the post you can find an example vehicles.meta entry where all you need to change is the name of the vehicle to match the name of the texture and model files. Since replacement files are supposed to replace existing files, you should rename the model and texture file to a new and unused name first, such as police6. Use this name in the vehicles.meta file then.
Scenario 3: Model, texture and data files
Some replacement models might offer a replacement handling or vehicles.meta entry. This makes it even easier for us. Simply copy the entry and move it to a new file only containing that one entry. Then adjust the name in the data file to the name of your model, such as police6.
You now have all the files necessary to load a vehicle as an addon vehicle. Check out our guide here on how to proceed.
Vehicles.meta Template
<?xml version="1.0" encoding="UTF-8"?> <CVehicleModelInfo__InitDataList> <residentTxd>vehshare</residentTxd> <residentAnims /> <InitDatas> <Item> <modelName>ninef</modelName> <txdName>ninef</txdName> <handlingId>NINEF</handlingId> <gameName>NINEF</gameName> <vehicleMakeName>OBEY</vehicleMakeName> <expressionDictName>null</expressionDictName> <expressionName>null</expressionName> <animConvRoofDictName>null</animConvRoofDictName> <animConvRoofName>null</animConvRoofName> <animConvRoofWindowsAffected /> <ptfxAssetName>null</ptfxAssetName> <audioNameHash /> <layout>LAYOUT_LOW</layout> <coverBoundOffsets>NINEF_COVER_OFFSET_INFO</coverBoundOffsets> <explosionInfo>EXPLOSION_INFO_DEFAULT</explosionInfo> <scenarioLayout /> <cameraName>DEFAULT_FOLLOW_VEHICLE_CAMERA</cameraName> <aimCameraName>DEFAULT_THIRD_PERSON_VEHICLE_AIM_CAMERA</aimCameraName> <bonnetCameraName>VEHICLE_BONNET_CAMERA_MID_NEAR</bonnetCameraName> <povCameraName>REDUCED_NEAR_CLIP_POV_CAMERA</povCameraName> <FirstPersonDriveByIKOffset x="0.000000" y="-0.055000" z="-0.050000" /> <FirstPersonDriveByUnarmedIKOffset x="0.000000" y="-0.100000" z="0.000000" /> <FirstPersonProjectileDriveByIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonProjectileDriveByPassengerIKOffset x="0.000000" y="-0.045000" z="0.015000" /> <FirstPersonProjectileDriveByRearLeftIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonProjectileDriveByRearRightIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonDriveByLeftPassengerIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonDriveByRightPassengerIKOffset x="0.000000" y="-0.055000" z="-0.020000" /> <FirstPersonDriveByRightRearPassengerIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonDriveByLeftPassengerUnarmedIKOffset x="0.000000" y="0.000000" z="0.000000" /> <FirstPersonDriveByRightPassengerUnarmedIKOffset x="0.000000" y="-0.100000" z="0.000000" /> <FirstPersonMobilePhoneOffset x="0.130000" y="0.211000" z="0.580000" /> <FirstPersonPassengerMobilePhoneOffset x="0.136000" y="0.156000" z="0.463000" /> <PovCameraOffset x="0.000000" y="-0.200000" z="0.695000" /> <PovCameraVerticalAdjustmentForRollCage value="0.000000" /> <PovPassengerCameraOffset x="0.000000" y="0.000000" z="0.000000" /> <PovRearPassengerCameraOffset x="0.000000" y="0.000000" z="0.000000" /> <vfxInfoName>VFXVEHICLEINFO_CAR_GENERIC</vfxInfoName> <shouldUseCinematicViewMode value="true" /> <shouldCameraTransitionOnClimbUpDown value="false" /> <shouldCameraIgnoreExiting value="false" /> <AllowPretendOccupants value="true" /> <AllowJoyriding value="true" /> <AllowSundayDriving value="true" /> <AllowBodyColorMapping value="true" /> <wheelScale value="0.268000" /> <wheelScaleRear value="0.268000" /> <dirtLevelMin value="0.000000" /> <dirtLevelMax value="0.450000" /> <envEffScaleMin value="0.000000" /> <envEffScaleMax value="1.000000" /> <envEffScaleMin2 value="0.000000" /> <envEffScaleMax2 value="1.000000" /> <damageMapScale value="0.600000" /> <damageOffsetScale value="1.000000" /> <diffuseTint value="0x00FFFFFF" /> <steerWheelMult value="1.000000" /> <HDTextureDist value="5.000000" /> <lodDistances content="float_array"> 15.000000 30.000000 60.000000 120.000000 500.000000 500.000000 </lodDistances> <minSeatHeight value="0.812" /> <identicalModelSpawnDistance value="20" /> <maxNumOfSameColor value="1" /> <defaultBodyHealth value="1000.000000" /> <pretendOccupantsScale value="1.000000" /> <visibleSpawnDistScale value="1.000000" /> <trackerPathWidth value="2.000000" /> <weaponForceMult value="1.000000" /> <frequency value="30" /> <swankness>SWANKNESS_4</swankness> <maxNum value="2" /> <flags>FLAG_BOOT_IN_FRONT FLAG_SPORTS FLAG_SPAWN_ON_TRAILER FLAG_RICH_CAR FLAG_NO_BROKEN_DOWN_SCENARIO FLAG_HAS_INTERIOR_EXTRAS</flags> <type>VEHICLE_TYPE_CAR</type> <plateType>VPT_BACK_PLATES</plateType> <dashboardType>VDT_SUPERGT</dashboardType> <vehicleClass>VC_SPORT</vehicleClass> <wheelType>VWT_HIEND</wheelType> <trailers /> <additionalTrailers /> <drivers /> <extraIncludes /> <doorsWithCollisionWhenClosed /> <driveableDoors /> <bumpersNeedToCollideWithMap value="false" /> <needsRopeTexture value="false" /> <requiredExtras /> <rewards /> <cinematicPartCamera> <Item>WHEEL_FRONT_RIGHT_CAMERA</Item> <Item>WHEEL_FRONT_LEFT_CAMERA</Item> <Item>WHEEL_REAR_RIGHT_CAMERA</Item> <Item>WHEEL_REAR_LEFT_CAMERA</Item> </cinematicPartCamera> <NmBraceOverrideSet /> <buoyancySphereOffset x="0.000000" y="0.000000" z="0.000000" /> <buoyancySphereSizeScale value="1.000000" /> <!-- Example of adding extra vfx water samples <additionalVfxWaterSamples> <Item> <position x="2.0" y="0.0" z="0.0" /> <size value="0.8" /> </Item> <Item> <position x="-2.0" y="0.0" z="0.0" /> <size value="0.8" /> </Item> <Item> <position x="0.0" y="0.0" z="2.0" /> <size value="1.0" /> </Item> </additionalVfxWaterSamples> --> <pOverrideRagdollThreshold type="NULL" /> <firstPersonDrivebyData> <Item>LOW_RAPIDGT_FRONT_LEFT</Item> <Item>LOW_RAPIDGT_FRONT_RIGHT</Item> </firstPersonDrivebyData> </Item> </InitDatas> <txdRelationships> <Item> <parent>vehshare</parent> <child>vehicles_supergt_interior</child> </Item> <Item> <parent>vehicles_supergt_interior</parent> <child>ninef</child> </Item> </txdRelationships> </CVehicleModelInfo__InitDataList>
Recommended Comments