Coming off of Spring Break, we implemented some more difficult implementations that would further our game’s core gameplay.
The beginnings of magic have been implemented. The most basic, and arguably the most important, usage of magic in a game where taking damage is a strategic consequence, healing, has been implemented. Below, we have the newest addition to our cast of characters, Lulum, healing our dear friend Asku.
Upon selecting “Attack” (which will be changed later), Lulum can heal the Asku that has 5 HP up to 10 HP. The display UI for healing will be changed later. Other types of magic such as status effects and offense area of effect magic will also be implemented at a later date.
Experience Gain and Level Up
In a tactical strategy game, numbers are probably the most important thing in the game. In order for the player’s army to gain the strength needed to tackle harder enemies, the units must gain bigger numbers. Thus, experience points and levelling up have been implemented.
If the player’s unit attacks the enemy unit, the character will gain experience points, or EXP.
Asku, upon attacking Tatam, went from 0 EXP to 50. If the unit reaches 100 EXP points, the unit will level up.
Asku has leveled up! Of course, this comes with all sorts of perks. Asku has a invisible stat growth percentage for all of his stats (Max HP, Strength, Skill, Speed, Luck, Defense, and Resistance). Upon levelling up, Asku will have a chance of gaining an extra point in any of his stats, as long as that rolled number is within the range of the stat growth percentage range. Thus, if Asku has a 35% chance for his Max HP to go up, then he will have a 35% chance for his Max HP to go up when he levels up. In the example above, upon levelling up from 1 to 2 does display Asku’s Max HP going up from 10 to 11.
As of right now, we do not have a UI associated with showing Asku’s stats or his level up, but it will be implemented soon.
Earlier in the project, we simply had the units be able to deal a set amount of damage to the other unit 100% of the time with no deviation. It didn’t matter if the other unit was “stronger” than the other, they would each deal whatever damage their desired weapons would deal.
Now, we have an actual combat algorithm that determines multiple aspects of combat.
Above is an example of the combat forecast implemented from the previous week, this time with actual numbers. For the sake of testing, Tatam (the enemy unit) has 0s across his stat line. In other words, the numbers reflected on his side of the combat forecast are the numbers tied to his current weapon, the Flint Spear. Asku, however, has numbers in his current stats, which is also reflected in the combat forecast. Asku does more damage then Tatam and has a higher chance to hit the enemy. He also has a 2% chance to land a critical hit, even though both Asku and Tatam are holding the same weapon.
A new little tidbit has been added. The “x2” on the side of the Asku on the combat forecast depicts that Asku has a certain amount of more speed then Tatam such that Asku can attack Tatam twice, each attack having the same 67% chance to hit. So, theoretically, Asku can deal 30 damage total to Tatam in one combat phase. Of course, 67% isn’t that high of a number, so relying on Asku’s double hit might not be the brightest idea.
We now have multiple different types of terrain implemented beyond just grass tiles. The current types of terrain are Grass, Sand, Mountain, Fortress, Forest, and Water. Besides Grass and Water we are just using place holder solid colors for the terrain sprites as shown below.
Each different type of terrain has certain bonuses or negatives to different actions. For instance Sand is harder to move through and you get an avoid bonus when being attacked. There was also some bug fixes that were necessary to get stuff to work that had not cropped up yet with our code.
Skills and Classes
Classes and Skills are being implemented. These will have a wide variety of effects on units such as giving more stamina, dealing more damage, and more complicated stuff such as giving unique bonuses. Currently there is nothing to show image wise since it is all back end implementation at this time but there will be a UI that allows the player to choose which skills they want their units to have.