Too Much to List in a Mere Title

A vast, immense, terrifying update this week. A huge amount has been done in this past fortnight: almost everything required for 0.7 is finished except for some remaining procedural graphics and the last two remaining building interior algorithms, which I’m currently putting together. My intention/hope/plan is to release 0.7 on April 4th. My thesis defence is coming up very soon and I’m preparing for that, so I don’t know if I’ll be able to perfectly hit this deadline or not. In the mean time, though, bask in the ridiculous amount of new building generation! Though first, I must draw everyone’s attention to this Rock Paper Shotgun piece on Dwarf Fortress, URR, and general procedural goodness, which I highly recommend checking out, and to this year’s European IRDC which I’m hosting at the National Videogame Arcade. Please sign up if you’re planning to attend! Now, onto the update.

Mansions, Part II

Firstly, I’ve finished the final set of mansions – the largest ones, found only in upper-class districts, and from which the player will begin their quest from 0.7 (or possibly 0.8) onwards (since the player is a lesser noble). Mansions of all sizes are among the more hand-made elements of the world; there are still many, many variations, but the algorithm which constructs them is more about piecing together and differentiating between a range of hand-made chunks, rather than the algorithmic placement of items, rooms, etc, but that’s just a necessity of the detail (and more importantly, logic/realism) I wanted from these: I tried several algorithms which just weren’t given me outcomes of the sort I wanted, so I’ve gone this way instead. There are ten shapes for the largest mansions; each shape has three different upper level layouts, three ground floor, and three basements, and each of these varies in turn according to colour scheme, table/chair placement, what room is used for what, and also another difference. If the mansion is the one the player starts in, the room in the middle of the ground floor below – containing the nine statues, in three sets of three – will contain nine things, be they paintings, statues, books, or something else, each of which will give you a single initial clue towards the nine items you need to uncover the locations of in the world. For this release, all nine are placeholder statues, but that room will be where you want to start.

Here’s an example of a ground floor and a top floor, with four bedrooms:

Low Massive

Low massive 2

… and another (you simply must enlarge this one and look at it full-screen, just look at the flooring! The architecture! I am almost appalled by just how satisfied I am by how these mansions look):

massive low 2 massive low 2a

… whilst the basements look much like they do for the smaller mansions, i.e. stone/wooden flooring (if servants’ quarters or slave quarters, respectively). On the upper floor, you will also be guaranteed to find one special item in all the upper bedrooms, which you may discover or be hinted towards by various means; however, although the player’s starting mansion will contain the nine initial clues (and other mansions won’t), it is other mansions which may contain special items in the chambers of the nobles in that family, whilst your “starting mansion” will not. Therefore, your starting mansion will get you going on the hunt, whilst other mansions – if you can find a way to gain access – may have things to aid you on your quest. You also see those empty rooms on the ground floor? A storage room, and an armoury, soon.

Officers’ Quarters

I’ve put in the generation algorithms for Officers’ Quarters, located in Military Districts in large cities. There will only ever be one per civilization, and will contain the highest-ranking military officials (and, next version, presumably a logically significant amount of protection); there’s always a decent number of 5×5 chambers, and then one larger chamber for the highest ranking military official in that army (whatever that may be). Here’s a reminder of how one of these buildings might look: flags and fountains for the nation in question will always be found outside, along with a reasonably ornate road pattern, and the OQ is generally either a “corner” shape, or a “trident” shape like the one below:

ThrrpptFor the interiors I decided to use the ornate floor type again here, but once more in a visually distinct way; Officers’ Quarters will always have a “strip” of ornate flooring in the middle, and use ornate flooring in the bedrooms of the actual officers, but then will use stone flooring (the “second tier” floor type for interiors) for the rest of the building. The game places one from a large number of possible patterns of tables/chairs, and then places one from a long list of patterns of pillars/walls on top (deleting any tables/chairs that need to be deleted in the process!), and voila – you have the ground floor. So here we have three possible lower floors from another civilization to the one above, and three upper floors, in one shape:

Officers GRound

OffUpper

The differences are small across a single “shape” of building, but across civilizations, building shapes, floor colours, we actually get a lot of variation, whilst (as ever) maintaining a clear visual style which denotes that these are Officers’ Quarters, and not anything else:

OQ many

As above, in 0.8 you’ll be able to find the highest-ranking military officials here, but it will naturally be a location which is closely guarded. I’ve also worked on the generation of armouries in military districts, but since these are very “practical” buildings (i.e. not ornate in any way), and since weapons and armour and the like are not yet generating, they are not especially interesting! Likewise for warehouses in market districts; done, but currently empty. What is interesting, however, is arenas:

Arenas

Arena interiors now generate for arenas in feudal nations. The arena consists of three components; an overall building shape, of which there are several varieties; a shape for the central “arena” section (the section within the grey symbols, which can be seen through) and the location of various candle stands which keep the entire arena constantly lit, regardless of where the player is located; and then a pattern of chairs (of which there are many) which is then placed in any remaining tiles. The initial “lobby” leads to open doors that lead to the chairs, and also a locked door (which in 0.8 will be guarded) towards an interior area where contestants will get ready, and where you will be admitted to if you intend to fight within the arena. I also made a very rare alteration here: all the chairs have a randomized wood colour (based on woods in that climate zone, of course!) rather than just picking a single wood colour for the entire building, which I do for every other interior. I like the effect it produces. I have also added the code (currently unused) to sometimes spawn arenas which might have certain… environmental hazards. Here’s an example of one I explored:

Anrea1

I thought this gif was especially neat: step through the arena, talk to those in charge, decide to throw yourself into the ring, step out, and suddenly the arena opens up, lit through day and night by candles, and surrounded by (in 0.8 onwards!) a host of NPCs keen to watch the combat…

Gif1

Also: want more gifs in future blog updates? I think you do, but let me know.

Galleries

Added gallery generation! These spawn in city centres and will always contain four procedurally-generated paintings (which will always contain tiny clues, cultural/historical information, etc). One issue was to distinguish this from the lower floors of Officers’ Quarters, so we can see four paintings (the white diamonds) and a pattern of chairs. I took the randomized chair colour idea from arenas and reapplied it here, and had the game place chairs in blocks or along diagonals at different distances from the walls. It’s very simple, but the main function of these buildings is simply to house paintings (and, in the future, relevant NPCs who can give you useful information) – they aren’t the most exciting, but they function. Painting generation coming soon.

Galleries

Embassies

I’ve now developed the interiors for embassies. I wanted to make these very close-knit and very dense, so the game generates a number of closely-linked offices, picks a layout for tables/chairs within them, then generates. The ambassador’s office (the room with the upward staircase) will always contain a few items of note from their home nation, and the ambassador’s quarters can be found up the stairs.

Emb1

Emb1

Emb1

Mints and Banks

The interiors of Mints and Banks are now generating! I once again found another variation on ornate/stone flooring: in this case ornate flooring runs around the exterior of the bank. The code is in place to spawn guards on each vault and a teller on the chairs/table in the middle, and will be used in 0.8. Here’s a bank as you will normally see it, with the vaults un-explored, and then the same bank after the player has (in later versions) found a way inside:

Banko

Mints, however, are rather more exciting now, though obviously also still lacking in actual, y’know, coinage. Whereas anyone will be able to enter banks, mints will obviously be under heavy guard, and some serious firepower or political might will be needed to gain entry. Here’s an example of a mint (with the same ornate-flooring-outline idea to aesthetically link them to banks) where none of the vaults have been opened:

Mint 1

…and here’s another one in another nation where the vaults (which will soon contain that sweet, sweet money) have all been opened:

Mint 2

The staircase in the middle leads down to an underground vault which will contain un-minted bars of gold/silver/whatever, and also probably some coin presses too. These areas will be much more lively come 0.8/0.9 once NPCs and trade are up and running (but also much harder to access!). I’ve also, lastly, temporarily removed currency exchanges from generating; I need to think very carefully about how those are going to work, and where they should be placed, and how that will interact with the player’s actions around the world, and how to avoid it becoming deeply annoying/grindy to switch currencies. I’m now thinking about a system where there are no currency exchange buildings, but rather individuals stationed at every city gate who can perform the service for you? I think that would be better.

Hunter-Gatherers

All the interiors for hunter-gatherer civilizations now generate, though there really isn’t much to see here yet. I won’t be really focusing on these for a release or two, most likely. All the flooring in these buildings is the same as that outside, e.g. taiga, tundra, tropical, etc. You can wander in and look at the lovely doors, though:

Hporay

Reliquaries, Incense Stands, Khachkars

This fortnight I’ve also created the procedurally-generated graphics for reliquaries. These are found in cathedrals only (i.e. only in one location per religion), and there will always be more reliquaries in a cathedral attached to a theocratic nation than one attached to any other kind of civilization. These all have a distinct symbol on the front which one might find elsewhere in the world. They’re quite ornate, and their graphics draw primarily on christian reliquary iconography, but also some sources from India, Japan, and Islamic art. They will naturally be locked by default, and – one assumes – well guarded, but will also contain things of either great use, or simply great value. Here are some examples:

Reliquaries

I also did the graphics for incense stands in cathedrals and religious buildings – these can spawn instead of things like vases, gongs, statues, fountains, etc, and are just another kind of variation. Happy with the algorithm that puts these together: it’s fairly basic, but I think it looks good, and they’re very distinctive.

Incense

I have also added some very, very rare graves to nomadic citadels where only the absolute elites are worthy of burial (the rest are presumably disposed of somewhere else in the desert). For now, all of these graves are Khachkars since I only have time to create one algorithm for those and not for other grave types, but in 0.8 each nomadic civilization will have a different form of burial (cairns, stele, various other ideas). Naturally, all the symbols on this Khachkar might be important…

Khack

Some General Screenshots

Here are some nice general screenshots, though they both happen to be in cathedrals. Enjoy!

Gerng Ofimig

Next Week

There’s only really the remaining graphics left to do now. Things like reliquaries, finishing off all the tables/chairs/beds variations, and the like. There are also a few minor bugs that have arisen in 0.7’s development which I need to fix (primarily one involving external fixed sources of light), and I’m not really sure how long that one will take. I’m pushing for a release on the 4th – there are still a hefty number of small bugs and improvements I want to sort out, and I want a couple of days of playtesting beforehand to ensure I release the best possible version. My PhD defence is in the week starting the 6th, so depending on preparation, outcome, blah blah, the release might end a little after that. Hard to say. Either way, though, 0.7 is in its final stages! Which means the final worldbuilding release will be out in the next few weeks. Hype.

Be Sociable, Share!

