Procedural game development?

Ok so, in my current project I’ve found myself developing more automated tools to help me to save time later. I’m not creating a procedural game, ie at runtime it’s not generating randomized level layouts or whatever. But I’ve found benefit in creating procedural stuff on the development side.

So for example I needed to place some objects in the scene, and quickly saw this was going to take a lot of time, so instead I wrote a basic tool that let me sort of ‘draw’ multiple objects at once and connect them together and stuff, saving me a ton of time. That then gave me insight into how the process was still quite laborious and how it would be useful to have some additional higher level automation, so I added that. Not getting to the point of procedurally generating the whole thing at development time, although that’s not out of the question, but at least moving towards a significant amount of automation to help make development easier. It’s nice to have the ‘right tool for the job’.

Question is, by doing this and creating automation tools, turning the development process into more of an automated/procedural generation of game data, does this maybe interfere with the design of the game? Is there a point where too much automation might lead to a badly designed game? As with creating procedural outputs at runtime, creating procedural outputs at development time has the same dangers of creating ugly results, boring results, impossible results etc. But I at least see that spending some time ‘sharpening the axe’ can have a big payoff in terms of having to cut down a lot of trees quickly.

… But the whole point of doing it during development is that you can keep hitting that generate button til you get something good. It’s also good to build manual overrides so you can control fine details.

Just consider proc gen systems like an intern. The only way it can make thing go to shit is if you don’t oversee what it’s working on.

7 Likes

Probably depends on how you do it.

I have an idea for a game which is based almost completely off of procedural generation. The level is generated procedurally at runtime, and everything else is built based off of the level’s topology/user settings.

This means there are no or very few constants, so creating a setpiece-heavy (or perhaps narrative-heavy too) story for instance would be impossible. Look at No Man’s Sky’s “story” for an example of how that might work.

But I am also using it to create a level in the editor, then using that level for a different, more focused idea. So I’m using it initially, but custom-designing after that. So in that case it doesn’t hinder very much (though I DO have to add some stuff that Unity can’t naturally handle, like caves).

It’s all about how you use it.

Used well, you can scatter objects to give starting point then carve out your game from it.

Used poorly, and well…

2 Likes

Your second example is likely not to do with procedural development, since all those planets and stuff can’t be stored on disk as such, they’re generated at runtime?

1 Like

I believe they use a seed for the planets so it would be procedural and you could save it.

1 Like

I guess I misunderstood what you were saying then.

But if you’re saying that unless you have 100% control over the placement of things then it could potentially be poor results?

I mean, I don’t edit an image pixel by pixel, why would I make a map tree by tree or rock by rock?

1 Like

Well, like other people say, it all depends on how you use it. For example you could spawn asteroids on an exact cube grid and it would be boring, or you could spawn them in an ellipsoid pattern with bigger ones toward the center or something like that. Then it actually looks like it might have been a planet or something at one point, and starts being a little bit interesting.

There’s literally no way to give you a rational answer without context. ‘Procedural’ can mean absolutely anything. Until it’s defined, I usually treat it as a buzzword when I see it around here and start spamming the thread with .pdf’s in an attempt to get more specific (to no avail).

If you want to spawn trees in a 50km x 50km terrain, then I would say ‘absolutely procedural is the way to go’. If you want to spawn stories and missions I would suspiciously ask for more detail :slight_smile:

2 Likes

@Billy4184 - I definitely get what you mean. I’m making a procedurally-generated game where the levels are procgen. I toyed around with the idea of procgen quests and storylines, but it’s a pretty massive venture. I also see a lot of people say they want to make “procedurally generated” content without really understanding what that means, and what it entails to do well (at least, in part, a significant amount of play-testing).

The OP’s concept of procedural development is really a great thing. Using procedural tools to create static worlds can make level design significantly easier. The question, however, has nothing to do with content being procedurally generated or not (even if presented as static). A game is good or bad in it’s own merit, the tools used to create it are rarely to blame in either direction.

4 Likes

As I discover my current game is increasingly telling me, “I’m best as a handcrafted game. Dont procedurally generate me.” due to the likely lack of replayability, I am stuck in a development which has all the tools for procedural generation but without the need for them.

Being a jerk (including to myself) I jumped to contemplate of I wasted all that time like some idiot. Damn you, Carter! Inefficiency!!

Quickly I began to realize how great of an idea this would be; I can use these tools to generate a good start for handcrafted content & even extend the tools slightly to regenerate individual pieces of content; in case “It’s all good, except over here in this small corner.”

Then I began to ask myself, “What is the difference though?”

While procedural generatiom has that chance to create horrible content on rare occassion, that weakness is eliminated in this new context. I just hit “Generate” again.

Without any tangible way to measure my skills as a level designer, how do I even know what looks good or bad? What if I am tone-deaf (unable to see difference between good/bad). Who is to say my handcrafted content would even be better than a good set of procedurally generated content?

Furthermore, are my skills as a level designer a great enough of a difference over procedural generation to justify the enormous time sink required for me to hand-edit my levels?

Now that I dont need procgen, and since I am not a renown level designer, what is the real difference? There is no big difference. However at least by picking the procederal generation I can guarantee no “rare horrible content”. And static scenes now give the added benefit of spending as much or as little time as I want polishing areas. A delete here or there to tidy things up when I’m burned out on coding for the day perhaps? My game would still be better than ot was before, so isnt doing NOTHING besides hitting generate a few times better than before in a low replayability game?

And most importantly I think the better question is, “What benefit is there to the highest quality level design?”

Do these experienced level designers who theoretically place EVERYTHING themselves actually make a big difference?

I’m not sure I’ve ever played a procedurally generated game where the levels were, on average, trash. Always are there bad cases, but on average? I’ve been just as satisfied as any game with a team of seasoned designers. In fact, I often appreciate the random nature MORE from a computer than humans so normalized to certain tropes that I can predict secret areas or roll my eyes at a puzzle.

Of course my wife is different. She is an artist, so the tiny details placed by hand are things she really enjoys. And she likes thinking like a designer, “Where would I put a secret” and being rewarded for the educated guess.

But those are things you can add AFTER generating content with a tool. They are also set pieces you could insure get placed in purely generated content. So I question the usefulness of a professional level designer nitpicking where each tree gets placed, or how to setup a beautiful entrance from the West in a game where 3/4 players will enter from the East North South.

That is alot of time wasted placing rocks.

Unless of course it’s something like a Point & Click. Then procgen as a tool sounds as ludicrous as procgen as a game system.

1 Like

You have some good points. However, it can be difficult to get a computer to do what a human can do. Like, just, to be imaginative, or to create complex puzzles, or to have a sense of what is ‘fun’ etc. You can create a lot of stuff, take Spelunky for example, it’s largely procedural based on some rules and templates. The time saving from procedural generation is HUGE. But it still somewhat falls short of the quality and intelligence of a person hand-designing something or creating a work of art. BUT, as you point out, if the person is just going to be making the exact same kind of decisions, and grunt work, that some kind of automation could do, then why not automate it.

1 Like

Theoretically, yes. In practice, i’d think no.

Theoretically, you could assume that spreading out rocks and trees with exquisite artistic expertise over a large area would produce better results than just using a proper algorithm and having it slap down the rocks and trees. In practice, you’d save a lot of time by automating most of the area and doing select points of interest by hand.
It’s just rocks and trees after all.

Some puzzles are perfectly fine to be generated by an algorithm, ie Sudoku.
While puzzles that dont follow set rules obviously require a human brain.

Since NMS got mentioned, i dont think NMS would have been better if they had designed the landscapes by hand. It wouldnt have made a difference. The gameplay was bad, barely existent really. Their landscape generation was fine, but if all you do is look at landscapes and mine rocks… well… i can look at landscapes here and i dont even have to mine silly rocks to do it.

2 Likes

OR here :smile:

https://www.youtube.com/watch?v=Ir8IoROihEo

Which make the case that either:

  1. Curation is art
    or
  2. Art is curation

Anyway, in order to have a good PCG you must be good at doing what you want to generated first, it’s a requirement to create the set of rules that will curate the possibility space. If you create a set of rules from an amateur perspective it will produce amateur works, it’s not magic. And designing the algorithm would take as much time as designing a similar set of assets, to have diversity you need to craft as much model as type of asset function needed, which take time.

2 Likes

This seems interesting:

1 Like

Hi everyone! Probably, my post is out of discussion… but I hope to hear from you. I am new to the games world but wish to try. I found out that it is possible to create own Minecraft server and I thought that I wish to try it. In the end it will be good experience for me being a new in the games world. Do you know where I can find out the structured info about it which is easy to follow? What do you think about that kind of idea?
My apologies once more that I am out of topic. Was not sure where to post such question.

Am I understanding this correctly, you’re new to gaming and want to have your own Minecraft server to play Minecraft online? If that’s what you are looking for and you want to only play together with friends, then this might be a decent solution for you:

https://minecraft.net/en-us/realms/?ref=m

If you want to rent a “real” public server that is open for all players, then you should google something like “minecraft server hosting” and choose a provider that is geographically reasonably close to where you live. E.g. if you live in the US it would be a very poor choice to rent a server in Europe, because you’ll have a bad connection to the server, also known as “lag”.

If I misunderstood your question and you want to create your own game from scratch as a kind of minecraft clone, then you should start with all the tutorials on https://unity3d.com/learn and keep working hard at learning for quite a few years, because making multiplayer games is incredibly complex and you’ll have to start with simpler things first.

Thank you Martin_H for your quick reply. Yes, I am new in gaming and wish to have my own Minecraft. Also, thank you for the advice about “real” public server. Does server depend on the geographic location or should I consider something else?

I don’t know much about Minecraft servers myself but I recommend you go to this forum:
http://www.minecraftforum.net/forums/servers/minecraft-server-hosting
That is their forum-section for Minecraft server hosting providers. There you can directly talk to people from various hosting companies who can answer your questions. Check some of the threads of the more popular ones and see if there’s one that people describe as simple to set up, and check if they maybe have a tutorial video that shows you what you need to do.

Thank you Martin_H for your reply and for the link.
I know that it is still to early for me to ask about the game development procedure because I am completely new in gaming but it is still interesting to know how to come to that stage in one day. Do person need to complete the special courses to get the all knowledge to create the game or it is enough to have a self training?

Years of dedicated self training are usually enough. https://unity3d.com/learn is a great place to start learning how to use Unity. https://www.youtube.com/user/ExtraCreditz is also good for beginners (for example their video series on making your first game), but their videos usually don’t go very deep into topics. GDC talks are a great learning resource too:
https://www.youtube.com/channel/UC0JB7TSe49lg56u6qH8y_MQ/playlists