The Indie game with 75 Million fantasy races inside it. Enter the strange and wonderful world of ‘Warsim: The Realm of Aslona’

Huw Millward
Aug 6 · 11 min read


Warsim: The Realm of Aslona is a game where you manage a kingdom in a wacky world filled with magic, monsters, and all manner of weird factions who occupy the world.

The race generation system while not being the main focus, has been a core part of Warsim since early development. The aim was for there to be a number of unique and strange kingdoms and cultures that would occupy your world and in some way shape your game. There is no hand-holding or balance with the race generator, you could get a bunch of savage races who won’t speak to you, or a few kingdoms of powerful and civil folk you can form alliances with; or a mix of the above, or a mix of something completely different.

I wrote about the race generation system when it hit over 300'000 possible races, as at the time that was an exciting milestone, However with overhaul and significant development from a lot of great player suggestions we are at over 75 million possible races and I couldn’t be more happy with it. At first I thought to get to a number like this, quality would have to be sacrificed, instead with a lot of work I think the system is better than ever!


This is a point that’s been raised by a few people, especially critics of procedurally generated content over hand-made content, and in a way it’s true; the 75 Million races thing sounds interesting until you realise that you only start out with 5 in your gameworld, and even seasoned warsim veterans will only likely see at most a few hundred different races.

While I accept this point, I still think that by there being such a wide array of varied races each with their own features abilities and effects on the game, it allows for a real mystery of a loadout. You never know what you’ll get in your game world but also you know that whatever you get, statistically no other player has ever seen it before, which means the world you experience in game is very much unique to you.


This is something I’ve always thought important and aimed to deliver, each race feeling completely different to eachother. A race in the game constitutes the following data:

  • Kingdom name and Type (i.e. The Lost Viceroyalty, ruled by a Viceroy instead of a king).
  • Currency (with its own currency graphic), however, primitive and savage kingdoms might not have currencies.
  • A ruler with a unique personality and stats (of course, these can be killed and replaced), and in the case of Ungovernable races the leaders are replaced annually.
  • A government system, i.e. totalitarian, individual, feudal, etc. Some government systems don’t allow for nobles/lords, but those that do will spawn a lord/captain/warlord for each territory, each with their own information and opinions.
  • A unique flag and kingdom colour.
  • A skin colour relevant to their stats and core race identity (Orcs will be green, but Fire Orcs will be red-skinned, and Arctic Orcs will be blue-skinned).
  • Each has a troop tree with three unit types each with their own combat score, and some even having combat abilities (such as resurrecting from the dead in combat, or letting out a warcry before battle).
  • Each kingdom has its own laws and rules such as its own stance on slavery and sacrifices which will also effect its diplomacy with you. A race that’s against slavery will not make deals with your if you’re a slaver.


The figure is calculated using the following formula:

(((BRM X BR) + R) + TR) * ((PRP * SRP) + RP) = TOTAL RACE
(((9 X 262) + 90) + 84) * ((135 * 217) + 352) = 75066204

Now, without context this is total jargon, but fear not context is near!

Our first set of information is the Beast Race Modifier (BRM) multiplied by Beast Races (BR). What this means is for every animal type available in Warsim, there are nine modifiers that can be combined with them to create a unique race. For example, Were-Frogs, Evolved Elephants, Half-Dogs, Exo-Bees, Catmen, Snail Folk, and so on. All in all the 262 animal types mixed with the 9 modifiers results in 2358 possible beast races.

Those 2358 beast races combined with the 90 default races (R) such as Orcs, Elves, and trolls, make up a figure of 2448. The next is Taur-races (TR); this was a system suggested by a Warsim player. The idea was to take a default race such as Orcs or Trolls and make them into a half-them half-horse kind of race, just like Centaurs. The number 84 takes from the 90 default races minus Minotaurs, Men, Satyrs, Faun, Folk, Centaurs. For example, Centaurtaurs wouldn’t make sense and Mentaurs would be pointless as Minotaurs and Centaurs are already the human mix version. What we’re left with is 84 races like Orctaurs, Trolltaurs, Gnometaurs, and Elvetaurs.

In total that means there are 2532 vanilla races without any racial bonuses, traits or origins attached to them.

