🏠
Patches

The Romhack Races baserom comes with a significant number of patches to the base game. They are listed below with a brief summary to explain why they are used. Patches without a link are either written for the baserom or not published on a site like SMW Central.

Contents

  1. Bug Fixes
  2. Sprite Fixes
  3. Graphical Fixes
  4. Changes for Consistency
  5. Optimizations
  6. Additional Patches
  7. New Features
  8. Enhancements
  9. Tweaks

Bug Fixes

$13FB Game Crash Fixthis fixes a crash that occurs during sprite collision, notably when collecting a fire flower and eating a berry on Yoshi.
Cape Layer 2 Position Fixfixes an issue with the Capespin hitbox persisting if the game is frozen, e.g. during power-up/down, etc.
Cluster Boo Ducking Fixfixes a bug where ducking doesn't actually work with cluster boos/bats.
Block Duplication Fixpatchses out the ability to use a held sprite to duplicate a block; the baserom has modified this patch to make this toggleable via FreeRAM.
Bounce Blocks Death Fixfixes an issue where Mario can trigger blocks that have a bounce sprite when dying.
Dark Room Background Fixallows the spotlight/dark room effect to be used in other level modes (besides 11) and not erase the background.
Eating Blocks Freeze FixFixes the bug where spawning an eating/creating block while another one is moving will make the other one stop. .
Feather Autoscroll Freeze Fixfixes a game crash that occurs if you collect a feather while offscreen in an autoscroller.
Horizontal Scroll Snap Fixfixes an issue where the screen snaps horizontally when the player isn't in the middle of the screen.
Goal Point Sprite Reward Fixfixes an issue where collecting many sprites at the goal tape garbles the score sprite graphics.
Item Box Mushroom Priority Fixchanges the Mushroom to be a lower priority sprite in the item box, not overriding a reserve Flower.
Layer 2+3 Wallrun Triangle Fixenables the wall run triangle to be used on Layer 2.
Line Guide Acts-Like Fixallows you to use the line guide tiles outside of the Rope graphics header.
No Sprite Interaction Fixfixes an issue in sprite interaction where sometimes a sprite in a given slot won't interact with another.
P-Balloon and Cloud Clipping Fixremoves the glitch where if you press left and right simultaneously you can pass through blocks while in the cloud or p-balloon.
P-Switch Duplication with Yoshi Fixprevents the Glitch where you can grab and spit out a used p-switch with Yoshi to get another.
Proximity Wraparound fixfixes a bug in the proximity-to-sprites check where it can wrap the screen border.
Question Block Item Collision Fixremoves collision from sprites spawned from blocks for a short time so they can't interact with other sprites.
Rollover Fixfixes an issue where if you exceed 255 door entries, enemy bounces, or shell hits the game will overflow.
Time Up Fixprevents "TIME UP" from appearing when you die in a zero time limit level.
Tide Current FixFixes an issue where layer 3 tide current is present in other swimmable blocks that are not part of the tide. .
Walljump/Note Block Glitch Fixprevents Mario from catching on solid tiles when he jumps at a wall.

Sprite Fixes

Ball n' Chain and Yoshi Interaction Fixthis fixes an issue where Yoshi can be hurt by the middle of a ball n' chain.
Dead Spring Fixfixes an issue where springs can warp Mario if they are killed (usually by sprite-kill blocks).
Hammer Bro Fixallows more than one Hammer Brother to be placed.
Line-Guided Rope Length Fixchanges the Rope so it's length isn't sprite memory dependent.
Moving Castle Block Offscreen Handling Fixfixes an issue in the Castle block where it doesn't despawn when offscreen.
Rope Fixfixes the bug where being pushed off a rope by a wall will leave Mario in climbing state.
Skull Raft Fixremoves the issue in the skull raft where Mario can get stuck between two skulls.
Springboard Fixesthis patch prevents Mario from being able to regrab a springboard very briefly after it's been kicked as well as prevents Mario from losing his X-speed on the same frame one is picked up.
Sprite Ceiling Fixfixes an issue with a number of sprite's collision where they will pass through a ceiling when they come in contact with it.
Sprite Scroll Fixfixes an issue with sprite despawning during screen scroll (not via L/R).
Triple Rotating Platform Vertical Level Fixa fix for the rotating platform not spawning when placed in vertical levels.
Vertical Spawn/Despawn Fixfixes a glitch where sprites despawn when (re)entering the screen vertically.
Vertical Level Bowser Statue Fireball Fixfixes a bug where Bowser statue fireballs don't despawn offscreen in vertical levels.

Graphical Fixes

