Waves² Alpha 4 Preview and Card Game AI

The “Unstable” branch is no more! Long Live the “Preview” branch!

Since Unstable was originally created for testing the Shipping build of the game (which is now the standard version everybody uses) it has been removed and replaced with a new branch called “Preview” which is going to be used to test upcoming major updates.

Anybody can use the Preview branch and there is no password required. Just be aware that things are far more likely to not work correctly/be balanced/be fun in this version.

To kick everything off the Preview branch has been updated with the first Alpha 4 Preview build.

After many weeks of work the Card Game AI system and Modular game modes tech is in place. From the point of view of the players you won’t see any obvious differences. What you do as a player hasn’t changed AT ALL. The main difference is in how content is authored and how enemies are spawned which I will go over below.

Modular Game Modes

In theory this should be completely invisible but there may be some new bugs so keep an eye out and report anything you see misbehaving on the forums.

This tech allows me to create Game Modes from a selection of Modules (Mods for short) that encapsulate small nuggets of game mechanics; for example the Multiplier Triggers that spawn every time you Level Up is a Game Mod, as is the number of lives you get or if there is a timer.

This was required to achieve the procedurally generated missions in the GRID rework which is coming in Alpha 4. Right now all of the Arcade game modes have been converted over to this system and should all be working exactly the same as before.

Enemy Spawning & Card Game AI

Enemy spawning used to work by having a series of “Behaviors” in a list that defined certain spawning patterns. Every Spawning Tick the system would go through the list in order and execute the first behavior that was allowed to run (various things like player level, player performance, game time and when the behavior was last run went into that decision). This resulted in relatively predictable patterns of behavior that could be relied upon. It was also a PITA to edit and almost impossible to procedurally generate.

If you follow me on Twitter or have been reading the Alpha 4 thread you will have heard me talking about “Card Game AI”. This is the secret to all of the new procedurally generateed content in alpha 4 – in fact I’d argue that where procedurally generated blindly follows an algorthm this system is responsive to what the player is doing and makes decisions so it’s more “Inteligent” generation.

The short version is that there is an AI controlling what enemies spawn and how they spawn and this AI is effectively playing a card game. Every game mode gets 2 Decks; Enemies and Tactics, which have been created by a Designer or later on another AI playing another different Card Game.

During a game the AI will draw cards from each deck, create a hand and play cards from that hand using Mana which is generated by the players performance – play well and the AI gets more Mana to spend, play poorly and it gets less. The AI scores all of it’s cards based on cost, card synergies (certain enemies go better with certain tactics) and personal preference (which can be affected by things like how often a certain enemy type kills you). It then plays those cards and the system executes the Spawning logic they represent using the Enemies they define.

This took ALOT of tweaking to get working right. Making the actual AI to play a card game was relatively easy compared to designing a card game that would exhibit the kind of behaviours I wanted. Since this was all going to be re-used to generate GRID missions and I plan to make use of it in future porjects as well it was worth the investment.

The result is that spawning patterns are less predictable in terms of frequency (due to the random nature of card game draw) but more responsive to player performance (due to the Mana mechanics being used). If you are doing really well the AI will use harder enemies and more dangerous tactics far more frequently than if you are doing badly.

The added benefit is that there is more variety in the spawning than before with some enemies spawning in ways they never used to and the modular nature of deck lists makes it far quicker for me to add enemies and spawn patterns to the game later.


The focus for testing this Preview build is on difficulty. As the spawning has changed pretty dramatically I need feedback on how it has affected difficulty. I suspect it’s gotten a bit harder at the start of a game and isn’t scaling up high enough in the late game but that hypothesis still needs more testing and data which is where you come in.

Don’t just play the Preview branch but alternate between the release and preview branches if you can. Try and make comparisons and report your findings on the forums. As I said earlier NOTHING else has changed in the game except for theese two things and one of those should be completely invisible except for genuine bugs.

I look forwards to seeing your feedback.


Waves² Alpha 4 – What is it?

Alpha 3 has had it’s final patch today bringing the total number of Items up to 36 and thee total number of Item combinations to 46,656 (not counting the ways you can distribute the Upgrade points which I don’t know how to calculate but is immense).
That means I’ve started working on the Alpha 4 update today and wanted you all to know what’s going to be in store.

Now as a quick aside I’d like to mention that there is a backstory of a sort to Waves² it’s just never really been a prominent part of the game. The idea is that the game itself is an operating system used by hackers to navigate Cyberspace. That’s why enemies are called Bugs and Viruses and why every Arena that gets generated expresses it’s seed value as an IP address (that plus they are much shorter and easier to remember than 32bit integers).

In GRID mode you are hired by a Corporation to perform acts of Cyber Espionage and Sabotage on one of their Competitors. It’s completely illegal and if you get caught you get hung out to dry by your benefactors. The GRID itself represents a Mega-Corporations mainframe within which is a Core server you are trying to access, loot and crash.

