It Can’t Possibly Die!

It’s been some time since we had our last chat, hasn’t it? We have so much catching up to do! We’ve both just been so busy, I guess we lost track of time! Where do we start?!

So yes, the press has been neglected as of late. I’m not going to try and pretend it hasn’t. But as usual, there is a reason. ZOHS’s popularity with me boomed because at the time I had no “real” projects (I put “real” in quotations because Zelda Oracles hacking will never be the priority it was in the past). Combine that with lots of free time to work on stuff and you’ve got some nice fluent development. But then I started learning C++ for real and beginning to understand its power and with that I was doing lots of research about dynamic mesh generation. One thing led to another and lately I’ve been working on a game instead of the suite.

However, that’s not to say ZOHS is being abandoned! I recently realized it’s okay to have multiple projects! In fact, it’s good! Multiple projects keep us from getting bored, while giving us the satisfaction of workflow. It also helps us better understand what we’re trying to do. With the lack of attention towards one specific thing and instead splitting it up, it allows us to step back and look at the bigger picture. When I started developing the suite, I just wanted a cleaner Zelda Oracles level editor that integrated all the external tools – the script editor, text editor, chest fixer, etc… while making editing tasks easier. Doing a better job programming things was a big priority.

But because I spent long periods away from it, I’ve had time to think about how things could be done better instead of regretting additions I’ve made along the road. A good example of this is the recent release of ZOHS beta 0.05. One of the coolest beta releases in a long time in my opinion, this release marked a huge point in this project’s development. While casual users might just look at it and think it only adds a hex editor and list downloading, it has done much more.

What took so long with it was migrating the map editor to use the plugin system. It’s not loaded externally (yet?), but all of the map editor’s code, GUI and functionality included, is its separate class that uses the plugin API. Before, all of this code was thrown in the main form’s code and stuff was beginning to get really cluttered, like ZOLE 4′s code. But this migration allowed me to keep it as clean as if it was running on ZOLE 5, the 100% plugin-based shell, but with the power and simplicity of ZOLE 4. This is exactly what the ZOLE 6 should be.

Working on the project in tiny bits and pieces has allowed me to add some neat features, make simple design tweaks that have large impacts on development, and fix bugs that would’ve been tough to find. An example of the latest feature is there is an option to draw the tile(s) you’re about to place instead of just a white box. This simple addition is going to make huge changes, because now you can (A) preview what your change will look like before messing with the map and (B) know what tile(s) you’re about to place. Let’s, for a moment, pretend there won’t be a history feature (undo/redo) [I believe this is going to wait until the networking update, because it will probably follow the same system to allow undoing/redoing ALL tasks]. For the clipboard, you currently have to have “Clipboard” checked in order to place its tiles instead of the regular tileset’s tiles. Perhaps you’ve made big changes to the map and haven’t saved and have a lot of tiles on the clipboard selected, but you want to place one tile from the tileset. Uh oh, you forgot to untick “Clipboard” and already placed the tiles, and you haven’t saved your work! Now you have to start over! But wait, that isn’t likely to happen anymore because you can visually see you’re still using the clipboard without looking at it! Of course, this option is completely customizable. The opacity of the tiles you’re about to place can be 0% (off), 25%, 50%, 75%, and 100% (fully opaque). Here’s what it looks like:

zohs 2

The design tweaks I was talking about are simple changes that make editing easier. One example is right-clicking when dragging to place a line causes the line to be removed, in case you want to get rid of or redo the line.

So all in all, releases may be spaced far apart, but good things are happening to the suite. Progress is always going to be slow, but I don’t think it’s a project that will die. After all of the core elements, progress will probably pick up and it will soon make ZOLE 4 obsolete. I am looking forward to it.

~Lin

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>