Memory Addresses and Max Speeds

To find the address for the player's base, scroll down to How to Find the Player Pointer. Shoutouts to Really_Tall for helping me find these offsets.
AddressSizeDescription
base + 0x1944 bytes, signedX Speed; how fast your character is moving along the X Axis
base + 0x1984 bytes, signedY Speed; how fast your character is moving along the Y Axis
base + 0x2F01 byte, unsignedHealth; the numerical value of the character's health bar in the lower-left corner of the bottom screen
base + 0x3804 bytes, signedX Position; where your character is located along the X Axis
base + 0x3844 bytes, signedY Position; where your character is located along the Y Axis
base + 0x3C41 byte, unsignedCharacter animation timer; what frame of the character's animation is currently playing
base + 0x4104 bytes, signedScreen X; where your character is located on the screen along the X Axis
base + 0x4144 bytes, signedScreen Y; where your character is located on the screen along the Y Axis

How to Find the Player Pointer

As previously mentioned, these addresses change every time you go through a loading zone or swap partners because the address for the player base changes each time you do one of these actions. However, there is a simple technique you can do to find this address.
  1. Make sure your character is standing on a floor and that DeSmuME is paused.
  2. Hold B and advance four frames to make your character jump.
  3. In DeSmuME's RAM Search (Tools > RAM Search...), set the Data Size to 4 bytes and set the Data Type / Display to Signed. Then, click Equal To in the Comparison Operator, click Specific Value in the Compare To / By section, type -34816 in the Specific Value field, and click the Search button. There should only be one address after performing the search.
  4. Subtract the Y speed address by 0x198 to get the base address. Now that you have the base address, you can add the offsets in the table of addresses to get the addresses you need.

Max Speeds

Here is a small chart of all the maximum speeds of general actions.
ActionMax Speed
Walking14,334
Homerballing49,152
Flying as Bartman (w/ input)10,240
Flying as Bartman (no input)14,334
Every characters' terminal velocity is -49,152.
Technically, there is no limit to how fast you can walk, because your speed increases when you walk down a slope. This is the only factor that changes your max walking speed.

Glitches and Tricks

Jumping and Pulling Switches

In almost every level of the game, Bart and/or Lisa need to pull switches to advance to the next part of an area. When you press X to pull a switch, Bart/Lisa will stop in place to pull it, which wastes some time. But if you press B and then X immediately afterwards, you can jump and pull the switch at the same time. This means you can move forward a little bit to pull the switch instead of stopping in place.

Bartman Speed Conservation

As Bart, if you double jump and hold B, Bart will turn into Bartman and he will be able to glide with his cape. However, holding forwards while gliding will slow Bart's speed down to 10,240. But if you hold forwards and release the forwards input right when the glide starts (i.e. right when Bart holds out his cape behind him and the whooshing sound from the cape plays), Bart's speed will be conserved and he will glide much faster.

Slingshot Speed Conservation

As Bart, you can shoot enemies and targets by holding A and aiming with the D-pad. When Bart lands from a jump, his speed is slowed down to around 3097, but if you press A to fire the slingshot before landing, Bart will conserve his walking speed and he will not be slowed down.

Wall Clipping and Climbing

Homer has a special ability that allows him to turn into a ball after eating food, but this can be used to clip into walls and ride up them. This only seems to work with walls that are on the left side of the screen. First, make sure you have eaten some food so you can turn into a ball. Then, run into a wall and press A to turn into a ball right before running into it completely. If done correctly, Homer will be slightly clipped inside the wall. From here, you can repeatedly press B to rapidly jump up the wall. This glitch is used to skip certain sections of levels.

Hyperspeed Gliding

Bart has an ability that allows him to use grapple hooks by pressing X. This is used to reach high places and other areas. But if you press X and then jump as soon as Bart is about to move forward, the grapple ability will be cancelled and he will jump extremely far and fast. Combining this with his gliding ability allows him to glide at insane speeds. This only works with grapple hooks that launch Bart horizontally.

Infinite Jumping via Grapple Hooks

If you use a grappling hook by pressing X, press B to cancel the grapple, press X to use it again, and press B to jump again, you can jump infinitely as long you are close to the grapple hook. Here's a step-by-step process on how to do it:
Step 1: Stand close enough to a grappling hook so that you can use it
Step 2: Jump
Step 3: Press X to use the grappling hook
Step 4: Jump again
Step 5: Press X to use the grappling hook again
Step 6: Jump again
These can be repeated for as long as you want as long as you are close to the grapple hook.

Quick Jump

If you are moving towards the edge of a floor and press B when you land on the very edge, then your character will jump a few frames sooner than usual.

Damage Cancel

If you enter the landing animation on the same frame you take damage, then you won't take any damage. The only scenario I've done this in is by landing from a jump while getting hit by a logger's projectile, but I haven't tested if this works with other methods of taking damage.

Buddha Glitches

Lisa's special ability is being able to move objects, enemies, and even herself if she is in front of a Buddha Hand and you press X. You can move objects by dragging them on the touch screen.

Dragging Objects Out of Bounds

If you pick up an object by dragging it with the stylus and then you pause the game while holding it, something interesting will happen. When you unpause, the game thinks you are still holding the object and it will quickly drag it to the bottom-right part of the screen by itself for some unknown reason. If you tap the screen at this point, the object will be dropped and will no longer be moved. This is very useful if you perform this glitch while dragging Lisa with the stylus, because it quickly moves Lisa forward and saves time in some areas.

Free Buddha

This glitch is extremely weird but useful. If you perform the previous glitch while holding Lisa and then press X in front of the Buddha Hand Port before she launches off the screen, she will stop moving because you cancelled the Buddha ability. However, the game thinks you are still using the Buddha ability. From here, you can move Lisa wherever you want by moving the D-pad. For example, pressing Up will cause Lisa to fly upwards, pressing Left will cause Lisa to fly left, etc. Lisa's speed will be locked at this point, so she will continue moving forward even if you are not holding any buttons. This is extremely useful in some stages and skips the majority of some sections. This glitch can be cancelled by touching the screen and pressing X.

Cutscene Skips

HUGE SHOUTOUTS to Randomno2 for telling me about this glitch.
When you beat certain levels, the screen will fade to black, play an ending cutscene, and then unlock the next level. These cutscenes cannot be skipped unless you have already beaten the level. However, if you reset the game at any point during one of these cutscenes, the game will reset and take you back to the file select screen, but the next level will be unlocked, meaning you've skipped the cutscene at the end of the previous level. This is very useful because some of these cutscenes take a long time to finish playing.
This glitch saves time in the following levels:
LevelTime saved (frames, seconds)Accumulative Frames Saved
Bartman Begins1608 frames, ~27 secs.1608 frames
Logging Factory1447 frames, ~24 secs.3055 frames
Mob Rules7405 frames, ~2 mins.10,460 frames
Enter the Cheatrix667 frames, ~11 secs.11,127 frames
Springfield Mall1556 frames, ~26 secs.12,683 frames
Bargain Bin4714 frames, ~1 min.17,397 frames
Mythos of Marge107 frames, ~2 secs.17,504 frames
Big Super Happy Fun Fun Game2358 frames, ~39 secs.19,862 frames
Five Characters in Search of an Author1794 frames, ~30 secs.21,656 frames, ~6 mins.
Using the following formula, I am able to calculate the number of seconds saved:
frames saved / frame rate = time saved (seconds)
Since the game runs at 60 frames per second, I just divide the number of saved frames by 60 every time to get the amount of seconds saved.
More to come in the future!

GameResources/DS/TheSimpsonsGame last edited by SkicoNow on 12/8/2022 10:43 PM
Page History Latest diff List referrers View Source