Upbringing
Upbringing is a permanent, unchangeable attribute that is randomly generated for every hero. The upbringing is responsible for defining permanent stat bonuses, the hero's hooks, and the automatically generated backstory. This system is intended to make every encountered hero unique.
On a technical level, the upbringing consists of an origin, an anecdote ("dote" for short), and a motivation ("mote" for short). Each of those parts comes with a defined hook, history tags (defining aspects of the character's backstory, e.g. eccentric, criminal, happy childhood), personality stats (e.g. leader, flirt, hothead), and combat- and campaign-relevant stats (e.g. health, melee accuracy, charisma). Heroes that are generated as children (joining the party during an interval as they reach adventuring age) have their own separate set of origins, meaning that the probabilities for obtaining certain hooks or desired stat combinations is different. Also, unlike standard recruits, children may receive a bonus for armor, stunt chance, and/or bonus damage (these stats are also possible for some other non-child, non-standard recruits). The game will not allow combinations that would result in duplicates of the same hook. For instance, if a hero is generated with an origin that comes with the Wildheart hook, it is not possible for that hero to have a dote or mote that would also come with the Wildheart hook. In addition, most of the upbringing parts come with so-called forbidden aspects, further making many origin/dote/mote combinations impossible.
This upbringing system results in 1,035,914 unique "regular" hero upbringings and 212,310 unique possible upbringings for children.
Upbringing Stats
Every origin, dote, and mote has a set of "primeStats" and "storyStats".
"primeStats" are a list of stats, such as "Speed, Dodge, Melee Accuracy" or "Potency, Warding". The game assigns a bonus for those stats depending on how many primeStats are set for that specific origin/dote/mote. The more primeStats that origin/dote/mote has, the lower the bonus will be for each individual stat. For instance, origin_36 which has the primeStats Ranged Accuracy, Warding, Speed, Dodge, and Melee Accuracy (5 different primeStats) would give a 0.3 bonus to Warding whereas origin_61 which has the primeStats Ranged Accuracy, Warding, and Charisma (3 different primeStats) would give a 0.5 bonus to Warding. This means that there is a trade-off, with heroes falling into a spectrum between having a narrow set of very high bonus stats or a very broad selection of comparatively low bonus stats.
More specifically, (almost) every hero is given 5 "points" worth of stats from upbringing, although this value is approximate in practice due to rounding. Origins and dotes are worth 2 points each while motes are worth 1 point. The total value of the origin, dote, or mote is split equally (up to rounding) between the primeStats it awards. One point worth of each upbringing stat is listed in the table below. After splitting, stats are rounded to the nearest tenth or whole number depending on the stat, rounding up at x.5 or .x5, although due to multiple steps of rounding (needs verification that this is the real reason), some stats can be rounded down in practice. For example, for the "needs rescuing" hero below, 5/6 of a point worth of potency would grant 0.25 potency, which should then round up to 0.3 potency. However, only 0.2 potency is granted, possibly because 5/6 is calculated first, leading to just under 0.25 potency, which is then rounded down.
Stat | Amount per point | Rounding |
---|---|---|
Health | 0.6 | Nearest Tenth |
Speed | 0.8 | Nearest Tenth |
Recovery Rate | 10 | Nearest Whole Number |
Retirement Age | 5 | Nearest Whole Number |
Armor | 0.6 | Nearest Tenth |
Warding | 0.7 | Nearest Tenth |
Dodge | 6 | Nearest Tenth |
Block | 6 | Nearest Tenth |
Accuracy | 4 | Nearest Whole Number |
Stunt Chance | 4 | Nearest Whole Number |
Bonus Damage | 0.3 | Nearest Tenth |
Potency | 0.3 | Nearest Tenth |
Charisma | 30 | Nearest Whole Number |
Tenacity | 30 | Nearest Whole Number |
"storyStats" are the aforementioned personality stats. Examples are "35 bookish, 35 snark" or "70 poet". Personality stats are rescaled such that exactly one stat is between 80 and 99 and exactly one other stat is between 60 and 79 (needs verification and further explanation of how this works).
Unique Heroes
Monarchs Under the Mountain
In the Monarchs Under the Mountain campaign, the "Needs Rescuing" farmer has a unique backstory and the following stats:
Hooks: Shame, Gritty, Potential
Potency: +0.2
In addition, that hero has five bonus stat "slots". These "slots" are filled with a randomly selected stat, with a specific bonus per stat. It is possible for the same stat to fill multiple "slots", giving the same stat bonus multiple times, so there is another trade-off between specialization and broadness. Because of this unique generation method, the farmer can obtain stat combinations that are impossibly high for any other hero if enough "slots" are filled with the same stat. For each slot, Retirement Age, Charisma, and Tenacity each have a 15% chance of being picked while every other stat each has a 5% chance of being picked. Before rescaling, the personality stats are 1-60 for every stat, plus 30 in Leader.
Stat | Bonus per "slot" | Theoretical maximum (single stat filling all "slots") |
---|---|---|
Health | 0.5 | 2.5 |
Speed | 0.7 | 3.5 |
Recovery Rate | 8 | 40 |
Retirement Age | 4 | 20 |
Armor | 0.5 | 2.5 |
Warding | 0.6 | 3 |
Dodge | 5 | 25 |
Block | 5 | 25 |
Accuracy | 3 | 15 |
Stunt Chance | 3 | 15 |
Bonus Damage | 0.2 | 1 |
Potency | 0.2 | 1 (total 1.2 Potency with the guaranteed 0.2 Potency) |
Charisma | 25 | 125 |
Tenacity | 25 | 125 |
Eluna and the Moth
The non-Legacy starting heroes have fixed stats. It is also possible to recruit Elsee Arcwright, who also comes with fixed stats.
Stat | Older Sibling | Younger Sibling | Elsee Arcwright |
---|---|---|---|
Hooks | Literary, Loyal, Dreamer | Flirt, Loyal, Wanderlust | Nostalgic, Gritty, Potential |
Health | 0.6 | 0.6 | 1.2 |
Speed | 0.8 | ||
Recovery Rate | 10 | 10 | 7 |
Retirement Age | 5 | 5 | |
Armor | 0.4 | ||
Ranged Accuracy | |||
Bonus Damage | 0.3 | ||
Potency | 0.3 | 0.3 | |
Tenacity | 30 | 30 | 20 |
All the Bones of Summer
In the All the Bones of Summer campaign, the non-Legacy starting heroes have fixed stats. In addition, there are two plot-guaranteed recruits, a Hunter and a farmer whose class gets picked by the player.
Stat | Hunter of the Old Blood | The Friend | The Toughlipped Kid | Fenspear Heir | Recruitable Farmer |
---|---|---|---|---|---|
Hooks | Destiny, Wildheart, Nostalgic | Nostalgic, Physical, Loyal | Gritty, Potential, Slacker | Slacker, Literary, Wanderlust | Shame, Physical, Thorny |
Health | 0.5 | 0.5 | 0.6 | 0.5 | |
Speed | 0.8 | 0.7 | 0.8 | 0.7 | |
Retirement Age | 4 | 4 | |||
Armor | 0.5 | ||||
Dodge | 6 | 5 | |||
Block | 5 | ||||
Ranged Accuracy | 3 | ||||
Stunt Chance | 3 | 3 | 4 | ||
Bonus Damage | 0.3 | 0.2 | 0.2 | 0.3 | 0.2 |
Potency | 0.3 | 0.2 | 0.2 | 0.3 | 0.2 |
Charisma | 30 | ||||
Tenacity | 25 |
A Walk in the Unlight
Stat | An Able Youth | Kaylem of Sable Lake | Onya of Red Birch Mountain | Rayvis the Wroth | Daicleed the Disarticulator |
---|---|---|---|---|---|
Hooks | Lucky, Nostalgic, Loyal | Dreamer, Literary, Slacker | Integrity, Proud, Gritty | Distant, Thorny, Potential | Weird, Darkheart, Curious |
Health | 0.8 | 0.8 | 1 | 1 | |
Speed | 1 | 1 | 1 | ||
Armor | 0.8 | 0.8 | 1 | ||
Warding | 0.9 | 0.9 | 1.2 | ||
Bonus Damage | 0.4 | 0.5 | |||
Potency | 0.4 | 0.4 | 0.5 |
Minmaxing randomly generated heroes
By continuously using the Reroll button until stumbling upon a rare and desirable stat combination, it is possible to minmax.
Some character builds can greatly benefit from certain upbringing stats. Certain upbringing stat combinations make heroes objectively more or less fit to perform certain roles in combat.
For instance, a hero that is generated with 1.1 Speed and 5 Melee Accuracy bonuses from upbringing could be considered optimally suited for a Thornfang Hunter build. A hero that is generated with 10 bonus retirement age is more fit to suit a newly generated Warrior making it through a long campaign without relying on hook quest retirement age bonuses. A hero with a high Dodge and Block bonus is objectively more fit for using Riposte than a hero without.
(Disclaimer) Credits to metoxys for simulating all possible upbringing combinations, analyzing the data, and compiling this upbringing spreadsheet. If you share this around, then please credit metoxys properly.