Ultima Ratio Regum is a middle-ground between roguelikes, RPGs and strategy games. It has no fantasy elements and seeks instead to be closer to a realistic history simulator, and a strategy/4x game which just happens to be in ASCII. Combat is rare and deadly - whilst these mechanics are modeled in detail, exploration, trade and diplomacy factors will have just as much effort put into them. URR aims to eventually be a fusion of roguelike and strategy two genres - rather than a strategy game where you command with omniscience (even in ancient eras), you instead command as an individual character also in the game. Orders must be issued in person; you can lose contact with distant armies; but the same mechanics affect the AI players who also lack omniscience and depend upon the knowledge of situations they themselves can garner. Worlds can be generated over a vast array of sizes, climates and types, but all ultimately with no fixed objective but a world full of civilizations and factions to be allied with or battled against. It aims for depth in character development and world events, but with much in the 'middle' - constructing buildings, city growth, resource management - abstracted out (as other games exist which handle those well). Political and social dynamics will be modeled via a complex system that aims to generate both a history for the world, and the current state of political affairs when your game begins.
Things have happened in the world of URR since our last update. Here is a run-down of some of them:
Throwing is basically finished. You can throw items around, and they will bounce off objects they hit and hit the floor, or just hit the floor immediately if you throw them at it. Tripwires will be triggered when you throw stuff at them, but currently pressure pads will not. I’m still debating whether there should be a weight requirement for triggering them, but I’ll update here once I’ve decided how this aspect should work. Additionally, message adjust themselves based on your knowledge. For example, if you throw a stone through a tripwire, it will produce one of three different messages. If you can see it, it might say “The stone falls to the floor and triggers the tripwire!”; if you cannot see it but have previously explored it, it might say “The stone falls to the floor, and you hear the tripwire release!”, and if you have never explored it, you might get “You hear the stone fall to the floor, followed by a loud snapping sound!”. There are equivalents of these messages for everything your projectiles can possibly hit, which has already built up into a pretty impressive database of messages.
Almost all forms of terrain now come with their own lookup images, all unique and procedurally generated. This is something I’ve been meaning to get done for a while, so I just spent a few hours and put together some graphics I liked the look of. Some are more “realistic” and others more stylized, but I’m very happy with how they all look. Here’s a selection. Row by row, left-to-right, these are snow, sand, rock, dried lava, grass/undergrowth in the tropics, savannah, temperate and taiga, the bark of a tree, some branches, lava, and water. I probably shouldn’t need to say it at this point, but these are naturally all procedurally generated for every tile. Some of the wood/tree colours are a little stylized, but they generally try to adhere to a reasonable level of realism/accuracy.
You can now export the interior or exterior level you find yourself on, by pressing ‘X’, which will save to a .png file appropriately named (e.g. “25x29_Ex”, for the exterior of map grid 25 [x-axis] by 29 [y-axis]). Alternatively, the first floor interior of the first ziggurat on a grid would be saved as “25x29_Z1_F1″, and that kind of notation will be expanded to everything else. That function is still in its early stages – and later on you’ll be able to save and export information about your character, or the world’s histories and civilizations and so on – but this is a good start.
The Great Bug Purge
Over the last fortnight I’ve hacked the number of bugs and small fixes I wanted in this version down from a towering 50 to a mere 2 at time of writing, both of which are decidedly non-essential (they are more like slight improvements, not actual bugs). As such, I’m now moving onto developing the health system. Additionally, from this point onwards I’ll be increasing blog entries back up to one per week as we move towards the 0.4 release at the end of December. All that remains is the health system – or, at least, the components of it relevant to this release – and some very simple things like ensuring general “terrain items”, like branches and stones, spawn, and that some start in the player’s inventory. I was intending to allow you to create several items this release, for example oil-soaked torches (combining a torch and some oil, funnily enough), but there isn’t going to be time for that feature. I’m therefore going to push it back a version or two, and that’ll give me more time to think about what other item combinations I want to allow.
Until next time you can keep up to date on my devblog, Facebook page, or Twitter feed. The devblog is updated weekly or fortnightly generally on Saturdays, Facebook a few times a week, and the Twitter roughly daily. Any thoughts, please leave them in the comments! Stay tuned...
Latest tweets from
It can take up to a few hours for tweets to begin appearing.