Jump to content

CloudMax's z64editor


CloudMax
 Share

Recommended Posts

Beta 3.0.0 Preview has been released, you can use it online or download it here

This is being developed for the OoT MQ Debug ROM only now. Download Beta 2.2.0 here for MM support.

You can also download the latest version for offline use here.

If you find any issues, please tell me, and specify which browser & version you're using.

 

The editor currently supports pause menu editing, mainly the Quest Status menu. It is also possible to preview, export and import textures.

3.1 will allow you to edit various things in the File Select screen among other things.

 

The editor requires you to provide either the entire OoT MQ Debug ROM, or specific files from it. You can use programs such as zdec or GZRT to get the required files.

When you save, you'll download the modified files, and not the entire ROM. You'll either have to recombine the files yourself (a text document is included with the download, it tells you all the file offsets), or use a program which does it for you.

  • Like 14
Link to comment
Share on other sites

I think you should add support for custom user images in case they want to position things based on an original menu graphic they created.

Yeah, I thought of that before but decided to put it on hold to focus on getting the first build out.I am currently rewriting the site for the ground up, and will most likely rewrite major parts of the code as well.Here's a preview of what it currently looks like:https://dl.dropboxusercontent.com/u/6440063/MM/ASM/editorv2preview2.pngIt supports zooming, and dragging objects so far. And is way more organized.The next major release should have the ability to use custom backgrounds by providing a url to a complete 240x160 image. (the editor will automatically split the picture into a 3x5 grid so that the tile editor can be used for custom textures as well)Some other nice features I plan to add is Cursor sizes, Z & R Button object & cursor position, among other things.
  • Like 4
Link to comment
Share on other sites

I'm definitely going to check this out. I hope it keeps the ROM compatible with back up device after using the program on it.

My only question is what OoT ROM are you going to make the other editor for? Debug, or NTSC regular ROM?

I personally prefer to work with the regular NTSC ROM for OoT, but we all know that it is way more popular to work with the Debug ROM, so I may very well attempt to make it compatible with both.

Here's yet another preview of the new editor design:

Posted Image

 

I plan to change how I handle song colors so that the color picker becomes part of the Selected Object section instead of being completely separate.

 

I may also make the Z & R button (along with the Z & R cursor) into objects/cursor boxes so that you'll be able to easily modify them this time around.

 

I plan to add multiple selection modes as well. So that you can for example make it so that you only can click on a cursor box, or only on an object, will be useful now that you drag objects instead of double-clicking to move them.

 

And I'll add a visual cue to the currently selected object & cursor box, I noticed when setting up direction IDs that there wasn't an easy way to instantly locate the selected cursor.

  • Like 1
Link to comment
Share on other sites

Lots of progress has been made.

Posted Image

 

As you can see down at the bottom, the editor does support direct editing through browser consoles as I've put all data into a javascript object, allowing direct access & editing. (also allows me to easier develop the site, as it dynamically creates & removes objects and cursors if it notices that it doesn't exist on the workspace, or if the object has been removed, and I don't have to perform any function calls to update anything)

Made Cursors into circles instead of squares. The selected cursor is blue to separate it from the others. You can now move objects & cursors with WASD and Arrow keys.

I'm basically rewriting everything. haven't even looked at the source of the old editor since I started writing this one.

 

Edit: forgot to mention. the Editor actually works now. Spent the last ~16 hours working on it. It still can't save though, which isn't exactly ideal. :P

  • Like 2
Link to comment
Share on other sites

What are you writing this in?

That's a sexy gui, simple, yet beautiful.

