Mechanics

charstats

Per-class baselines — starting attributes, life/mana/stamina growth rates, default skill, starting inventory, and the string-table keys that tooltips reference for class-only and skill-tab text.

The 9-row table that defines what makes each class mechanically different at character creation and through level-up. Every "how much life does my Barb get per vit?" or "what does the Sorceress start with?" question terminates here.

8 playable classes (Amazon, Sorceress, Necromancer, Paladin, Barbarian, Druid, Assassin, Warlock) plus a sentinel Expansion row that visually separates Classic from Expansion classes in the .txt source. The sentinel has all data columns blank.

83 columns total — the schema spans starting attributes, per-level growth rates, per-attribute scaling, baseline movement and recovery, class-specific potion scaling, default skills, the 10-slot starting-inventory loadout, and the string-table keys that drive tooltip text on class-restricted items.

The "in fourths" convention — read this first

Six columns store quarter-values, not literal numbers. Divide by 4 to get the displayed value:

  • LifePerLevel, StaminaPerLevel, ManaPerLevel
  • LifePerVitality, StaminaPerVitality, ManaPerMagic

The *Comment column carries the literal text The following are in fourths to mark this for editors. Per locbones: "Calculated in fourths and is divided by 256" — the /4 is the file convention, the /256 is engine internal precision (stats track to 1/256 ticks of life/mana/stamina, so a 12 in LifePerVitality is engine-stored as 768 sixteenth-of-a-life ticks per vit point, displayed as +3 life per vit).

If you see surprising-looking numbers like 12 or 16 in those six columns, they're quartered. The Barbarian's LifePerVitality=16 reads as +4 life per vit, which is the canonical buildcraft answer.

Per-class scaling at a glance

ClassLife per Vit (÷4)Mana per Energy (÷4)Stamina per Vit (÷4)Block Factor
Amazon12 → 36 → 1.54 → 125
Sorceress8 → 28 → 24 → 120
Necromancer8 → 28 → 24 → 120
Paladin12 → 36 → 1.54 → 130
Barbarian16 → 44 → 14 → 125
Druid8 → 28 → 24 → 120
Assassin12 → 37 → 1.755 → 1.2525
Warlock12 → 38 → 24 → 125

The Barbarian's +4 life per vit is the highest in the game; he also has the lowest mana per energy (+1, half a Sorceress's). The Assassin is the only class with non-1 stamina per vit (+1.25), reflecting her kick-build identity. Block factor differs by 5–10% across classes — Paladin has the highest baseline at +30, casters at +20.

Starting attributes

Every class spends differently on its 60-point starting attribute budget plus per-class life/mana/stamina baselines:

ColumnWhat it is
str, dex, int, vitStarting Strength / Dexterity / Energy / Vitality. The total str+dex+int+vit is uniform 60 across all classes; each class shifts the budget. Sorceress is 10/25/35/10 (energy-heavy); Barbarian is 30/20/10/25 (str-heavy); Warlock is 15/20/20/25 (vit-heavy).
staminaStarting stamina pool. Highest on Assassin (95), lowest on Sorceress (74).
hpaddBonus starting Life — added to the vit-derived life baseline. Uniform 30 across all classes.
ToHitFactorStarting AR bonus. Negative for casters (Sorc −15, Necro −10), positive for melee (Pal/Barb +20). The Warlock and Druid sit at +5; Amazon is +5; Assassin +15.

Note on int: the column is named int but represents the player-facing Energy attribute. Classic D2 design called it Intelligence; the in-game UI relabeled.

Per-level growth (in fourths)

ColumnWhat it is
LifePerLevelLife gained per level-up. Amazon/Pal/Barb/Sin/Warlock: 8 → +2/level. Sorc: 4 → +1/level. Necro/Druid: 6 → +1.5/level.
ManaPerLevelMana gained per level-up. Sorc: 8 → +2/level. Necro/Druid/Warlock: 8 → +2/level. Amazon/Pal: 6 → +1.5/level. Sin: 6 → +1.5/level. Barb: 4 → +1/level.
StaminaPerLevelStamina gained per level-up. Sin: 5 → +1.25/level. Everyone else: 4 → +1/level.

