Hello everyone! Welcome back. Over the past few weeks I’ve noticed that the situation I find is that a lot of the new features for 0.11 are 90% done, or even more so, but aren’t totally finished, or still have a few bugs, or things of this sort – and I’ve realized that I really (psychologically) need to get these sorted out before I can go any further. As such, this week’s update is not on a single topic like the last one, but instead is focused on my efforts to finish off a huge amount of the features I’ve revealed in previous entries but hadn’t quite put the final pieces together for, as well as a huge delve into the frankly massive list of bugs and fixes required that are currently on my list. After many updates now all full of brand new features, I think it’s good to have taken a few weeks to really emphasise the polish and the completeness of what’s being added, and to take the time to go back and make sure everything I’ve so far implemented is as bug-free, fast (in a coding / processing sense), and user-friendly, as I can possibly make it.

As such, without further ado:

Naming farms and slums

Firstly, we return to the map and the world detail. Much of the world map has been named in detail until now, but a few things were missing, so I’ve gone back and designed generators for all of those. The first thing was farms, so there are now a half-dozen farm name “archetypes” and within each archetypes, thousands or millions of permutations. Here’s an example of a large number of farm names that might be generated within one given world:

And at the same time, I also noticed that while graveyards outside cities do have generated names, slums outside city walls do not. Again, this was an easy and crisp fix:

And these now all show up when you look at the area in question…

…which is a comment that brings us nicely to…

Updated map viewer

I mentioned two entries ago that the sentence previously generated on the right-hand side of the map screen when you’re looking at a location was getting very long and hard to read, especially now that I was including the names of bioregions and areas, the names of locations, and all these things, so I decided to rationalise this. I’m really happy with the changes here. Essentially the game now just looks at how many things there are to “report on” on the map tile the player is looking at, and then just lists them all. This could be only three – the bioregion, the terrain, and the height of the terrain – but could be a huge number if you have all those, but also a river, and a road, and a settlement, and it’s within the borders of a nation, and it’s on a mountain, and so on. The colours for each thing are selected appropriately for each category of thing the window shows, while for named locations (towns, cities, farms, whatever) it’ll tell you what the structure is, what it’s called. So here, for example, I’m checking out a town:

And here I’m just looking at a river:

Or a desert:

Or a farm:

This is so much clearer and crisper, and really helps the player immediately see what’s going on. It also finally includes the bioregion modifier, which has been present but sort of buried under the rest of the UI for a little while now. As such, as part of this, the map also now have a 4th potential view type! Previously you could view terrain, territory, and height, but now you can view bioregion / area. To begin with, I reworked the code that determines bioregions, allowing one block of a certain kind of terrain, such as temperate forest or desert, to actually be split into multiple regions, so that you don’t just get a single huge region that’s a single desert stretching across the world, or something like that. I also added a range of new name generators for regions, so they aren’t all “The [Colour] [Animal] [Area]” but have instead a range of different name types. Here’s a false-colour map of the various regions with the new generator in two pretty standard-looking worlds:

As you can see, we have a nice range of big regions, small regions, and some regions are bordered between different terrain types (you can’t see this easily here, but just take my word for it) but other regions share terrain types. I think there’s a great number here and I really like the non-square and non-geometric distribution of these, as they really evoke that kind of organic / natural randomness that I was looking for here. In turn, then, here’s the new map view type for these areas, where each area has a colour selected that does not match any area it orthogonally or diagonally touches; it was an interesting little challenge to make this process as code-optimal as I could, but my coding has come a long way in the last decade (or so I flatter myself) and so this really isn’t too dreadful (i.e. time-consuming) a process during world generation. Here, then, is the bioregion view in-game:

Another good addition I think! As ever, so much at this point is about adding new layers of complexity, new kinds of variation, new things that can be talked about or referenced or discussed in clues, or whatever it might be. I think the bioregion is a cool new piece of this (even if the code has been in the game for, uhhhhhh, six years now I think? Let’s not talk about that).

Finishing off relics

Firstly, I’ve finished off a few remaining aspects of complexity around religious relics that needed addressing. One of these was making sure that the shown colour of a relic, and the colour word that might be in its name, always matched up – this is tricky because the range of colours and the way that particular “colour” values might be stored all differ for every relic archetype, and not all the relic archetypes even have colours specifically stated in them, and so it took a little while to make sure all this matched up. In turn, I also then had to make sure that the relic item in the game world, i.e. the character / colour one might see in one’s inventory or on the map, ALSO matches with the colour, and again, this is different for each archetype. All this was genuinely quite time-demanding for the same reasons described above, but I’ve got it done now, and colour and image, and colour and icon, and colour and name, all match up correctly at last. Here, though, are some examples – and I am indeed aware of the one typo here, and it has been fixed…

Finally on this point, I’ve finished off the graphic generation for a rather fun new relic archetype I’ve been slowly working for a while now: the weird otherworldly fruit. I have to be honest, I bloody love how these look, and they were a lot of fun to design the generator (and the name generator) for! Later these will be specific to nature deities (once I include those in the game), but for now, I’ve just added them to the general relics pool for religions that aren’t demonic, Lovecraftian, or animal-y. As with all relic generation types, of course, every single type will need to be able to integrate itself into the mythology of a given religion once we get to generating the text in holy books, and I anticipate some really cool and novel combinations coming out of this. Anyway, here are two generated examples from the weird fruit archetype, dear readers, for your consideration:

Volcanoes!

Next, volcanoes now have generated names, and there are far more volcanoes now in each generated world than were previously the case. There’s plenty of obvious cool clue / historical stuff that we can include here, but for now, these just add a bit more variety to the world, and continue the trend of giving everything in the game I can possibly give a name, a name.

Mesas and chasms

Likewise, mesas and chasms now have generated names! Here are some mesa ones…

…and some chasm ones:

And here they are, for example, on the world map:

Desert tombs

We also now have a nice little generator of names for tombs beneath fortresses, and these now show up on the map, though the actual locations cannot be accessed quite yet:

Notes

We also have various cool new developments on notes. Firstly, looking at a note for the first time will change the name of that note from “Unread note” to a summary of whatever is in the note. So if it’s text, the name of the item will change to as much of that text can fit into the window, as shown here in this before, and after, shot of the “notes” part of your inventory:

I’ve also added a new category of clue note, and I think these are really neat and interesting. One of the key things with these sorts of puzzles, ensuring that even experienced players will need to decipher afresh, will of course be maximizing the number of things these might mean – so perhaps (all within a given playthrough) they might sometimes represent an area in the world, or the cosmology of a religion, or the layout of a battlefield, or the design of a particular building, or a sequence of actions, or relationships between factions or groups or people, or…

…and then, in turn, how you use them will also have massive variation, so maybe sometimes they’re pointing you to something, or you need to show the right note to the right person, or they’re clueing you in to a falsehood in another clue, or adding a piece of knowledge about a clue set where you had almost everything you needed but not the final piece, or telling you a place to visit, a person to talk to, or…

Anyway, you get the point. You’ll also observe though that the game can still generate a nickname for these notes based on whatever the player sees on them, which I think is a nice little touch!

And you might notice this “cryptic decorated note” at the very start of the notes list here. This is the first ever plot item in the game (!!!!!), and you always start with this note. I enclose it here for your perusal:

(And, indeed, this phrase is the first hint I think I’ve ever put in about the game’s overarching mystery / plot – a sure sign that things are really moving forward now! I wonder what it means? And, as a general reminder, in the near future I’ll be generating in-game universities, and the player will start at one of these rather than just generally in the city of their home land, and will always be given this note, and then a set of procedurally-generated notes, clues, maps, items, etc, to get them started on their quest…)

Elite fighting groups

