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

Character.dat

Per-class damage, defense, recovery, skill formula constants, and PvP multipliers

Per-class combat tuning. Damage rates against contexts (duel, events, PvP, PvM), class-vs-class damage modifiers, skill-specific damage formulas, HP/MP/BP/SD recovery rates, and the constants that feed every hit/defense calculation.

File Location

GameServer/Data/GameServerInfo - Character.dat

All keys live under [GameServerInfo]. Changes require a GameServer restart.

Default in the tables below = the value in the shipped file. If you delete a line, the server uses its own built-in value instead, which can differ (often 0). Change values; do not delete lines.

Class Codes

Every per-class key uses one of these two-letter prefixes.

Code
Class

DW

Dark Wizard

DK

Dark Knight

FE

Fairy Elf

MG

Magic Gladiator

DL

Dark Lord

SU

Summoner

RF

Rage Fighter

Damage Rates by Context

Percent of base damage applied in each game mode. 100 = no change, 50 = half damage, 0 = zero damage dealt.

Key
Default
Effect

DuelDamageRate

60

Damage scaling inside the duel arena

GensDamageRate

60

Damage scaling between Gens factions in PvP

CustomArenaDamageRate

50

Damage scaling in the Custom Arena plugin map

ChaosCastleDamageRate

50

Damage scaling in Chaos Castle

IllusionTempleDamageRate

50

Damage scaling in Illusion Temple

CastleSiegeDamageRate1

40

Damage on defenders during CS

CastleSiegeDamageRate2

0

Damage on attackers during CS

CastleSiegeDamageRate3

5

Damage on castle-neutral targets

GeneralDamageRatePvP

100

Baseline PvP damage anywhere without a special rate

GeneralDamageRatePvM

100

Baseline PvM damage

ReflectDamageRatePvP

100

Reflect damage in PvP

ReflectDamageRatePvM

1000

Reflect damage in PvM (%). PvM reflect uses the monster's full hit (before your defense/absorb), takes your reflect % of it, then applies this rate. 1000 = x10. Regular (percent) reflect only. Missing line = 0 = reflect does no damage to monsters

FullReflectDamageRatePvM

100

Full damage reflect proc in PvM (%). Separate from ReflectDamageRatePvM. Also uses the monster's full hit before your defense. 100 = monster takes its own raw hit back

Context rates stack multiplicatively with class rates and class-vs-class rates. If Duel is 60, PvP General is 100, and DW-to-DK is 100, a DW hitting a DK in the arena lands 0.6 * 1.0 * 1.0 = 60% of the raw damage.

Character Max Rates

Hard caps on a player's total rate from all sources (items, options, buffs, master tree, sets). Players only, monsters are not capped. 0 or missing line = no cap.

Key
Default
Effect

MaxReflectRate

65

Max total damage reflect %. Full damage reflect proc is not capped

MaxDamageReductionRate

70

Max total damage cut % from all damage reduction sources (item/option reduction, buff reduction, shield Defense skill). Wing and pet absorb apply after and are not counted

MaxCriticalDamageRate

90

