Avenger Weapon Reference
The Avenger is a Rare secondary pistol whose complete data definition lives in a single .dat asset file. This article is a field-by-field reference for modders who need to read, verify, or override the values that Unturned loads at runtime. Every number and table row on this page comes directly from the asset definition. Nothing is estimated, rounded, or inferred from gameplay observation. When you open Avenger.dat in a text editor, these are the lines you see, and this article explains what each line tells the engine to do.
The Avenger is one of the more widely distributed pistols in the game files. It appears in 23 spawn tables across six different maps, with weights ranging from a guaranteed 100.000% in dedicated weapon pools down to 1.514% in broad general loot pools. Understanding how those weights work, how the damage values interact with hit zones, and which flags enable which behaviours is the purpose of this article.
Asset identity
Unturned identifies every item by three separate keys that serve different purposes in the engine. The asset name is a human-readable label stored in the file header. The item ID is a numeric index used at runtime for commands, save files, and spawn tables. The GUID is a long-term stable identifier that persists across game updates and is used by mods and external tools for reliable cross-referencing.
| Key | Value |
|---|---|
| Asset name | Avenger |
| Item ID | 1021 |
| GUID | 6f97c1d2b4fd4aba8f0282f369dd9758 |
| Rarity | Rare |
| Slot | Secondary |
| In-game description | Italian pistol chambered in Avenger ammunition. |
The asset name Avenger is what the game engine reads from the .dat file when loading the item. It is also the directory name the engine expects: the Avenger lives at Bundles/Items/Guns/Avenger/ in the game files, and the directory name must match the asset name or the engine will not find the associated model, texture, and sound files. When a modder creates a new weapon by copying the Avenger, they must rename both the .dat file's asset name field and the directory containing it.
The item ID 1021 is the numeric identifier. This number appears in save files when the game serialises a player's inventory to disk. It is what server administrators type after /give to spawn the weapon: /give 1021. It is what spawn tables store in their SpawnID field. It is what plugins and mods use in code to reference the weapon. The item ID is the runtime handle; the asset name and GUID are supplementary.
The GUID 6f97c1d2b4fd4aba8f0282f369dd9758 is a 32-character hexadecimal string generated when the asset was first created. GUIDs are guaranteed unique across all Unturned content ever produced. If the developers add new items and the Avenger's item ID shifts in a future patch (which can happen when items are reordered in the registry), the GUID remains unchanged. External tools like loot-map visualisers, spawn-table editors, and wiki scrapers use the GUID as the definitive identifier because it is stable.
The Rare rarity field is a human-readable label stored on the asset. It is read by the game's UI system to colour-code the item's name in the inventory (Rare items typically get a blue or purple text colour depending on the UI theme). It is used by admin panels to group items by tier. It does not control drop odds. A loot table does not care whether the weapon it references is Rare or Common; it only cares about the weight integer assigned to that item's SpawnID within the table. Rarity is a cosmetic classification layered on top of the spawn-weight system, and the two are entirely decoupled in the engine.
The Secondary slot field places the Avenger in the pistol/handgun equipment slot (hotbar slot 2 by default). The slot field controls three things: which hotbar key the weapon binds to, which character animations play (pistol draw, pistol holster, pistol idle, pistol fire), and which inventory restrictions apply (a Secondary weapon cannot be equipped in the Primary slot). Changing the slot field from Secondary to Primary would move the weapon to the long-arm slot, change its animations, and change its hotbar binding.
The in-game description is a localised string. The text "Italian pistol chambered in Avenger ammunition." appears in the inventory tooltip when the player hovers over the weapon. The description is stored in a localisation table keyed to the item ID, not in the .dat file directly (though the .dat file may contain a reference to the localisation key). Changing the description does not affect any gameplay behaviour. Modders should edit the localisation table entry, not add a "description" field to the .dat file.
Ballistics
The ballistics block is a group of eight fields that define the projectile's behaviour in space, the weapon's fire cycle timing, and the ammunition system connections. These fields are read once when the weapon is equipped and are referenced by the engine on every frame a shot is fired. They are the foundation of every ranged weapon asset.
| Field | Value |
|---|---|
| Range | 100 |
| Firerate | 4 |
| Action | Trigger |
| Caliber | 23 |
| Muzzle | 3 |
| Magazine | 1022 |
| Ammo_Min | 3 |
| Ammo_Max | 13 |
Range governs the maximum distance in game units at which the projectile will register a hit. When the player pulls the trigger, the engine performs a raycast from the weapon's muzzle position in the direction the player is aiming. The raycast travels exactly Range game units and then terminates. If a valid hitbox (player, zombie, animal, vehicle, or destructible object) is intersected by the ray within that distance, the hit registers and the damage calculation runs. If the ray reaches its maximum distance without intersecting a valid hitbox, the engine plays an impact effect on the world geometry at the ray's endpoint (a dust puff, a spark, or a bullet hole decal) and no damage is dealt.
A range of 100 is typical for a secondary weapon. The Avenger can engage targets at medium distance but is outranged by primary rifles (which typically have ranges of 125 to 200 or higher). A modder who wants a longer effective distance changes this integer to a higher value. A modder creating a close-quarters-only variant reduces it to 50 or lower. The Range field does not affect damage drop-off (there is no damage falloff over distance in standard Unturned; the weapon deals full damage at any point within its range). It is purely a maximum-distance cutoff.
Firerate is an internal rate-of-fire value, expressed as a tick-count delay. The engine runs at a fixed tick rate (the default Unturned tick rate, which is determined by server configuration). When a shot is fired, the engine sets a cooldown counter to the value of Firerate. Each tick, the counter decrements by one. When it reaches zero, the weapon is ready to fire again. A larger Firerate value means more ticks must pass, which means a longer real-world delay between shots.
At 4, the Avenger has a relatively short fire cooldown. For comparison, the Desert Falcon uses 10 and the Bluntforce uses 40. The Avenger cycles faster than both. The important thing to understand about Firerate is that it is a raw engine integer, not a rounds-per-minute or shots-per-second value. Converting Firerate to a real-world time requires knowing the server's exact tick rate, which can vary between servers. Modders should compare Firerate values within the game's own value system rather than trying to translate them to real-world measurements.
Action is set to Trigger. This is the standard action type used by semi-automatic pistols and most automatic weapons. The Action field controls the animation cycle that plays between shots. Trigger is the simplest action type: it plays a firing animation, applies recoil, spawns the muzzle flash, and starts the Firerate cooldown. There is no additional animation lockout beyond the Firerate delay. Other action types (Pump, Bolt, Break) introduce mandatory animation cycles that must complete before the Firerate cooldown even begins, creating longer effective delays between shots.
The Action field by itself does not control whether a weapon is semi-automatic or fully automatic. That distinction comes from the presence or absence of the Auto flag (discussed in the flags section). A weapon with Action: Trigger and only the Semi flag fires one shot per trigger pull. The same weapon with Action: Trigger and the Auto flag added fires continuously while the trigger is held. The Action field and the fire-mode flags are independent systems that the engine layers together.
Caliber is 23. This is the internal ammunition type index. The engine uses the Caliber field as a matching key between a weapon and its magazines. When the player presses the reload key, the engine searches the player's inventory for a magazine item whose Caliber field matches the weapon's Caliber field. If a matching magazine is found, the reload proceeds. If no matching magazine is found, the reload fails and (typically) a "no ammo" sound plays.
Caliber indices are arbitrary integers. The number 23 has no inherent ballistic meaning; it is simply the index assigned to the Avenger's ammunition family during development. The magazine asset (item ID 1022) also carries Caliber 23, as does the ammunition box that supplies loose rounds of Avenger ammunition. A modder creating a new magazine for the Avenger must set the magazine's Caliber to 23. A modder creating a new weapon that should share the Avenger's ammunition pool must set the weapon's Caliber to 23 and reference a magazine that also has Caliber 23.
Muzzle is 3. This is the muzzle-flash effect index. The engine maintains a table of muzzle flash prefabs, each identified by an integer index. When the weapon fires, the engine looks up index 3 in this table and instantiates the corresponding muzzle flash effect at the weapon's muzzle socket position. The effect is a particle system (flame, smoke, light) that plays for a brief duration and then self-destructs.
Different Muzzle values select different visual effects. The Avenger, Cobra, and Calling Card all use Muzzle 3, which suggests they share the same muzzle flash prefab. The Bluntforce uses Muzzle 4. Modders who want a different visual effect change this number to point to a different prefab index. Modders who create a custom muzzle flash effect assign it a new index and then point the weapon's Muzzle field to that index.
Magazine is 1022. This is the item ID of the magazine that spawns attached to the weapon. When the game spawns an Avenger in the world (through a loot table roll or a /give command), it creates two item instances: the Avenger itself (item ID 1021) and the magazine (item ID 1022). The magazine is attached to the weapon as a child item. If the magazine is detached or discarded, the weapon becomes empty and cannot fire until a new magazine with Caliber 23 is attached.
The magazine asset is a separate .dat file stored in Bundles/Items/Magazines/ (or the mod's equivalent path). It has its own fields: capacity, caliber, ammo type, and possibly spawn rules. Changing the Avenger's Magazine field to a different item ID changes which magazine the weapon spawns with. The replacement magazine must have Caliber 23, or the weapon will accept the magazine on spawn but will not be able to load ammunition from it.
Ammo_Min and Ammo_Max control the ammunition fill amount when the magazine is created alongside the weapon during a world spawn. The game generates a random integer in the inclusive range from Ammo_Min to Ammo_Max. A freshly spawned Avenger magazine contains between 3 and 13 rounds.
These fields are stored on the weapon asset, not on the magazine asset. They only apply when the magazine is created as an attachment to the weapon during the spawn event. If a magazine is spawned independently from its own loot table entry, it uses its own fill rules. If a player finds a loose Avenger magazine on a shelf, that magazine's ammunition count is determined by the magazine's own Ammo_Min and Ammo_Max fields, not by the weapon's.
A modder who wants every found Avenger to start with exactly 8 rounds sets both Ammo_Min and Ammo_Max to 8. A modder who wants a wider variance sets Ammo_Min to 1 and Ammo_Max to 20. The range should not exceed the magazine's capacity (otherwise the game would attempt to fill the magazine beyond its maximum, which would either clamp to capacity or cause an error depending on the engine version).
Player damage
The player damage block defines the base damage value and a set of four per-hit-zone multipliers. These values determine how much damage the weapon deals when a projectile hits a player entity. The engine checks which hitbox the raycast intersected, looks up the corresponding multiplier, multiplies the base damage by it, and subtracts the result from the target's current health.
| Field | Value |
|---|---|
| Player_Damage | 32 |
| Player_Leg_Multiplier | 0.6 |
| Player_Arm_Multiplier | 0.6 |
| Player_Spine_Multiplier | 0.8 |
| Player_Skull_Multiplier | 1.1 |
Player_Damage of 32 is the raw integer stored in the .dat file. When a projectile hits a player hitbox, the engine first checks whether the hitbox corresponds to a named zone in the multiplier list. If it does, the base damage is multiplied by that zone's multiplier. If the hitbox does not match any named zone (for example, a generic body hitbox that is not specifically assigned to leg, arm, spine, or skull), the base damage is used as-is with a multiplier of 1.0.
The skeleton hitbox zones are defined by the player model's rig. The leg zone covers the femur and tibia hitboxes. The arm zone covers the humerus, radius, and ulna hitboxes. The spine zone covers the vertebral column and ribcage hitboxes. The skull zone covers the cranium hitbox. Not all player models have all four zones; some custom models use a simplified two-zone or three-zone setup. The engine maps the hitbox name to the multiplier name: a hit on a bone tagged "Spine" looks up Player_Spine_Multiplier.
The multiplier values create a damage hierarchy. The skull multiplier of 1.1 increases damage by 10% above base, rewarding headshots. The spine multiplier of 0.8 reduces damage to 80% of base on torso shots. The leg and arm multipliers at 0.6 reduce damage to 60% of base on limb shots. The leg and arm values are equal on the Avenger (both 0.6), which is the standard pattern for pistols.
The computed per-zone damage values (base multiplied by multiplier) are:
| Hit zone | Multiplier | Damage (base 32) |
|---|---|---|
| Skull | 1.1 | 35.2 |
| Spine | 0.8 | 25.6 |
| Arm | 0.6 | 19.2 |
| Leg | 0.6 | 19.2 |
These computed values are the actual numbers the engine subtracts from the target's health. The health system uses floating-point values internally, so the decimal values (35.2, 25.6, 19.2) are stored and subtracted as decimals. The displayed health in the UI may be rounded to an integer, but the actual health tracking is at floating-point precision.
A modder adjusting damage balance has two approaches. To change the overall effectiveness of the weapon, change Player_Damage. This affects all hit zones proportionally. To change the relative importance of hitting specific zones, change an individual multiplier. Raising Player_Spine_Multiplier from 0.8 to 0.9 makes torso shots deal 28.8 damage instead of 25.6, without affecting headshots or limb shots. Lowering Player_Skull_Multiplier from 1.1 to 1.05 reduces the headshot bonus from 10% to 5%.
The multiplier values interact with the base damage multiplicatively. A small change to a multiplier on a weapon with a high base damage has a larger absolute effect than the same multiplier change on a weapon with a low base damage. On the Avenger (base 32), changing the skull multiplier from 1.1 to 1.2 adds 3.2 damage to headshots. On the Desert Falcon (base 80), the same multiplier change adds 8 damage.
Zombie damage
The zombie damage block is a separate and independent set of values. The engine checks the target entity type when a hit registers. If the target is tagged as a zombie entity, the engine uses the zombie damage block. If the target is a player, it uses the player block. If the target is an animal, it uses the animal block. The three blocks can carry entirely different values.
| Field | Value |
|---|---|
| Zombie_Damage | 99 |
| Zombie_Leg_Multiplier | 0.3 |
| Zombie_Arm_Multiplier | 0.3 |
| Zombie_Spine_Multiplier | 0.6 |
| Zombie_Skull_Multiplier | 1.1 |
Zombie_Damage of 99 is over three times the player base of 32. This is a deliberate design choice visible across multiple secondary weapons in Unturned. The Avenger, Cobra, and Calling Card all share a zombie base of 99 despite having different player bases (32, 25, and 33 respectively). The developers applied a standard zombie damage template to multiple secondaries. The template value of 99 ensures sidearms remain effective against AI enemies without making them competitive with primary rifles against players.
The zombie multipliers are harsher than the player multipliers. The leg and arm multipliers drop from 0.6 (against players) to 0.3 (against zombies), halving the damage on limb hits. The spine multiplier drops from 0.8 to 0.6. Only the skull multiplier stays the same at 1.1. The combination of a tripled base and harsher limb penalties creates an incentive structure: headshots are extremely powerful (the high base meets the unchanged skull multiplier), but limb shots are penalised (the high base is undercut by the halved multiplier).
The computed per-zone zombie damage is:
| Hit zone | Multiplier | Damage (base 99) |
|---|---|---|
| Skull | 1.1 | 108.9 |
| Spine | 0.6 | 59.4 |
| Arm | 0.3 | 29.7 |
| Leg | 0.3 | 29.7 |
Notice that the zombie limb damage of 29.7 is actually lower than the player limb damage of 19.2 in relative terms to each block's headshot ceiling, but higher in absolute numbers. A modder should decide whether to tune the zombie block for parity with the player block (like the Bluntforce) or for the elevated-headshot / penalised-limb pattern (like the Avenger).
Animal damage
The animal damage block defines damage against wildlife entities (deer, pigs, cows, wolves, and other creatures that use the animal AI type). Animal entities have a simpler hit model than players and zombies.
| Field | Value |
|---|---|
| Animal_Damage | 32 |
| Animal_Leg_Multiplier | 0.6 |
| Animal_Spine_Multiplier | 0.8 |
| Animal_Skull_Multiplier | 1.1 |
Animal_Damage of 32 matches the player base exactly. The Avenger treats players and animals identically in damage calculation. The multipliers (0.6 leg, 0.8 spine, 1.1 skull) also match the player block. There is no Animal_Arm_Multiplier field because animal entity models do not have arm hitboxes. The animal hit model uses three zones (leg, spine, skull) rather than the four-zone model used for bipedal targets.
The computed per-zone animal damage is:
| Hit zone | Multiplier | Damage (base 32) |
|---|---|---|
| Skull | 1.1 | 35.2 |
| Spine | 0.8 | 25.6 |
| Leg | 0.6 | 19.2 |
These values are identical to the player per-zone damage for the three shared zones. A modder who wants the Avenger to be stronger for hunting can raise Animal_Damage to a higher value (e.g. 40 or 50) without affecting player or zombie combat. A modder who wants to discourage using the Avenger for hunting can lower the animal base or the multipliers.
Handling
The handling block controls how the weapon physically behaves during and after a shot. These values affect the player's viewport, the aim reticle position, and the visual experience of firing. They do not affect damage, range, or ammunition behaviour.
| Field | Value |
|---|---|
| Recoil_Min_X | 0.4 |
| Recoil_Min_Y | 8 |
| Recoil_Max_X | 0.5 |
| Recoil_Max_Y | 11 |
| Spread_Aim | 0.05 |
| Shake_Min_X | -0.01 |
| Shake_Max_X | 0.01 |
Recoil_Min_X and Recoil_Max_X define the horizontal recoil range. When a shot is fired, the engine picks a random floating-point value between the minimum and maximum (inclusive) and rotates the player's camera by that many degrees (or engine-internal angle units) on the X axis. Positive X values rotate the view rightward. Negative values rotate leftward.
For the Avenger, both values are positive (0.4 and 0.5), so every shot rotates the view to the right. The range is narrow (a span of 0.1), so the rightward drift is small and consistent. The Avenger does not bounce left and right between shots; it drifts slowly rightward. A modder wanting a more unpredictable horizontal recoil sets the minimum negative (e.g. -2) and the maximum positive (e.g. 2), creating a range that crosses the zero point and can kick in either direction.
Recoil_Min_Y and Recoil_Max_Y define the vertical recoil range. The engine picks a random value between 8 and 11 and rotates the camera upward by that amount. Vertical recoil is always upward (positive Y rotation tilts the view up, requiring the player to pull the mouse down to compensate). The Y-axis values are substantially larger than the X-axis values (8-11 versus 0.4-0.5), meaning the dominant recoil sensation is vertical climb with a subtle rightward drift.
The range span of 3 units (11 - 8) means the vertical recoil varies noticeably from shot to shot. Sometimes the gun kicks by 8, sometimes by 11. The variation is enough that the player cannot perfectly predict the climb per shot and must adjust reactively.
Spread_Aim is 0.05. This is the aiming spread half-angle in degrees (or engine-internal angle units). When the player is aiming down sights, the engine creates a cone from the weapon's muzzle with this half-angle. The projectile's direction is randomised within that cone: the engine picks a random point on the cone's base and fires the raycast toward that point.
A value of 0.05 is tight. The cone is narrow, so most shots land very close to the aim point. The Avenger is accurate when aimed. For comparison, the Bluntforce's Spread_Aim is 0.8 (16 times wider) and the Calling Card's is 0.5 (10 times wider). A modder adjusting accuracy can change this field. Lowering it to 0.01 makes the weapon nearly pinpoint. Raising it to 0.1 or 0.2 introduces noticeable shot deviation.
Shake_Min_X and Shake_Max_X control viewport shake on the horizontal axis. When a shot is fired, the engine offsets the camera's position (not rotation) by a random value in this range, creating a screen-jolt effect. Position offset is separate from recoil rotation. Recoil rotates the view; shake translates it. Both happen simultaneously during a shot.
The range from -0.01 to 0.01 is narrow. The Avenger produces very little visible screen shake. The camera wobbles slightly but does not jolt dramatically. The Avenger does not define Y-axis shake fields (Shake_Min_Y and Shake_Max_Y). When a shake axis is absent, the engine uses a default of zero -- no shake on that axis. Some weapons define both X and Y shake; the Avenger defines only X. A modder who wants vertical shake adds the Y fields manually.
Flags
Flags are string tokens stored in the asset file that toggle specific engine behaviours when the weapon is loaded. Each flag is a quoted string in a comma-separated list (or whatever delimited format the .dat file uses for its flag array). The engine reads the flag list during item initialisation and enables each behaviour associated with a recognised string.
Flags present: "7b82c125a5a54984b8bb26576b59e977", Blueprints, Hook_Barrel, Hook_Tactical, InputItems, RequiresNearbyCraftingTags, Safety, Semi, [, ], {, }
The GUID 7b82c125a5a54984b8bb26576b59e977 is a special flag that links the weapon to a master asset bundle. Nearly every vanilla Unturned weapon carries this exact GUID string as a flag. When the engine loads the weapon, it reads this GUID and uses it to locate the asset bundle that contains the weapon's model, textures, sounds, and animation clips. If the GUID is missing or does not match any loaded bundle, the weapon may fail to load or display as a pink-and-black checkerboard error model.
The GUID flag is distinct from the weapon's own GUID (the 6f97... identifier in the asset identity table). The weapon's GUID identifies the weapon item itself. The bundle GUID identifies the asset bundle that contains the weapon's resources. These are two separate identifiers serving two separate linking purposes.
If you are creating a standalone mod weapon that loads from its own custom asset bundle, replace this GUID with your mod's bundle reference GUID. If you are editing a vanilla weapon in place without changing its bundle, leave this GUID unchanged.
Blueprints enables the crafting and blueprint system on this item. When Blueprints is present, the weapon can appear as an ingredient or output in blueprint recipe assets (.dat files in the Bundles/Blueprints/ directory). A blueprint recipe consists of input items, output items, required tools, required skills, and a required crafting station tag. The Blueprints flag on the weapon tells the engine "this item is eligible to participate in blueprint recipes." Without it, no recipe referencing the item ID will work.
Hook_Barrel creates an attachment socket on the weapon's barrel. An attachment socket is a named transform point on the weapon's 3D model where an attachment item can be placed. The engine creates the socket at the position and rotation defined by a bone or empty GameObject named "Barrel" (or "Hook_Barrel") in the weapon's prefab hierarchy. The flag tells the engine to read that socket and make it available for attachment items. An attachment item that specifies Hook_Barrel as its attachment point will snap to this socket.
Hook_Tactical creates an attachment socket for tactical devices (laser sights, rangefinders, tactical lights). The socket position is defined by a bone or empty named "Tactical" in the weapon's prefab hierarchy.
The Avenger has two hook flags: Hook_Barrel and Hook_Tactical. It does not have Hook_Sight (for optics) or Hook_Grip (for grips). The absence of Hook_Sight means the Avenger cannot mount a red dot sight, holographic sight, or scope. The absence of Hook_Grip means it cannot mount a vertical grip or bipod. A modder who wants the Avenger to accept optics adds Hook_Sight to the flag list. A modder who wants a foregrip adds Hook_Grip. Each hook is a single flag; adding one does not require changes to any other field.
InputItems tells the engine that this item's inventory (its child-item container) can receive items. This is the flag that enables magazine attachment and accessory attachment. When a player drags a magazine onto the Avenger in the inventory UI, the engine checks whether the Avenger has InputItems. If it does, the magazine is accepted as a child item. If it does not, the transfer is rejected. Similarly, when a player right-clicks an attachment to equip it, the engine checks InputItems on the target weapon.
Removing InputItems would prevent the Avenger from accepting any child items at all -- no magazine, no suppressor, no laser. The weapon would still exist and could be held, but it could not be reloaded or modified.
RequiresNearbyCraftingTags restricts blueprint crafting to when the player is within range of an object that carries a matching crafting tag. For example, if a blueprint specifies Tag: Workbench, and the player is standing near a world object that also has Tag: Workbench, the blueprint is available. If the player moves away from the workbench, the blueprint disappears from the crafting menu. This flag tells the engine to enforce the proximity requirement for the Avenger when it appears in a blueprint.
Safety enables the manual safety mechanic. When a weapon with Safety is first equipped, it starts in "safe" mode. The player must press the safety toggle key (default V in most Unturned keybindings) to switch the weapon to "fire" mode. While in safe mode, the trigger does nothing -- the weapon will not fire. The safety state is tracked per-weapon and persists until toggled. The Safety flag is present on the Avenger, meaning a freshly equipped Avenger requires a safety toggle before first use.
Semi sets the fire mode to semi-automatic. This flag tells the engine's fire-mode system that the weapon has a semi-automatic mode available. With only Semi present (and no Auto), the weapon has one fire mode: one trigger pull equals one shot. The Semi flag must be present if the weapon is to be usable at all -- a weapon with neither Semi nor Auto would have no valid fire mode and would not fire.
The bracket and brace characters [, ], {, } are not functional flags. They appear in the flag list because the .dat file serialises the flag array as a JSON-like string representation of a list. The brackets and braces are syntax characters from the serialisation format. Modders should include them when copying the flag list verbatim for a cloned weapon, but they do not need to understand them as behaviour-toggling flags.
Where the Avenger spawns
Spawn tables are the data structures that place items into the game world. A spawn table is a separate asset file (a .dat in Bundles/Spawns/) containing a list of entries. Each entry has a SpawnID (an item ID) and a Weight (an integer). When the game needs to place an item at a spawn point wired to that table, it executes a weighted random selection: sum all weights in the table, pick a random integer from 1 to the sum, and walk the list accumulating weights until the running total meets or exceeds the random number. The item at that position is spawned.
The "Chance per roll" column below expresses the weight as a percentage of the total weight sum for that table. A 100.000% entry means the Avenger's weight equals the table's total weight (it is the only item in the table, or other items have zero weight). A 50.000% entry means the Avenger claims exactly half the table's weight pool.
| Map | Spawn table | Chance per roll |
|---|---|---|
| Core | Coalition_Low_Peaks_Guns | 100.000% |
| Hawaii | Coastguard_America_Guns | 55.000% |
| Core | Military_Canada_Guns | 50.000% |
| France | Military_Low_France_Guns | 50.000% |
| Ireland | Cliffs_Military_Low_Guns | 44.444% |
| Ireland | Cliffs_Military_High_Magazine | 30.769% |
| Core | Military_America_Guns | 25.000% |
| Core | Military_Low_Peaks_Guns | 25.000% |
| Ireland | Cliffs_Military_High_Guns | 25.000% |
| RioDeJaneiro | Brazil_Military_Low_Guns | 20.000% |
| Ireland | Cliffs_Military_High_Cliffs | 13.314% |
| Ireland | Cliffs_Special_Low_Guns | 12.500% |
| Ireland | Cliffs_Airdrop_Weapons_Military | 4.918% |
| Hawaii | Coastguard_America | 4.506% |
| Ireland | Cliffs_Military_Low_Cliffs | 3.899% |
| Ireland | Cliffs_Special_Low_Cliffs | 1.786% |
| France | Military_Low_France | 1.682% |
| France | France_Military_Low_France | 1.682% |
| France | Military_High_France | 1.514% |
| France | France_Military_High_France | 1.514% |
Showing 20 of 23 tables that can produce this weapon.
The table entries form a descending weight curve. At the top, dedicated weapon tables (Coalition_Low_Peaks_Guns at 100.000%) guarantee the Avenger at specific spawn points. These tables contain few items (or only the Avenger) and are placed at a limited number of locations. They create reliable drops.
The middle tier (20% to 55%) represents shared weapon pools. The Avenger competes against other guns in these tables. Coastguard_America_Guns at 55.000% means the Avenger is the most common item in that pool but not the only one. Military_Canada_Guns at 50.000% means the Avenger splits the pool equally with one or more other weapons. Brazil_Military_Low_Guns at 20.000% means the Avenger is one of approximately five equally-weighted items.
The lower tier (under 5%) represents general-purpose loot tables that contain many item types. Coastguard_America at 4.506% is a wide pool with weapons, clothing, food, tools, and medical supplies. The Avenger's 4.506% weight means that out of every 100 rolls of this table, approximately 4 or 5 produce an Avenger. The remaining ~95 produce other items. Despite the low per-roll percentage, these wide pools are often rolled more frequently (more spawn points, more container types) than dedicated weapon tables, so the Avenger may appear from them regularly in aggregate across a server session.
The Avenger's 23 tables are predominantly military-themed (Military_Canada, Military_America, Military_Low_France, Brazil_Military, Cliffs_Military) and coastguard-themed (Coastguard_America). There are also special forces tables (Cliffs_Special) and airdrop tables (Cliffs_Airdrop_Weapons_Military). The Avenger does not appear in police or civilian tables. It is restricted to organised military and paramilitary loot sources.
How a modder works with spawn tables
To find a spawn table file, look in Bundles/Spawns/ or the equivalent mod directory. The file will be named after the table (e.g. Coalition_Low_Peaks_Guns.dat). Each entry looks like:
Spawn 1021 100
Spawn 1023 50
Spawn 1025 50Each line is the Spawn keyword, followed by the item ID, followed by the weight integer. The percentage in the table above is calculated as: (Avenger's weight / sum of all weights) * 100. To change the Avenger's probability, change the integer weight. To add the Avenger to a table that does not currently include it, add a new line: Spawn 1021 <weight>. To remove the Avenger from a table, delete or comment out that line.
Spawn tables reference the weapon by item ID (1021), not by name or GUID. If a mod changes the Avenger's item ID (which is rarely done for vanilla weapons), all spawn table entries referencing the old ID will break. The engine will fail to resolve the SpawnID and the spawn point will produce nothing, or fall back to a default item if one is configured.
How to find and edit the asset
Modders access the Avenger asset through one of two workflows depending on whether they are modifying the base game or creating a standalone mod.
Vanilla game files: The Avenger lives at Bundles/Items/Guns/Avenger/ inside the game's installation directory. The .dat file is packed inside a Unity asset bundle (.asset or .unity3d file), not stored as loose plain text. To edit it, you need a Unity asset extraction tool. UABE (Unity Asset Bundle Extractor) is the standard tool for this workflow.
The UABE workflow is:
- Open UABE and navigate to the game's
Bundles/directory. - Locate the bundle file containing
Avenger.dat(typicallycore.masterbundleor a similar master bundle). - Select
Avenger.datin the bundle's asset list and click "Export Dump" to extract it as a.txtfile. - Edit the
.txtfile with any text editor, changing the values you want to modify. - In UABE, select
Avenger.datagain and click "Import Dump," selecting your modified.txtfile. - Save the bundle. The game will now load your modified asset.
Workshop or custom content: In a modding project (typically in the Unturned/Workshop/ or a Unity project directory), the Avenger asset is a loose .dat file in the Items/Guns/Avenger/ folder, alongside the weapon's model (.unity3d), textures, materials, and sound files. The .dat file is plain text and can be edited directly with Notepad, VS Code, or any text editor.
The .dat file uses a simple whitespace-delimited key-value format. Each line is a field name, one or more spaces or tabs, and the value:
Player_Damage 32
Range 100
Firerate 4
Caliber 23
Muzzle 3
Magazine 1022
Ammo_Min 3
Ammo_Max 13Field order does not matter (the engine reads fields by name, not position), but the convention is to group related fields together for readability. Modders typically keep the ballistics block together, the damage blocks together, and the handling block together.
To change the base player damage from 32 to 40, change the Player_Damage line to Player_Damage 40. That is the entire change. No other file needs to be modified unless the magazine capacity or ammunition box size must stay balanced with the new damage value. If you increase the Avenger's damage, you might also want to reduce the magazine capacity or increase the Fire rate to compensate, but those changes are independent decisions.
The magazine asset (item ID 1022) is a separate file in the Items/Magazines/ directory. It has its own capacity, caliber, ammo type, and spawn rules. The magazine's Caliber field must match the weapon's Caliber field (23) for the reload system to work.
Canned Beans
The Avenger brief contains no verified bean data. There are no bean-related spawn tables for this weapon. The Avenger does not share a spawn table with the Canned Beans item (item ID 13), has no blueprint recipe involving beans, and has no bean-based repair interaction in the game files.
The Canned Beans item is a separately defined consumable asset with its own spawn tables, its own blueprints, and its own wiki lore page. Most weapons in Unturned have no connection to Canned Beans. The Avenger is in the majority here: beans and firearms are separate categories of items that intersect only if a modder deliberately creates that intersection.
If you want the Avenger to interact with beans -- for example, a repair recipe costing 3 Canned Beans to restore the Avenger's durability, or a spawn table that places both an Avenger and a can of beans in the same container -- you need to create a new blueprint asset or edit a spawn table. The base game provides no precedent.
For the full catalogue of verified bean interactions across all items, see /lore/canned-beans-lore.
Practical use for server owners
Server owners who do not want to create a full mod still have several straightforward adjustments available by editing the Avenger asset or spawn tables.
Adjusting availability: Edit the spawn table weights listed above. The Coalition_Low_Peaks_Guns table at 100.000% is a dedicated Avenger pool. To introduce variety at those spawn points, add spawn entries for other weapons to this table with weights that sum to the desired total. A weight of 100 for the Avenger and 100 for a different pistol creates a 50% chance for each. To reduce Avenger availability across the server, lower weights in the mid-tier tables (Military_Canada_Guns, Military_Low_France_Guns, etc.).
Adjusting starting ammunition: The Ammo_Min of 3 and Ammo_Max of 13 give a variable starting load. Setting Ammo_Min to 5 ensures every found Avenger carries at least 5 rounds, reducing the frustration of finding a nearly empty weapon. Setting both fields to the same value (e.g. Ammo_Min 7 and Ammo_Max 7) makes every Avenger spawn with exactly 7 rounds, creating a consistent experience.
Adjusting attachments: Add attachment hook flags to expand what the Avenger can mount. Adding Hook_Sight allows optics. Adding Hook_Grip allows foregrips. Each hook is a single flag addition. No model changes are strictly required for the hook to function, though attachments may not visually align perfectly without a proper socket transform on the 3D model.
Adjusting damage profile: The Avenger's Player_Damage of 32, Zombie_Damage of 99, and Animal_Damage of 32 are independently editable. A server owner who wants the Avenger to be stronger in PvE can raise Zombie_Damage to 120. A server owner who wants it weaker against players can lower Player_Damage to 25. Each change is a single line edit with no cascading dependencies.
Practical use for modders
Using the Avenger as a template: The Avenger is an ideal starting point for creating a new pistol because its field structure is clean and complete. The steps to clone the Avenger into a new weapon are:
- Copy the entire
Items/Guns/Avenger/directory to a new name (e.g.Items/Guns/MyPistol/). - Rename
Avenger.dattoMyPistol.dat. - Edit
MyPistol.dat: change the asset name, item ID, and GUID to new unique values. - Change the display name in the localisation table.
- Adjust the damage, handling, range, caliber, and magazine fields to fit the new weapon's role.
- Repack the mod bundle.
Caliber and ammunition design: The Avenger uses caliber 23 and magazine 1022. If your new weapon shares the Avenger's ammunition pool, keep caliber 23. If your weapon uses its own exclusive ammunition, assign a new caliber index (preferably a high number like 100 or greater to avoid conflicts) and create a new magazine and ammo box.
Damage block patterns: The Avenger demonstrates the standard secondary weapon pattern: moderate player base (32), tripled zombie base (99), matched animal base (32), standard multipliers. Use this pattern for weapons that should be capable against AI but not dominant against players. Use the Bluntforce pattern (identical bases and multipliers across all three blocks) for weapons that should behave consistently regardless of target type. Use the Desert Falcon pattern (elevated values across all blocks) for weapons that should be powerful against everything.
Recoil and handling tuning: The Avenger's handling values produce a weapon with moderate vertical climb (8-11 Y-axis), minimal horizontal drift (0.4-0.5 X-axis, positive-only), tight aiming spread (0.05), and light screen shake. When tuning recoil, start with the Y-axis values because vertical climb is what players feel most strongly. Then adjust X-axis to add side-to-side variation. Finally, tune spread to set the accuracy ceiling.
Attachment hook design: The Avenger carries barrel and tactical hooks. Decide early which hooks your weapon should have. A modern tactical pistol might have barrel, sight, and tactical hooks. A classic pistol might have only barrel. A revolver might have no hooks at all. The hooks are flags with no cost to add or remove; the decision is about what kind of weapon you want to create.
