Project 1999

Go Back   Project 1999 > Class Discussions > Tanks

Reply
 
Thread Tools Display Modes
  #511  
Old 08-15-2023, 01:05 PM
Jimjam Jimjam is offline
Planar Protector


Join Date: Jul 2013
Posts: 11,440
Default

So what are the reasons for the extra values above the enormous spike (on mr turtle)? Is there a further random element to damage? Like a random bonus damage which is only sometimes added? I remember reading about such a thing in the past but can’t find much specific … just ‘internet wisdom’
__________________

Gorgen (Blue) - Agnostic Troll Warrior of the XXXI Dung

Last edited by Jimjam; 08-15-2023 at 01:12 PM..
Reply With Quote
  #512  
Old 08-15-2023, 01:16 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 6,347
Default

Quote:
Originally Posted by Jimjam [You must be logged in to view images. Log in or Register.]
Great code you found.

Shouldn’t the presence of 2 rolls (roll for attack and roll for defence) create a normal distribution (like how rolling 2d6 creates a bell curve where 2 and 12 are 1/36 each, 3 and 11 are 3/36 going up to the most common result, 7 which is 6/36)?

The question is why aren’t hits amounts on mr turtle looking very normally distributed? Each fight he has like 100 hits for 1 specific hit value and the many (more than 19) other hit values tend to only occur a couple of times??

Edit: Interestingly mr turtle himself only hit for one value (like 30 times per fight).
We can take a quick look. This is using the https://wiki.project1999.com/Ancient...ched_Flamberge on my 60 Shadowknight.

1. Scenario with 350 offense, 260 Max Damage, and 350 mitigation:
1a. atk_roll = Average roll between 0 and 350 = 175.
1b. def_roll = Average roll between 0 and 350 = 175.
1c. avg = (175 atk_roll + 175 def_roll + 10) / 2 = 180.
1d. index = (175 atk_roll - 175 def_roll) + (180 avg / 2) = 90.
1e. index = (90 index * 20) / 180 avg = 10.
1f. index 10 in the array is 1.1.
1g. Average damage value is (260 Max damage / 2) * 1.1 = 143.

1. Scenario with 337 offense (-20 STR), 254 Max Damage, and 350 mitigation:
1a. atk_roll = Average roll between 0 and 337 = 169 (rounded up).
1b. def_roll = Average roll between 0 and 350 = 175.
1c. avg = (169 atk_roll + 175 def_roll + 10) / 2 = 177.
1d. index = (169 atk_roll - 175 def_roll) + (177 avg / 2) = 83 (rounded up).
1e. index = (83 index * 20) / 177 avg = 9.3.
1f. index 9 in the array is 1.0, with a 30% chance to move up to index 10, which is 1.1
1g. Average damage value is (254 Max damage / 2) * 1.0 = 127.
1h. Average damage value is (254 Max damage / 2) * 1.1 = 140 (rounded up).
1i. In a data set of [127, 127, 127, 127, 127, 127, 127, 140, 140, 140], adding up these numbers and dividing by 10 gives you and average of 131.

This implies the 20 STR is giving you a 8.5% (131/143) difference in your average damage at level 60 with a 46 damage weapon. On Corudoth I missed 49 times and hit for 496 times on the 2H test, so on a mob 55 levels below you, it looks like you will hit 90% of the time. so 90% of 8.5 is a 7.6% increase in DPS.

On harder mobs your hit rate is much lower. Looking through some quick parses it is more like you are missing 40-50% of the time on a tougher mob, but I don't have a large sample at hand. This means the 4-5% number I got from my turtle parses happened to be just about right. RNG simply didn't give me the 7.6% high end, it gave me the middle and lower ends.

4-5% of a DPS increase is really not a large boost for most players during the leveling process. If you are doing ~20 DPS around level 30, a 4% boost to that is 0.8. 3600 x 0.8 = 2880 damage per hour, assuming you are auto attacking non-stop. Realistically speaking you are probably getting half that. A mob like https://wiki.project1999.com/Travis_Two_Tone has 875 HP, so you are getting 1-2 more kills per hour if you are XPing at maximum efficiency. If you are semi-afk killing Travis Two Tone, you are getting 0 extra kills per hour.
__________________
Last edited by DeathsSilkyMist; 08-15-2023 at 01:21 PM..
Reply With Quote
  #513  
Old 08-15-2023, 01:21 PM
Toxigen Toxigen is offline
Planar Protector

Toxigen's Avatar

Join Date: Jan 2021
Posts: 4,410
Default

No matter how small the DPS increase is, its still better than INT.

Add in the extra weight carry and its a no brainer.
__________________
ENC | MNK | WAR | ROG | CLR | DRU | SHM | NEC | PAL | BRD

Quote:
Originally Posted by DeathsSilkyMist View Post
With enough Clerics any class can survive AoW.
Reply With Quote
  #514  
Old 08-15-2023, 01:24 PM
Lune Lune is offline
Planar Protector

Lune's Avatar

Join Date: Mar 2013
Posts: 3,250
Default

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
We can take a quick look. This is using the https://wiki.project1999.com/Ancient...ched_Flamberge on my 60 Shadowknight.

