Hacking Help with trying to access unused map

winter_doggo

New Member
OP
Newbie
Joined
Nov 18, 2020
Messages
4
Trophies
0
Location
United Kingdom
XP
17
Country
United Kingdom
Hi, don't know if anyone can help with this but I figured it's worth asking about. I'm not an expert so I'll take anything I can get.

Tl;dr: A few questions. The only one I expect people to be able to answer is to do with invalid read warnings in Dolphin. I got a warning that read "Invalid read from 0x00000030, PC = 0x80031a94". What does PC mean in this case, and can it help me narrow down the issue?

I've been looking at the files for the game "THE DOG Island" and have discovered an unused area in the game (an earlier version of the map "Rune Caverns" that has more going on than in the final game). Having had previous success with replacing some map files with another, I tried to do the same here - I replaced that map file with its unused equivalent. When trying to run it, the area loaded perfectly fine, however I spawned out of bounds, and in this game that means falling through the void with no hopes of returning. This looks to be because the game is putting me where I should be in the final "Rune Caverns" rather than the early "Rune Cave", but these don't align with each other so I get stuck. Ouch.

With this, I'm able to at least view the minimap to see what I should be finding if I were in bounds. I don't know how to change the coordinates you appear into though.

That said, I know I've had some success so I decided to try and replace some other files. I moved the enemy patterns and object info of the unused area onto that of Rune Caverns, at which point it doesn't work. Using Dolphin's file monitor, I can see that the Object file is causing the problem here, and the warning says "Invalid read from 0x00000030, PC = 0x80031a94". I've found 0x00000030 in the hex editor, which is... completely identical to rune caverns' final object file, and it worked just fine with that. I'm wondering if the PC part is of any significance, but I don't know what "PC" refers to, so if there's anything somebody can answer, it'll be this.

I was able to put Rune Cave's early object file onto an early game area and it worked fine. From this, I know at least one type of flower that was meant to grow there, as well as the placement of several doors.
I think my solution to the coordinates putting me out of bounds issue lies in figuring out how loading from one area to another works, and either setting it to bring me to Rune Cave in the first place, or setting the coordinates to something that works in what's meant to be "Rune Caverns", but I'm not sure how to do this. I'll keep trying.

Thanks in advance to anyone who tries to help.
 
Last edited by winter_doggo,

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
33,889
Trophies
2
Website
trastindustries.com
XP
22,641
Country
United Kingdom
PC = program counter aka where the instruction it was trying to run when it crashed is located. A debugger/programmer would then look at what that instruction is and what led up to it.

As far as coordinates then you might be able to use a cheat to force you to somewhere else, assuming the spawn location does not make itself apparent sooner than that.
Find the coordinates in a normal level (though I suppose falling in nothing is changing them such that normal cheat search can find them). Should be able to do a IF here then teleport me here type thing, though I am not sure how well it might work. Could possibly also do the walk on water/ghost mode type cheat -- find the presumably Z height value (and maybe another for camera if that is separate) and set it to constant and falling should stop, you might need to figure out what is the "there is floor under me" value is or find some means of propelling yourself*

*for normal stuff I might not suggest it but for zooming around beta code then you could probably do a if button/button combo pressed then add some value to the X and Y locations.

Swapping files around is usually a good thing to do. For levels in general, though 3d even more than most, then as well as the 3d model or visual stuff you tend to also have a layer for the outline, a layer for any track/movement (usually mario kart hackers meet this as you need a track for that one), and possibly another one or two more for pickups and enemies. Missing various ones on that list then seeing things like you describe happening, though it might also mean you struggle to usefully move in the level.
Spawn locations I have found vary between games; some might be hardcoded into things, others might be in the level data.
 

winter_doggo

New Member
OP
Newbie
Joined
Nov 18, 2020
Messages
4
Trophies
0
Location
United Kingdom
XP
17
Country
United Kingdom
Hi, thanks for your response!

I figured out the issue behind the game getting stuck. In my excitement, I forgot what made replacing areas work in the first place. Before this, I'd been using a hex editor to make the ID of the area doing the replacing match the area being replaced. When I discovered this new area not from the final game, all brain cells went into panic and forgot this detail. I assume the game was reading the area file, finding the wrong ID, and probably getting very confused.

Afterwards, I solved the coordinates problem by replacing a particular area and entering from the right entrance to end up someplace that, by the "correct" coordinates, was actually standable on.

Thanks again - I guess the solution was a lot simpler than I thought though haha
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    kenenthk @ kenenthk: Are people out there really spending $100 on fans...