Max critical damage chance % (before target's resist)

MaxExcellentDamageRate

90

Max excellent damage chance % (before target's resist)

MaxDoubleDamageRate

20

Max double damage chance % (before target's resist)

MaxTripleDamageRate

15

Max triple damage chance %

The C panel shows the capped value.

Class Damage Rates

Per-class multipliers for PvP and PvM. All default to 100.

Pattern
Meaning

<CLASS>DamageRatePvP

This class's damage output in any PvP context

<CLASS>DamageRatePvM

This class's damage output against monsters

Seven classes × two contexts = 14 keys, all default 100.

Elemental damage rates (inert in this build)

Class-vs-Class Damage Rates

Square matrix of multipliers. <A>DamageRateTo<B> = damage from class A when hitting class B. All default to 100 (no change).

Full 7x7 matrix

Every pair uses the same pattern: <ATTACKER>DamageRateTo<DEFENDER> = 100. 49 keys total.

  • DWDamageRateToDW ... DWDamageRateToRF

  • DKDamageRateToDW ... DKDamageRateToRF

  • FEDamageRateToDW ... FEDamageRateToRF

  • MGDamageRateToDW ... MGDamageRateToRF

  • DLDamageRateToDW ... DLDamageRateToRF

  • SUDamageRateToDW ... SUDamageRateToRF

  • RFDamageRateToDW ... RFDamageRateToRF

Raise a row to buff one class's damage against another; lower it to nerf. Typical server balance tweaks live here, not in the context or class rates above.

Monster Damage to Players

How hard monsters hit players. The PvM keys above only scale damage players deal to monsters; these scale the other direction. Player summons are not affected.

Key
Default
Effect

MonsterDamageRateToDW ... MonsterDamageRateToRF

100

% of monster damage taken by that class. 80 = that class takes 20% less from monsters

PlayerDefenseRateVsMonster

50

% of a player's defense used when a monster hits them. Vanilla hardcoded 50

PlayerDefenseRateVsPlayer

50

% of a player's defense used when another player hits them. Vanilla hardcoded 50

A per-map rate stacks on top: MonsterDamageRate in MapManager.xml. Monster affix blasts and other preset monster hits are scaled too.

Raising PlayerDefenseRateVsMonster makes defense stronger against every monster at once; the per-class rates are better for balancing one class.

Element Weakness and Strength

Monsters can be weak or strong against one element. A player skill whose element (the Type column in Skill.txt) matches deals more or less damage to that monster. Normal attacks have no element.

Key
Default
Effect

ElementWeakBonus

20

+% damage when the skill's element is the monster's weakness

ElementStrongPenalty

20

-% damage when the skill's element is the monster's strength

Set the elements per monster with Weak / Strong in Monster.xml (Weak="Fire"), or per map with ElementWeak / ElementStrong in MapManager.xml for monsters that have none of their own. Players see them as badges beside the monster's HP bar: weakness on the left (green rim, up arrow), strength on the right (red rim, down arrow), with a hover tooltip.

Damage Stuck Rate

Chance of a "stuck" animation triggering on hit for each class. 0 disables. Value is a percentage.

Key
Default

DWDamageStuckRate

0

DKDamageStuckRate

0

FEDamageStuckRate

0

MGDamageStuckRate

0

DLDamageStuckRate

0

SUDamageStuckRate

0

RFDamageStuckRate

0

Mount Stuck Rate

Flinch chance while riding a mount. Historically mounted characters never flinched; these keys make it configurable per mount. 0 keeps the classic no-flinch behavior.

Key
Default

UniriaDamageStuckRate

0

DinorantDamageStuckRate

0

DarkHorseDamageStuckRate

0

FenrirDamageStuckRate

0

Custom plugin mounts are configured separately: set StuckRate="N" on the <Mount> entry in Data\Plugins\Items\CustomPets.xml (default 0).

Damage Multiplier Constants

Per-class passive damage boost formula constants. Not commonly edited.

Key
Default
Applies to

DKDamageMultiplierConstA

10

Dark Knight Energy divisor (rate = 200 + Energy/A)

DLDamageMultiplierConstA

20

Dark Lord Energy divisor (rate = 200 + Energy/A)

RFDamageMultiplierConstA

8

Rage Fighter Dexterity divisor used in attack-stance rate

RFDamageMultiplierConstB

10

Rage Fighter Vitality divisor used in defense-stance rate

RFDamageMultiplierConstC

10

Rage Fighter Energy divisor used in both attack and defense rates

DKDamageMultiplierMaxRate

500

DK multiplier cap

DLDamageMultiplierMaxRate

500

DL multiplier cap

RFDamageMultiplierMaxRate

500

RF multiplier cap (applied to each of the three RF stances)

Dark Spirit Settings

Tunes the Dark Lord's Dark Spirit pet.

Dark Spirit constants (15 keys)
Key
Default
Effect

DarkSpiritRangeAttackRate

30

Chance % the spirit performs a ranged attack

DarkSpiritCriticalDamageRate

30

Crit rate %

DarkSpiritExcellentDamageRate

0

Excellent rate %

DarkSpiritAttackDamageMinConstA/B/C

180 / 15 / 8

Min damage formula

DarkSpiritAttackDamageMaxConstA/B/C

200 / 15 / 4

Max damage formula

DarkSpiritAttackSpeedConstA/B/C/D

20 / 4 / 5 / 50

Attack speed formula

DarkSpiritAttackSuccessRateConstA/B/C

1000 / 16 / 1

Hit rate formula

Guardian Items (Dec Damage)

Constants for items that reduce incoming damage while equipped.

Key
Default
Effect

DinorantDecDamageConstB

5

Dinorant damage-reduction constant

DarkHorseDecDamageConstA

30

Dark Horse damage-reduction linear term

DarkHorseDecDamageConstB

2

Dark Horse damage-reduction scaling term

Skill Damage Formulas

Constants feeding specific-skill damage calculations. Leave at defaults unless rebalancing a skill specifically.

Combo / Earthquake / Electric Spark / DL Skill / Nova
Key
Default

ComboDamageConstA

2

ComboDamageConstB

1

ComboDamageConstA/B only apply to classes without a <ClassScaling> row in CustomCombo.xml. | EarthquakeDamageConstA/B/C | 10 / 5 / 10 | | ElectricSparkDamageConstA/B | 10 / 250 | | DLSkillDamageConstA/B | 25 / 50 | | NovaDamageConstA/B/C | 20 / 5 / 2 |

Plasma Storm per-class constants (28 keys)

Four constants per class (A/B/C/D, plus E for Dark Lord):

Class
A
B
C
D
E

DW

5

5

7

3

-

DK

3

5

5

7

-

FE

5

3

7

5

-

MG

3

5

5

7

-

DL

5

5

7

3

3

SU

5

5

7

3

-

RF

5

5

3

7

-

Pool Recovery Rates

Percent of max pool recovered per recovery tick.

Pool
Default per class
Notes

HP (<CLASS>HPRecoveryRate)

0 for every class

Disabled by default; raise to grant passive HP regen

MP (<CLASS>MPRecoveryRate)

4 for every class

BP (<CLASS>BPRecoveryRate)

3 for every class except DK (5)

BP = stamina for combos and Rage Fighter

SD (<CLASS>SDRecoveryRate)

4 for every class

SD = Shield Defense

Seven classes × four pools = 28 keys, all following the same <CLASS><POOL>RecoveryRate pattern. Four further keys, below, layer on top of them.

No-damage recuperation bonus

Added in v1.0.7. A flat extra percentage applied on top of the recovery rate above, granted only when the pool has not been spent or hit for more than 5 seconds - the classic "regenerate while standing still" behaviour.

Key
Default
Pool

HPNoDamageRecoveryBonus

5

Life

SDNoDamageRecoveryBonus

5

Shield Defense

MPNoDamageRecoveryBonus

3

Mana

BPNoDamageRecoveryBonus

3

Stamina

Set a key to 0 to remove the idle bonus for that pool entirely. These are server-wide, not per-class. The defaults match the vanilla WebZen values.

Base Damage Constants

Min/max physical and magic damage formula constants. Drive the baseline hit range before items and skills.

Per-class damage formula constants

Pattern: <CLASS>PhysiDamageMin/MaxConstA/B, <CLASS>MagicDamageMin/MaxConstA. Fairy Elf has extra Bow variants for ranged weapons.

Class
Physi Min A
Physi Min B
Physi Max A
Physi Max B
Magic Min A
Magic Max A

DW

6

-

4

-

9

4

DK

8

-

4

-

9

4

FE

7

-

4

-

9

4

MG

6

12

4

8

9

4

DL

7

14

5

10

9

4

SU

8

-

4

-

9

4

RF

7

15

5

12

9

4

FE bow-specific: FEPhysiDamageMinBowConstA/B = 14/7, FEPhysiDamageMaxBowConstA/B = 8/4.

Attack Success Rate

Hit chance formula constants (separate for PvE and PvP).

Attack success rate constants per class

PvE pattern: <CLASS>AttackSuccessRateConstA/B/C/D. Dark Lord has an additional E. Rage Fighter has higher defaults to compensate for higher base damage.

Class
A
B
C
D
E

DW

5

3

2

4

-

DK

5

3

2

4

-

FE

5

3

2

4

-

MG

5

3

2

4

-

DL

5

6

2

4

10

SU

5

3

2

4

-

RF

3

5

4

6

-

PvP pattern: <CLASS>AttackSuccessRatePvPConstA/B/C/D.

Class
A
B
C
D

DW

3

1

4

1

DK

3

1

45

10

FE

3

1

6

10

MG

3

1

35

10

DL

3

1

4

1

SU

3

1

35

10

RF

26

10

36

10

Attack Speed Constants

Physical and magic attack speed formula constants.

Key
Default
Effect

DWPhysiSpeedConstA

20

DW physical attack speed

DWMagicSpeedConstA

10

DW magic attack speed

DKPhysiSpeedConstA

15

DKMagicSpeedConstA

20

FEPhysiSpeedConstA

50

FEMagicSpeedConstA

50

MGPhysiSpeedConstA

15

MGMagicSpeedConstA

20

DLPhysiSpeedConstA

10

DLMagicSpeedConstA

10

SUPhysiSpeedConstA

20

SUMagicSpeedConstA

20

RFPhysiSpeedConstA

10

RFMagicSpeedConstA

10

Defense Success Rate

Dodge/block chance formula constants.

PvE defense success rate constants

Pattern: <CLASS>DefenseSuccessRateConstA.

Class
A

DW

3

DK

3

FE

4

MG

3

DL

7

SU

4

RF

10

PvP defense success rate constants

Pattern: <CLASS>DefenseSuccessRatePvPConstA/B/C. Rage Fighter has higher defaults.

Class
A
B
C

DW

2

1

4

DK

2

1

2

FE

2

1

10

MG

2

1

4

DL

2

1

2

SU

2

1

2

RF

15

10

5

Defense Constants

Per-class defense formula constants. Raises the baseline defense scaling for that class.

Key
Default

DWDefenseConstA

4

DKDefenseConstA

3

FEDefenseConstA

10

MGDefenseConstA

4

DLDefenseConstA

7

SUDefenseConstA

3

RFDefenseConstA

8

Reflect Settings

ReflectDamageCheckOwnerLive moved to Data/Plugins/World/Downgrade.xml, as <Combat ReflectDamageCheckOwnerLive="..." /> - see Downgrade. The leftover key in the shipped Character.dat template is ignored.

Cross-File Dependencies

Setting here
Related in

All class-code prefixes (DW/DK/FE/MG/DL/SU/RF)

Common.dat Create Character Settings and per-class LevelUpPoint, and DefaultClassInfo.txt base stats and per-level curves

ReflectDamageRatePvP / ReflectDamageRatePvM

Reflect Damage skill constants in Skill.dat

CastleSiegeDamageRate1/2/3

Castle Siege section in Event.dat; inert unless Common.dat EnableCastleSiege = 1

CustomArenaDamageRate

ChaosCastleDamageRate, IllusionTempleDamageRate

Matching event sections in Event.dat

Per-class damage and recovery rates

Skill.txt and SkillDamage.txt feed per-skill damage formulas

Common Issues

  • Every player hits for zero in the arena - DuelDamageRate = 0 by accident

  • One class feels overpowered in PvP - check the <CLASS>DamageRatePvP and <CLASS>DamageRateTo<OTHER> rows, not the formula constants

  • HP never regenerates for any class - <CLASS>HPRecoveryRate defaults to 0 on purpose. Raise per class to enable passive regen

  • Castle Siege damage feels wrong only during CS - CastleSiegeDamageRate1/2/3 interact with the role you occupy (defender, attacker, neutral)

  • Reflect never fires after the owner dies - ReflectDamageCheckOwnerLive defaults to 1; set it to 0 in Downgrade.xml, not in this file, to let reflect still apply when the owner dies in the same tick

Last updated