Title: The Raft? Post by: Tii on January 16, 2011, 04:20:15 AM Hi, does anyone know how to get the raft introduced right before reaching Crescent Island into any point you want in the game? Or is this even possible?
Thanks in advance. Title: Re: The Raft? Post by: Jigglysaint on January 16, 2011, 03:25:26 PM Well according to the game, the Raft's ID is E6 01. There must be somewhere in ram that tells the game that Link is on the raft. The raft event is set when you get the rope and chart and talk to the raft guy, and I believe the raft disappears when you activate the Cressent island event.
I suppose it's possible to change it, but it would require alot of ASM, and require the termination of the Cressent island event(which in turns means even more free space). Title: Re: The Raft? Post by: Lin on January 16, 2011, 09:12:27 PM If you want I'll create a patch for it. However, since ZOLE 1.14 won't be out for a bit, I'll tell you what byte(s) to change.
Open a hex editor and open your ROM. Navigate to 0x43E72. Change the bytes there to: CD F3 31 The raft will now appear no matter what. Title: Re: The Raft? Post by: Jigglysaint on January 16, 2011, 10:22:51 PM I can do one better: 43E6D: 18 06. See, what's happening is the game is doing a check to see if a specific event is activated, and if not, 05 3B is where all nul interactions are sent. That is to say that when an interaction is to disappear, that rouotine is where the game is sent to. F3 31 is the routine that makes a check for global event flags. In fact, it would be a good idea to compile a list of subroutines that do various things so that people can get an idea about how to ASM in certain events(if scripts won't allow).
Title: Re: The Raft? Post by: Jigglysaint on January 16, 2011, 10:38:19 PM Edit: Did a quick test. I placed E601 inside a dungeon as a regular interaction, along with water. It works perfectly, though I would believe that if it was placed as a static interaction, it would work much better. Also only water and deep water tiles can be crossed. If it's a pit, it's uncrossable. If it's land, you disembark. It should be possible for a raft to spawn due to a script. It could also be possible to set up other qualifiers for the raft to appear, or even create multiple indexes that could allow for specific rafts to appear at specific times. Since this code is near the end of the bank anyway, it should be very easy to retool it to have different indexes have different requirements. Still need to test E6 00, which seems to control the first Dimitri event.
|