I’m trying to move the game mechanics and terminology towards expressing this backstory more fully and for that to happen the GRID needs to change.

It’s About Game Modes

Currently there are 5 Game modes both in Arcade and populating the GRID. Authoring a Game Mode is pretty easy from a technical point of view but there is a big difference between creating a Mode that works well in Arcade and a Mode that works well in GRID. In fact I’d argue that none of the Arcade Modes work well in GRID.

GRID is supposed to be about completing objectives rather than chasing high scores, it’s intended for those players who want more of a content driven experience (think Binding of Isaac or Gungeon) rather than those who want a mastery driven one (IE Waves). GRID is also supposed to be about Procedurally generated content and currently isn’t really delivering on that idea.

So here are my goals for making GRID more of it’s own thing:

  • Exploring the GRID should be more like playing a Roguelike.
  • GRID Game Modes have a Primary Objective. Completing the Primary Objective “Wins” the Node and ends the round.
  • GRID Game Modes have several Secondary Objectives. Completing these will reward bonuses. These are similar to the objectives in GRID now.
  • GRID Game Modes will be procedurally generated from “Rules” modules (I’ll explain further down).

Going over each of these points in order then…

More Like a Roguelike

Currently after every game on the GRID you get sent to a game over screen and then back to the GRID menu. In the future you will instead have the option to either attempt one of the unlocked Nodes adjacent to the Node you just played or to “Disconnect” and return to the menu.

Going back to the menu is essentially “Returning to Town” and you will be able to buy Items, change your Loadout and resume playing from any Node that you have unlocked. Continuing on however will allow you to retain your current Level while Returning will reset it. The time it takes to Level Up in GRID mode will be much higher than in Arcade mode.

There will be multiple levels with the “Stairs” down guarded by Bosses (Bosses have always been on my list of things to do) and the difficulty of the GRID will be increased as you descend.

Primary Objectives

Primary Objectives are conceptually “Missions” or “Jobs” from your benefactor. Completing these will unlock some of the surrounding Nodes in the GRID. Completing a Primary Objective will always end the current round and send you to a summary/navigation screen where you can choose to Return, Continue or Retry.

Primary Objectives might be very simple such as Surviving for 3 minutes, defeating a number of Waves of enemies or killing a specific enemy. They may also be more complex such as trying to Upload a Virus or Steal Data.

Regardless of the specifics all GRID Game Modes have an ending condition to them which is unlike Arcade modes. Primary Objectives also bring with them failure conditions (such as losing a life, taking too long or failing to defend a macguffin). Triggering a failure condition will also end the round.

Secondry Objectives

Secondary Objectives aren’t visible to you the first time you play a Node. Once you complete the Primary Objective they will become visible on a Node and you can go back and try to complete them. If you happen to complete them by accident on your first attempt then they will be revealed right away.

These are essentially what is in place right now. Completing these will yield rewards called Scripts (one use items) which can be used to perform various tasks such as re-roll a Node, Identify the Node (revealing the Objectives and any secret information about it), Reveal the Boss Node and other such tasks.

Rules Modules

Rules Modules are modifiers to the base gameplay of Waves. These make up what defines a game mode.

As an example let’s break Rush down into it’s Rules Modules as it would exist under the new system…

  • Lives – infinite
  • Time Limit – 60 seconds
  • On Death -10 Seconds
  • On Level Up +10 Seconds
  • On Cube Kill +30 Seconds
  • Cubes Spawn every 60 Seconds.
  • End Condition – Time Limit Expires.

Currently all of this is defined in a single object and is inseperable from each other. By breaking all of this down into it’s discrete parts they can then be re-assembled more easily into new game modes. Ultimately I imagine there will be dozens of these modules which can be combined in new interesting ways and it may take a while to tune the algorithm so that it’s not generating impossible to complete game modes. It may even open up the possibilty of allowing players to combine modules to create their own game modes which can be shared on the forums (however that is not within the scope of Alpha4).

The First Step

So where do I go from here? Well my first step will be refactoring all of the Game Mode code so that it can support the Rules Modules method of working and then recreating the existing Game Modes within that frame-work. That shouldn’t result in any noticeable changes to the game and will probably be part of a Alpha 3 patch at some point in the future.

Once that’s done I’m going to focus on re-working the GRID UI and game flow to better represent the desired Exploration game play.

Waves² Early Access – Alpha 02 Devblog

It’s update day! Woooo!

The Alpha 2 update for Waves² should be live by the time you read this complete with new gameplay, a new game mode and lots of balance changes and bug fixes.

For those of you who prefer my rambling videos check it out below.


Hyperactive is a new game mode in both GRID and the Arcade. This mode is the spiritual successor to Bombing Run from the original Waves where the emphasis is not on shooting but exploding.

When playing Hyperactive your main weapon is disabled and cannot be used at all. The only way you can kill anything is by using your Burst Attack.

“But Squid! How do we use our Burst attack if we have no gun to build Adrenaline?!” I hear you cry. Adrenaline Triggers spawn every 10 seconds (They also disappear after 10 seconds) and these triggers will give you enough Adrenaline to use your Burst attack once. Unlike Bombing Run which forced you to detonate your bomb at specific randomly determined locations Hyperactive lets you choose where is best to explode, the limitation though is that Adrenaline starts Decaying almost straight away so if you don’t use it quickly you won’t be able to use it at all.


Hyperactive is specifically designed to show off the other major feature of this update – Loadouts.

On the main menu (and within the GRID menu) you will find a button that takes you to the Loadout Editor. This is where you can customise how your Avatar levels up and increases in power during a game.

Every Loadout consists of 6 Items (Weapon, Burst, Defence, Buffer, Cache and Chassis) all of which start at Level 1 and can be increased up to Level 6 by investing Upgrade Points into them. It is within the Loadout Editor that you define which order those Items are upgraded, with only 18 points to spend and 30 slots that can be filled you have to make some decisions about how you want to play and what will benefit you the most for a specific game mode; as an example in Hyperactive there is no reason to upgrade your Weapon as it spends the entire game mode disabled.

The general rule of thumb is that when upgrading an Item the first point you spend is the most efficient giving a 50% improvement then each point spent after that first point suffers from diminishing returns until you get to the last point; the “Overdrive”. Overdriving an Item makes it 3x as effective as it was at level 1 but you can only ever overdrive 3 of your Items at most.

In Alpha 2 there are only 6 Items (one for each slot) but in Alpha 3 I plan to add at least 2 more Items to each slot and will keep adding Items until there are 6 items for each slot. These items will be purchased using in-game currency earned  by playing in Arcade and GRID modes.

Enemy Balance

With increases in Player Power there needed to be a counter-point to stop things getting out of hand on the leaderboards. The answer to this was to allow the enemies to level up as you play increasing the challenge and distinguishing the enemies more from each other as the game progresses.

Starting at Player Level 6 enemies will start to level up their threat rating, by Player Level 8 thy will reach Threat Level 2 and will reach their maximum Threat Level of 6 by Player Level 24. Alternatively the Threat Level will increase after 2 minutes of playing and then every 2 minutes after that. The reason for this is that after Level 6 almost all of the enemies that are going to spawn in a Game Mode will have already started spawning so the only way left to make the game harder without just spawning more enemies (which I found in Waves didn’t actually work instead it just fed you more points and more bombs) was to make the individual enemies tougher.

All of the Enemy types now gain more EHP (Effective Hit Points) as they level up however some gain more than others (typically if it’s fast it gains less than if it’s slow). Enemies also get faster and do more damage when they hit you (again enemies that were already fast get faster than those that start off slow). Even the basic wandering enemies from Level 1 are now a threat when they reach their maximum level taking much more damage to kill and dealing more damage when they hit you. Some enemies now can’t be killed with just one Smartbomb blast instead taking multiple hits to drop and even the non-moving Virus enemies gain a lot of durability very quickly making it harder to create Combos the longer the game goes on.

As a final note you can’t kite enemies as easily anymore. Any Enemy who chased you before now accelerates up to a higher maximum speed the longer they are left alive. Gone are the days of kiting huge clouds of enemies behind you.


The GRID has been really well received which ‘m really happy about. With this update it’s gotten a new game mode with Hyperactive making an appearance and 3 new objectives that will show up. There has also been some more strategy added as the way Nodes unlock has changed.

Nodes now unlock only on the filled in sides of the Cubes. This means that to gain access to some nodes you now have to get a Gold rank in a Node you might have previously only gotten a Bronze in. Generally speaking the Nodes on the Bottom-Right are easier to unlock than those on the Top-Left of the GRID.

There are 3 new objectives in all of the Game Modes in The GRID:

  • Pacifist – Don’t Kill Anything during the first x seconds of the game.
  • Survivalist – Don’t Die for the first x seconds of the game.
  • Adrenaline Challenge – Gain x Adrenaline during the game.

There should also be more restrictions on how often a game mode appears in The GRID and as a result of these changes your Save data will be invalidated when you launch the game and a new GRID will be generated.


With major balance changes to the game and a general increase in difficulty the Leaderboards will be wiped for this update. I’ll be working on adding seasonal/update specific leaderboards in the future so your scores will be retained forever but I’ve not had the time to do that just yet. Apologies for having to take these steps but it is an Alpha and I can’t balance the game without accurate data on scores.

Waves² Early Access – Alpha 01 DevBlog

The sequel to Waves is almost here! Just a few days from now Waves² will be available as an Early Access title on Steam for $10 (It will be cheaper when it leaves Early Access if you’d rather wait). You can check out the trailer below.

Some History

Now first up I want to thank all of the fans of Waves for their support. When I made Waves 4 years ago it was just a quick project put together over about 6 months in my spare time. It has since managed to keep me employed for 4 years which was far longer than I ever anticipated. Over the last 4 years I have embarked on several projects, Waves: Arena Tactics grew out of my experiments into procedural generation and even during it’s Kickstarter the game concept changed so drastically that by the time the Kickstarter ended I was no longer making the game that began it. In all honesty I’m glad the Kickstarter failed because otherwise I would still be making a game that I since began to doubt the appeal of myself. Notorious was born out of that experience and developed rapidly into a very fun proof of concept; cementing it’s design direction as a multi-player focussed co-operative shooter. Still I got asked the question though “When will there be a sequel to Waves?”.

Now. Now is when. The particulars of why now are quite simple. I wanted to move Notorious from the Unreal Development Kit to Unreal Engine 4, it’s scope had grown so much and I was pushing UDK to it’s limits that the possibility of finishing the game in that engine would mean huge sacrifices. The problem was that it would take me a year or more to re-learn C++ and port all of the game code over to the new engine. Instead I decided to start with something a bit easier: port Waves to UE4 as an experiment. I gave myself 2 months to port the original game over; if I couldn’t do it in that time I was going to go back to developing in UDK and continue with Notorious.

After 2 months had passed I had ported Waves to UE4 and done so while improving all of the core systems. The game was far easier to create content for thanks to everything I had learned while making Notorious. I decided that instead of shifting focus onto porting Notorious (still a lengthy job) that I would focus on continuing to develop Waves using everything I had learned in the 4 years since it’s release and give the fans what they had been asking for. Early Access games are now an accepted practice in PC gaming and gave me something that Waves needed; willing enthusiastic play testers.

Two more months have passed since I got Waves working in UE4 and I’m typing this blog post. Waves² has a roadmap to it’s final release in place and is ready to play. In AAA development Alpha is when the game first becomes playable, I was ready for Alpha.

Alpha 01

Every month I will be uploading a Vlog on Youtube and an accompanying Blog post here detailing what’s coming up and going over what’s happened. The Vlogs will be relatively short and focussed on showing what’s changed while the Blogs will be more in-depth and go over why something has changed and how it fits into the overall vision of the game.

In case you haven’t watched the DevBlog I’ll quickly go over what you get here…

In Waves² there are 2 major changes to how the game works:

Health = Energy = Health.

In Waves the first time you got hit by any enemy your avatar would explode. This is no longer the case. In order to make the early game more accessible to new players your Energy Buffer; that was previously used to power SlowMo, is also your health bar. Any damage caused by enemies will now come out of your Buffer if possible. Any damage that can’t come out of your Buffer will cause you to explode. Generally this means you can take 3 hits from normal enemies before the 4th hit makes you go boom.

This comes with a risk/reward mechanic as your Active Defences (Slowmo or “Langour” in Alpha 01) require the same resource to be used. Should you exhaust all of your Buffer using Defences then you will be leaving yourself vulnerable and the next hit you take will kill you. Expert players will scoff at this change because in Waves so long as you had a bomb you were practically invincible, this is no longer the case as you will see…

Adrenaline Not Combos.

In Waves bombs were tied explicitly to your combo. Get a 10X combo and you got a bomb. Lose the combo lose the bomb. This was surprisingly difficult to explain to people yet was the main mechanic in getting good scores. Instead Combos work exactly the same (3 kills within 1 seconds of each other = 1 Combo) but now every time you build your Combo up you gain Adrenaline. Adrenaline is used to power Burst Attacks (The Smart bomb in Alpha 01) and kills from Burst Attacks count towards your Combo. So long as you are generating Adrenaline it will not deplete. Once you stop building Adrenaline it will start to deplete automatically and will be gone very quickly, this means that if your Combo ends and you had maximum Adrenaline you have about 5 seconds to start a new Combo or it will all be gone, fortunately you have enough Adrenaline to use a Burst and start a Combo that way.

This change should make it harder to chain bombs together forever (that plus the enemy spawning is less run-away than the previous game) and it requires a larger Combo in the first place to get your first Burst Attack (20 Adrenaline vs the previous equivalent of 10). However your maximum Adrenaline store is 30 so once you max it out it should only need 10 more to get another Burst ready.

Spawning Changes.

Enemy spawning now uses a completely different system to the previous game. It now uses a Hierarchical Behaviour Tree and is actually an AI that responds to the game state. At the moment it’s tuned to be similar to the previous game but it has lots more spawning patterns available to it and is less likely to just spawn hundreds of enemies every tick preferring harder to kill enemies if you are doing well.

In Alpha 02 there will be a system in place that causes enemies to Level Up based on the game length making them harder to kill and cause more damage. The enemies you encounter at the start of a round will still appear later on but won’t be a push over any more.


There are 4 Game Modes from the previous game re-appearing in Waves²:

* Crunch Time
* Survival
* Rush
* Chase

The only major changes to these modes right now is that Extra Lives are now spawned as Triggers in the arena and must be collected rather than being awarded to you during Survival and the starting time for Rush is down to 60 seconds.


The newest and most experimental part of Waves² is called The GRID. It is a long-format version of the game where you play through a procedurally generated Grid (aha!) of objective based challenges. Completing objectives in each Node will earn you a rating for that Node (Bronze, Silver or Gold) and unlock surrounding nodes as well as give you a score that node. Your total score for the GRID is the sum of all of the nodes you’ve completed. You can try each node as many times as you want but it will only remember your best score for each node.

At the moment all of the Arcade game modes are being used in the GRID with the harder modes near the edges and the easier ones nearer the middle. Balance is a big problem here as it requires a lot of data to get the Objective generation right and I need as much feedback from the community as possible on which objectives are too hard/easy.

Progress on GRID is saved to the Steam Cloud but you can start a new game any time you want. You can only have one GRID active at a time though so you’d better be sure about starting over.

Alpha 02.

Alpha 02 is scheduled for sometime in January. As there is the holidays between now and then it’s not going to be a huge update.

Currently planned for Alpha 02 is:

  • More Arcade and GRID Game Modes (at least 3 more).
  • Music Jukebox + Placeholder Soundtrack.
    • I’m in talks with some musicians about an original sound track for the game and I want to support it with a Jukebox so you can skip tracks easily.
  • Enemy Progression
    • Enemies will Level Up over time and be tougher and more dangerous as games progress.
  • Player Progression
    • Leveling Up will now affect the Power Level of your Weapons and Defences. In future the order of how your Avatar Powers Up will be customisable allowing you to specialise.
  • More Graphics options & Keybinds!
    • I haven’t had time to get key rebinding in as a menu option yet but hopefully this will be in Alpha 02.

The Future…

Waves² is a long term project for me. I’m expecting at least 6 months in Early Access plus post-release support. To give you an idea of what’s planned I have created a lovely roadmap diagram showing all of the concepts and features that will go into finishing the game.

The best place to leave feedback will be on the Steam forums for the game but you can also email it to feedback@squidinabox.com. I can’t promise I’ll respond to every thread or email (I am but one man!) but I do promise that I will read all of them.

On Loot

Lots of very boring work has been going on here in Squid Tower, but I’m closing in on a working Vertical Slice of game and the possibility of an Early Access release on Steam this year is looking good.


The number one thing I’ve been thinking about is loot. It turns out that Waves: Arena Tactics is all about loot and while that was never my intention at the beginning it’s how it’s ended up.

Loot can be bought from the shop, crafted (eventually) but mostly it is found during Dives. The reason you try to get deeper into a system is because that’s where the good stuff is kept. Deeper you go the better the loot and therefore the deeper you can go. It’s circular. Get deep enough and maybe you can crash the entire system and gain immense Notoriety (essentially experience points).

The idea I struggled with for a long time was that all loot should be fair and balanced; an ideology that was a hold-over from working on MMOGs for so long. This ideology is complete hogwash in a roguelike dungeon crawler like W:AT. Depending entirely on the players own skill level to improve over time is “pure” but results in most people just giving up out of frustration. There is also a physical upper limit on what a player can achieve meaning levels can never get more dangerous than that. Increasing quality of loot is what makes a Roguelike work and I am embracing it entirely.

Loot is digital in nature in W:AT. This is a world of bits and bytes not swords and treasure. When you pick something up it gets added to your download manager and queued up for download. Should your connection be terminated before the download completes then you’ll lose the loot (although leaving through the level exit will always complete all downloads instantly). Considering that the best loot is guarded heavily an unauthorized download attempt might cause a significant system response. Picking something up is only the start of your job collecting loot not the end of it.

I’ll go over all the types of Loot in the game and give some examples.


All equipment is stuff that you can equip to your avatar. Fairly self explanatory. The majority of Loot is equipment and comes in 3 versions (V1.0 to V3.0) and each version is just flat out better than the previous one. Most V1.0 equipment can be bought from the shop as your Notoriety increases but the better versions need to be found by Diving deeper. V3.0 equipment tends to only be found in the most secure systems at the deepest levels guarded by the nastiest programs. Eventually crafting will allow you to create alpha and beta versions giving you an incremental increase towards the next full version by combining your spares (therefore v3.0b would be the best equipment you can get).

Your Avatar has several slots you can put Equipment into. There are 3 Program slots (Primary Weapon, Defence, and Super Weapon) and 5 Upgrade slots (3 Accessory slots, a Modification slot and a Booster slot). I did toy with the idea of borrowing Eve Onlines slot system but found it was quite cumbersome on a joypad, there are however similarities between the two.


Your Programs are the only way you can directly interact with the programs populating a system. They should be fairly self-explanatory but I’ll go over them anyway.

