Golden Sun Hacking Community
January 19, 2018, 11:15:37 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
  Home   Forum   DC Wiki Help Search Calendar Downloads Login Register  
Pages: [1]   Go Down
  Print  
Author Topic: Jupiter Lighthouse Stuff  (Read 1811 times)
0 Members and 1 Guest are viewing this topic.

Regular Member
**

Coins: 2
Offline Offline

Posts: 135

« on: February 08, 2017, 12:11:32 PM »

Hey everyone. Jupiter lighthouse is known as the most unbroken dungeon in TLA. Everything we've thought of has failed. I took another run at the Lighthouse today and made a curious observation concerning the retreat glitch.

Normally the retreat glitch works like this. After retreat has failed the game thinks you are in the room that you would have been sent to if retreat was successful (the 'retreat room'). Example - entering Airs rock through the second entrance makes the retreat point Area 55 Door 10, if you enter another Area of the dungeon (say Area 58) and use the retreat glitch then the Area is reset to 55, while you're still physically in Area 58. In this glitched state walking through doors loads the corresponding door in the retreat room. So if you're in Area 58 and walk through Door 3, instead of being sent where this door sends you instead you will be sent to where Area 55 Door 3 will send you.

Hopefully that's not too confusing.

In Jupiter Lighthouse this doesn't appear to happen. Regardless of which door you access, you always get sent back to Area 251 Door 0. This is the same location you'd be if you'd entered the dungeon from the overworld. I'm not sure if it is Door 0, but it certainly seems like it is.

I'm just wondering if there's anything special code wise surrounding this lighthouse that might explain this. I know that encountering Alex resets the last visited Sanctum to Contigo, but beyond that I don't know of anything. 
Logged
View Profile
Fox
Fox McCloud, the Hacking Doctor
Mercury Clan

Prodigy
*

Coins: 28
Offline Offline

I am: certainly not a Gallant!
Clan Position: Head Gallant
Posts: 2403

« Reply #1 on: February 08, 2017, 02:24:34 PM »

It is most likely because the Retreat room uses a different map code file than the rest of the Lighthouse, so the map number doesn't get found.... and if none are found, it doesn't know what to change the map/door number to, so it leaves it as is?

