Hello! I studied Computer Science, and live in Bath. I write code, design games, and occasionally tweet.
Hello! I studied Computer Science, and live in Bath. I write code, design games, and occasionally tweet.

Posts about Games Other Categories

Hack Automata Oct. 17, 2019 in Csharp, Games, Unity

Hack Automata

Tittle-Tattle Town Mar. 3, 2019 in Games, Rules, Text

Tittle-Tattle Town is a game where players travel around a small game board graph, and gossip about other players. Each player has a small deck of identically-backed cards, one for each player, and a crib sheet. Start on your starting tile, and collect two gossip tokens.

On your turn, roll the dice, and move up to that many spaces. If you can move you must move. If you land on an occupied space, you must tattle with one person of your choosing on that space.

Tattling: Briefly talk to another player, then secretly choose one of your player cards. Reveal simultaneously. If you…

Continue Reading...

Bring the Light Oct. 7, 2018 in Csharp, Games, Text, Unity

I teased with an idea, and here is a very basic demo of it complete and released. Just a warning, it runs poorly, looks bad, and isn’t fun to play. Enjoy!

Bring the Light

On a more serious note, while this is not the result I wanted I have definitely learned, or at least re-learned a few things. Looking over it, a project like this is likely too big for me, at my current skill level, with the short amount of time I gave myself.

Continue Reading...

How to Play: Box, Reverse, and Stratego Chess Sep. 28, 2018 in Games, Rules, Text

Box Chess!

Not to be confused with chess boxing, although feel free to play box chess boxing. Box chess is a new, dumb, derivative, variant of chess that we almost certainly reinvented down at the pub on a Friday night. To play take a standard chessboard. No piece is allowed to enter or pass through c3-c6, d3, d6, e3, e6, or f3-f6. The knight however can jump over the spaces and land in the center two by two square. It was fun, and strange to play. If bishops feel to week swap the blocked spaces for c4-c5, d3, d6, e3, e6, and f4-f5 to form a ring instead.

Reverse Chess!

Reverse chess is quick, simple, and deadly. Start the game with the row of pawns swapped with the back row. That is it. Unlike a regular game of chess which starts with a slow (relatively) ramp up reverse chess is action packed from the beginning. Every piece is at risk and you are one move away from being checked. I also suspect that this dumb perversion of chess could be solvable, or the start at least be optimised. What is the best first move, take a piece or check? I do not know!

Stratego Chess!

Stratego Chess is chess, played on a Stratego-like grid. The squares d2-d3, d6-d7, e2-e3, and e6-e7 are blocked out and no piece, no even the knight can enter. Unlike Stratego the pieces are not hidden, it is a mix between the two.

Untitled Unity Shader Experiments Jun. 2, 2018 in Games

Untitled Game

One Weekend, Two Hackathons Jan. 28, 2018 in Competitions, Games, London, Photos, Toys

This weekend, I participated in two hackathons. On Friday afternoon I took part in the Bloomberg CodeCon Grand Finals (again). Then in the evening everyone everyone went to Swingers Golf Bar. On Saturday morning I explored the city, swinging by the Tate Modern just before I left. Image courtesy Bloomberg.

Bloomberg London HQ SnowDrift

Then on Saturday evening and Sunday morning I created a game for the Southampton Game Jam, the theme was transmission. Normally you have 48 hours, but I was lucky to even have 20. So I got to work, and created SnowDrift, a classic 2D platformer, using raw JavaScript no frameworks. Click on the image below to play in your browser. Overall, the weekend was busy, but fascinating. I really enjoyed it.

The Unofficial Stack Exchange Puzzle Book Jan. 20, 2018 in Games, Text

After recent browsing, I had the idea to convert the Puzzling Stack Exchange into a book. Overall, the project was a success, however maths is currently not rendered as such. The book contains the top 100 questions and answers ever submitted to the site, formatted nicely to fit into a small A5 book(let).