Per-attribute scaling (in fourths)

The column most users actually want is LifePerVitality — see the canonical table at the top of this page. The full set:

ColumnWhat it is
LifePerVitalityLife per Vitality point. Buildcraft canonical.
ManaPerMagicMana per Energy point. (Magic is the legacy name for Energy.) Critical for ES Sorc builds.
StaminaPerVitalityStamina per Vitality point.

Stat / skill awards

ColumnWhat it is
StatPerLevelAttribute points per level-up. Uniform 5 across all classes.
SkillsPerLevelSkill points per level-up. Uniform 1.

Movement and recovery

Uniform across all classes except RunDrain and a small Assassin variation:

ColumnValueMeaning
WalkVelocity6Base walk speed.
RunVelocity9Base run speed.
RunDrain20 (Sin: 15)Stamina drained per tick while running. Assassin's lower drain is the structural argument for her kick-and-run identity.
ManaRegen120Seconds to regen full mana from empty.
LightRadius13Baseline light radius.
MinimumCastingDelay12Global cast-delay floor in frames after a casting-delay skill fires.

Class-specific potion scaling

ColumnMeaning
HealthPotionPercent% of base healing-potion life restored. Barbarian 200% (potions heal twice as much), Sorc/Necro/Druid/Warlock 100%, others 150%.
ManaPotionPercent% of base mana-potion mana restored. Sorc/Necro/Druid/Warlock 200%, Barb 100%, others 150%.

The asymmetric scaling means a single Super Healing potion goes much further on a Barb than a Sorc, and a Super Mana Potion gives the Sorc twice the mana it gives the Barb. Practical consequence: hot-bar potion budgeting is class-specific.

Default skills and starting inventory

ColumnMeaning
StartSkillSkill auto-cast at character creation (Sorceress: fire bolt; Necromancer: raise skeleton; Warlock: Miasma Bolt; others blank — they start with no offensive skill bound).
Skill 1Skill 10Skills the class knows by default and always has access to (Throw, Kick, Scroll/Book of Identify/Town Portal, Unsummon, plus class-specific extras like Barbarian's Left Hand Throw / Left Hand Swing).
baseWClassDefault unarmed weapon class (uniform hth — drives unarmed attack animations). Not the starting weapon — that's item1.

The 10 starting-inventory slots (item1item10) are 4-tuples each:

  • itemN — item code (e.g. jav=Javelin, buc=Buckler, hp1=Minor Healing Potion, tsc=Town Portal Scroll, isc=Identify Scroll).
  • itemNloc — equip slot. rarm = right arm/main-hand, larm = left arm/off-hand, blank = goes in inventory.
  • itemNcount — quantity (relevant for stackables: 4 Healing Potions).
  • itemNquality — quality flag (always 2 = normal).

Most classes fill 5–6 slots; trailing slots carry the placeholder 0/(blank)/0/2 no-op pattern.

String-table keys for tooltip text

These columns hold the keys the engine looks up in the string tables to render class-specific tooltip lines. They never display directly.

ColumnWhat it keys
StrAllSkillsThe +N to All Skills line on items (ModStr3a for Amazon).
StrSkillTab1, StrSkillTab2, StrSkillTab3The three +N to <Tree> Skills skill-tab keys (different per class).
StrClassOnlyThe (X Only) red-text line on class-restricted items (AmaOnly, SorOnly, NecOnly, PalOnly, BarOnly, DruOnly, AssOnly, WarOnly).

Cross-references

  • playerclass — class → 3-letter-code lookup (Amazonama). Other tables (skills, weapons class-restriction, etc.) key on the short code, not the display name.
  • skillscharclass column references the 3-letter codes; combine with charstats' per-attribute scaling to compute build-specific math (max life from N vit, etc.).
  • plrmode — animation-mode token vocabulary referenced when the engine plays per-class animations.