h1

Latest changes and UI design

August 2, 2010

Lately, I’ve been making little changes here and there. I’ve changed the way that I’m storing fonts. I’ve split the font metrics and the font texture up into two different files, which has allowed me to make changes to the texture in an image editing program (namely add outlines to the font).

Like so:

The benefit is that during the game the text will be readable regardless of what colour the background behind the text is 🙂 Now that I type that out it’s pretty damn boring, but I was quite excited about it.

The other thing that I’ve been working on is the user interface. I’ve been thinking about how to improve the typical user interface that’s used in adventure games. On the whole, nowadays, there are two main designs used for adventure games:

(1) A row of icons depicting various actions is placed along the top (or bottom) of the screen. When the user wants to do something like open a door or pick up an object, they have to move the mouse to the row of icons, select the action they want,  move the mouse back to the object they want to interact with and click on it. It’s pretty clear that the number of steps required to perform an action is not insignificant and is clunky at best.

(2) The players performs an action by right clicking to cycle through a number of different mouse cursors which represent the various actions, until they find the action they want and then click on the object in question. Although better than the first design, it can also become quite annoying when you have to keep cycling through all your actions over and over, especially when you happen to cycle past the action you wanted and have to go through the whole loop again.

So, I’ve decided to be a bit otherwise and go with a design that I happen to like and haven’t seen in many places. Not sure why… hopefully it’s not because it sucks. :/ The design works like this: If you want to interact with something, you click and hold on the object, an action “coin”… thing comes up and you move the mouse to the action you want, and release the mouse button. It seems far more streamlined and intuitive (at least to me) than any of the other designs, so lets hope it is 🙂

I’ve also added a task list type thing for the player character so that if you (for instance… just out of the blue) choose to use a door, I can queue up a number of actions, such as: walk to the door, turn to face the door, open the door. The cool thing is that the way I’ve made it means that I can interrupt the tasks at various points. For example: If I tell the character to go and open the door, the character will start walking towards the door. If I, at this point, change my mind and want to walk somewhere else instead, I can do that and the character will stop doing what it was doing and begin walking to my new destination.

Here’s a video to show off what I’ve just been talking about. Yes. I know my UI art is bad. Let’s just call it programmer art and ignore the fact that I was actually trying to make it look decent. My wife was kind enough to immediately point out how bad it was as soon as I showed her my UI. Nice.

Leave a comment