Primary Weapons are your basic attack (gun). Primary weapons use no energy and are always available. They are the bread and butter of the game and take one of 3 forms (I’m working on a fourth but I’m not committing to it yet) – Projectile, Beam and Thrower. Projectile weapons all launch a projectile that takes time to hit its target and often have an explosive element, high rate of fire and a large spread. Beam weapons all fire continuously and have zero travel time hitting instantaneously, they’re great at single target damage. Throwers are very short ranged but require very little aiming and often have a secondary effect like burning, stunning or knock back.

Defences are non-damaging programs that are intended to keep you alive a little longer. Defences always use up energy and may have a cool-down period after using them. Once a Defence is triggered it lasts for a fixed duration of time so knowing when to use them is critical. They can however save your life. Examples of Defences are the “Slow Field” which slows down everything around you, the Energy Shield which makes you temporarily invulnerable, self-heals, cloaking devices, teleporters, EMP blasts and sometimes they just give you massive buffs (for those that believe attack is the best form of defence).

Super Weapons (New better name suggestions welcomed) user up energy in order to kill things very efficiently. Smartbombs are the simplest example being great for removing all the chaff you may find yourself swarmed by. Some Super Weapons just do lots of damage or clear the screen while others are more about area denial such as lightning storms which last for a while striking enemies randomly inside their area of effect.


Upgrades are passive bonuses and can be used to tailor your Avatar to a particular play style.

Accessories manipulate the 8 base Stats in the game and define your Avatar: Health, Attack, Defence, Speed, Energy, Health Regen, Energy Regen, and Hacking. Health and Speed  are obvious, Attack  multiplies the damage of all your weapons while Defence absorbs some of the incoming damage your suffer. Energy is used to run Defences and Super Weapons and Hacking is used to crack open files and databases you find in the game (some files need a higher hacking stat to access at all). Health and Energy Regen just represent your avatars ability to passively regenerate those two stats.

Accessories come in many forms the most basic of which is just a single stat modifier like +10 Health. More complex forms might offer a larger single stat increase at the expense of another such as the Turtle which offers +15 Defence at the expense of 10 Speed. Others may offer small gains across many stats which is only useful when you have 3 of them stacked up. With 3 versions of every Accessory there are already over 100 Accessories in the game and the potential for even more in the future.

Modifications offer passive buffs that can be quite game changing but always come with a significant downside. A lot of the team buffing auras are modifications such as Healing Auras which increase the Health Regen of everybody within a certain range. Other modifications like the Vampire regenerate your health as you cause damage to enemies or they might just add a secondary effect to your attacks like a stun or burn effect. The downsides might just be sacrificed stats or debuffs (the Vampire Mod has a negative Health Regen so it might kill you).

Boosters only last a single level but provide a massive bonus during that level. The only way to gain extra-lives is by equipping an Emergency Backup Booster giving you a single life that lasts for one dungeon level. Other Boosters may give you a huge bonus to your stats or negate the Downside of a Modification. Boosters being consumable means that there are a lot of them out there and simple versions are readily available from the Shop.


Every level contains a number of Passkeys which are required to be able to unlock the level exit and in some cases well protected files. They aren’t very fancy but they are required to get deeper into the level. Passkeys are only ever contained in Databases which must be hacked (staying within proximity of the server until the security is broken down) which has a tendency to draw the attention of the system defences. Not all Databases contain Passkeys but they always contain something worth your time unlike Files which sometimes contain nothing at all or even worse Viruses.


Yep Money. However we’re not talking gold coins as this is a digital universe. As a hacker sometimes you’ll find data that somebody might want to pay for (or will pay a ransom for). When this happens the offending files are converted into cash as soon as they finish downloading. These files might be a database of user names, payment details, credit card numbers, nude cell phone pictures or CCTV footage of illegal nuclear waste dumping. Whatever form it takes it’s worth money to the right (or wrong) people. Eventually I’ll add Bank systems that only ever contain large quantities of money but that’s for a different time.


Pickups are temporary little boosts dropped by programs in the system as they get terminated. You can also find pickups inside files.  The most common pickup dropped by all programs is energy. All programs use energy to run so when you terminate a program you can steal the energy before the system reassigns it. Some pickups might boost your stats temporarily as well.

Characters, Voices and Weapons, Oh My!

Last Nights Livestream

First thanks to everybody who turned up to our Livestream last night. We all had loads of fun showing the game off and everybody was really nice so we’ll definitely be doing this again and trying to make it a semi-regular occurrence even after the Kickstarter.

Characters In W:AT

One of the problems I’ve always had with Waves was the lack of character for people to relate to. Believe it or not being an abstract sphere with a gun is not enough for a lot of people. During the Stream I suggested the idea of being able to  unlock Characters (which I think I will start calling Runners because I’m a hopeless Cyberpunk junky). Each Character has a different set of baseline stats and bonuses to certain playstyles in a similar way to Character cards in a Living Card Game like Android: Netrunner.

I Want Your Voice!

With the introduction of Runners it makes sense that each Runner gets a personality. The original Waves had a pair of Robotic announcers that told you about things like pickups and how little energy you had. These voices will return in the new game (indeed they are already implemented) but I’d like to add more voices with different accents and phrases for each Runner as well as localized versions different languages.

If you have a unique accent (or can affect one) and you would be interested in having your voice plastered all over the game then I want you to get in touch! Drop me a message on email and I’ll add you to the list. It won’t be hard stuff mostly things like “Quad Damage” and “Shields Full” not lengthy diatribes on the nature of transhumanism.

Anybody who gets their voice in the game will be credited as a voice actor and this invitation is open to everybody in all tiers.

We Need Guns. Lots of Guns.

There are ten main weapons in the game right now and five “Super” weapons but I’d like to expand both of these lists. A big part of W:AT is customising your experience with different equipment loadouts. During the Stream last night we showed off lots of different builds that can be achieved and I plan on putting up some videos on the YouTube channel showing off different ways to play the same mode.

If you can think of any weapons or equipment you’d like to see in the game then you can send me your ideas over twitter or facebook or via email if you’re shy. I’m looking for things that will be tactically different from the existing weapons rather than just a re-skin or more powerful version.

For reference here are the weapons that are already implemented:




December – January Devblog

December was a slow month with the Holidays taking up the bulk of the time so I mostly focussed on bug fixes so there isn’t a video this time.

January was all about getting ready for the Waves: Arena Tactics Kickstarter which took far more time than I expected it to (turns out the Camera hates me). Hopefully the Kickstarter should be launching in the next week and will run till the end of Feb.

I’ve also lined up a Composer for the new game who I’ll announce when the Kickstarter goes live.

I’ve also been tidying up some loose ends such as getting the Waves Soundtrack up for sale on Steam at last. It’s available to buy now for just $2 here.

Now if you’ll excuse me I need to put together a proper Press Kit for Waves: Arena Tactics and do a bunch of boring business things like talk to Accountants. Hopefully I can get back to actually making a game soon!

November Devblog

Taking a bit longer than normal to get the Devblog up for November as I was messing around with a new format for the video but it was taking so long I ditched it for the old format.

First up are 3 new Primary Weapons; the last of the Primary weapons to be implemented from my current ToDo list.

  • Sniper Rifle – High damage beam weapon. It will pass through anything it can kill instantly until it hits something it can’t like a wall or a Boomer. This weapon prompted the ability to zoom out with the camera that you can see in the video.
  • Grenade Launcher – Fires an explosive projectile on an arc that detonates on proximity with an enemy. It can bounce off walls and around corners.
  • Burst Cannon – Designed to be fired in bursts. Spews bullets in a cone but uses energy to do so. If you run out of energy the rate of fire is significantly reduced.

November saw the implementation of the majority of the new Support Items in Waves: Arena Tactics.

Support Items are equivilent to the Slomo feature in Waves and are bound to the same buttons. You can equip one such item before you start playing from the number you have unlocked.

  • Slow Field – The slomo feature redesigned for multiplayer. It now only affects an area around the player using it rather than globally.
  • Healing Aura – Converts energy into health for everybody inside the bubble.
  • Energy Shield – Instead of damage coming out of your health it comes out of your energy reserve. Affects nearby team mates with damage they take coming out of your energy.
  • Shockwave – Knocks nearby enemies away from you.
  • Cloak – Limited invisibility. Firing your weapon deactivates it early and it has a cooldown after it deactivates before it can be used again.
  • E.M.P – Huge blast that stuns enemies and empties the energy reserves of everybody inside it (including yourself).
  • Teleport – Tap to drop a beacon, hold to be teleported to the beacon. Uses all of your available energy in the process.

I also added two new Superweapons.

  • Gas Grenade – Like the Grenade Launcher but instead of an explosion it releases a cloud of gas that eats away at enemies within it as well as obscuring their vision and slowing them down.
  • Proximity Mines – Visible only to the player that dropped them these mines take a moment to arm but once armed they explode when an enemy gets close.

December will be pretty light on updates due to the Holidays and the fact that I’ll be mostly working on a Kickstarter for the game so I can actually afford to pay an artist and sound engineer in the new year.

For now if you want to support the game then feel free to buy a few copies of the original to gift to your friends and family on Steam!

DevBlog – Rezzed and The Slump

How do!

So Rezzed is in the past and I was there! I ate lots of over priced convention food from wet trays and saw lots of indie devs looking incredibly knackered.

I don’t normally go to games conventions as a punter so it was an odd experience for me. My prevailing thought at these things is normally “If I have to answer the same questions again I’m going to kill somebody!” so bear that in mind when you go to these things. That guy in the studio T-Shirt has been asked all of those questions a hundred times already – try and come up with something new or just engage them as a person not just a walking brochure.

