Hello, welcome to a list where newbies and advanced users alike can make use of.
The first section of this thread is specifically geared for people who don't know where or how to begin their quest in making a mod. If you aren't sure how to start your quest of making a mod, or how hex editing works, or anything really, the first section is going to be awesome for you. Don't be ashamed at what you don't know--we all gotta start somewhere, right? I encourage asking questions, but be sure your question hasn't been answered first--use the search function.
The second section is a Master Tool List for both advanced users and newbies. For specifically the Newbies, when you go through the program list, you'll be able to see which ones have a tutorial with a [T] and easily watch a video explaining the details of each program. Some of them range from very basic to a bit more time consuming. But each are clear, concise and have you (new to modding) in mind. If you ever have questions though, make a comment on the youtube video itself, and I will be sure to get back with you on a solution.
Newbie Section
Number one ruleI've found in modding:BACK UP YOUR ROM! I have three copies of any rom I'm working on at a time in my computer, plus one that is on a flash drive I update every now and then. Whenever you make a major change that works out great and has no problems, back that ROM up right away!
A useful place to check out is theZ64 wiki community portal . This is where you can really dig through the documentation of the roms and learn some new things. Most entries are very technical, so for newbies I suggest digging around, but don't expect to get everything at once. Learn things a bit at a time, and after a while it'll come naturally.
Here's a PDF file on the map select as well as some information on cutscenes and overall debug controls. Also, check out this page on different ways to set up your emulator to get the rom to work. On a side note, if you want to learn about the Debug rom itself and how it got out, then check out this thread about it. There is some interesting stuff on it.
Terms to Know:
Actor = The code or AI for the enemy, NPC, tree, rock, or basically the model.
Variable= These vary between actors. It is used the specify the attributes of that particular actor, such as whether it is invisible, small, mini-boss, etc.
Group/Object=The actual model and (usually) animations of the enemy, NPC, tree, rock, or any other type of actor. Only one object is needed to be loaded if there is more than one actor that uses it. You might see some people call it a group, but the correct term is object.
Basically, the game loads the object into a segment (just think of it as general storage in which all the actors that use that object have access to) then whenever an actor needs some model data or animation, it grabs from the loaded model and uses it to fulfil it's physical or visible needs. Easy to understand: Let's say you wanted three Stalfos; you would place three Stalfos actors and one Stalfos object, not three Stalfos objects and one Stalfos actor.
Video Tutorials
To find the program to download, just skip on down to the Advanced Users Section to get your correct program for your tutorial. When you see a [T] next to a program, this means that there is a tutorial made for it. I'm hoping to one day have a clear tutorial for everything. Most tutorials deal with the debug rom as well, so be sure to have a copy of that.
Setting Up
What Should You Download? How do I make the debug rom run on Nemu64?
MISC Things That Need Video Tutorials (A.K.A. Note to self)
Changing Navi's Colours:
A quick little run-down on changing your favorite fairy's colours. This includes the inner body, the outside halo glow, as well as transparency. This is really simple once you learn how to search for offsets in your hex editor!
Sakura89's documentation on offsets in debug ROM along with the normal OOT colours:
Check out the hex code now. The first three bytes deal with Navi's inner body colour. The fourth byte deals with transparency of the body, not including the wings. The next three bytes deal with the "glow" halo around the body.
To make Navi into Tael, try this code out to get a feel how it works: 4E 00 C2 FF FF 00 00
You can also do the same thing with Link's Tunic colours. Check out these offsets:
These are easier as they are only 3 bytes long instead of the 7 that Navi uses.
Time Flow Control:
In scene headers: 10 00 00 00 xx xx yy 00: Time control
x: Starting time (see Time Modifier) y: Speed at which time moves (signed value; default is 0A)
Block Push Delay
The ROM address 0xF4B12E (decompressed 1.0-0x00DD2D26) is a 16-bit integer that holds the block pushing delay, in frames. The default value is 10 (0x000A).
Block Speed The maximum block pushing speed is found at 0xF4AF8E (decompressed 1.0-0x00DD2B86). It's a 16-bit number that represents the 2 most significant bytes of a float. The default value is 2 (0x4000).
Block Distance (wouldn't change this in case it messes up the block positions in a puzzle)
The block pushing distance works similarly and is found at 0xF4AFD2 (decompressed 1.0-0x00DD2BCE)and has a default value of 20 (0x41A0).
Have game check for all six medallions:
Write the following 2 lines at ROM address AE04A0 (decompressed 1.0 rom - 0x00ACCE20) 8E0200A4 3049003F 392A003F 1540001A 00000000 00000000 00000000 00000000
(thanks to fierceshinigami for the decompressed 1.0 offsets)
Master Tools Section
Here's a "quick list" of tools that you guys might want at your fingertips. When you see a [T] next to the program, that means there is a tutorial listed in the newbie section. Better than searching through the threads all day on twelve different sites, eh? Now, for you newbies, if you want to try something on this list--give it a go! Can't hurt anything really, and getting your hands dirty will help with experience. Just remember the number one rule! And don't be intimidated by the huge list, new guys. For those finished with mods: Disable Debug Options.
Pierre's Ocarina Studio - The only GUI application for Custom Ocarina of Time and Majora's Mask Ocarina Songs. It's buggy in some cases where it doesn't work. It supports changing the actor that the song spawns. If this doesn't work for you, stick to using a Hex Editor. If you want to be even pickier, you can try Petrie's OOT Song Builder.
[T] Scroll of Time / Majora - The only GUI application for editing text for Ocarina of Time or Majora's Mask. It doesn't support every feature and is buggy in some cases. If this is the case for you, or just merely have trouble editing, you can take a look at [T] DeathBasket's Text Tool which simply dumps the text to a .txt file where you can edit it in any program of your choosing (aka notepad).
Hylian Toolbox - An Application in it's infancy state that can currently be used to edit or create new or old hierarchies and animations. This can also be used to rotate or scale display list mesh. This is still version one, and not all bugs have been properly worked out as of late.
DeathBasket's InstEd - An advanced application for converting custom MIDI files into Zelda Sequence Files to import into Ocarina of Time. This can also be used to port custom instruments from SM64 or Majora's Mask to Ocarina of Time, and can be used to insert sequences from Majora's Mask. Say you only want to port Majora's Mask music quickly and you're on a windows OS with .NET Framework, you can useMMMusic2OoT which ports sequence files from Majora's Mask to OoT on command. Given that you sometimes have broken instruments that can be fixed with InstEd.
Model2N64 - A GUI Application for converting OBJ files to custom display lists that can be imported into either Ocarina of Time or Majora's Mask.
[T] SayakaGL- This is a replacement more or less for Utility of Time, an application for Windows users written by cooliscool. It can move actors and change their number and variable. There is an update that includes support for transition actors, but has not been bug tested as much. That would be SayakaGL v.011. I suggest using the newest version that supports object changing as well as a few other awesome things. To find it's location, go to SayakaGL>bin>release>then click on the SayakaGL application file.
SorataVSE - An actor, display list, or map viewer with proper hierarchy and matrix support. The first viewer to implement proper actor rendering. Although currently in a beta stage, it is planned to become much more, including a replacement to SayakaGL.
[T] Zelda Actor Replacement 2 (ZLE2) and Zelda Level Editor 2 (ZAP2)- Applications for making on-the-fly changes to the game in real time while your emulator is running. These tools only have support for Nemu 64 and are recommended by multiple users.
[T] ZAO-ADD - An application that automatically adds extra actors and objects to a room quickly and simply. Being updated when it can be, it's more efficient than using a Hex Editor and can automatically insert your edited files so you can get to playing your mod as soon as you're finished with it.
DLViewer = An Application to view display lists within Ocarina of Time or Majora's Mask files. Also has support for SM64, though unthroroughly tested.
[T] SharpOcarina - The only GUI Application that supports converting custom OBJ files into Custom Maps for Ocarina of Time or Majora's Mask. Works well in tandem with Google Sketchup Pro, Blender, any 3d program that can export obj files. Download the latest version.
z64dump - A command line program that dumps information about a rom such as its makerom info, file table location, actor and object table locations, the number of actors, and actor descriptions telling the actor group / actor / object number and their corresponding object files. All information is obtained using some advanced searching techniques and nothing is hard-coded, so it works on any Zelda rom. The rom must be decompressed though for it to work.
n64conv - A command line program originally written as a replacement for the n64gfx program that comes with ZLE2 because it's 16-bit and doesn't run on 64-bit pc's. It converts raw texture data to .tga files. The format of the texture data is determined by the file name, which has the format 'name_WWxHH_fmt.raw', where 'name' can be anything, WW is the width (in decimal), HH is the height (in decimal), and fmt is the format, which can be i4, i8, ia4, ia8, r5g6b5, rgba16, or rgba32. CI (paletted) formats are not supported. Just drag and drop files on the program to convert them.
Airikita's Value Editor - "This is a value editor for both Zelda: Ocarina of Time (OOT) and Majora's Mask (MM), and can be used for any version and type! Different values can be found to be modified... while there are floating-point and integer values, there are a range of other useful values that can have an effect on just about anything!"
[T]N64 Sound Tools - An open source sound tool for N64 ROMs, which lets you play standard format waves, and lets you add/change waves that are in the game already. Use alongside TableDesign and Adpcmenc to make your own custom sounds for the game.
If you can think of anything else to add, just list it in the thread, and I'll add it up here.
Question
giadrosich
UPDATED 6/11/2013
Hello, welcome to a list where newbies and advanced users alike can make use of.
The first section of this thread is specifically geared for people who don't know where or how to begin their quest in making a mod. If you aren't sure how to start your quest of making a mod, or how hex editing works, or anything really, the first section is going to be awesome for you. Don't be ashamed at what you don't know--we all gotta start somewhere, right? I encourage asking questions, but be sure your question hasn't been answered first--use the search function.
The second section is a Master Tool List for both advanced users and newbies. For specifically the Newbies, when you go through the program list, you'll be able to see which ones have a tutorial with a [T] and easily watch a video explaining the details of each program. Some of them range from very basic to a bit more time consuming. But each are clear, concise and have you (new to modding) in mind. If you ever have questions though, make a comment on the youtube video itself, and I will be sure to get back with you on a solution.
Newbie Section
Number one rule I've found in modding: BACK UP YOUR ROM! I have three copies of any rom I'm working on at a time in my computer, plus one that is on a flash drive I update every now and then. Whenever you make a major change that works out great and has no problems, back that ROM up right away!
A useful place to check out is the Z64 wiki community portal . This is where you can really dig through the documentation of the roms and learn some new things. Most entries are very technical, so for newbies I suggest digging around, but don't expect to get everything at once. Learn things a bit at a time, and after a while it'll come naturally.
Here's a PDF file on the map select as well as some information on cutscenes and overall debug controls. Also, check out this page on different ways to set up your emulator to get the rom to work. On a side note, if you want to learn about the Debug rom itself and how it got out, then check out this thread about it. There is some interesting stuff on it.
Terms to Know:
Actor = The code or AI for the enemy, NPC, tree, rock, or basically the model.
Variable = These vary between actors. It is used the specify the attributes of that particular actor, such as whether it is invisible, small, mini-boss, etc.
Group/Object=The actual model and (usually) animations of the enemy, NPC, tree, rock, or any other type of actor. Only one object is needed to be loaded if there is more than one actor that uses it. You might see some people call it a group, but the correct term is object.
Basically, the game loads the object into a segment (just think of it as general storage in which all the actors that use that object have access to) then whenever an actor needs some model data or animation, it grabs from the loaded model and uses it to fulfil it's physical or visible needs. Easy to understand: Let's say you wanted three Stalfos; you would place three Stalfos actors and one Stalfos object, not three Stalfos objects and one Stalfos actor.
Video Tutorials
To find the program to download, just skip on down to the Advanced Users Section to get your correct program for your tutorial. When you see a [T] next to a program, this means that there is a tutorial made for it. I'm hoping to one day have a clear tutorial for everything. Most tutorials deal with the debug rom as well, so be sure to have a copy of that.
Setting Up
What Should You Download? How do I make the debug rom run on Nemu64?
Check out the tutorial here!
Text Editing Tutorials
Getting Started - How to Decompress a Rom (Ignore if Using Debug Rom)
Hex Editor Basics - Line Breaks ||| Text Colour/File Name Usage |||
Scroll of Time - Getting Started ||| When Cutscenes Softlock |||
OOT Text Tool - Simple Tutorial (recommended over Scroll of Time if having trouble with editing)
Actor/Group (Object)/Variable Tutorials
Zelda Actor Placement 2 - Setting Up the Program/Changing Actor Variables (Part 1) ||| Changing Objects/Groups (Part 2) ||| Moving/Rotating Actors Real-Time
SayakaGL - Getting Started With Moving Actors ||| Actor Replacing Tutorials |||
ZAO-ADD - Adding New Objects to a Map |||
Custom Map/Sound Tutorials
Model presets: Shows the size of doors and such to use
Imported Link model for scale: To help with map sizes
SharpOcarina - Making and Importing Simple Maps ||| Collisions & Exits |||
Custom Sounds in OOT |||
Misc Tutorials:
Hex Editing - Start new file in different ways (more documentation here) |||
Beginner's Guide to Music - Writing Your Own Music
MISC Things That Need Video Tutorials (A.K.A. Note to self)
Changing Navi's Colours:
A quick little run-down on changing your favorite fairy's colours. This includes the inner body, the outside halo glow, as well as transparency. This is really simple once you learn how to search for offsets in your hex editor!
Sakura89's documentation on offsets in debug ROM along with the normal OOT colours:
Example: Let's change Navi's normal colour.
You can also do the same thing with Link's Tunic colours. Check out these offsets:
These are easier as they are only 3 bytes long instead of the 7 that Navi uses.
Time Flow Control:
In scene headers:
10 00 00 00 xx xx yy 00: Time control
x: Starting time (see Time Modifier)
y: Speed at which time moves (signed value; default is 0A)
Block Push Delay
The ROM address 0xF4B12E (decompressed 1.0-0x00DD2D26) is a 16-bit integer that holds the block pushing delay, in frames. The default value is 10 (0x000A).
Block Speed
The maximum block pushing speed is found at 0xF4AF8E (decompressed 1.0-0x00DD2B86). It's a 16-bit number that represents the 2 most significant bytes of a float. The default value is 2 (0x4000).
Block Distance (wouldn't change this in case it messes up the block positions in a puzzle)
The block pushing distance works similarly and is found at 0xF4AFD2 (decompressed 1.0-0x00DD2BCE)and has a default value of 20 (0x41A0).
Have game check for all six medallions:
Write the following 2 lines at ROM address AE04A0 (decompressed 1.0 rom - 0x00ACCE20)
8E0200A4 3049003F 392A003F 1540001A
00000000 00000000 00000000 00000000
(thanks to fierceshinigami for the decompressed 1.0 offsets)
Master Tools Section
Here's a "quick list" of tools that you guys might want at your fingertips. When you see a [T] next to the program, that means there is a tutorial listed in the newbie section. Better than searching through the threads all day on twelve different sites, eh? Now, for you newbies, if you want to try something on this list--give it a go! Can't hurt anything really, and getting your hands dirty will help with experience. Just remember the number one rule! And don't be intimidated by the huge list, new guys. For those finished with mods: Disable Debug Options.
For overall debug databases for individual file downloads: Master Quest Database ||| Majora's Mask Database
Pierre's Ocarina Studio - The only GUI application for Custom Ocarina of Time and Majora's Mask Ocarina Songs. It's buggy in some cases where it doesn't work. It supports changing the actor that the song spawns. If this doesn't work for you, stick to using a Hex Editor. If you want to be even pickier, you can try Petrie's OOT Song Builder.
[T] Scroll of Time / Majora - The only GUI application for editing text for Ocarina of Time or Majora's Mask. It doesn't support every feature and is buggy in some cases. If this is the case for you, or just merely have trouble editing, you can take a look at [T] DeathBasket's Text Tool which simply dumps the text to a .txt file where you can edit it in any program of your choosing (aka notepad).
Hylian Toolbox - An Application in it's infancy state that can currently be used to edit or create new or old hierarchies and animations. This can also be used to rotate or scale display list mesh. This is still version one, and not all bugs have been properly worked out as of late.
DeathBasket's InstEd - An advanced application for converting custom MIDI files into Zelda Sequence Files to import into Ocarina of Time. This can also be used to port custom instruments from SM64 or Majora's Mask to Ocarina of Time, and can be used to insert sequences from Majora's Mask. Say you only want to port Majora's Mask music quickly and you're on a windows OS with .NET Framework, you can use MMMusic2OoT which ports sequence files from Majora's Mask to OoT on command. Given that you sometimes have broken instruments that can be fixed with InstEd.
Model2N64 - A GUI Application for converting OBJ files to custom display lists that can be imported into either Ocarina of Time or Majora's Mask.
[T] SayakaGL - This is a replacement
more or lessfor Utility of Time, an application for Windows users written by cooliscool. It can move actors and change their number and variable. There is an update that includes support for transition actors, but has not been bug tested as much. That would be SayakaGL v.011. I suggest using the newest version that supports object changing as well as a few other awesome things. To find it's location, go to SayakaGL>bin>release>then click on the SayakaGL application file.SorataVSE - An actor, display list, or map viewer with proper hierarchy and matrix support. The first viewer to implement proper actor rendering. Although currently in a beta stage, it is planned to become much more, including a replacement to SayakaGL.
[T] Zelda Actor Replacement 2 (ZLE2) and Zelda Level Editor 2 (ZAP2)- Applications for making on-the-fly changes to the game in real time while your emulator is running. These tools only have support for Nemu 64 and are recommended by multiple users.
[T] ZAO-ADD - An application that automatically adds extra actors and objects to a room quickly and simply. Being updated when it can be, it's more efficient than using a Hex Editor and can automatically insert your edited files so you can get to playing your mod as soon as you're finished with it.
[T] Navi Colour Changer - A CLI Program to change Navi's colors in Ocarina of Time. You can also try out this program: Zelda Colour Editor. Tutorial is for hex editing.
N64Rip - Imports and exports textures.
DLViewer = An Application to view display lists within Ocarina of Time or Majora's Mask files. Also has support for SM64, though unthroroughly tested.
[T] SharpOcarina - The only GUI Application that supports converting custom OBJ files into Custom Maps for Ocarina of Time or Majora's Mask. Works well in tandem with Google Sketchup Pro, Blender, any 3d program that can export obj files. Download the latest version.
z64dump - A command line program that dumps information about a rom such as its makerom info, file table location, actor and object table locations, the number of actors, and actor descriptions telling the actor group / actor / object number and their corresponding object files. All information is obtained using some advanced searching techniques and nothing is hard-coded, so it works on any Zelda rom. The rom must be decompressed though for it to work.
n64conv - A command line program originally written as a replacement for the n64gfx program that comes with ZLE2 because it's 16-bit and doesn't run on 64-bit pc's. It converts raw texture data to .tga files. The format of the texture data is determined by the file name, which has the format 'name_WWxHH_fmt.raw', where 'name' can be anything, WW is the width (in decimal), HH is the height (in decimal), and fmt is the format, which can be i4, i8, ia4, ia8, r5g6b5, rgba16, or rgba32. CI (paletted) formats are not supported. Just drag and drop files on the program to convert them.
Airikita's Value Editor - "This is a value editor for both Zelda: Ocarina of Time (OOT) and Majora's Mask (MM), and can be used for any version and type! Different values can be found to be modified... while there are floating-point and integer values, there are a range of other useful values that can have an effect on just about anything!"
[T] N64 Sound Tools - An open source sound tool for N64 ROMs, which lets you play standard format waves, and lets you add/change waves that are in the game already. Use alongside TableDesign and Adpcmenc to make your own custom sounds for the game.
If you can think of anything else to add, just list it in the thread, and I'll add it up here.
Link to comment
Share on other sites
Top Posters For This Question
16
5
38
10
Popular Days
Mar 15
13
Apr 9
12
Apr 14
11
Mar 12
8
Top Posters For This Question
haddockd 16 posts
sairugoth 5 posts
giadrosich 38 posts
Zax 10 posts
Popular Days
Mar 15 2013
13 posts
Apr 9 2013
12 posts
Apr 14 2013
11 posts
Mar 12 2013
8 posts
Popular Posts
giadrosich
UPDATED 6/11/2013 Hello, welcome to a list where newbies and advanced users alike can make use of. The first section of this thread is specifically geared for people who don't know where or ho
Secant
Stickying this thread harder than a bird. We've needed this for a LONG time.
Jason777
I'm liking the tutorials thus so far, but I have one thing that you should probably change Actor - the code or AI for the enemy, NPC, tree, rock, or basically the model. Variable - These va
96 answers to this question
Recommended Posts