SOS: Atlas - Creating a FPS with Procedural Generated Levels

Hi there!

Welcome to SOS: Atlas. Our goal is to make a FPS game that lets you fight in procedural generated levels. You will need to travel from mission to mission saving survivors from dark magic evil robots called the Gorkrun.

I will make more updates as the game progress, and here is a gif of our map in action:

http://i.imgur.com/M3etmie.gif

Come check our kickstarter page for more info, is live!

Kickstarter

That gif of the procedural generated level is awesome.

Is it based on your own system or something you purchased?

wow that’s fantastic !!

does it generate a completely different level ? or the terrains are same ??

Funny you are the first to ask that question, part of the system is actually based on Rama’s plugin, the one that you help contributed with:)
I used material to generate noise that resemble a landscape, and then render capture it and use Rama’s “get pixels” to create vertices for procedural meshes. I should thank Rama and you for this.

@Gentleman72 - It does generate a completely different level, including the terrain and foliage. Basically, I can use noise in material to create any landscape I want, but the trick is to make it looks like a landscape. Here is an example of the material:

And then turn into this with procedural mesh when playing:

ddaef1004f1aa6733de2edd6f5a716a5c0b536ea.jpeg

Horray, I’m useful!

Kinda the point in sharing it with Rama and the like is to help make creating things like this easier.

I’d like to try my hand at procedural level generation, but my plate is already too full in other areas.
Doesn’t stop me picking peoples brains though :slight_smile:

Thank you.
Look forward to see how it goes in game.

We have a couple of terrain type ready to be tested, with more coming of course. Each terrain will encourage certain style of play.

Canyon: Narrow and winding, it’s easier to create choke point in some sectors

Mesa: Open field with mesas doted the land, the area is quite open with covers in between.

2d7535d13a47d517c9d98c7af9197ff6a808637f.jpeg

Smooth Hill: Almost all area is accessible, but high elevation at some area will give an advantage.

cf67c26835135a2b540c650dedd03a785dc54f61.jpeg

All terrain types will have an option to create a river or two. This is a dangerous area to cross because it slows down movement speed.

I will post more soon, but you can check out our kickstarterfor some more info!

That last screenshot looks impressive to me for procedural terrain.

My experiecen is that outdoors FPS is generally less exciting than building-style FPS, and procedurally-generated levels are generally less well balanced (and have less well-designed features) than custom terrain.

I’m not saying you can’t succeed, what I’m saying is that I’m super curious about what your ideas are about solving/fixing those challenges!

That was something that we came across during our run with the combat mechanic. We ended up modelling few ruins (for our dark magic evil robots) and spaceship wreckage (for your friendly survivors) that will spawn in the map follow by a few predetermined rules, so it’s something that is going to look like this:

a4dad47600e9adec423bd08da463c4fbdc6a07df.jpeg

For the sake of AI and navmesh, these ruins are probably not going to have as much randomness as the terrain, but their placements will be random with a few exceptions, like a highly guarded area at the center for example. Still a lot of fixes needed though, we are always trying to find the right balance between randomness and fun!

The last few days has been a hectic schedule, but we are all still working on this!

We are finalizing the terrain generation right now, meaning we are moving it away from blueprint to make it more efficient in code. The biggest problem now seems to be the collision generation for procedural mesh. A 1km sq mesh takes about 9sec, but we will try to make that less.

For now, we are trying different ways to make the ruins feel right, making use of more vertical levels and potentially dungeons! I will try to make a video once the other models are in.