User Tools

Site Tools


zero_mission:basic_guides:mage

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
zero_mission:basic_guides:mage [2023/11/03 16:29] felixwrightzero_mission:basic_guides:mage [2024/03/23 17:14] (current) felixwright
Line 4: Line 4:
 FIXME (INCOMPLETE)\\  FIXME (INCOMPLETE)\\ 
  
 +<color orange>This wiki has some limitations. Refresh the page if images stop loading.</color>
  
-Note: This guide was made in reference to [[http://labk.org/mage/doc.html | MAGE 1.4.0 Documentation]] **<color #fff200>and is HEAVILY based on the</color>** [[https://www.metroidconstruction.com/SMMM/ | Super Metroid Mod Manual (SMMM)]] by [[https://begrimed.com/sm/ | begrimed]]. +Note: This guide was made in reference to [[http://labk.org/mage/doc.html | MAGE 1.4.0 Documentation]] **<color orange>and is HEAVILY based on the</color>** [[https://www.metroidconstruction.com/SMMM/ | Super Metroid Mod Manual (SMMM)]] by [[https://begrimed.com/sm/ | begrimed]]. 
  
 Quick Links: Quick Links:
Line 15: Line 16:
  
 <WRAP centeralign> <WRAP centeralign>
- ====== GETTING READY TO ROM HACK ======    +====== GETTING READY TO ROM HACK ======    
 </WRAP> </WRAP>
 \\  \\ 
Line 21: Line 22:
 ---- ----
  
-  ===== Guide Expectations =====+===== Guide Expectations =====
  This guide expects the reader to be using Microsoft Windows operating system to hack.  This guide expects the reader to be using Microsoft Windows operating system to hack.
  If you are using Mac or a Linux distro, congrats! It is doable now! Though you may need to perform some workarounds.  If you are using Mac or a Linux distro, congrats! It is doable now! Though you may need to perform some workarounds.
Line 30: Line 31:
 ---- ----
  
-  ===== Create a ROM Hacking Folder =====+===== Create a ROM Hacking Folder =====
  Create a rom hacking folder of some kind. The name and the way it gets organized doesn't matter much.  Create a rom hacking folder of some kind. The name and the way it gets organized doesn't matter much.
    
Line 38: Line 39:
 ---- ----
  
-  ===== Obtain a USA Metroid Zero Mission ROM =====+===== Obtain a USA Metroid Zero Mission ROM =====
  You must either dump your ROM or search online. Check the first footnote to see how to dump your ROMs. **((https://dumping.guide/carts/nintendo/gba#methods \\ https://wiki.no-intro.org/index.php?title=Game_Boy_Advance_Dumping_Guide \\ Note: The download link for GBA Backup Tool is down. Use the following links instead: \\ https://www.gamebrew.org/wiki/GBA_Backup_Tool \\ https://kotei.blog.ss-blog.jp/2008-10-26))**  You must either dump your ROM or search online. Check the first footnote to see how to dump your ROMs. **((https://dumping.guide/carts/nintendo/gba#methods \\ https://wiki.no-intro.org/index.php?title=Game_Boy_Advance_Dumping_Guide \\ Note: The download link for GBA Backup Tool is down. Use the following links instead: \\ https://www.gamebrew.org/wiki/GBA_Backup_Tool \\ https://kotei.blog.ss-blog.jp/2008-10-26))**
  
Line 53: Line 54:
 ---- ----
  
-  ===== Download a Game Boy Advance (GBA) emulator =====+===== Download a Game Boy Advance (GBA) emulator =====
  Download [[https://mgba.io/downloads.html | mGBA]]. It loads fast, is cross-platform, and accurate enough. For the easiest experience, download and run the installer.  Download [[https://mgba.io/downloads.html | mGBA]]. It loads fast, is cross-platform, and accurate enough. For the easiest experience, download and run the installer.
  
Line 68: Line 69:
 ---- ----
  
-  ===== Download MAGE and make sure it works =====+===== Download MAGE and make sure it works =====
  [[https://metroidconstruction.com/resource.php?id=90 | MAGE can be downloaded here]].   [[https://metroidconstruction.com/resource.php?id=90 | MAGE can be downloaded here]]. 
  
Line 77: Line 78:
 ---- ----
  
-  ===== MAGE's files =====+===== MAGE's files =====
 ^               Name                                            ^                  Description                                                                   ^ ^               Name                                            ^                  Description                                                                   ^
 | mage.exe                                                      | Metroid Advance Game Editor                                                                    | | mage.exe                                                      | Metroid Advance Game Editor                                                                    |
Line 116: Line 117:
 ---- ----
  
-  ===== THE INSANELY ABSOLUTE IMPORTANCE OF MAKING REGULAR ROM BACK-UPS =====+===== THE INSANELY ABSOLUTE IMPORTANCE OF MAKING REGULAR ROM BACK-UPS =====
 All you have to do is click ''File -> Create Backup''. The filename of the backup is a timestamp, in the format ''YYYY-MM-DD_HH-MM-SS.gba''\\ All you have to do is click ''File -> Create Backup''. The filename of the backup is a timestamp, in the format ''YYYY-MM-DD_HH-MM-SS.gba''\\
 Alternatively, you can right-click your ROM and select 'copy'. After that, right-click a second time and select 'paste'. The filename of the backup is in the format ''filename (copy #).gba''\\ Alternatively, you can right-click your ROM and select 'copy'. After that, right-click a second time and select 'paste'. The filename of the backup is in the format ''filename (copy #).gba''\\
Line 129: Line 130:
 ---- ----
  
-  ===== Constant Experimentation, Trial and Error, Broken ROMs and Strange Crashes are Normal. =====+===== Constant Experimentation, Trial and Error, Broken ROMs and Strange Crashes are Normal. =====
  Stay calm and don't let it get you down! It is pretty much impossible to avoid experiencing all of these things and more as you journey through creating your own Metroid Zero Mission hack. Constant experimentation especially - you will need to test everything constantly as you're working on it, or you might waste huge amounts of time stepping backwards through your edits to figure out the problem. TEST EVERYTHING, ALWAYS.  Stay calm and don't let it get you down! It is pretty much impossible to avoid experiencing all of these things and more as you journey through creating your own Metroid Zero Mission hack. Constant experimentation especially - you will need to test everything constantly as you're working on it, or you might waste huge amounts of time stepping backwards through your edits to figure out the problem. TEST EVERYTHING, ALWAYS.
  
Line 137: Line 138:
 ---- ----
  
-  ===== Please report any MAGE bugs that you discover! =====+===== Please report any MAGE bugs that you discover! =====
  
 If you discover a crash or some kind of bug with MAGE itself, click "Help -> About Mage -> https://forum.metroidconstruction.com/index.php/topic,3969.0.html" and write out a clear description of the error that you experienced. Can the bug be done consistently, or did it only happen once? Is it possible to take a screenshot of the error? If you discover a crash or some kind of bug with MAGE itself, click "Help -> About Mage -> https://forum.metroidconstruction.com/index.php/topic,3969.0.html" and write out a clear description of the error that you experienced. Can the bug be done consistently, or did it only happen once? Is it possible to take a screenshot of the error?
Line 145: Line 146:
 ---- ----
  
-  ====== PART 1: MAGE'S EDITORS & OPTIONS    ======    +====== PART 1: MAGE'S EDITORS & OPTIONS    ======     
 +<color orange>REMINDER: This wiki has some limitations. Refresh the page if images stop loading.</color> 
 {{zero_mission:basic_guides:mage_tut_diagram.png}} {{zero_mission:basic_guides:mage_tut_diagram.png}}
 </WRAP> </WRAP>
Line 152: Line 155:
 ---- ----
  
-  ===== Main Window =====+ ===== Main Window =====
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Menu Bar ====+ ==== Menu Bar ====
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 1. File Menu ===+ === 1. File Menu ===
 ^        Name        ^                  Description                                                                                        ^ ^        Name        ^                  Description                                                                                        ^
 | Open ROM...        | USA Zero Mission / USA Fusion ROMs Only (At the time of writing)                                                    | | Open ROM...        | USA Zero Mission / USA Fusion ROMs Only (At the time of writing)                                                    |
Line 175: Line 178:
 ---- ----
  
-    === 2. Edit Menu === + === 2. Edit Menu === 
-^        Name              ^                  Description                                                                                        +^        Name              ^                  Description                                                                                                                      
-| BG Editing Mode          | Used to edit blocks on background layers and their collision properties (clipdata).                                 +| BG Editing Mode          | Used to edit blocks on background layers and their collision properties (clipdata).                                                               
-| Object Editing Mode      | Used to edit objects like enemies, doors, and camera scrolls.                                                       +| Object Editing Mode      | Used to edit objects like enemies, doors, and camera scrolls.                                                                                     
-| Use Selected Clipdata    | When selected, blocks placed (or pasted) will use the clipdata value from the drop-down list above the tileset.     +| Use Selected Clipdata    | When selected, blocks placed (or pasted) will use the clipdata value from the drop-down list above the tileset.                                   
-| Undo                     | Steps back edits one at a time. MAGE can remember up to 100 edits.                                                  +| Undo                     | Steps back edits one at a time. MAGE can remember up to 100 edits.                                                                                
-| Redo                     | Steps forward edits one at a time. MAGE can remember up to 100 edits.                                               +| Redo                     | Steps forward edits one at a time. MAGE can remember up to 100 edits.                                                                             
-| BG 0                     | Place blocks on Background layer 0. BG0 is a very special layer, but most of the time it's on top.                  +| BG 0                     | Place blocks on Background layer 0. BG0 is a very special layer, but most of the time it's on top.                                                
-| BG 1                     | Place blocks on Background layer 1. BG1 is where all the blocks samus and enemies collide with should be.           +| BG 1                     | Place blocks on Background layer 1. BG1 is where all the blocks samus and enemies collide with should be.                                         
-| BG 2                     | Place blocks on Background layer 2. BG2 is for blocks behind samus and enemies, like plants or rocks for scenery.   +| BG 2                     | Place blocks on Background layer 2. BG2 is for blocks behind samus and enemies, like plants or rocks for scenery.                                 
-Clipdata                 List of recently opened ROMsCan be used to reload ROM if undesirable changes are made                           |+Clip                     "Clip Data." Set the type of block used at that X/Y position in the roomClip can be edited with one layer simultaneously(ex: Edit BG1 & Clip) |
 Note: You cannot use both BG editing mode and Object editing mode at the same time. You pick one or the other Note: You cannot use both BG editing mode and Object editing mode at the same time. You pick one or the other
 \\  \\ 
Line 191: Line 194:
 ---- ----
  
-    === 3. View Menu === + === 3. View Menu === 
 ^        Name              ^                  Description                                                                                                                 ^ ^        Name              ^                  Description                                                                                                                 ^
 | BG 0                     | Toggle viewing Background layer 0. BG0 is a very special layer, but most of the time it's on top.                                            | | BG 0                     | Toggle viewing Background layer 0. BG0 is a very special layer, but most of the time it's on top.                                            |
Line 215: Line 218:
 ---- ----
  
-    === 4. Editors Menu === + === 4. Editors Menu === 
 ^        Name                        Description                                                                                                                    ^ ^        Name                        Description                                                                                                                    ^
 | Header Editor     | Specify a room's tileset, music, location on the map, transparency, room effect, what spriteset(s) it will use, and so on.                      | | Header Editor     | Specify a room's tileset, music, location on the map, transparency, room effect, what spriteset(s) it will use, and so on.                      |
Line 236: Line 239:
 ---- ----
  
-    === 5. Tools Menu === + === 5. Tools Menu === 
 ^        Name                                  ^ Description                                                                                                                                                        ^ ^        Name                                  ^ Description                                                                                                                                                        ^
 | Room Options...                              | Used to quickly erase BG 0, 1, 2, and Clipdata layers. Also lets you resize the current room.                                                                      | | Room Options...                              | Used to quickly erase BG 0, 1, 2, and Clipdata layers. Also lets you resize the current room.                                                                      |
Line 272: Line 275:
 ---- ----
  
-    === 6. Options Menu === + === 6. Options Menu === 
 ^       Name       ^ Description                                                                                                                                                         ^ ^       Name       ^ Description                                                                                                                                                         ^
 | Default View     | Set default view settings for MAGE. Only refreshes when you reload a room.                                                                                          | | Default View     | Set default view settings for MAGE. Only refreshes when you reload a room.                                                                                          |
Line 281: Line 284:
 ---- ----
  
-    === 7. Help Menu === + === 7. Help Menu === 
 ^       Name       ^ Description                                                                                                                                                         ^ ^       Name       ^ Description                                                                                                                                                         ^
 | View Help        | Opens the MAGE help file. (doc.html) It's nice to have handy.                                                                                                       | | View Help        | Opens the MAGE help file. (doc.html) It's nice to have handy.                                                                                                       |
Line 289: Line 292:
 ---- ----
  
-  ===== Tool Bar =====+ ==== Tool Bar ====
 Quick access to editors and frequently used actions with interactible icons.  Quick access to editors and frequently used actions with interactible icons. 
 \\  \\ 
Line 295: Line 298:
 ---- ----
  
-    === 8. Open / Save ROM === + === 8. Open / Save ROM === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 9. Undo / Redo === + === 9. Undo / Redo === 
  Note: Click the small arrow ▼ to undo/redo multiple steps at a time.  Note: Click the small arrow ▼ to undo/redo multiple steps at a time.
 \\  \\ 
Line 306: Line 309:
 ---- ----
  
-    === 10. BG / Object Editing Mode === + === 10. BG / Object Editing Mode === 
 Switch between editing blocks (speedbooster) or objects (morphball). <color Orange> You will be using this a LOT. </color> Switch between editing blocks (speedbooster) or objects (morphball). <color Orange> You will be using this a LOT. </color>
 \\  \\ 
Line 321: Line 324:
 ---- ----
  
-    === 11. View Sprites / Outlines / Doors / Scrolls ===+ === 11. View Sprites / Outlines / Doors / Scrolls === 
 +^       Icon       ^ Description                                                                                                                                                         ^ 
 +| Metroid     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 +| Green Box   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 +| Blue Box    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| Yellow Box  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |  
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 12. Header Editor === + === 12. Header Editor ===  
 +ADD IMAGE TODO 
 + 
 +BACKGROUND DATA 
 +^       Name       ^ Description                                                                                                                                                         ^ 
 +| Tileset     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 +| Transparency   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 +| BG3 Scroll    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| Effect  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| Effect Y Pos     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 + 
 +POINTER 
 +| BG0   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 +| BG1    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| BG2  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| BG3     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 +| CLIP   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 + 
 +PROP (BG PROPERTY) 
 +| BG0    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| BG1  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| BG2     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 +| BG3   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 + 
 +SPRITESET DATA 
 + 
 +POINTER 
 +| DEFAULT    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| FIRST  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| SECOND     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 + 
 +SET 
 +| DEFAULT   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 +| FIRST    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| SECOND  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 + 
 +EVENT 
 +| FIRST     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 +| SECOND   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 + 
 +MISCELLANEOUS 
 +| MAP X    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| MAP Y  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| MUSIC     | Show/Hide Sprites (enemies and objects with AI, e.g. morph ball item)                                                                               | 
 + 
 +^       Name       ^ Description                                                                                                                                                         ^ 
 +| AREA   | Show/Hide Sprite Outlines (actual position of the objects/enemies)                                                                                  |   
 +| ROOM    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| OFFSET  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |   
 +| APPLY    | Show/Hide Doors (objects used to link rooms)                                                                                                        | 
 +| CLOSE  | Show/Hide Scrolls (objects used to restrict the player camera)                                                                                      |  
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 13. Tileset Editor === + === 13. Tileset Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 14. Graphics Editor === + === 14. Graphics Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 15. Palette Editor === + === 15. Palette Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 16. Tile Table Editor === + === 16. Tile Table Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 17. Animation Editor === + === 17. Animation Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 18. Sprite Editor === + === 18. Sprite Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 19. Spriteset Editor === + === 19. Spriteset Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 20. Connection Editor === + === 20. Connection Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 21. Minimap Editor === + === 21. Minimap Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 22. Text Editor === + === 22. Text Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 23. Demo Editor === + === 23. Demo Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 24. Physics Editor === + === 24. Physics Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 25. Weapon Editor === + === 25. Weapon Editor === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 26. Room Options === + === 26. Room Options === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 27. Test Room === + === 27. Test Room === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 28. Minimap Tile Builder === + === 28. Minimap Tile Builder === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 29. Add === + === 29. Add === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-    === 30. Patches === + === 30. Patches === 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-  ===== Editor Windows ===== + ===== Room Editor =====  
 +{{zero_mission:basic_guides:mage_room_ed_diagram.png}}
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Room Editor ==== + === 1. Edit Layers === 
 \\  \\ 
 \\  \\ 
 ---- ----
-    === Part 1- BG Editing Mode ===+ 
 + === 2. View Layers ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 3. Location ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 4. Spriteset ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 5. Clipdata ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 6. Tile Select ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 7. Current Tile Information ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 8. Cursor ===  
 +\\  
 +\\  
 +---- 
 + 
 + === 9. Tooltip ===  
 +\\  
 +\\  
 +---- 
 + 
 +=== Part 1- BG Editing Mode ===
  
 The first step to editing rooms is selecting what layer you want to change. There are 3 layers of tiles that changes how the room looks and one layer that determines how the player will interact with those hitboxes. The first step to editing rooms is selecting what layer you want to change. There are 3 layers of tiles that changes how the room looks and one layer that determines how the player will interact with those hitboxes.
Line 457: Line 557:
 ---- ----
  
-    === 1A- Layers ===+=== 1A- Layers ===
  
 This section will explain how to edit how a layer “looks”, but not how it works (clipdata). Make sure that you have selected the correct layer to edit before you start editing the room you have chosen. Also, make sure to choose the correct layer that corresponds with the type of block you want to work with. This section will explain how to edit how a layer “looks”, but not how it works (clipdata). Make sure that you have selected the correct layer to edit before you start editing the room you have chosen. Also, make sure to choose the correct layer that corresponds with the type of block you want to work with.
Line 476: Line 576:
 ---- ----
  
-    === 1B- Clipdata ===+=== 1B- Clipdata ===
  
 In bland terms, Clipdata is how each block works. Each tile location in a room has a certain clipdata value assigned, be it 0 for air or 10 or solid. There are FF (255) slots available for different types of clipdata, however many are unused. Be very careful when editing clipdata in a room, because clipdata will work how it wants whether or not you have a block placed in a slot (for example, you can have an invisible slope in the air due to clipdata that has been assigned to empty squares). This means that any block that you do not want to be special will be assigned clipdata value 0, which indicates "air". In bland terms, Clipdata is how each block works. Each tile location in a room has a certain clipdata value assigned, be it 0 for air or 10 or solid. There are FF (255) slots available for different types of clipdata, however many are unused. Be very careful when editing clipdata in a room, because clipdata will work how it wants whether or not you have a block placed in a slot (for example, you can have an invisible slope in the air due to clipdata that has been assigned to empty squares). This means that any block that you do not want to be special will be assigned clipdata value 0, which indicates "air".
Line 490: Line 590:
 ---- ----
  
-    === a. Basic Blocks ===+=== a. Basic Blocks ===
  
 The most common types of blocks you will use are ground blocks. Clip0 and Clip10 ("Air" and "Solid Block", respectively) will likely be your most used blocks in the room. Other blocks, such as Clip11 or Clip16 ("/ Steep Floor Slope" and  "\ Lower Right Floor Slope") The most common types of blocks you will use are ground blocks. Clip0 and Clip10 ("Air" and "Solid Block", respectively) will likely be your most used blocks in the room. Other blocks, such as Clip11 or Clip16 ("/ Steep Floor Slope" and  "\ Lower Right Floor Slope")
Line 503: Line 603:
 ---- ----
  
-    === b. Item Tanks ===+=== b. Item Tanks ===
  
 Item tanks are much easier to use than they may seem at first. All one has to do is select the proper tile in the tileset and use the corresponding clipdata on the tile. For example, a missile would use Clip5D to denote its "tankiness." If you have clipdata showing, expansion tanks will be shown as purple. Also, only Energy Tanks, Missile Tanks, Super Missile Tanks, and Power Bomb Tanks can be placed this way. All other items must be taken from a Chozo Statue (a set of sprites which I will explain later). Item tanks are much easier to use than they may seem at first. All one has to do is select the proper tile in the tileset and use the corresponding clipdata on the tile. For example, a missile would use Clip5D to denote its "tankiness." If you have clipdata showing, expansion tanks will be shown as purple. Also, only Energy Tanks, Missile Tanks, Super Missile Tanks, and Power Bomb Tanks can be placed this way. All other items must be taken from a Chozo Statue (a set of sprites which I will explain later).
Line 514: Line 614:
 ---- ----
  
-    === c. Breakable Blocks ===+=== c. Breakable Blocks ===
  
 An important type of block to have is the breakable block. This includes anything from crumble blocks (which break under the player's feet) to screw attack blocks (which can only be broken with the screw attack). These come in 3 varieties: Reform, No Reform, and Never Reform. Reform means the block will reform after approximately 5 seconds. No Reform means that the block will not come back until the player leaves the room and returns. Never Reform indicates that the block will never reappear, no matter what happens in the world. Unfortunately, not every type of breakable block has each of these 3 settings (actually, none of them (excluding normal shot blocks) have all three; they usually have 2). An important type of block to have is the breakable block. This includes anything from crumble blocks (which break under the player's feet) to screw attack blocks (which can only be broken with the screw attack). These come in 3 varieties: Reform, No Reform, and Never Reform. Reform means the block will reform after approximately 5 seconds. No Reform means that the block will not come back until the player leaves the room and returns. Never Reform indicates that the block will never reappear, no matter what happens in the world. Unfortunately, not every type of breakable block has each of these 3 settings (actually, none of them (excluding normal shot blocks) have all three; they usually have 2).
Line 527: Line 627:
 ---- ----
  
-    === d. Water, Acid, and Lava ===+=== d. Water, Acid, and Lava ===
  
 Clipdata A0, A1, and A2 are used for Weak Lava (which varia suit is immune to), Strong Lava (which gravity suit is immune to), and Acid (which nothing is immune to). These are fine to be used, however it is more recommended to use header effects (explained later) instead of these. The same goes for water, which is clipdata 1B. Clipdata A0, A1, and A2 are used for Weak Lava (which varia suit is immune to), Strong Lava (which gravity suit is immune to), and Acid (which nothing is immune to). These are fine to be used, however it is more recommended to use header effects (explained later) instead of these. The same goes for water, which is clipdata 1B.
Line 536: Line 636:
 ---- ----
  
-    === e. BG0 Transparency ===+=== e. BG0 Transparency ===
  
 There are several clipdata blocks that affect layer 0. These are pretty odd, but essentially they change either the transparency of bg0 tiles or make it brighter/darker. Keep in mind that these apply effects to lava/acid/water if you have them in the room by using the room headers. There are several clipdata blocks that affect layer 0. These are pretty odd, but essentially they change either the transparency of bg0 tiles or make it brighter/darker. Keep in mind that these apply effects to lava/acid/water if you have them in the room by using the room headers.
Line 545: Line 645:
 ---- ----
  
-    === f. Door Transition Tiles ===+=== f. Door Transition Tiles ===
  
 Doors are an essential part to any hack. Their use is not obvious, but it is rather simpler than one might expect. However, seeing as doors should be paired with sprites, I will explain how to use them in the sprites section. Doors are an essential part to any hack. Their use is not obvious, but it is rather simpler than one might expect. However, seeing as doors should be paired with sprites, I will explain how to use them in the sprites section.
Line 552: Line 652:
 ---- ----
  
-    === Part 2- Object Editing Mode ===+=== Part 2- Object Editing Mode ===
  
 {{https://imgur.com/4TSgBx3.png}} {{https://imgur.com/6TPC4dC.png}} {{https://imgur.com/KSrfMxR.png}} {{https://imgur.com/4TSgBx3.png}} {{https://imgur.com/6TPC4dC.png}} {{https://imgur.com/KSrfMxR.png}}
Line 561: Line 661:
 ---- ----
  
-    === a- Sprite Editor ===+=== a- Sprite Editor ===
  
 {{https://imgur.com/ttnoeCj.png}} {{https://imgur.com/ttnoeCj.png}}
Line 582: Line 682:
 ---- ----
  
-    === b- Spriteset Editor ===+=== b- Spriteset Editor ===
  
 Each room has a specific spriteset chosen for its room that can only have up to 8 rows of sprite graphics. This means that stuff like bosses and larger enemies may create problems if you want to have a lot of enemy variety in your room. Each room has a specific spriteset chosen for its room that can only have up to 8 rows of sprite graphics. This means that stuff like bosses and larger enemies may create problems if you want to have a lot of enemy variety in your room.
Line 603: Line 703:
 ---- ----
  
-    === 2A- Sprites ===+=== 2A- Sprites ===
 [[https://forum.metroidconstruction.com/index.php/topic,3969.msg68497.html#msg68497 | Port this (Forum Link)]]FIXME [[https://forum.metroidconstruction.com/index.php/topic,3969.msg68497.html#msg68497 | Port this (Forum Link)]]FIXME
  
Line 613: Line 713:
 ---- ----
  
-    === 2B- Doors ===+=== 2B- Doors ===
 [[https://forum.metroidconstruction.com/index.php/topic,3969.msg68497.html#msg68497 | Port this (Forum Link)]]FIXME [[https://forum.metroidconstruction.com/index.php/topic,3969.msg68497.html#msg68497 | Port this (Forum Link)]]FIXME
 \\  \\ 
Line 619: Line 719:
 ---- ----
  
-    === 2C- Scrolls ===+=== 2C- Scrolls ===
 FIXME FIXME
 \\  \\ 
 \\  \\ 
 ---- ----
- + ===== Header Editor ===== 
-    === 31. Edit Layers ===  +
-\\  +
-\\  +
----- +
- +
-    === 32. View Layers ===  +
-\\  +
-\\  +
----- +
- +
-    === 33. Location ===  +
-\\  +
-\\  +
----- +
- +
-    === 34. Spriteset ===  +
-\\  +
-\\  +
----- +
- +
-    === 35. Clipdata ===  +
-\\  +
-\\  +
----- +
- +
-    === 36. Tile Select ===  +
-\\  +
-\\  +
----- +
- +
-    === 37. Current Tile Information ===  +
-\\  +
-\\  +
----- +
- +
-    === 38. Cursor ===  +
-\\  +
-\\  +
----- +
- +
-    === 39. Tooltip ===  +
-\\  +
-\\  +
----- +
- +
-   ==== Header Editor ==== +
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Tileset Editor ==== + ===== Tileset Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Graphics Editor ==== + ===== Graphics Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Palette Editor ==== + ===== Palette Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Tile Table Editor ==== + ===== Tile Table Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Animation Editor ==== + ===== Animation Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Sprite Editor ==== + ===== Sprite Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Spriteset Editor ==== + ===== Spriteset Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Connection Editor ==== + ===== Connection Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Minimap Editor ==== + ===== Minimap Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Text Editor ==== + ===== Text Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Demo Editor ==== + ===== Demo Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Physics Editor ==== + ===== Physics Editor ===== 
 \\  \\ 
 \\  \\ 
 ---- ----
  
-   ==== Weapon Editor ==== + ===== Weapon Editor ===== 
 \\  \\ 
 \\  \\ 
Line 741: Line 795:
  
 <WRAP centeralign> <WRAP centeralign>
- ====== PART 2: CREATING A ROOM                 ======+====== PART 2: CREATING A ROOM                 ======
 </WRAP> </WRAP>
-  ===== Basic level editing                     ===== + ===== Basic level editing                     ===== 
-  ===== Download a hex editor                   ===== + ===== Download a hex editor                   ===== 
-  ===== Hex editor functions                    ===== + ===== Hex editor functions                    ===== 
-  ===== Counting in hexadecimal                 ===== + ===== Counting in hexadecimal                 ===== 
-  ===== Copy/paste the room header              ===== + ===== Copy/paste the room header              ===== 
-  ===== MAGE's room list                       ===== + ===== MAGE's room list                       ===== 
-  ===== Room header format                      ===== + ===== Room header format                      ===== 
-  ===== Room pointers                           ===== + ===== Room pointers                           ===== 
-  ===== Banks / ROM minimap                     ===== + ===== Banks / ROM minimap                     ===== 
-  ===== Level data                              ===== + ===== Level data                              ===== 
-  ===== Background pointer                      ===== + ===== Background pointer                      ===== 
-  ===== Room size / map position                ===== + ===== Room size / map position                ===== 
-  ===== Basic room structure                    ===== + ===== Basic room structure                    ===== 
-  ===== Doors pointer                           ===== + ===== Doors pointer                           ===== 
-  ===== Door data                               ===== + ===== Door data                               ===== 
-  ===== Door BTS                                ===== + ===== Door BTS                                ===== 
-  ===== Adding new doors                        ===== + ===== Adding new doors                        ===== 
-  ===== Room Scrolls pointer                    ===== + ===== Room Scrolls pointer                    ===== 
-  ===== Door ASM pointer                        ===== + ===== Door ASM pointer                        ===== 
-  ===== Debug your doors                        ===== + ===== Debug your doors                        ===== 
-  ===== PLM Set pointer                         ===== + ===== PLM Set pointer                         ===== 
-  ===== Scroll PLMs                             ===== + ===== Scroll PLMs                             ===== 
-  ===== H-Copy / V-Copy                         ===== + ===== H-Copy / V-Copy                         ===== 
-  ===== MAGE's layers                          ===== + ===== MAGE's layers                          ===== 
-  ===== Tile highlighting                       ===== + ===== Tile highlighting                       ===== 
-  ===== Graphic Only / BTS Only                 ===== + ===== Graphic Only / BTS Only                 ===== 
-  ===== BTS (block types)                       ===== + ===== BTS (block types)                       ===== 
-  ===== Basic room design                       ===== + ===== Basic room design                       ===== 
-  ===== Slopes                                  ===== + ===== Slopes                                  ===== 
-  ===== Tiling errors                           ===== + ===== Tiling errors                           ===== 
-  ===== Up Scroll / Down Scroll                 ===== + ===== Up Scroll / Down Scroll                 ===== 
-  ===== Camera snaps                            ===== + ===== Camera snaps                            ===== 
-  ===== Scroll snaps                            ===== + ===== Scroll snaps                            ===== 
-  ===== Level design tips                       ===== + ===== Level design tips                       ===== 
-  ===== LEVEL DESIGN MISTAKES TO AVOID          ===== + ===== LEVEL DESIGN MISTAKES TO AVOID          ===== 
-  ===== Finished room design                    ===== + ===== Finished room design                    ===== 
-  ===== Enemy setup                             ===== + ===== Enemy setup                             ===== 
-  ===== Multi-piece enemies & possessors        ===== + ===== Multi-piece enemies & possessors        ===== 
-  ===== Enemy headers                           ===== + ===== Enemy headers                           ===== 
-  ===== Enemy projectiles                       ===== + ===== Enemy projectiles                       ===== 
-  ===== Enemy Palette pointer                   ===== + ===== Enemy Palette pointer                   ===== 
-  ===== Enemy Weaknesses pointer                ===== + ===== Enemy Weaknesses pointer                ===== 
-  ===== Enemy Drops pointer                     ===== + ===== Enemy Drops pointer                     ===== 
-  ===== Enemy GFX names                         ===== + ===== Enemy GFX names                         ===== 
-  ===== Enemy beta names                        ===== + ===== Enemy beta names                        ===== 
-  ===== General enemy info / limitations        ===== + ===== General enemy info / limitations        ===== 
-  ===== Enemy header copying                    ===== + ===== Enemy header copying                    ===== 
-  ===== Layer 3 effects ("FX") / FX1            ===== + ===== Layer 3 effects ("FX") / FX1            ===== 
-  ===== Door-specific FX                        ===== + ===== Door-specific FX                        ===== 
-  ===== FX palette blends                       ===== + ===== FX palette blends                       ===== 
-  ===== Screen shakes                           ===== + ===== Screen shakes                           ===== 
-  ===== Bug fix: liquid graphics                ===== + ===== Bug fix: liquid graphics                ===== 
-  ===== Map editing                             ===== + ===== Map editing                             ===== 
-  ===== Bug fix: map saving/loading             ===== + ===== Bug fix: map saving/loading             ===== 
-  ===== Map icons                               ===== + ===== Map icons                               ===== 
-  ===== Room states / events                    ===== + ===== Room states / events                    ===== 
-  ===== When to call a room finished?           =====+ ===== When to call a room finished?           =====
 <WRAP centeralign> <WRAP centeralign>
- ====== PART 3: OTHER STUFF                     ======+====== PART 3: OTHER STUFF                     ======
 </WRAP> </WRAP>
-  ===== Save stations                           ===== + ===== Save stations                           ===== 
-  ===== Elevators                               ===== + ===== Elevators                               ===== 
-  ===== Music selection                         ===== + ===== Music selection                         ===== 
-  ===== Song changes                            ===== + ===== Song changes                            ===== 
-  ===== Sound effects                           ===== + ===== Sound effects                           ===== 
-  ===== Color palettes                          ===== + ===== Color palettes                          ===== 
-  ===== Tile table editing                      ===== + ===== Tile table editing                      ===== 
-  ===== Repointing tilesets                     ===== + ===== Repointing tilesets                     ===== 
-  ===== Tile sheet (.GFX) editing               ===== + ===== Tile sheet (.GFX) editing               ===== 
-  ===== Tile rotation                           ===== + ===== Tile rotation                           ===== 
-  ===== Tileset mixing                          ===== + ===== Tileset mixing                          ===== 
-  ===== Reassigning GFX colors                  ===== + ===== Reassigning GFX colors                  ===== 
-  ===== Graphic and palette locations           ===== + ===== Graphic and palette locations           ===== 
-  ===== IPS/ASM patch usage and creation        ===== + ===== IPS/ASM patch usage and creation        ===== 
-  ===== Understanding basic ASM                 ===== + ===== Understanding basic ASM                 ===== 
-  ===== Resources                               ===== + ===== Resources                               ===== 
-  ===== FAQ                                     ===== + ===== FAQ                                     ===== 
-  ===== Glossary                                ===== + ===== Glossary                                ===== 
-  ===== Revision history                        ===== + ===== Revision history                        ===== 
-  ===== Special thanks / contact me             =====+ ===== Special thanks / contact me             =====
  
 ====== Main Window ====== ====== Main Window ======
zero_mission/basic_guides/mage.1699028940.txt.gz · Last modified: 2023/11/03 16:29 by felixwright