I would like to thank the Puzzling Stack Exchange community for writing the puzzles, Stack Exchange for providing the data, and creativecommons.org for making this possible. Like the puzzles within, the book is licensed under the CC BY-SA 3.0 license. The book was created using the Stack Exchange Data Explorer to gather data, Python to parse and structure the data, and Pandoc to typeset as PDF. And thank you, the reader for reading this “book”. I hope you enjoy the puzzles. If you wish to contribute to this book, it can be found on my github.

Download and happy puzzling!

How to play Cheat, Sh*thead, and Cheathead Jan. 9, 2018 in Games, Rules, Text

Today I was playing a rather interesting variation of Cheat and Sh*thead with a group of friends, and thought it be worth sharing. But before doing so, I will fill you in on the rules of both games, for context.


Setup: Shuffling a deck of cards and deal three to each player, leaving the pile in the centre of the table.

Gameplay: Players take it in turns to announce and play face down one or more cards of higher, lower, or equal value. If at any time a player suspects that the previous player cheated, they can loudly call CHEAT. All cards the player placed by that player are flipped. If the player has cheated, they pick up all of the cards, otherwise the accuser picks up all of the cards. The next player is whoever does not pick up cards. A player cannot call cheat on another if any cards have been placed atop of theirs.

Scoring: Once one player has placed all of their cards, a victor is crowned, and the game is over. If desired, count the number in each players hands to determine who came second, third, and so on.

Notes: The speed of the game depends on the group, but the faster they play, the easier it is to cheat. Unless the group is a hundred percent certain that a player is not cheating, it is worth accusing them after they place their final card. If desired, the game can continue after a player wins. However as players gather more and more cards, the game slows and lies become harder.


Setup: The deck with Jokers is shuffled, and each player is given three face down cards. Then, each player is given an additional six cards, three of which much be placed face up atop their face down cards. Then the pile is placed in the centre of the table. The player with the greatest number of lowest value cards (excluding magic cards) in their hand starts. If multiple players draw, then the player who is first clockwise of the dealer starts.

Gameplay: Each player takes turns playing cards from their hands, face ups, or face downs - in that order. Cards must be of higher (Ace high), or equal value, but they must all be of the same value. After playing, a player draws back up to three cards if possible. Some cards are Magic and have special actions as denoted in the table below.

  • If four of the same value are played, then the pile is burnt and the current player get another turn. Jokers cannot be burnt in this manner.
  • If a player cannot legally place down cards, then they forfeit their turn and pick up the centre pile. Unless specified otherwise, magic cards can always be placed atop any other card, regardless of value.

The winner of the game is the first player to play all of their cards. However, the game can continue until all players bar one have played all of their cards.

Magic Cards: 2, Reset the current value. 7, Invisible, the next player must play equal or higher than the previous card. 8, Play Low, the next player must play lower than the previous card. 10, Burn, the pile is discarded and the player gets another turn. King, Change the direction of play. Joker, The next player cannot play a magic card.

Notes: Sh*thead can be played with any number of face down cards, as long as there are enough cards. Just ensure that each player is dealt that number plus three before choosing face up cards. If desired, players can choose different magic cards or different magic actions.


An amalgamation of both games. It is played like Sh*thead but instead of playing cards face up, they are placed face down so players must announce their actions. Players can call CHEAT at any time to force a check. As an optional rule, Jokers can be used as wild cards instead of magic cards for added confusion.

How to play ███ Jul. 9, 2017 in Games, Rules, Text

███ is a great game. ███ demands that you play it. ███ can be played with any deck of cards from any game, assuming it has suits and values. For example, ███ works well when played with Star Realms cards, and ███ could work well with Magic, or even scraps of paper.


  • Deal out a number of cards to each player, the number doesn’t really matter in ███.
  • Players take turns placing down a card in the centre that is either higher or lower value and of the same suite, or the same value and any suite. This pleases ███.
  • If a player cannot play they must pick up. They have failed ███.
  • Shuffle the deck when it runs out. ███ must continue.
  • When a players hand empties, it is their turn to think of a new simple, secret rule. Contradictions please ███.
  • Do not explain this rule.
  • Enforce the rule viciously.
  • Do not mention the great ███.
  • Do not criticise ███.
  • Do not explain ███.
  • Do not argue about ███.
  • Do not make a mistake playing ███.
  • Do not fail ███.

