Useful links
Project news  Source code of the game  Contribution guide  Wiki  ATCS Content Editor Translate the game on Weblate  Example walkthrough  Andor's Trail Directory
Get the game from Google, our server, or FDroid
Project news  Source code of the game  Contribution guide  Wiki  ATCS Content Editor Translate the game on Weblate  Example walkthrough  Andor's Trail Directory
Get the game from Google, our server, or FDroid
FSTH damage potential increase?
 Voom
 Posts: 495
 Joined: Sat Dec 19, 2015 5:24 pm
 android_version: 4.4
 Location: Fort Lauderdale, FL
Re: FSTH damage potential increase?
The ideal solution (as discussed before):
Weapon stats equal a stated % of base stats.
All equipment stats equal a stated % of character's base stats.
There are many types of stats that are exceptions (ones that do not appear as a base stat).
This undoubtedly allows weapons to scale and minimizes their base stat uselessness.
Was that simple or what?
The base stats to be treated like this include HP, AC, AD, and BC.
Example: If a character has 100 HP, 200 AC, 30 AD, and 60 BC, then holding Valugha's shimmering hat could give the character +3% HP, +8% AC, 7% AD, 8% BC, and 1 Move Cost.
Weapon stats equal a stated % of base stats.
All equipment stats equal a stated % of character's base stats.
There are many types of stats that are exceptions (ones that do not appear as a base stat).
This undoubtedly allows weapons to scale and minimizes their base stat uselessness.
Was that simple or what?
The base stats to be treated like this include HP, AC, AD, and BC.
Example: If a character has 100 HP, 200 AC, 30 AD, and 60 BC, then holding Valugha's shimmering hat could give the character +3% HP, +8% AC, 7% AD, 8% BC, and 1 Move Cost.
Voomster Lvl 23 HP 52 AC 173% AD 1752 ECC 20% CM 3.0 BC 61% DR 2 Build 2/3221/0
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating

 Lead Developer
 Posts: 1479
 Joined: Thu Jul 21, 2011 9:56 am
 android_version: 7.1
Re: FSTH damage potential increase?
Sounds easy right? Codewise it is. But then we have to rebalance the whole game. All equipment, all weapons, all enemies. THAT is hard, and long.
Combat system overhaul is more or less planned for v0.8.0, but our priority is creating the content for v0.7.2.
Combat system overhaul is more or less planned for v0.8.0, but our priority is creating the content for v0.7.2.
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: , RoL: , ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
 rijackson741
 Posts: 1653
 Joined: Tue Aug 20, 2013 2:04 am
 android_version: 6.0
 Location: Somewhere in Dhayavar