BG Candle Flames Priority Fix (for SA-1 MaxTile)if using SA-1, there is an issue with the candle flames having priority over other sprites, this fixes that.
Bob-omb Kicked Palette Fixfixes an issue in the Bob-omb where when it is kicked while flashing it gets stuck in that palette.
Climbing Net Door on Subscreen Boundaryfixes a bug in the Net door sprite where it doesn't fully erase tiles behind it when on a screen boundary.
Spike Swim Fixfixes an issue where when Mario takes damage underwater during a swim his graphics appear garbled.
Star/Slide Kill GFX Fixfixes the garbled graphics when you kill a sprite via slide or star that does not have death graphics.
Title Window Cleanerremoves garbage tiles from the title screen that appear when certain sprites are on positions in the overworld.
Torpedo Ted Offscreen Smoke Fixpatches out Torpedo Teds smoke appearing when vertically offscreen.
Victory Pose Fixfixes a visual issue with Mario's head being squish at level end when small and on Yoshi.
Yoshi Pipe Animation Fixfixes an issue where a dismounted Yoshi will use an entering-a-pipe pose when Mario enters a pipe.

Changes for Consistency

Capespin Direction Consistencymakes it so pressing spin while in flight will consistently turn Mario around; the baserom has modified this patch to make this toggleable via FreeRAM.
Capespin Hitbox Consistency + Net Punching Hitbox Correctionthis patch makes the capespin hitbox is always active on both sides of Mario, check for interaction with sprites every single frame, and check for interaction with tiles either on the left or right side of Mario based on whether the frame is even or odd.
Double Spinjump Antifailprevents Mario from dying when spinjumping on two sprites at once.
Item Release Consistency Fixthis largely makes item throwing and dropping consistent with Mario's movement or the direction on the D-pad being held
Player X Speed Fixpatches Mario's x-speed oscillation to be consistent when he is at max speed as well as his inability to jump when going at high speed.

Optimizations

Optimize 1F0fixes an issue where placing successive sprites on slope-assist tiles (not just 1F0) runs up the CPU usage and could potentially cause slowdown.
Fixed Color Data NMI Optimizerimproves how the background colour is stored so there's fewer cycles used during NMI.
Layer 2 Buoyancy Optimizationfixes slowdown that may occur if use Lunar Magic's second buoyancy option but still have water tiles on Layer 2.
Lunar Magic's "VRAM Patch" Optimizationoptimizes Lunar Magic's handling of VRAM.
Status Bar NMI Optimizerfaster NMI for the Status Bar saving more scanlines.

Additional Patches

Free Up Tile 69Patch that converts a splash tile to three 8x8 tiles to free up one 8x8 in SP1.
Free Up RAMFrees up ~32KiB of RAM at 7F0000 for use during levels.
No More Sprite Tile Limitsallows more sprite tiles to be displayed on screen simultaneously.
Extended No More Sprite Tile LimitsAllow more extended sprite tiles to be displayed.

New Features

Individual Dragon Coin Savepatches the Dragon Coin system so they are saved when collected.
ObjecTool 0.5this allows for the insertion of custom objects, the baserom makes use of this to enable UberASM Objects.
Mario's 8x8 Tiles DMA-erthis moves all of the small 8x8 tiles used by Mario when he is climbing or swimming or caping, to be a dynamic asset freeing up a bunch of sprite tiles space in SP1.
RAM Specific L/R Scroll Disablerather than a global solution disabling L/R scroll this enabled it to be toggled via FreeRAM.
RAM Toggled Status Barallows the status bar to be toggled via FreeRAM instead of patched out globally.
RAM-Toggled Spin Jump Fireballsenables using a FreeRAM flag to make mairo stop using fireballs when he spin jumps.

Enhancements

Double Bounce Shell Paletteused to display the double bounce shell as grey in-game to distinguish it from the normal green shell.
Monty Mole, Hammer Bro and Dry Bone Behavior on Extra Bitthese three sprite typically have a sub-map specific behaviour in vanilla, this patch changes that to be enabled by extra bit instead.
Pitchin' Chuck Won't Turn On Extra Bitwith this patch all types of chucks will persist in their behaviour after jumping on them, instead of chasing Mario.
Placeable (Kicked) Throw Blockthis allows for placing a throw block without the need for the block object, it can be put in kicked state with extra bit.
Placeable Disco Shellenables a disco shell to be placed directly without the need for a yellow koopa and shell set up, saving a sprite slot.
Placeable Kicked Shellenables a kicked shell to be spawned without the need for a kicking koopa, saving a sprite slot.
Poison Mushroomreplaces one of the unused vanilla sprites with a Poison mushroom.
Red Stem Piranha Plants on Extra Bit + Stem Fixfixes the incorrect stem of the pirahna plants in the Vanilla game but also enhances them with extra bit functionality to have them ignore Mario.
Rexes With Extra Bit Set Are Squishedstarts a Rex in squished state.
Spike Top Ceiling Clingpatch to allow spinies to be placed on the ceiling.
Triple Ball 'n' Chainenhances the triple grey platform sprite to be a triple ball n' chain when the extra bit is set.

Tweaks

Many minor fixes or edits have been made to the base game via hex edits. Open the "tweaks.asm" file in the resources/patches folder for details.

Gameplay Changes

Some minor changes have been made to the game to optimize it for building Kaizo levels:

Fixed Bugs & Glitches

A number of bugs and glitches have been patched out of the original game so they will not impact your levels:

Visual Changes & Fixes

Several minor visual problems and oversights in the vanilla game have been fixed or corrected: