Golden Sun Hacking Community
June 24, 2017, 07:05:51 AM *
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 870 times)
0 Members and 1 Guest are viewing this topic.

Regular Member
**

Coins: 0
Offline Offline

Posts: 91

« 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: 25
Offline Offline

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

« 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...
View Profile

Regular Member
**

Coins: 0
Offline Offline

Posts: 91

« 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: 25
Offline Offline

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

« 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...
View Profile

Regular Member
**

Coins: 0
Offline Offline

Posts: 91

« 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: 25
Offline Offline

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

« 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...
View Profile
Pages: [1]   Go Up
  Print  
 
Jump to:  

Cbox
Yesterday at 02:25:42 PM
Seto Kaiba: you know I miss how SMF is almost dead now because having 1pt text to hide my true feels was perhaps the best part of web 2.0
Yesterday at 04:19:13 AM
Fox: Alright. Sounds good.  I agree it does seem a bit silly.  Sounds more of an April Fools type of thing. (Maybe having an ability for people to change their names limitless times specifically on April Fools is an idea.)
Yesterday at 04:09:25 AM
Kain: Sala asked me about the name, I thought it was silly but agreed he could have it only for a week.  Tomorrow his name goes back to Salanewt.
Yesterday at 03:29:10 AM
Fox: And yay! Atrius is back! Thanks for the reply. Somehow I didn't notice the recuriveness before.
Yesterday at 03:25:29 AM
Fox: @ridiculous name for a week =  Hm? So, how many characters would you say should be the maximum to have a name "permanently"... or better yet... How many characters can a name have on registration?
Yesterday at 01:00:50 AM
Atrius: @Javi3, Lo siento, ya no tengo tiempo.
June 22, 2017, 08:57:37 PM
Fox: @conundrum = Think about 8/16/32 bit aligned address, and what that means... Etc.
June 22, 2017, 08:55:23 PM
Fox: @Space manager thought for gsmagic = What a conundrum... Whelp... I'll just do whatever.... Probably would waste more time thinking about preventing bugs than coding anyway. :P
June 21, 2017, 09:30:34 AM
Fox: Because he quit a long time ago and has other priorities?
June 21, 2017, 08:35:54 AM
javi3: Atrius, por que no sigues con el editor de golden sun?
June 20, 2017, 10:52:48 AM
Fox: It feels like the safest bet is to do Atrius's repointering system, and have something that organizes the tables done a bit separate... er... Well, it's something to think about.
June 20, 2017, 08:53:41 AM
Fox: HOWEVER... I can see other problems that might cause..... (Even with just the pointer in the MFT)  Meh. It's like you actually need a program to apply patches to do it appropriately.
June 20, 2017, 08:46:38 AM
Fox: ... So... What am I thinking? You ask? That the patches the point data after MFT, should have had pointers in the MFT themselves.... In that case, I can see a possibility of everything working smoothly even if space is needed to the very end of the ROM.
June 20, 2017, 08:37:22 AM
Fox: It's basically that everthink from the point of  editing, to the closest free space to the last entry's address would get repointed forward/backwards depending on space needed... and if space is mapped after patches are added, then that could mean the patches are also repointed. (:o)
June 20, 2017, 08:29:03 AM
Fox: Well, I mean if I map the space out the same way Atrius did it.
June 20, 2017, 08:26:41 AM
Fox: I have a hunch... when I add Map Palette editing the way I'm thinking about... it will cause all patches that repoint to after the MFT to break.... Especially if Atrius's editor wasn't used beforehand. Etc.
June 20, 2017, 07:27:17 AM
Fox: Hmmm... Let's see... regardless of method, I think I still do want to take some of Atrius's Space Manager code... Hmm.....
June 20, 2017, 07:07:27 AM
Fox: say*
June 20, 2017, 07:07:19 AM
Fox: I'd go so far as to see.. even if you are trying to be accurate, there could still be inaccuracies... However, that one was just an example where it was clearly intentional.
June 20, 2017, 07:04:03 AM
Fox: Like*

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.101 seconds with 23 queries.