I’ve now uploaded a ‘Development Plan’, a page I plan to keep updated day-by-day with details of current development. It can be found under URR on the top bar, or at this hyperlink. As it says, the first alpha is essentially a tech demo – it will not take long to ‘play’, so to speak, but the focus is rather on having a look around the world, seeing and trying the UI, and getting a feel for the style of combat the game offers. So, those are the current priorities, and the ones for the alpha afterwards (check the page); by this time next week development will have resumed fully, so I should have some of those developments ticked off, and something to show off on the blog proper. Do let me know if you think some of the blue should be essential for the first release, or some of the green aren’t initially vital.
Map Generation Redux
Welcome back! Development is going to start back up some time next week; I also intend to add a development plan to the blog very soon so everybody can see a) what I have left to do for the first alpha, and b) track progress across these. The current intention is for another fortnight of programming, followed by a break, and then a final ‘push’ from around approximately the middle of June to the first release.
In the mean time, to resume blog entries, I’ve had a few requests/questions about the exact map generation mechanics, so I thought I’d start off with an entry on those. If you want a gif of the full process, scroll to the bottom of the entry; otherwise, here’s each step with a little explanation. This was a map with all values (terrain, forest, tectonic activity, rivers etc) on ‘average’. As ever, click a picture to view full-size.
First, a rough outline of the continents and islands is created. The number of initial blocks is dependent upon the terrain value; the higher, the more initial landmasses are created. Some of the clumps of land generate in locations dependent upon previous land, while other areas are placed randomly.
Next, bands of terrain are added. I originally considered having a simulation which included things like rainfall, but then I realized that since I’m not creating the kind of ‘world simulation’ of the sort that DF is (i.e. factors of that sort are important for the player), there was actually no need. Instead, the game creates semi-random ‘bands’ of terrain, starting with tropical areas and then expanding to include desert, savannah, temperate areas, and then taiga/tundra/polar at the edge of the map. The final look of the map looks just as random and varied as a different technique, while this one saves on time and means I’m not adding any functionality into the game which won’t actually have an effect on gameplay (and, if it does one day, I’ll just add it in then). This also ensures that all climate zones should appear on any given map, which will be important for civilizations/species, and – I think – allows for greater variation on smaller landmasses and areas. Desert is ‘zigzagged’ around tropical areas, which ensures a different variation of desert across hemispheres (in this case predominantly in the south) whereas the earlier maps (if you go back and look) simply contain desert as a band above/below tropical.
After this, the landmass is then expanded and dithered significantly to remove the straight lines of the climate areas shown above. A lot of extra land is added in this stage. Subsequently, forests are added, with a regularity which depends upon the ‘Forest’ variable and different climate zones. Tropical areas get a ton of forest; temperate zones and taiga get some; desert gets very, very rare ‘forest’ areas, and these are actually oases. Also at this stage, one-square ocean areas are removed, since lakes function differently and will be added later in the process when rivers start to appear.
Next up: mountains. Mountain ranges are created, again primarily depending on the ‘Tectonic Activity’ variable but also varying a little according to biome. In the example below, there’s actually unusually few mountain ranges given the ‘average’ value I gave Tectonic Activity in this generation, but it’s still representative of the process. Once mountain ranges exist, they are then broadened, and the height of surrounding areas adjusted appropriately as the land is yanked upwards.
Lastly, volcanoes are added and then rivers are added and connected, all sourced from mountains and terminating in either lakes or the ocean. Both of these are tricky to see in this size, so I suggest zooming in to have a look. Rivers currently only generate from mountains, but I am considering allowing them to generate from high hills which aren’t mountains in the future too.
And, lastly, here’s a gif of the entire process. In a later version once territory and cities and things exist, I will do an equivalent to show how they (and creature settlements) are generated, but since terrain is the focus of the first alpha, I’ve only reflected that here. Next week, I’ll be uploading the development plan, and saying a little bit on each component of the first alpha I’m working on at the moment…
On Prester John
I’ve had a few questions lately about the kind of setting the game inhabits; most people have been classifying it as ‘high fantasy’, and that’s a little away from the setting I’m going for. I thought I’d take an entry to describe the inspirations behind URR’s setting and how this’ll be reflected in the game design decisions.
A central inspiration is the myth of Prester John, or rather, the way it filtered into medieval society and how it affected perceptions of the outside world. It was the idea hatched in Europe around the twelfth century that another christian emperor called Prester John existed in some undefined region east of Europe. It served as the idea that there was somewhere another ally that Europe could count upon in its conflicts, and that some parts of the far distant world were potential allies. This location va
ried between central Asia and eastern Africa depending on the version of the myth. Dozens of different stories existed about him and his empire, ranging from the entirely worldly to the fantastical; an assortment of mythical creatures were believed to be exist in John’s empire, and the empire itself was thought to be in a variety of places. Even more so, people came to associate Prester John with a variety of different real-world figures, ranging from Genghis Khan to Zara Yaqob, even though they all variously denied being this mythical figure. Effectively, it was a strange amalgam of facts about battles, empires, lands, geographies, histories, all put into a single narrative that was far more desirable and reassuring than the truth, and one that was a reflection of a fundamental lack of knowledge about the rest of the world, and what creatures were and weren’t just figments of legend. Similarly, it altered which distance empires were believed to exist and in what configuration, along with their rulers, important battles, etc.
This is the kind of setting I want to cultivate; that the world is fundamentally unknown, and that each civilization has different (and probably wildly inaccurate) understandings of what the rest of the world is like. The further your starting civilization is from others, the less accurate your knowledge of the far-away civilizations will be. Similarly, you might think that a particular mythological species dwells in one area, while it actually dwells in others; I’d like to get other civilizations having the same misunderstandings about other civilizations. Equally, there may be myths about species which don’t actually exist – I intend to randomize what recruit-able species are and aren’t generated in each world, but this won’t be known until you seek them out and separate the fact from the myth. Myths about all creatures will always exist, but some creatures will be real and some creatures won’t each time. Even within existing creatures, myths may give you inaccurate information at first, as I’m intending to build an amount of randomness into each species, too.
Thus, the URR world is fundamentally medieval, except for the fact that while we never discovered all those strange creatures, the player probably will. I’ll warn everyone now that next week won’t have a blog entry; I have a lot of thesis work that needs to be done. If you’re new to the blog (I see a lot of new sites that have started registering on my incoming traffic recently), I suggest you check back previous entries or the info page for the kind of thing that comes in most blog entries and to get a better idea of what the game currently looks like. See you all in a fortnight!
Size and roguelikes
Just a quick entry this week. I’ve been coding every day this week (apart from one where Dead Space 2 interposed itself) and a ton of work has been done, including more combat mechanics, severing limbs, armor and weapons being tethered to limbs correctly, displaying all possible combat messages, creature queries displaying more injury detail, species pages on creature queries, pathfinding, and starting a new ‘class’ of enemy.
This class is for enemies that are larger than just a single square. Originally I was intending to stick with the roguelike norm – any creature, whether a Titan or a gnat, takes up just one square on the map. Increasingly, however, I thought this was a terrible idea, so I’ve decided to allow some creatures to be larger. Some creatures can be two squares (e.g. ‘Q’ is the symbol for large quadrupeds, so an elephant may be ‘QQ’), some creatures can be four squares, some nine, one creature can be a long sequence of letters (which will be unveiled far, far in the future) while another species is totally unique (and equally far off). The only one of these to make it into the first alpha will be dragons, and so I leave you with a screenshot of a dragon attempting to fry me. The fire is in its early stages and needs a lot more work; as for four-square-creature pathfinding, large creatures normally have the ability to knock aside trees, and may (depending on strength and other factors) be able to break through walls and similar.

