EarthBound Zero/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(add a little more documentation)
(Redirect to merged Earthbound Beginnings RAM map)
Tag: New redirect
 
(40 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{rammap|game=EarthBound Zero}}
#REDIRECT [[EarthBound Beginnings/RAM map]]
 
=RAM=
 
{|border="1" cellpadding="1"
!RAM !! Purpose
|-
|0x0006 || Part of an instruction for "copy protection". $E5 on checksum failure. $00 to bypass.  "Correct"/non-hack value unknown.
|-
|0x0015 || Used for assigning area to objects?
|-
|0x0060 || HP target value for stat increase during level up
|-
|0x0611 || Looks like the first EXP byte, but changing it even mid-battle will result in insta-death.  Anti-cheat?
|-
|0x0818-B || The X and Y coordinates, stored strangely; see below
|}
 
===Coordinates===
The coordinates in RAM to not correspond to coordinates in the rest of the game.  To convert it, run this Python code (in this example, bytes $818-B are `80 19 C0 2D`):
 
<pre>
# replace with the values from the RAM
ram_x = 0x1980
ram_y = 0x2dc0
 
real_x = ((byte1 << 8) | (byte0 & 0xC0)) >> 2
real_y = ((byte3 << 8) | (byte2 & 0xC0) - 0x2000) >> 2
</pre>
 
=SRAM (save data)=
This uses a checksum that is not figured out yet, so you can only edit it by using a save RAM editor on a live game.
* 0000-13FF: **Unknown**
* 1400-1403: **Unknown**
* 1404-1407: Position
* 1408-140F: **Unknown**
* 1410-1411: Current money
* 1412-1414: Money in bank
* 1415-141F: **Unknown**
* 1420-1430: Your name (the player name, not Ninten's name)
* 1431-16AF: **Unknown**
* 16B0-16CF: Items in storage
* 16D0-1FF0: Other
 
{{Internal Data|game=EarthBound Zero}}

Latest revision as of 12:20, 16 April 2025