http://forum.goldensunhacking.net/index.php?topic=1014.0 = This topic describes how Exit data is formatted, to point out that a map number is looked up. (Compared with what is stored at the value that gets changed when Retreat fails.) .... However, when I say "different map code files" then that means this gets changed as well... (02008000-0200FFFF = Map code file section.) (When Retreat fails, it doesn't revert back to the Retreat Map's Map Code, which would have been cool, but oh well. And even if it did in this case, then there wouldn't be much abuse you could do, could you? With only two doors that's nearly 10 seconds apart....)
« Last Edit: February 08, 2017, 03:08:41 PM by Fox » Logged

Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Remember kids! Before you go on that interview, remember to wash your hands in teawater! *Coughs on hand* (Excuse me, I just coughed up a little teawater, so they're still clean!) You wouldn't want that hiring manager to be unimpressed.

May the force be with you!
Shoo! Why does it smell in here?
Maybe that's the wrong kind of force. *smirk*
View Profile

Regular Member
**

Coins: 2
Offline Offline

Posts: 135

« Reply #2 on: February 09, 2017, 11:42:34 AM »

The retreat glitch still works, just the every door sends you to the entrance of the dungeon (where you would have been sent if retreat was successful).

If I'm reading the editor correctly, I see the following exits; door 1 -> world map, door 2-> door 2 of 0xFE, door 3->door 3 of 0xFE, door 4 -> door 4 of 0xFC

This doesn't indicate that there's anything funny going on. Although I'm comparing it to another room which has a "madra warp" (felix gets sent to a default position on the world map) to see what is different. Along these lines, it's probably worth clarify exactly what is going when these madra warps happen.

One example is the 0xB door in room 0xCF (Tundaria Tower Interior). Door 0xB in map 0xCF gets sent to door 2 room 0xCF. If you retreat warp through the door you get sent to madra. Looking up Room 0xB relative to map 0xCE (which is where retreat would send you) would make the game read the blank code 0xFFFFFFFF

http://imgur.com/YNQW8RG

Does this mean that the game trying to send you to door 0xFF in area 0xFFF and this sends Felix to the default position on the world map? Or does the game try to look up Door 0xB in Map 0xCE, find nothing, then default you to the default position?

I noticed that the Jupiter Lighthouse stuff is missing any of the 0xFFFFFFFF separators, hence these questions.

EDIT: the first room of Jupiter lighthouse for convenience https://gyazo.com/bc4cb999812c43654b92e1cd6273409f

« Last Edit: February 09, 2017, 12:32:02 PM by Plexa » Logged
View Profile
Fox
Fox McCloud, the Hacking Doctor
Mercury Clan

Prodigy
*

Coins: 28
Offline Offline

I am: certainly not a Gallant!
Clan Position: Head Gallant
Posts: 2403

« Reply #3 on: February 09, 2017, 06:26:25 PM »

While I believe Jupiter is b/c of separate map code files... / Map's exit list not found ....
Tundaria is a different case... (It is the same file in both places)... In that case, map's exit list is found.... however, the exit is not (Exit 0xB is higher than how many the retreat room had...) So that one choose the map of the first entry. (Interesting/ assuming I read things right... was rather quick...) (Seems like the list detects entrance 0 as the end of a list of map exits.)

Exit data stops at 0x000001FF. (If you seen Atrius's topic, you'd know you can have multiple tables of these ending in that, but also multiple exit lists in one... erm... heheh.... )

080C9694 = Relevant function that scans the exit data... I probably should write up some psuedo-code, huh....?
« Last Edit: February 09, 2017, 06:52:53 PM by Fox » Logged

Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Remember kids! Before you go on that interview, remember to wash your hands in teawater! *Coughs on hand* (Excuse me, I just coughed up a little teawater, so they're still clean!) You wouldn't want that hiring manager to be unimpressed.

May the force be with you!
Shoo! Why does it smell in here?
Maybe that's the wrong kind of force. *smirk*
View Profile

Regular Member
**

Coins: 2
Offline Offline

Posts: 135

« Reply #4 on: February 09, 2017, 06:51:53 PM »

Ah yup I get it now. Curious that some dungeons have map code files split and others not.
Logged
View Profile
Fox
Fox McCloud, the Hacking Doctor
Mercury Clan

Prodigy
*

Coins: 28
Offline Offline

I am: certainly not a Gallant!
Clan Position: Head Gallant
Posts: 2403

« Reply #5 on: February 09, 2017, 07:20:29 PM »

My guess is that its probably for compression/spacing. Not 100% sure...

If you have all map's map code files separated.... it might be too bulky in the ROM.
If you hae all maps using the same map code file.. well, we're limited to only 0x8000 bytes in RAM for it, so then it wouldn't fit.
Logged

Golden Sun Docs: Broken Seal - The Lost Age - Dark Dawn | Mario Sports Docs: Mario Golf & Mario Tennis | Misc. Docs
Refer to Yoshi's Lighthouse for any M&L hacking needs...

Remember kids! Before you go on that interview, remember to wash your hands in teawater! *Coughs on hand* (Excuse me, I just coughed up a little teawater, so they're still clean!) You wouldn't want that hiring manager to be unimpressed.

May the force be with you!
Shoo! Why does it smell in here?
Maybe that's the wrong kind of force. *smirk*
View Profile
Pages: [1]   Go Up
  Print  
 
Jump to:  

Cbox
January 17, 2018, 04:07:51 PM
KyleRunner: :D
January 16, 2018, 08:44:56 PM
Fox: I must say... life can be complicated..... when you have question(s) (via email) ... and it seems like they sort of get ignored. :D ; Fun, (And sometimes, a person may respond, and completely not answer the question.... so like... 3-person conversation.) Hahahaha!!
January 15, 2018, 07:26:16 PM
Fox: (path) 1 text=(address) char=(address) free=(address) ; << Well, closer to this... but yeah... even if I do choose to have defaults in the code, I could still use this method for overrides.
January 15, 2018, 07:24:28 PM
Fox: So like (path) 0 text=(address) char=(address) len=(number) ; (path) 1 free=(address) ; Or something. But that's just a quick example.
January 15, 2018, 06:59:14 PM
Fox: Hopefully. I was wanting to make it so you could put in the addresses/etc. as one of the arguments in the path. Hm?
January 15, 2018, 03:37:07 PM
KyleRunner: Nice! I hope you'll add compatibility with others games (GS1, Mario Golf and Tennis) soon.
January 14, 2018, 11:40:09 PM
Fox: Okay. Posted (in Downloads section) an initial cutdown version for now, for my text compressor. Basically to separate the code from my Editor for anyone who wants to mess with it. It only supports GS2, because I still didn't add the addresses/etc. for the other games.
January 14, 2018, 05:01:00 PM
Fox: Okay! Going to need to think how I want it to work. Initial thoughts is maybe have a number of arguments in the filepath thing. And have a number of shortcuts (files) to be used as examples. Assuming there are no problems.
January 14, 2018, 10:38:24 AM
KyleRunner: Well... I'm used to editing text ina a text editor, so... yes! Thanks in advance!
January 13, 2018, 11:38:43 PM
Fox: (Text editor = Text Document like notepad.)
January 13, 2018, 11:38:21 PM
Fox: Would you prefer during the text editing in a text editor? (Like what gstoolkit lets you do?) I could probably make a separate tool or something to compress it.
January 13, 2018, 10:10:02 PM
KyleRunner: Ok. Once I finish my Lost Age translation, I'll try a Mario Golf one. Thanks. (But I'll need help).
January 13, 2018, 10:03:17 PM
Fox: If you want to make it "permanent" (part of a hack), then you'd edit code in the ROM that writes to this location of the IDs you'd want to change. (You can find these locations by using a breakpoint debugger like SDL-H or no$gba.)
January 13, 2018, 10:00:11 PM
Fox: Reload/switch = Recommended to be done through Debug mode/warp menu, ofcourse... since doors seem to appear as if they were disabled? ; 03001238:01 and B+Start to get to warp menu.
January 13, 2018, 09:55:39 PM
Fox: @Kyle Runner = It might be, but you'd have to use the correct addresses for Mario Golf, rather than for GS2 as I have it right now. ; @raijinken = Yes. 02000454 = ID of leader. (Change this and reload/switch room you are in, enjoy.)
January 13, 2018, 02:23:29 PM
raijinken: Hey guys, is it possible to somehow change the lead character on the map? Was wondering. I remember there was a cheat to use Jenna, but what if I wanted Isaac, or Piers?
January 13, 2018, 02:10:03 PM
KyleRunner: Hey, Fox *
January 13, 2018, 02:09:37 PM
KyleRunner: Hey, is your text editor compatible with Mario Golf (GBA)?
January 11, 2018, 08:33:13 PM
Fox: But if it isn't an oversight, I still can't imagine it being that useful.
January 11, 2018, 08:28:24 PM
Fox: part, ofcourse.

Affiliates
Temple of Kraden Golden Sunrise
Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.049 seconds with 22 queries.