Morphing Ball fix Status: bugfix Effect: harmless Bank: 84 Description: In original ROM, if you put in game hidden Morphing Ball or Morphing Ball in the ball, they'll give you Spring Ball instead. Now Morphing Ball is always Morphing Ball ---------- Stronger yellow doors Status: improvement Effect: harmless Bank: 84 Description: Now yellow doors have extra protection from blast. 1 Power Bomb is not enough. Quantity of Power Bombs to open yellow doors is depends on distance from epicentre of every blast. You can change the values by yourself. Open patch file in hex and change all 30's to whatever you want add reapply the patch. ---------- Yellow gate fix Status: bugfix Effect: harmless Bank: 84 Description: If you ever tried to add yellow gates to your hack, then you shall notice that they looking like grey gates. This patch will color yellow gates to yellow color instead of grey one. ---------- "Room cleaned" events Status: improvement Effect: harmless Bank: 8F Description: 9 new events. This patch is for educational purpose to understand the code. I recommend to use in your hacks patch FF events located below. After cleaning out room, selected event will happen. In original ROM, after destroing all Metroids, that room will load state where is no Metroids in this room. You can do more than just rid of enemies after cleaning room. You can place an elite space pirate in Wrecked Ship. After killing him, in very far room in Lower Norfair locked doors will open. Single event can affect many, many rooms. If there is no enemies in room with this PLM, then event will be set instantly and effect will happens when you leave this room first time. Events used: 10..13 (old ones used by Metroid shafts and halls), 17..1F. PLM to set events: DB44 Place PLM DB44 in the room. Use lower byte to choose event. ---------- New item events Status: improvement Effect: SMILE will not recignize new events Bank: 8F Description: 00 will set event #17 02 will set event #18 04 will set event #19 06 will set event #1A 08 will set event #1B 0A will set event #1C 0C will set event #1D 0D will set event #1E 10 will set event #1F 12 will set event #10 14 will set event #11 16 will set event #12 18 will set event #13 To take effect, add alternative state to the room (or rooms) where you want to. New item-related events. Now you can change your room after obtaining ANY item. This patch is for educational purpose to understand the code. I recommend to use in your hacks version 2 located below. How to use it: 1. Apply the patch. 2. Add extra state to your room (or use existed state) 3. Open your room in SMILE. 4. Choose Edit > State Properties 5. Select E640 -- Morphing ball 6. Redesign your alternative variant of the room. 7. Open your ROM in hex. 8. Go to your room address. 9. Search for "E640" value. It will be stored backwards in ROM. I mean, "40 E6" A. Change "E640" value to any value located below. For example, if you want to select Charge Beam state, replace "40 E6" with "00 FF" FEE6 Missiles FEF5 Super Missiles FF04 Charge Beam FF16 Ice Beam FF28 Wave Beam FF3A Spazer FF4C Plasma Beam FF5E Grappling Beam FF70 X-Ray Scope FF82 Bombs FF94 Hi-Jump Boots FFA6 Varia Suit FFB8 Gravity Suit FFCA Spring Ball FFDC Space Jump FFEE Screw attack If you want to do some changes after changing value, then read steps from B to D B. Open your ROM in hex. C. Go to your room address. D. Change the new value back to E640. Now you can do desired changes. To set new event again, repeat the steps from 7 to A. WARNING! SMILE will not recognize new events but the game will. WARNING! This patch may overwrite some of your rooms if your bank $8F is almost full. Data writes from 7FEE6 to 7FFFF. If there are FF's in your ROM before patching, it's alright. This patch also changes 2 bytes for the first alternate state of landing site room. Change it to any value provided above. ---------- New item events v2 Status: improvement Effect: SMILE will not recognize new events Bank: 8F Description: Now you can change your room after obtaining ANY item or after collecting needed amount of ammo or energy. You can add an extra state that will not let player enter Mother Brain's room if he got less than 300 energy. Or, if you create a long hell's run, you can let player enter if has enough energy to complete run to prevent him from sure death. Or, you can unlock "safety rooms" where player can restore his health if he has extremly low energy. As for ammo, you can prevent player to enter the room he can not escape without certain ammo. For example, if there'll be a room that allow you to exit only when you clean this room with enemies vulnarable only by Super Missiles and there willn't be Super Missile refill in the room, then you can prevent a player from entering this room if he hasn't enough Super Missiles to get out. You can ever add a hidden item into the room if player has already got some items or collected some amount of ammo or energy or don't let player go forward until he got some ammo. Of course, you can change weather effects with quanity events to make it rains from time to time, for example. Changes since v1: Code is hardly optimized. Amount-related events added. Combined item events added. How to use: 1. Apply the patch. 2. Add extra state to your room (or use existed state) 3. Open your room in SMILE. 4. Choose Edit > State Properties 5. Select E640 -- Morphing ball 6. Redesign your alternative variant of the room. 7. Open your ROM in hex. 8. Go to your room address. 9. Search for "E640" value. It will be stored backwards in ROM. I mean, "40 E6" A. Change "E640" value to any value located below. For example, if you want to change room after getting first Missile pack, then replace "40 E6" with "00 FF" Collected items FF00 Missiles (any) FF10 Super Missiles (any) FF90 Charge Beam FF98 Ice Beam FFA0 Wave Beam FFA8 Spazer FFB0 Plasma Beam FFB8 Grappling Beam FFC0 X-Ray Scope FFC8 Bombs FFD0 Hi-Jump Boots FFD8 Varia Suit FFE0 Gravity Suit FFE8 Spring Ball FFF0 Space Jump FFF8 Screw Attack Quantity events FF05 Max Reserve Energy + Max Energy => 399 FF15 Reserve Energy + Energy => 399 FF20 Max Missiles => 25 FF28 Max Super Missiles => 10 FF30 Max Power Bombs => 10 FF38 Max Energy => 300 FF40 Max Reserve Energy => 100 FF48 Missiles => 25 FF50 Super Missiles => 10 FF58 Power Bombs => 10 FF60 Energy => 300 FF68 Reserve Energy => 100 Combinated events FF73 Power Bombs & Super Missiles & Missiles & Charge Beam FF78 Super Missiles & Missiles & Charge Beam FF7D Missiles & Charge Beam WARNING! SMILE will not recognize new events. If you want to do some changes after changing value, then read steps from B to D B. Open your ROM in hex. C. Go to your room address. D. Change the new value back to E640. Now you can do desired changes. To set new event again, repeat the steps from 7 to A. As for quantity of ammo or energy needed to change state, you can change it by desired value. For example, if you need more or less current energy to change the room then read steps from E to 11. E. Search for needed ammo in the list (FF40). F. Open your ROM in hex. 10. Jump to the very end of bank $8F. (7FF40 in our case). 11. Change the word (2 bytes) after byte "C9" to set any value you want. If you have already applied v1, read this: Since the code is optimized, values for items are little changed in v2. To make states determined in v1 work in v2, read this table and change values in first column to values in second column for rooms where you have add extra states. For example, to make room with Missile state work in version 2, open ROM in hex, jump to header of mdb of your room and change EEF6 to FF00. Event v1 v2 Missiles FEE6 FF00 Super Missiles FEF5 FF10 Charge Beam FF04 FF90 Ice Beam FF16 FF98 Wave Beam FF28 FFA0 Spazer FF3A FFA8 Plasma Beam FF4C FFB0 Grappling Beam FF5E FFB8 X-Ray Scope FF70 FFC0 Bombs FF82 FFC8 Hi-Jump Boots FF94 FFD0 Varia Suit FFA6 FFD8 Gravity Suit FFB8 FFE0 Spring Ball FFCA FFE8 Space Jump FFDC FFF0 Screw Attack FFEE FFF8 WARNING! SMILE will not recognize new events but the game will. WARNING! This patch may overwrite some of your rooms if your bank $8F is almost full. Data writes from 7FEE6 to 7FFFF. If there are FF's in your ROM before patching, it's alright. ---------- Vertical door fix Status: bugfix Effect: Harmless to original ROM, but may overwrite custom PLMs. Can't edit "Hits to open" property in SMILE for modified doors Bank: 84 Description: Another bug in Super Metroid is taking place. After going up through elevator, pink and green vertical doors are looking like blue ones. Now they are have the correct colors. Door data is 4 bytes bigger now. So I have to expand one door and move other door of the same type to a free space. Free space is now at $242A6..$24300 and $2442B..$24489 Door data is moved to $272E0..$273A8 Look in hex to data at $272E0. If there are FF's, don't afraid to apply the patch. WARNING! Don't edit "Hits to Open" property in SMILE for green and pink vertical doors after applying patch. If you see B4 in that field, then don't touch it. You can do it manually in Hex Editor, if you want to. Modifying "Hits to open": To edit "Hits to open" property for green door going up change byte at 24272 To edit "Hits to open" property for green door going down change byte at 2730F To edit "Hits to open" property for pink door going up change byte at 243F4 To edit "Hits to open" property for pink door going down change byte at 27372 ---------- Ridley defeating state Status: improvement Effect: Harmless unless you added some code in bank A6 Bank: A6 Description: A small patch that will set event #16 if you win in Ceres battle (if Ridley drops larva). You can open some doors from very beginning as reward, alter weather when you land, remove some enemies or everything else you want. Just select event #16 as alternative state in rooms where you want to change something, if player wins at Ceres. Another usage is to punish player in future if he loses. For example, add Metroids in original state of landing site, change doors from pink to green in some rooms, add lava or acid in some rooms etc. ---------- Metroid 1 items/doors Status: improvement Effect: May overwrite custom PLMs Bank: 84 Description: 1. Orange doors for Tourian (left one and right one). They are opens after 10 missile hits. 2. Large missile pack as reward for beating Kraid and Ridley. It gives you 75 missiles at once! 3. Invisible save points. Normal save points are not affected. New one must be placed exactly under elevator enemy. 4. Graphic and text files for new doors, missile pack and invisible save points. Place them in "smile/files/Plms" folder to be able to choose them in SMILE. Any usual doors and PLMs will be not affected. You can, for example, set quantity of missiles for usual missile pack to 2, for missile pack in ball -- to 5 and 10 for hidden missile pack and this new missile pack will still gives you 75 missiles. You can modify this quantity too. Old yellow door will still opens from power bomb. Pink and green doors are unchanged too. Invisible save points must be placed exaclty under elevator enemy because the lowest line of new point is acting like a door to be able to use elevator. WARNING! This patch will write data between 26FD3 and 2728F. If you wrote custom PLM in this interval, then this patch will overwrite your data. Use it wisely. I recommend to look to this space in hex editor. If there are FF's, it ok to use it. ---------- Messenger Status: improvement Effect: May overwrite custom PLMs Bank: 84 and 85 Description: This PLM can display any message you want when you touch it. Extract graphic and text files in PLM folder to "smile/files/plm" folder to be able to choose them in SMILE. Apply IPS file to the ROM. Place PLM F2C3 to the room. When you touch it, the message will be displayed. Set ID of message with low byte. To add new messages, use message patch by Kej. First new ID is 1D. To display message when you just enter the room, use continuation PLM (red arrows) to expand area where messenger can be touched. Look to scroll PLMs in original ROM to understand how it works. Place this PLM only to empty 16*16 tile of Layer 1, or this PLM will overwrite graphic under tile to empty air block. This PLM is made from Ice Beam PLM. 2 instructions were removed and another one -- shortened. I've also changed time how long messanges starting from ID 1D will be displayed to 30 frames (0.5 seconds in NTSC version or 0.6 seconds in PAL version). To change this value, open your ROM in hex and go to 2FFF9. 001E (30) is default, 003C (60) = 1 second in NTSC version, 000C (12) = 0.2 seconds in NTSC version. If you've already expanded message array to use messages for new items, then you may want to change message number of ID, starting from which display time will be changed. To do so, open your patched ROM in hex, goto 2FFF1 and change this byte (single byte only!). WARNING! This patch will write data from 27290 to 272C6 and from 2FFF0 to 2FFFB. If you wrote custom PLM in this interval, then this patch will overwrite your data. Use it wisely. I recommend to look to this space in hex editor. If there are FF's, it ok to use it. ---------- FF events and tubes Status: improvement Effect: harmless Bank: 84 Description: FF events to use. After cleaning out room, selected event will happen. In original ROM, after destroing all Metroids, that room will load state where is no Metroids in this room. You can do more than just rid of enemies after cleaning room. You can place an elite space pirate in Wrecked Ship. After killing him, in very far room in Lower Norfair locked doors will open. Single event can affect many, many rooms. If there is no enemies in room with this PLM, then event will be set instantly and effect will happens when you leave this room first time. This patch also allows you to use multiple Maridia tubes. Environment in room with tube must be water or air. PLM to set events after cleaning the room: DB44 Extract graphic and text files in PLM folder to "smile/files/plm" folder to be able to choose them in SMILE. Event PLM Place PLM DB44 in the room. Use lower byte to choose event. Event = Low Byte. Maridia tube Create a room with tube. Place PLM D70C in the room to the upper-left corner of tube. Use lower byte to choose event. Event = Low Byte. Don't forget to place "breaking glass" enemy in the room. If you have questions, just open the room CEFB in original ROM and look how it works. To take effect, add alternative state to the room (or rooms) where you want to. There are another events programmed but not displayed in SMILE. With this you can alter rooms depending of boss state in any area. 40 Main boss of Crateria is defeated (if you place one) 41 Mini-boss of Crateria is defeated (if you place one) 42 Torizo of Crateria is defeated (Silver Torizo) 48 Main boss of Brinstar is defeated (Kraid) 49 Mini-boss of Brinstar is defeated (Spore Spawn) 4A Torizo of Brinstar is defeated (if you place one) 50 Main boss of Norfair is defeated (Ridley) 51 Mini-boss of Norfair is defeated (Crocomiro) 52 Torizo of Norfair is defeated (Golden Torizo) 58 Main boss of Wrecked Ship is defeated (Phantoon) 59 Mini-boss of Wrecked Ship is defeated (if you place one) 5A Torizo of Wrecked Ship is defeated (if you place one) 60 Main boss of Maridia is defeated (Draygon) 61 Mini-boss of Maridia is defeated (Botwoon) 62 Torizo of Maridia is defeated (if you place one) 68 Main boss of Tourian is defeated (Mother Brain?) 69 Mini-boss of Tourian is defeated (if you place one) 6A Torizo of Tourian is defeated (if you place one) 70 Main boss of Ceres is defeated (Ridley) * 71 Mini-boss of Ceres is defeated (if you place one) 72 Torizo of Ceres is defeated (if you place one) 78 Main boss of Debug is defeated (if you place one) 79 Mini-boss of Debug is defeated (if you place one) 7A Torizo of Debug is defeated (if you place one) * even if you lose in battle, this event will be set when he fly away. Of course, if you not supposed to place main boss in Crateria (for example), then you may use event 40 freely as any other event This patch will overwrite unused parts of code for maridian tubes and code itself for event PLM to make it shorter, so it technically, 2 patches in one. I've done so because both of them are using the same part of code (that will set event depending on Low Byte) Warning! Don't forget to remove all DB44 PLMs from any room of original game except of Metroid rooms to prevent setting events by accident. Look at the rooms of escape sequence in Crateria and Tourian rooms ---------- Message Box v2 A patch to add new message boxes, version 2. Based on previous version, but tweaked to support big messages with or without highlighted buttons. It's xkas code only, you'll have to read it and edit it yourself, and you may need a few of my documents to figure out what to put in for some details. Compatibility: Uses free space in bank 85 ---------- One Beam Patch This patch disables "mixing" function of arm cannon. It means, only one beam at a time is possible and its combination with Charge Beam, like it was done in Prime series. Free space used: from 17730 to 17777. In some routines in bank $82 order of commands has been changed, but it's harmless to all ROMs. EDIT: In bank $84 there are code written by myself from 208B0 to 208CC that replaces code checking for Plasma and Spazer when getting new beam (but since you can't mix beam at all, it's OK) with changed pointers for the Charge Beam (also harmless). It is a rip from Redesign as this subroutine was written there with small modifications. I have a plan of writing replica since I understand how the code works and how it can be improved. So it won't be a rip technically. Until then, just use this patch. So here are the credits: Drewseph -- author of Redesign where this code from. Kejardon -- author of this code. Kejardon -- for writing EquipmentDisassembly. Without it would be hard to find this routine and see what is changed. Jathys -- for writing Bank Baddy program, which is very useful to rip the bank and search for a code. ---------- Start with items v1.01 Read the asm file itself with any text editor to gain info. Basically, it allows to set any item from the start and even set amount of Missiles from start, but only if you skip intro and start on Zebes. Free space used: EF20..EF2D (min) EF20..EF33 (max) ---------- Logo extension patch With recoding and repointing of Super Metroid and Nintendo logos, you can use 232 tiles to draw new tiles. So, you can make logo like 21*11 tiles, 29*8 tiles or even 33*7 tiles. And even greater, if some tiles in that rectangle will be unused. I hope, it will be enough for everyone. ---------- Wall Jump item A special item that allows to perform walljumping only when enabled. I suck at drawing stuff, so no item icons, sorry. But I have provided addresses at where you can draw them. Menu isn't altered because some people may have already altered it and the result will be a screw up, but I can do it in general case, if someone will really use any of these items in his/her hack. ---------- Chaos Arms item A special item that will multiply damage of all your shots by 2 when enabled, using Samus energy. Cost is 20 energy per shot. Can be tweaked. I suck at drawing stuff, so no item icons, sorry. But I have provided addresses at where you can draw them. Menu isn't altered because some people may have already altered it and the result will be a screw up, but I can do it in general case, if someone will really use any of these items in his/her hack. ---------- Accel Charge item v0.9 A special item that will decrease charging time for your arm cannon. A replica from Other M. After obtaining Charge Beam, you can charge your beam very slowly. After collecting each Accel Charge item, the charging time will decrease in this order: Amount Time to charge (s) ------ ------------------ 0 2.00 1 1.75 2 1.50 3 1.25 4 1.00 5 0.75 >5 0.50 This is an unfinished version. Altering charging time is working fine, but sparks coming out of your cannon aren't tweaked yet. Changes since 0.8: Bug is removed and unused free space in the end of bank $91 is cleaned up. Bomb Spread attack timer and Pseudo Screw Attack timer are tuned to amount of Accel Charge items. Percentage count is altered to make all these items count in final score. Keep in mind that 230 Missiles, 50 Super Missiles, 50 Power Bombs, 14 Energy Tanks, 4 Reserve Tanks, 6 Accel Charges and all items will give you 106%. To get 100%, rid of some items. Place 200 Missiles instead of 230, for example. I suck at drawing stuff, so no item icons, sorry. But I have provided addresses at where you can draw them. Menu isn't altered because some people may have already altered it and the result will be a screw up, but I can do it in general case, if someone will really use any of these items in his/her hack. ---------- Upside down and opened gates This patch allows you to using 3 new gates: 1. Normal opened gate 2. Upside down closed gate 3. Upside down opened gate There are gifs for PLM folder (made by me) and descriptions inside. Also, yellow gates will looks like grey in game. To fix it, use my "Yellow Gate Fix" patch. Strange, it was done long before this one, but it can also fix upside down yellow gates =) Was found long ago, using Kej docs, but wasn't released. ---------- Upside down gate fix A patch that will make upside down gates display itself correctly after moving (tile with flashing button will not flip in motion). ---------- Save Station Extension In original game you can use only 8 Save Stations for area. If your Save Station index is greater than $07 (example: $09), you'll just save in different spot ($01 in this case). Although, you can load the game properly from indexes $08 and greater. This patch allows you to save correctly and thus far, use more spots for Save Stations, not just the first 8. The default quantity is variable for different areas. Min is $11 (for Ceres and Debug) and max is $17 (for Norfair). I doubt that anyone will use more than 17 ($11) Save Stations per area even in giant hacks. But even then, this patch allows you to use $FF Save Stations per area, but you'll need to repoint data to do that. If anyone will ever need more than 17 Save Stations, feel free to ask me about it. ---------- Boss music fix A patch that will set correct music after defeating Spore Spawn and Crocomiro. This patch is using free space from 12F95A to 12F965, so be careful! ---------- Golden Torizo code expansion This patch will prevent the game from freezing when entering Golden Torizo code. If you have more than 7 energy tanks, you'll lose them and it will be displayed correctly. If you don't have Grapple or X-Ray, their icons will appear in the HUD. I don't want to disable the code because it's a legacy of programmers who made this wonderful game and using this code allows to do "over 100%" runs without using Space/Time beam. Instead of this, I want to make this code works as it should do. This patch is using free space from 1577D3 to 157809, so be careful. ---------- Map Tiles fix A patch that will move dots in certain map tiles to correct positions to be displayed in minimap flawlessly. All BG dots that aren't overwrited by tile should be placed as in tile $1F. Don't use flipping for sloppy tiles. Paste them to the map "as is". ---------- Vanilla map fix A patch that will move the map parts of Crateria to make Crateria and Wrecked Ship maps fit each other like puzzle parts and change diagonal tiles for Norfairian speed tunnel to fix errors in minimap displaying. Area texts and map location of save points are also moved. Explorable cluster map array for Crateria is also altered to work even without KejMap. X map coordinates for all rooms in Crateria were also changed to fit new map. Useful for vanilla hacks and hacks like Vanilla PLUS or Project Base. Use with caution. If your Crateria map was already changed, don't use this patch or it will corrupt your map. Same for Norfair. ---------- PLM repoint patch Originally posted here: http://translate.google.com/translate?act=url&hl=en&ie=UTF8&prev=_t&rurl=translate.google.com&sl=auto&tl=en&twu=1&u=http://www9.atwiki.jp/catnap222/pages/471.html and edited by me a little. What is changed from the patch located above: 1. PLM will be no longer cleaned from the bank $8F 2. Bank $E0 will be no longer filled with 00's 3. Bank $E1 will be no longer filled with FF's 4. Code in bank $82 is relocated to avoid conflicts with other patches. 5. ASM file is written by me so make repoint to any desirable bank. I did all this to make this patch more flexible (and prevent it from overwriting banks $E0 and $E1 even if the ROM was already expanded). Free space used: 17FFB..17FFF 27F87..27FFF 1. Download both files. 2. Open ASM file and set bank there. 3. Patch IPS file with ASM file (yes, I'm pervert). 4. Apply patched IPS file to the ROM. 5. Copy the whole bank $8F to new destination using program Bank Buddy by Jathys to have all PLMs from original game at their places. [Optional]. ---------- Level Entries Fix version 1.11 Just a level_entries fix for SMILE. Just download this one and replace the one in the SMILE files. Improved version originally made by Sadiztyk. SMILE shows some rooms as having way too much space or negative space available. This level_entries.txt fixes that misinterpretation by SMILE so you can edit those rooms freely. Change since v1.1 Limitator at 280000 is changed to 278000 to protect data from overwriting correctly. ---------- Reserve Energy Safety Fuse A small patch that prevents player to lose remaining reserve energy when fully restoring energy with reserve tanks. No matter, in menu or when losing all energy in game in auto-restoring mode. Strange... There is a safety fuse preventing Samus from burn itself up when performing a super jump, but no safety fuse in original game when restoring regular energy with reserve tanks. It's completly harmless for most (or even all existing) hacks, because no free space is used. ---------- Space Time Beam Fix A single byte change that prevents player from using Space/Time Beam and Murder Beams by placing cursor to Charge Beam instead of Plasma Beam when going to the left from Boots frame. No longer Spazer and Plasma can be selected in the same time. ---------- Heated Blue Echoes Fix A single byte change that prevents player from losing blue echoes during acceleration in heated rooms. Happy heatrunning! =) ---------- 136 new rooms This patch allowing you to add 136 brand new rooms to the game, overwriting all PLMs in bank $8F. So, you'll need to repoint all PLMs first, using my or P.J.Man's patch and then copy bank $8F to another bank using program Bank Buddy. This patch is not unique thing and everyone who can add new rooms can do the same. I just made this patch to make everyone be able to use new rooms. New rooms info 106 regular rooms 20 event state rooms 10 item state rooms Files mdb.txt (with new rooms) and level_entries.txt (fixed version 1.11) are also included. Please read text file carefully, give credits and make backups before using! ---------- Message Box v3.1 A patch allowing to add new messages to the game. Recoded to newbie-friendly format for easy usage. Changes since v3 1. Button array is fixed by shifting the words. "X" letter now will be placed to correct position when collecting the Bombs. Thanks to chrismk by discovering it. 2. Message constants are added to simplify message defining. ---------- Start with items v2 Version 2 of patch allowing to set ammo and items from the start. Reserve energy can also be set in this version. This version is compatible with Scyzer's Save/Load patch. Changes since v1.01 1. Added compatibility with Sadiztyk's Save/Load patch. 2. Added reserve energy support. 3. Added ability of having missiles at Ceres. 4. Added ability of Samus' ship to replenish ammo and reserve energy after leaving Ceres. ---------- PLM repoint v2.1 Use this version only if you need compatibility with Ceres and Debug usage patch and if you want to use PLM bank $C0 or higher or if you want to repoint Special Scrolling Data. You'll need to use Reserve Energy Safety Fuse patch first because it compresses the code and produces a free space in bank $82 in where some code of this patch is placed to make it compatible with Ceres and Debug usage patch. Change since v2 Constants were placed correctly and the whole patch is working now. Changes since v1.1 1. Code in bank $82 is relocated again to make the patch compatible with Ceres and Debug usage patch. 2. Offset in ASM file is corrected to work with current version. 3. Added Special Scrolling Data repointing ability. ---------- Palette blend v2 Highly compressed and optimized version of Area Palette Blend patch originally made by DSO. Now 80 new palettes can be used in game! This version is already compatible with New Map tiles patch. Changes since v1.1 1. Size optimizition in over 20 times. 2. Palette amount increased from 64 to 80. Blend indexes from 80 to CF are working now. 3. Palette blends are grouped together, so you can freely copy palette rows from one palette blend to another without worries of code damage. 4. Use as many palletes of 80 as you need and use free space for new item graphics, code repointing or everything else you wish. ---------- Stronger orange doors v2 A patch allowing to set powers of orange doors. Now in ASM format. In original game all orange doors have power as 01, allowing to open them from any distance. Set it to 08 and you'll have to lay a bomb at least from half screen from door or else you'll need to set more than 1 bomb. Set it to 0F and you'll have to lay a bomb right in front of orange door to open it from the first time. Set power to 10 and you'll have to lay at least 2 power bombs to open horizontal orange door. As for vertical orange doors, max damage it can get from power bomb is 17 if it was laid right in front of one of weak points (where the shield is very thin). Set the powers to 18 and you'll have to lay at least 2 power bombs to open any orange door. ---------- Ending time alteration v1.1 A patch that will change times that required to get different endings. This is just a bunch of hex tweaks joined into single patch for easy usage. I didn't put any code to the patch except hex tweaks. Uncomment lines to change checking for minutes if you want to apply it to mini-hacks in which even sloweset turtle will get ending time less than hour. So, if best time is 03 and you have uncomment required lines, you'll get the best ending if your time is between 0:00:00 and 0:02:59 or between 1:00:00 and 1:02:59 or between 2:00:00 and 2:02:59 and so on... There will not be a check for hours anymore. Keep that in mind. Changes since v1 Constants were placed correct and the whole patch is working now. ---------- New items percentage fix This patch allows to calculate percentage correctly when having new items that are using item or beam bits unused in original game, like Wall Jump Boots or Chaos Arms. ---------- CRE removing interval A patch that allowing to set interval of rooms, in which CRE will be removed. It can be useful, in case of using Area 06 (Ceres) twice: as Space Colony and as regular planet area. By default, in any room in Area 06, located between 7DF45 and 7E0B5 CRE will be removed. Edit certain ASM file to change it. This patch also have a code that will erase explored map data for Ceres. It should be executed only once to make illusion of using another area different to Space Colony. The map for Ceres in colony and at planet will be the same, but player will see only part of it while in colony and another part of it while on planet. Both parts even can have common sectors. Of course, Colony map can be freely edited. Warning To make rooms in Ceres with CRE you'll need to place them in another region while editing them. To do so, go to Edit > Room Properties in SMILE and set any area except Ceres. When done, just change area back to Ceres. Layout of the map will looks like it's screwed up, but it's OK. It's just because SMILE is visually removing CRE in any room in Ceres but not psysically. ---------- Event Doors This patch lets you to make grey doors flashing after certain event has happened without using room states. You even can be in the same room where event has happened to get effect. It's working like Dachora/Eticoons saved check because it's based on it with exception that any event can be used. [Low] byte is event to check and part of door shell index in the same time. Keep track on your indexes carefully. You can use 2 doors for every event in original ROM or 8 of them if you've used SuperMap patch, because it expands door bit array in 4 times. [High] byte should be 18 or 19 for original ROM of from 30 to 37 if you have used SuperMap patch. Read text files, related to doors when setting [High] and [Low] bytes. ---------- SuperMap This patch lets you to use every map sector of every area, including Debug. Code is based on Scyzer's Save / Load patch, so credits goes to her. Besides of that, collected item bit and open door bit arrays are expanded in 4 times allowing to have 2048 items in your hack and 2048 doors. The rest of SRAM was compressed, so now every single byte of SRAM is finally used. This version doesn't using free space at all, because new save map and load map subroutines are placed where they are by default. Almost. Load map subroutine is moved a bit. To be able to load the game through quickmet in SMILE, patch Quickmet.bin with QuickMetPatch.IPS. There is also a reverse patch, so don't worry. Saves from the hack before patching will not be loaded by the hack after patching because SRAM Map was changed. If you need to do it, save a single savestate before saving in unpatched hack and load it in patched hack. RAM modification 7E:D7C0 - 7E:DA5F RAM that is saved to SRAM 7E:D7C0 - 7E:D81F SRAM copy of 7E:09A2 - 7E:0A01 7E:D820 - 7E:D83F Event bit array. Only $100 of them can be used, so their array is shortened 7E:D840 - 7E:D93F Item bit array. Indexes from 000 to 7FF can be used 7E:D940 - 7E:DA3F Opened door bit array. Indexes from 000 to 7FF can be used 7E:DA40 - 7E:DA4F Used elevator(Odd bytes) and save point(Even bytes) array, indexed by area 7E:DA50 - 7E:DA57 Map Station byte array 7E:DA58 Value to use in 0998. Kinda used to keep track of what part of the game we're at. 5 = main, 22 = escaping Ceres / landing on Zebes, 1F = starting at Ceres 7E:DA5A - 7E:DA5F Relocating of 7E:D916 - 7E:D91B 7E:DA60 - 7E:DE1B Totally unused ---------- Text area names centering A patch that centers text area names on the map in 2 versions: with or without centering icons for areas 06 and 07. Patch file TextAreaNamesCentering.IPS will centering text icons for usual areas except Wrecked Ship (it's already centered). Patch file TextAllAreaNamesCentering.IPS will centering text icons for all areas except Wrecked Ship (it's already centered), including newly coded text icons areas 06 and 07 that are provided by Ceres & Debug usage patch (it should be installed first). ---------- $100 extra events This patch lets you to use alternate states depending on $100 extra events in the RAM at $7E:D840..D85F, $200 in total. Just in case if regular 256 events is not enough for you. Warning Read this if have used SuperMap patch, any version. SuperMap patch already lets you to use every single byte in SRAM. So, there are no free space to use literally and extra event array will use some space of item bit array. Actually, there will be a common space used by both arrays at $7E:D840. But this also has a cool side effect. About sharing effect Read this if have used SuperMap patch, any version. Let me explain how this works. Collect item with index 012 (for example) and extra event 12 will be set and vice versa: set extra event 12 and item with index 012 will disappear without actually collecting it. To avoid this effect, simply don't set indexes of the items that are matching extra events. For example, if you want to use $20 extra events (from $00 to $1F), don't use indexes for the items from $000 to $01F and use indexes from $020 to $7FF. In general, using X extra events doesn't allow you to use first X indexes from item bit array unless you want to use extra events as item events. Warning I've made a check for extra events, but SMILE will not recognize it and will not load the room with extra event check, but it works perfectly in game. More information is in text file inside archive. ---------- Extra event doors This patch lets you to make grey doors flashing after certain event has happened without using room states. You even can be in the same room where event has happened to get effect. It's working like Dachora/Eticoons saved check because it's based on it with exception that any event can be used. This version lets you to use $100 extra events, $200 in total. Just in case if regular 256 events is not enough for you. Warning Read this if have used SuperMap patch, any version. SuperMap patch already lets you to use every single byte in SRAM. So, there are no free space to use litterally and extra event array will use some space of item bit array. Actually, there will be a common space used by both arrays at $7E:D840. But this also has a cool side effect. About sharing effect Read this if have used SuperMap patch, any version. Let me explain how this works. Collect item with index 012 (for example) and extra event 12 will be set and vice versa: set extra event 12 and item with index 012 will disappear without actually collecting it. And even more. Grey door with High Byte 38..3F and Low Byte 12 will start flashing after extra event 12 will be set or item with index 012 will be collected. To avoid this sharing effect, simply don't set indexes of the items that are matching extra events. For example, if you want to use $20 extra events (from $00 to $1F), don't use indexes for the items from $000 to $01F and use indexes from $020 to $7FF. In general, using X extra events doesn't allow you to use first X indexes from item bit array unless you want to use extra events as item events. ---------- SuperMap v1.1 This patch lets you to use every map sector of every area, including Debug. Code is based on Scyzer's Save/Load patch, so credits goes to her. Besides of that, collected item bit and open door bit arrays are expanded in 4 times allowing to have 2048 items in your hack and 2048 doors. The rest of SRAM was compressed, so now every single byte of SRAM is finally used. Changes since v1.0 1. Code in bank 81 is compressed a bit to place load map subroutine to where is supposed to be. No longer need to patch Quickmet.bin file. 2. All renewed item PLM text files are added. 3. Screenshot of $500 groups error is added. This version doesn't using free space at all, because new save map and load map subroutines are placed where they are by default, including load map subroutine to avoid Quickmet.bin patching. SuperMap also have priority over KejMap, so it's OK to use it on hack patched with KejMap. Warning If you're planning to add Ceres and Debug areas, apply Ceres & Debug usage patch v1.1. Without it you will be able to edit and save these maps, but can't use them in game normally and see maps of areas 06 and 07. Warning After expanding map of every area you may see message about exceeding $500 groops. See screenshot $500.gif. SMILE version 2.0 or above will refuse to save map data if this limit was exceeded to avoid RAM and SRAM corruption. This patch prevents corruption but SMILE 2.0 still will not allow to save giant maps. So, use SMILE version 1.0 but only to make maps. It's hard to find now, so I placed it on my site. http://japanimaniac.hotbox.ru/sm/smile10.zipp Save as *.zip archive. How you can freely use every sector of every map. Known bugs Crateria map after reloading will not be centered because of showing first 15 map sectors like they were explored anyway. ---------- Ceres & Debug usage v1.1 A patch that allowing to fully use Ceres and Debug areas, also know as Areas 06 and 07. When I say fully, I mean saving and loading, have a text icons of these 2 areas, pressing start and viewing the map instead of crashing and so on. Except for the world hexagonal map, of course. No one knows how to edit it yet. Debug map can be freely edited with SMILE after applying the patch. This patch also prevents CRE removing in all rooms of Ceres area to make ability to use items, doors, BTS and all stuff you can't use in Space Colony normally. Rooms in Ceres tileset will look ugly, but I made CRE removing interval patch if you need to remove CRE not in all rooms of Area 06. Start button is active now in Area 06. Change it back in SMILE if you don't want to. Pointer in text icons array for Ceres and Debug are points to terminator (FFFF) at 147C9. Change the values at 17EFC (Ceres) and 17EFE (Debug) to have text icons in these areas. Pointers for map station in areas 06 and 07 are null. Create your own pointer and write X position (2 bytes), Y position (Y bytes) and terminator (FFFF word) at pointer address. This version have 2 IPS files. Ceres&DebugV1.0fix.IPS is just a changes since version 1.0 and Ceres&DebugV1.1.IPS is a full patch that can be applied to the ROM unpatched by Ceres&Debug v1.0 earlier. In other words, v1.0 + v1.0 fix = v1.1. Changes since v1.0 1. Added text icons explaination. 2. Save point using data updated. 3. Visibility array bug is fixed. I understood recently that SMILE ignoring ROM's visibility array poiters and use internal ones instead. Because if that, code at 11E27 will be overwrited by Debug's visibility array after editing and saving Debug map. This version fixes that. I've relocated a code to 17F00 and place visibility array to where SMILE writes it actually. Warning If you have used version 1.0 of this patch, re-save map of Debug area. The map will there but map sectors visibility data will be lost after reistalling the patch. Warning If you want to save progress of explored maps of Debug area or you just recieved message about exceeding $500 groops in SMILE, apply SuperMap patch v1.1. Warning To make rooms in Ceres with CRE you'll need to place them in another region while editing them. To do so, go to Edit > Room Properties in SMILE and set any area except Ceres. When done, just change area back to Ceres. Layout of the map will looks like it's screwed up, but it's OK. It's just because SMILE is visually removing CRE in any room in Ceres but not psysically. ---------- Map data cleaner A patch that will clean map data saved by SMILE at $F800. It can save up to 1285 bytes of patch size of your hack. Use it only if you have applied Save/Load patch by Scyzer or my SuperMap patch. SMILE is saving explorable map data at $F800 anyway. Even if you have applied Save/Load or SuperMap patches or NOT applied KejMap patch (in case if you're working on vanilla hack), but there is no need to do so. It's better to apply this patch right before releasing the hack because saving the map in your hack will write data to $F800 again. This patch was written in hex editor entierly. ---------- Boulder enemy guide Compilation of modifying rolling boulder enemies guide by Cardweawer in text file, to see and read it in SMILE. Simply go to "files\enemies" folder inside your SMILE folder and replace DFBF.txt file with this one. You'll see details in SMILE when selecting enemy DFBF. ---------- Timer change v2 This patch changes time display in MM:SS format instead of HH:MM at game select screen and when completing the game. Both PAL and NTSC ROMs can be used to apply the patch. This patch is also written in virtual format. It means that timer changes can be activated and deactivated using cheat codes from provided cheat file. Could be useful when watching or recording speedruns to track time. Changes since v1 1. Added timer changes for PAL ROM support. 2. Added cheat codes for virtual patching. 3. Time display at game select screen is changed from HH:MM to MM:SS format. ---------- Ending time alteration v2 A patch that will change times that required to get different endings. Now you can set certain amounts of hours, minutes and seconds (or minutes, seconds and frames) to check for different endings. This patch exists in 2 versions. EndingTimeAlteration2HHMM.asm allows you to set certain amounts of hours, minutes and seconds. EndingTimeAlteration2MMSS.asm allows you to set minutes, seconds and frames, which can be useful for mini hacks. Changes since v1 1. Extra code was written allowing to using more than just integer values. 2. Single patch was splitted to 2 versions: one that makes check for HH:MM and one that makes check for MM:SS. ---------- 99 minutes of timer This patch allows to use up to 99 minutes of game timer, stop timer after that and don't count hours at all. Useful for mini-hacks and for setting correct ending time in them. Reverse patch is also made if you change your mind. ---------- Ninja Pirates shot reflection A patch that extends Ninja Pirates code a bit to make all Ninja Pirates reflect shot the same way as enemy F593 do. This patch exists in 2 versions. NinjaPiratesShotReflect.ips makes every Ninja Pirate reflect your shots while NinjaPiratesShotReflect-F613.ips makes an exception to enemy F613 that is used during escape sequence. Warning If you wrote custom code in the end of bank $B2 at 197EAA, then this patch will overwrite your data. Use it wisely. I recommend to look to this space in hex editor. If there are FF's, it OK to use it. ---------- Messenger v1.1 This PLM can display any message you want when you touch it. This PLM is made from Ice Beam PLM. 2 instructions were removed and another one -- shortened. I've also changed time how long messanges starting from ID 1D will be displayed to 30 frames (0.5 seconds in NTSC version or 0.6 seconds in PAL version). To change this value, open your ROM in hex and go to 2FFF9. 001E (30) is default, 003C (60) = 1 second in NTSC version, 000C (12) = 0.2 seconds in NTSC version. If you've already expanded message array to use messages for new items, then you may want to change message number of ID, starting from which display time will be changed. To do so, open your patched ROM in hex, goto 2FFF1 and change this byte (single byte only!). Place this PLM only to empty 16*16 tile of Layer 1, or this PLM will overwrite graphic under tile it used to empty air block. Changes since v1.0 1. Readme file is restructured. 2. Messenger no longer need to have $100 bytes of free space at 49600. 3. Data at 27290..27297 became unused. ---------- Message box v4 A patch allowing to add new messages to the game. Recoded for easy usage. Changes since v3.1 1. Numbers are added to constants. 2. More message constants are added. 3. Extra code was written to use any button (not only used by Shot and Dash) in big message boxes and also create empty big message box without need of placing button offscreen. 4. Fix1C1F subroutine was relocated to use currently unused space, previously used by default button array. ---------- Scroll repoint v1.11 A patch allowing to repoint all Scrolls from Bank $8F to another bank to free space in Bank $8F. Bank $C0 or above is working too. For a hacks with a lot of big rooms with custom scrolling. The only minus is no SMILE support. You'll have to edit scrolling in hex editor. This patch is compatible with Yellow Scrolls patch. Changes since v1.1 •Right byte in the description is set. •Description is updated to add info about usign this patch with SMILE JX. Changes since v1.0 •Code is relocated to the right place and the patch is finally working. •KejMap, Save / Load or SuperMap patches are no longer required to use this patch. Warning To make edit scrolls in SMILE you must use SMILE JX version 2.82 or above. Space affected 12001..12008 1687B..1687D 16B2B..16B2D ---------- Long Beam v1.01 This patch contains code to make all beams disappear when they fly a bit until Long Beam item is collected as it was done in Metroid 1. Not exactly, but very very close to it. Flying distance is measured as an offset from Samus, so shots will keep alive more time if fire in direction you're moving and less time of shot in opposite direction. Missiles are not affected. Charged beams fly a little bit longer. Also, the longer beam is, the longer it can travel. Spazer is longer than Power / Ice / Wave and Plasma is longer than Spazer. Warning If you wrote custom PLM at $273B0 or have a custom code at $17B00 then this patch will overwrite your data. Use it wisely. I recommend to look to this space in hex editor. If there are FF's, it ok to use it. Warning If you have used next $100 bytes at $49700 for an item graphics or for palette blend, then you'll have to tweak the patch to move the graphics to another location. Warning If you have used next $5F bytes at $87A00 for ASM code, you'll have to tweak the patch to move the code to another location. Banks used 82, 84, 85, 89, 90 and B6. Change since v1.00 SetLongBeamMessage.asm file is included. Changes since v0.99 [aka RC version]: 1. Readme file is written. 2. Item code is splitted into 3 different patches. Each form is having own patch. 3. Travelling distances are tweaked a bit to make shots fly the same distance in all directions. 4. 2 tweak files for a Long Beam are added. ASM file is needed to modify LongBeam.IPS before applying and text file is needed to tweak item code after applying. 5. Code of New items percentage fix patch is added to LongBeam.IPS patch to make game count collected Long Beam as well as any other new items. 6. Item description for SuperMap patch is added. 7. Small bug with Plasma Beam selection is fixed. 8. Patch size is reduced to 662 bytes =) Free space usage 17B00..17B38 273B3..273FF 49700..497FF [moveable] 87A00..87A5E [moveable] Space affected Few words (2 bytes in bank $82) 5E65C 5E66D 5E673 5E721...5E730 82F33 83124 1B6B86..1B6B93 1B6BC6..1B6BD3 ---------- Long Beam v1.02 Fully working version now. Missing files included. Reported string in ASM file is commented. ---------- Reserve Energy Safety Fuse v2 A small patch that prevents player to lose remaining reserve energy when fully restoring energy with reserve tanks. No matter, in menu or when losing all energy in game in auto-restoring mode. Strange... There is a safety fuse preventing Samus from burn itself up when performing a super jump, but no safety fuse in original game when restoring regular energy with reserve tanks. It's completly harmless for most (or even all existing) hacks, because no free space is used. Change since v1.1: Double hit bug is fixed. It happens when you taking fatal damage with reserve energy in auto-refilling mode. You're taking damage, energy is starting refilling. When it's over you're taking damage again. You also can't make backflip because of this bug. Now you'll take damage only once and be invincible some time after refilling ends and even make a backflip if you're lucky. Compatibility It's completly harmless for most (or even all existing) hacks, because no free space is used. Space usage 12F84..12F93 12FA3 15C4C..15C5A ---------- Ceres & Debug usage v1.2 A patch that allowing to fully use Ceres and Debug areas, also know as Areas 06 and 07. When I say fully, I mean saving and loading, have a text icons of these 2 areas, pressing start and viewing the map instead of crashing and so on. Except for the world hexagonal map, of course. No one knows how to edit it yet. Debug map can be freely edited with SMILE JX after applying the patch. This patch also prevents CRE removing in all rooms of Ceres area to make ability to use items, doors, BTS and all stuff you can't use in Space Colony normally. Rooms in Ceres tileset will look ugly, but I made CRE removing interval patch if you need to remove CRE not in all rooms of Area 06. Start button is active now in Area 06. Change it back in SMILE if you don't want to. Pointer in text icons array for Ceres and Debug are points to terminator (FFFF) at 147C9. Change the values at 17EFC (Ceres) and 17EFE (Debug) to have text icons in these areas. Pointers for map station in areas 06 and 07 are null. Create your own pointer and write X position (2 bytes), Y position (Y bytes) and terminator (FFFF word) at pointer address. This version have 2 IPS files. Ceres&DebugV1.1fix.IPS is just a changes since version 1.0 and Ceres&DebugV1.2.IPS is a full patch that can be applied to the ROM unpatched by Ceres&Debug v1.1 earlier. In other words, v1.1 + v1.1 fix = v1.2. This patch is works only with SMILE JX, any version. Don't use with regular SMILE, or you'll overwrite code at 11E27 when saving Debug Map. Warning If you have used version 1.1 of this patch, re-save map of Debug area. The map will be there but map sectors visibility data will be lost after reinstalling the patch. Warning If you want to save progress of explored maps of Debug area or you just recieved message about exceeding $500 groops in SMILE, apply SuperMap patch v1.1. Changes since v1.1 1. Visibility array is relocated back to 11E27. It's at same place than in version 1.0. 2. SetDebugName.ASM file is removed because Debug area name can be edited in SMILE JX. 3. CRE was removed differently than in version 1.1 to have ability to select area in which CRE will be removed in SMILE JX. Changes since v1.0 1. Added text icons explaination. 2. Save point using data updated. 3. Visibility array bug is fixed. I understood recently that SMILE ignoring ROM's visibility array poiters and use internal ones instead. Because if that, code at 11E27 will be overwrited by Debug's visibility array after editing and saving Debug map. This version fixes that. I've relocated a code to 17F00 and place visibility array to where SMILE writes it actually. Warning If you have used version 1.0 of this patch, re-save map of Debug area. The map will there but map sectors visibility data will be lost after reistalling the patch. Warning If you want to save progress of explored maps of Debug area or you just recieved message about exceeding $500 groops in SMILE, apply SuperMap patch v1.1. Warning To make rooms in Ceres with CRE you'll need to place them in another region while editing them. To do so, go to Edit > Room Properties in SMILE and set any area except Ceres. When done, just change area back to Ceres. Layout of the map will looks like it's screwed up, but it's OK. It's just because SMILE is visually removing CRE in any room in Ceres but not psysically. Free space usage 17E14..17FFF ---------- Vertical Doors fix v2 After going up through elevator, pink and green vertical doors are looking like blue ones. This patch sets correct colors for them without using any of free space. Warning Regular SMILE can't recognize "Hits to Open" property of modified doors. If you see B4 in that field, then don't touch it. Use SMILE JX to edit "Hits to Open" property. Warning If you have changed "Hits to Open" property before applying the patch you'll need to that again after applying because patch format doesn't allow to shift the data by X bytes ahead and behind. So I had to write default property for each door. Compatibility It's completly harmless for most (or even all existing) hacks, because no free space is used. Change since v1 Code for green and pink doors was compressed and now it fits default location. No free space is used. Warning To edit "Hits to Open" property of green and pink vertical doors after applying patch you'll need SMILE JX version 2.79 or above. If you try to do that in regular SMILE you'll see B4 in that field. If you change it in regular SMILE, you'll crash the door code. Space affected 241DE..24265 2429C..2429C 2435D..243E7 24421..24488 2487A..24888 24892..248A0 Technical notes Fix for green and pink vertical doors uses 4 extra bytes of code, so in version 1 I had to move code of vertical doors facing up to free space. Later I've found a way to compress code of every door by 2 bytes, using redirecting instruction with pointer to grey door code instead of using terminating code for each door. So, each vertical green and pink doors are using 2 extra bytes than regular door and horizontal green and pink doors are using less 2 bytes than regular door. All the door code is shifted but now it's fitting default location and no free space is used. If you have used version of this patch earlier, now you can reapply the patch and clean the data at $272E0..273A8 ---------- Bugfix compilation v1.00 This is a compilation of all existing bugfixes into single patch. Note Vanilla map fix is not included because in over 90% of current hacks the game map is changed. List of patches 0. Samus elbow fix 1. Aim everything 2. Reflec bomb fix 3. Super Missile fix v1.2 4. Level Entries fix v1.1 5. Morphing Ball value fix 6. Vertical door fix v2 7. Yellow Gate fix 8. Upside down gate fix 9. Boss music fix A. Golden Torizo freezing code fix B. Map tiles fix C. Reserve energy safety fuse v2 D. Space/Time Beam fix E. Blue echoes fix F. Fix Samus body leap Warning ======= Regular SMILE can't recognize "Hits to Open" property of modified doors. If you see B4 in that field, then don't touch it. Use SMILE JX to edit "Hits to Open" property. Warning If you have changed "Hits to Open" property before applying the patch you'll need to that again after applying because patch format doesn't allow to shift the data by X bytes ahead and behind. So I had to write default property for each door. Warning If you've already edited map tiles, this patch can overwrite a few of them because of patch B. Compatibility About 90% of hacks, because most of compilated patches are not using the free space. How to use it ============= 0. Read description. 1. Check for a free space in your hack. If the are FF's from 12F95A to 12F965 and from 1577D3 to 157809, it's OK to use. 2. Unpack the patch. 3. Apply patch to the unheadered ROM. 4. Edit "Hits to Open" property in SMILE JX. [Optional] 5. Redraw modified map tiles [Optional] 6. If you're using regular SMILE, version up to 2.5 then find level_entries.txt file. It should be inside files folder of your SMILE folder. 7. Make a copy of it. 8. Unpack the level_entries.txt file from this archive and replace old file in "smile/files/" folder. Warning To edit "Hits to Open" property of green and pink vertical doors after applying patch you'll need SMILE JX version 2.79 or above. If you try to do that in regular SMILE you'll see B4 in that field. If you change it in regular SMILE, you'll crash the door code. Warning Keep in mind that if you have added to the level_entries after expanding rooms, you'll need to copy them over to the new level_entries.txt. If you feel this patch useful, please give credits to: •Kejardon for patches 0-3 and for fixing patch 3. •Crashtour99 for finding a bug in the patch 3. •Scyzer aka Sadiztyk for patch 4. •BigDomino for finding a bug in patch 4. •JAM for making fixed version of patch 3, for extending patch 4, for making patches 5-E and for complitating all these patches in one. •A_red_monk_called_Key for patch F. ---------- Scrolling Sky Fix v2 For these who didn't know, fix the scrolling sky error which happens when linking different rooms to room with scrolling sky in it. Used P.J.Boy's patch and optimzed it. Bank: $82. Patch size: 1.573 times increased. Free space used: $FFED bytes. What does this mean? My patch will not use the free space. It will works as it should but gives you $13 bytes of free space instead. I just overwrote one copy of the subroutine that occurs twice in bank $82 to have space for this patch.