====== Super Metroid (SNES) ====== {{super:smtitlescreen.png | Super Metroid title screen}} Super Metroid is the third game in the Metroid series, released for the SNES in 1994. Currently, it is the most widely-hacked Metroid game, and has the most resources available to help hackers. All information here relates to the unheadered NTSC ROM: “Super Metroid (JU) [!].smc”, which should be 3,145,728 bytes in size and have CRC ''D63ED5F8'', SHA1 ''DA957F0D63D14CB441D215462904C4FA8519C613'', and MD5 ''21f3e98df4780ee1c667b84e57d88675''; if your rom has a different checksum, then it is not a clean unheadered vanilla ROM, and you should try to acquire a new one. If you do not know how to verify your ROM's checksum, try opening the ROM in snes9x or use something like [[http://quickhash-gui.org/|QuickHash]] or [[https://www.microsoft.com/en-us/download/details.aspx?id=11533|Microsoft's Checksum Tool]]. For information related to patching this ROM please check [[general:starter_guides:patching_a_rom|Patching a ROM]]FIXME or the [[http://metroidconstruction.com/howto.php|HOWTO]] on the main site. For editing Super Metroid, the de facto standard level editor is **SMART**, offering automatic repointing and data management in addition to level editing. Previous notable SMILE branches include SMILE RF, SMILE JX, SMILE 3 (Parlor, WINE compatible), and SMILE 2.5. ===== Editors and Utilities ===== * [[http://forum.metroidconstruction.com/index.php/topic=3575 | SMILE RF]] by Scyzer * [[http://metroidconstruction.com/resource.php?id=63 | SMILE 2.5]] by Jathys * [[http://forum.metroidconstruction.com/index.php/topic=1779 | SMILE Parlor]] by Jathys * [[http://forum.metroidconstruction.com/index.php/topic=2160 | SMILE JX]] by JAM (forked from Parlor) * [[http://forum.metroidconstruction.com/index.php/topic=3895 | SMART]] by amoeba and TestRunner * [[http://forum.metroidconstruction.com/index.php/topic=1137 | Projectiler]] by Black Falcon * [[http://metroidconstruction.com/resource.php?id=9 | DopeTool]] by thedopefish ===== Guides ===== A list of guides created by the community, from manuals on the tools themselves to advanced guides relating to ASM, its all here. ==== Editor and Utility Guides ==== Manuals of the workings of all the editors and utilities available to you, detailing all their functions. * [[http://metroidconstruction.com/SMMM/ | Super Metroid Mod Manual]] - Comprehensive guide to editing with SMILE RF, written by begrimed * [[super:editor_utility_guides:smile2.5 | SMILE 2.5]] - The primary editor to Super Metroid, read all about its functions here * [[super:editor_utility_guides:smart | SMART]] - The new fangled automatic data managing editor, guide written by co-author amoeba ==== Basic Guides ==== These guides cover all the basic things around editing Metroid, as well as serving as a good starting point for learning how to get into Metroid hacking! * [[super:basic_guides:faq | FAQ]] - Frequently answered questions here, if you got a problem, this might have the answer! ==== Intermediate Guides==== These guides assume you have a good basic knowledge about editing Super Metroid already, you should probably be comfortable with using SMILE by now and be moving onto using tools like a hex editor. * [[super:intermediate_guides:cloning_new_enemies | Cloning New Enemies]] - A guide to cloning enemies to create your own enemies without overwriting any of the old ones. * [[super:intermediate_guides:cloning_new_rooms | Cloning New Rooms]] - A guide to cloning rooms in order to expand your hack. * [[super:intermediate_guides:message_boxes|Message Boxes]] - Editing message boxes, item names, etc. * [[super:intermediate_guides:credits | Credits Editor]] - SMILE RF's Credits Editor: the basics, and what NOT to do! * [[super:intermediate_guides:potentially_useful_bts_blocks|List of Potentially Useful BTS Blocks for Hacks]] - Curious about some of the lesser known block types that Super Metroid hides? Look no further! ==== Expert Guides ==== These guides could be pretty complex, you should probably be comfortable with assembly by now. * [[super:asm_lessons | Learning ASM]] - Read this guide as your first step towards learning ASM * [[super:expert_guides:asm_stylesheet | ASM stylesheet]] - Some tips to organize your ASM code and optimize your workflow when disassembling routines in SM. * [[super:expert_guides:beam_editing_guide | Beam Editing Guide]] - How to find and edit various aspects of beams. ===== Wiki Based Hacking Resources And Information===== This segment is reserved for technical information on Super Metroid, to be used as reference material for hackers, or for the curious wanting to know what makes Samus tick, or possibly you are interested in making a fan game and want to know how Super Metroid does things! ==== Data Maps ==== * [[super:data_maps:aram_map|ARAM Map]] - A map of Audio RAM. * [[super:data_maps:rom_map|ROM Map]] - ROM map of Super Metroid, needs double checking however. Not to be confused with a disassembly. * [[super:data_maps:ram_map|RAM Map]] - RAM map of Super Metroid, incomplete. ==== Locations of Data ==== * [[super:data_locations:palette_locations|List of all palette locations in Super Metroid]] * [[super:data_locations:sound_locations|List of all sound locations in Super Metroid]] * [[super:hex_tweaks|List of all known hex tweaks in Super Metroid]] * [[super:data_locations:sprite_obj_locations|List of all documented Sprite Objects in Super Metroid]] ==== Technical Information ==== * [[super:enemy:list_of_enemies| List of Enemies in Super Metroid]] - A list of all known Super Metroid enemies within the ROM. * [[super:technical_information:list_of_enemies | Technical Information on Enemies in Super Metroid]] - A technical list of all known Super Metroid enemies within the ROM. * [[super:technical_information:tileset_list | List of Tilesets]] - A list detailing the default contents and area of tilesets within the game. * [[super:technical_information:music_list | List of Music]] - Another list that shows usable music collection and play combinations which can be used to set the music in a room. * [[super:technical_information:room_header_format | Room Associated Data and It's Format]] - All the data dealing with room headers/IDs broken down for your understanding. * [[super:technical_information:asm_mnemonics | Assembly Mnemonics]] - A list of what the assembler operations like TRB mean * [[super:technical_information:asm_opcodes | Assembly Opcodes]] - Opcodes and their corresponding mnemonics/byte usage * [[super:technical_information:data_structures | Data Structures]] ===== Disassembly Library ===== * [[super:disasm | Library Index]] An overview of disassembled code by various dedicated hackers.