I also went back to the generation of names and details for the elite fighting groups of each nation, as some of these were very unfinished and a handful of them needed to be integrated more fully into the religious and cult details. This has now been sorted, so here for example is a bit from the debug screen which shows a set of elite fighting groups for a religious freedom nation, which evidently has one elite group for each of the religions present within that state:

Chests

Last but not least, in the last couple of weeks I’ve also gone back to chests. In a previous update I described the image generator for chests and how we have various different types of chest – lower level chests, mid level chests, upper level chests, religious chests,  cult chests, and ancient / mysterious chests. All of these can generate the graphics correctly (and all I think look pretty cool close), but they aren’t currently fully generating in the game world. This has now been resolved in a large number of ways. Locked chests now appear in a range of different locations. They now spawn in all upper class housing, in all cathedrals and religious buildings, in some middle class housing, in a very very very small volume of lower class housing. This number this number might be expanded in the future, but it’s definitely sufficient for now, and in turn all of these are presently locked chests which which the player cannot at present open – developing this further will depend on implementing the mechanics for for acquiring keys, you using keys, and so forth (all of which will actually not be too huge – just give every lock a unique ID, every key a unique ID, and then we’re golden, although it will be more complex if the key generates before the lock that it needs to fit). Anyway, here’s me going into a mansion, up to the upper floor, and finding chests in all the rooms:

…and here I’m doing the equivalent in a religious building (while also checking out a few statues and things along the way):

For now, therefore, these are just another nice addition to the game world, as well as an anticipation of a very important set of mechanics which will be coming through in the future. In near future blog updates I will of course soon be returning to treasure maps, hunting down treasure, finding chests when you dig up treasure, and things of this sort, so I’ll be returning to chests at that point as well. I think that all dug up chests will be unlocked chests – because I can see it being extremely frustrating that you figure out the exact location of some obscurely hidden chest, only to then find that it’s locked and will need other steps before it can be opened – and so I suspect the model I will likely settle on is that all non-hidden chests are locked, while all hidden chests are unlocked, thereby the quest for both only requires one step rather than two (find the key, or find the chest). Again this will need playtesting, but instinctively this sounds to me like quite a good combination, so this is what I’ll be going with for the foreseeable future.

What next?

Whew! That was a lot. Exciting stuff though, I think.

Now, as I mentioned last time, I’m now going to attempt to make updates a three-weekly deal. This is a little more ambitious, but I’m settled into my first home, my brain and body are both feeling good – let’s give this a shot, shall we? So, I’m publishing this on 19/05/2024, and as such, you can expect the next update on 9/6/2024. 

Please do let me know what you think of this week’s update, and I’ll see you all then!

