Balancing is absurdly time consuming

Well, first things first. Since my last update I’ve done quite a few things, primarily by playing the game and figuring out what it’s missing and what it needs (as well as fixing numerous bugs in my code). Those things include: reducing the size of the first two maps (because seriously they were huge), adding in teleportation stones (so you can jump back to villages, if you need to), adding in expanded drops for enemies (basically gold bags, I still want to expand this more) and I think that about covers everything. The rest of the time has been spent balancing and adjusting just about everything that needs to be adjusted.

The first thing I noticed was the difficulty of the enemies and the frequency at which battles occurred. This was something I was cognizant of (and worried about), in that Cez and Lela could basically steamroll through anyone they wanted primarily because the rate at which they gained damage far, far outstripped the survivability gains of the basic enemies. This meant the game essentially boiled down to ‘just mash attack and move forward’ which is definitely not what I wanted the game to be. To rectify this, I reduced the amount of damage scaling Cez and Lela gained (with an enormous hit coming out of the talent areas, reducing the increased damage from 20% per level to 5%), while also increasing the damage dealt by enemies. This seemed to help alleviate the issue, but another one arose (which I’ll talk about in just a second when I start talking about my play-through).

The second thing I noticed running through the first level and a half (basically after the first boss on the forest level) was that I was leveling up my characters insanely fast. Because of the linear scaling I had put in place, when the party began fighting more than one enemy (say 2 or 3), you essentially would double (or triple) the rate at which the party reaches the next level. Well, since I had planned for it to be ~10 or so initially, this meant the party was leveling up every 4-5 battles or so by the time they reached the forest, and had reached pretty absurd heights way faster than I had initially anticipated. For this reason, I decided to change my linear scaling to more of a curve by calculating out the average experience gained and plotting those points versus level on a graph. I fit a cubic to it, and, since it fit rather well, I was able to set the average fights per level to around 8. I considered, momentarily, simply setting a counter where every 8th fight, regardless of which enemies had been fought, the party would level up. This essentially would have negated the need for the cubic, but I also think it would have lost a little of the flavor to the game. I felt like the player should feel rewarded for fighting more difficult enemies, and I felt like making the levels not directly linear (based on fights) left a little variety in the game – in particular, I love that the first level actually kicks through after around 4 fights – the first level should be one of the easier one in the game (imo). With that a little more manage-able, I began my trek through the game (I should really put a timer in the game just to see how long it takes to beat it).

Anyway, I actually really enjoyed the first few levels. I felt like it wasn’t overly difficult and the party seemed to level up at a decent pace. The battles were just about the right amount of difficult with a party member dying occasionally, but just about right for what I wanted. The difficulty allowed the player to level up to around level 10 by the end of the level (I think I ended around level 9 when I left), which made me pretty happy. This is the point where things started to go haywire, balance-wise. When I initially designed the move sets for enemies, I just picked abilities I thought sounded cool and fit the theme of the character. Little did I realize (until playing) was that the enemy tank character (and later the enemy support) had zero offensive abilities until the party was around level 30, where the tank would gain the offensive ability “Slow” and level 40, where the support would gain the offensive ability “Shadow Mark”. What this meant, though, was that for nearly 20 levels, tanks literally did nothing but sit there as meat shields. They dealt no damage and were never an actual threat to my party members. Taunt inadvertently would deal damage (because not killing the scary guys meant they did more damage), but it was… minimal. This ended up making battles so absurdly easy from this point onward, I was able to completely ignore most battles and push all the way through to the castle without ever running into a problem. Even bosses weren’t too bad because they simply couldn’t output the same damage as three party members all going at it at once. I dealt with this later and ok stream of consciousness story time right now.

I was basically brutalizing the game and having no problems, under-leveled from where I actually wanted to be by about 10-15 levels at any given time. I rolled through the bosses in the second and third levels, as well as the first guy on the fourth level. Since I knew I wanted to make the bosses more difficult, I had begun slowly adjusting the stats for each of the enemies as I got through them. Then, finally, I got to the ‘Light General’ boss on the second floor of the dungeon and just got wiped from existence. It was amazing. As I mentioned before, I put in a few placeholders to essentially help the bosses deal with the 1v4 concept (basically giving the bosses multiple attacks of their own). So I go into this battle, figuring I’m going to dump on the guy and suddenly he’s throwing out double strike critical hits in one move (it was like 650 damage in one turn against poor Cez who had like 200 health). It was just brutal. Anyway, I really enjoyed getting my shit absolutely wrecked until I had leveled up enough to match his ferocity (still about 4-5 levels under where I wanted to be, but a lot closer).

Ok back to where I was. Anyway, I fixed the bosses as I went along, making them stronger and scarier. I still think I have a lot of work to do with them, but hopefully with enough work I can get them just right. I think by bumping up the difficulty of the enemies (or at a minimum giving tanks and supports offensive abilities) should make a pretty big difference. The last thing I think I really need to do, then, is fix Mason. Look, now, I love the guy. He runs around invisible and shit buffing his allies to deal absurd damage and keep them all healed and healthy – but he’s too insanely good at it. Sitting here typing this made me realize he’s basically the old school Soraka (from League of Legends), with how he functions. He basically just destroys all game-play because he’s stupid good because he can full heal everyone (revive code was bugged out, so he was able to use revive as the equivalent of a full heal on one turn way, way, way before he should have been able to do that) with minimal effort. I think the way I want to approach this is to make it so he can’t use revive on a character that isn’t dead (as well as fixing it so he does have to channel for a turn before getting the revive off until he hits level 5 in the ability duration talent). Since that was my plan (and as I mentioned earlier I was having issues with Lela and Cez piling on damage way too fast), I decided to implement a barrier for leveling up talents with talent points – an ability can now no longer have more than 1 more than half the available points. Basically if Mason has one point, he can put it wherever. If he has two, he can’t put it on the same ability again (but at three, he can put it on either ability). It works the same way as League’s leveling system, and I generally like it. However, I’m thinking about changing it so you have to put the available points in the lowest talent area (but I’m nervous about this because it takes away from the decision making of the player, which is something I absolutely value and is what I believe is the core of what makes a game fun, so who knows if I actually do it).

Basically, balancing this game is taking up literally all of my time (which I’m ok with, it’s just a lot more time consuming than I think I ever expected). I’m pulling like 60 hours/week right now working on this thing, in addition to my actual job and personal life and all that. So… yeah. How’s that for an update? I feel like I’ve been typing forever. I have a feeling I’m going to apply for a job sometime and someone will come along and actually read this and then stare at the screen like I’m crazy and not hire me for being overly detailed and horribly wordy with everything. Oh well, such is life (but seriously I can be super concise when I need to be, but I’m not here cause it’s my website and rambling off like crazy is sort of my default when I’m not directly working with other people, just in case someone actually does read this…). So… I guess that’s it. I still want to add in blacksmiths at some point, but right now I want to polish off what I can and ship this off in job applications asap. My life is starting to feel incredibly monotonous and boring, without any real meaning. Part of it (obviously) is that my game is nearing completion, but also part of it is just that other areas of my life feel pretty boring right now. Oh well. Until next time!