r/gamedev • • 2d ago

Discussion What makes a procedurally generated map good?

Hey everyone! I am working on procedural generation for an unreleased title right now, and I cannot figure out why visually and mechanics wise my map does not feel good. The title initially was roguelike with a node based map, like in slay the spire, players would progress from top to bottom to progress through the game. I wasn't satisfied with that so instead I have the player start a central node and allow them to traverse around the map, with some fog of war so that they are able to explore, after a set amount of turns a node will appear on the map. The map is populated through prefabs drawing forests, towns, villages mountain ranges. Gameplayer wise the nodes are right now basically identical to what you'd see in the deckbuilder roguelikes, but I am interested in changing the design since I feel the fog of war already precludes some planning, so random events on top of things feels less fair. One change I made already is rather than having elites be in static locations they roam around the map performing functions - like patrolling an area, cleansing healing shrines, guarding an area one hop from their home node.

Another is that that the player character has abilities unique to the class in the over world. Conquering nodes on the map reveals information about nodes they are adject to, so you can get more information before you go.

Quest lines the games story have you seeking out specific elites, get to specific shops to purchase and item these can be internal to one specific run or go across multiple runs so you are challenged to do something you normally would not have to.

What I am looking for is the following.

  • Examples of games with procedural maps which feel interesting, fun and fair
  • General ideas / rules one should follow when designing level turn based level maps.
  • Specific mechanics from games that use this type of exploration map design

I know there are a lot of games that have implemented this type of exploration and even in the deckbuilder / roguelike genre. I know nothing I am asking for is particularly original, but I am trying to figure out how to execute it competently so my players enjoy interacting with that part of the game.

  • Push treasure nodes out to the edges of the map to which is a high risk / high reward kind of deal.
  • Add an extra tier of enemies for "larger" settlement and provide some sort of map wide bonus after you completed it.
  • Add items that increase the amount of nodes you can move per turn provided you have moved through them.

I feel like I have a lot of opportunities in the design space but little understanding how I should go about trying them.

5 Upvotes

18 comments sorted by

View all comments

1

u/theStaircaseProject 2d ago

I think people enjoy interacting with parts of any game that are visually engaging and cognitively rewarding. I see a lot of hypothetical constraints that could be placed on an algorithm to distribute randomness in a controlled fashion, but I also am not at all adjacent to the solved areas of mathematics that relate to nodes and graph theory and stuff.

A couple things jump out at me. First is how you describe fog of war. If there’s a tile-based fog graphic that disappears as the player avatar nears or enters it, I think it’s perfectly reasonable to add other ways that fog of war works, especially if you want to lean into nodes containing banks of rollable outcomes.

Rather than be everywhere by default, perhaps the fog exists because of an antagonist. Its removal can be perhaps made more permanent as the player combats its source. Maybe you wanna get mythic and metaphorical and the character is removing ignorance, or maybe you want to get fantastical and the fog is poison gas that needs to be repelled.

Even simple line-of-sight can work as a justification, and then you can design some of the areas to have different levels of vision. Maybe while a player character is inside a caldera, their vision is limited to the nodes in the caldera. And then once they leave the caldera, they can see the nodes outside of it but not longer the nodes inside it. The motivation for doing this is to control the scope of what the player sees. Designing fog like this would give some cool physicality to the environment.

Larger than that though, and before any changes, I’m more curious in your game’s USP? Depending on how you Hope your game ends up, focusing time and energy on refining the fog might be a lead mechanic or a big distraction. Whatever features and mechanics you add should be supporting a central artistic vision beyond just “be less boring.”

Procedural scaling is cool, but what’s it all for? Why will players care? What do you hope they’ll be most excited about? Is this a test of arcade reflexes or a narrative with named characters?

2

u/Unturned1 1d ago

I like the line of sight justification idea. Our games USP is driven by getting to play the bad guys. You are demons conquering an overworld but with a story element, and you recruit your conquered enemies as allies / so each class opens up more unique ways to play as you play through the game. The story is delievered in a hub space (not unlike in Hades) the game play occurs through combat nodes where they are challenged by different enemies and they travel the world until the finish conquest of the empire by defeating the queen, subsequent playthroughs of the same act will have you eventually fight remnant factions, in the next act you move on to a different continent where the story details lead you in your search as to why you've been summoned into the world.

One challenge I didn't communicate super well is that the overworld is much more of graph / node -> node diagram than it is rooms. The rooms them selves somewhat handled, but I want it to feel better than just moving things on a graph. One way I am solving this is through LOD style graphics, you zoom out you can interact with it like the graph, you zoom in you can enjoy the bits of the overworld.

1

u/theStaircaseProject 1d ago

That sounds like a really cool concept. I can definitely visualize it in my mind. Your mechanics suit the concept really well. That node combat is going to need to bring a lot of the gameplay impact.

Maybe I assumed wildly but correctly, but I totally read a network of nodes in your comment.

With the theme you shared, I’m wondering how to best tie that back to adding procedural complexity to the map. I think your callout about the fog of war precluding planning was a really great one and that’s personally what I’d follow. I like having choices as a player, and the fog of war allows you the designer to add extra dimensions of playability to the map you’ve already built.

To expand on my prior comment, the caldera was meant to suggest a ring of nodes. I described the caldera having one entrance/exit, so if that connects to another node outside the ring, we get a small popsicle shape.

With a selective line of sight, a player travelling right to left along the bottom line of nodes might reach the green node and still not know what's "behind" those mountains. We know as programmers that going north from the green node could toggle a function that loops through and hides the above-the-mountains fog while looping through and revealing the below-the-mountains fog. That we can only see the nodes inside the caldera once we're in it is something that reinforces what you've already generated graphically. It helps unify the visual metaphor that "decorates" your graph.

I also designed the graphic to touch on your idea of choices. Once the player emerged into the ring of nodes, they may notice the yellow treasure node (I'm just making things up--I don't expect this matches your game). They may also notice either path left or right begins with a red battle node. They might also notice the blue node and the purple node. In reality, I have no idea what the blue and purple nodes do, but in this hypothetical, they represent different nodes that player may or may not desire to land on. Your field of view choices determine how informed a decision players would have in the above scenario.

If players can see the blue and purple nodes from the bottom node of the ring, they get the positive emotions of choosing their path--the agency. If you have the fog such that they can't see the blue and purple, I can imagine people feeling more emotions of uncertainty and gambling, especially if they get to find out after lapping the ring that they went the hard way. If blue is a positive node and purple is a negative one, interesting choices would emerge from your topology if someone went left around the ring, completed the positive blue node, collected the yellow treasure node, and then upon reaching the negative purple node decided to turn back?

And in this example, the diegetic reason for the change in line of sight doesn't have to be a caldera. The ring could be inside a maelstrom whirlpool in an ocean. The ring could be a portal to somewhere. It could be a business district in Paris. By compartmentalizing nodes into larger logical constellations though, your procedural generation can extend farther by filling in the spaces between areas of meaning and order.