12 Comments

  • Another impressive update. The new map viewer and note summaries are both very useful additions — in a text-heavy game, it’s all too easy to get buried in an avalanche of words, so being able to see only what’s pertinent (at least initially) is a big improvement. I also like the new colorful bioregions map.

    And I LOVE the Weird Otherworldly Fruits! I just started playing Torment: Tides of Numenera, which is set in the distant future, and one of the best parts is finding and interacting will all sorts of bizarre and interesting inventory items just like the Weird Fruits. I do think you ought to consider adding them to Lovecraftian & demonic religions as well. I wonder if they will have strange effects on your character if they eat these fruits? Although it’s probably not a good idea to eat a Lovecraftian fruit…

    Also: the volcano names are incredibly badass (Pyrescream Mountain would be a great name for a volcano-themed roller coaster), as are the elite fighting groups. It’s good to see chests now too (maybe some of them will be trapped? Or be mimics?). I’m also thrilled to see a hint about the plot! I know you’ve had various ideas for this over the years and I’m excited to see where it goes.

    One final question: with such an emphasis on named places and things in URR, will the player have a chance to name any things themselves?

    • Thanks crowbar! Yes, exactly, when there’s already so much text, I think that things which DON’T have to be full sentences need to be reduced down from that, and made a lot more accessible. This was a really good example. Glad you like the fruits, hah, and they might well indeed become available for Lovecraftian religions as well, at the very least. There is indeed an option to eat them – a handful of relic types have special “use” options depending on the nature of the relic – though at the moment I think you’ll just get a message about a gross taste, and leave it at that. No mimics, but trapped chests, oooh, it’s an interesting idea. A really interesting idea, actually – I could add more symbols to chests, and one needs to discover which symbols denote safe chests, which are unsafe, which are unsafe but you can handle the trap, etc… a great idea! Let it sit with me for a bit.

      You know, that’s a really interesting question. At present, no, but I do intend to allow the player quite soon to write their own notes (or rather the game will write it for them when you tell it what to note) and draw their own maps, as well. As for naming things… that’s really interesting. Again, let me think on it!

      • Might sound weird but something I love about Project Zomboid is the ability to actually use notepads if you have something to write with. Was also an option on the original Deus Ex, you could create your own notes in your own Databank. Stupidly immersive stuff, instead of opening up Window’s Notepad and write down “Gotta go to (X place) and (do Y) thing” I can do that but inside the game, with the game’s font and UI, without tabbing out to another program.

        I’d cream myself if this became a feature in URR. No really it would make me so happy ; _ ;

  • The locked/unlocked chest thing sounds good, as it probably makes sense to hide a chest that you cannot lock!

    It’s really great to see this game shaping up. Great work Mark.

  • Hi Mark,

    Brilliant updates 🙂

    I’ve just returned from a trip to York, first time visiting and the architecture is amazing. The hotel we were staying at had a brilliant view of the city, I read the previous couple of updates whilst looking out over York Minster. It was amazing to read these updates regarding religion and state and then see some real life inspiration regarding some of the religious relics and how they will all be established in a unique way. Looking forward to digging into each culture and faith and get lost in their lore. Didn’t manage to see the University unfortunately but did have you and URR in mind whilst walking the streets.

    I specifically searched up the period of the scientific revolution to compare some of the date marked for the history of each building to imagine the sort of structures in game.

    All the best 🙂

    Kyle

    • Thanks so much for the message and the kind words Kyle! Aaahhh, York – I haven’t really travelled since the plague, though I do look forward to revisiting it one day. So much has happened in my life since then that I’ll be fascinated to see what I think of the city, to rediscover it with fresh eyes, and so forth. The Minster is indeed totally magnificent, it honestly had a really lasting effect on me when I was studying there (having not really lived before then in places with such grand architecture, and not really starting to travel in my own right until my early 20s). I’m so glad you enjoyed the trip!

  • Hi there!
    I’m following this development for many years now and find it very interesting.
    Are you planning to work with AI systems in the future and if yes – what would you use them for?
    Cheers!
    Greetings from Austria!

    • Thanks for the message Wolfgang! I am not, assuming you mean things like ChatGPT and its ilk? URR is full of procedural content generation, but that kind of AI stuff doesn’t really fit here at all!

      • Hi there! I don’t really know much about specific llms, but I am interested in the mathematics behind them and wonder if they could be used for some experimental stuff, like how to simulate a generated world in real time while playing. What would be the changes and in what way they affect teh gameplay.
        Cheers!

        • Thanks Wolfgang! I agree they’re really interesting, though I actually increasingly see a significant gap between PCG and LLMs – I’d have to really think about the exact terminology, but it’s something to do with curation and precision, and intention as well, I think (i.e. all things the LLM lacks). I’m sure an LLM could produce something that would be novel and interesting, but would certainly lack the focus and direction that PCG offers. I confess that also, in my teaching life, I have such a resentment now about the wretched things that I couldn’t imagine using them! But: I’m definitely keen to see what *others* produce with them in the coming years (AI Dungeon, for example, is very neat)…

Leave a Reply

Your email address will not be published. Required fields are marked *