Progress!

It’s been a few days since I last posted, mostly due to Thanksgiving and some school stuff. But I have been working on the suite and it’s quickly becoming massively better than ZOLE, and many other editors in general.

I recently posted a video showing off some of the things I’ve added to the suite and how it’s slowly becoming more of a suite, but I’m starting to wish I waited because I’ve made some design overhauls and added an awesome, highly-requested feature. One of the biggest issues with ZOLE 4 was it was completely number-based and didn’t have any lists, mainly because I didn’t want to hardcode anything in case things changed. However, this is no longer an issue. Not only does the suite still launch with just the single executable file (something I’m trying to keep so it’s easy to distribute), but it also loads lists automatically (unless this is toggled off in the settings file). It does this by checking if the lists exist and if not, it downloads it from the list directory specified in the settings file. By default, this is http://www.zeldahacking.net/downloads/zohs/lists/ and if you go there, you’ll actually see I created a sounds file that populates the music editing box using the lists that a couple other people and myself had created. If you’re curious, here is the source code. All you have to specify the name of the list, such as “sounds” and it tries to download “sounds.ini” from the directory specified. It then goes ahead and fills in empty spaces with the hexadecimal indexes so it’s like a numeric box.

So that’s pretty cool. I’ve also been tidying up the editor and reworking the editor to use the API and sort of move towards a final and flexible design. Here’s a screenshot that also shows off the downloaded list:

ZOHS 0.05 Preview

ZOHS 0.05 Preview

There are a couple of things you’ll notice. First off, the tileset is on the right and the clipboard is below it (and also much bigger than the old one). I’ll explain why in just a moment. The second thing you’ll notice is there are tabs on the left that contain the original stuff on the left and the hex editor. The reason I have these both is to sort how I want to handle the different editing parts. On the left, you have tools that don’t manipulate the map or rely on the user’s input with it. Obviously the hex editor isn’t going to draw anything on the map, so it makes sense to separate it from the right – which contains editors that do. I haven’t finished migrating the original code to use the new editing component system (which is shown off in the video if you’re curious). To clean things up even more, I’m going to be implementing a similar editing component that handles the current things on the left. The third thing you’ll notice is there is some extra space on the paint image, which will be used to allow placing the vertical and horizontal grass tiles, and also maybe having a flower tile between them that will make the generation code alternate between them to make things more interesting.

There is an issue with this system though. If a user changes the area ID, the map editing component (which isn’t known or accessible through the main form until a ROM is opened) won’t know it has to redraw the tileset and map. The only thing I can think of is to have a method handled in the right editors that is called from the left editors to do things like update the tileset, other graphics, etc. I’ll have to try things out and see what works, because if it’s too flexible I’ll end up with another ZOLE 5 and that’s the last thing I want.

So that’s all for this post. Great things are happening to the suite that are quickly making it fulfill mine and others’ editing needs. Until next time, take care!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>