Hello again! Mattis here, since last time I’ve been working on the difficulty scaling system for the Random Generation and I’m here to tell you a little bit about that. I also made some smaller features that were needed for the project.
So I’ve finished adding the difficulty scaling to the Random Generation and it was a very simple process because the Random Generation itself is pretty simple. I use 2 different types of variables to manage this. I use a variable for the overall difficulty of the level which I can scale up and down to make the level generate based on the difficulty. This variable currently controls this:
Amount of rooms generated in the level
The size of the rooms that have been generated
Amount of enemies generated per room in the level
This is easily expandable to cover more things like the type of enemies to spawn which could be used to spawn more powerful enemy types on higher difficulty levels. I would also like to expand it to have different tilesets based on the difficulty, so the first difficulty level has grass and the second difficulty level has dirt.
Along with the difficulty variable I use a “difficulty scale” variable for all of the separate parts of the Random Generation. It’s kind of like a multiplier of the difficulty to make sure that the difficulty variable doesn’t do the same thing for all the different parts.
For example, I can use a higher multiplier for the number of rooms and a lower multiplier for the size of the rooms so that the amount of rooms scales up fast but the size of the rooms slowly increases. This gives a lot of flexibility in fine tuning the Random Generation while playtesting. Below is an example of the difficulty scaling up every time I generate a Random Level.
That’s about all I can do for now on the Random Generation. I have implemented everything we currently want the Random Generation to do. We now need to make sure the combat is working as intended and then as we start doing playtesting I can go back to the Random Generation for fine tuning and making sure the levels are generated in a good way.
This week I’ve mostly been working on some smaller features that have been needed in the project. I started out making a visual indicator for what attack type enemies are going to use against you. I also made a system that shows the attack indicator only when the player is near an enemy, here’s a look at that using placeholder graphics:
That’s about it for this week, it was a calm week. The things I worked on this week were pretty simple and manageable so I didn’t run into any major issues. Next time I can hopefully tell you a bit about playtesting the game and getting feedback on how the Random Generation creates levels and using that feedback I will fine tune the Random Generation.
See you next time!
0 comments