Overview
This file controls the unit statistics for player mercenaries and their related functions
Any column field name starting with “*” is considered a comment field and is not used by the game
Data Fields
Hireling – This is a reference field to define the Hireling name
Version – Defines which game version to use this hireling (0 = Classic mode | 100 = Expansion mode)
Id – The unique identification number to define each hireling type
Class – This refers to the “hcIdx” field in MonStats.txt, which defines the base type of unit to use for the hireling
Act – The Act that the hireling belongs to (values 1 to 5 equal Act 1 to Act 5, respectively)
Difficulty – The difficulty mode associated with the hireling (1 = Normal | 2 = Nightmare | 3 = Hell)
Level – The starting level of the unit
Seller – This refers to the “hcIdx” field in MonStats.txt, which defines the unit NPC that sells this hireling
NameFirst & NameLast – These fields define a string key which the game uses as a sequential range of string IDs from “NameFirst” to “NameLast” to randomly generate as hireling names. (Max name length is 48 characters)
Gold – The initial cost of the hireling. This is used in the following calculation to generate the full hire price: Cost = [“Gold”] * (100 + 15 * [Difference of Current Level and “Level”]) / 100
Exp/Lvl – This modifier is used in the following calculation to determine the amount of Experience need for the hireling’s next level: [Current Level] + [Current Level] * [Current Level + 1] * [“Exp/Lvl”]
HP – The starting amount of Life at base Level
HP/Lvl – The amount of Life gained per Level
Defense – The starting amount of Defense at base Level
Def/Lvl – The amount of Defense gained per Level
Str – The starting amount of Strength at base Level
Str/Lvl – The amount of Strength gained per Level (Calculated in 8ths)
Dex – The starting amount of Dexterity at base Level
Dex/Lvl – The amount of Dexterity gained per Level (Calculated in 8ths)
AR – The starting amount of Attack Rating at base Level
AR/Lvl – The amount of Attack Rating gained per Level
Dmg-Min – The starting amount of minimum Physical Damage for attacks
Dmg-Max – The starting amount of maximum Physical Damage for attacks
Dmg/Lvl – The amount of Physical Damage gained per level, to be added to “Dmg-Min” and “Dmg-Max” (Calculated in 8ths)
ResistFire – The starting amount of Fire Resistance at base Level
ResistFire/Lvl – The amount of Fire Resistance gained per Level (Calculated in 4ths)
ResistCold – The starting amount of Fire Resistance at base Level
ResistCold/Lvl – The amount of Fire Resistance gained per Level (Calculated in 4ths)
ResistLightning – The starting amount of Fire Resistance at base Level
ResistLightning/Lvl – The amount of Fire Resistance gained per Level (Calculated in 4ths)
ResistPoison – The starting amount of Fire Resistance at base Level
ResistPoison/Lvl – The amount of Fire Resistance gained per Level (Calculated in 4ths)
HireDesc – This accepts a string key, which is used to display as the special description of the hireling in the hire UI window
DefaultChance – This is the chance for the hireling to attack with his/her weapon instead of using a Skill. All Chance values are summed together as a denominator value for a random roll to determine which skill to use.
Skill1 (to Skill6) – Points to a skill from the “skill” field in the skills.txt file. This gives the hireling the Skill to use (requires “Mode#”, “Chance#”, “ChancePerLvl#”)
Mode1 (to Mode6) – Uses a monster mode to determine the hireling’s behavior when using the related Skill (Uses the numeric ID of the monster mode, not the Token)
ID | Token | Description |
0 | DT | Death / Reset |
1 | NU | Neutral |
2 | WL | Walk |
3 | GH | Get Hit |
4 | A1 | Attack 1 |
5 | A2 | Attack 2 |
6 | BL | Block |
7 | SC | Cast |
8 | S1 | Skill 1 |
9 | S2 | Skill 2 |
10 | S3 | Skill 3 |
11 | S4 | Skill 4 |
12 | DD | Dead |
13 | GH | Knockback |
14 | xx | Sequence |
15 | RN | Run |
Chance1 (to Chance6) – This is the base chance for the hireling to use the related Skill. All Chance values are summed together as a denominator value for a random roll to determine which skill to use.
ChancePerLvl1 (to ChancePerLvl6) – This is the chance for the hireling to use the related Skill, affected by the difference in the hireling’s current Level and the hireling’s “Level” field. All Chance values are summed together as a denominator value for a random roll to determine which skill to use. Each skill Chance is calculated with the following formula: [“Chance#”] + [“ChancePerLvl#”] * [Difference of Current Level and “Level”] / 4
Level1 (to Level6) – The starting Level for the related Skill.
LvlPerLvl1 (to LvlPerLvl6) – A modifier to increase the related Skill level for every Level gained. This is used in the following calculated to determine the current skill level: [Current Skill Level] = FLOOR([“Level”] + (([“LvlPerLvl”] * [Difference of Current Level and “Level”]) / 32))
HiringMaxLevelDifference – This is used to generate a range with this value plus and minus with the player’s current Level. In the hiring UI window, hirelings start with a random Level that is between this range.
resurrectcostmultiplier – A modifier used to calculate the hireling’s current resurrect cost. Used in the following formula: [Resurrect Cost] = [Current Level] * [Current Level] / [“resurrectcostdivisor”] * [“resurrectcostmultiplier”]
resurrectcostdivisor – A modifier used to calculate the hireling’s current resurrect cost. Used in the following formula: [Resurrect Cost] = [Current Level] * [Current Level] / [“resurrectcostdivisor”] * [“resurrectcostmultiplier”]
resurrectcostmax – This is the maximum Gold cost to resurrect this hireling
equivalentcharclass – Determines what class this hireling is treated like under the hood when calculating skill level bonuses and gear restrictions.