Any mistake while playing ███ requires punishment, that player must pick up an extra card.

Designing with Unity: Last the Night May. 19, 2017 in Csharp, Games, Unity, University

Last the Night

Last The Night is a procedurally generated first person survival game in which the player fights for their life after having crash landed on a mysterious, unknown planet. Armed with only a pistol, the player must fight off the various monsters inhabiting the planet, and only once the sun rises will they be safe.

With seed based world generation, there are literally millions of planets to explore with no two being the same, and with the addition of Easy, Medium and Hard difficulties, advanced players can challenge themselves whilst beginners can get a feel for the game. Last The Night features 17 different types of monsters, keeping the player guessing at all times.

A student game created at the University of Southampton by Matthew Consterdine and Ed Baker. Do you think you’re brave enough to last the night?

Designing with Unity: Let it Burn May. 18, 2017 in Csharp, Games, Unity, University

Let it burn!

Using your flame-thrower, wrack up points and burn the forest down. Single player, play with a mouse/keyboard or Xbox 360 controller. A student game created at the University of Southampton during the Southampton Code Dojo. Burn down everything!.

Designing with Unity: Littlest Billy-Goat May. 17, 2017 in Csharp, Games, Unity, University

Littlest Billy-Goat

A fully narrated re-telling of the fairy tale classic. Single player, play with a mouse/keyboard or Xbox 360 controller. A student game created at the University of Southampton by Matthew Consterdine and Jeff Tomband. Download and play.

Designing with Unity: Planet Deathmatch May. 16, 2017 in Csharp, Games, Unity, University

Having previously created games in my spare time and in competitions, I chose to team up with three different partners to create games focusing on gameplay, narrative experiences, and innovative technology using Unity. It was hard, took a lot of work, but in the end it was one of the most satisfying modules I ever took at University. Shout out to Rikki Prince, Dave Millard, and Tom for running such and excellent module.

Planet Deathmatch

A fast paced, Quake inspired, local multi-player, little planet deathmatch infinite arena shooter. Hone your skills, then compete against your friends to see who can dominate the playing field. Supports up to 4 player split-screen, bring an Xbox controller. A student game created at the University of Southampton by Matthew Consterdine and Ollie Steptoe.

Featuring a number of classic weapons:

  • Shotgun: The short to medium range wild card, capable of one shotting your target, or missing entirely.
  • Launcher: Fires explosive rockets, knocking back all the enemies in your way. Just be careful not to get caught in the blast.
  • Pistol: Are your opponents not on fire? Well, that’s where the pistol comes in, it fires incendiary rounds igniting targets.
  • Axe: A visceral weapon that can end your opponent in a couple of hits.

Well, what are you waiting for? Play today!

Dial Tone May. 11, 2017 in Csharp, Games, Unity

Dial Tone

A Paper’s-Please style telephony simulation created at the Southampton Game Jam. Play here.

NES Emulator Jun. 14, 2016 in Games, Java, Simulations


My (mostly failed) attempt at creating a NES Emulator from scratch.

How to play Grabble Jan. 15, 2016 in Games, Rules, Text

Grabble is a fast-paced word game where players take it in turns to flip over tiles, form words, and steal words from other players. I was taught the game by Samson Danziger, and I am writing this as from a brief search, there is little information on it.


If missing a set of Scrabble tiles, any similar set of letter tiles will do, or they can bought for a few quid from many online retailers.

  1. Every player grabs a scrabble tile from the bag, highest value starts, repeat until one victor.
  2. Spread a set of scrabble tiles, one layer thick on a table.
  3. Turn each tile over so it is face down.

It is recommended that a dot, question mark, or asterisk is added using a permanent marker to one face of each wild-card to reduce confusion when turned over.


Players turn over tiles one at a time trying to form words at least three tiles long, extend existing words, or steal words from an opposing player. When successful, that player is now the next player to turn over a tile.

  1. Words must always be at least three tiles long. Shorter words do not count.
  2. Words can be extended by adding tiles from the centre, combining with other words, or both. When combining words there cannot be any tiles ‘left over’, all tiles must make their way into the new word.
  3. Words can be stolen (or protected) by rearranging their tiles into a new order. For example if a player claims T E A, another player can claim E A T. If the first player is clever they can then claim A T E to claim it back.

The game ends when all tiles are flipped and players agree that no more words can be improved or rearranged. This should not take longer than a couple of minutes. Players can enter and exit the game at any time, simply watch the game until they can get a word of their own. If they wish to leave, words remain in play and other players can steal the words when possible.

Continue Reading...

airshot.mp4 Apr. 22, 2015 in Games, Videos

airshot.mp4 airshot.mp4

Add me on Steam

(We've) Lost the Game! Jan. 29, 2015 in Competitions, Games, Java

This weekend Andrew Barrett-Sprot, Andrew Lewis, Mike Jewell, Ollie Steptoe, and me teamed up to make (We’ve) Lost the Game!, and entry for Global Game Jam 2015. After brainstorming, we decided to create a 2d survival game using Java and Slick2D. Overall, we’re pretty happy with it. Click to download via itch.io.

(We've) Lost the Game!

Electronic High/Low Game Mar. 26, 2014 in 6thform, Assembly, Electronics, Games, Text

To start the game, the player will press either button which draws the starting card; once drawn, the player will need to choose if they think the next card will be higher or lower than the current card and press the corresponding button. If they are right the green LED will light up, if not the red LED will light up and the buzzer will sound.

Image 1 Image 2

Continue Reading...

Creating Games using C++ and SFML Dec. 10, 2013 in 6thform, Cpp, Games, Simulations

This year I took part in the video game development club at sixth form. Here we were taught how to use C++ and SFML to make games from scratch. While not the greatest, I thought they were worth sharing anyway. Enjoy!



Shoot stuff, in space! Visit on GitHub

Side Scroller

Side Scroller

Shoot stuff, to the side! Visit on GitHub.

Game of Life

Game of Life

Conway’s classic game of life. Visit on GitHub.

Farewell Minecraft Oct. 2, 2013 in Games, Photos

It is with a heavy heart, that I must wish goodbye to my Minecraft server. A declining player-base, low staff interest, and lack of funds have lead to their final closure. It is sad, but everything has an end, and the time is now.

Continue reading for a gallery of screenshots, most taken in multiplayer.

Continue Reading...

How to play Sevens and its Variants Jul. 17, 2013 in Games, Rules, Text

Shuffle a deck of playing cards without jokers, and deal out between players. All of the cards must be dealt out even if certain players have additional cards. Players then take it it turns placing down cards. Ace is high. The seven of each suite must be placed down first, and then adjacent numbers of that suite can be placed above and below it. If a player cannot play then the game skips to the next player. The game is over when a player places all of their cards, but can continue until all of the cards are placed.


Cheating Sevens

With the exception of seven, cards are placed face down, not face up, with players announcing the card. Players can lie so at any point any player can call CHEAT on the last card. It is turned over and if the accuser is wrong they simply skip their next turn. However, if they are right the next card is turned to check, and so on until either seven is reached, or a correct card is found. The accused then picks up all of the cards and play resumes.

Concurrent Sevens

Two players opposite each other play simultaneously. On their turn, they pick a card and place it face down in front of them. Concurrently, they flip and the card closest to seven is placed, with the other card returning to their hands.

Infinite Sevens

Infinite sevens is played with at least two decks of playing cards. Play is identical, except that Ace is simultaneously both high and low. This allows cards to wrap around crazily.

Scratch Pac-Man Jul. 21, 2009 in Games

I created Pac-Man in Scratch.

Start Screen Maze

Starting the game. The maze. It changes as you clear screens.

Continue Reading...