This is actually being written in Javascript, so it is a website, but it will look like an application. (I have this hobby of making websites that looks like something from an OS, like my main website for example http://cloudmodding.com/ all written in javascript & CSS3)

The reason behind this is because it will make it cross-platform which I find very important, and it is a programming language I am very familiar with.

 

Note that this site may not work for people that uses browsers like Internet Explorer 8 or lower. In theory my website should by compatible with IE9, but I only have IE10, so couldn't test it. However, if you are using Chrome, Firefox, Opera, Safari and keep the browser updated (atleast a version from this year), you should have no trouble at all.

 

Very sexy. Reminds me of Adobe Photoshop, makes it look very professional.

I am actually using the color scheme of Adobe Photoshop CS6 as reference. I really like the idea of using different shades of grey with black outlines. (Just like with my avatar)

 

And here's a preview of what the texture editor now looks like:

Posted Image

It has it's own separate location for changing the textures so you don't need to keep track of all the various hotkeys that are being used to perfrom different actions on the workspace.

The website is also being developed with smaller displays in mind, you should be able to zoom out to 67% size and still be able to use everything properly. Zzooming out will make the GUI smaller and workspace bigger.

And note the Texture Path above the Masks Texture Grid, you can now provide a custom path so that you can use your own textures within the editor.

 

Note that the song color is part of the left column now. I will keep all data that is relevant to a single object this way from now on.

  • Like 1
Link to comment
Share on other sites

I love all the random people who just happen to stop by this site and turn out to be these awesome programming deities.

 

I know rite?

 

 

-----------------

 

 

Great work on the UI  ^_^  Another cool think to add would be letting the user change the menu color. Would love to have a tool like this for OoT as well, gold is so much sexier than blue/red/green/yellow rock :(

Link to comment
Share on other sites

Note that this site may not work for people that uses browsers like Internet Explorer 8 or lower. In theory my website should by compatible with IE9, but I only have IE10, so couldn't test it. However, if you are using Chrome, Firefox, Opera, Safari and keep the browser updated (atleast a version from this year), you should have no trouble at all.

 

IE 8 supposedly supports CSS3, so it SHOULD work.

 

 

I love all the random people who just happen to stop by this site and turn out to be these awesome programming deities.

*slinks in*right?*flees*

Link to comment
Share on other sites

 

I love all the random people who just happen to stop by this site and turn out to be these awesome programming deities.

 I know rite?  -----------------  Great work on the UI  ^_^  Another cool think to add would be letting the user change the menu color. Would love to have a tool like this for OoT as well, gold is so much sexier than blue/red/green/yellow rock :(

 

I will allow users to change the menu color, if I can figure out where the game sets this value. I'll look into it tomorrow.And the editor is reading directly from the zdata file now, so people will be able to import their menues and make changes to it instead of having to start over every time.When you reset an object or cursor, it will reset to the state it was in when you loaded the file.You can also save to the browser (Local Storage). Plan to allow saving as text so that people can share menues that then can be directly pasted back into the editor.And I've added touch screen support, this includes multitouch in both internet explorer and chrome. (They use different touch standards) With multitouch you're able to drag multiple objects/cursors at once.And I've added the ability to toggle display objects & cursors.I also plan to make an ASM Hack extension to the editor that will change how the game handle object icons, so that you'll be able to pick icon for every object available on the menu.By default icons are hardcoded. Remains for example must be 4 item IDs in a sequence, same with sword & shield. Enabling the ASM extension should theoretically allow you to set up every object individually.I plan to build on to this to allow as much customization as possible, as there are quite a few limitations by default. 

 

Note that this site may not work for people that uses browsers like Internet Explorer 8 or lower. In theory my website should by compatible with IE9, but I only have IE10, so couldn't test it. However, if you are using Chrome, Firefox, Opera, Safari and keep the browser updated (atleast a version from this year), you should have no trouble at all.

 IE 8 supposedly supports CSS3, so it SHOULD work.

 

The problem lies within the HTML5 features I'm using, the ones related to loading files locally to be precise.There could very well be a bunch of other features that aren't supported either, I'm not really sure. Hard to keep track of all the compatability.And I've made some changes to the update speed of the website. It is no longer set to 20ms. It is now set to ~21fps (24fps is optimal, but because of all the calculations that are made, it lose about 3 frames), and if the device/browser can't handle that much, it will decrease the FPS instead of causing the browser to freeze or slow down.
Link to comment
Share on other sites

I have a computer with IE 8 over here i could test it on, though honestly I don't it's too much of a concern, since most people using IE are either using IE6 (who knows why) or the latest, the former is obviously out, and the latter has good HTML5 support. IE 8 is pretty shaky but as long as you're not using too many GLCanvas' you should be gold.

Link to comment
Share on other sites

I've made some more progress.

editorv2preview9.png

You can toggle displaying the bottom panel now so that smaller displays have more space to work with. (you toggle it with the double arrow button attached to the right of it)

You can have even lower height, you'll get scrollbars on the side panels.
 

I added toggle checkboxes for displaying objects & cursors.

 

I've added AppCache support to the website, so it'll be available even when you don't have an internet connection given that you're using a modern browser, and have cached the site by visiting it. (It's about 1.2mb uncompressed at the moment)

All the objects & cursors that are seen in that screenshot is read directly from the zdata file, it is now possible to import an existing zdata file and edit it.

Saving to & Loading from browser is completely done, everything is saved without any issues whatsoever.

 

Edit:

SoulofDeity mentioned adding the ability to set menu color, so I decided to do just that. However I went a step further and finally decided to learn some basic html5 canvas, allowing me to actually generate tinted images in the editor so that you'll see the tint color you've applied.

editorv2preview13.png

Had to do some annoying changes to the global update function because of it though D: Had to add checks to make the editor generate a new image and apply it whenever the color in the settings aren't equal to the ones of the object (if it is applied constantly, the browser itself will go down to like 1-4fps), and I had to make sure that the image used by the object was fully loaded before manipulating the colors because the script would crash otherwise.

Edited by CloudMax
  • Like 1
Link to comment
Share on other sites

Well, the editor is no longer just a Majora's Mask editor (which was the point from the beginning, it's called z64editor because it's supposed to be for OoT & MM, and edit all sorts of things, not just the menues)

Here's a quick test I did (the only ingame test I did actually):

editorootsupport.png

So, the editor now support the Ocarina of Time Debug Rom.

Note that this was done in just a day, so there may be some issues I haven't found yet.

 

I also implemented a new feature in the editor which saves the .zdata to the browser when you load/save a .zdata file so the next time you load the editor the file will be automatically loaded for you.

The Save/Load to Browser [Local Storage] feature is untested in this version of the editor. I plan to remove this feature altogether and rely entirely on saving the .zdata files. This will make the save future-proof as it won't rely on the current format used by the editor.

 

Some things I want to make clear about the OoT version:

OoT does not have separate tables for cursors, so there is no need for cursor objects in the OoT editor. The direction IDs has been moved to the selected object panel while in OoT mode, and the selected cursor panel is empty.

Object sizes does not have separate tables for Width & Height, they share value. However, since the song texture isn't quadratic the game must handle this object differently. I've rescaled the song texture temporarily in the editor to have proper width.

I haven't found where the game sets the Y Position of the song notes so you can only change their X position (the Y position won't affect the ingame result).

The background color format appears to be different and I haven't been able to figure it out yet, so you can't change the color for now.

The R Button direction ID was hardcoded to use the R0 register so an extremelly small ASM hack is applied to allow setting it.

I added the Save Panel and its textures. However, I still haven't added the gameover panel or the textures for it.

 

Here's an editor preview:

editorb11preview.png

 

Just realised that I forgot to update the text in the Save & Load tab, going to fix that in a moment.

  • Like 3
Link to comment
Share on other sites

Working on the next major release, this time it features improvements to the editor UI. The right hand side panel no longer hosts the Selected Cursor, it will now hold a list of all the objects.

You can hide each object individually, and select objects that previously wasn't in view. (Now you can't permantently loose objects by dragging them up or to the left!)

The list icons will be updated along with the objects, this includes both texture & tint color. It will barely have any effect on performance since the object & list icons are generated in the same function.

 

I'm still working on the layout design for Majora's Mask. I haven't fully decided on what I want to do with the Selected Cursor panel. I'm thinking of either adding tabs to the left hand side panel, or removing the selected cursor panel altogether and making it so you only can have 1 type of object selected at any time so that objects & cursors can share the same space. Or I could just put the selected cursor data below selected object and have you scroll.. but that looks ugly. :P

 

I've noticed that browsers such as Internet Explorer 10 has a big performance issue with generating the tinted pictures. This can easily be seen by changing menu, since it has to regenerate all 15 tinted textures for the menu background. I'll look into making it so that it only has to generate 1 picture for each menu texure, reducing the amount of generated images to just 4 in MM and 5 in OoT.

 

I've added the ability to set background color gradient in OoT now.

Here's a preview:

editorb21objectlistpreview.png

(the reason why the picture says 2.1 is because the current version actually is supposed to be 2.0.1, but I was dumb and set it to 1.1.1 instead)

  • Like 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.