| |||
Views: 88,491,067 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 04-27-24 04:24 AM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 4 guests | 1 bot |
Main - ROM Hacking - The Ultimate Mega Man 1 (U) Hacking Notepad | New thread | New reply |
Zieldak |
| ||
Crow Level: 42 Posts: 371/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
The Ultimate Mega Man 1 (U) Hacking Notepad
Data in the (E) and (J) ROMs should be at the same addresses or close. -------------------- Teleport System - I mean Table of Contents. I'm going to assume you know how to use the Ctrl+F feature in your browser. Not FAQ quality, but it's better than nothing. You may also find shortcut codes with hyphens replacing the brackets, for example -LOGS-. [TELE] - Table of Contents [RREH] - Rock and Roll Editor Help [SHDD] - Short Hallways / Door Data [PABR] - Palette Animation in Boss Rooms [CHEK] - Checkpoints [FIRE] - Fire Pillar position tables [ENMY] - Enemy weakness / damage tables [WECD] - Weapon Energy Consume and Damage [WEAP] - Weapon related notes [INVU] - Boss invulnerability frames [ENDI] - Relocating the Ending scene to make more space for Guts Man's level [QCKA] - Quick access to Wily levels from the Stage Select for testing purposes [GUTA] - Graphics the game loads for guts block when you equip super arm on each level [GUTB] - Graphics the game replaces guts blocks with when picked up [TITL] - Title screen notes [SPAL] - Structure palette data [DOOR] - Door Animation editing {NEW!} [LIFT] - Guts Lift notes {NEW!} [LINK] - Useful links [HELP] - Ask for help [TBIL] - To be included later [LOGS] - Edit logs -------------------- [RREH] - Rock and Roll Editor Help To delete enemies in RnR, simply Ctrl+RMB on the object you wish to delete. Shift+RMB opens up another menu: Enemies - Let's you change the enemy type, screen number and global health (damage it deals to Mega Man) Objects - Let's you change the block type, width and height and also the screen it's on. -------------------- [SHDD] - Short Hallways / Door Data First of all, you have to edit the scroll data and make the 3 screen halls only 1 screen long, and edit the rooms IDs in the Room Editor accordingly. Secondly, fix the incorrectly saved checkpoint data using the information found at -CHEK- below, otherwise you'll most likely run into some problems. Then you have to move the door animations too to the correct screens in these tables: 15F12: 13 13 13 0F 13 0E FF FF FF FF FF - First door (Wily levels only use the second door) 15F07: 16 16 FF 12 FF 11 FF FF FF 22 20 - Second door (If the entrance is from above or below, it must be FF as they're special doors. The first three Wily doors are in the same boots.) The previous two tables will also be mentioned later again. If everything is correctly set up, it's possible to have properly working 1 screen corridors! -------------------- [PABR] - Palette Animation in Boss Rooms Each level uses three sets of palettes. The first is the before door palettes, the second is the sprite palettes that are loaded when you start the stage, and the third one is the boss appears palettes. Simply search for the palette you use in your level in the ROM and you should easily find it. After door palettes are stored elsewhere. -------------------- [CHEK] - Checkpoints The Rock and Roll editor (nor Visine appearently) doesn't seem to save checkpoints correctly. All the tables for checkpoint stuff are located here, however Rock and Roll does edit the first 4 tables just fine, so that's good. I highlighted the tables that are not editable with Rock and Roll properly. Use Screen No. for reference for most of them. Checkpoint activate table. Which rooms activate a checkpoint. This works fine in the Rock and Roll editor. Checkpoint 1 activate: 1C2E4, 12 bytes ** Checkpoint 2 activate: 1C2F0, 12 bytes ** Screen data table. This is weird. It is only for loading the correct room graphics before teleporting. RnR edits these properly. Initial screen: 1C2FB, 10 bytes Checkpoint 1 respawn: 1C307, 12 bytes ** # Checkpoint 2 respawn: 1C313, 11 bytes * ## Room order table. The scroll editor in RnR edits these correctly. If you want to edit these manually, don't forget the first scroll point is 0. Initial scroll point: 153B0, 12 bytes ** Checkpoint 1: 153BC, 12 bytes ** Checkpoint 2: 153C8, 11 bytes * First screen enemy table. The enemy manager in RnR edits these correctly, however it can't edit the initial screen ones. Keep in mind you have to select the first enemy in the checkpoint room, not the last. Initial screen: 153D3, 12 bytes ** Checkpoint 1: 153DF, 12 bytes ** Checkpoint 2: 153EB, 11 bytes * First room of the checkpoint section. Rock and Roll does in fact edit these values, however incorrectly. You have to edit these manually. Checkpoint 1 first room: 1540A, 12 bytes ** # Checkpoint 2 first room: 15416, 12 bytes ** ## Last room of the checkpoint section. This is the last screen of the checkpoint. So if your checkpoint is on screen 0A and that section ends at 0C, you're going to write 0C here. Also, if you have a one screen long section, you're going to write the first room value. Like the first room table, RnR edits these incorrectly, and should be fairly easy to find since RnR saves the same incorrect values here too. Checkpoint 1 first room: 15422, 12 bytes ** Checkpoint 2 first room: 1542E, 12 bytes ** Legend: * last byte is Wily 5 ** last two bytes are Wily 5 and Ending # should be the same as Checkpoint 1 activate ## should be the same as Checkpoint 2 activate Some checkpoints actually require at least 1-4 enemies in them on the first screen, that can be edited in the first screen enemy table mentioned before. Also, try not to use FF enemies unless you know how to use them. They are used for changing PPU data, and placing them just anywhere will cause crashes. Moving them is not a good idea, which is why I recommend either leaving them alone or just deleteing them in case you don't want to do fancy enemy set changes in long sections. By the way, these FF enemies are the cause of the Ice Man glitch too for example. There should always be a Boss/End type scroll (00) before the start of any Wily level scroll data, or else bad stuff happens. With all that data, you should be able to change all the checkpoints in the game without running into problems! EDIT: Appearently this was right here on the forums for a long time. It was just buried. I mean, it's a 10 year old thread. I wish I found this when I made that crappy MM1 hack of mine. Mega Man (1) respawn points... -------------------- [FIRE] - Fire pillar position tables 1768E: Pillar Position Table Fire Man Pointer 176A1: Pillar Position Table Wily 1 Pointer 176A8-176B6: Fire Man Pillar Positions 176B7-176BE: Wily 1 Pillar Positions Bit 1 = Column Bit 1 and 2 = Screen No. How to calculate pillar positions: 1. Get Screen No. of pillar 2. Add tile distance from left side of the room to the first bit And moving Fire Pillars should no longer be a problem! -------------------- [ENMY] - Enemy weakness / damage tables The global enemy health thing in RnR is not what it seems to be. It's the damage they deal to the player instead. (I'm not mentioning it here since editing them works just fine in RnR, bit it's after the tables mentioned below in the ROM) Weapon damage data against enemies can be found at these offsets. Use RnR's to get the enemy IDs. Each enemy has 20 HP (14 in HEX) by default, and that can't be changed (at least I have not found the location for that yet). Also, each table is 59 entries long (3B in HEX), each table ends with CWU-01P's damage data. 1FC61-1FC9B: Buster 1FC9C-1FCD6: Cut 1FCD7-1FD11: Ice 1FD12-1FD4C: Bomb 1FD4D-1FD87: Fire 1FD88-1FDC2: Elec 1FDC3-1FDFD: Guts To easily find a value, just copy a table's starting offset depending on the weapon and add the Enemy's ID to it. -------------------- [WECD] - Weapon Energy Consume and Damage 168E8 - How many shots until weapon energy is consumed. Order is CIBFEGM. 168EF - How much power a weapon uses. Numbers other than 1 or 2 will cause an infinite ammo glitch depending on how much weapon energy you have left when you are about to run out of energy. Have a fix for it, but I used LEVEL DATA as programming space to implement it. Is there any free space in this bank? Damage values against bosses can be changed in the Level Properties menu (MM head, second tab), however some values are stored elsewhere (which is the reason why some hacks have weakness inconsistencies, including even MM3 ones), like getting 10 damage from Elec Man if you have Rolling Cutter equipped, even though you've changed his damage output. (Maybe they wanted to make you weak to boss weapons if they were the weakness against the weapon's RM you had equipped at some point?) If you want to edit them using a hex editor, here are the offsets and the order (PCIBFEGM): 1FDFE-1FE05 - Cut 1FE06-1FE0D - Ice 1FE0E-1FE15 - Bomb 1FE16-1FE1D - Fire 1FE1E-1FE25 - Elec 1FE26-1FE2D - Guts 1FE2E-1FE35 - Yellow Devil 1FE36-1FE3D - Mega Man Clone 1FE3E-1FE45 - CWU-01P, but it doesn't use this table. Refer to the offsets below this table. 1FE46-1FE4D - Wily Phase 1 1FE4E-1FE55 - Wily Phase 2 1FE56-1FE5D - ???? (Possibly Wily 5 boss) CWU-01P damage data. Each CWU-01P unit has 20 HP (14 in HEX), so edit them accordingly. 1FC9B: Buster 1FCD6: Cut 1FD11: Ice 1FD4C: Bomb 1FD87: Fire 1FDC2: Elec 1FDFD: Guts -------------------- [WEAP] - Weapon related notes In case you'd like to make very simple changes to the weapons. Bomb 162DA - time until bomb/orbs starts testing hits. If it's set lower than the value at 1649A, the bomb itself will be able to cause damage too, and no explosions will be spawned if the bomb hits something. If it's higher, then the hit tests will be delayed by the same amount as the difference. If this value is higher than 164C3, the bomb will be unable to deal damage. 1649A - time until bomb explodes 164A4 - number of small explosions, without modificating the spawn order of the small ones, 03 (bomberman) and 07 (round shape) are good values for less projectiles (and less lag). You might want to edit their speed though, and if you do then experiment here, but it will also affect RM explosions or MM dying: 164C3 - time until explosion disappears, must be higher than 1649A 16A21-16A26: 11 00 03 80 01 FC 0C - flag (more about flags later), vertical speed fraction, vertical speed, horizontal speed fraction, horizontal speed, spawn y pos, spawn x pos respectively Editing the following tables affects all explosions, including both Bomb Man's and Copy Mega Man's bombs and the Killer Bullet's explosion. 1F89A-1F8A5 - mirroring? 1F8A6-1F8B1 - horizontal speeds for small explosions (experiment with them values) 1F8B2-1F8BD - mirroring? 1F8BE-1F8C9 - vertical speeds for small explosions (same) It's possible to make the bomb explode instantly, but it requires editing the throwing animation. Guts block 169C6-169CC: 15 00 03 A0 03 F0 10 - flag, vertical speed fraction, vertical speed, horizontal speed fraction, horizontal speed, spawn y pos, spawn x pos Guts block pieces, each column is one piece, affects Guts Man's blocks too. 1F836: 08 18 08 18 - spawn x pos 1F83A: 08 08 18 18 - spawn y pos 1F83E: 04 04 03 03 - piece horizontal speed 1F842: 02 00 02 00 - piece vertical speed 1F846: 6D 6D 6D 6D 6D 6D 56 6D 6D 6D 56 6D - sprite id for each level, including Wily 5 and the Ending. Fire 169A9 - sprite to use, 5F is tiny explosion, 60 is default, 61 is the fireball around MM. 55 and 56 are tiny and small gutsblock pieces. 169AB-169AF: 04 00 00 00 04 - flag, vertical speed fraction, vertical speed, horizontal speed fraction, horizontal speed Fire shield (Editing these also affects Copy Mega Man's fire shield) 1650A: 20 14 0 -14 -20 -14 0 14 - y positions 16512: 0 -14 -20 -14 0 14 20 14 - x positions 1651A: 0 -1 -1 -1 0 0 0 0 - I don't really get it but has to do something with the positions Elec is a completely different story, each piece seems to have it's own speed and stuff (and it's made up of 6-7 objects omg). to be included later Ice 169D6 - sprite to use, 5E is Magnet Beam, 5F is tiny explosion 169D8-169DE - 04 00 00 00 04 00 10 - flag, vertical speed fraction, vertical speed, horizontal speed fraction, horizontal speed, spawn y pos, spawn x pos Cut to be included later You can use the following values for flags for the weapons: 00 = disappears when hits enemies, doesn't detect walls and has no gravity. (Buster) 01 = collision detection 04 = no gravity 11 = affected by gravity and collision detection 14 = affected by gravity 15 = used by super arm's guts block 24 = super arm? Flag notes First bit of a flag: even= no gravity uneven= gravity 2= super arm uses it but ??? 8+ even or uneven= changes how y position is calculated. Second bit of a flag even= no collision detection uneven= collision detection 8+ even or uneven= changes how x position is calculated. -------------------- [INVU] - Boss invulnerability frames 1C9A4-1C9AE - Invulnerability frames for each boss. Only Cut and Elec have knockback as far as I'm aware. The last two bytes are both for the Wily Machine. It's time to make Elec Man worse. -------------------- [ENDI] - Relocating the Ending scene to make more space for Guts Man's level Simply change: 1AB21 from 14 to 04/24 - Ending last screen (or should I say, where the house is) 1AB25 from 1E to 0E/2E - Ending first screen (where MM teleports in) 1AC5E from 10 to 00/20 - To make sure the sunset happens on these screens. (You can also "disable" the sunset effect completely with this value btw, however MM's sprite still changes when he jumps) 1ACDC from 14 to 04/24 - End the Ending (make MM jump), should be same as 1AB21 Move those rooms in Rock and Roll's Room Order Editor too. Doing this moves the ending to screens 04-0E or 24-2E depending on which column of values you used. Important! Moving the ending to screens 04-0E means you will need to move Guts Man's level. That is not a huge deal if you know how to edit checkpoint data properly. Moving the ending to screens 24-2E is easier because you don't have to worry about relocating Guts Man's level, however the game doesn't forget the special objects when loads the ending cutscene, and that can cause the game to softlock, if an object is on screen 25 for example. Mega Man will run into it and the cutscene will be unable to end (unless you set 1ACDC to 25). So having that object on screens 25-2E means the ending will softlock. If you want to have a long Wily 4, you'll probably want to move the ending to screens 04-0E, or make sure Mega Man can't get stuck on special objects. The ending cutscene is kind of hardcoded, so these are the only options. Also, I think you also have to edit the checkpoint data for the ending level if you do this. -------------------- [QCKA] - Quick access to Wily levels from the Stage Select for testing purposes All you have to do is changing the initial level of the Stage Select. Simply change the value at 1B6FF from 00 to - 06 for Wily 1 - 07 for Wily 2 - 08 for Wily 3 - 09 for Wily 4 - 0A for the unused Wily 5 - 0B for Ending (can be glitchy - sun will always flicker) Note that the Stage Select screen will be slightly glitchy after doing so. You may save the glitchy stage select screen using savestates even after finishing the game, as it will have the same results and you'll also have all weapons if you do. I've been messing around with it 0B a bit because glitches are fun. - pressing left right right start loads Wily 3 - pressing left right left right left right start loads Wily 4 -------------------- [GUTA] - Graphics the game loads for guts block when you equip super arm on each level 1B2F1-1B2FB - offset (increasing this by one makes it load the next 4 16x16 tiles for example, valid values are 80-BF) 1B2FC-1B306 - which bank the graphics is loaded from (valid values are 01-08, 00 crashes the game) The last byte is for Wily 5 The level tilesets in - bank 1 are at offsets 90-BF (Robot Master level tilesets) - bank 3 are at offsets 90-A7 (Wily level and Ending tilesets) -------------------- [GUTB] - Graphics the game replaces guts blocks with when picked up Regular blocks: Structure ID to replace buts block with. 1CE4E-1CE58 - First Block Table Blocks in boss rooms (needed for the second block table): Which room a boss is fought in. 1CE59-1CE5F - Robot Masters 1CE60-1CE63 - Wily Bosses Structure ID to replace guts block with in boss room (00 crashes the game) 1CE41-1CE4B - Second Block Table 1CE4C-1CE4D - ??? -------------------- [TITL] - Title screen notes Palette settings: Go to -SPAL-. I seperated it into two tables on the image, the first 4 bytes are for the text, and the second 4 are for the logo. The table is located at 10ED7-10EDE. PPU address: Where it is drawn on the screen. Use FCEUX's Name Table Viewer for this, hover over any tiles on the top-left screen and check it's PPU address. The table for the first half of the PPU addresses is located at 10EDF-10EE5, and the second half's is at 10EE6-10EEC. Logo - number of tiles to read: Exactly as it says, how many tiles to read for a line. For example, in the U and E versions load the first 18 tiles from the background PPU for the first line, load the next 16 for the second, load the next 14 for the third, etc.. Because of this, it's not possible to use the same tiles twice in the logo, so prepare your own logo accordingly. The table is located at 10EED-10EF3. Text: Format is the following: Full PPU Address, Number of bytes to read, actual text data. (same length as the number of bytes to read) The data located at 10EF4-10F4F. Unlike in the Japanese version where the text data for "TM" is right after the rest of the title screen text data (highlighted free space on the image), the trademark text "TM" is stored in the code that draws the title screen in the E and U versions. Trademark letter "T": 1F9D9 ($94) Trademark letter "M": 1F9DE ($8D) Trademark PPU Address first half: 1F9CF ($21) Trademark PPU Address second half: 1F9D4 ($D9) Palette overwrite stuff for "TM"; Without this, "TM" would be drawn with blue letters and a green background, the same palette as the bottom corner of the logo itself. Palette mask PPU Address first half: 1F9C0 ($23) Palette mask PPU Address second half: 1F9C5 ($DE) Palette mask palette data: 1F9CA ($A0) If you want to remove the Trademark from the title screen completely, including the palette mask, simply NOP 1D9BF-1F9E1. Amount of lines for MEGA MAN logo: 1F9A0 ($06 = 7) Amount of text lines drawn on the title screen: 1F9E4 ($04) -------------------- [SPAL] - Structure palette data If you're coming from -TITL- I suggest making a screenshot of the title screen and drawing a 32x32 grid on it, it helps a lot. Since editors usually call these 32x32 blocks "structures", I'll call them structures too. Here is a table of the possible palette combinations: 0 = [1 1] 1 = [2 1] 2 = [3 1] 3 = [4 1] 4 = [1 2] 5 = [2 2] 6 = [3 2] 7 = [4 2] 8 = [1 3] 9 = [2 3] A = [3 3] B = [4 3] C = [1 4] D = [2 4] E = [3 4] F = [4 4] The first half of a byte is for the bottom two 16x16 blocks, and the second half of a byte is for the top two 16x16 blocks in a 32x32 structure. Knowing that, a structure with the value E1 for example would look like this: [2 1] [3 4] All the structure palette data in the ROM is stored like this as far as I'm aware, making palettes quite easy to find. -------------------- [DOOR] - Door Animation editing Which rooms the animated doors are in. 15F12: 13 13 13 0F 13 0E FF FF FF FF FF - First door (Wily levels only use the second door) 15F07: 16 16 FF 12 FF 11 FF FF FF 22 20 - Second door (If the entrance is from above or below, it must be FF as they're special doors. The first three Wily doors are in the same boots.) Which direction is a boss room entered from. First set is RMs and second is Wily. 00 is default, 10 is up, 20 is down. 15390: 00 00 20 00 10 00 15396: 00 20 00 00 00 Door animation data locations (F50+4000*(banknumber-1)) Cut Man & Wily 1: F50-100F Ice Man & Wily 2: 4F50-500F Bomb Man & Wily 3: 8F50-900F Fire Man & Wily 4: CF50-D00F Elec Man: 10F50-1100F Guts Man: 14F50-1500F Each animation data code block consists of: - Structure data: F50-F7F (30 bytes in hex from F50) There is space for 12 different structures. Each structure is 4 bytes long, each byte is a TSA. The TSA order is the following: top-left, bottom-left, top-right, bottom-right - Palette data: F80-F8B (C bytes in hex from F80) Go to -SPAL- for a detailed explanation. - Unused space: F8C-F8F (4 bytes in hex from F8C) Since there are only 12 structures, these bytes are left unused. - Frame data: F90-100F (80 bytes in hex from F90) Quite easy to read. I may or may not have used this space for other code. More about frame data: Let's take this record as an example: 04 F000 F001 EC00 EC01 1st byte represents how many edits there are. Depending on this value, it reads the consequent pairs of bytes. For example if the number of edits is 3, it reads the next 6 bytes. - 1st byte: location to draw - 2nd byte: ID of structure to draw Which animation is loaded when a door is opening or closing can be changed at the following locations: First door opening animation data indexes: 1D07E-1D083 Only for Robot Master stages. Second door opening animation data indexes: 1D08C-1D096 First 6 bytes are for the Robot Master stages. The rest is for Wily 1-5. Boss door closing animation data indexes: 1D097-1D0A1 First 6 bytes are for the Robot Master stages. The rest is for Wily 1-5. Before anyone asks, yes, it's possible to expand the structure, palette and frame datatables. All it requires is moving the data around and changing the following pointers accordingly. A lot of them. I did add 4 more structure slots to my hack I'm working on because I desperately needed them. I couldn't add more though, because I'm actually using the rest of the free space in a bank for something. I had to rearrange all that because I was 1 byte of space short... Door animation data pointer (also the pointer to TSA data): - 1D0DC: 8F40 - 1D0E2: 40; 1D0E6: 8F (while it's not exactly a pointer, it basically is one. Needs to be changed, must be the same as the first pointer, otherwise funny things will happen) Palette data pointer...s. Many of them actually, at the following locations: - 1D0B9: 8F70 - 1D0CF: 8F70 - 1D0DC: 8F70 - 1D0F7: 8F70 Frame data pointer: - 1D0F4: 8F80 For those who have a hard time figuring out the order of blocks, I've made some templates: TSA data: - Opening double door: zzxxzzxxxxxxxxxxyyxxyyxx - Opening boss door: xxxxzzxxxxxxxxxxyyxxzzxxyyxxyyxx - Closing boss door: zzxxxxxxzzzzxxxx(zzxxxxxxzzzzxxxx) xx = Normal TSA yy = Shadowed TSA zz = Door TSA No frame or palette data templates though, you can't really make ones for those. Usual locations of doors: Left - F0, EC; Right - 0C, 10 (not including vertical and horizontal doors) -------------------- [LIFT] - Guts Lift notes 1DA99: Check the current level's ID. If it's the same then load Set 1, load Set 2 if not. Default: $05 (Guts Man) ;Set 1 1DA9C: How many lifts to spawn in the level set at 1DA88. Default: $02 (3 lifts) 1DA9E: Which byte to start reading from 1DAE4. Default: $00 (the beginning of the data) ;Set 2 1DAA2: Which byte to start reading from 1DAE4. Default: $15 (4th record, the last record of the data) 1DAA4: How many lifts to spawn in any levels other than 1DA99. Default: $00 (1 lift) 1DAF6-1DB11: Where to spawn each lift. Each record is 7 byte long. 1st byte = x position 2nd byte = screen number 3rd byte = y position 4th byte = 00 = move left, 40 = move right 5th byte = maybe initial status? (can you stand on it or not) In Bisqwit's disassembly it's called ObjectYSpeedFraction (?) 6th byte = lift index 7th byte = enemy index (if the object 2C is the tenth enemy in the whole level, then it's 0B for example, because the first index is 0) If you see a missing enemy or object or the game spawns lifts again when you scroll enemy 2C on the screen again, then you have not set the correct index. 17A3C-17A41: Bytes somehow affecting lift movement 17A3C: 00 FF FF 17A3F: 00 01 00 // 1st byte = speed fraction 2nd byte = speed 3nd byte = how many screens to move when the lift reaches one end 17A42-17A51: Where do the lifts change directions 17A42: 0802 1803 (top lift in Guts Man) 17A46: 8802 9803 (middle lift in Guts Man) 17A4A: 0803 6804 (bottom lift in Guts Man) 17A4E: 581B F01C (Wily 4 lift) // 1st byte = x position 2nd byte = screen number 17A52-17A59: Pointers to 17A5A, 17A5B, 17A64, 17A79 17A5A-17A7D: Where to change lift status 17A5A: FF (no action; top lift) 17A5B: 02F0 0300 0370 0380 FF (middle lift) 17A64: 0340 0350 0380 0390 03C0 03D0 0400 0410 0440 0450 FF (bottom lift) 17A79: 1BC0 1C20 FF (Wily 4 lift) // 1st byte = screen number 2nd byte = x position -------------------- [LINK] - A blast from the past - Useful links How to make sure the correct special objects get "removed" when a rematch boss is defeated Mega Man (1) respawn points... - Checkpoint stuff. Help with Mega Man (U) Configuration Settings - Footholder and Palette animation in Fire and W2 Googie's hack thread - Contains a bit of useful info. Romhacking.net - Documents - Mega Man Title Screen Sound Code - Restoring the pressed start sound effect in Mega Man (U) title screen. Let me know if there are other threads related to MM1 hacking and I'll add them. -------------------- [HELP] - Ask for help, for example if you want to: - move Wily 2 refights to Wily 4 and edit where the teleporter spawns or you want to drop something instead when you beat a rematch boss (doesn't require free programming space.) There's no point in spawning a teleporter AND an item though (since the player could easily miss the item), so forget that. You may also go here and read the second paragraph after the code block: http://acmlm.kafuka.org/board/thread.php?pid=89177#89177, but that isn't everything you need. I'm not going to link to that certain post I made in the past about relocating the refights because it's a mess and I was really dumb back then (that didn't change though). - I dunno, anything else. I'm still a noob at ASM though! And I will always be. -------------------- [TBIL] - Should fully research and/or include later - CWU-01P pattern editing (vertical and horizontal travel limits found, needs to be documented, which I still have not done.) - Door editing (Fully understood - needs to be documented. Find by searching for door mask TSA data - order: top-right, bottom right, top-left, bottom-left or using the data in -SPAL-.) - PPU data editing (PPU data includes MM's palette when the level loads, making them fairly easy to find. Needs to be documented) - Behind Foreground Effect editing - Disappearing Block editing - Guts Lift pattern editing - Infinite Weapon Energy glitch fix - aka. the glitch that happens when a weapon uses more energy than 2. (fix fill be included once I find free space in the vanilla ROM) - Patch to remove the score system? (also repurposing score counter as a life counter & limited max lives to 9; half done, have not removed all the unused code) -------------------- [LOGS] - Edit logs Edit: More stuff. Edit 2: I forgot to include the rest of the checkpoint stuff, and I've found more of it too! Good! Anyway, it's there now. Edit 3: Some enemy damage data added. Also cleaned up this mess a tiny bit. Edit 4: Added how to find the boss appears palette for the levels. It's really easy btw. Edit 5: Corrected some mistakes. Edit 6: Corrected some more mistakes. Edit 7: Corrected even more mistakes. Edit 8: Ending cutscene shenanigans added. Edit 9: Rewrote some stuff to actually make some sense. Should add more stuff about boss rematches. Edit 10: Added how to quickly access some Wily levels without editing the Stage Select screen too much. Edit 11: This post is already too long so I can't include everything here so scroll back a tiny bit. Edit 12: Some super arm and guts block related stuff and some useful links added. Edit 13: CWU-01P and scroll order related data added. I should try removing the score system... RetroRain really should have made a standalone IPS for that! Edit 14: I dunno. Shouldn't I make a new thread for this? I probably should... Edit 15: Has it's own thread now! Edit 16: Added Title screen notes. Edit 16+1: Added structure palette data notes, updated Title screen notes, added Table of Contents and shortcut codes. Edit 9*2: Added a new useful link -LINK-. (Mega Man Title Screen Sound Code) Edit XIX: Forgot to add the previous edit log. Oops. Also fixed some nonsense here and there. Some new stuff in -TBIL-. Edit Twenty: Added Door Animation editing and Guts Lift notes, check -TELE- or search those names. Edit 21: Added Fire Pillar location table stuff. -FIRE- |
infidelity |
| ||
Fuzz Ball Level: 66 Posts: 946/968 EXP: 2368193 Next: 93658 Since: 05-24-07 Last post: 959 days Last view: 815 days |
Very in depth, awesome contribution! :-) |
Zynk |
| ||
Purple Leever Level: 32 Posts: 176/209 EXP: 195992 Next: 10450 Since: 10-19-12 Last post: 81 days Last view: 14 hours |
This is very nice. You should also include the notes on how to hack the titlescreen. ____________________ |
Googie |
| ||
Giant Red Paratroopa Level: 77 Posts: 1333/1407 EXP: 4181340 Next: 9789 Since: 02-19-07 From: Brooklyn, NY Last post: 10 days Last view: 9 days |
Posted by Zynk Here's something I made years ago for hacking the MM title screen. ____________________ My Linktree |
Zieldak |
| ||
Crow Level: 42 Posts: 374/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
Updated first post.
New stuff: - MM1 Title Screen notes, incl. TM related nonsense. (I really should add a Table of Contents or something, I guess I'll do that later.) - Nothing else because I was pretty much dead. |
Zieldak |
| ||
Crow Level: 42 Posts: 375/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
Finally updated this mess after more than 2 months.
Just added structure palette data notes, updated Title screen notes, added Table of Contents and shortcut codes. |
kuja killer |
| ||
Level: 55 Posts: 585/628 EXP: 1243948 Next: 70241 Since: 03-20-07 From: Lake Havasu City, Arizona Last post: 282 days Last view: 8 days |
thats cool, hopefully all your info will be useful to more mm1 romhackers.
and if you dont mind me saying, sorry for going off topic -- i saw all your levels in the "megaman contest 2" and they were really good. especially that underwater level with the giant fish boss at the end, was really unique. i loved it. I thought your level there was pretty high quality. i forget what it was called "metal ocean" or something |
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 1423/1443 EXP: 4172616 Next: 18513 Since: 06-15-08 From: Earth Last post: 22 days Last view: 22 days |
This is amazing. Thank you for your dedication and commitment towards putting all this information together. Excellent work! |
Zynk |
| ||
Purple Leever Level: 32 Posts: 184/209 EXP: 195992 Next: 10450 Since: 10-19-12 Last post: 81 days Last view: 14 hours |
This small document by Insectduel on how to restore the beep sound in the titlescreen of MM1 US version should be included.
http://www.romhacking.net/documents/411/ ____________________ |
dreamerman |
| ||
Red Paragoomba Level: 18 Posts: 49/52 EXP: 27093 Next: 2804 Since: 01-10-10 From: Santiago Last post: 950 days Last view: 950 days |
its possible add Timeman and Oilman? |
Zieldak |
| ||
Crow Level: 42 Posts: 376/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
Posted by kuja killerMM1 needs more love. Thanks. Too bad I never got to finish the Null and Void ones (which are appearently not implemented properly). I messed up Gigabgyo's code too. Oh well, honestly I don't even care at this point, the game has been out for a very long time now. I wonder if I'll be able to participate in the third one, but I highly doubt that. Posted by ZynkAdded. Posted by Quick CurlyAnd there's still a lot more to document. Posted by dreamermanWell, I wouldn't say it's impossible but you'd have to rewrite pretty much the whole game if you wanna do that. |
Zieldak |
| ||
Crow Level: 42 Posts: 378/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
Double post yay!
Added Guts Lift and Door Animation stuff and fixed several dumb mistakes. I'll add some Yellow Devil stuff next time. Pattern editing is quite easy. Edit: I promised Yellow Devil, but I added FIRE PILLAR stuff instead. Didn't want to triple post. |
DannyPlaysSomeGames |
| ||
Octorok Level: 12 Posts: 3/29 EXP: 7070 Next: 851 Since: 09-16-18 From: Somewhere Last post: 1706 days Last view: 191 days |
Honestly, this seems pretty useful. I'll probably use this as a reference for hacking the game. Thanks!
EDIT: You should also add or at least check out this document, although I have no idea if it's useful, since it's partly in spanish, with some english here and there. Maybe I could translate it? I dunno. Regardless, just a suggestion. https://www.romhacking.net/documents/92/ EDIT 2: noticed a typo:
When it should be:
____________________ Hey there |
DannyPlaysSomeGames |
| ||
Octorok Level: 12 Posts: 4/29 EXP: 7070 Next: 851 Since: 09-16-18 From: Somewhere Last post: 1706 days Last view: 191 days |
Sorry for the double post, but I ran into a problem:
I was tinkering around with Bomb Man's weapon and now it no longer does damage. I think editing the delay of when the bomb goes off and when the explosion disappears might screw around with its hitbox, although I'm unsure. 1649A was 42 (time until bomb explodes) 164A4 was 03 (explosion sprites after bomb explodes) 164C3 was 62 (time until explosion disappears) ____________________ Hey there |
Zieldak |
| ||
Crow Level: 42 Posts: 384/387 EXP: 512435 Next: 8927 Since: 12-01-11 From: Hungary Last post: 1312 days Last view: 1203 days |
Posted by DannyPlaysSomeGames I think I know why. Because I forgot to include a very important value. What basically happened is it didn't test if the orbs hit anything at all, because 1649A was set to 98 frames, but 162DA remained at $92 which is 146 frames. So the orbs disappeared before it could even start testing hits. Change 162DA too to 42. If you set it lower than the value at 1649A, the bomb itself will cause damage instead, and no explosions will be spawned. If it's higher, then the hit tests will be delayed by the same amount as the difference. Also fixed the typo, thanks. |
Main - ROM Hacking - The Ultimate Mega Man 1 (U) Hacking Notepad | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 104, rows: 139/141, time: 0.018 seconds. |