Users browsing this thread: 1 Guest(s)
How difficult would this be? NEW GAME +

#1
Posts: 128
Threads: 11
Thanks Received: 0
Thanks Given: 0
Joined: Jun 2021
Reputation: 2
Status
None
I've been thinking about the newgame+.ips patch I stumbled upon last month that adds a TYPE of newgame+ feature to FF6 and injects the trigger into the adventures'...clubhouse...found in Narshe at the beginning of the game.

My question is this, how difficult would it be to create something like that with the added condition that it doesn't trigger until all 8 legendary dragons are killed?  Also, a second question is, did the GBA port add some kind of reward/benefit for killing all 8 dragons that was not a feature in the SNES build?  If I remember correctly there wasn't much of a prize for killing all of them in the original...an esper or some-such.

Finally, is it worth challenging anyone to build a hack like that at all...if it were possible?  The priority for said hack is probably pretty low, since there's already one out there.

Let me know what you guys think.


Oh yeah, thank you to whoever built the previous hack.  I'm positive he's a part of the community here.
  Find
Quote  

#2
Posts: 128
Threads: 11
Thanks Received: 0
Thanks Given: 0
Joined: Jun 2021
Reputation: 2
Status
None
The Czar Dragon would be another good candidate for this type of thing. I just didn’t want to suggest it earlier, because trying to merge those two patches might end up being a disaster.
  Find
Quote  

#3
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
Creating a New Game+ is not conceptually difficult, but it would require a lot of event space and a crazy attention to detail. You would just need to clear every event bit that was set, and set every event bit that was cleared. You could do this through an event, and check to make sure that the 8 dragons have been beaten as a condition to start it. You would also use that event to un-recruit all of your party members.

It would probably be more economical, and less of a headache to write custom ASM that allows you to copy a block of values to RAM, kind of like how the game handles its initial event bits. (When you boot up the game, it has certain event bits already on or off before you even select "New Game". If you start a new game, it uses those bits. If you load from a save file, it overwrites those with what your save file has. You'd need to do something like that.)


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  
[-] The following 1 user says Thank You to PowerPanda for this post:
  • Joshua H. (07-12-2021)

#4
Posts: 128
Threads: 11
Thanks Received: 0
Thanks Given: 0
Joined: Jun 2021
Reputation: 2
Status
None
Got it. That DID make sense...
The event space that has most of my attention these days would be the Air Force Boss fight just after the Utros/Typhon battle. Typhon casts SNORT, then the Air Force Boss Fight begins. Removing that boss fight would create space, correct?

The next question moving forward would be, is clearing that boss fight from the game creating enough cleared event space for the new event? That ASM patch seems like the ticket. The only reason why I'm presenting this as a challenge is that I'm right at the tip of the iceberg learning HEX. Learning ASM would be a whole different iceberg. The Adventure school in Narshe does seem like a good place to place the NewGame+ trigger/switch. That way you wouldn't have to rewrite the new game/save menu...all you'd have to do is create a new caption for the receptionist at the school after the condition had been met.
  Find
Quote  

#5
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
No, that wouldn't be nearly enough event space. I don't even think my patch Cyan's Uneventful Dream would get you there, and that frees up a whole kilobyte of space. I think the only realistic way to do this is through ASM/Hex. But I have no idea how to code that.


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  

#6
Posts: 128
Threads: 11
Thanks Received: 0
Thanks Given: 0
Joined: Jun 2021
Reputation: 2
Status
None
No worries. One can dream...
  Find
Quote  

#7
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 159
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
That's exactly what the New Game + patch does (by Master ZED, who afaik hasn't been around the scene for many years), it clears/sets all the appropriate event bits and allows the player to keep most of the character stats, spells/Espers and items via assembly, not manually by event code; though it does of course do a small event edit for that NPC to add a normally unused bit in order to trigger the actual NG+ assembly code stuff, see further down for more on that.

Anyways, It'd be simple enough to just rework that NPC event code to add another 'if' condition of having defeated all the dragons first before branching to the NG+ branch, instead of just the 'we are in the WoR' check, like how it is. I wound up doing this same thing of sorts, editing the condition so that the player needs a certain Rare item (which are also handled by event bits) to trigger it. It's simple, but one would need to have a bit of hex editing and event editing know-how, but not much! FF6Tools could handle it as well I'd imagine, ROM-willing.

The only issue here is that there is no preexisting event bit for 'all 8 dragons have been defeated', because that's handled in a more complex way, so one would have to slip in/set another unused event bit for when the game gives the player Crusader, after defeating them all, then use that for the new 'if' condition for the NPC. So it would read: IF our new event bit is set from having defeating all the dragons & getting Crusader, then branch to the New Game + prompt... otherwise, do something else that comes after that check or just end the event.

The NG+ NPCs' event code changes are few - ZED basically just alters the 'we are in the WoR' branch offset in order to add a normally unused event bit ($066) which he utilizes for the NG+ code, so when that gets read after selecting "Yes", it does the assembly magic which is handled elsewhere.

Another glaring issue with this patch is that it will destroy FF3usME's dialog editor... I can't remember how exactly I got around that, other than probably dissecting the patch via an IPS patch report and making sure the dialog editing stuff is excluded.

EDIT: To make it even easier, one could just swap that NPCs' preexisting 'is in the WoR' ($0A4) bit check at CC/339C for our new bit we set after defeating the 8 dragons/receiving Crusader, or what have you. This way one could avoid adding on another bit check all together. Though, this would make it so that NPC says the same thing he does in the WoB, at least up until defeating the dragons. So it'd be slightly watered-down, but just as effective.


We are born, live, die and then do the same thing over again.
Quote  
[-] The following 1 user says Thank You to Gi Nattak for this post:
  • Joshua H. (07-14-2021)

#8
Posts: 128
Threads: 11
Thanks Received: 0
Thanks Given: 0
Joined: Jun 2021
Reputation: 2
Status
None
Right...that last part made sense, because our new condition is rooted in the “if” of does the player have crusader, yes/no. One could bypass the previous condition of “if” NPC is located in WoR. This would be true even if you used the same NPC Master Zed used in his patch, because the NG+ switch would be presented to the player via. the numbered caption of the NPC, correct? If that’s true, then the change in code would center around “if” crusader yes/no “then” replace caption number of NPC with...of course you’d have to make a brand new caption, but with FF3usME that would be extremely simple.
  Find
Quote  

#9
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
Instead of the 8 dragons, you could check to make sure that all 3 statues have been defeated. IE - you're at the end battle. You could even add in a dialogue option in the ending cutscene, before it displays the screen "The End".

Gi - Event bit $066 is not unused. Are you sure it isn't $061?


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  
[-] The following 1 user says Thank You to PowerPanda for this post:
  • Joshua H. (07-14-2021)

#10
Posts: 2,549
Threads: 98
Thanks Received: 147
Thanks Given: 159
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
(07-14-2021, 09:34 AM)PowerPanda Wrote: Gi - Event bit $066 is not unused. Are you sure it isn't $061?

Ah yes, you're right, event bit 66 is totally used. I meant the event command:
66 : 5    : Nonexistant. Unused in standard game.

I was also incorrect in saying that the event code bytes are "few", I forgot that there is a bit more general event coding in regards to handling the characters, 168 bytes or so... but that's not much still considering it does leave out all that bit clearing.


We are born, live, die and then do the same thing over again.
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite