Category Archives: Video Games

Hear Hear Tennis



Hear Hear Tennis started as a sound only game, and although it is still attended to be played that way visuals have been added in order to improve the spectacle of watching other people play.
The game premise is relatively simple, a player hits the ball [some time passes], the ball bounces [the same time passes], there is a short window of opportunity when the ball can be hit again by the other player.
Each player can strike the ball at three different strengths, which vary the amount of time between ball passes and bounces.
Additionally the game will speed up after every hit, this is to make sure that firstly there the game is slow enough for people to play but each point will not last forever.
Other than that the game scores in the same way as tennis.
Here’s a quick example of play.

Developing the Idea

When I first envisioned the game, I imagined it being built into a small box, with a speaker either end and three buttons for each player to determine the strength of the hit. During development, it was suggested I could try using wiimotes, which I had some laying around.
After some play in Unity and editing some existing script ( I got the wiimotes reading into the game. Even with a very basic implementation of the wiimote controls the game started to feel like more fun.
The addition of the wiimotes, also increased the need for some visual aspects. There would need to be a clear way to see that they were connected or if not connect could be connected. This lead to having to design and create menus, which is by far one of least favourite things to do when developing a game. Getting the game working and playable was about 25% of the work, the rest was making menus and making the game understandable to anyone who isn’t me or wouldn’t have me around to explain it.

Keeping the Sound

I was keen to keep to the idea of a sound based game, so most actions in game are supported by noises or speech. This includes the menus, scores, and guidance on when you’ve hit the ball, or swung to early or late.
I tend to use as a quick way to add speech to my games, as I don’t have the set up or voice for doing voice work.
I also used some additional sounds from .
Finally I added an in-built exhibition mode, that would all the game more easily to be shown at an exhibition. This has a number of features that allow showing the game in a public space to be easier.
  • There is no way to quit to desktop from the main menu
  • The users cannot change any of the settings.
  • The game will reset if left idle for a certain amount of time.

Final Thoughts

This game was a relatively quick turn around, it took around a month working on it when I had spare time outside of work and other life commitments. The game appears enjoyable, but due to currently only working with mac and wiimotes is going to be a pretty niche experience unless I can find places to personally show it. One of the more frustrating things that happened towards the end of development was realising that one of the 1-2 Switch games for the Nintendo Switch was incredibly similar (they used table tennis) but the mechanics seem more-or-less identical. It’s such a simple idea that it’s not too surprising that it has been done before. However, judging by the videos I ended up watching of it, the rhythms of the games feel slightly different. Overall, I learnt a lot of new things from the project and it will be interesting to see what other wiimote games can be made.

Download Hear Hear Tennis (currently mac only)


Four Small Unfinished Unity Projects

Over the last year I’ve been working on some small projects, each of which has been put into stasis or more than likely abandoned. Here’s a little glimpse at four of those projects.

A Cube Moving Puzzle Game

What I was really interested in learning whilst working on this project was how I could manipulate the mesh of a cube to make it animate. Like a lot of the game systems I design, it started moving towards a puzzle game.

The aim of the game was to remove the coloured cells on the larger cube by stamping on them with the smaller cube, which you control. I did spend some time adding symbols to help distinguish the colours as well as making the colours stamp a trail.

The idea was ok, and I was relatively pleased with the animation and style I managed to generate, however, I did not feel that this one was worth my time to get it into a playable state. The effort required to make the puzzles, I believed, would not be worth the finished outcome.

Drawing Shapes

For this project I was interested in how a system could recognise shapes drawn by the player on a touch screen.

The method used was to create a series of points as the player draws, making sure that they’re evenly spaced no matter how fast the player moves their finger on the screen. The centre was found, and any distinct changes in directions noted. This info was put through a series of tests to determine the most likely shape.

To make a sort of game from it, the player can only draw in the white section, with the navy blue timer restricting the drawing space. Completing the required shapes bought the player more time to keep drawing.

The game functioned but really wasn’t much more interesting that an experiment, so the final polish and push was abandoned for other projects.

Jump Snap

This game started as an idea to create a multi-player shared tablet game inspired by snap. I wanted to create something that couldn’t obviously be recreated in a physical form, or at least took advantage of the animation possible in digital games.

I started with shapes bouncing and rotating. At the moment of bounce they form a 2d shape allowing the 3d shape that they are part of to be switched to another one. In terms of animation I focused on the squash and stretch of the objects, as well as creating an offset between the two shapes bounce times.

Players did seem to struggle slightly with having to match the volumes of the 3d shapes rather than matching the sides (2d shapes). Something I’d have to find a way to make clearer in the instructions/tutorial for the game.

I did also consider the idea of creating a custom controller where players would stand on their own pad and have to jump in the air when the shapes matched.

This idea might be picked up again, if I can afford the time to make the custom controllers.



A game about sliding triangles around to make hexagons that match colour, which then flip to create more hexagons. Grey and white triangles make red triangles; red triangles make orange triangles; orange make yellow; green, blue then purple.

Out of all the games, this is the one I have been working on the longest, on and off for about 2 years. It is also the closest to being finished. It only requires two things.

  1. A final end game animation.
  2. Some music and sounds.

I stopped working on it the first time, when I thought I’d have to add a scoring scheme for the game to work. I then realised about a year later, that if I didn’t want a score system it didn’t need one (players can see how well they have progressed by the colours of the triangles they have revealed). I started up again, and worked a lot on the animation, adding depth to the triangles, which were previously flat 2d objects which faded rather than rotate.

Then I stopped again a while ago because I can’t do sound myself.

Once I find someone to do sound for this, I’ll put the finishing touches to it and release it. I just need to be a bit more pro-active finding a sound person.


Although I’ve not finished any of these projects, I have learnt a lot from doing them. My skills in Unity have come on a long way over the last year and every new project provides me with new insights and methods that I can use for the next.

For me in my current situation, I get more from making many unfinished projects than I would from finishing one project. I guess I’m just waiting for the project that I think is really worth it, and the time to really dedicate to it.

Maybe the next one will be the one.

P.S. This post has not included all the half finished board games I have lying around my desk, but maybe that’s another post for another day.

Making a puzzle game: ORDER


Play ORDER here.

Playing with Polygons

ORDER was born from a little experiment in manipulating polygons in Unity. I wanted to see how I could create coded animations which would allow a polygon to change its number of sides.


Initially, I created a polygon with multiple triangle meshes that created a spoke effect. I could manipulate the length of each polygon to change the polygons shape. I then created a little piece of code which checked if each of these spokes was the same length as the boundary of the desired shape. This worked ok, the animation between shapes didn’t look very nice (especially between triangle and square), there was some edge detection problems, and when a number of shapes were manipulated at the same time, the frame rate severely dropped.

So in order to reduce the stress on the frame rate, I had to simplify the system.


The best thing I could do was reduce the number of triangles to that equal to the number of sides. Although there are possibly even more efficient ways of doing this, this would likely work for my process.

All ‘unused’ triangles, were bunched together to create a ‘line’, therefore creating the appearance of different sized polygons. The initial limitations of this system is that it could only be used to create regular polygons.

For the animation of the points I used half a sin wave, the rate of change is roughly slow-fast-slow.

Making the Game

I knew I had two things that I could do with the polygons, I could change their number of sides and I could rotate them relatively easy.

Initially the first version of the game, used three sets of controls.

  1. Select the polygon that you wanted.
  2. Change the number of sides of the selected polygon.
  3. Change the rotation of the selected polygon.

Each action would also affect the neighbouring polygons in some manner. Either also rotating them or changing their number of sides.

The issue was very clear, this was horrible to do. It did not feel good in anyway.


I changed the control method so that changing the polygon that is selected, also manipulated that polygon and it’s neighbours. The newly selected polygon has it’s number of sides increased and the neighbours are rotated. This felt better, but was a lot to visually take in. This reduced the controls to one of movement only.

I added a colour change to show which polygon is selected, a small pulse animation to the newly selected polygon, and a delayed rotation animation to give a sense of cause and effect. This definitely helped.

Beating the Game

Finally I needed a winning condition. Ideally I wanted the player to win whenever all the shapes were matching both in rotation and the number of sides. However, I was not able to prove that this was possible for all the different permutations of this. This issue, meant that I could not fairly set it as a goal.

I settled on a fixed goal of having all shapes return to triangles and all pointing down after being randomised.

The next issue, is how do you show that this is what the player needs to do.

I kept adding a range of information in different forms until I think I got it right:

  1. The starting condition of the polygons is the required position.
  2. Text tells the player that “this is ORDER.” and once randomised “return to ORDER”.
  3. Polygons in the correct position pulse, those that are not are static.
  4. A counter indicates the level of order.



I am happy how the game turned out, it was a fun experiment in Unity and did not take too long to complete. It is perhaps not the most novel of ideas, but I think it at least adds an additional level of complexity to a common grid puzzle structure (changing something changes the neighbours – return to an ordered pattern), by having two methods of manipulation and fixed selection movement between neighbouring polygons.

If you want to play ORDER you can do so here. it may require a Unity plug in to run as well as permission to run.

10 Questions to Consider when Exhibiting Games and Designing Games for Exhibitions

More spaces are showing games for many different reasons. It might be demos for games that are available to purchase, games that are in development or perhaps the game itself was specifically designed to be shown in an exhibition. Whatever the reason there are a few questions that I think we should start asking ourselves about showing games in these spaces. This is not a definitive list but a work in progress, the beginning of a wider conversation we as designers, exhibitors and curators should be having. Games are certainly worthy of a platform and space to be shown, and we can learn a lot from other mediums, art, design, performance and theatre, but there are somethings that games do differently. Therefore we must consider what is special about how people view and experience games and how we can make exhibitions and spaces for games better, for those that attend and those that are showing.

Here are ten questions to start that conversation:

  1. How easy is it for someone else to set-up, are there clear instructions, can you make it automatically load when turned on?

It might be that your game is going to be set-up or looked after by someone else, or you be looking after many different games. Make it as easy as possible to go from a crashed or broken state to ready to play. In the case of games on PCs and Macs put a little extra effort in so the game automatically loads up when you either turn on or reset the system. This will make your life and the life of others a whole lot easier.

  1. Is it simple and clear for a new player to restart the game, do you need a big red reset button?

I’ve seen it happen in a number of places. People play a game for a while and then leave it part way through. If a new player with no experience of the game comes to play at this point they may have missed the ‘tutorial’ or learning experience crucial to the overcoming the next obstacle. In fact people often put down the game when they get stuck, so someone picking up the game at this difficulty spike can stop them getting into the game completely. Your game may well have a menu and a restart option but this may not be clear on its own. Is there a way to have a big reset button so a new player can walk to the system and hit it knowing they’ll go back to the beginning? Something like a MakeyMakey could be used for doing this.

  1. How long does it take to learn to play the game, how long to get a good appreciation of the game?

When exhibiting a game, a player will not necessarily have a long time to play your game. There will hopefully be people waiting behind them to have a go, which will add pressure to them. Is the player going to get a suitable understanding of the games rules or controls and a reasonable impression of the game in the time given? If you are showing part of a larger game choose carefully which part it is you show. If you are creating a game specifically for exhibition take this consideration into account at the design phase.

  1. Does your game implicitly state to allow someone else to have a go, after a certain amount of time, after reaching a fixed point?

Again you are probably hoping that lots of people will want to play your game, but games generally are not designed with systems for allowing new players to enter and old players to leave. Consider changing your game to allow for this. At certain points in the game, controlled by time or achievement add an on screen prompt (or non-digital equivalent) that says, ‘You’ve been playing for a while, can you see someone else who would like to play.’ If there isn’t anyone they can keep playing but if there is someone else can have a go without having to ask.

  1. In multiplayer games, could those who have won be encourage through the game itself to look for someone else who might want a go?

In a similar way, multiplayer games should encourage you to share. After a round, match or turn, specifically consider having the winning player give up their spot. Again this can be an onscreen prompt. I have always disliked the often used ‘winner stays on’ rule for game all this does is give the best player more opportunity to get better rather than allowing less skilled players the opportunity to improve.

  1. Who can see your game being played, should it be private just the current player(s), or should it have an audience?

Depending on the type of game and the subject matter there should be some consideration to who can see the game being played. Should it just be the people playing, perhaps they are being asked personal questions or they need a safe space to fail and get better. Possibly showing someone the game before they play will spoil it for them. On the other hand is the game improved with a audience of spectators encouraging and reacting to the players playing. Either way the space and the way the game is set up should really consider that. You can put a curtain around a game, or hide it in a booth. You can put large screens high so others can see them. You can have secondary screens which show the action to the audience specifically.

  1. Are the controls intuitive and clear, do you need to have all those extra buttons accessible when they’re not going to be used?

The worst thing that can happen when learning to play a game is that there are not any clear instructions for the controls. This leads to bashing buttons and hoping things will happen. This is worse with keyboards as there are so many additional potential buttons to try. A simple way to reduce this complexity is by removing the buttons, or highlighting the buttons that are used with stickers or some other markings. A potentially better way is to make a bespoke controller, which through its design communicates intuitively how to use it.

  1. Can you reduce the potential embarrassment that someone may feel if they are not good, or do not understand how to use your game?

A lot of the time we play games in our own homes or with friends, this is somewhere we likely feel safe to fail and get things wrong, and can slowly learn how to play. Picking up a game in a public space and not being able to play can be embarrassing and frustrating. I am not sure what the best way is to solve this in general as it will very much depend on the exact nature of the game and the player, but it is certainly something to take into consideration. If your game is specifically hard maybe having multiple systems, some with an amount of privacy may eliminate the problem.

  1. Could your game disguise the computer and screen, can you hide the familiar technology in cabinets, tables or other bespoke creations?

It is a big challenge but sometimes it is just a little dull seeing rows of computers lined up showing games. I know it makes life and set-up easier but it lacks a little of the potential magic of games. There is potential, given enough budget, time and effort to make bespoke cabinets and tables to hide the hardware in. Instead of mounting screens on walls, they could be behind cutout windows in false walls, giving a flush neat appearance. Instead of keyboards and standard control pads their could be mounted and bespoke controllers. This I admit is a luxury but I think it would help people focus on the games and design rather than the technology used.

  1. What is the purpose of the game, is it advertising itself or is it something that only exists to be exhibited?

Whether the game you are exhibiting is a short demo of a larger game, a full demo for something you wish to sell or something designed specifically for that exhibition the above notions should be considered and potentially embedded into the game. You can design these elements into the fabric of the game itself or you can add a coat of exhibition veneer to an existing game. To make the games exhibition friendly will definitely require more work but it will give the player an experience greater than something they could achieve at home just downloading a demo.

Optisocubes – 30 days later and a Curious Event


Around thirty days ago, I uploaded optisocubes onto (@itchio), ‘an open marketplace for independent game creators’.

As per usual, I posted the link on facebook and twitter, and wrote a little about it on here. The first day, it was pretty clear that a handful of my close friends had taken a look at the game. However, on the second day I found, much to my surprise, that the game had be put on the latest featured games list, on their front page.

Screen Shot 2015-06-05 at 17.04.33

My views for that day reached 189, far greater than my previous two accessible games FoxStar and Bright:Knight:Kite:Fight, to be honest I was pretty pleased and excited. My game got a small number of nice responses on twitter from people I had no connection to.

Screen Shot 2015-06-05 at 11.04.41

Over the next couple of days, things generally calmed down, I was averaging around 40 views a day with a few peaks above 50 and some lows of around 20. All relatively good I thought. Comments came in about the game slowly (twitter search: optisocubes), three people sent me the amount of moves it took for them to complete it, so I at least know some people managed to finish it. I also sorted some minor issues with the games, animations and making sure it worked in most browsers.

One major improvement I made to the game was to make it playable on mobile devices using swipe controls, at the loss of being able to save your progress and come back to play it. This was the first time I had implemented touch controls on one of my games and it was really nice to be able to show people the game on my phone, even if it was only through the browser and not an app.

Being relatively pleased with how the game had been received I planned to write a post about it, which would have looked similar to what is above, however something strange started to happen.

Yesterday (2 July), just around lunch time I decided to check how many people had been viewing the game, and it was about 150, almost as high as the first day had it in their featured game list. Then I refreshed and it crept up by another 10. After I got back from lunch it kept getting higher. So much so, that I thought there was clearly something wrong with the data. There was no clear indication where these views were coming from. I could not find anything on twitter or through google which gave me any clue. By the end of the night my views chart looked like this:

Screen Shot 2015-07-03 at 00.57.26

There were a total of 1267 views for that day, I still presumed there was some sort of fault. After a little bit of rummaging online I think I found what caused the peak. I managed to find a link to a daily news letter from EmeraldStreet (@EmeraldStreet), which you can read in full here.

Screen Shot 2015-07-03 at 00.25.28

They posted a little section about the game in their In Other News section:

Screen Shot 2015-07-03 at 00.20.36


Somewhere on our travels through the internet we came across a clever game designed by first year students of game art at the University of Auckland. To play Optisocubes, press the key named at the top of the screen to guide the cube onto the blue highlighted square. After you hit the fourth level things start getting trickier. Hint – try changing your perspective on things (think about it being upside-down).

From looking at their twitter and facebook accounts it is apparent that they have a large enough readership to account for that days exceptionally high number of views. They have also written some pretty nice words about the game, so at least someone at their office appears to have enjoyed it.

but hang on one minute…

“designed by first year students of game art at the University of Auckland”

(Please read the following in a calm tone, I’m not angry just confused) I assure you that this game was not design by first year students of game art at the University of Auckland. It was designed and made by me. It actually really sucks to have your hard work and effort credited to someone else, something I have not really experienced before. I do not think it would take much of a look on google to find out who the game creator was, it is not some hidden secret.

Additionally there does not seem (I may be wrong) to be a game arts course at the University of Auckland, there is a minor course titled Game and Play Design at Auckland University of Technology. This information just makes the whole thing all the stranger. I cannot fathom why the game has been credited to a fictional course. This accreditation must have originated somewhere, but I doubt I’ll ever know where.

I guess these things happen all the time, some sort of loss of communication at some point, not that it really excuses it, just always be wary of everything you read it’s most likely written by fallible people. I’ve tried to contact EmeraldStreet via twitter to correct them, but so far have had no response, which is a bit of a shame, I hold no grudge just want to help correct their misinformation, I’m genuinely pleased they decided to include the game in the news letter.

Edit: EmeraldStreet have since, retweeted the link with me credited, thank you to them for their understanding.

In the end some more people had a chance to look at and play my game, who may not have had any reason to come across it on their usual trawls through the internet, and that is always a good thing.

If you have not had a chance to play optisocubes yet, why not have a play.



Play Optisocubes

I’ve just finished (or at least made publicly available) my next game, optisocubes.

This idea started when I saw a sticker on a friend’s skateboard, it was an optical illusion where two isometric cubes drawn on top of each other can appear to be both solid and hollow. It looked a little like this:


From there I started playing with drawing simple isometric shapes, and trying to get a cube to rotate and animate.

As you can see my first efforts where not perfect. The cube appears to distort and change shape when it rotates.

After reading up a little more on isometric game art and having another think about how I handled my shapes, I managed to improve the rotation some more and started on the between level animations.

From here it was a matter of designing the levels and making tweaks.

Early feedback I got from Zhan (@ZhanCat) helped me balance the early levels, really slowing them down to ease players into the control scheme and the methods for solving the puzzles.

I got some really useful control feedback from Aubrey (@HilariousCow) . You’ll notice if you tap the movement button the cube will rotate back to its starting position. This allows the player the change their mind if they press the wrong button.

I took the game to a London Indie Pub meet, where a few people gave the game a go. I think I’ve definitely found it’s not for everyone. Some people can’t see their way around the optical illusion as well as others. This was even with the additional gradients I added to give a greater perception of depth:

I really go bugged down designing the levels. My method was to generate random patterns and then try to move round the cubes in interesting ways. Once I got them to a specific point, I then put the targets there and attempted to level again to see how difficult it was.

Having to go over the levels again and again to test them was not the most exciting, but it’s interesting to see that there are still a couple of the later levels that I have to re-workout how to solve.

The final piece of feedback I implemented was allowing the game to keep track of the players progress. This means that players can leave the game and come back without feeling they have to do everything all over again.

If you do try it, let me know, I’d love to hear some feedback. Also if you manage to finish it send me a screen shot, I’m interested to see how many moves it takes.

Play the game here.

Tweet #optisocubes