Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics

A Bunch of Hacks

A member registered Aug 30, 2017 · View creator page →

Creator of

Recent community posts

(1 edit)

Hi everyone! We're A Bunch of Hacks and our first game Epicinium just went live:

Epicinium is a strategy game with simultaneous turns where nature is a finite resource. Combat destroys grass and crops, and trees are trampled as tanks drive towards your opponent to level their cities. Industry accelerates global warming to ludicrous levels, causing more destruction the longer the game goes on. The game is multiplayer focussed but there are also AI opponents to play against. It's pay-what-you-want and open source ( and runs on Windows, Mac and Linux.

Here's the trailer:

(5 edits)

Hi there!

We'd like to thank each and every one of our backers so far. Your pledge, no matter how large or small, is truly appreciated, thank you!! If you haven't backed yet, we can only finish this game with the help of our amazing backers on Kickstarter, become one of them. <3

Developer match livestream

Next Friday, Sander and Daan will brawl against each other in a live developer match. We will play three games, with the total number of points determining the winner. Sander will be streaming the event from his perspective on his Twitch channel, talking about some of the strategies he uses as well as answering your questions from chat. The stream will start at 21:00 CET on Friday, so see you then!

Another thing: we just updated our FAQ page on Kickstarter. We answered some frequently asked questions about ports to mobile and Switch, language support and the open-source release. Look for that here.

Social stretch goals - new modes

We got featured as a Project We Love! That means the Kickstarter people like our project too. :-)

Also, our announcement tweet has been retweeted enough times (54 at the time of writing) to unlock Correspondence Mode! In this asynchronous multiplayer mode, players can come online and submit their orders at any time. This allows you to be part of multiple matches at the same time, playing your turns whenever you see fit. With this mode also comes the functionality to save and load games, including versus AI games.

Correspondence mode unlocked

The next social stretch goal to be completed is the Battle Royale mode. In this zany mode, up to eight players will start with a couple of units on a large open map. Instead of being caused by extreme global warming, Death will immediately appear on the edges of the map and slowly but steadily make its way towards a random location. At the end of each turn, all units, buildings and trees inside a tile affected by Death are destroyed. Players can capture neutral City tiles scattered around the outside of the map, but they may be forced to pack their bags and settle elsewhere once Death arrives. This continues until only one player remains, or until the dark void consumes everything...

Death as it is in the game right now
The Battle Royale mode requires only 4 more people to share our announcement on Facebook. Get on that, peeps! Also be sure to join our Discord so you can chat with us, have your feedback heard and get a voice during the development.

I'd like to use the remainder of this update to explain some of Epicinium's design in more detail. Let me convince you that Epicinium is worth your pledge.

Environmental gameplay

Epicinium is a game of balance. We handcrafted lots of checks and balances, positive and negative feedback loops to make its gameplay interesting and fair. We talked about this in our community match video. Here, we mentioned the limited number of new orders per turn as an example - your army can become so big that it becomes uncontrollable, allowing your more versatile opponent to take advantage.

Another example is in the environmental gameplay mechanics. In Epicinium, the victor is scored for how much nature remains when the dust settles. At the end of a game, all the remaining grass and forest tiles are tallied up, and that number is given as points to the winner, contributing to their competitive rating. This way, the game map itself is a giant score counter.

points being tallied up at the end of a match

This lends extra weight behind all the decisions you make in a game of Epicinium. Every bullet hits something. Every enemy city you destroy is a city you can't claim for your own. Building lots of industry will give you mad income and allows you to purchase tanks - destructive war machines that will dominate the playing field - but also makes those devastating weather effects like bonedrought and frostbite commence that much quicker. Every grass tile you trample with your tanks near the enemy's cities prevents those cities from growing - giving you an economic and military edge, but also one less point when you do win.

This adds depth to Epicinium's gameplay, not by punishing the player for a certain play style, but instead by adding additional considerations and challenges to each one. A new player might be unaware of most of these mechanics and might not care - they just want to win! Losing gets you zero points, after all! They go all-guns-blazing and pump the map full of industry and tanks, fill every nook and cranny with farmable soil for that extra income, and this might even work! Despite their inexperience, they will win lots of matches, even against more experienced players who opt for more eco-friendly, but slower, strategies. However, they won't get very many points from each match, causing their rating to increase, but remain relatively low.

filling every nook and cranny with all them bountiful but space-consuming farms

If this new player wants to improve their rating further, they will need to learn how to win the game with more points. The balance is delicate, because giving up that much firepower might cause them to win less often, but really, do they need that much firepower to win against most opponents? But even among the higher rated players, who might go for a green strategy from the start because they need every point - they've got a high rating to uphold after all -, there is the continuous temptation to deploy a few tanks anyway to give themselves an edge against an unsuspecting opponent.

I have written more about this, illustrating the point further by comparing different types of Epicinium players. However, I've saved that for the new devlog on our page so this doesn't get too long.

So does this mean the nature-vs-destruction axis is the only consideration when crafting your strategy in Epicinium? Absolutely not! It's just one aspect I emphasized here for a more detailed look into the game and our ideas behind it. We also have a unique simultaneous action system, a surprisingly simple battle damage model, a...

But I have to stop here and save them for another update - you already read through a wall of text (congrats, you made it! whew).

If you're reading this and made it this far, you're likely interested in Epicinium and maybe pledged already, or are considering to. We're extremely stoked to have you on board with us on this journey! Back the project, share our posts on social media, and give your personal recommendation to friends. We are only able to finish Epicinium with your help. I'm convinced that together, we'll get there! We'll speak with you during the dev match on Friday. Take care now.


Sander & Daan (A Bunch of Hacks)

Hi akira, thank you for the kind words! I'm happy you enjoyed the beta. Please note that the full game will not be free - we released a beta version to let people try it out and to get feedback from players in a pre-release stage of development. We're coming to Kickstarter on November 1st. Since you've already made an account during the public beta, I'm happy to give you access to the closed beta. Can you send me a DM with your email address in our Discord?


Mark your calendars: Epicinium's Kickstarter campaign launches on November 1st. That's just two weeks from now!

If our Kickstarter campaign is successful, we will be able to breach the last stretch of development that includes trying out new units and game mechanics, reworking and rebalancing existing units, building the singleplayer campaign, and making the game even easier to read.

The full game will feature:

  • A number of finely tuned unit types, including a new transport unit;
  • Multiplayer battles with up to 8 players, free-for-all or in teams;
  • Ranked and unranked matchmaking modes;
  • An adaptive AI that learns from your strategies;
  • A singleplayer campaign with a striking story about tough choices and conflicting interests, written by Loulou Swarte;
  • A dynamic soundtrack that adapts to what's happening on screen;
  • Separate open-source release (C++) for modders, LAN-ers and tinkerers;
  • A well-documented API for writing your own AIs;
  • Easy-to-use map editor.

There are a lot more features we would want to add (cough nukes? cough), which will include as stretch goals in the campaign. Look out for more information on that as the Kickstarter launch grows nearer.

The developers, hard at work preparing to shoot the Kickstarter video

If you'd like to keep up-to-date, you can join our community on Discord, or subscribe to our mailinglist via our website.

Fire and Ice

To make sure Epicinium looks the spiffiest it can, we have made lots of visual improvements in beta version 0.30.0. For example, we've animated the logo on the main menu screen.

We saw a lot of players struggling with the large volume and unpredictable placement of Firestorm, opting to keep their units safely inside for the entire Summer. In combination with Frostbite during the Winter, this caused some games to stall out for longer than intended. Therefore Firestorm now specifically targets flammable tiles such as Grass, Forest and Trenches tiles, and the total number of tiles that suffer from Firestorm each round has been significantly reduced.

To make it extra clear which tiles players should be avoiding if they don't want their units to take damage, we added visual indicators for damaging weather effects such as Frostbite, Firestorm and Gas.

This version also introduces lighting effects near gunfire or explosions, and a spotlight on the active unit in the Action phase and on tiles and their surroundings in the Night phase.

Speaking of lights, we have made it more prominent when a building gains or loses power. For instance when a tile is occupied, the lights in its buildings are dimmed to indicate that the tile cannot carry out orders or generate income.

We are currently inviting active community members on our Discord to join the closed beta. Come say hello!

Closed Beta

Ever since Epicinium was ready for public playing, we made it available as a free download and kept updating it publicly. This was a great way to iron out bugs and collect your early opinion on where the game was going. Input from our beta testers during this period has been invaluable and we would like to thank all participants very much.

As we are getting closer towards our crowdfunding campaign, we have opted to end the Open Beta. Instead, we will hold a Closed Beta via Discord. Active members of our Discord server will be invited to join the Closed Beta. This makes sure that people can play the game with other community members, as is the intended experience. We've built features into our Discord server that can help players find opponents, such as tournaments and a matchmaking bot. It also means that players can immediately find us when they have questions or need other assistance.

Join our community

What does this mean for you? If you already registered for an Epicinium account, you automatically qualify for access as a thank you for participating in the Open Beta. Join the Discord community and send us (SLiV or UnarmedLad) a Direct Message with your in-game username or the email address you used for your Epicinium account and you will be given access to the Closed Beta.

If you didn't have an account yet and want to play the beta, join our community and show your face in the chat! You don't have to do anything special, just show that you're committed to the game's development and being in the community.

This change is part of our road towards the crowdfunding and release. Stay posted for more news on this in the coming weeks!

Beta version 0.29.0

After you've received your shiny new key, you're gonna want to have a shiny new Beta version to put it in. That's why we made beta version 0.29.0.

You can activate your key in the main menu. We've even improved the text input to allow you to copy and paste the key, instead of typing it in by hand like a fool!

Unit movement

This new version also has improved figure pathing, which means riflemen will now walk around other soldiers and buildings instead of through them.

To make sure you get a lot of mileage out of this change, the new High Speed Challenge increases the movement speed of all units by 2. The vision radius of units has not changed, so be wary of attacks of opportunity!

Don't forget, to get access to the new Beta, join our community on Discord. We hope to greet you there soon!

Hey all! Yesterday we released beta version 0.27.0, with a number of improvements to the UI. In particular we reworked the phase list in the bottom left of the game screen to put more emphasis on the Planning phase and the Action phase.

This update also brings a new challenge: the Everything is Free challenge. In this challenge, units and tiles have their cost reduced to zero, so you can skip the economy and go straight for the big guns!

Like in normal matches, you get 1 point for each Grass and Forest tile that remains at the end of the game, up to 100 points. The more points you get, the more stars you earn! As in previous weeks, you can find this challenge in the multiplayer menu. We've added a shiny new type of panel with a picture in it that updates to show the current challenge.

One thing we have noticed is that not enough players can find human opponents to play against. This is a shame because our game works best in one-vs-one against other players. Therefore going forward we will put more of our effort into centralizing our playerbase and growing a community within our Discord server.

With that in mind, we are currently working on integrating Discord into our game and vice versa. Once this is complete, you will be able to see when your friends are online and ask to join their lobby via Discord. While they are playing a game, you can even start spectating them directly from Discord with one press of the button.

One way we will be using this integration is with automated weekly tournaments organized through Discord. At any point during the week you will be able to join the tournament. Once joined, any ranked match against an opponent that is also part of the tournament will count towards your score in the tournament. At the end of the week, the participant with the highest total score is declared the winner.

See you on Discord!

We released beta version 0.24.0 today to bring some balance changes that we felt were needed after the gameplay changes in version 0.23.0.

When we replaced the Rifleman unit with the Militia as the standard infantry that could be made at City tiles, we had hoped this would make infantry rushes a bit weaker. By also making Militia cheaper and having their maximum size be 5, we instead made these rushes more oppressive, as very large Militia units are cheap, fast and deadly. Even worse, defending your City tiles also become more difficult because the lower hitpoints of the Militia meant that they profited less from the City's defense bonus.

Therefore, City tiles now produce Rifleman units once again. They cost 10, which is a bit more expensive than when produced at the Barracks. You still start the game with some Militia units and further Militia units can be produced at the Farm. This allows you to build a Rifleman unit at your City to defend against the starting Militia of your opponent.

