Users browsing this thread: 1 Guest(s)
8 Dragons question

#1
Posts: 275
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
Does anyone know how the game checks that you killed one of the 8 dragons? I was going to swap monster 71 with 261 (the White Drgn with the Prometheus) so that the Prometheus appears on the Veldt instead of the White Drgn, and I was then going to update monster formation 481 (the White Drgn formation) to point to the new White Drgn ( monster 261). Before I do this, I wanted to make sure the game will still count a dead dragon based on the formation and NOT the monster number (or through some other means).

Hope this makes sense!
  Find
Quote  

#2
Posts: 14
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Oct 2017
Reputation: 0
Status
None
Hmm. I'm not sure how the game counts the dragons currently. Have you tried any other methods of changing the Veldt's battles?

So far I've realized that the Veldt pulls battles based on the monster formations list. You can see these in FF3usME under the "Form" section, and Formations tab. You see here the list of Veldt battles is assorted into "groups" which is basically the exact same list as what the game has for monster battles. It's not chosen from the monster list itself. For example:

0 Lobo
1 Lobo, Lobo
2 Guard, Guard
3 Bleary, Bleary, Crawly
4 Lobo, Lobo, Marshal
5 Hornet, Bleary, Bleary, Bleary, Hornet
6 Leafer
7 Leafer, Leafer, Dark Wind

- Is the first 'group' of battles the Veldt has. This happens to be the first 8 formations listed in FF3usME as well. You'll notice that the 2nd, 3rd, etc groups also align with this list.

The White Dragon is formation 481 (group 61 second formation) on the Veldt. Prometheus's formation number is 457, which should be in group 58 second battle. You could also switch the monster formations around (make Prometheus formation number 481 instead of White Dragon), this would mean you would have to change other code to allow the boss fight to use formation 457 instead of 481. Else you'd be fighting Prometheus in Cultist Tower.

According to madsiur here: the Veldt battle groups are stored in RAM (Field RAM to be specific if you want to search it on the site's documentation). There's 64 bytes, each with 8 bits exactly (64 groups of 8 monster formations each).

Quote:So to change add/remove/change formations on the veldt you must play with monster numbers and formation numbers as well as which monster is in which formation. There is no pre-existing veldt list in the ROM. It's created and updated each time you win/escape a battle.

Might also be easier to switch Prometheus with Intangir. Since that guy only does fight and Pep Up for rage commands. He's formation 210

It should be noted that the "Won't appear in Veldt" option in FF3usME seems to do nothing, as Prometheus and White Dragon both have this unticked. This means both should appear in Veldt, but only White Dragon does. I could be wrong about this part though...
  Find
Quote  

#3
Posts: 275
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
Thanks for the response ExiaTreason, but the reason the Prometheus does not appear on the Veldt is because it uses Monster ID #261. Any Monster with an ID above 255 will not appear on the Veldt, nor will any formation above 511 (the "do not appear on Veldt" box should work if these other qualifications are met). This is why it seems much easier to swap the graphics and stats of the Prometheus and White Dragon (and the names), and simply point the formations to the new ID numbers. This should make the Prometheus appear on the Veldt while stopping the White Dragon from appearing, but I am still unsure if the dead dragon will count toward the 8 dragons.

Does anyone know a way I can skip ahead to parts of the game using an emulator to test this stuff? Currently, the only way I know of to do this is to play through the whole game using fast forward... Way too tedious, which is why I ask a lot of questions here.
  Find
Quote  

#4
Posts: 3,849
Threads: 271
Thanks Received: 779
Thanks Given: 439
Joined: Oct 2011
Reputation: 63
Status
Tissue-aware
(05-14-2018, 10:52 PM)Lightning Wrote: Does anyone know a way I can skip ahead to parts of the game using an emulator to test this stuff?  Currently, the only way I know of to do this is to play through the whole game using fast forward... Way too tedious, which is why I ask a lot of questions here.

What about savefiles / savestates?

https://www.fantasyanime.com/finalfantas...6saves.htm


As for the 8 dragons, iirc there is one event bit per dragon that is set in the Dragon NPC event after you kill it, the game use those to display how many dragons are left and other stuff. So the Veldt White Dragon is never counted in this.
  Find
Quote  

#5
Posts: 275
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
(05-14-2018, 11:56 PM)madsiur Wrote: As for the 8 dragons, iirc there is one event bit per dragon that is set in the Dragon NPC event after you kill it, the game use those to display how many dragons are left and other stuff. So the Veldt White Dragon is never counted in this.

Pardon my ignorance, as hex editing is not my thing - but where is this event bit triggered? Is it triggered via the formation, by the monster itself, or outside the battle?

It seems to me that if the Veldt dragon does not trigger any event, then I should be just fine swapping the Prometheus with the White Dragon, as long as the event still pulls up the same formation (which will point to the new White Dragon ID#)

Those save states won't work with a hacked rom, will they?
  Find
Quote  

#6
Posts: 141
Threads: 19
Thanks Received: 97
Thanks Given: 4
Joined: Dec 2013
Reputation: 9
Status
Auto-life
The eight dragons are called via events. If you have the events script dump (see here), you can try to track all calls to CC/1F9F. This routine checks the counter of the defeated dragons. If you defeat all dragons, it gives you the esper Crusader. Otherwise, it displays the remaining number of dragons to defeat.

As example, the white dragon code is:
Code:
CC/558B: 4D    Invoke battle, enemy set $8B, background $3F (Default for this area), (mosaic effect enabled), (swoosh sound enabled)
CC/558E: B2    Call subroutine $CA5EA9
CC/5592: 42    Hide object $10
CC/5594: DD    Clear event bit $1E80($694) [$1F52, bit 4]
CC/5596: 96    Restore screen from fade
CC/5597: 5C    Pause execution until fade in or fade out is complete
CC/5598: 4B    Display dialogue message $06DD, wait for button press
               Got 'Pearl Lance'!
CC/559B: 80    Add item $21 (<DA>Pearl Lance ) to inventory
CC/559D: B2    Call subroutine $CC1F9F
CC/55A1: 3A    Enable player to move while event commands execute
CC/55A2: FE    Return

You can change the $4D opcode, the 'invoke battle' event. It calls the enemy formation to fight. In this case, the white dragon.

It is important to not confuse the 'monster formation pack' and the 'monster formation' tabs in ff3usme. The 'monster formation pack' is a collection of the 'monster formation' to call for the fight. Each pack has four or two formations to call based on a probability.

In ff3usme, for the $4D opcode, the pack number is $100 plus the opcode argument. In this case, it is $100 + $8B = $18B or 395 in decimal. The pack 395 calls the formation 481. technically, it is 3/4 of chance to call the formation 481 and 1/4 of chance to call the formation 481. Anyway, it will always call the formation 481. The formation 481 is the white dragon.

You can change the opcode argument to call a different pack, change the existent pack to call a different formation or change the existent formation with a new enemy. You have more than one option.

The white dragon in the Veldt is unrelated with the mentioned code/event. The white dragon will only appear in the Veldt after you defeated it once and it doesn't affect the counter of defeated dragons. The related event code will never be executed in the Veldt.
  Find
Quote  

#7
Posts: 14
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Oct 2017
Reputation: 0
Status
None
(05-14-2018, 10:52 PM)Lightning Wrote: Thanks for the response ExiaTreason, but the reason the Prometheus does not appear on the Veldt is because it uses Monster ID #261. Any Monster with an ID above 255 will not appear on the Veldt, nor will any formation above 511 (the "do not appear on Veldt" box should work if these other qualifications are met). This is why it seems much easier to swap the graphics and stats of the Prometheus and White Dragon (and the names), and simply point the formations to the new ID numbers. This should make the Prometheus appear on the Veldt while stopping the White Dragon from appearing, but I am still unsure if the dead dragon will count toward the 8 dragons.

Yeah after rereading what Madsiur said there about there being at least 1 monster below 256 counting as valid. Because I was originally skeptical about Proto armor showing up on the Veldt being number 357.

Quote:This is why it seems much easier to swap the graphics and stats of the Prometheus and White Dragon (and the names), and simply point the formations to the new ID numbers. This should make the Prometheus appear on the Veldt while stopping the White Dragon from appearing, but I am still unsure if the dead dragon will count toward the 8 dragons.

Is the removal of the White Dragon from Veldt one of the ultimate goals here? I was under the impression that just adding Prometheus was what you wanted, in which case I feel my Intangir suggestion was still sound. Otherwise, it seems you have your answer either way!

P.S. Always love to learn new things about hacking this. Thanks for the information guys Smile
  Find
Quote  

#8
Posts: 275
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
(05-15-2018, 02:43 AM)HatZen08 Wrote: You can change the opcode argument to call a different pack, change the existent pack to call a different formation or change the existent formation with a new enemy. You have more than one option.

So in the end, I can in fact change the monster in the formation like I mentioned in my first post and everything will be fine. That was the answer I was looking for, since I don't feel like getting in to hex editing at this point!

Quote:The white dragon in the Veldt is unrelated with the mentioned code/event. The white dragon will only appear in the Veldt after you defeated it once and it doesn't affect the counter of defeated dragons. The related event code will never be executed in the Veldt.

Yes, I already figured this part out for myself - but if I don't want the White Drgn to appear on the Veldt anymore while introducing another monster, then the monster ID has to be below below 255 or the formation below 512. This is why swapping the monsters is a perfect solution to accomplish all. Smile

(05-15-2018, 06:05 AM)ExiaTreason Wrote: Is the removal of the White Dragon from Veldt one of the ultimate goals here? I was under the impression that just adding Prometheus was what you wanted, in which case I feel my Intangir suggestion was still sound. Otherwise, it seems you have your answer either way!

Yes, removing the White Drgn from the Veldt was the main goal. Alongside Marshal, it is the only boss on the Veldt that really doesn't belong. However, I did actually change my mind about which monster to replace it with. Rather than have Prometheus, I am making ProtoArmor work instead (since it already appears on the Veldt, but without the possibility of a Rage). I already swapped Marshal with Mega Armor as well, so you can now rage them both. Prometheus is still unobtainable, since all the Rage slots are filled, and I know of no other bosses in the Rage list that shouldn't be there.

Then again, I wonder if Chupon or Siegfried really belong on the Veldt? The General Leo edition hack adds them, but they are bosses...
  Find
Quote  

#9
Posts: 192
Threads: 3
Thanks Received: 23
Thanks Given: 134
Joined: May 2013
Reputation: 0
Status
None
(05-14-2018, 11:59 PM)Lightning Wrote: Those save states won't work with a hacked rom, will they?

Savestates might works with hacked roms but character stats will be from the original ROM the savestate is based on. Items, monsters and other data (names, stats, etc) should update with data from the hacked ROM. If you get a blank screen after loading a foreign savestate, that's because your ROM is significantly different in comparison to the original ROM.

I don't know about other emulators but ZSNES supports up to 100 savestates per ROM which is enough to have a savestate for pretty much every locations in the game.



  Find
Quote  

#10
Posts: 275
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
(05-17-2018, 04:53 PM)Warrax Wrote:
(05-14-2018, 11:59 PM)Lightning Wrote: Those save states won't work with a hacked rom, will they?

Savestates might works with hacked roms but character stats will be from the original ROM the savestate is based on. Items, monsters and other data (names, stats, etc) should update with data from the hacked ROM. If you get a blank screen after loading a foreign savestate, that's because your ROM is significantly different in comparison to the original ROM.

I don't know about other emulators but ZSNES supports up to 100 savestates per ROM which is enough to have a savestate for pretty much every locations in the game.

You are right, they do indeed work even with all the modified content! Thanks.

[Image: GW57Tqg.jpg]
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite