by LinkOfThePresent at 01-09-2019, 06:00 PM
Hi! So, I'm very much a beginner when it comes to modding but it's something I've wanted to do for a very long time. I've tried Blender but I find it very difficult as a beginner so I've been trying to use SketchUp since I find it to be user friendly.

I've been having problems and have tried watching tutorials and reading up online but either don't find anything relevant or the information is outdated.

I create a rather simple model with texture in Sketchup, export it as an OBJ file. It looks like the way SketchUp exports has changed since all the instructions I find don't apply anymore. It's exported as a zip file in the cloud.

Anyway, I then open SharpOcarina, and do what I'm supposed to do:

File > New Scene
General > Collison Model
(and then find the OBJ file that I've had to drag into a different folder, usually my Desktop, since it's a zip file. But it's saved as 3D Object).
Rooms > Add Single Room
(and then I select the same file).

I then get this error:

Unhandled exception has occurred in a component in your application. If you click Continue, the application will ignore this error and attempt to continue.

Could not find file 'C:\Users\12268\Desktop\Testing.mtl'.

Here are the details of the error:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IO.FileNotFoundException: Could not find file 'C:\Users\12268\Desktop\Testing.mtl'.
File name: 'C:\Users\12268\Desktop\Testing.mtl'
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
   at System.IO.StreamReader..ctor(String path)
   at System.IO.File.OpenText(String path)
   at SharpOcarina.ObjFile.ParseMtl(String Filename)
   at SharpOcarina.ObjFile.ParseObj(String Filename)
   at SharpOcarina.ObjFile..ctor(String Filename, Boolean IgnoreMats)
   at SharpOcarina.ZScene.AddRoom(String Filename, String extrastr, Int32 subs)
   at SharpOcarina.MainForm.AddRoom_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
    Assembly Version:
    Win32 Version: 4.7.3260.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/SharpOcarina.exe.exe
    Assembly Version:
    Win32 Version: 4.7.3221.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    Assembly Version:
    Win32 Version: 4.7.3314.0 built by: NET472REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    Assembly Version:
    Win32 Version: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/OpenTK.DLL
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/OpenTK.GLControl.DLL
    Assembly Version:
    Win32 Version: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    Assembly Version:
    Win32 Version: 4.7.3221.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
    Assembly Version:
    Win32 Version: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
    Assembly Version:
    Win32 Version: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
    Assembly Version:
    Win32 Version:
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/ExtendedXmlSerializer.DLL
    Assembly Version:
    Win32 Version: 4.6.25519.03
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/System.Collections.Immutable.DLL
    Assembly Version:
    Win32 Version: 4.7.3056.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Runtime.dll
    Assembly Version:
    Win32 Version: 4.7.3056.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Linq/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Linq.dll
    Assembly Version:
    Win32 Version: 4.7.3056.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Collections/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Collections.dll
Anonymously Hosted DynamicMethods Assembly
    Assembly Version:
    Win32 Version: 4.7.3260.0 built by: NET472REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
    Assembly Version: 3.0.1000.0
    Win32 Version:
    CodeBase: file:///C:/Users/12268/Documents/SharpOcarina0.971(beta)/System.Interactive.DLL
    Assembly Version:
    Win32 Version: 4.7.3056.0 built by: NET472REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the section.
The application must also be compiled with debugging

For example:

    < jitDebugging="true" />

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT  debugger registered on the computer
rather than be handled by this dialog box.

I don't know why the error message has .MTL down when it's been saved as .OBJ. I've tried this with Blender and it opens into SharpOcarina no problem.

Sorry for the length of this message. I will appreciate any help!

by mzxrules at 12-15-2018, 05:20 AM
I could have sworn I created a thread here, but I guess not.

Spectrum is a memory viewing tool that can hook on to virtually any emulator process (Nemu64, PJ64, Mupen, Bizhawk, Dolphin) and extract information from the emulated RDRAM. From there, Spectrum can map out the address of various data structures in memory, making it an extremely powerful tool for any hacker. 

One of it's simplest and yet most powerful feature is the ability to convert between a file's ram, vram, and vrom addresses for most files, provided that the file is loaded in ram. This makes debugging actors significantly easier.

The latest release adds the "trainer" command, which can be used to set up mupen64plus based emulators easier, and has partial support for Project64.
by Nokaubure at 11-21-2018, 12:52 AM
Since super mario world and super mario 64 modding communities does it, why not ocarina of time? my aim is to provide useful actors that can work in almost all romhacks that can do something that no other vanilla actor does

To get those actors inside the game, you can use Custom Actor Toolkit

While the project is not done yet, you can start using some of them, there's 3 so far

On/Off Gate
Check the video description for download link and information

Switch Flag <-> Global Flag converter

Download: here

Actor ID: ???? (whatever empty ID you want)
Object: Nothing
Variable XXYY
XX switch flag
YY  global flag

This actor stays invisible and sets global flag to 1 if you trigger the switch flag, or sets switch flag to 1 if the global flag is set


- You can carry flags between scenes
- You can convert flags 20-37 into permanent flags at the cost of 1 global flag per switch flag
- You can make a cutscene trigger a switch flag

Cutscene Trigger

Download: Here

Actor ID: ???? (whatever empty ID you want)
Object: Nothing

Variable XXYY
XX - switch flag (FF = null)
YY - global flag (mandatory, 18 = always plays?)

RotationX  00XX
XX - first byte of cutscene offset

RotationY XXYY
XX - second byte of cutscene offset
YY - third byte of cutscene offset

RotationZ 00XX
XX - Delay to start cutscene in seconds

This actor stays invisible and triggers a cutscene once you enter a room, or you triggered a switch flag with other actors.


- Play a cutscene after killing all enemies in a room by pairing it with a timer actor
- Play a cutscene when reaching certain position by placing an invisible collectible
- Play a cutscene when solving a puzzle
by Nokaubure at 11-21-2018, 12:35 AM
Custom actors have been pretty obscure and inaccesible from long ago, but thanks to Atom released by mzxrules and the old nOvl made by ZTT32 I managed to create this tool.

Download: here

The tool can:

- Decompile any actor in the rom to .S format, custom or vanilla, with detailed comments of documented functions. The decompiled actor can be compiled again without any modification.
- Compile and inject actors given a source file (.S), with detailed gcc and novl output in the console
- Extract and inject any zobj files

Note: For now, "Find empty space" only checks for a chunk of 0s where your actor / zobj can fit, use it only if you're lazzy or if you want to put all the actors and zobjs past offset 3000000

[Image: 040OWb9.png]

If you feel generous, feel free to donate, it serves as motivation for me to progress this tool and SharpOcarina

[Image: btn_donate_LG.gif]

Wait dude, but I don't know how to code in MIPS Assembly!

Don't worry, you can still use the tool to inject actors made by other people in your ROM! Check this thread
by Armos at 11-05-2018, 06:01 AM
Hi everyone. I have a tool suggestion for us newbie and experienced modders that'll put less stress on us creating mods. This involves ASM hacking as well. I was wondering if its possible to make a user friendly program that will allow users in the modding business that want to create a project for their mod. To be able to let us test certain stuff in game so we can patch the thing in game its self. Like for example. What if you want to generate some fog in the game using a scene file that supports fog, Its been awhile since I modded or done any Zelda hacking stuff so I'm really sorry if I don't know what I'm talking about. And we can make experiment with certain stuff. Like for example. Make a bow for young link to wield. Or be able to change the fire arrows to a different color from red to blue. Or summon a storm any time we want or vice verse. Sorry if I have NO IDEA what I'm talking about. But I was just curious if this kind of thing is possible. Creating a user friendly tool that will allow you to do all these cool things. I've seen a bunch of stuff done with ASM hacking on YouTube so I was pretty amazed on what people can do. So I was wondering if its possible to make a program for people to have options to do what ever they want in the game and inject it into binary or the debug rom, etc Kinda like the actor hacking programs. That would make life so much easier if we can do something like this. But it's just a pipe dream. But I was wondering if its possible to make a program like this. Sorry if this is in the wrong thread. If you think it doesn't belong here please move it to the right forum! Thank you! It's just a suggestion so sorry if I offended any asm modders.
by CubanR at 10-27-2018, 04:37 AM
Not sure where to post this thread since it's not technically modding.

Just a model/texture I made in my spare time. It's not much, but I figure it may be of some use to contribute various resources for people to use in their projects.

[Image: DqfNfl9W4AEGiDp.jpg]

Download Here:
by Armos at 10-18-2018, 09:05 PM
Hello guys, I didn't see no introduction thread. But I wanted to introduce my self. I used to be really interested in Zelda modding. And I am interested in creating Zelda maps for fun for the Debug ROM. So I was hoping I could get some help here. I am a really nice guy. Been going through allot of personal stuff. I've been around since ZSO and allot of other places. I am not a good Zelda modder. I don't plan to make any Zelda Projects. I just want to experiment with it and see if I can get better at it as a hobby. My main goal is to make my very own custom dungeon map. I've experienced with mapping before. It's pretty fun but couldn't get Sketchup to work that well. I hear this is a very friendly community. Like I've said I've been on ZSO, Zelda64, etc. I used to go by the name of Shade back in ZSO. But that's along time ago. I'm 27 now. I still got a little experience in modding. But I'm not an expert like the rest of you. I just want to find a hobby to do and see what I can come up with. I just want to get off my butt and start experimenting for educational use and to have FUN! Smile I know some guys might recognize me from glitchkill, The GCN, or ZSO. But if you find that I'm not entirely being honest then I'm sorry. I've been going through allot of health problems lately. So I hope we all can become friends and have a good time and discuss modding and all that and help each other out! ^_^  Big Grin Hope you'll all welcome me. I hope this place isn't dead either. I found the site on N64Mods YouTube channel. Smile Anyway have a good day, night, evening, morning, where ever you are. Smile
by Psi-Hate at 10-16-2018, 12:42 AM
Hi everyone, this blog is dedicated to posting updates about the development of OoT Online. We'll try to update as often as we can when we reach points we wish to show off. 

OoT Online Team:

One of us will update through new posts when we get the chance, so stay tuned!

[Image: logo.png?width=885&height=498]
by JabuJabule at 10-13-2018, 10:11 PM
Here is a model preset guide for Ocarina of Time/Majora's Mask with pictures.
This guide is in feet and units. Some parts of the original guide are copied over and/or modified. Adult Link is added for comparison.

Regular Doorway:

[Image: THI3ma1.png]

- 5 feet wide
- 8'4 feet high
- 1'8 feet deep

- 60 units wide
- 100 units high
- 20 units deep

- When connecting two rooms, you must put a door model in each room you want Link to enter and exit from.
- When creating the doorways: With the collision, you want to make an invisible barrier (that way Link cannot walk through the wall into the next room).

Boss Doorway:

[Image: dIPiohz.png]

- 10 feet wide
- 13'4 feet high
- 1'8 feet deep

- 120 units wide
- 160 units high
- 20 units deep

Crawl Space:

[Image: DXyOWnU.png]

- 2'8 feet wide
- 2 feet high
- As deep as desired

- 32 units wide
- 24 units high
- As deep as desired

- There will need to be an individual wall for Link to interact with. This is the "doorway", which is what you press A on to enter. This "wall" must be placed 1'8 feet (20 units) inside of each side of the crawlspace. The solid side must also be facing inwards.


[Image: jLklvXk.png]

Actual ladder:

- 2'8 feet wide
- As tall as desired

- 32 units wide
- As tall as desired

Climb down interaction:

- 2'8 feet wide
- 1'8 feet tall

- 32 units wide
- 20 units high

- The actual ladder must be it's own component, and be named "Ladder". Hylian Toolbox will recognize this as a ladder, but you can also manually add the ladder flag.
- The climb down interaction is placed at the top of the ladder, white side (solid side) facing out. Make this piece a component and name it "LadderTop". If using Hylian Toolbox, it will recognize this and it should work as soon as you import your map. If not, you can give this component a "ladder top" flag.
- Ladders should be placed five inches (5") (Units: 60) from whatever wall Link is climbing onto. This ensures the ladder has the space so Link can climb off and on (at the top) perfectly, and is genuine to the games. This also separates the ladder top component from the actual ladder.


[Image: 1o8CqXo.png]

- 1'8 feet wide
- 3'4 feet high
- As long as desired

- 20 units wide
- 40 units high
- As long as desired

- This is for the collision of the fence. The mesh has the texture, with the texture double sided in the middle.
- This is the fence where Young Link will climb onto and Adult Link will hop over.
by JabuJabule at 10-13-2018, 08:53 PM
Hey everyone! I didn't seem to find a new member's forum, so here I am. I hadn't realized everyone switched over to a new forum after Zelda64. Lots of forum swaps over the years huh...

Anyways, for anyone who remembers me I'm JabuJabule. I've been around for quite a long time in the Zelda modding community. Haven't done too much with OoT or MM in the past few years, but I'm hoping to make that change soon!

About me at the moment, I'm in nursing school, and of course I love Zelda. I'm a big Switch gamer, and even 3DS at times.

Anyways, hi! And welcome....back, I guess? I know many of you anyways. Tongue
Welcome, Guest
You have to register before you can post on our site.


Search Forums

Forum Statistics
Members: 331
Latest member: hyruletom64
Forum threads: 60
Forum posts: 161
Online Users
There are currently 8 online users.
0 Member(s) | 8 Guest(s)