The second half of the race generator is the race prefix system, race prefixes are the additional parameters on a race such as ‘Ice’, ‘Fire’, ‘Chaotic’, ‘Green’, and so on. There are 352 of these prefixes which are split into two categories, primary and secondary. Both primary and secondary prefixes can be used individually, or can be combined with eachother to make even stranger combinations; such as Chaotic Fire Trolls instead of just Fire Trolls or Chaotic Trolls. Primary prefixes will always be the closest to the race itself, the secondary prefixes will be further away. Chaotic is a secondary and Fire is a primary so you will never see Fire Chaotic Trolls (just didn’t sound right to me).

Some examples of the combinations:

  • Invisible Cavern Trolls
  • Berserk Lake Ogres
  • Merchant Mountain Kappas
  • Tattooed Tunnel Bogeymen
  • Many-Eyed Desert Gnolls
  • Dreaded Battle Dwarves
  • Laughing Fog Folk
  • Big-Eared Fire Gremlins
  • Cowardly Tree Gnomes
  • and 75'066'195 more…

Almost all of the prefixes have their own effects on the races total population and spawn rates, combat strengths, civilisation level, abilities in game, and physical features such as face shape and skin colour.

Here are a bunch of races with many of them having specific visual traits affecting their faces based on their race prefix, for example the ruler of the sightless bogeymen has no eyes, the mini-cthuul is visible smaller than the Swamp cthuul and so on.

In total the 135 primary race prefixes multiplied by the 217 secondary race prefixes is 29'295, plus the 352 total prefixes as standalone prefixes without combining with anything brings us to 29'647 possible prefixes and prefix combinations.

So the 2532 vanilla races, plus the 29'647 possible prefixes and prefix combos results in the outrageous 75'066'204 possible races in Warsim!


So halfway through writing this article I tried to reflect and think, what would I want to see in an article like this if I was reading it, and the answer was… the content of course. It’s not just some math and a little bit of background, but seeing what is actually possible through the system! So without further ado, here’s some random race generation-y goodness.

Here’s a bunch of races from a while ago when I added a few new race effect prefixes such as, Many-Eyed (extra sets of eyes), Albino (white skin), Mutated (random part of face is removed), blind (removes eyes and doubles brow), Longhead/Hulking (double forehead), Longneck (extra neck/lower head part).

Of course, each of those prefixes has effects beyond just aesthetics. I just think it’s super cool to see all of these weird random combos.

As a developer seeing these random mashed up possible races is super exciting. To make the face system I wrote thousands upon thousands of lines of different face parts over the span of years. Prior to the race prefix system things were very basic, each of the 50 or so races at the time felt different but for me they were predictable, and for any player who played long enough they would become familiar and no longer a mystery. With this system the vast majority of what I see is something I never imagined, planned, or designed, it’s something new in a game I know from top to bottom.

Anyway, time for more examples!

Here we see an example of 5 completely different races of orcs spawned in a world. You can see that by the Battlescore of Sultan Yurnakh, that his kingdom of ‘Blood-Orcs’ are likely the toughest of the 5 orc groups. Each leaders stats are based on their races base stats along with their individual personal bonuses. While they look normal, Reaver orcs will raid you each turn like a bandit faction, and Strange Orcs will always have strange and weird customs in diplomacy.
Here we can see a double effect in place on the Baby Volcanic Minotaars, they have a smaller face and it’s red due to the volcanic modifier. Lucas Bogbreath the deformed vampire master looks very irritated. Sidenote, Inbred Arch-Trolls are probably one of my favourite random races ever!
Here are the Chiefs of a many eyed Skeerok kingdom!
Green Slime Corpselords, Short Childlike Psions, Grey coloured Metal Bloodlings, Blue Water Ghouls; each of them different to their basic racial counterparts!

So you get the picture, above were 36 races out of 75 million! Each pulled randomly from the games generator, and each probably not to be seen again.

This was shown in the previous article I wrote on Warsim’s race generation but it still holds up now. Below I forced the same race to be generated three times in one game world, and these three separate kingdoms of Eyeless Necromancers all had vastly different looking people (thanks to the random skin colour system that applies to humanoid races). Each have different crowns, names, titles, slightly different strengths, and different personalities. So even if you were to somehow get a duplicate, it would still be different!