April Screenshots
Firstly, a note on font size. The font I use in all my screenshots is 12×12. I intend to include support for 8×8, 10×10, 12×12 and 14×14 in the initial release, and later add the ability to change resolution. At the moment, you have to choose the font size that allows everything to fit on your screen, but I do intend to allow you to shrink the window. However, a) that won’t be for some time, and b) since I assume most people have reasonably high-res screens these days, I’m sure you’ll be able to fit it all on.
Now, three new screenshots. As ever, click to see full size. The secret project alluded to on Twitter & Facebook will wait until next week, but now, here are some tangible results of the past week’s efforts:
1) New world map. As you move around (or as you move your crosshair around to examine explored land) it tells you generated information about that square in terms of terrain, and in terms of the construction and territory (when these are implemented). You can see an example of the terrain text below; for construction text it might say “This area contains the city of X, the capital of Y, and lies in territory firmly controlled by Z”, or “This area contains a shrine to god X, and is in the territory controlled by Y”, and so on. Of course, much of the territory will be unknown, but that is simply turned off for play-testing…
2) New attacking screen. The limbs your foe has are listed on the left, followed by how damaged each one is, followed by whether or not they are armored, and then finally by whether or not they are in range (tall creatures, for instance, will have their heads too high up for you to reach). You scroll up and down, your chosen limb is selected in white, then you attack. Some attack messages shown below.
3) The ‘look’ function. Changed since last shown to be streamlined significantly, to use word-wrap across lines, and to have a scrollbar appear if needed. This functions by giving you a crosshair to move around the screen, and upon a selection, lists all items, creatures and terrain features by listing them on the right (support for terrain features currently being worked on). Here’s an example of a creature look-up, on myself, post-battle, with some fairly serious injuries (yes, I know ‘copper’ and ‘injured’ are the same color; that will change):
The rest of this week’s work has been on general combat mechanics, and that’s going to continue into the coming week, which will include finishing the early stages of the secret project (which I am making out to be far more than it is, so don’t get your hopes up) next week. Final note: most test characters are female dwarves, since ‘female’ and ‘dwarf’ comes up first alphabetically on each menu. I have no grudge against female dwarves. Even if I do generally throw them into a volcano once I’m done testing.



























