This week was originally planned to be all about starting procedural generation but things didn’t exactly pan out as intended. Given that it’s meant to be the main mechanic of the game and all, I wanted to spend more time focusing on the leveling system and tweaking the values for how quickly the skills level and how much impact each individual level has on the player. I also spent a chunk of time redoing part of my code pertaining to how the levels are stored so it would be easier in the future to add more skills and quicker to check which skill is being referenced by other methods. This was mainly just me making my work make a bit more sense by throwing the level, current exp, and exp to the next level up into arrays rather than keeping a stockpile of individual variables. That may have worked for a quick demo for one skill but it really wouldn’t work for a more finished product. So most of my week was spent on working on those values and figuring out which values for some behaviors should be modified by level. The main one that took the most fiddling was the attack stat. Compared to most of the other stats there were multiple values that could be controlled by the level: attack damage, attack speed, and attack range. I spent a good amount of time experimenting with different levels of modification to each of those values. In the end I decided that by default the attack stat would only affect damage but later saved up levels could be spent on the ability to either flatly increase the other two or have them also scale with attack level.
In some bits of free time this week I also tackled a minor side goal of getting the camera up and running to follow the player around. Not exactly something important for my testing purposes but a relevant feature for anyone else playtesting in the future since I’d want to make a larger testing environment and not have to zoom the camera out really far. Testing the movement related skills, mainly jumping, required a larger area to test in to really see the effects of any variable changes after a certain point.
The biggest challenge I faced this week actually came from that minor side goal of the camera. Following one guide it turned out that it was either using an older version of Unity or just outright doing it wrong since their directions led to the camera shaking whenever the player jumped and causing generally wobbly view. So to fix this I just started over on the camera and pieced together several different things I found online until I got the camera working and not trying to do anything overly fancy. You could also call that main lesson I learned this week to be starting with the basics before messing with too many features I haven’t tried before. I do want to spend more time in the future if I get through any other tasks quickly playing with the camera some more to try and get smoother movement and to see if I could integrate any features of it into a skill. Potentially some ability to zoom out to see things out of sight.
The leveling system is likely to still need more fiddling in the future as I add more ways to test it and other environmental elements but going forward I plan to start on procedural generation going into this week.