1. Scenario with 350 offense, 260 Max Damage, and 350 mitigation:
Where are you getting these values for offense and mitigation?
Reply With Quote
  #515  
Old 08-15-2023, 01:27 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 6,347
Default

Quote:
Originally Posted by Lune [You must be logged in to view images. Log in or Register.]
Where are you getting these values for offense and mitigation?
Good question. I got the offense values from a previous post I made:

https://www.project1999.com/forums/s...&postcount=446

The offense value is correct based on real data and code as far as I can tell. I am using my SK's STR and Offense Skill, as well as the damage from the Ancient Fire Etched Flamberge.

The mitigation value is made up. I am simply showing what a mob with equal mitigation value would look like.

Feel free to manipulate the mitigation value as you see fit.
__________________
Reply With Quote
  #516  
Old 08-15-2023, 01:30 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 6,347
Default

Quote:
Originally Posted by Toxigen [You must be logged in to view images. Log in or Register.]
No matter how small the DPS increase is, its still better than INT.

Add in the extra weight carry and its a no brainer.
I disagree. You can show plenty of cases where the DPS bosst from 20 STR is giving you no more kills per hour. It will not be noticeable most of the time, just like the extra mana from INT.

You do not need 200+ STR to carry everything you need, I have leveled two melee characters with less than 200 STR and did fine. They were carrying FS weapons from guards a lot of the time too. Bazgek did not have 200+ STR for most of his leveling career, and Sznake never had more than 140ish STR. They picked up everything, including heavy stuff and coin.

Both STR and INT are providing small bonuses, but INT will take you longer to cap. This means INT will give you it's small bonus for a longer period of time.
__________________
Last edited by DeathsSilkyMist; 08-15-2023 at 01:35 PM..
Reply With Quote
  #517  
Old 08-15-2023, 01:43 PM
Toxigen Toxigen is offline
Planar Protector

Toxigen's Avatar

Join Date: Jan 2021
Posts: 4,410
Default

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
I disagree. You can show plenty of cases where the DPS bosst from 20 STR is giving you no more kills per hour. It will not be noticeable most of the time, just like the extra mana from INT.

You do not need 200+ STR to carry everything you need, I have leveled two melee characters with less than 200 STR and did fine. They were carrying FS weapons from guards a lot of the time too. Bazgek did not have 200+ STR for most of his leveling career, and Sznake never had more than 140ish STR. They picked up everything, including heavy stuff and coin.

Both STR and INT are providing small bonuses, but INT will take you longer to cap. This means INT will give you it's small bonus for a longer period of time.
nah
__________________
ENC | MNK | WAR | ROG | CLR | DRU | SHM | NEC | PAL | BRD

Quote:
Originally Posted by DeathsSilkyMist View Post
With enough Clerics any class can survive AoW.
Reply With Quote
  #518  
Old 08-15-2023, 01:51 PM
Lune Lune is offline
Planar Protector

Lune's Avatar

Join Date: Mar 2013
Posts: 3,250
Default

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
Good question. I got the offense values from a previous post I made:

https://www.project1999.com/forums/s...&postcount=446

The offense value is correct based on real data and code as far as I can tell. I am using my SK's STR and Offense Skill, as well as the damage from the Ancient Fire Etched Flamberge.

The mitigation value is made up. I am simply showing what a mob with equal mitigation value would look like.

Feel free to manipulate the mitigation value as you see fit.
Ok, looking back at your post, this is not true:

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
The EQEMU source code is available. P99 is based off of this code. I can show you the P99 max damage formula is unchanged when compared to the EQEMU code:
P99 does not use the EQEMU source code for damage calculation:

Quote:
Originally Posted by Rogean [You must be logged in to view images. Log in or Register.]
Code:
Kanras: Removed hard "calculated damage" cap for < 10 and < 20 players, replaced with weapon_dmg cap.
Kanras: Archery weapon_dmg is once again correctly being calculated.
Kanras: Backstab and sneak now require you to be behind the mob to succeed, rather than requiring you to only be outside the mob's frontal attack cone.
Kanras: More accurate NPC backstab and flying kick damage ranges.
Kanras: All potential double attack/dual wield rolls will succeed for all attack types when using Kinesthetics.
Kanras: Pets will use same calculations as PCs when doing double attack/dual wield rolls.
Kanras: Corrected the rate at which warriors triple attack.
Kanras: Offhand double attack can only succeed if double attack skill >= 150.
Kanras: High-level monks can now carry increased weight without penalty. The additional allowance is granted at levels 55 and 60.
Kanras: Two-handed weapons have had their damage-bonus modified. The damage-bonus for low-delay two-handed weapons (27 or below) created a problem similar to the weapons below and has been reduced. The damage-bonus has not changed for normal-delay (28-39) two-handed weapons. The damage bonus for high-delay two-handed weapons (40+) has been increased.
Kanras: "Damage Table" changes. In a previous patch, they were used to justify higher PC_DMG_MULT cap (correct) and a PWR-based method for calculating the max roll (incorrect). They now account for adjusting distribution of successful hits rather than just increasing the max possible hit. Chance to successfully dual wield/double attack is also affected by the damage table you are on.
Quote:
Originally Posted by kanras [You must be logged in to view images. Log in or Register.]
Basic summary to melee DPS changes: 60 rog/mnk/war/rng will see very, very minor DPS reduction due to max mult. reduction. 1-50 non-mnk will see a decent dps reduction due to distribution changes. 51-59 rog/mnk/war/rng will have a small reduction in DPS due to max mult reduction and in-between distribution reduction.