Three instances of Eyeless Necromancers


Not to get too hung up on the varying graphics and looks each race has, there are also many features and functions of race prefixes that lay beyond just the look of them, such as:

  • Doomed (A doomed race will have a set time in the future that their kingdom will collapse. This date can be found on the doomstone, a little stone tucked away in the games exploration system.)
  • Demonic (Demonic races will assist in bringing the demon horde, the games end-game faction, to the world sooner and stronger.)
  • Ungovernable (Ungovernable races are hard to deal with, as each year they kill their ruler. Each ruler will have a different personality so it will be hard to find consistency with any diplomatic action with them.)
  • Hermit (Hermit kingdoms will be significantly poorer and a little weaker in game. Watch out Hermit Gnomes, I’m gonna take those 3 gold coins from you!)
  • Raider (Raider races will act just like bandit groups in game, they will rob you and others of your gold each year unless you are friends with them. So, beware of Raider Orcs or Reaving Trolls.)
  • Stupid (Stupid races are very dumb, diplomatically talking to them is a different game, and sometimes much easier.)
  • Deatheater/Souleater (These are one of the toughest races in game depending on what race gets the prefix added to them. Deatheater or Souleater races will gain 1 point of combat skill per 100 kills made by members of their race, that’s not so bad, but over the course of a big war that can add up. I once had a world with a giant horde of Deatheater Goblins, they went from having 80 Battlescore per unit to over 5000 by the time I was able to crush them, it got desperate and I almost lost control. There are also likely some combinations of other prefixes with the Deatheater prefix that might be basically impossible… so have fun!)
  • Sentinel (Sentinel races protect a special artifact, and they are a bit tougher in order to protect it. If you destroy them the artifact is yours, but get there first or it’ll be lost forever!)
  • Chaotic/Psychotic (These chaotic or psychotic races will randomly change their relation with each faction in the world every year. One turn they might love you, the next they will attack you with all their fury, if they last long enough they will be hated by all.)
  • Chanting (This is a weird one but weird features are encouraged in Warsim. Chanting races will chant a strange and deep chant before battle as your army approaches them to try and spook you.)
  • Laughing (Similar to Chanting races, Laughing races will let out a bunch of creepy laughs as you approach their lands ready for a fight. Can you hold your nerve?)
  • Mercantile (Mercantile races will always be up for trade, and will try to make money out of you anyway they can. You want to visit their lands and have a look at their kingdoms crown… it’ll cost ya.)
  • Space (If you get a space race, the story is that they’ve come from somewhere else and are trapped in your world. At some point in game this kindom might blast off into space on some strange levitating metal structures and be gone from your game forever.)
  • Void (A race with the void prefix will be stronger than usual but that’s not it’s main draw. With the void prefix it’s possible that one of the kingdoms 3 special buildings will be something called a Void gate. If this happens then at some point in the game a unique faction will spawn out of the gate and wreak havok on your world.)
  • Academic (This race will be significantly smarter than others and will have a giant towering library you can visit.)
  • Harmless/Pacifist/Gentle (You can probably guess what these prefixes do, races with these prefixes will not attack you even if they despise you, they will defend themselves however.)
  • Resurrecting (Resurrecting races units will be able to possibly spring back from death mid-battle and keep on fighting, much to the dismay of their enemies.)

Those are just a handful (albeit some of the best ones) out of hundreds of prefixes, which each have different benefits and changes they make to each race!


In summary, thank you for reading and listening to my ramblings. I’m a solo indie developer and I’ve been working on this game for a very long time. I am still massively passionate about it and can’t see any end in sight to the development.

The race generation system is one of many parts of Warsim, it’s just one of my favourite parts to show to people!

Here’s a little show of some of the different vanilla races in Warsim (All of these faces were procedurally generated!)

The game in question is ‘Warsim: the Realm of Aslona’ which is available on Steam and, at $4.99.

If you have any suggestions for new races or prefixes or really any features, share them on the subreddit or via a message If it’s a good idea it’ll probably end up in the game so don’t be shy.

Thank you for reading!

Huw Millward

Written by

I am the developer of Warsim: the realm of Aslona

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade