Entry 273
Event 108 under the autopilot: shut doors, Kyvia's parts and its healing gomora
Filescrates/piney-game/src/session/tests/survey.rscrates/piney-game/src/session/tests/shrine.rscrates/piney-game/src/session.rscrates/piney-game/src/area.rs
With Kyvia ported (272), PINEY_SURVEY_ONLY=108 PINEY_SURVEY_GOD=1
now ends story 108: done in 420,000 frames. It reaches field 9 at about
frame 188,000 and beats Kyvia by about 255,000. Four things were in the
way, all in the pilot. The fourth needed a harness aid.
The shut doors rule was wrong
270 had the dungeon walker fight every foe in a room while
DungeonArea.door.door_anm was false. That flag is MoveDoor's
clear_all: no active object anywhere, not "this room's doors are shut".
In area 47's dungeon it held the walker on a Hackberry King whose HP comes
back (536, then 718 of 1410), and 108 never reached field 9.
Doors made shut by SetDoor stay shut until doorFlag turns true. The
rule now reads !door.door_flag (with doors in the room), and only while
the walk's goal is in another room.
Kyvia's core and gomoras are foes
Combat::enemies() holds the field's foes and the boss body, but not a
boss's parts. Kyvia's core and its five gomoras are characters of their
own on the enemy list. So the pilot saw no foe on the disc, and Kite stood
still.
The pilot's foes now adds a boss's listed parts. approach_part walks
Kite to within 350 of one when no field foe is near, since the core rides
its spline round the disc.
Which part, and which kind
The core at attribute 0 (row 32) has P_DEF 9990, P_EVA 9990 and M_DEF 2000,
at level 99. Row 33 is the reverse. A gomora of attribute 0 (a heal, every
270 frames) casts skill 295 on the core. Only damage of DmgWait (800)
within one window sticks. When the window ends, ChangeAttribute sets the
HP back to DmgCount, which is the window's starting HP, raised by any
heal (CheckCountAtkTime).
The pilot's focus is therefore the living attribute-0 gomora, then the
core. Kite's skill and the members' spells go to it through the target
menus (65 for Kite, 73 for a member). The pilot presses DOWN until the
world's cmndTarget is the focus; menu 73 moves cmndTarget as 65 does.
Magic or physical follows the focus's P_DEF against M_DEF, and the
members' Skills! or Magic! order is given again when that flips. A
member's spell at a core that magic hurts goes out even though the core
resists no element (every resist is 100).
The party was too weak: a harness aid
At the start's levels (Kite 30, the members 26, starting gear) the party
did 10 to 70 a hit on the core. The healer undid it faster than the party
could deal it: the best window reached 839 once, and the core was back at
5000 within 3000 frames. The damage is the game's CalcBattleDamage, so
this is not a port error. A player would come with more levels and better
gear, and the pilot neither grinds nor shops.
- The console has a new
exp N, which gives N experience to each member in the field.CheckLevelUp(chara::check_level_up, run from Kite's and the fellows' frames) turns every 1000 into a level, as a fight's experience does. - Under god mode,
levels_for_bossholds the party at 60 or above while a boss's parts are up (BOSS_PARTS_LEVEL).
At 60 the core falls in about 60,000 frames of fighting: 2429, 1594, 806, then 434 over successive windows. Kyvia falls, the body exits, and block 23 runs.
- The lowest level at which this pilot can beat Kyvia 01; 60 was the first tried. What a player's level and gear at this point are was not measured. - The Hackberry King in area 47's dungeon takes the pilot about 170,000 frames; whether its HP should come back as fast as it does was not checked against the game.