Rifleman units are now intended as a defensive unit in the early game, but their Capture ability still makes them very powerful in the mid and late game. To prevent them from being too oppressive too soon, we reduced the movement speed of Rifleman units to 2, down from 3. Hopefully this will allow players to better defend against early Militia rushes, without enabling Rifleman rushes.  Of course, we'll keep an eye on how this plays out.

To summarize:

  • The City tile can now produce the Rifleman unit for a cost of 10.
  • Lowered the movement speed of the Rifleman unit to 2, down from 3.
  • The City tile can no longer produce Militia units.

We also fixed some bugs and made some other changes; the full release notes can be found here.

Thanks woodsmoke! Readability is indeed a big design consideration to us. Please let us know what you think when you try it out!

This week we released version 0.23.0, which came with some big gameplay changes, including a new unit: the Militia. In this devlog we want to highlight some of the recent changes and our rationale behind them. If you haven't already, you can try out these changes by downloading the latest version either from our main page or via the itch desktop app.


In order to keep things exciting, it is important for both players to have a fair chance of winning throughout the match. We found that having one of your City tiles captured by an enemy Rifleman unit was a little bit too crippling. Not only has your opponent achieved 50% of their goal (to capture or destroy both of your City tiles), you also lose a source of income and a means of producing Rifleman units. Conversely your opponent gains extra income and production, and the natural protection that the City provides helps them keep all of these bonuses while you struggle to reclaim your City. In order to alleviate this, we changed the win condition from capturing your opponent's City tiles to simply occupying both City tiles at the same time.  Although easier to achieve, having one of your City tiles occupied is slightly less damning than having one captured, because you only need to get rid of the occupying unit in order to get your City tile fully operational again. To make early rushes a little bit weaker, the Rifleman units that you start with have been replaced with a new Militia unit.

The Militia unit is similar to the Rifleman unit, but they cannot capture tiles and each little figure only has 1 hitpoint. This means large Militia units are still very good at attacking, but suffer considerably more losses when attacked in retaliation attacks or attacks of opportunity. The reduced hitpoints also makes Militia units that are occupying your City tiles a little easier to remove. Militia units can also have up to 5 figures. They take the place of Rifleman units and can be produced at City tiles or Farm tiles; the Rifleman unit has been moved to the Barracks and its cost has been halved. Rifleman units can still capture tiles as usual, so they are now a more tactical unit to be used in conjunction with Gunner or Sapper units.

Bypassing defenses

We also made some changes to make defending more viable. As stated above, one of the things players had troubles with was prevent enemy units from slipping past their defenses. One of the reasons for this was that if you kept a unit on one of your own tiles, the production of units on that tile would be blocked. When producing a unit at a tile, you can now select where you want the unit to go after it is produced; it can stay on the tile, or move to an adjacent tile. This change allows you to keep a defensive unit inside a City tile to protect it, while still being able to produce units at that tile.

Another change concerns the interaction between the Trenches tile and bypass attacks. A bypass attack happens when an attacking unit moves past another friendly unit to attack and then moves back afterwards. If the target of a bypass attack survives, it fires back at the attacking unit, but the bypassed unit can also take some hits. Trenches are usually used to protect your Gunner or Sapper units, but when an entrenched unit was part of a bypass attack, the Trenches used to offer no protection, leaving the entrenched unit very vulnerable. Since version 0.22.0, entrenched units no longer take part in these bypass attacks, leaving the attacking unit to fend for itself.

User Interface

We have also streamlined the in-game UI a bit, because we felt it had become too large. Although we want players to have access to all the information they need, too much information can detract from the overall understanding of the game. Therefore we looked at what information is really useful during gameplay and what could be better displayed in a different way.

For instance, we removed the "chaometer" that gave a very rough estimation of how far global warming was advancing, and replaced it with newspaper announcements that appear every time global warming reaches a next stage. As a bonus, the newspaper's headlines warn about the new hazards to expect, which means we don't have to front load all of that information in the tutorial or a UI element.

Future changes

We are currently running our first Epicinium tournament over on our Discord server. As we release new versions between rounds, the players are continuously helping us improve the balance of our game, both by giving feedback and simply by playing the game in a more competitive setting. One of the design issues we will be trying to tackle next is making sure rush tactics have enough downside to give the defending player a chance to come back after thwarting the first wave of attacks. Expect more on that in the coming weeks!

Thank you very much Tchey! I'm glad you had fun and that it worked on your system. :-) SLiV, my co-dev, is also an avid user of Linux Mint. If you'd like to chat with us or find some opponents to play Epicinium with, you're very welcome to join our Discord.

(3 edits)

After numerous setbacks and rigorous testing, we finally released Epicinium beta 0.18.0! It features password-protected user accounts, gameplay changes, and RampantRhino, a new AI opponent to play against. RampantRhino is our first AI that utilizes all of the buildings and units (well, nearly - no zeppelins yet). Challenging it should make for some interesting games.


A lot of time was spent to set up the infrastructure for user accounts (MySQL, PHP, Apache, TLS). We feel that having a good accounts system is very important for a multiplayer game. In previous versions, players would pick a username. Behind the scenes, this would generate a "secret" which was used for subsequent logins to the server. It seems easy, but it was a real hassle to use the same username on another installation or machine (you would be informed that the username was already taken, so you'd need to copy the file containing the secret over to the new installation manually).

We've now done this properly: register your account and log in from anywhere using your password. Logging in will generate a session, which is remembered if you enabled "Keep me logged in". As an added bonus, we now have a domain and webpage: Check it out! This also paves the way for us to make things like a leaderboard, so Epicinium ratings will mean more and players can flaunt them. We are working on this for the next update. Go ahead and play some games, you might be on it! We'll talk some more about how the ratings work later in this article.

Gameplay changes: Frostbite

Something we continuously work towards, is making sure the environmental mechanics and weather effects are not just there for their own sake, but that they actively influence the player's decision making. If players cannot respond to an effect in a meaningful way because it occurs regardless of their actions, the effect does not really add any value to the gameplay other than aesthetics. A major design goal going forward is to ensure that the weather effects improve the strategy and fun, instead of the game being fun in spite of them.

As an example, in version 0.18.0 we changed Frostbite to only apply to open fields (grass, dirt, desert, crops etcetera) and to deal damage instead of lowering hitpoints. This forces players to make sure their riflemen seek shelter in nearby cities, forests of trenches, whereas tanks can freely go wherever they please. In response, a player could use this knowledge to predict where the enemy units will go and attempt to occupy or bombard those spaces. We hope these changes create more strategic opportunities and make Frostbite more interesting to interact with overall.


Because our game changes almost every week and our playerbase is still growing, we wanted a rating system that is simple and also quite loose; a player should be able to win just one or two games and immediately see a change in their rating. Also, the rating system must reflect not just whether they won or lost, but also the score the player obtains after every match. The winner of a match is awarded between 0 and 100 points based on how well they did in keeping the map intact, whereas defeated players always get 0 points. As we both studied mathematics before diving into game development, it would be tempting to spend three months coming up with a mathematically ideal system, but we knew that we needed something that was easy to implement and easy to iterate on.

The easiest rating system would be to average the scores of all games played so far. This has an immediate downside: if a player loses the first ten games they play, their rating will forever be dragged down. Even worse, after playing a hundred games each subsequent game could alter their rating by at most 1%, making real progression impossible.

To resolve this problem, we could take a running average of the last ten games played. This would be sufficiently loose: even if a player had lost a hundred games, winning ten games in a row would skyrocket their rating. However this system could end up stifling players who keep track of their wins and losses. Suppose in the last ten games a player played they received 100, 0, 60, 0, 0, 0, 20, 40, 80 and 0 points respectively, for an average of 30. Winning a game with a score of 60 should increase their rating, but their last-10 average would drop to 26 (note that the corresponding line actually drops in the following image, despite the win).

And there lies the crux: we want a simple rating system that increases when you score higher than your current rating and decreases otherwise. We can achieve this by having an iterated function whose fixed point is your average score. We settled upon: R' = 0.9 * R + 0.1 * S, i.e. your next rating is 90% of your current rating and 10% of the score you obtained at the end of the match. If your current rating is 30 and you score 60 points, your next rating will be 30 - 3 + 6 = 33. This gives the players that want to climb a clear objective during each game: obtain a score that is higher than your current average.

There are still some issues with this system, and we will likely change it in the future once we reach a larger playerbase. For matchmaking purposes, we might switch to a variant of the ELO rating system, but we would first need to come up with a way of incorporating the score. So we might end up quenching our mathematical thirst after all...

In this DevLog, I will tell you about Epicinium version 0.16.0, and give a peek into a feature we're currently working on.

A new version

We released beta version 0.16.0 of Epicinium last week. It includes improvements to make the weather system more fair and fun. Since the previous update, we've simplified the weather system, so that the weather effects now depend on three factors:

  • The amount of Chaos, which is a global status affecting the whole map. The more polluting tiles are on the map (everything with a stone surface, but especially Industry), the higher this gets, and it accumulates over time.
  • The number of humidity counters on a particular tile. Every tile starts out with a number of humidity counters. This is usually 2, but Desert and surrounding tiles start out with lower humidity, while Water, Mountains and their surroundings begin with higher humidity. Over the course of the game, tiles can dry out due to gas, adjacent Industry and Aridification.
  • The current season.

All the weather effects encountered in the game depend on these three things. For instance, you will see the speed-reducing Snow on tiles with at least 1 humidity in winter, while tiles with 4 humidity have year-round Snow. Additionally, there's the HP-lowering Frostbite in winter starting at 20% Chaos, the damaging Firestorm in summer at 40% Chaos, the HP-lowering Bonedrought at 60% Chaos, and finally the all-destroying Death at maximum Chaos. Most of these weather effects also grow worse at higher levels of Chaos. Of course, we will keep tweaking and balancing the weather system as we go.

Other important changes include the prevention of a GPU memory leak (remember coding people, if you store sprites and palettes separately on the GPU be sure to also free the palette afterwards, hehe). Also, we added a player list to the UI so you can finally see who you're up against, or get a sneak peak into the players' wallets if you're observing. If you are curious what else is changed, we keep a list of release notes just for that.

We also started recording short featurette videos that each explain one aspect of Epicinium's gameplay. There are two videos as of now, one explaining the basics of the combat system, and the other showcasing Rifleman units.


While we toil through bugs, crashes and disconnects (still in contact with the server hosting company, but it's taking some time to sort out), we are also working on some new gameplay features. One of them I want to talk about for a bit: peacemaking. "What!?", I hear you say, "Peace in a wargame!? Ridiculous!" But that's indeed what we're thinking of.

You see, right now there are two ways a game of Epicinium can end for you: either you lose because all your cities got destroyed or captured and you get a score of 0, or you win because you are the last player remaining and you get a score equal to 100% of the Grass / Forest tiles still left on the map. With the peacemaking feature, two remaining players can, under certain circumstances, negotiate about ending the war early while both get a percentage of the points remaining.

Of course, peace must be hard-fought, so as we have it in mind right now, a player will get the opportunity to make a peace offer when the other player captures one of their cities. (But not their last city, for then they would have lost.) The other player then has one turn to decide to accept or decline this offer. By linking peace offers to the capture of precious cities needed to survive, a power shift needs to occur before the possibility of peace. Hopefully, this will make the possibility of peacemaking exciting and fun, and also discourage match-fixing situations.

For an example of how this might work, imagine Anna playing against Bahram. They've been playing for a while, and Anna has a slight advantage and manages to capture one of Bahram's three cities. Bahram knows this is bad, but he figures he might be able to make a comeback if he started building tanks, since Anna is using mostly riflemen and relies on farms for income. However, he also knows that the battle would probably still take a very long time, his industry and tanks destroying most of what's left of the environment and thereby robbing him of a good score at the end of the game. Therefore, he decides to send a peace offer for 45% percent of the points. Anna is not so sure she can convert her advantage to a victory, so she accepts and the game ends there and then with 68 points left over on the map, of which Anna receives 37 and Bahram 31. If Bahram had decided to continue, there would have been a chance of winning, but with less points, seeing that the entire map would've become unlivable by the end of the war.

This feature will require a lot of testing to make sure it's fun and balanced, so this likely won't be in the next version, but stay tuned and let us know what you think! :-)


(1 edit)

We hold weekly online Epicinium playtests on Saturday from 20:00 to 00:00 GMT. The next one will start in 6 hours from posting. It's always a blast, and we're looking for more participants, so I really hope you'll join!

This week, we tried to figure out what's causing the infrequent dropped TCP connections. After a lot of fiddling around with Wireshark and tcpdump, I concluded that the problem lies in the transport layer or deeper. I've contacted our server host to get to the bottom of this. Luckily, the problem doesn't occur that often, but it's annoying when it does, of course.

Meanwhile, work continues on music. I've drafted some compositions for the title screen, but I haven't yet completely captured the right vibe for the game. I hope to have something ready for you to listen to soon.

Following our previous introduction video, we recorded a new gameplay video, where SLiV and I try out different strategies against each other. Let us know what you think!

(3 edits)

Hi all! I've been developing this game together with my friend SLiV for the last months. I'm excited to share occasional updates and insight into the development process with you. Epicinium is currently in open beta; download links can be found on our project page.

The game currently features online multiplayer 1v1 and 3- or 4-player free-for-all games, as well as AI opponents and an in-game tutorial. We're actively developing this game, so we try to put out a new version every week or so. Every Saturday we hold an online playtest session starting at 20:00 GMT, which you are of course very welcome to join. We also livestream this event on SLiV's Twitch channel.

I must say we've been somewhat overwhelmed by the response since making our project page and posting a release announcement: already more than 300 downloads and several players per day joining the server and trying out the tutorial. Sharing our project with the community has done more for us than months of bugging friends and family to please go play it. We're very encouraged by the response, thank you so much! :-)



Epicinium is a multiplayer strategy game where the players' impact on the environment matters. Combat destroys grass and crops, and trees are trampled as tanks drive towards your opponent to level their cities. Industry accelerates global warming to ludicrous levels, causing more destruction the longer the game goes on. At the end of the game, the winner is scored for how many grass and forest tiles still remain on the map.

How to play

Epicinium is a multiplayer strategy game with simultaneous turns. Each turn consists of a planning phase, where all players decide which orders they want to give their units that turn, followed by an action phase, where players watch as the the orders play out.
Units will automatically attack enemy units they encounter; they will also fire back when attacked and attack any unit that moves away from them. Some units have abilities that allow them to bombard tiles, randomly dealing damage to whomever and whatever is present at that time. Anticipating your opponent's orders is key.

Between rounds, the season changes which might bring about new weather effects such as snow, drought or firestorm. At night, buildings can gain power and generate income. Cities only gain power if surrounded by enough grass, forest, water and crops, whereas barracks and industry grow larger when additional cities are placed nearby.

To defeat your opponent, capture or destroy all of their City tiles.

Introduction video

For an idea of what a game of Epicinium looks like, watch the introduction video where SLiV commentates a match of himself taking on the HungryHippo AI:


SLiV and I started development on Epicinium last May. After studying at the University of Amsterdam and working as software developers for a while, we found we both aspired to be full-time video game developers, wanting to combine the logical challenges of coding with our creative impulses. We had several ideas for games, but had to abandon some of them because they proved too ambitious for us at the time (but I'd love to return to them in the future!).

Eventually, we settled on our current idea: a multiplayer turn-based strategy game, inspired by Advance Wars, but with a twist: the war between players impacts the environment. As a consequence, players have to strike a balance between maximum firepower and not destroying the world we live in. After all, is it worth winning a war when you end up conquering nothing but dirt and ash? This inspired our working title, Aftermath.

We built the game in C++ on top of SDL. After working on the engine, game logic and combat system for a few months, SLiV made the initial sprites and I the initial netcode so we had a playable prototype. We held a few alpha playtests with a bunch of friends in the same room, which proved to be very fun (though bug-ridden). In November, we decided to rent a server and start an open beta. This is a multiplayer game after all!

Since then, our development has focused on making the game more accessible, understandable and attractive. Recent additions are an in-game tutorial, gameplay sound, a simplified weather system, 3- and 4-player maps, and loads of bugfixes and balance improvements. At the moment we are working on:

  • Increasing our exposure and playerbase.
  • Resolving a persistent networking issue where TCP connections are occasionally half-dropped without apparent reason.
  • An HD version of the planet logo.
  • Finding inspiration for the title screen music.
  • A dynamic gameplay music system that reacts to what's happening on-screen.

Interesting points

Some points that I think are unique about Epicinium or interesting to fellow developers:

  • Built by two people in C++ on top of SDL with our own custom game engine.
  • Developed in Linux, compiled for Linux, Windows and Mac OS X.
  • A simultaneous turn system, where players issue their orders at the same time in the Planning phase, and then watch them play out in the Action phase.
  • Combat system in which the units don't have "hit points" in the traditional sense. Instead, a unit consists of figures which each take a certain amount of hits to kill, without memory. This way, a player can see a unit's health and strength at a glance by counting its figures. See the wiki for an in-depth explanation.
  • The game logic is separated from the visualization. The server communicates with the client via a JSON API, only sending the information the client should have access to. No fog of war cheating here!
  • It is easy to do a quick simulation of a game because of the board game-like logic. Simulating multiple complete games per second is very interesting for developing AI opponents, for example using neural networks.
  • Inspired by old 8-bit games, the visuals use indexed sprites, where the color palette is sent to the GPU separately. This way, we can transition smoothly between colors by simply updating the palette. We use this during the day/night, snow and window light transitions, for instance (not properly captured by gifs).


We will regularly post updates here. We're curious what you think! Comments and feedback are very welcome and we will happily answer your questions and go into detail.

Mailing list: (stay informed about the latest Epicinium events and updates)
GitHub: (binaries, release notes, documentation and game rules wiki)
Discord: (find opponents and have a chat with the developers)
Twitch: (SLiV streams the weekly playtests and occasionally development; watch past streams)

(1 edit)

¡Hola CeesarL2002!

I'm afraid that's all the Spanish I know, so I hope it's okay if I continue in English. Thank you very much for downloading Epicinium. I'm curious what you'll think of the game, and whether it works at all under Arch Linux. We compiled under Debian 7, so there's a big chance that the binaries won't run in your distribution. Please let us know whether it works.

Thanks Amewingcat! Curious what you'll think.

Thank you, null! :-) SLiV did all of the spriting for this game.

