February 2013 blog archive

This page contains all the blog posts from february 2013. To read the most recent blog posts, click here.

24/02 - TS 2 rendering

The map editor is now capable of turning maps that are created with it, into data that Technospire can understand. I started with a basic map, containing all of the default building blocks that can be used to create levels, to allow me to make sure everything looks the same in Technospire as it does in the map editor.

Creating maps is not just a matter of placing floor and wall tiles on a grid. In Technospire, a single tile can contain up to 6 layers of images. The bottom layer is the background, where the floor tiles are located, on top of this layer there can be up to two detail layers - one is static, but can be randomized and is mainly used to add some variation to the floor tiles, the other contains images that can change during the course of a level as a result of player actions.
On top of this comes the item layer, where items are located that the player's character can interact with. Then there are two layers for entities, which is a broad group of interactable elements ranging from walls to floortraps, to switches, and so on. This layer is also where the player's character and various NPCs will be located.

Each of these 6 layers can contain images that can be edited in numerous ways, by changing their hue, opacity or brightness, or by rotating or flipping the images. Some layer tiles can even be moved outside of their containing grid slot to create special effects.

With all this in place in both the editor and Technospire, i can almost start working on actual gameplay mechanics. Currently i'm setting up the interface that's visible alongside the map on any level.
For flash games i decide on a single, fixed resolution and make it so the game itself can't be resized. This simplifies things when it comes to rendering as well as processing player input, since locations of buttons for instances will never change. But since Technospire is intended for tablets, PCs and browsers, a more flexible approach is needed. Things are still relatively simple as the game screen is divided in several large sub-areas, optimized for both 4:3 and 16:10 resolutions. As the actual size of the application window changes, the game will figure out the best locations of these sub-areas depending on whether the window ratio is closer to 4:3 or to 16:10. For resolutions that aren't exactly 4:3 or 16:10, letterboxing will be used to keep images from getting stretched.

17/02 - TS 2 basics

Fleet bounce is now out on Kongregate and Newgrounds. The game will be uploaded to various portals over the coming weeks.

I've started on the Technospire 2 basics - right now, the game is capable of rendering a basic map and calculating the visible area from the point of view of the player.
The next step is to set up the map editor so that it can produce data, representing a map, that can be read and interpreted by Technospire, to recreate the same map in the game that players can interact with. From that point onwards, new functionality can be added to both the editor and the game, supporting additional elements that can be used to add more detail to a map. At the same time, actual game mechanics can be added to Technospire.

10/02 - Fleet Bounce

Fleet Bounce has been released on the NULLL site. Click here to start playing. For now the game is exclusive to the NULLL site - in about a week i'll start uploading it to various flash game portals.

There's only a small bit of progress on the Technospire II editor, but that's because i spent most of the past week doing Android tests. The good news is that i can turn existing flash games into Android-compatible games quite easily, but not all games are equally playable once they've been converted. The main issue is the difference between using a mouse pointer and using a touchscreen to receive player input - while clicking/tapping works ok, there's no equivalent for mousing over something (i.e. placing your mouse cursor over something in the game). The most obvious example is HD Xyth : you can mouse over cards to see a card popup with more info about this card. To get this popup on the Android version, you'll have to tap the card, but since tapping also triggers a regular click, this can cause actions in the player's hand or cards in play to trigger their abilities.
Another (minor) element is that i tend to design my games for a single resolution : my games have a fixed size and can't be resized to preserve the crisp look. This results in a small drop in graphical quality if the game is resized on a mobile device (which come in all kinds of screen resolutions).

Technically it's only the input related code that needs to be changed or looked at if i want to create an Android version of an existing game. In theory, the amount of work that is involved in this depends on the game. For HD Xyth it would take a lot of work as mouseovers are quite important throughout the entire game. For Nebula Warriors and Xyth Memory, i won't have to make any changes at all. In fact, Nebula Warriors is already available on the Google Play store : click here (it's free).
I plan to look into making Android versions of my existing games (next to Nebula Warriors and Xyth Memory, i'm considering Ultranought, Fleet Bounce and the upcoming 'RH'), mainly for the purpose of getting to know the new platform and collecting feedback from Android users who try these games.

It's definately good to know that Flash games can be so easily ported to Android. If i set up future games such that they can work with both mouse and touchscreen input, it'll be even easier. So for smaller games, i won't have to create Java versions to get these to run on Android devices. For larger (or very graphically intensive) games, it'll be more efficent and better for performance to make a Java version first for standalones and Android and then create a flash version for the web. On top of that, in either scenario, flash games can still be turned into AIR versions easily to provide altenrative standalone versions.

03/02 - TS2 Editor

One week into working on a level editor for Technospire II (and for a couple other tile-based games), i have a very basic version ready. For now, it's restricted to creating tiled backgrounds only. Soon, i'll be able to start on the basics of Technospire II itself, so the output of the level editor can be tested in an actual game. As work on Technospire progresses, i'll get a better idea of which kinds of functionality and gameplay mechanics need to be supported by the editor as well.
Technospire II itself will most likely start off as a Java game as well, and i'll create a Flash version once the Java one is complete. This will allow me to use render code from the editor for the game without having to rewrite it for use in Flash first - since the renderer isn't fully functional yet, it makes more sense to keep working with it in Java until it's complete.

I'm also getting close to releasing FB - an arkanoid inspired game. If all goes as planned, the game should be out on the NULLL site coming friday.