Change how a gun feels to shoot¶
Everything that makes a gun feel light or heavy lives in one Data Asset. You do not open a graph to change any of it.
The four that ship are in Content/TheLastTemplate/Blueprints/DataAssets/Weapons/Childs/:
| Data Asset | Weapon Display Name |
Shape |
|---|---|---|
DA_Pistol_01 |
Semi-Auto Pistol | One shot per click, 16 rounds |
DA_Pistol_02 |
Revolver | Same body, Automatic Fire turned on |
DA_Shotgun_01 |
Pump Shotgun | 8 pellets, 8 shells, wide |
DA_Shotgun_02 |
Short Shotgun | Same, tighter start, shorter range |
Open one, change a number, press play. The values below are the shipped ones, so you always have two reference points to aim between.
Rate of fire¶
| Field | What it does | Pistols | Shotguns |
|---|---|---|---|
Fire Rate |
Seconds between two shots | 0.2 |
0.75 |
Automatic Fire |
Keep firing while the button is held | off, on for DA_Pistol_02 |
off |
Automatic Fire Rate |
Seconds between shots while held | 0 / 0.05 |
0 |
Clip Size |
Rounds before a reload | 16 |
8 |
Automatic Fire Rate is only read when Automatic Fire is on, so leaving it at 0 on a semi-automatic gun is correct and changes nothing.
Pellets and spread¶
Amount Bullet Per Shoot is how many traces one shot sends. It is 1 on both pistols and 8 on both shotguns. That single field is the whole difference between a rifle and a scattergun.
| Field | What it does | Pistols | DA_Shotgun_01 |
DA_Shotgun_02 |
|---|---|---|---|---|
Ammo Spread |
How wide a shot starts | 50 |
200 |
100 |
Max Ammo Spread |
The widest it can get while you keep firing | 500 |
1000 |
1000 |
Spread Recovery Speed |
How fast it settles back once you stop | 5 |
5 |
5 |
These are not degrees. Treat them as a scale of their own and calibrate against the four shipped guns: 50 is a tight pistol, 200 is a wide shotgun.
Recoil and camera shake¶
| Field | What it does | Pistols | Shotguns |
|---|---|---|---|
Recoil Pitch Amount |
How far the camera kicks up | 10 |
20 |
Recoil Yaw Amount |
How far it kicks sideways | 2 |
5 |
Camera Shake |
The shake class played on each shot | CS_ShootCamera |
CS_ShootCamera_Heavy |
Force Camera Shake |
How strongly that shake is played | 3 / 2 |
8.5 |
Both shake classes are in Content/TheLastTemplate/Blueprints/Misc/CameraShakes/. CS_ShootCamera is the short one, CS_ShootCamera_Heavy the long, wide one. To take the shake off one gun without touching the class, set Force Camera Shake to 0.
There is no recoil recovery field. The Data Asset only exposes a recovery speed for spread, so if you want a different return, that is the one lever the panel gives you.
Aiming¶
| Field | What it does | Pistols | Shotguns |
|---|---|---|---|
Camera FOV |
Field of view while the gun is out | 90 |
90 |
Zoom Value |
Field of view while aiming, so aiming narrows from one to the other | 50 |
50 |
Aim Fire Delay |
Seconds after you raise the gun before it will fire | 0.1 |
0.3 |
Crosshair Display Delay After Aim |
Seconds before the crosshair appears | 0.2 |
0.2 |
Aim Movement Speed |
Movement speed multiplier while aiming | 0.65 |
0.65 |
Spring Arm Right |
Shoulder offset of the camera for this gun | 0, 40, 15 |
0, 40, 15 |
Spring Arm Right Crouching |
Same offset while crouched | 0, 40, -10 |
0, 40, -10 |
Enable Aim Immersive Camera |
Extra camera movement while aiming | on | on |
Aim Camera Intensity |
How much of it | 1.5 |
2 |
Aim Fire Delay is the cheapest way to make a gun feel heavy. The shotguns take three times as long as the pistols to be ready, and that alone reads as weight before any recoil is felt.
Range and damage¶
| Field | What it does | Pistols | Shotguns |
|---|---|---|---|
Bullet Max Distance |
How far a shot reaches, in centimetres | 5000 |
5000 / 4000 for DA_Shotgun_02 |
Base Damage |
Damage carried by one hit | 30 |
40 |
5000 is fifty metres. Past that distance the shot simply does not reach.
Because a shotgun sends eight traces, how many of them land decides how much a shot takes off. Where the hit lands matters too: the bone multipliers are not on the weapon, they are described in How damage works.
Warning
Workbench upgrades recompute fire rate, spread, recoil, magazine size, range and damage from the Data Asset at runtime. A gun you tuned to feel right unupgraded will not feel the same once the player has bought two levels of something. Test both. See Add a weapon upgrade.
Sound, muzzle flash and montages¶
| Field | Pistols | Shotguns |
|---|---|---|
Weapon Fire Sound |
SC_Pistol_Fire |
SC_Shotgun_Fire |
Empty Sound |
SC_DryFire |
SC_DryFire |
Magazine Drop Sound |
empty | empty |
Muzzle Flash Effect |
NS_Muzzle_Pistol |
NS_Muzzle_Shotgun |
Muzzle Flash Scale |
2, 2, 2 |
3, 3, 3 |
Magazine Drop Sound ships empty on all four guns. Fill it if you want the magazine to be heard hitting the floor.
There are two sets of montages. The Character ... ones play on the player or the AI holding the gun. The Weapon ... ones play on the gun's own skeletal mesh, for a slide or a bolt.
| Field | Pistols | Shotguns |
|---|---|---|
Character Fire Animation |
AM_Character_Pistol_Fire |
AM_Character_Shotgun_Fire |
Character Empty Animation |
AM_Character_Pistol_EmptyFire |
AM_Character_Shotgun_EmptyFire |
Character Reload Animation |
AM_Character_Pistol_Reload |
AM_Character_Shotgun_Reload |
Character Equip Animation |
empty | empty |
Weapon Fire Animation |
AM_Pistol_Fire |
empty |
Weapon Empty Animation |
empty | empty |
Weapon Reload Animation |
empty | empty |
Only the pistols use a weapon montage, for the slide. Every empty field above is a field you may leave empty: a gun whose mesh has no moving part needs none of them.
Weapon Overlay picks the upper body pose the character holds. Pistol on the two pistols, Shotgun on the two shotguns. It changes how the character stands and walks with the gun, so it is part of the feel even though it is not a number.
Shells and magazines¶
| Field | What it does | Pistols | Shotguns |
|---|---|---|---|
Ejected Shell |
The actor spawned per shot | BP_Eject_Ammo_Pistol_01 |
BP_Eject_Ammo_Shotgun_01 |
Ejection Force |
How hard it is thrown | 300 |
130 |
Shell Ejection Rotation Force |
How hard it spins | 60, 5000, 500 |
65, -50, 500 |
Eject Magazine Class |
The actor dropped on reload | BP_Eject_Magazine_Pistol_01 |
empty |
Magazine Ejection Force |
How hard it is dropped | 250 |
0 |
Magazine Ejection Rotation Force |
How hard it spins | 65, -50, 500 |
0, 0, 0 |
Ejected Magazine Socket |
Socket the magazine leaves from | MagazineEject |
empty |
Left Hand Magazine Socket |
Socket the fresh magazine is held in | InsertMunitionPistolSocket |
InsertMunitionShotgunSocket |
The shotguns leave the magazine fields empty on purpose: a pump shotgun has nothing to drop. If you leave Eject Magazine Class empty, nothing spawns and the other magazine fields are ignored.
The classes themselves are in Content/TheLastTemplate/Blueprints/Weapons/Ejects/. A shell is a small actor with one mesh, so making a bigger brass for a rifle means duplicating BP_Eject_Ammo_Pistol_01 and swapping the mesh.
The fields that only matter when an AI holds the gun¶
The same Data Asset is read whether the player or an NPC carries the gun. These seven fields are ignored on the player.
| Field | DA_Pistol_01 |
DA_Shotgun_01 |
|---|---|---|
AI Spread Multiplier |
10 |
20 |
AI Engage Range |
2000 |
600 |
AI Preferred Range |
700 |
350 |
AI Burst Count |
3 |
1 |
AI Damage Multiplier |
0.7 |
0.5 |
AI Damage Multiplier to Player |
0.2 |
0.3 |
An armed NPC is deliberately much less accurate than you: the spread is multiplied by ten or twenty, and the damage it does to you is cut to a fifth or a third. Raise AI Damage Multiplier to Player and a shotgun NPC becomes lethal very quickly. The rest of the ranged AI behaviour is on Give an AI a gun and upgrades.
Three feels, from what already ships¶
| You want | Duplicate | Then move |
|---|---|---|
| A light sidearm | DA_Pistol_01 |
Fire Rate and Aim Fire Delay down, Force Camera Shake down, Ammo Spread down |
| A heavy shotgun | DA_Shotgun_01 |
Amount Bullet Per Shoot and Ammo Spread up, Fire Rate up, Force Camera Shake up, Camera Shake on CS_ShootCamera_Heavy |
| A fast automatic | DA_Pistol_02 |
Automatic Fire stays on, Automatic Fire Rate down for a faster gun, Max Ammo Spread up so long bursts open out, Recoil Pitch Amount down so the climb stays readable |
Change one field at a time and play. Recoil, shake and spread all pull in the same direction, and moving three of them at once usually overshoots.