Skip to content

Levels and Progression

HIKI edited this page Oct 26, 2026 · 2 revisions

Levels, health and accuracy progression

File: tacznpc_quests.json → progression.

Field Default Bounds
xpPerLevel 100 Integer 1–1000000
healthPerLevel 1 0–100
maxHealth 30 Health progression cap; 1–1024
aimError.levelZeroMultiplier 2 0–4
aimError.reductionPerLevel 0.5 0–10
aimError.minimumMultiplier 0.35 0–levelZeroMultiplier
weaponSpread.levelZeroMultiplier 1.5 0–4
weaponSpread.reductionPerLevel 0.25 0–10
weaponSpread.minimumMultiplier 0.6 0–levelZeroMultiplier

Level = floor(totalXP / xpPerLevel). For each accuracy multiplier:

max(minimumMultiplier, levelZeroMultiplier / (1 + level × reductionPerLevel)).

Lower multipliers mean better accuracy. A reductionPerLevel of 0 keeps the multiplier constant. Aim error affects the distance-dependent NPC aim offset; weaponSpread affects the TaCZ native inaccuracy properties during that NPC's shot. The player's guns and dropped item data do not receive permanent changes.

Level Default aim-error multiplier Default weapon-spread multiplier
0 2.00 1.50
1 1.33 1.20
2 1.00 1.00
3 0.80 0.86
5 0.57 0.67
10 0.35 0.60

Health bonus = min(max(0, maxHealth − baseHealth), level × healthPerLevel). This caps the bonus without forcibly lowering an entity whose base health is already above the cap. It does not mean that every NPC spawns healed to maxHealth.

Minimum starting level

{
    "loadouts": {
        "military": {
            "minSpawnLevel":2
        },
        "guard": {
            "minSpawnLevel":2
        },
        "survivor": {
            "minSpawnLevel":0
        }
    }
}

This is a partial master quest file. The literal loadout ID military has a built-in minimum of 2 even in old configs; other IDs default to 0. Set military explicitly to 0 to disable that special default.

The floor gives fresh NPCs enough total XP for that level, not an extra XP grant on every reload. Existing NPCs preserve their saved XP and are not promoted retroactively by changing minSpawnLevel. Changing xpPerLevel recalculates levels from stored XP; it does not convert XP.

At equal level and behavior configuration, a survivor can be as accurate as a soldier. The soldier's starting experience is an initial condition, not an unavoidable faction accuracy buff.

Custom gun scripts that replace native spread calculations may need gunpack-specific testing.


Home · Configuration map · Troubleshooting

Clone this wiki locally