Game Update - 25 June 2020 - New Fight Engine & System
Jun 25, 2020 0:54:53 GMT 1
askytos, oorali, and 2 more like this
Post by Belouch on Jun 25, 2020 0:54:53 GMT 1
Game Update - 25 June 2020 - New Fight Engine (Code) and New Fight System (Formulas)
What we mean by Fight Engine is the actual code of the game that deals with the fights. The one that lets you pick a target, attack, heal, cast a spell, flee. It also dictates all the diplomacy that happens in a fight. It represents thousands and thousands of lines of code and it is by FAR the most complex part of the game.
What we mean by Fight System is the way the fights are handled and this is mainly via the use of many formulas, such as the hit-rate formula, the stats formulas, the damage formula etc. They need to all work together and offer sustanaible results for an almost unlimited number of possible combinations of opponents fighting each other. Of course these are encoded in the Fight Engine, but they represent only a fraction of the amount of code there (yet their impact is enormous).
New Fight Engine (Code)
The Fight Engine has been completely recoded from a blank page. This is a gigantic task that took Dreadlock hundreds and hundreds of hours, so he deserves an equally gigantic Thank You.
It also took a lot of testing, most on our test server, but also quite a lot in the game server where some of you contributed by attending the several arena brawls we held to test and by reporting bugs along the way, so also a big thank you to anyone who helped.
The big perk is that the game now runs on our very own engine, with an optimized, readable code with good notes to allow for easier changes in the future. Also, this optimized code is lighter on the database calls from good streamlining and better queries. Better performance overall, several bugs solved, and much more flexibility for us to add new features in the future. Some of which are already there...
New features
-Type of physical (slicing, piercing, blunt) damage dealt by player is now revealed. Monster damage descriptions are unchanged and still hinted by the attack message.
-Elemental damage (from runes) by players separate from physical damage. That damage is now affected by willpower and resistance provided from runes on armor.
-Elemental damage by players displayed in fight messages.
-Monsters have some additional stats for the new Fight System (see 2nd post here).
-Monsters have elemental resistance (currently 0% as a default, will be filled in over time. Good luck on that next dragon ).
-Leadership experience for Dragon kills now added directly by the fight engine. New longest fight message record for the next kill!
-You can now spawn a fight when you flee on a new tile.
Solved bugs
-When on group town, your offline fight orders could use from your dwelling. Fixed.
-If capturing 2 spirits in a single strike (multiple kills), experience was only given for 1 spirit. Fixed.
-Kiith were unable to flee to lava and Lightfoot unable to flee to water even when tribe's walk on terrain spell was active. New engine now uses the same code as the main page for moving. Fixed.
-When a monster only dropped gold, no message was given about the drop. Fixed.
-First round initiative for PvP fights is now fixed. Before, like the issue discovered in the PvE Xarnak event, anyone not in the initial fight declaration (the character exploring and the resulting monsters) was tacked onto the end in order of player ID. PvE had been fixed since Xarnak. Now all PvP targets are properly declared before the fight round starts.
New Fight System (Formula)
What was the issue?
The hit-rate formula is an exponential one. By having Agility and Strength factor in it, it was by definition not going to be stable over time as characters get stronger in stats. We can calibrate it to a certain level, but then a crazy snowball effect can happen when players' stats increase far beyond the point of calibration. And then if you recalibrate to have it fit the elite players, it screws everything for the new players.
We knew the limits of this system before Agonia even opened, so we calibrated it to a certain point that it would be stable for a year or so, giving us long enough to develop an entire new system. Unfortunately the severe server issues that we had from September until March really delayed the work on that end.
This was by far the biggest issue. Another issue is that it made strength less important than agility.
How it now works
>> New Hit-rate system
(The hit-rate is the % of likelihood that character A will hit character B based on their skill, items, stats, etc).
New Attack Power: Weapon skill + Weapon AP bonus + 100
New Defense Power: Weapon skill + Armor DP bonus + 50 (Armor DP Bonus includes armor, shield, rings, etc)
Now say Dubdub attacks Belouch:
-Dubdub's Attack Power and Belouch's Defense power are compared
-Based on the difference, a base-hit-rate is calculated (same formula as before but no longer using agility and strength)
-Dubdub's and Belouch's Agility and Strength are then compared and the result creates a hit-rate-modifier
-Final hit-rate = Base-hit-rate x hit-rate-modifier
So for example, if Dubdub's strength and agility are above Belouch's, the hit-rate will be increased. And if Belouch's stats are higher, then the hit-rate will be decreased.
Of course, similar to the old system, Agility plays a bigger role in this than Strength does. Which brings us to the second key difference.
>> New Damage Formula
The damage formula is very different now. Some players will notice a huge change, some will barely notice anything. This depends mainly on on high your strength is. If you have low strength, your damage is lower than before, if you have high strength, it is higher than before.
The key difference is that now strength plays an even bigger role in increasing your weapon damage.
Don't forget that Tier 2 weapons only use your strength damage boost partially, and Tier 1s (trainers) barely use any of it (so strength doesn't become an obstacle to training). You might still see an impact of the new formula on your trainer damage because the whole formula is different, even if we tried to keep trainer damage as close to what they used to be.
This change means that low strength tribes should not neglect increasing their strength otherwise their damage will really be tiny. And high strength tribes can start to deal much more damage than other tribes.
How fair is it now?
For PvP, extremely fair:
-It makes agility/strength/health equally valuable and impactful
To give you an idea, if a tribe had a 6/6/6 evocost for agility/strength/health and 10,000 Evopoints, the optimal distribution would be to have identical agility/strength/health amounts.
-It is stable over time and Evos
The above statement is true for 10k Evos, for 100k Evos, for 1 Million evos and for 10 Million evos, and yes, we actually tried!
-It will give us the longterm sustainable balance we want between tribes
Having the effect of the three key stats being equally important and sustainable overtime means we can fine-tune the different tribes' evocosts to make them exactly as strong in PvP as we want them too. And this will stay in check whether we are comparing 5k evo characters or 100k evo characters (more on evocosts further down).
What about PvE?
Forget most of what you know about the different encounters and monsters. Depending on your stat profiles and on the monsters, the fights can go extremely different to what you were used to. In general don't be surprised to find training grounds are a bit harder than before. Be very careful when going to a high-tier place as you might find some unpleasant surprise. Start low again and build your way up to test your new limits.
PvP was our main focus for the balance because it is what matters most in the tribe-balance and also because we can't manually tweak the stats of players, but we can do this with monsters. Only issue is that there are 300+ of them. So the fine-tuning of the monster data to better fit this new system will take a little while. We will announce the changes when they are made (generally it will likely be a small nerf of the 1-2 biggest mobs of each training areas).
Please help us by filling a very quick google form to provide feedback on the different training grounds (please only compare with those you knew rather well): forms.gle/998YqqBxLPd6Ri2J7
Character sheet updated
The attack power, defense power and damage displayed are now accurate.
What next?
Phase 1: First the system will be changed. We will likely have a raidban of a few days and maybe even a short downtime to ensure it goes smoothly.
DONE
Phase 2: We will adjust the PvE aspect. Because all the balancing is done for PvP (which is the hardest part as it has to be really well balanced for 8 different tribes, for 4 main fighting stats and need to be stable over time whether it's at 2,000 evos or 1,000,000 evos) but then we need to adjust the PvE elements to the new formula (adjust fighting stats of mobs).
We are now here.
Phase 3: We will tweak some evo-costs (a little bit) for a few tribes to be perfectly balanced.
For info, with the new system and the old evocosts, the balance is very close to what we want. Only a few races are 5-10% stronger or weaker than we would like, hence why we will adjust the evo-cost to reach the perfect balance.
Phase 4: We will tweak (a little bit) the stats of weapons to be perfectly balanced there as well.
Just to add that a small nerf was made on tier 1 and tier 2 dual sword and bow already so the AP bonus of those two weapon types has slightly less impact on training hit-rate.
More weapon adjustments will come in this 4th phase..
This update is a huge change so please try different things and report any bug or any awkward thing ASAP (either here on the forum or on our discord #support channel)
What we mean by Fight Engine is the actual code of the game that deals with the fights. The one that lets you pick a target, attack, heal, cast a spell, flee. It also dictates all the diplomacy that happens in a fight. It represents thousands and thousands of lines of code and it is by FAR the most complex part of the game.
What we mean by Fight System is the way the fights are handled and this is mainly via the use of many formulas, such as the hit-rate formula, the stats formulas, the damage formula etc. They need to all work together and offer sustanaible results for an almost unlimited number of possible combinations of opponents fighting each other. Of course these are encoded in the Fight Engine, but they represent only a fraction of the amount of code there (yet their impact is enormous).
New Fight Engine (Code)
The Fight Engine has been completely recoded from a blank page. This is a gigantic task that took Dreadlock hundreds and hundreds of hours, so he deserves an equally gigantic Thank You.
It also took a lot of testing, most on our test server, but also quite a lot in the game server where some of you contributed by attending the several arena brawls we held to test and by reporting bugs along the way, so also a big thank you to anyone who helped.
The big perk is that the game now runs on our very own engine, with an optimized, readable code with good notes to allow for easier changes in the future. Also, this optimized code is lighter on the database calls from good streamlining and better queries. Better performance overall, several bugs solved, and much more flexibility for us to add new features in the future. Some of which are already there...
New features
-Type of physical (slicing, piercing, blunt) damage dealt by player is now revealed. Monster damage descriptions are unchanged and still hinted by the attack message.
-Elemental damage (from runes) by players separate from physical damage. That damage is now affected by willpower and resistance provided from runes on armor.
-Elemental damage by players displayed in fight messages.
-Monsters have some additional stats for the new Fight System (see 2nd post here).
-Monsters have elemental resistance (currently 0% as a default, will be filled in over time. Good luck on that next dragon ).
-Leadership experience for Dragon kills now added directly by the fight engine. New longest fight message record for the next kill!
-You can now spawn a fight when you flee on a new tile.
Solved bugs
-When on group town, your offline fight orders could use from your dwelling. Fixed.
-If capturing 2 spirits in a single strike (multiple kills), experience was only given for 1 spirit. Fixed.
-Kiith were unable to flee to lava and Lightfoot unable to flee to water even when tribe's walk on terrain spell was active. New engine now uses the same code as the main page for moving. Fixed.
-When a monster only dropped gold, no message was given about the drop. Fixed.
-First round initiative for PvP fights is now fixed. Before, like the issue discovered in the PvE Xarnak event, anyone not in the initial fight declaration (the character exploring and the resulting monsters) was tacked onto the end in order of player ID. PvE had been fixed since Xarnak. Now all PvP targets are properly declared before the fight round starts.
New Fight System (Formula)
What was the issue?
The hit-rate formula is an exponential one. By having Agility and Strength factor in it, it was by definition not going to be stable over time as characters get stronger in stats. We can calibrate it to a certain level, but then a crazy snowball effect can happen when players' stats increase far beyond the point of calibration. And then if you recalibrate to have it fit the elite players, it screws everything for the new players.
We knew the limits of this system before Agonia even opened, so we calibrated it to a certain point that it would be stable for a year or so, giving us long enough to develop an entire new system. Unfortunately the severe server issues that we had from September until March really delayed the work on that end.
This was by far the biggest issue. Another issue is that it made strength less important than agility.
How it now works
>> New Hit-rate system
(The hit-rate is the % of likelihood that character A will hit character B based on their skill, items, stats, etc).
New Attack Power: Weapon skill + Weapon AP bonus + 100
New Defense Power: Weapon skill + Armor DP bonus + 50 (Armor DP Bonus includes armor, shield, rings, etc)
Now say Dubdub attacks Belouch:
-Dubdub's Attack Power and Belouch's Defense power are compared
-Based on the difference, a base-hit-rate is calculated (same formula as before but no longer using agility and strength)
-Dubdub's and Belouch's Agility and Strength are then compared and the result creates a hit-rate-modifier
-Final hit-rate = Base-hit-rate x hit-rate-modifier
So for example, if Dubdub's strength and agility are above Belouch's, the hit-rate will be increased. And if Belouch's stats are higher, then the hit-rate will be decreased.
Of course, similar to the old system, Agility plays a bigger role in this than Strength does. Which brings us to the second key difference.
>> New Damage Formula
The damage formula is very different now. Some players will notice a huge change, some will barely notice anything. This depends mainly on on high your strength is. If you have low strength, your damage is lower than before, if you have high strength, it is higher than before.
The key difference is that now strength plays an even bigger role in increasing your weapon damage.
Don't forget that Tier 2 weapons only use your strength damage boost partially, and Tier 1s (trainers) barely use any of it (so strength doesn't become an obstacle to training). You might still see an impact of the new formula on your trainer damage because the whole formula is different, even if we tried to keep trainer damage as close to what they used to be.
This change means that low strength tribes should not neglect increasing their strength otherwise their damage will really be tiny. And high strength tribes can start to deal much more damage than other tribes.
How fair is it now?
For PvP, extremely fair:
-It makes agility/strength/health equally valuable and impactful
To give you an idea, if a tribe had a 6/6/6 evocost for agility/strength/health and 10,000 Evopoints, the optimal distribution would be to have identical agility/strength/health amounts.
-It is stable over time and Evos
The above statement is true for 10k Evos, for 100k Evos, for 1 Million evos and for 10 Million evos, and yes, we actually tried!
-It will give us the longterm sustainable balance we want between tribes
Having the effect of the three key stats being equally important and sustainable overtime means we can fine-tune the different tribes' evocosts to make them exactly as strong in PvP as we want them too. And this will stay in check whether we are comparing 5k evo characters or 100k evo characters (more on evocosts further down).
What about PvE?
Forget most of what you know about the different encounters and monsters. Depending on your stat profiles and on the monsters, the fights can go extremely different to what you were used to. In general don't be surprised to find training grounds are a bit harder than before. Be very careful when going to a high-tier place as you might find some unpleasant surprise. Start low again and build your way up to test your new limits.
PvP was our main focus for the balance because it is what matters most in the tribe-balance and also because we can't manually tweak the stats of players, but we can do this with monsters. Only issue is that there are 300+ of them. So the fine-tuning of the monster data to better fit this new system will take a little while. We will announce the changes when they are made (generally it will likely be a small nerf of the 1-2 biggest mobs of each training areas).
Please help us by filling a very quick google form to provide feedback on the different training grounds (please only compare with those you knew rather well): forms.gle/998YqqBxLPd6Ri2J7
Character sheet updated
The attack power, defense power and damage displayed are now accurate.
What next?
Phase 1: First the system will be changed. We will likely have a raidban of a few days and maybe even a short downtime to ensure it goes smoothly.
DONE
Phase 2: We will adjust the PvE aspect. Because all the balancing is done for PvP (which is the hardest part as it has to be really well balanced for 8 different tribes, for 4 main fighting stats and need to be stable over time whether it's at 2,000 evos or 1,000,000 evos) but then we need to adjust the PvE elements to the new formula (adjust fighting stats of mobs).
We are now here.
Phase 3: We will tweak some evo-costs (a little bit) for a few tribes to be perfectly balanced.
For info, with the new system and the old evocosts, the balance is very close to what we want. Only a few races are 5-10% stronger or weaker than we would like, hence why we will adjust the evo-cost to reach the perfect balance.
Phase 4: We will tweak (a little bit) the stats of weapons to be perfectly balanced there as well.
Just to add that a small nerf was made on tier 1 and tier 2 dual sword and bow already so the AP bonus of those two weapon types has slightly less impact on training hit-rate.
More weapon adjustments will come in this 4th phase..
This update is a huge change so please try different things and report any bug or any awkward thing ASAP (either here on the forum or on our discord #support channel)