For the complete documentation index, see llms.txt. This page is also available as Markdown.

DefaultClassInfo.txt

Per-class base stats, starting HP/MP, and per-level HP/MP curves

Per-class base stats, base HP/MP, and the per-level / per-Vitality / per-Energy HP and MP curves. Used by the attribute calculator on every recompute, by the ResetSystem plugin to restore stats to class defaults when a reset's Setting has ResetStats="true", and by the Fruit system to clamp stat reductions so they cannot fall below the class default.

File Location

Data/Character/DefaultClassInfo.txt

Loaded once at GameServer startup. Changes require a restart.

Format

Plain text, whitespace-delimited. The first comment line names the columns; each following row is one class. Terminated by the literal end on its own line.

//Class   Strength   Dexterity   Vitality   Energy   Leadership   MaxLife   MaxMana   LevelLife   LevelMana   VitalityToLife   EnergyToMana
0         18         18          15         30       0            60        60        1.0         2.0         2.0              2.0
...
end

Columns

Column
Type
Effect

Class

int

Class index. See Class mapping

Strength

int

Starting Strength

Dexterity

int

Starting Dexterity / Agility

Vitality

int

Starting Vitality

Energy

int

Starting Energy

Leadership

int

Starting Command / Leadership. Only Dark Lord uses it; other classes ship 0

MaxLife

float

Base HP at level 1 with the base Vitality shown on this row

MaxMana

float

Base MP at level 1 with the base Energy shown on this row

LevelLife

float

HP gained per character level, and per master level once MasterLevel > 0

LevelMana

float

MP gained per character level, and per master level once MasterLevel > 0

VitalityToLife

float

HP per extra point of Vitality beyond the class default (includes Fruit AddVitality)

EnergyToMana

float

MP per extra point of Energy beyond the class default (includes Fruit AddEnergy)

Class Mapping

Class
Name

0

Dark Wizard (DW)

1

Dark Knight (DK)

2

Fairy Elf (FE)

3

Magic Gladiator (MG)

4

Dark Lord (DL)

5

Summoner (SU)

6

Rage Fighter (RF)

Shipped Defaults

Class
Str
Dex
Vit
Ene
Lea
HP
MP
L/L
L/M
V/L
E/M

DW

18

18

15

30

0

60

60

1.0

2.0

2.0

2.0

DK

28

20

25

10

0

110

20

2.0

0.5

3.0

1.0

FE

22

25

20

15

0

80

30

1.0

1.5

2.0

1.5

MG

26

26

26

26

0

110

60

1.0

1.0

2.0

2.0

DL

26

20

20

15

25

90

40

1.5

1.0

2.0

1.5

SU

21

21

18

23

0

70

40

1.0

1.5

2.0

1.5

RF

32

27

25

20

0

100

40

1.3

1.0

2.0

1.3

Important Behavior

  • The attribute recompute uses all four curve fields every time. Effective HP is MaxLife + LevelLife * (Level - 1) + LevelLife * MasterLevel + (Vitality - default Vitality + AddVitality) * VitalityToLife; Mana mirrors that with Energy, LevelMana, and EnergyToMana

  • The Vitality / Energy columns serve double duty: they are the starting values AND the subtractive baseline used when converting extra stat points into HP/MP. Raising them here reduces the pool bonus players get from investing points

  • Reset / Master Reset (via ResetSystem plugin) restore Strength / Dexterity / Vitality / Energy / Leadership to this row's values when the matching Setting has ResetStats="true" in Data/Plugins/Characters/ResetSystem.xml. /classe / /change (class change) does NOT reset stats - only the class field is mutated

  • The Fruit system will not subtract a stat below its class default; stats brought below this row's values via other means are effectively uncapped against the Fruit floor

  • Only Dark Lord (class 4) ships a non-zero Leadership. Raising another class's Leadership default grants them a Command stat the UI and stat-add packet cannot otherwise provide

  • The file is parsed by whitespace; keep the columns aligned for readability but tabs and multiple spaces are both fine

Cross-File Dependencies

Value here
Related in

Starting stats / class-change / reset reset targets

Applied on character creation (DataServer) and by /reset + /mreset in Command.xml / Command.dat

Level curve (LevelLife, LevelMana)

Combines with Common.dat <CLASS>LevelUpPoint for stat-point gain per level

Class index

Must match class codes used throughout Common.dat, Character.dat, Skill.dat

Stat floor for Fruit

Character.dat Fruit settings

Common Issues

  • New characters have wrong HP/MP - row order accidentally edited; the class index in the first column must match the class the row is for (the loader stores rows keyed by the first column)

  • /reset resets stats to zero - row's Strength / Dexterity / Vitality / Energy are zero. Set the intended defaults

  • Rage Fighter is missing - file ships with classes 0-6; make sure every row is present

  • File load silently fails - missing end terminator, or a row has fewer columns than expected

  • Pool feels lower than expected after editing Vitality / Energy - raising the base Vitality / Energy on this row lowers the Vitality-bonus / Energy-bonus portion, because the conversion only applies to points beyond the default

Last updated