Location of the post-game bonus characters in Sacred Stones?


#1

How to add more unlockables like Valter, Fado, Lyon, Hayden ect.? The characters you only get by that Lagdou Ruins and Tower of Valni.
I would like to know if it’s possible to create more achievements to get new characters by either do things like killing more numbers of enemies or clearing towers and stuff like that.


#2

Extra unit uses flag 0x67 - 0x70.
Therefore, just search the source code for the place where this flag is set.

Probably I think this function.
FE8J 08037E00 Join extra unit
FE8U 08037D68 Join extra unit

FE8J 08037f0c Subroutine of extra unit r1=Unit placer address
FE8U 08037DDC Subroutine of extra unit r1=Unit placer address

Units Data
Please attach this address to the pointer of unit placer.
It is the structure is UNIT null UNIT null …

FE8J
08926218 Caellach (Flag:0x67)
08926240 Glen (Flag:0x68)
08926268 Orson (Flag:0x69)
08926290 Valter (Flag:0x6a)
089262B8 Riev (Flag:0x6b)
089262E0 Hayden (Flag:0x6c)
08926308 Fado (Flag:0x6d)
08926330 Ismaire (Flag:0x6e)
08926358 Selena (Flag:0x6f)
08926380 Lyon (Flag:0x70)

FE8U
088D1DC4 Caellach (Flag:0x67)
088D1DEC Glen (Flag:0x68)
088D1E14 Orson (Flag:0x69)
088D1E3C Valter (Flag:0x6a)
088D1E64 Riev (Flag:0x6b)
088D1E8C Hayden (Flag:0x6c)
088D1EB4 Fado (Flag:0x6d)
088D1EDC Ismaire (Flag:0x6e)
088D1F04 Selena (Flag:0x6f)
088D1F2C Lyon (Flag:0x70)

Interestingly, the implementation method differs between FE8J and FE8U.

FE8J is implemented by an if statement, but it seems that data is implemented as an array in case of FE8U.
The position of the table is here.
FE8U: 080D8018

struct ExtraUnitTable _080D8018[11]; //However, the last data is null termination data.

struct ExtraUnitTable{
	dword	flag;
	dword	unit_placer;
}; //sizeof() == 8