Weaponizing vehicles
How to weaponize a custom vehicle
Summary
Published: Mar 29 2025 by MisterChedda Last documented edit: Mar 30 2025 by manavortex
This page will teach you how to turn a civilian car into a weaponized vehicle by copying the correct properties from a car that is already combat-ready.
Wait, this is not what I want!
Check Boe6's Guide: basic car from A to Z for how to add your own car from scratch
Check Windows & Doors opening + MountedWeapons clue for instructions on modifying the combat behaviour
Check Cheat Sheet: Vehicles and the surrounding pages for a list of vehicle-related things that you might want to look up
Prerequisites
Step 0: Add the reference files
Decide which car you want to stealborrow the weapon from, then add its .ent and .app file to your project for easier reference (you can look them up on Cheat Sheet: Vehicles).
For this project, we're using the Hellhound, and the corresponding files are
These will be called "reference files" through the rest of the guide.
Step 1: Changing the .ent file
This file is where your game looks up your car when spawning it from its record. You can learn more about Entity: .ent files on the link, but you don't have to!
1. Changing the car's type
We need to change your car's type to a weaponized vehicle. Here's how we do that:
Open your car's
.ent
file and the reference file, and set the editor difficulty mode to "advanced".Select
entity
in the reference file. Right-click and select "Copy Handle".Select
entity
in your car's file. Right-click and select "Paste as Handle".This will only be available in Wolvenkit ≥ 16.2 or the Nightly. If you're on an older version, you'll have to do the edit via JSON.
Save the file (Hotkey: Ctrl+S)
2. Adding the weapon slots
In both files, open the
components
array and find thevehicle_slots
component. It should be close to the top of the list.In the reference file, scroll to the bottom of the list and find the
entSlot
entries corresponding to the car's weapons.Select them, then right-click and copy the selection.
In your file, select either the list or an item in the list, and paste the selection here.
Save the file.
3. Adding the attachment slots
In the reference
.ent
, find thegameAttachmentSlots
component (it will probably be calledAttachmentSlots
).Copy it and paste it into your .ent file

4. Adding the effect
In the reference file, search for effect components. Look for
entEffectSpawnerComponent
s. In the hellhound, this is calledfx_explosion
.Select and copy it.
Paste it into your car
.ent
'scomponents
array.Save the file.
Step 2: Changing the tweak record
This file is used by TweakXL to make changes to the game's static database — for example, changing a car. If you want to learn more about tweak modding, you can check out Tweak modding: Guides, but be vareful. This rabbit hole runs deep.
.yaml
files use indentation (the number of spaces at the beginning of a line) to organize entries in groups. This is easy to break!
If you run into problems, you can check your file by validating it (e.g. on yamllint.com). If that doesn't help, you can check red4ext/plugins/TweakXL/TweakXL.log
for error messages.
1. Adding the file
You can skip this step if you already have a yaml file.
In Wolvenkit's Tweak Browser, find the car's record that you want to change
Right-click and select "Add TweakXL override"
Do the same for the record that you're
stealingcopying from.In your project's Resources section, find the .yaml file and look at it. Then, delete all properties but the following:
vehDataPackage
weapons
(your car might not have it)
2. Adding the weapons
Find the
weapons
array in your reference yaml and copy it to your own files.You can delete those entries that you don't want
Delete the reference yaml, you don't need it anymore!
3. Changing the combat behavior
Now, you'll have to tell your car that it's a weaponized vehicle. Do that by modifying the vehDataPackage
. (Thanks to boe6 for pointing it out!)
You can do this in-line:
Step 3: Changing the .app file
This file is loaded by the .ent file, and contains an item's different appearances. You can learn more about Appearance: .app files at the link, but you don't have to.
Open your car's .app
file and the reference .app
file.
1. Adding visual tags
For every appearance in your .app file, you need to add the combat-related visual tags (you can ignore faction tags such as Nomad
or NCPD
).
They look like this:

2. Adding the actual weapons
From your reference .app, find the weapon's mesh component(s) (you can for example filter for
turret
):

Copy them
Paste them into your own car's
.app
appearance(s)Your car now has weapons.
3. Adjusting the weapon positions
To find the right offsets, check Placing lights and effects. The process is the same here - although the offsets are finicky and you'll probably end up falling back to trial&error.
You can adjust your wepaon's position relative to the car in two places:
The weapon's origin
In the .ent
file's vehicle_slots
slot (Step 1.2), find the relativePosition
and relativeRotation
properties. These control where your rockets / your gunfire is coming from.
In the mesh component that you just copied (Step 3.2,
localTransform
property)
The weapon mesh's position
In the .app
file inside the ent(Physical)MeshComponent
s that you have copied:
change the
localTransform
propertymake sure that the
parentTransform
points at the bindNamevehicle_slots
and the slotNameBase
If parts of your weapon mesh are disconnected and/or on the ground
That is becauuse they're rigged to a bone that your car does not have. The easiest way to fix this is to export their mesh into Blender and (in Edit mode) assign all weights to the first group.
You can check Weight Painting for Gonks for more detail about that.
Making the weapons move
To be done
Delete the reference files
Before you release your mod, do not forget to delete the reference files that you added in step 0. Never include files in your .archive that don't need to be there!
Last updated
Was this helpful?