Devlog #8 | Procedural Level Generation
Welcome everyone, we are working on a fast paced 2D roguelike in which you hype up the crowd to get more gold while fighting waves of robots in a futuristic colosseum. If you prefer videos we make DevLogs on youtube.
Up to this update this roguelike wasnt feeling that much like one. You fought in one circle and inside it enemies would spawn in waves. While there is randomness in their spawning it is still mainly me who decides how they are spawned. I want this control to control the pacing of each wave. I can make them fast and give you no room to breath, just to calm down the fight and let you breath right after. Playing around with different pacing is really fun and adds a lot to how the game feels.
With this update I added the randomness to the game which roguelikes are loved for, procedural level generation!
The Algorithm
I started with a test scene in which I created circles (I call em bubbles) “randomly”. First I spawn the start bubble, then I give it one to four children. These children can have one to three children themselves. Their children cant be where there already is a bubble. This algorithm is cool because it creates a random level without circles. This makes the next step a lot easier!
I order the list of all bubbles by their distance to the start bubble. I measure distance in bubbles not in space. The furthest bubble becomes the exit. The shop is the bubble that is rather far from the start and is far (this distance is measured in space) from the shop. That way the exit is always far and the shop isnt right next to the exit and neither is next to the start bubble. So wherever you go there is something and you wont feel like you wasted your time.
So now we have randomly generated levels in which there are bubbles. Each bubble has a randomly picked, hand crafted wave. Some just spawn x to y enemies, some have multiple waves. But I want more!
The Future
I haven't done everything that I want for this update yet, but I already need to see how people play it. So these are the things I will do in the future:
- The more hype you have the more gold you make per kill, but hype goes down constantly. The paths between bubbles will have all kinds of traps in them. So you want to get through the paths as fast as possible to keep the hype going but it is dangerous as well. I will experiment a lot with buttons, timing based platforms, shooting towers, gaps and more. They should provide some form of a pause and breather between the high paced combat inside the bubbles.
- A good minimap which shows the whole level layout. It will only show the bubbles you have been to. Also the minimap should allow you to teleport from one bubble to another. So you can skip the paths which you already ran through.
- The shop inside the level. The shop bubble currently is just empty. And the old shop after a level still exists.
- I will add obstacles and traps into each bubble to give it more context and content. Every bubble should feel more distinguished in each run.
- Really important is that I will figure out what to do with the healing circle. Will you be able to spawn it wherever? Will I remove it? Will I iterate over it once again? I have no idea, I will see how people play this version and how I feel about the way healing works in this game.
Thats it folks, if you feel so inclined the game is online!
Have a good day everyone!
Files
Get Saikyo
Saikyo
Bad Ass Samurai Roguelike
Status | In development |
Authors | MissingTheMoon, aezylhazel |
Genre | Action, Platformer |
Tags | 2D, Roguelike, Sci-fi, Singleplayer, Swords, Top-Down, Unity |
More posts
- Wrist Pain and Long BreaksSep 07, 2022
- Devlog #33 | Item RedesignAug 21, 2022
- Devlog #32 | Early Alpha UpdateApr 25, 2022
- Devlog #31 | Final Animation UpdateFeb 10, 2022
- Devlog #30 | An UpdateDec 23, 2021
- Devlog #29 | Animation Update 2Nov 15, 2021
- Devlog #28 | Animation UpdateOct 21, 2021
- Devlog #27 | Misc & ArtAug 17, 2021
- Devlog #26 | Feedback & HelpAug 05, 2021
- Devlog #25 | Content UpdateJul 02, 2021
Leave a comment
Log in with itch.io to leave a comment.