2016 Update

Hello one and all!

It’s been a long time since the last post and I felt it would be a great opportunity to update you all on myself, DevPact, and Virtu’s current project.

Recently I moved to Berlin and I have been working at YAGER since January. It’s my first ever AAA gig, and it’s been wonderful. The different styles of almost everything based on the size of the project is really surprising.


Our major project at the moment is Dreadnought, a class-based space arena shooter. My responsibilities revolve around everything ‘Live Design’. Balancing, feedback collection and response, tweaking, analyzing, and designing existing and new features for a game that’s going to be running 24/7 for many, many years.


Much of my previous experience at Substantial Games and EA Playfish revolved around this style of game, and I’m looking forward to being involved with our community and encouraging a more ‘open dev’ approach to AAA F2P PC services. Exciting stuff!

An interesting side-note is that every game company I’ve worked at has been completely different… Facebook games, Casual Mobile games, Hardcore Mobile games, and Hardcore PC games. I’m looking forward to entering this extremely different sector and deciding which type of company I prefer and which type of games I want to design.


Myself and Chris left China at a similar time and while we are still in touch, there’s definitely a lot less peer-pressure to keep up with DevPact’s original posting and content frequency. As of now I’m assuming it will linger around untouched til the end of time. All content I would be producing there I will now just be doing on here, my original site!



Having such an extended break between pausing Ventura, starting a new project, leaving Berlin, then starting another new project has changed things drastically for Virtu and my own personal independent development.

Ventura is near and dear to my heart, but multiplayer is something I’ll have a very hard time sorting out and the game itself becomes extremely complicated from a coding standpoint when you take into account that every Hero has 4 unique abilities. Before it went on hiatus, I was somewhat building an engine to enable me to bust out loads of possible Ventura heroes… but as I came back to look at the project a couple of months later, it dawned on me that the work needed to make Ventura a mildly exciting game was humongous. Like most multiplayer strategy games, it’s designed holistically and building a vertical slice of content in order to get feedback would take a very, very long time.

Welcome back to Haft

Since arriving in Berlin I’ve started a new project with a new mentality and new set of goals. Before I was setting up Development Pacts with my friends to force me to work hard. I was hoping to enter IGF 2016 and ensure that every second of my part-time indie dev was working towards a greater goal. I hated it. I was beginning to detest the whole idea of indie game development so I’ve taken a step back and calmed down.

My latest project is being built very casually. I’m not super stressed about whether the scope is too large or not. I don’t care if it’s commercially viable. I’m not aiming to blow peoples’ minds with an intense multiplayer combat experience.

I’ve got a simple question that I want to answer… how would a Turn-Based RPG work in a Civilization style 4X feature set?

It may not work at all. It may be amazingly innovative… all I care about right now is answering that question. I’m not going to get stressed about it, I’m not going to beat myself up, I’m not going to hype up the idea that I’m fighting for awards or all that crap that’s way too far out of my reach at this point.

It’s liberating!

This project is being called ‘Fellowship’ at this point. When I feel like sitting down and explaining what the hell it is, I’ll make another post on here and set up the Fellowship category.

The only hint I’m giving about Project Fellowship

For now I’m just enjoying life, enjoying work, and enjoying tinkering around in Game Maker.

Since last posting, I also entered Ludum Dare 34 with the best game I’ve ever built myself; Slum Runner. In a way it saved my indie-dev life.


I’m insanely proud of it so please give it a spin if you see this and let me know what you think.

Redlight – Squire Power (Ludum Dare 32)

This is Post 1 discussing my project greenlight process. To add a little context, I’ve been working on locking down a perfect project for IGF 2016 submission. These posts will discuss a project and why I’ve red-lighted it. At the end, I’ll make a post about why I’ve greenlit Ventura.


Squire Power / Ludum Dare 32

I never really discussed my failed Ludum Dare 32 project for a number of reasons. The first is that I was upset about it! Ludum Dare only happens 4 times a year, and I’ve put a lot of value into it as a determinant of how well I’m doing as a Game Designer. It creates a beautiful level playing field, with integrated feedback and scoring systems that I can use to judge how good I am on a given day (or weekend). My hope is for every project to do better than the last.

For this Ludum Dare, I picked a project I could build quite easily with regards to programming. It used a lot of systems I’d actually just built in the Project BR prototype; so I wasn’t worried about technical scope. What I did wrong was art. For some reason I decided that my game needed a fully animated combatant and I spent about 1/3 of my entire time creating and integrating animations. Massive, massive fail… especially as that’s exactly what I did wrong for Global Game Jam!

My 'workings' in an image editor
My initial ‘workings’ in an image editor

So what is Squire Power?

Squire Power is an interesting hybrid between a tower defense, akin to Swords & Soldiers, and an inventory management game. You are the Squire for ‘The Immortal’, a 1000 year old warrior who protects the land from the forces of evil.

As you can see on the screen above, the centre stage is dedicated to a Battle Window. The Immortal will stand in the centre, as monsters slowly creep towards her from either side of the screen. If a monster moves into her range, The Immortal will attack it. Monsters die in one hit, but only if The Immortal is holding the correct Weapon.

The Immortal's idle frames
The Immortal’s idle frames


This is where you come in. Monsters are of a certain affinity, determining which weapon will kill them if they enter The Immortal’s attack range. The numbered boxes surrounding the Battle Window are your Inventory Slots. Your job is to pick up certain items from inside the boxes and place them in the Red or Blue slots; which represent The Immortal’s left and right hands. If The Immortal has the right weapon for the nearest monster when it comes into range, she will slay it. If she has the wrong weapon, her attack will have no effect. If a monster reaches her hitbox, she will take damage.

At its very basic level, Squire Power is about judging which monsters will reach The Immortal first and then planning your inventory so you can switch weapons in time to react to the spawning enemies. For Ludum Dare I had this basic mechanic done and dusted; 3 weapon types, 3 monster types.

Idle frames for a single weapon
Idle frames for a single weapon
Idle frames for dual wielding
Idle frames for dual wielding

The second mechanic is the Anger/Intoxication meters. As an Immortal, your companion can’t actually die. When a monster hits her, she just gets angry. The premise of the game is that The Immortal is a horribly traumatized, violently angry, alcoholic. You’re not supposed to like this character at the beginning. She is heralded as this glorious hero but when you meet her, she’s abusive and cruel.

When her Anger meter reaches 100, the game is over… you’re fired. The main technique for reducing her rage is to supply her with Wine, whenever she requests it. During combat, The Immortal will occasionally yell at you to provide her with Wine. To give her Wine, you must remove a Weapon from one of her hands and place the Wine item in that slot before the timer runs out. If you fail, her Anger increases. If you succeed, it decreases. At its simplest level, providing Wine leaves The Immortal open to attack and gives the player with a hectic scramble to make sure they get that Wine in her hands before the timer is over.

1-handed Attack Frames
1-handed Attack Frames
2-handed Attack frames
2-handed Attack frames

You should be a good Squire and constantly give her Wine, right? Then The Immortal will always be happy and you won’t get fired. WRONG!

To counteract liberal alcohol abuse, The Immortal also has an Intoxication meter. When this reaches 100, she will be disabled for around 5 seconds in order to puke. Yes, she vomits mid-battle. Your job is to carefully decide when it is a good time to give her Wine and when it is a good time to take an Anger hit.

This mechanic I had done for Ludum Dare.

So why didn’t I finish?

This is a really important question. I had the mechanics, and I had the animations. Why didn’t I just submit the little content I had? I guess I have no excuse.

At the time I felt pretty bad. I realized I wasn’t ever going to make the 48 hour Compo submission (which is the reason I do Ludum Dare). I realized that the simple mechanics needed more to them to really be a decent game. I spent a lot of time building an augmentation system, where you could apply potions to weapons to grant them new capabilities… it failed. I just couldn’t get it to work.

Puking animation!
Puking animation!

Another reason I just dropped the game jam was because I needed to build a narrative for this project. Having an abusive, violent, alcoholic anti-hero requires some context… I don’t want to create some stereotypical shallow bullshit about a traumatised warrior. We have enough of that. I wanted each level to have a short amount of story and dialogue, developing your relationship with The Immortal and providing important backstory that helps you understand her plight. I want her to grow as a character and not just be a pathetic caricature of a serious issue (Alcoholism).

I didn’t have time for this. I didn’t have time to build the dialogue UI feature, I didn’t have time to make enough hand-crafted levels, I didn’t have time to build those additional gameplay features that would give the game some meat. If I didn’t ‘waste’ time on animation, I would have had this stuff in.

I didn’t want to release a demo for Ludum Dare, I wanted to release a whole game; much like I did for Silian Rail.

Final Product (Idle)
Final Product (Idle)


On Squire Power’s IGF Candidacy

I am still very much enthralled with the concept of Squire Power, so I kept it as a possible IGF project. With that additional time, I could develop those interesting inventory management mechanics (more than just dragging and dropping the right weapons like ‘Simon Says’). With that additional time, I could develop a nuanced story that respectfully deals with addiction and tells a fascinating gritty fantasy story.

So why the red light?

  • Redlight Reason #1: I’m an awful writer
    I’ve been trying to improve my writing, and I joined Storium in order to practice, but I’m just not ready for it. I don’t have the skill to take on these complex moral issues. The narrative is such an important part of the game concept, and why I find it interesting, so I can’t just sacrifice it.
  • Redlight Reason #2: Requires a lot more prototyping to prove it’s not a gimmick
    In my head, Squire Power’s potential mechanics are very interesting. Imagine having to repair items, craft potions, and build tools during battle that lead into more unique items… I think these would all work quite well. But it’s such a weird concept of a game that I would really need to spend a good 2-weeks to a month on just messing around with mechanics. I could create something amazing, I’m sure, but it’s still a big risk and I can’t take on a project that’s ‘cancellable’ at this stage in The Plan
  • Redlight Reason #3: The game design isn’t turning me on.
    I do really like the idea of Squire Power but mechanically it’s just not that interesting to me. I worry that much of the game will end up like a Puzzle to solve… with level designs at the harder difficulties relying on a single ‘best way to play’. That isn’t the type of game I want to make. I hate playing the ‘default’ way, I hate cookie cutter playstyles. There are probably a myriad of ways to solve this, but right now I need low hanging fruit and this ain’t it.
Final Product (Attacking)
Final Product (Attacking)

So that’s why Squire Power is not The Game for IGF. I’ll definitely keep it on the back burners for a future project, but for now… The Immortal is dead!

Next time I’ll talk about Project BR.

Public Domain Jam + Candidate 3

It’s been a while, ladies and gents!

Firstly a quick update on Candidate 2; PA4X.

I’m quite pleased with how accessible the coding is for a 4X game. As I’m not delving into AI, it’s all a lot of UI systems and its turn based nature makes bug fixing and general logic so much easier! Therefore it’s very buildable.

However the problem is with design, iteration, and a massively convoluted assessment status. Remember why I cancelled Uffizi and Bard Life? Those games took too long to find the fun. PA4X has the same problem. It will take me weeks and months of design before it’s at a stage where players can say they enjoy the game. On top of that, it’s also a lot trickier to balance and design systems for a competitive 4X than a city-builder or idle game, so it just doesn’t make much sense to continue with it at this stage of The Plan.

No greenlight for this game, I’m afraid!


So where am I now?

I’m 11 days before my deadline for The Plan. The Plan was created to help me find a candidate for IGF’s 2015 submission in October. June 1st is when I need to begin working on ‘The Game’. Here are the prototypes I have built during The Plan;

  • Project BR: A multiplayer survival deathmatch game where you’re given a procedurally generated character and must complete dramatic quests while attempting to survive. Status: Needs an iteration loop.
  • Grid Optimizer: A simple puzzle game based on optimizing grids. Status: Ready for initial playtests
  • Ludum Dare 32 Followup: I didn’t discuss this at all on the blog, but Ludum Dare 32 did give me a good candidate game that’s worth investigating. Status: Needs an iteration loop.
  • PA4X: See above. Status: Red Light
  • Candidate 3: See below!

As you can see, Project BR, Grid Optimizer and Ludum Dare 32 are all technically in the running.

I have very mixed personal opinions about all of them, which I’ll get into on June 1st. Nonetheless, I still want another candidate game as I’m not satisfied with this selection.


Public Domain Jam / Candidate 3

My final shot at a completely blue sky idea before The Plan ends is Public Domain Jam.

Candidate 3 is a game which I want to get barely playable for the Public Domain Jam deadline, but it is also much more than just a fire-and-forget Game Jam project. I’m aiming for two birds with one stone. A solid Game Jam entry as well as an IGF Candidate. Funnily enough, Public Domain Jam has brought me full circle. I’m back on Machiavelli for this one!

Remember this guy?
Remember this guy?


Ventura is the codename for this project, and it’s back to the Renaissance with me. Linking to Public Domain Jam’s goal of being inspired by publicly available written works, I’m using Machiavelli’s writings on the use of mercenaries in Renaissance Italy as the inspiration for this new game project.

Ventura is extremely exciting to me as it brings together so many things I find intensely interesting in the field of Game Design.

  • It is a medium-term session multiplayer contest, akin to a Dota or League of Legends. I want the game to last around 30-40 minutes.
  • It involves competing with others, but not just through combat. Economy and strategic development decisions play a massive part.
  • In Ventura you are one of 4 mercenary captains who is tasked with protecting the City-States of Italy from external threats. You compete with others to fulfil quests and contracts, in the same world.
  • It’s similar to an MMO RPG quest region, but the core game is built around the idea of making it competitive. You compete for fortune, you compete to find the greatest recruits, you compete to acquire the most powerful loot. Everything that spawns in the game is limited.
  • When PvE is done, towards the end of the match, PvP begins and you take all that preparation and strategy into a fight to prove who is the strongest Capitano di Ventura.

Like Dota, where you experience an entire RPG in a single session, Ventura gives you a similar experience; but as a distilled MMORPG.

Reading it back now, it sounds crazily ambitious, but I believe I have a lot of very simple-to-build systems that become interesting based on the context of competitive play and a shared world. I’ve also got a combat system in my head that will be very entertaining. Then again, most of it is still in my head at this point… and that’s always too early of a stage to judge viability.

From now until June 1st I will be working on Ventura. Unlike with PA4X, I want to bring back the GSD and share the dev diary style posts I was doing previously.

Then, for better or for worse, I’m picking a game project that’s getting submitted to IGF 2015. Scary times, but unbelievably exciting too!

Time’s Up! Plus a Candidate 2 switcharoo!

If you’ve been following the blog, you’ll know that my latest plan is to spend 2 weeks each on two separate candidate games before I really start trying to evaluate which game I need to focus on for IGF 2016. The 504 hours from June 1st > October 31st needs to have as little wiggle-room as possible.

My current project is Project BR, a procedurally generated multiplayer survival deathmatch game. I started proper work on it over 3 weeks ago. The goal was to create a proof of concept, with all core mechanics in the game. 50% past my deadline and I’ve got the mechanics in, but it’s still not ready. After discussions with many friends and peers, I’ve realized that making a single-player demo of the concepts just isn’t going to do the idea justice. I will need that LAN network code at least, which I’ve been told is tricky to implement but not as scary as I assumed.

There’s a point when I just have to say “enough is enough” and start moving on to another project. I’m cheating at the moment! Therefore, Project BR‘s first phase of development; iteration 1, is now officially complete.

Here’s my final GSD;

GSD - 24th April
GSD – 24th April

Most of the last phase of Project BR, the naughty extra week (!), was implementing more of the ‘demo’ features. These are the features I felt the game must have to stand out and show its true colours.

  • Kids are now generated
    This is the coolest thing in the game. This is the reason why I want to do this project. Every character you play in Project BR is generated based on psychological traits, social relationships with other combatants, and a healthy dose of RNG. These numbers all feed into a large system that determines everything about your character. How fast they run, how quietly they walk, how far they can see, if and when they recognize traps, what and how successfully can they craft items. This is all in now, and it’s brilliant! Every kid is unique.
  • Crafting System
    There is now a crafting UI and crafting system, letting players find various ingredients that they can combine to generate new items. I’ve got all temporary data in at the moment, but the system itself is working

So why is the game not done and I haven’t got a prototype to show? Two issues;

The first is that the Line of Sight system, which is so crucial to the exploration and tone of the game, is currently broken when the map scales to a more realistic size. I have ideas for how to fix it, but this will take time.

The second is that if Network Multiplayer is truly just a 1-2 day job… it’s better for me to actually build it and do a real test, than to work on this shoddy and inaccurate single player demo experience.

This is another week’s worth of work at least, and I’m already 1 week over my time limit. So I’m putting it on hold. Iteration 2 is when I’ll add networked multiplayer and iron out the bugs.

Until around mid-May, I won’t work on Project BR anymore. It’s time to start on Candidate 2.


Candidate 2: Post-Apocalyp—- NO! Puzzle Game!

It gives me a little sadness to announce that my Post-Apocalyptic 4X candidate is going to be pushed back. Project BR was a tough process and I’m a little burnt out with learning really new solutions. I need a quick win and the puzzle game I’ve got on my list of candidates is exactly that. I’ve even built it before in the past!

Candidate 2 is what I’ll refer to as a ‘Grid Optimizer’. I won’t go into massive detail about the game here, since it’s so simple and tiny that I might as well just show you it when it’s ready. Nevertheless, here’s my GSD… and this won’t get much bigger for the entire scope of the project;

GSD - 27th April
GSD – 27th April

Look at that! It’s TINY!

Unlike Project BR, when I finish all of these tasks… the game is basically in Alpha. It’s ready. It can be evaluated and played 99% like it would be in a real product. This is the sort of scope I should be aiming for anyway, so it’s a no brainer to do this project for the next 2 weeks.

Unfortunately from a blogging perspective, things will be a little dry. I’m very well aware of the limitations of casual puzzle games; see the Threes/2048 fiasco. Although it’s a great problem to have, being so successful that everyone clones your game, I don’t want to tempt fate. I want to be in the best possible position in case that best/worst-case scenario happens. Therefore, I’ll need to be a little smarter with showcasing my work online.

I’m hoping that I can keep things interesting here by doing a Ludum Dare post-mortem, which will update you on another potential IGF candidate game.

Project BR: Week 3 + Ludum Dare

This weekend was Ludum Dare and the theme was An Unconventional Weapon.

Despite having a groan-worthy theme, once again, I had an enjoyable weekend… but alas, I did not complete my game. Much like with the Global Game Jam, I spent way too long doing stuff I hadn’t done before (mainly side-on main character art and animation). I didn’t finish. It was sad.

I’m having a lot of serious issues with predicting and managing scope.

Speaking of which, Project BR is continuing for another weekday of mornings. No new features now, but I need to actually turn it into something playable at this point (whereas as the moment it’s a big collection of systems).

I really need to have it done and dusted by Friday, as Sunday is when Candidate 2 begins. I need to gamify Project BR as quickly as possible and get it out there in the hands of friends and family.

End of Year Update! Ember Conflict, Ludum Dare & Virtu

Hey all!

It’s been ages since my last post because I’ve been on holiday… and very busy.

The Ember Conflict is going well and we’re due to release soon, so we’re in super polish mode. If you want some regular updates to the game, click the image below to go to our Twitter.



I also took part in Ludum Dare 31, my 3rd Ludum Dare entry. Overall it’s by far my best entry into the competition, but there’s still a lot of room for improvement. My final score was…

#53 Humor 3.72
#99 Mood 3.61
#121 Fun 3.67
#133 Innovation 3.85
#141 Audio 3.46
#169 Overall 3.65

Here it is if you want to give it a spin (click the image)




I absolutely adore taking part in Ludum Dare and I’m very happy with having a better score than last time (Outdoor was flawed to say the least!). However there’s a lot of room for improvement next time. I have three goals with the next Ludum Dare…

  • Break the top 100 Overall
  • Get a 4 rating in a category
  • Create a narrative experience

I’ve entered 3 of these things now and have yet to break into the top 100. Even though Silian Rail is my most complete and fun game, it has a lot of issues I should have ironed out and could have if I’d learnt the code before. Collision logic was my downfall this time.

A 4 rating is tough to achieve but it’s a sign that I’ve excelled in something. As you can see from the results, I was at #53 with only a 3.72 rating for Humor. Breaking the 4 rating in a category will make me feel that I did a superb job, even if I don’t break the overall top 100.

Finally the narrative experience. Narrative in games is a touchy subject for me. I’m not a great writer and I’ve not been a fan of many game stories in recent times, preferring the user generated narratives of games like Crusader Kings II and Civilization. However I still feel that it’s something that could teach me a lot about what is truly engaging for players. I personally tackle game development as pure systems design but, as I saw with Lullaby, the best reaction I’ve had to a game has been from an immersive hand-crafted linear system. Systemic complexity and flexibility isn’t the only way to create a worthwhile experience.

Eternal Struggle has been on hiatus since around October time and I’ll be getting back to it probably by the end of February at the latest. Despite going for a smaller scope, it has got a ton of systems work for me to build and real life is a serious impediment to development at the moment. Don’t worry though, it’s still in the works

Bard Life is a new project I’ve started that has been partly inspired by an eye opening experience into Idle Games.


One of my fellow Beijing based developers, Tobias Baumann, entered Ludum Dare with Cube Clicker. Cube Clicker is an idle game, where you click a cube and see the numbers go up… investing in various upgrades to unlock higher rates of numbery goodness. It’s definitely not my cup of tea, but after watching the following Extra Credits episode and seeing the reaction to Cube Clicker… I’ve decided to do a quick side project to see if I can make an Idle Game. Systemically it’s extremely simple and should be a breeze to build, so I’ll be working on that for the next few dev days I get before heading back to Eternal Struggle.

Bard Life is a game about being a fantasy bard. You travel the world discovering new towns and songs while gaining fame and fortune. Over time you will unlock new features and mechanics that explain more of the world and increase the complexity. It definitely won’t be pretty, I just want it feature complete with programmer art, but I’ll have it up here as soon as I can.

The next update from me will probably be about the Global Game Jam which I’m taking part in at the Beijing site. It’s my first GGJ and will be an interesting experience compared to the solo jamming of Ludum Dare.

Happy 2015 everyone!