Golden Sun Hacking Community
August 22, 2017, 02:57:30 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  Home   Forum   DC Wiki Help Search Calendar Downloads Login Register  
Pages: 1 ... 8 9 [10]
 on: July 16, 2017, 10:10:16 AM 
Started by Plexa - Last post by Fox
Okay thanks! - It resets.... (Or well, I went directly to the final coordinates first to make sure, so that I could also get the number 0x1D -- Apparently most of that are about setting a tile to the PC's position... I assumed this was calculated with the base address of 06003000, but I will definitely want to do more testing before I go with basic assumptions....

@Hard Reset = I thought I noticed some strange object just barely peeking out on the right side of your screen... so I thought that was strange.....

 on: July 16, 2017, 09:47:13 AM 
Started by Plexa - Last post by Plexa
I probably should have mentioned that this is off of a hard reset .. just in case you soft-resetted to get out of bounds.

After going up for a while (about 10s) you should end up at (36,4250), going right should take you to (37,4250), then the game crashes at (17,4229)

 on: July 16, 2017, 06:27:33 AM 
Started by Plexa - Last post by Fox
Tried to do this directly in the map (Using Debug Mode's Walk-Through-Walls instead of Retreat-Glitching... and umm... I think I got lost? (e.g. It looks like you can go right quite a bit. Edit: Although, if you are one tile off, it might just be a tiny bit. ... But then when I go up/left... I get a door/no crash.)

What are the coordinates of the crash? (And maybe the 'tile data' there too...) (The value at 020301B8 or 020301BC , and the value of whatever that points to.)

Referring to this topic? ... Looks like I forgot to look it up, huh?

 on: July 16, 2017, 03:07:38 AM 
Started by Plexa - Last post by Plexa

I posted about some weird tilesets and stuff being rendered in Tret on emulator a long time ago. Finally found a convenient door to test out what happens on console. It crashes the game.

 on: July 15, 2017, 04:21:25 AM 
Started by Fox - Last post by Fox
Okay. Alright.... I still have to figure out exactly how the Script Engine works... as my testing a few days ago looked like it turned the script I was trying to test off (I think?) for some reason... (Was unexpected.) ... so one does need to actually do the research to get results...

Spider puzzle = Yeah, the positions are based on the x/y locations of the objects in the room you retreated from. That was also the case for the Mars Lighthouse example in the first post. (That last room, and the three entrance  hallways use the same map...)
As for how it is solved/activited.... erm... could be that the 0x200-0x2FF flags do not get reset when Retreat-glitching + Saving + Resetting.

Good news!
I looked at the code, and it turns out if the script command is invalid (>0x3F), the position in the script does get incremented by 1! (aka: four bytes) :) Happy for me in case that increases the chance of finding something.

To execute a script.
-Script addr  [npcDataAddr+0x0] must be non-zero.
-8-bit at [npcDataAddr+0x5B] must be zero.
-16-bite at [npcDataAddr+0x5E] must be zero. (Should be the counter/delay... so will likely hit zero without worry if it was set to something.)

@02009970 = Looking a the map code data makes that look normal. ... So I'm not much worried about it... (Guessing the pointers were going to change if the crash didn't happen?) ... I'm guessing the Retreat Map's objects are loaded fully... and then the saved NPC data stuff gets loaded on top. (Didn't confirm.)

@Mirroring clones == I think it crashes because a tile has an event set where the function assigns another function to an npc object... (So that the "another function"'s pointer gets saved/loaded when saving/loading a file.)... Interesting...
So not as a script pointer that uses commands, but as a direct function pointer.
The function being at 020097B5. (So thumb for 020097B4.) .And the pointer to that is stored at [npcDataAddr+0x6C].. So yes, I guess your memory viewer was semi-relevant afterall. :) (Except I think you were viewing the wrong object. And/or doing the wrong mirror puzzle. ...since each mirror puzzle's object is a separate. Obj. #0x8-0xA depending on puzzle.)
Now that we know what's going on with the Mirror Puzzle... (Well the first bit, anyway... I still would like to know if the program counter can still be controlled... which I may or may not bother with... (Probably not?) but I doubt you could get rid of the error message without other unknown glitching, so....) I guess we check something else...

Now back to Script studies:

Mars Lighthouse

Spoiler for If there's only one entrance, these don't count.:
Map 281

Map 282

Map 284

Map 292

Map 294

Result: So... I found out some (maybe not all of them??) scripts are turned off when you enter the pause menu... so when you save, that's how they are saved.... but I still need to figure out how they get re-enabled. I'm not feeling good about this....
Update: Seem to be based on flag 0x106 ... (Possibly with more checks?). ... However here's the kicker.... the code for this is in the map code. :/
Update 2: This now guarantees that Map Code from the Retreat Room has to enable them itself (which will be the case if the Retreat Room has such a script. Or wait. Maybe not? Not sure.) should a script be disabled due to pausing before saving. (Probably by storing the function pointer to a table to be called every frame of which is not saved in Save data.) ... If it doesn't setting the script is pointless.... As for the direct Thumb pointer? Hm? Can't say....
I feel like I'm going to just have to give up...?  This topic is still here to discuss anything I may have missed, though.

 on: July 15, 2017, 04:03:35 AM 
Started by Fox - Last post by Plexa
I've been exploring these areas all day and other than the mirror puzzle crash, I haven't found anything remarkable.

I guess the next closest thing is the following. The floating spider puzzle at the end of anemos has its blocks randomly dispersed after retreat glitching depending on the room you came from. (Dullahan and the Mercury Lighthouse Orb can also be found). Solving the mirror puzzle 'solves' the spider puzzle i.e. it activates the blocks. You can't do anything with this and the puzzle resets upon loading a new room... so yeah nothing interesting.

If you have thoughts I'm happy to explore them.

 on: July 15, 2017, 03:22:34 AM 
Started by Fox - Last post by Fox
To do something other than what was intended, yes.
Most scripts that do nothing. (Or finish what they're doing so it can do nothing.), end up pointing to the Return/End of script command in the ROM section.
(I suppose there could be the possibility of executing the exact same script if it caused some strange functionality do to being in a different room, but I doubt that would be the case by itself...)

One of the advantages (I think) that we have is that map code files are different sizes ... and after it is decompressed, the rest (pass the size) is not cleared/is left alone as we well know. (That's why we do soft-resetting when going out of bounds.)  My idea was to find a way to take advantage of that.... (Sort of).... Well, the tables at the end of map code data can be altered for some maps that have them, as we know..

(Even if they were the same sizes, then we'd only be able to solely rely on the Retreat map to have magical data... without relying on the other maps.)

 on: July 15, 2017, 03:04:57 AM 
Started by Fox - Last post by Plexa
So then the next question is, for this glitch to work we need a script to tell an NPC to do something in a room where it normally is doing nothing? That script needs to be running in the room we're retreating glitching in?

 on: July 15, 2017, 02:11:04 AM 
Started by Fox - Last post by Fox
@0656 = Yeah... But note that it is just the Map Code file to load to the 02008000 RAM section. (Nothing else.)
@01 = Yep!
@0C = Yep!
@0000007F = First, it isn't a 32-bit... (Either two 16-bits, or two 8-bits and a 16-bit?? Forget.)... but the 7F part is an index number for another table (That has indexes for files to retrieve.) Those being for Map Data file (containing seven compressed files for GS2, and probably six compressed files for GS1), Palette, and the Tilesets. ; The World Map is a bit weird, and does things a little differently, which is how I guess the separation makes sense??

 on: July 15, 2017, 02:05:24 AM 
Started by Fox - Last post by Plexa
Lets quickly check that I understand the first image.

Let's take 0x080F18E8, which has the information 010C0656.

0656 = map file to load.
01 = Can retreat (02 being cannot retreat)
0C = location (Lemurian Ship)

Then 0x080F18EC, which is 0000007F, tells you what exit/entry map to use?

Edit: Just playing around with the Lemurian ship, doesn't look like I can retreat in Atteka Inlet while I can in Lemuria or East Indra Shore. Curious.

Pages: 1 ... 8 9 [10]
August 20, 2017, 08:59:37 PM
Fox: Same... depending on whether they've used tricks instead or not.
August 20, 2017, 08:02:49 PM
Salanewt: I could see it counting.
August 20, 2017, 11:24:44 AM
Fox: Not sure if Zelda (LttP/Minish Cap) count or not...
August 20, 2017, 11:23:00 AM
Fox: Appararently, I can't think of many GBA games that do the psuedo-3D thing. (That being 2D maps with 3D-like collision...) Golden Sun and Superstar Saga come to mind, though... but I'll need to think about others, since it is quite possible i've simply forgotten....
August 19, 2017, 03:45:19 PM
Fox: Hmm... Thought: What if Isaac and co. weren't on Jupiter Lighthouse when Felix and co. were... I wonder if the story could have had a huge expansion, in this case.
August 18, 2017, 12:18:56 PM
Fox: Welcome back!
August 18, 2017, 09:12:43 AM
Luna_blade: back from vacation
August 17, 2017, 02:29:26 AM
Fox: That moment when you realize that there is a lot of chatting going on on Discord, that there is no point in trying to keep up. :P  Hm....
August 16, 2017, 04:50:22 AM
Fox: (Then again, just because posting is disabled, doesn't necessarily mean the buttons would be removed as well.)
August 16, 2017, 04:48:55 AM
Fox: (I mean, buttons I would expect to be similar to that.... rather than those specifically since I recall posting there to be disabled.)
August 16, 2017, 04:33:02 AM
Fox: Yeah... I like to think of it as a page loaded with ads. And it's not just the forum home page either... check the sub-forums/topics themselves. == New Topic/Reply/etc. buttons were affected.
August 15, 2017, 07:04:30 PM
Salanewt: Lol, nice. :P
August 15, 2017, 06:33:02 PM
Fox == Hahaha! GSHC Classic looks funny now that Photobucket killed the images. :P Anyway, how is everyone doing today?
August 14, 2017, 07:12:02 PM
Salanewt: So yeah, I'm typing up a non-academic essay on why GS2 was rushed; expect that sometime soon!
August 07, 2017, 05:53:11 AM
Fox: But anyway, such a hack mod is simply an idea, and I do not have any current plans to work on it at this time, so.....
August 07, 2017, 05:51:46 AM
Fox: Okay, cool. I think my idea works best without an ability to swap PCs (OR to just simply make that use it the PC's turn.) Hmmm... And with that, I question if a turn list is even needed with my approach. (Outside of maybe 1 entry, if that shortens the modifications.)
August 07, 2017, 05:13:26 AM
Salanewt: To be honest I've been thinking of expanding the battle turn section and also adding code for PCs to have more than two turns in the AI overhaul, but I probably won't allow anyone to have more than four.
August 06, 2017, 12:22:17 AM
Fox: Oh, and if that approach was taken = Would like to also have it so you select the spell to use when it is actually your turn rather than at round start.
August 06, 2017, 12:12:37 AM
Fox: Would take a lot of balancing, but I can see an adept being very slow, and yet very powerful.
August 06, 2017, 12:06:11 AM
Fox: And bosses can have an Agility that is above half of the maximum possible Agility. Mwahaha.

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.076 seconds with 17 queries.