Advertisement

Roguelike game with static map

Started by June 26, 2015 08:24 AM
8 comments, last by jsj795 9 years, 2 months ago

Hi everyone!

I'm designing a roguelike game with replayability in mind. With that said, I was thinking, instead of randomly generated maps, can I make a one huge static map, e.g. Skyrim?

The main driving force of the replayability instead would be procedurally generated quests that are random in nature, and the position of the monster spawns. There will also be an end game, where if you manage to finish the game without death, there is a game+ mode where you get to keep all your experience, skills, and items and try again but with harder enemies.

Also, there will be multiple starting characters, who will all start in different parts of the map with different starting stats.

Are the random quests, game+ mode, and different starting characters enough for replayability value or are the randomly generated maps something that can't be replaced for roguelike?

Thanks in advance for any replies!

Constant exploration has always been one of the cornerstones of roguelikes. I also think the difficulty of created a random quest system that provides fun and compelling gameplay is far higher than random dungeon generation, so if you're going through the effort of providing the former, including the latter on top of, or beside, or under it, shouldn't be much more effort. Also, the effort it will take to create one huge static map may not be significantly less than the effort to develop a random map engine.

Advertisement

Maybe worth nothing that a lot of minor quests in Skyrim are actually semi-randomly generated on the fly (their Radiant system, I think they call it). There's a big database of quest objects, locations and NPCs from which the game generates them.

I should mention, the main reason I want the map to be static is because I want some sort of storyline/environment in the game, where there are different cities fighting each other and the player has the freedom to choose which cities they want to help and which cities they want to destroy, and quests will adjust according to the choices that the player has made.

My fear is that having randomly generated cities might look bad, and will break immersion.


In it's time ADOM was one that added random elements to some static maps. Kinda like how Diablo3 does it nowadays where you have some premade levels and then some are randomly generated. To me this seems better than the alternatives.

That is a good point. I'll consider making all the cities static, while the areas connecting the cities random. I haven't thought about mixing the static and random parts.

Seems worth a try, at least, if you've got a large enough arsenal of interesting variations. (I don't really like procedural quests, though; after a few of them the player will usually suss out the syntax that underlies them and after that new ones won't be very interesting.)

But there are lots of interesting things you could do with a static map and random variables that affect other things on the map.

  • Not just which monsters spawn where, but what monster species exist in this world at all. So in one game, these 15 monster species exist, and in another game, a different set of 15 monsters exist. You could even have all spawn information be static, with the variation being that in any particular game half the spawn points never spawn anything (because their associated species doesn't exist). This has a neat effect of making the map somewhat random in the distribution between "safe' and "dangerous" zones, since for some areas it may be that only 1 of the five possible local monsters spawns, whereas for some areas all the local monsters spawn and so it's more difficult there.
  • Randomizing the areas of the map that have low- and high-level enemies. So maybe the bosses all increase enemy difficulty in direct proportion to their own level and in inverse proportion to that enemy's distance to their lair. (That is, that bosses have "gravity".) That way there's automatically an increasingly-difficult quest towards each boss, even if their lair positions are randomized.
  • Similarly to monsters, randomizing which spells exist in this world, or even what subfields of magic exist in this world. Or what gods exist in the pantheon, from which you can get buffs, favors, punishments, etc.
  • The location or availability for sale of traversal objects (e.g. ladder, raft, jump boots, whatever things let you access new areas of the map) and therefore the possible paths the player can take through the world.
  • Static teleportation shrines, with random connections between them.
  • A binary variable between a high-rainfall and low-rainfall version of the same map. The high-rainfall map means lush plains but some river basins will be un-fordable, while the low-rainfall map means some of those plains are barren deserts but the river basins are empty or shallow and thus easily crossable.
  • Similarly, variation between a warmer and colder version of the same map (and therefore things like iced-over rivers, glaciers, etc.).
  • Variation between different periods of weapon technology. So is everyone fighting with clubs and stone axes, swords and bows, or muskets and grenades?

That could give you something really interesting, a static and learnable world map, but each time you go into it enough has changed that you're seeing it in a new light. One time you're in a medieval desert with particular weapons and monsters, and there is only illusion magic, fire magic, and a rain god, and the next time you're in a frozen world in the early modern period, but there is teleportation magic and three different gods.

Advertisement


I should mention, the main reason I want the map to be static is because I want some sort of storyline/environment in the game, where there are different cities fighting each other and the player has the freedom to choose which cities they want to help and which cities they want to destroy, and quests will adjust according to the choices that the player has made.

My fear is that having randomly generated cities might look bad, and will break immersion.

You can mix procedural and fixed content top down or bottom up; in your case, probably both. Content should be procedural by default, with specific things you need for plot or game balance reasons imposed as an exception.

Top down, you can simply constrain procedural generation: if you can ask for a city around a certain latitude and longitude and containing a certain list or number of buildings, NPCs and other features, your cities will be different every time but sufficiently "the same" to serve the purpose of a standard storyline.

Bottom up, you can integrate something fixed and detailed in the middle of procedural content. For example, a capital can be specified to contain not only, say, 3+3d4 swordsmiths and 4+1d8 luxury inns, but also a royal family of 20 members with names, stats and important possessions specified beforehand.

Both techniques are used all the time in RL games. At the highest level, the two common level structures are a major top-down constraint: both the sparsely connected graphs of small linked dungeon and outdoor locations and the combination of interesting places and vast and boring large-scale outdoor maps containing them determine the plot of the player character's exploration.

Some games have fairly fine-grained bottom-up "islands" of fixed content: Angband has vaults, predefined dungeon sections (with variable treasure and monsters) that can replace plain random rooms, while NetHack has, for example, a suite of levels consisting of Sokoban puzzles (exactly specified and picked randomly from a list of alternatives).

Omae Wa Mou Shindeiru


A binary variable between a high-rainfall and low-rainfall version of the same map. The high-rainfall map means lush plains but some river basins will be un-fordable, while the low-rainfall map means some of those plains are barren deserts but the river basins are empty or shallow and thus easily crossable.
Similarly, variation between a warmer and colder version of the same map (and therefore things like iced-over rivers, glaciers, etc.).

I really really like this idea. SInce I do plan on implementing weather in the game, this will work flawlessly!


Similarly to monsters, randomizing which spells exist in this world, or even what subfields of magic exist in this world. Or what gods exist in the pantheon, from which you can get buffs, favors, punishments, etc.

I actually plan on having a large set of skills open, but even at max level, you can only learn maybe 10% of all available skills. This way, players can choose to try out different combination of skills for later playthroughs.


You can mix procedural and fixed content top down or bottom up; in your case, probably both. Content should be procedural by default, with specific things you need for plot or game balance reasons imposed as an exception.

Good idea. I think mixing both top down and bottom up will work for my case. I want specific buildings and NPCs but at the same time, have them at a specified location. Everything else, I think I can place randomly.

Thanks everyone for major helps!

Static maps for roguelikes can and HAS been done already. So you aren't in new territory! In fact, static QUESTS in roguelikes have been done too. Go play Tales of Maj'eyal if you haven't already. It is a shining beacon of roguelike + static elements = fun game. http://te4.org/

Maybe the story could play off the fact that you're learning about the world and the people in it with each play through. Restarting from the same starting point over and over like groundhog day, or majoras mask.

Radiant Verge is a Turn-Based Tactical RPG where your movement determines which abilities you can use.

This topic is closed to new replies.

Advertisement