0 votes

The elevator pitch: I'm building a brick breaker game as my class project. This type of game isn't used in my course, so I'm learning a little more outside of class to fill in the gaps.

The problem: I don't know what I'm looking for by name.

Deets: I've got a working paddle, walls in place, a ball I'll be programming this weekend, and a bunch of brick designs. I placed one of the bricks, looked around the play area, and decided I didn't want to custom lay hundreds of bricks, like, 101 different times. Procedural generation popped into my head and that's the only term I know for what I want to do. However, I need to zero in on something else along the way and don't know how to phrase it so that I can find all the right help guides.

What I want to do is include several of the bricks per stage and then have the system auto generate all the rest to a certain threshold. My thinking is that I can set a score value to each type of brick, then set the point value needed to clear the stage, and finally design an algorithm to always generate enough of each brick to cross that threshold. The next thing I want to do is have these bricks scroll to the bottom row as the level progresses because there won't be enough room in the play area for them all. So, the system will generate bricks off screen and each column will drop in some time after the visible segment is cleared.

Next, I need the pattern to randomize according to these rules. The plan is for randomization to increase in degree in harder stages. That way I can add more bricks in the following sets of stages and have the process repeat the same way through that set of stages. Finally, I need to be able to tweak the algorithm later in the game to accommodate the new requirements.

Because I'm still new to GDScript, I don't know how these concepts translate over to the terminology so I can find the threads and guides I need to study. I'm hoping someone has some idea what terms go with these ideas. Thank you in advance for any help you can give me with these terms.

in Engine by (16 points)

1 Answer

0 votes

There really aren't any special terms for what you're describing. That's all procedural generation is about: coming up with clever scripts that arrange stuff the way you want. However, general rule of thumb: (good) procedural generation is a lot harder than putting together a (good) level by hand! While certain things (like Perlin noise or pathfinding algorithms) are commonly used in procedural generation, most of it still isn't too different from regular game development: you'll need the right ideas, a ton of time and an even bigger amount of playtesters too make everything "right".

by (10,221 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.