Re: FSTH damage potential increase?
Well, if you read through the damage per round thread that I pointed to (http://andorstrail.com/viewtopic.php?f=4&t=4096), no, it's not simple. The devil is in the details, and there are a lot of details. What should the multiplier be for different weapons? What about BC, and multipliers for shields vs armor? What about DR (IMO this should be left static, as it is now)? What do we do about rings, which, as others have pointed out (http://andorstrail.com/viewtopic.php?f= ... 798#p56798), are rather overpowered? Is DPR even the best solution (I think it's a great starting point, but I am not sure it's the total answer). And, as Zukero points out, once we have the details worked out and the new system implemented, almost every item, and possibly every monster, will need to be adjusted.Voom wrote: ↑Sat Jul 08, 2017 4:10 amThe ideal solution (as discussed before):
Weapon stats equal a stated % of base stats.
All equipment stats equal a stated % of character's base stats.
There are many types of stats that are exceptions (ones that do not appear as a base stat).
This undoubtedly allows weapons to scale and minimizes their base stat uselessness.
Was that simple or what?
Like I said, we only want to do this once, which means a lot of upfront work making sure we got it right, and then a lot of work adjusting everything. It's a huge project.
Level: 64, XP: 4734786, HP: 196, AC: 246%, AD: 4959, AP: 3, ECC: 25%, CM: 3, BC: 127%, DR: 2
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR
 Voom
 Posts: 495
 Joined: Sat Dec 19, 2015 5:24 pm
 android_version: 4.4
 Location: Fort Lauderdale, FL
Re: FSTH damage potential increase?
I'm sure it is a huge project. Unfortunately, I don't see the next update without it. Advancing the narrative without an established foundation might be bad news. However, I could be wrong. Maybe we can implement a new equipment arrangement in v7.4 after the next two updates that go together.
I've read through the DPR thread but it is easy to lose track due to side bar conversations. So I didn't get the whole BC issue (I'll read up). I believe the best way to go is to leave every stat static except for the four base stats, whether it's Multiplier, DR, Move cost, CS, AP/Attack cost (are there more?). Conditions like BW Misery need not be changed either. Conditions, like it was mentioned in the DPR thread, do need to be adjusted.
It is hard to come up with a place to start so that changes we want to see are done fairly and in context with AT's other game elements. I have thought a little about this and I propose we start equating %HP, %AC, %AD, and %BC as a simple reference point to the adjustments we make to equipment, etc. Right now, as apportioned by level ups, 5 HP = 5 AC = 1 AD = 3 BC. Of course, we know this is flawed due to the scaling issue. That is why %Stat should be used.
I understand that coming up with a formula might be difficult and arbitrary, but if the devs do not come up with the formula (arbitrary or not), then who else will? Oskar came up with stat pricing through, I'm guessing, an arbitrary means. In ATCS, as I have discussed before in other threads, every buyable/sellable item has a price in terms of gold based on its stats and conditions. This pricing is scaled exponentially based on the models that I recreated (except for DR, which I believe is a straight line when plotted). Every stat has its own unique, originally created equation. I wonder if Oskar or anyone else still has those equations b/c my recreations using excel can't ever be 100% accurate (trust me, I tried). As a note, when I say that each stats' pricing equation is exponential, I mean that the more HP you have the less even more HP is worth. That is the scaling inherent in the value of each stat.
So, the point is that we need to decide how much +1% HP equals in terms of %AC, %ADmin, %ADmax, %BC. According to the ATCS pricing equations, ADmin is worth a little more than ADmax all throughout the graphed scale. Example: +10% HP = +5% AC = +40% ADmin = +45% ADmax = +15% BC. Yes, this will be an arbitrary measure of equipment, etc., but we can use the ATCS pricing equations as a guide.
I've read through the DPR thread but it is easy to lose track due to side bar conversations. So I didn't get the whole BC issue (I'll read up). I believe the best way to go is to leave every stat static except for the four base stats, whether it's Multiplier, DR, Move cost, CS, AP/Attack cost (are there more?). Conditions like BW Misery need not be changed either. Conditions, like it was mentioned in the DPR thread, do need to be adjusted.
It is hard to come up with a place to start so that changes we want to see are done fairly and in context with AT's other game elements. I have thought a little about this and I propose we start equating %HP, %AC, %AD, and %BC as a simple reference point to the adjustments we make to equipment, etc. Right now, as apportioned by level ups, 5 HP = 5 AC = 1 AD = 3 BC. Of course, we know this is flawed due to the scaling issue. That is why %Stat should be used.
I understand that coming up with a formula might be difficult and arbitrary, but if the devs do not come up with the formula (arbitrary or not), then who else will? Oskar came up with stat pricing through, I'm guessing, an arbitrary means. In ATCS, as I have discussed before in other threads, every buyable/sellable item has a price in terms of gold based on its stats and conditions. This pricing is scaled exponentially based on the models that I recreated (except for DR, which I believe is a straight line when plotted). Every stat has its own unique, originally created equation. I wonder if Oskar or anyone else still has those equations b/c my recreations using excel can't ever be 100% accurate (trust me, I tried). As a note, when I say that each stats' pricing equation is exponential, I mean that the more HP you have the less even more HP is worth. That is the scaling inherent in the value of each stat.
So, the point is that we need to decide how much +1% HP equals in terms of %AC, %ADmin, %ADmax, %BC. According to the ATCS pricing equations, ADmin is worth a little more than ADmax all throughout the graphed scale. Example: +10% HP = +5% AC = +40% ADmin = +45% ADmax = +15% BC. Yes, this will be an arbitrary measure of equipment, etc., but we can use the ATCS pricing equations as a guide.
Voomster Lvl 23 HP 52 AC 173% AD 1752 ECC 20% CM 3.0 BC 61% DR 2 Build 2/3221/0
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating
 rijackson741
 Posts: 1653
 Joined: Tue Aug 20, 2013 2:04 am
 android_version: 6.0
 Location: Somewhere in Dhayavar
Re: FSTH damage potential increase?
The next one has to be new content, because people have already waited too long. Adding some new content will not make the combat problems any worse, except to the extent that there will be more content that needs to be adjusted later.Voom wrote: ↑Sat Jul 08, 2017 7:08 pmI'm sure it is a huge project. Unfortunately, I don't see the next update without it. Advancing the narrative without an established foundation might be bad news. However, I could be wrong. Maybe we can implement a new equipment arrangement in v7.4 after the next two updates that go together.
However, after that, I agree with you. We need to fix it sooner rather than later, because that will have the minimum impact on players builds going forward.
I would leave HP static too. It's mainly AD that needs the fix, but AC and BC would also benefit.Voom wrote: ↑Sat Jul 08, 2017 7:08 pmI've read through the DPR thread but it is easy to lose track due to side bar conversations. So I didn't get the whole BC issue (I'll read up). I believe the best way to go is to leave every stat static except for the four base stats, whether it's Multiplier, DR, Move cost, CS, AP/Attack cost (are there more?). Conditions like BW Misery need not be changed either. Conditions, like it was mentioned in the DPR thread, do need to be adjusted.
It is hard to come up with a place to start so that changes we want to see are done fairly and in context with AT's other game elements. I have thought a little about this and I propose we start equating %HP, %AC, %AD, and %BC as a simple reference point to the adjustments we make to equipment, etc. Right now, as apportioned by level ups, 5 HP = 5 AC = 1 AD = 3 BC. Of course, we know this is flawed due to the scaling issue. That is why %Stat should be used.
I've never looked into how the pricing of items is calculated, but I have been meaning to because I think that needs adjusting too. The equations are buried in the code somewhere, just have to find themVoom wrote: ↑Sat Jul 08, 2017 7:08 pmI understand that coming up with a formula might be difficult and arbitrary, but if the devs do not come up with the formula (arbitrary or not), then who else will? Oskar came up with stat pricing through, I'm guessing, an arbitrary means. In ATCS, as I have discussed before in other threads, every buyable/sellable item has a price in terms of gold based on its stats and conditions. This pricing is scaled exponentially based on the models that I recreated (except for DR, which I believe is a straight line when plotted). Every stat has its own unique, originally created equation. I wonder if Oskar or anyone else still has those equations b/c my recreations using excel can't ever be 100% accurate (trust me, I tried). As a note, when I say that each stats' pricing equation is exponential, I mean that the more HP you have the less even more HP is worth. That is the scaling inherent in the value of each stat.
Only if we believe that the pricing equations are currently balanced correctly This kind of question is what I mean by getting it right when we do it, so that we don't have to do it again.Voom wrote: ↑Sat Jul 08, 2017 7:08 pmSo, the point is that we need to decide how much +1% HP equals in terms of %AC, %ADmin, %ADmax, %BC. According to the ATCS pricing equations, ADmin is worth a little more than ADmax all throughout the graphed scale. Example: +10% HP = +5% AC = +40% ADmin = +45% ADmax = +15% BC. Yes, this will be an arbitrary measure of equipment, etc., but we can use the ATCS pricing equations as a guide.
Level: 64, XP: 4734786, HP: 196, AC: 246%, AD: 4959, AP: 3, ECC: 25%, CM: 3, BC: 127%, DR: 2
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR

 Lead Developer
 Posts: 1479
 Joined: Thu Jul 21, 2011 9:56 am
 android_version: 7.1
Re: FSTH damage potential increase?
From ATCS' code (which is a port of AT's code in this instance) :
I hope it helps. You'll have to decipher it, but I believe that variables are named wellenough for you to figure it out.
Code: Select all
public Integer computePrice() {
int price = 0;
if (category != null && category.action_type != null) {
if (category.action_type == ItemCategory.ActionType.use) {
price += kill_effect == null ? 0 : calculateUseCost();
} else if (category.action_type == ItemCategory.ActionType.equip) {
price += equip_effect == null ? 0 : calculateEquipCost(isWeapon());;
price += hit_effect == null ? 0 : calculateHitCost();
price += kill_effect == null ? 0 : calculateKillCost();
}
}
return Math.max(1, price);
}
Code: Select all
public int calculateUseCost() {
final float averageHPBoost = (zeroForNull(kill_effect.hp_boost_min) + zeroForNull(kill_effect.hp_boost_max)) / 2.0f;
if (averageHPBoost == 0) return 0;
return (int) (0.1*Math.signum(averageHPBoost)*Math.pow(Math.abs(averageHPBoost), 2) + 3*averageHPBoost);
}
public int calculateEquipCost(boolean isWeapon) {
final int costBC = (int) (3*Math.pow(Math.max(0, zeroForNull(equip_effect.increase_block_chance)), 2.5) + 28*zeroForNull(equip_effect.increase_block_chance));
final int costAC = (int) (0.4*Math.pow(Math.max(0,zeroForNull(equip_effect.increase_attack_chance)), 2.5)  6*Math.pow(Math.abs(Math.min(0,zeroForNull(equip_effect.increase_attack_chance))),2.7));
final int costAP = isWeapon ?
(int) (0.2*Math.pow(10.0f/zeroForNull(equip_effect.increase_attack_cost), 8)  25*zeroForNull(equip_effect.increase_attack_cost))
:3125 * zeroForNull(equip_effect.increase_attack_cost);
final int costDR = 1325 * zeroForNull(equip_effect.increase_damage_resistance);
final int costDMG_Min = isWeapon ?
(int) (10*Math.pow(Math.max(0, zeroForNull(equip_effect.damage_boost_min)), 2.5))
:(int) (10*Math.pow(Math.max(0, zeroForNull(equip_effect.damage_boost_min)), 3) + zeroForNull(equip_effect.damage_boost_min)*80);
final int costDMG_Max = isWeapon ?
(int) (2*Math.pow(Math.max(0, zeroForNull(equip_effect.damage_boost_max)), 2.1))
:(int) (2*Math.pow(Math.max(0, zeroForNull(equip_effect.damage_boost_max)), 3) + zeroForNull(equip_effect.damage_boost_max)*20);
final int costCS = (int) (2.2*Math.pow(zeroForNull(equip_effect.increase_critical_skill), 3));
final int costCM = (int) (50*Math.pow(Math.max(0, zeroForNull(equip_effect.critical_multiplier)), 2));
final int costMaxHP = (int) (30*Math.pow(Math.max(0,zeroForNull(equip_effect.max_hp_boost)), 1.2) + 70*zeroForNull(equip_effect.max_hp_boost));
final int costMaxAP = (int) (50*Math.pow(Math.max(0,zeroForNull(equip_effect.max_ap_boost)), 3) + 750*zeroForNull(equip_effect.max_ap_boost));
final int costMovement = (int) (510*Math.pow(Math.max(0,zeroForNull(equip_effect.increase_move_cost)), 2.5)  350*zeroForNull(equip_effect.increase_move_cost));
final int costUseItem = (int)(915*Math.pow(Math.max(0,zeroForNull(equip_effect.increase_use_item_cost)), 3)  430*zeroForNull(equip_effect.increase_use_item_cost));
final int costReequip = (int)(450*Math.pow(Math.max(0,zeroForNull(equip_effect.increase_reequip_cost)), 2)  250*zeroForNull(equip_effect.increase_reequip_cost));
return costBC + costAC + costAP + costDR + costDMG_Min + costDMG_Max + costCS + costCM
+ costMaxHP + costMaxAP
+ costMovement + costUseItem + costReequip;
}
public int calculateHitCost() {
final float averageHPBoost = (zeroForNull(hit_effect.hp_boost_min) + zeroForNull(hit_effect.hp_boost_max)) / 2.0f;
final float averageAPBoost = (zeroForNull(hit_effect.ap_boost_min) + zeroForNull(hit_effect.ap_boost_max)) / 2.0f;
if (averageHPBoost == 0 && averageAPBoost == 0) return 0;
final int costBoostHP = (int)(2770*Math.pow(Math.max(0,averageHPBoost), 2.5) + 450*averageHPBoost);
final int costBoostAP = (int)(3100*Math.pow(Math.max(0,averageAPBoost), 2.5) + 300*averageAPBoost);
return costBoostHP + costBoostAP;
}
public int calculateKillCost() {
final float averageHPBoost = (zeroForNull(kill_effect.hp_boost_min) + zeroForNull(kill_effect.hp_boost_max)) / 2.0f;
final float averageAPBoost = (zeroForNull(kill_effect.ap_boost_min) + zeroForNull(kill_effect.ap_boost_max)) / 2.0f;
if (averageHPBoost == 0 && averageAPBoost == 0) return 0;
final int costBoostHP = (int)(923*Math.pow(Math.max(0,averageHPBoost), 2.5) + 450*averageHPBoost);
final int costBoostAP = (int)(1033*Math.pow(Math.max(0,averageAPBoost), 2.5) + 300*averageAPBoost);
return costBoostHP + costBoostAP;
}
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: , RoL: , ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
 rijackson741
 Posts: 1653
 Joined: Tue Aug 20, 2013 2:04 am
 android_version: 6.0
 Location: Somewhere in Dhayavar
Re: FSTH damage potential increase?
Thanks. That will save me some time
Level: 64, XP: 4734786, HP: 196, AC: 246%, AD: 4959, AP: 3, ECC: 25%, CM: 3, BC: 127%, DR: 2
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR
Gold: 232355  RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR
 Voom
 Posts: 495
 Joined: Sat Dec 19, 2015 5:24 pm
 android_version: 4.4
 Location: Fort Lauderdale, FL
Re: FSTH damage potential increase?
Thanks, Zukero. I can see all the formulas, but I'm not sure I understand some of the terminology.
I think out of principle, HP shouldn't be static b/c it might have a scaling issue as well. But that is something that can be discussed.
I think out of principle, HP shouldn't be static b/c it might have a scaling issue as well. But that is something that can be discussed.
Voomster Lvl 23 HP 52 AC 173% AD 1752 ECC 20% CM 3.0 BC 61% DR 2 Build 2/3221/0
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating
Voomboy Retired at 41 and is reading The Fey of Feygard
Voom Retired at 46 and took up translating
 marquinho
 Posts: 36
 Joined: Mon Jul 03, 2017 6:09 am
 android_version: 4.4
Re: FSTH damage potential increase?
I think you don't need %HP items when there's Increased Fortitude. That gives you enough HP that you need.
%HP items + IF would be too strong imo.
%HP items + IF would be too strong imo.
Tarobinha Lv52 Blackwater Thief
AP:12/3 HP:134 AC:309% AD:4752, CHS:49, BC:182%, DR:1
IF:3, CS:2, MF:1, S:DW, DP:3, LAP:3
BWH, BWA, BWD:2, Mt, RotP, RoLS, GotG, ECB
GoW:1
There is no honor among thieves.
AP:12/3 HP:134 AC:309% AD:4752, CHS:49, BC:182%, DR:1
IF:3, CS:2, MF:1, S:DW, DP:3, LAP:3
BWH, BWA, BWD:2, Mt, RotP, RoLS, GotG, ECB
GoW:1
There is no honor among thieves.

 Lead Developer
 Posts: 1479
 Joined: Thu Jul 21, 2011 9:56 am
 android_version: 7.1
Re: FSTH damage potential increase?
On the other hand, it would stop IF from being mandatory by giving a reasonable alternative.
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: , RoL: , ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
HP: 71, AC: 301%, AD: 3847, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2
Who is online
Users browsing this forum: No registered users and 2 guests