One-Hit Obliterator: Difference between revisions
Jump to navigation
Jump to search
imported>Leoetlino No edit summary |
imported>Leoetlino (→Checks: add area map) |
||
Line 32: | Line 32: | ||
* The player must be in a shrine '''or''' must not have escaped the trial. | * The player must be in a shrine '''or''' must not have escaped the trial. | ||
* The weapon must not have run out of "chemical" power. | * The weapon must not have run out of "chemical" power. | ||
[[File:PlateauFieldMapAreas.png|thumb|right]] | |||
The player is considered to have '''escaped the One-Hit Obliterator trial''' iff<ref>0x71006889D0</ref>: | The player is considered to have '''escaped the One-Hit Obliterator trial''' iff<ref>0x71006889D0</ref>: |
Revision as of 14:20, 7 April 2019
Infinite Attack Power
Finite damage value
The One-Hit Obliterator doesn't actually deal "infinite" damage; its attack power is merely boosted to 99999 points:
void Weapon::x()
{
...
float attackPower = this->getEffectiveAttackPower(nullptr);
if ( dlc::isOneHitObliteratorActor(this, true) )
{
attackPower = 99999.0;
...
}
...
}
Checks
The game overrides the damage value if and only if[1]:
- The weapon actor name is Weapon_Sword_502 (One-Hit Obliterator).
- The One-Hit Obliterator is in an "active" state.
For the weapon to be considered active[2]:
- The actor's profile must be "Weapon".
- The player must be currently playing the One-Hit Obliterator quest (BalladOfHeroes_Step02 must be set and BalladOfHeroes_Step03 must be unset).
- The player must be in a shrine or must not have escaped the trial.
- The weapon must not have run out of "chemical" power.
The player is considered to have escaped the One-Hit Obliterator trial iff[3]:
- ("Is on ground" checks that are irrelevant for the damage override check.)
- The player's position is in none of the Plateau field map areas (areas 46, 47, 50)
- The check fails if all of the following coordinates are invalid: (x, z), (x+5.0, z), (x-5.0, z), (x, z+5.0), (x, z-5.0)
- or the player's Y coordinate is strictly lower than 150.0.