(1 edit)

Hi all! I've been developing this game with my friend SLiV since May, and I'm excited to share the beta with you here on If you are interested in checking it out and maybe leaving some feedback, that would help us out a lot. I'm also very happy to answer any questions you might have.

The game currently features online multiplayer 1v1 and three- or four-player free-for-all games, as well as AI opponents and an in-game tutorial. We're actively developing this game, so we try to put out a new version every week or so. Every Saturday we hold an online playtest session from 20:00 GMT, which you are of course very welcome to join (there's one in 2.5 hours from posting). We also livestream this event on SLiV's Twitch channel. If you want to stay up-to-date regarding new developments and events, you may consider joining our public mailing list.

Epicinium is a multiplayer strategy game where the players' impact on the environment matters. Combat destroys grass and crops, and trees are trampled as tanks drive towards your opponent to level their cities. Industry accelerates global warming to ludicrous levels, causing more destruction the longer the game goes on. At the end of the game, the winner is scored for how many grass and forest tiles still remain on the map.

How to play

Epicinium is a multiplayer strategy game with simultaneous turns. Each turn consists of a planning phase, where all players decide which orders they want to give their units that turn, followed by an action phase, where players watch as the the orders play out. 

Units will automatically attack enemy units they encounter; they will also fire back when attacked and attack any unit that moves away from them. Some units have abilities that allow them to bombard tiles, randomly dealing damage to whomever and whatever is present at that time. Anticipating your opponent's orders is key.

Between rounds, the season changes which might bring about new weather effects such as snow, drought or firestorm. At night, buildings can gain power and generate income. Cities only gain power if surrounded by enough grass, forest, water and crops, whereas barracks and industry grow larger when additional cities are placed nearby.

To defeat your opponent, capture or destroy all of their City tiles.

Introduction video

To practice for the livestream we recorded an introduction video, where SLiV commentates a match of himself taking on the HungryHippo AI.