A roguelike game inspired by the literature of Jorge Borges, Umberto Eco & Neal Stephenson, and the games Europa Universalis and Dark Souls. URR aims to explore several philosophical and sociological issues that both arose during the sixteenth and seventeenth century (when the game is approximately set), and in the present day, whilst almost being a deep, complex and highly challenging roguelike. It explores questions of philosophical idealism, cryptography, linguistics and the writing and formation of the historical record, and will challenge players to hopefully think in ways and about themes that are rarely touched upon by games.
Generating in-game histories: leaders, settlements, discoveries, disasters, colonies, conflicts and more!
Posted by UltimaRatioRegum on Mar 30th, 2014
This week I’ve been working on the in-game histories. These can be viewed in the encyclopedia, and can either be looked through in one long list or according to the category they fall into. As you can see from the pictures here, histories currently fall into eight categories – colonies, conflicts, cults, disasters (natural disasters, plagues, etc), discoveries (languages, technologies), individuals (rulers, important soldiers, religious figures, etc), religions and settlements (although the term “Settlement” is used in a specific term in the game to mean hunter-gatherer settlements, as opposed to feudal Cities and Towns and nomadic Fortresses, in this regard settlement just means all population centers). Each category has its own associated icon.
All the histories you see here are procedurally generated to a greater or lesser extent. Some build upon archetypes that vary game-by-game, whilst others have a huge range of different sentences that build up into a coherent story. The above screenshot also showcases one important aspect of the histories – any NPC mentioned in a history who is still alive will spawn in game (NPCs will be spawning in a few releases time – we’re getting close!), any weapon mentioned will appear somewhere, any and every town/city will be on the map, and so forth. As well as giving hints towards the story and – I hope – just being generally interesting/varied tales to read, the histories will also highlight potential items, people or locations of interest. In later versions histories will only “unlock” in the encyclopedia once you reach a logical location – a city’s history will only appear once you discover it, the history of a language’s discovery when you find the appropriate book that records the initial research, etc. I’m still working on the precise triggers, but when you begin the game you’ll only start off with the history known to your civilization (and also histories from the perspective of your civilization). For this release, however, all histories will be visible except for cult histories (which will remain hidden), most discovery histories (because a lot of those hint towards hidden parts of the later game) and individual histories (because I’m still working on how those are going to function, and those may stay absent until NPCs are added a few releases down the line).
So, what does all this mean for you, the player? Well, for starters, it means an early release! This is going to be my fastest release yet (surprising, given the first two months were very academia-heavy); I’m currently expecting to release – at the very latest – in the middle of April, thereby making this between a 3 and 3.5 month release, as opposed to my others which have ranged inconsistently between 4 and 6. This has come down to my general improvement as a programmer and also, in part, my attempts to “standardize” and optimize my coding practice a little more (thereby speeding up development times) in the lead-up to something I’ll be announcing soon after this release. As for 0.5, all that now remains is tidying up the encyclopedia a little bit then a whole range of small optimizations and bug-fixes for unusual situations that can occur in world-gen such as handling unusual angles were territories meet, speeding up the placement of roads, limiting the number of towns a civ can spawn, ensuring the game never runs out of feudal flags to generate, adding some more variety to religion names, etc etc. Within a week from now I would hope to have a build that is pretty much finished, assuming all goes according to plan. I’ve also worked on upgrading the “Choose a Save” page to give much more information about each world you might have saved, whilst at the same time hacking down saving and loading times even further (because those can never be hacked down enough), and on a rather snazzy new world gen screen that’s a great improvement over the old one. See you all next week, when I’ll be talking about Something Else. Until next time you can keep up to date on my devblog, Facebook page, or Twitter feed. The devblog is updated weekly on Saturdays (or sometimes Sundays), Facebook a few times a week, and the Twitter roughly daily. Any thoughts, please leave them in the comments! Stay tuned...