I’m trying to do something “New Game+ adjacent” and I’m not sure what the cleanest FEBuilder approach is. FE8 is the base game I’m trying.
My goal is after the player beats the game once, I want the next playthrough to have access to something new. Kinda like the equippable bands in PoR.
Is there any way in FEBuilder to detect that the game has been cleared and set a persistent flag for it? Is there a built-in “game beaten” flag or a command like CheckGameClear or ClearCount?
I’ll be honest, I saw the NewGame+ tutorial here: NewGame+ (FE8) . It might be the same question, but it sounded kinda different from what I was trying to do. Id appreciate any pointers.
Use the event writer / reader patch to read the byte at 0xE00000E. If it’s zero, then they have not completed the game. If it’s any value other than zero, they have beat the game.
Thank you, @Vesly. I have a couple clarifying questions.
If I did something like this using the Add Event: Event Writer tool, I would create an experience where the first time on a save file, this event would be skipped? This is my attempt at recreating what you had on the other post.
Why should I be using Slot 1 and 212 for PackedMemorySlot? Could that create issue?
Also, it seemed like in your example somebody could immediately delete a save file, and recreate a new game, to create a New Game+ experience. Is that true?
Close, but your branch beq is using slot C instead of slot 2. ReadByte puts the result in slot 2.
Sort of. It depends on when you set the flag. You could check flag 1 in chapter 1 to give a silver sword.
If flag 1 is set in chapter 2, all new games will have this chapter 1 reward as long as they’ve reached chapter 2 before.
If flag 1 is set after defeating the final boss, then they’ll only get the reward on future runs if they’ve beaten the final boss before.
I think I understand. So I first need to use the Write Byte command on the last chapter to make a new game + before the Read command would take effect.
And by default is the value at E00050 set to 1? And this needs to be changed to 0? This doesn’t break anything, does it?
Writing the byte at the start of the game is only if you want to have something happen once per save slot, even on reloading. I don’t think this is what you want.
If you only want to check if the game has been completed before, this is all you need to do: