My initial thoughts on the user interface was there there would be two maps: the interactive map that lets you pan and zoom to get a high-level overview of the world, and the “play”, which would be effectively a fully zoomed-in map that would let you interact with the environment. As time went on, it became apparent that there really was no difference between these two maps, and I decided to just combine them into one map.
From a player perspective, when you first connect to the game and select an avatar to play, you will be given a map that is all the way zoomed in on the avatar you’ve selected. Depending on your screen size, you might be able to see perhaps 20 meters in each direction. You would then be able to click map tiles and interact with the game; a left click would move your character to the tile you’ve selected, and a right click would bring up a context menu that would let you interact with the tile (for example, by building a structure or harvesting a resource).
In addition to the map itself, I am envisioning a slide-out interface on the right side of the screen. When you move your mouse to the right border of the browser, an interface will appear that will let you perform other actions, such as chatting with friends, browsing your inventory, setting options and using the encyclopedia, as well as functional stuff like logging out.
I have explored the use of the HTML5 CANVAS element and I think for now at least I’m going to not use it. For one thing, it’s not universally supported yet and one of the primary motivators of Feralor was to create something that would work in all browsers. Another problem with it is that it’s not a terribly efficient way to handle graphics – it’s actually much more efficient to use a bunch of DIV elements put together like puzzle pieces.
I also explored the use of SVG to handle graphics and I think I will stay away from that for now too, as SVG support is not universal and more importantly it is implemented very differently (in some browsers, it’s an OBJECT, and in others it’s an IMG).
I will be staying away from the AUDIO and VIDEO tags for the same reason, which implies that for now there will not be any soundtrack for the game. That’s probably OK anyhow as I am not a musician and don’t have the bandwidth to deal with setting up that infrastructure for now anyhow. It’s more important for me to concentrate on the core components of the game like game play and user interface, and then we can add other elements like sound and video later.
Note: This was originally posted in the Feralor Development forum before that was all rolled into the WordPress blog.