Pet attack frequency/damage changes: Yes, they're justified due to data.
It doesn't even take parsing to show that P99's max damage formula is the same as EQEMU, but that's just a small part of gross damage calculation. You aren't going to be able to derive the actual, entire damage tables/formulas from parsing because there are too many variables (mob level, AC, etc). Beating on a low level mob is going to obscure the distribution and overrepresent max hits. Knowing max hit calculation is of limited usefulness, only showing the contribution from strength for a small slice of total combat.

(However, as I showed about 20 pages ago, looking only at max hit is sufficient to show strength is better than INT from a pure numbers perspective because the contribution from INT is that paltry.)
Last edited by Lune; 08-15-2023 at 01:53 PM..
Reply With Quote
  #519  
Old 08-15-2023, 01:55 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 6,347
Default

Quote:
Originally Posted by Lune [You must be logged in to view images. Log in or Register.]
Ok, looking back at your post, this is not true:

P99 does not use the EQEMU source code for damage calculation:

It doesn't even take parsing to show that P99's max damage formula is the same as EQEMU, but that's just a small part of gross damage calculation. You aren't going to be able to derive the the actual, entire damage tables/formulas from parsing because there are too many variables (mob level, AC, etc). Beating on a low level mob is going to obscure the distribution and overrepresent max hits. Knowing max hit calculation is of limited usefulness, only showing the contribution from strength for a small slice of total combat.

(However, as I showed about 20 pages ago, looking only at max hit is sufficient to show strength is better than INT from a pure numbers perspective because the contribution from INT is that paltry.)
Based on my calculations using P99 data, it does use the EQEMU source code for damage calculations. Do you think it is a coincidence that plugging in P99 numbers gives me a 260 max damage, and I hit for 258 max damage on my parses with those numbers?

Remember that the EQEMU code gets updated by the same people who work on P99. It is probable they uploaded the P99 damage code back into EQEMU after those posts were made. You are looking at patch notes from 2011, a lot has changed in 12 years.

This honestly makes sense. From a code perspective it is better to keep the EQEMU codebase and the P99 codebase as close as possible. If you have to fix a bug twice in two different code bases, you are doubling up your workload. The ideal situation is to only make specific changes to P99 when it is necessary.

Most of P99's magic comes from the database anyway, which they will never share. They will never put the P99 database on GitHub.
__________________
Last edited by DeathsSilkyMist; 08-15-2023 at 02:07 PM..
Reply With Quote
  #520  
Old 08-15-2023, 02:04 PM
Lune Lune is offline
Planar Protector

Lune's Avatar

Join Date: Mar 2013
Posts: 3,250
Default

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
Based on my calculations using P99 data, it does use the EQEMU source code for damage calculations. Do you think it is a coincidence that plugging in the numbers gives me a 260 max damage estimate, and I hit for 258 max?

Remember that the EQEMU code gets updated by the same people who work on P99. It is possible they uploaded some of the P99 damage code back into EQEMU after those posts were made. You are looking at patch notes from 2011, a lot has changed since then.
Again, that is your max hit, that is not your damage over the course of a fight. Max hit is just a small part of the big picture. I just posted a literal quote from Kanras himself saying the P99 backend was modified, so we fundamentally know it doesn't use the same formula as EQEMU.

You are conflating max hit and damage table hit calculation values. Of course you are going to get a bunch of max hits on a green turtle. That parse is pretty much only useful for showing max hits, which is something you can already just calculate with a much simpler formula. This is just a part of total damage. Nevermind the fact that all of this is pointless as your own numbers are showing the superiority of STR, a conclusion you are simply unwilling to accept. A difference in DPS or max hit of 8% at 60 and 4% before 60 is enormous.

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
Remember that the EQEMU code gets updated by the same people who work on P99. It is probable they uploaded the P99 damage code back into EQEMU after those posts were made. You are looking at patch notes from 2011, a lot has changed since then.

This honestly makes sense. From a code perspective it is better to keep EQEMU as close to P99 as possible, to reduce the amount of work it takes to keep two code bases up to date and bug free. Most of P99's magic comes from the database anyway, which they will never share.
P99 is not open source like that. So you are basing your calculation on the assumption that EQEMU (which is predominantly non-classic client servers that live in Luclin/PoP and beyond), somehow obtained P99's damage calculations, and used that? Wow, man. We simply do not know the P99 backend, afaik. Maybe you can be better than me at finding it.

That is not a valid assumption.
Last edited by Lune; 08-15-2023 at 02:10 PM..
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 04:27 PM.


Everquest is a registered trademark of Daybreak Game Company LLC.
Project 1999 is not associated or affiliated in any way with Daybreak Game Company LLC.
Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.