Softlock on selecting units [FE8]


#1

So, I’m trying to make a hack based on vanilla FE8 (rewriting dialog, making stuff challenging, etc). For the prologue I just took the dumped Prologue.event, edited it a bit and used that. But for chapter 1 I’ve decided I want to ditch the vanilla event file completely and start fresh. Except I’ve run into one small (and by small I mean huge) problem: Whenever I select a unit the game softlocks. The selected unit freezes in place, but music keeps playing, other units keep doing their idle animation, etc.

If I use the dumped event file for chapter 1, it works (except for one oddity: the Frelian merc counterattacks while dead, though that was easily fixed by remaking the scripted fight).

More context: I only use Event Assembler to edit the ROM. I’ve got the skill system installed, and the Modular Minimug Box + the RNG Randomizer patch.

Here’s my event file. I’d only just started on it and loaded it up to see if it worked.

#include eastdlib.event

EventPointerTable(0x0A, CH1_PointerList)

CH1_PointerList:
POIN CH1_TurnBasedEvents
POIN CH1_CharacterBasedEvents
POIN CH1_LocationBasedEvents
POIN CH1_MiscBasedEvents
POIN CH1_Dunno CH1_Dunno CH1_Dunno
POIN CH1_Tutorial
POIN CH1_Ballista1 CH1_Ballista2
POIN CH1_Units1 CH1_Units1
POIN $0 $0 $0 $0 $0 $0
POIN CH1_BeginningScene CH1_EndingScene

CH1_TurnBasedEvents:
TURN
ALIGN 32 //For some reason, CharacterBasedEvents have to be 32-Aligned?

CH1_CharacterBasedEvents:
CHAR

CH1_LocationBasedEvents:
LOCA

CH1_MiscBasedEvents:
CauseGameOverIfLordDies
DefeatBoss(CH1_EndingScene)
AFEV

CH1_Dunno:
//DO NOT TOUCH
BYTE $00
ALIGN 4

CH1_Tutorial:
//DO NOT TOUCH
BYTE $00
ALIGN 4

CH1_Ballista1:
BLST

CH1_Ballista2:
BLST
ALIGN 4

CH1_Units1:
//Add Player Units
UNIT Eirika EirikaLord Eirika Level(1,Ally,False) [13,9] 0b 0x0 0x0 0x0 [0x0] NoAI
UNIT Seth Paladin Eirika Level(1,Ally,False) [14,8] 0b 0x0 0x0 0x0 [0x0] NoAI
UNIT

CH1_EnemyUnits:
UNIT Breguet Knight Breguet 0x24 [2,9] 0b 0x0 0x0 0x0 [0x14,0x0,0x0,0x0] [0x3,0x3,0x9,0x20]
UNIT

CH1_BeginningScene:
FADU 0x8
LOAD2 0x1 CH1_Units1
ENUN
LOAD1 0x1 CH1_EnemyUnits
ENUN
ENDA


CH1_EndingScene:
MNCH 0x01 //TODO: Replace with proper code for next chapter.
ENDA

#2
CH1_Tutorial:
//DO NOT TOUCH
BYTE $00
ALIGN 4

Try using

CH1_Tutorial:
END_MAIN

instead.


#3

Doing that for just the tutorial line doesn’t fix it.

But I also tried changing CH1_Dunno to have END_MAIN instead of the BYTE/ALIGN and suddenly it works.

Figures it’d be the thing in the template file that says “DO NOT TOUCH” that was breaking it.

Thanks.