ROM Hacking

Back <<

"Rom hacking" or modding is editing video game files to add or edit new features to video games. Roms (read-only memory) are copyright protected, but you are allowed to patch games for level editing, and many other types of hacking, such as adding new characters, etc. as long as the patches are released for free. These are mostly done on retro games from the Playstation to older games. Many newer games offer editors so people can freely mod games in many different ways. Many programmers have released programs for the most popular games so people can hack the games themselves without needing to understand the complicated programming involved. Usually programmers will use hex editors to break the game down into hexadecimal format and from there translate it to assembly so it's easier to understand, and when they understand important RAM values and memory tables they can hack the game to their own delight.

Megaman X Skip Intro

MMX1
MMX2
MMX3
65816 Assembly (for MMX1):
header ;use on headered smc roms or remove this line for unheadered sfc roms
lorom

;org $8094e7 ;uncomment these lines to start at custom level
;jsr LoadLevel1

org $809506
jsr VileDefeated

org $809567
jsr LoadLevel1

org $80FBE3 ;freespace in bank 80
LoadLevel1:
ldx #01 ;level 1. change this number to load level 1-8
stx $1F7A ;address where levels are stored
rts

VileDefeated:
ldx #04 ;vile has been defeated
stx $1F9B
rts

; Pass
; 1764 1488 7748

Megaman X Editor

Dropbox Binary (Windows)
Github Source Code in C/C++

I didn't create this program just edited it. I convinced Luciano C. to release the source code for this. Up until this point he had a working MMX1 Level Editor and was planning to expand it for MMX2 and X3, but it was buggy. Redguy fixed the program for X2 and X3 and helped extract the layout for Rockman & Forte. The biggest bug is that it doesn't load the enemy sprites for Rockman & Forte. For a full list of bug fixes and updates I did please check out the Github.

Megaman X Generation Dash Fix

IPS patch

This is an improvement to someone else's rom hack entitled Megaman X Generation and it was originally done in Japanese. It just hacks the RAM value to allow leg parts (dash) at the beginning of the game. The original author allowed dash but removed the leg part graphics so only half the Megaman sprite shows. So now the leg parts display properly.

Captain Tsubasa 3

CT 3 English translation

Captain Tsubasa 3 "Koutei no Chousen" is a Japanese soccer game released in the '90s. Maikolik translated the title screen and game to Spanish. From this translation I used Windhex and a table file to translate it to English. I worked with mrrichard99 to help debug the game and make sure the text displayed correctly without crashing the game. One of the biggest problems was getting the correct string length to swap words. If you run over the string length you have to either change the pointer values or the game crashes. One of the biggest problems with the game is that the string length is too long on most text so for example "he scores !" looks very sloppy. I still need to go in and find the pointer table.

Another challenge with the game was getting this image to display English text. You can't edit the text directly from the table file, or the hex. You have to open up the game with a tile editor and edit the image there. Fortunately, it wasn't compressed. Another issue with the game was swapping the word "and" on a couple strings. When two players team up on one they use either "y" or the Japanese と. Once again I had to go into the tile editing program and modify the alphabet to use an ampersand.