So as a punter what did I think about Rezzed? Well let’s explore that with a bullet point list!

  • Bloody hell this is a sausage fest.
  • Very little in the way of Merch.
  • Occulus Rift is the future! Assuming you don’t have a Lazy eye like me and my girlfriend then it’s a vomit simulator.
  • Sir, You are being hunted is going to be an amazing game that will sell incredibly well.
  • Revenge of the Sunfish made my brain go “What? Wait.. WHAT?!”
  • Where are the girls?
  • Hotline Miami 2 is basically Hotline Miami again. Kinda disappointed.
  • El Rancho!
  • Sunday was better than Saturday due to less people so I got to play more games particularly in Leftfield as I don’t like waiting.

Overall a lot of fun was had. I also got to handle a PS Vita for the first time and if anybody at Sony wants to talk to me about porting Waves to Vita then I’m sure I can work something out as I believe Unreal 3 works on Vita.

One thing that stood out was how many penniless indie devs had booths. I assumed that a booth at Rezzed cost several thousands of pounds to arrange but quite a few of the devs seemed to be on the very poor end of the scale (where I live) yet managed to pull together the cash. Either it cost a lot less than I thought or they are doing much better than they appear.

Lastly the most important thing to come out of Rezzed was some much needed inspiration. I’ve been in a slump for the last 3-4 months where each line of code comes grudgingly and slowly. This is largely because I’m at a point in development where I’ve done all the fun stuff (from a programmers point of view) like solving multi-player and procedural generation. All that remains is what is on my schedule and everything I have to do is pretty much known now and that tends to result in me grinding to a halt.

There are more interesting things I’d rather be doing than just working through a list of tasks and Rezzed has given me a bit of kick to work through that list and get something worth seeing out into the world. The first step of this was determining if my game was fun (it wasn’t) and then working out howto make it fun (more rewarding exploration as it turned out).

As always I am on the lookout for artists and sound designers particularly if you are in the UK so if you are interested drop me an email at rob@squidinabox.com.


Developer Blog: The Infrequentness

I really should hire somebody to do all the non-game-making bits of this business for me as it seems I’m terrible at them. If you want the job you should be warned I can’t afford to pay you at all.

So here is a devblog post that is long overdue because I got distracted by basically everything on the way.

Studio Update:

I am still not homeless or starving! However the odds of me releasing a new game in 2013 are slim and as sales of Waves are no longer enough to support me through to 2014 I’m probably going to have to find an additional income source. I see there being two options that don’t take away from development time, Kickstarter and Steam Early Access. I’m investigating both of these at the moment.

The New Game is indeed a new instalment in the Waves universe. I say that instead of Sequel because the gameplay and focus of this new game is quite different. Where Waves was all about high scores the new game is all about exploration and co-operation. It will have an online co-op mode for 2 (maybe 3) players which is actually the focus of the game. I can say this with confidence now because online multiplayer is in and working and actually has been for about 6 months now.

My current task list has roughly 6 months of work in it just to reach beta and that’s not factoring in all the art and sound requirements for it. It’s a big complex game compared to waves and I really hope it pays off in the long run.

Currently Working On:

My current work is in creating the games “Ecosystem”.

Every level is procedurally generated and I wanted to find a way to populate them with entities in an organic way. This is an extension of an idea I had when I worked on the original Warhammer Online back before it went to Mythic. In that game the population of an area of forest would be determined by what was already there based on a dependence hierarchy. You wouldn’t get any Goblins until the Snotling population reached and you wouldn’t get Orcs until the Goblins reached etc etc. This meant that areas of the world that were constantly being farmed by players (such as those around the starting towns) would never spawn the really dangerous monsters but extremely remote areas would be more likely to build up.

It didn’t work in reality but that was because players would never leave the small monsters alone so that the nastier ones would spawn even if there was no benefit for them killing them. Players are a blood thirsty bunch.

This version takes entities that must exist in the world for the player to progress and uses them to create things that the player can fight. An example will help:

In order to move to the next level the player needs to get a complete key which is in several parts. They obtain a key part from an “input” node which is spawning entities that move “Data” from the input to the “Output” (Level exit). The entities that move the Data around sometimes drop some as they go.

Data if not picked up quickly will turn into “corruption” which can grown over time and turn into a “Bad Sector”. A Bad Sector will spawn enemies called “Errors” which are very similar to the enemies found in Waves. Some of these enemies will place traps, attack Data Carriers and generally increase the chances of more Bad Sectors forming.

There are several variations on this theme throughout the game that I hope will create interesting levels organically that I can’t fully predict. They are all designed so that in small levels where the player may encounter them very quickly the volume and size of enemy will be lower thus easier to deal with while in large levels the areas the player discovers later will have had a longer gestation period so have more bigger enemies to worry the player.

This is all fairly experimental at the moment and I’m still not sure if it will pan out how I hope but it’s something I really want to try out.


I will be at Rezzed on the 22nd and 23rd of June. I won’t be exhibiting anything unless people ask if they can setup some Waves machines because they just had some space and machines going spare (which is unlikely) but if you want to meet up and have a chat just get in touch with me in Twitter, Facebook or Email.