boss_randomization [Free Enterprise Wiki]

User Tools

Site Tools


boss_randomization

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

boss_randomization [2020/01/03 02:26] (current)
b0ardface created
Line 1: Line 1:
 +====== Boss randomization ======
 +
 +Outside of the final boss Zeromus, the 35 designated boss battles in Free Enterprise are:
 +
 +  * D. Mist
 +  * Officer + Soldiers (Kaipo Inn night fight)
 +  * Octomamm
 +  * Antlion
 +  * WaterHag (Edward'​s solo story battle version)
 +  * MomBomb
 +  * The Fabul gauntlet
 +  * Milon
 +  * Milon Z.
 +  * D.Knight
 +  * Guards (Baron Inn fight)
 +  * Karate
 +  * Baigan
 +  * Kainazzo
 +  * Dark Elf
 +  * Magus Sisters
 +  * Valvalis
 +  * Calbrena
 +  * Golbez
 +  * Dr. Lugae
 +  * Dark Imps (Super Cannon room fight)
 +  * K.Eblan / Q.Eblan
 +  * Rubicant
 +  * EvilWall
 +  * Asura
 +  * Leviatan
 +  * Odin
 +  * Bahamut
 +  * Elements
 +  * CPU
 +  * Pale Dim
 +  * Wyvern
 +  * Plague
 +  * D.Lunars
 +  * Ogopogo
 +
 +Boss randomization shuffles the bosses around their respective positions, so each time you play, the boss you encounter in a given location is different. (Exception: there is no boss battle during the SandRuby cutscene in Kaipo, so in a Free Enterprise seed there will always be one of the 35 possible bosses missing.)
 +
 +To prevent large difficulty swings, boss stats are scaled to be close to the stats of the boss that is being replaced. However, this is a very loose scaling with a fair degree of variance, and some attacks do not scale well -- MegaNuke is devastating no matter where you encounter it.  Save often!
 +
 +===== Safety checks =====
 +
 +For the most part, bosses can appear in any position without restriction. However, some boss battles are notably more difficult, and to avoid harsh roadblocks, the randomizer guarantees that there will be a path to the underworld that does not require defeating any of these bosses:
 +  * Golbez
 +  * Wyvern
 +  * Valvalis
 +  * The boss in the Odin position
 +  * D.Knight (only if [[No Free Lunch challenges|No Free Bosses]] is enabled)
 +
 +Additionally,​ due to a corner case in the randomizer, under [[No Free Lunch challenges|No Free Key Item]], if one of those bosses is in the Karate position, then D.Mist will not be in the Guards position, in the off chance that D.Mist is gating underworld progression.
 +
 +The above safety checks can be disabled by applying the ''​Bunsafe''​ flag.
 +
 +===== Boss scaling algorithm =====
 +
 +Given a boss A, that we want to scale to the level of reference boss B:
 +
 +  * Sum the HP of all enemies in A, and do the same with B.
 +    * For enemies that have a scripted "​death"​ once their HP hits a certain threshold (eg. Milon'​s "Oh my body"​),​ only consider the portion of their HP above that threshold.
 +  * For each enemy in A, set its new HP = (old HP) / (A sum HP) * (B sum HP).
 +  * Do the same calculation for GP and EXP.
 +  * Scan all the sub-battles of A in search of the enemy with the highest HP, and designate it the "​leader"​. Do the same with B.
 +  * Set the leader'​s new attack, hit%, attack multiplier, defense, evade, defense multiplier, magic defense multiplier, speed, spell power, and level to match those of B's leader.
 +  * For each other enemy type in A other than the leader,
 +    * Calculate the ratio R = (its attack power) / (the leader'​s original attack power). Do the same for hit%, multiplier, etc.
 +    * Designate the "​ideal"​ new attack power as (leader'​s new attack power) * R. Do the same for hit%, multiplier, etc.
 +    * Search the monster stats tables for the entry that most closely matches the "​ideal"​ stats, and set the enemy'​s new stats to the closest match.
 +  * For enemies that change their stats as part of their battle script, update the values in script to most closely as possible maintain the ratio between the scripted stat and their original stat.
 +  * All enemies in A retain their original elemental/​type properties, status resistances,​ and drop tables.
 +
 +Some enemy types in boss battles appear in other non-boss battles (for example, the Bombs and GrayBombs in the MomBomb fight). Even if these enemies'​ stats are scaled in their boss fight, their non-boss-battle counterparts will keep their original stats.
 +
 +To see the exact results of these calculations for each boss, see the [[boss stats tables]].
 +
 +Note that the K/Q Eblan boss position is an invented boss position, modeled after Dr. Lugae, with 6000 total HP.
 +
 +===== Alt Gauntlet =====
 +
 +The ''​Balt:​gauntlet''​ flag enables the Alt Gauntlet, which replaces the battles normally fought in the Fabul Gauntlet boss with five standard enemy encounters, taken from the nearby area. These encounters are not randomized -- that is, if the alt gauntlet appears in the Antlion Nest in two different seeds, the five battles you fight there will be the same.
 +
 +Additionally,​ the fights in the alt gauntlet are not scaled; the enemies will have their normal stats, EXP, etc.
 +
 +===== Wyvern settings =====
 +
 +Wyvern is a dangerous boss that begins the battle by using MegaNuke. To smooth out the difficulty curve, two options are available to adjust this behavior:
 +  * ''​Bwhyburn''​ will remove the opening MegaNuke entirely, but it will also remove the two passed turns that Wyvern usually takes after the MegaNuke, launching it into its regular battle script immediately.
 +  * ''​Bwhichburn''​ will replace the opening MegaNuke with another random enemy attack. The attack you get will usually be less bad than a MegaNuke. ​ Usually.
  
boss_randomization.txt ยท Last modified: 2020/01/03 02:26 by b0ardface