27 thoughts on “Too Much to List in a Mere Title

    • Most of the HG doors have a “generic” archetype, but a few like bones have unique ones, since bones aren’t really a “solid” consistent material you can just stick a door in (like stone, wood, etc!)

  1. Do you think you’re going to have some statistics screen accessible to the player where they can see how much of the game they’ve explored? Like you, I think the idea that there is a real world behind every door even if they don’t open them, but what are the other benefits of exploring? Loot? Lore? Exp? Anything to encourage it I think is a good idea as long as it isn’t contrived.

    • Hmm, not sure yet. I like the idea, but at the same time I don’t want to necessarily give the player “meta” information about the world that a human being wouldn’t know (like “how much of the world have you explored?”). So… maybe! Some kind of stats screen, though, which shows things like nations visited, people met, items found, etc, that might be much more workable – things which show what you *have* done, rather than implicitly noting what you *haven’t*!

  2. HYPE

    This is a really good update, congrats. I’m confident for the future about your defence…
    And I like some gifs =) But if it’s too long for you to make or not interesting for you don’t bother, but it’s cool ^^

    • Yes! I’m very, very close to the “go around the world and make sure nothing crashes” phase of development, and I think in a week I’ll be at that point for sure. Happily I’ve found a very efficient gif program, so hopefully some more will be on their way! And thanks re: PhD : )

  3. That’s some good job ! Well done !
    (gif are appreciated, I mean, especially with moving elements, ASCII can be very hard to understand if you don’t see what’s moving and what’s not moving !)

    and good luck with your PhD, even if the hardest part has already been done…

    • Thanks! Yeah, I know what you mean about ASCII, that’s part of my reasoning behind starting to add some gifs too. And I suppose you’re right, the hard part is over, even if I get corrections. Only a fortnight to go, now…

  4. This project is almost unbelievable. The scope and what you’ve accomplished of it in a relatively small amount of time is really astonishing. You’re poised to be in a position of quite some renown for this project, if you aren’t already.

    This is a rudimentary question for someone like you, but how is it, using libtcod, you can get finer-grained tiles than the libtcod tile map (whatever the static array of spaces used to hold the ACSII are called). For example, to draw your generated flags, coffers, etc. I haven’t looked into libtcod much, other than learning you used it for this project.

    • Thanks very much for this message, it’s *awesome* you like the project as it stands now. I’ve become well-known in the RL community, but I recognize it’ll be a little while (but hopefully not too long!) until people who aren’t core RL-fans are given some gameplay to get them interested in the game. In the longer term, I’m hoping to really expand the appeal of the game as far as possible, and probably submit to some indie game festivals in the coming years once it’s not just a hyper-detailed world builder? Hmm, to draw those, I basically print characters to a console in the exact same way I would print to a “map” console for displaying the map; it’s not actually any finer than the standard map! I just use some characters like | and left/right of tile equivalents of | to give that impression. At least, that’s assuming I’ve interpreted your question correctly? The entire game is the 70×105 window or whatever it is, and there are never more characters in any size displayed on it. It’s the same static array of characters, but using a wide set to make it look “higher resolution”!

  5. I’m really liking the theme of symbols that runs through what we’ve seen so far of URR, and how this corresponds to the artwork (great work on the altars, too; I particularly liked the ‘eldritch’ designs). I know that you haven’t gotten to implementing the plot/quest/story aspects of URR, and I’m really looking forward to seeing how the symbols theme will be integrated, especially when you’re dealing with a conspiracy that’s trying to rewrite history.

    Are you by chance a fan of Dan Brown novels or similar history-themed thrillers? I recently finished listening to an audiobook of ‘Black Order’ by James Rollins; symbols played a huge role in the story, with the globe-trotting protagonists unmasking a conspiracy (well, two conspiracies) through the discovery of common symbols used by the groups. Anyway, I’m imagining a game of URR might play out similarly, which sounds like a lot of fun.

    • Eeeexcellent – as am I! Your final sentence describes my thinking perfectly – the idea of that kind of detective work as the basis for a game (and not just symbols, though those will of course matter greatly) appeals to me a lot. I’m not a Brown fan, though I do love Eco (who I… suppose… writes history-themed thrillers? In a manner of speaking!).

  6. Love the gifs!

    Sorry if you’ve answered this; can you run multiple characters in the same generated world, or new world per character?

    Any chance the exchanges can be both buildings and currency sharks at the gate with worse deals? That seems realistic. Overkill could include existence of such people and how “official” and good a deal they give based on factors like national and city structures. Are there currency exchange caravans one can raid? Treason to have a currency in nations at war? Can you melt the coins to gold content? Your baby, of course, I just got excited. Great work! 😀

    • Glad you like them! You cannot; each world will be effectively “permadeath” in its own right, and dies with your character.

      Hmm, that’s an interesting option too. Caravans are definitely going to exist (hopefully by the end of 2015!). Awesome idea re: currency and treason, and melting coins back. I will definitely seriously consider those. And thanks! Let me know what you think of 0.7 once I release it : )

      • Looking forward to 0.7!
        No surprise that worlds are per-character, just the explorer in me is sad not to get to explore corners and tackle problems with different character attempts in the great worlds that get generated. But, this is not that kind of game, no problem or complaints here. 🙂

        • Heh, that’s actually part of the reason why I’m doing that! I want your decisions about exploration to be meaningful, and my intention is that even if a player completes the game, even a “100%” completion, there should still be unexplored corners of the world out there somewhere! Something about that just really appeals to me; keeping some mystery and something unknown no matter how successfully you manage a particular playthrough…

  7. I’ve been following your Devblog for quite a while and admire what you already achieved and your ambitions, but:

    Please excuse me for my extreme nitpicking: When i first started your game two versions ago, watching the world generate, looking at the solar system in awe, the illusion shattered immediately, when i noticed: The orbital mechanics don’t work!
    I know, I’m perhaps one of a thousand persons (studying astronomy) who will even notice, but i wanted to ask, whether the planetary system is a placeholder, whether you don’t deem it important, or whether i could offer mathematical/physical help? It wouldn’t be just some lines to make it look right.

    Thinking about this also lead me to some questions, that are perhaps more interesting for your main goals: Will the sky have any impact on the cultures growing in your world? For example, as celestial objects were associated with gods in many of earth’s early cultures? Or look at China, Babylon etc. where the ability to predict celestial events like eclipses was an important sign of religious power. Comets serving as doombringers, Supernovae triggering scientific revolutions…
    Astronomy, as one of the oldest sciences often was tightly interwoven in religious and cultural development.

    Hope i could spark some interesting thoughts (though i hope they aren’t too late, as you said your worldbuilding was finished).

    And please don’t hate me for my hairsplitting from the beginning 🙂
    I still think your project is beyond awesome, and I’m very much looking forward to watching it evolve, whatever direction that may be.

    • Heh. Long story short: it is currently far “too detailed”, and will be soon removed from world gen, and the player will no longer be able to see any of that orbital information (since clearly someone in the Scientific Revolution wouldn’t know the details about mass etc etc!). But yes, I do intend to add solar system things into the world generation, particularly in terms of religions (so another archetype for “cosmological religions” which isn’t in yet, but will be soon) – well, worldbuilding is “finished”, but naturally I will still be adding new stuff as I also add gameplay, adjusting things if I find better ways to use them, etc etc.

      Not at all, I appreciate the comment! V. glad you like it, and let me know what you think of 0.8 once it come along!

Leave a Reply

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