Thanks, Veto.
|
Trying to figure out how to make this previous equation that we've proved out to work with regular PC attacks on NPCs and PCs is proving to be more complex than I thought. Here is what I've discovered so far:
1hs damage bonus: TRUNCATE(( Level-25 )/3) Already solved in code, presumably by Kaiyodo! Thanks for making this easy! I've verified it on MANY websites, with lots of empirical data giving credit to this equation. This part is right! YAY! 2hs damage bonus ( if delay <28 ) : 1hs formula + 1!! Believe it or not, it's that easy! If you check http://lucy.fnord.net/dmgbonus.html?setcookie=1 , you will see that this is correct. You may wonder why there is a condition here! Well, I think I figured it out. The numbers actually formed a pattern, which I found a bit weird. If you flip the table on its side and look for, say 4, you'll see that the side beyond 27 delay forms a bell curve. If you made that bell curve extend to the left, your less-delayed weapons would have big damage bonuses. They cut the curve in half and only applied it to the delays I haven't figured out how to normalize the equation, but I pulled out my stats book to find out how to extend and shrink bell curves. More will be posted as I figure it out. |
I believe I have 2h damage for level 28 (yeah, it's not much), and there is an equation for it so far. More to come as I resolve it:
Assuming level 28, beyond delay 42... TRUNCATE((DELAY - 30) / 3) EDIT: Equations on Monkly business dispute this equation. I guess I'll go with Monkly. The bonus damage minimum is 1, so we round that up. That gives us a base damage. Now if I can just figure out how that damn level figures into the equation... |
Great news, so you are solving for delay > 27 only, since it's different at <=27?
|
You can find some nice info about damage calculations and modals here..
http://www.monkly-business.com/artic...?ArticleNum=66 |
This absolutely contradicts what I found on Lucy! :( I apply the monkly equations to Lucy data, and they don't match at all.
I would be satisfied with the data that currently exists on monkly business. I think that model is a more fair representation of the melee classes anyway. The following equations are offered for weapon damage bonus: 1 handed weapons, including fists, and will include bash and kick, if I am correct: TRUNCATE((LEVEL-25)/3) 2 handed weapons: You will notice that many of these equations are modifications of the one-handed weapon equation, and equations listed below. LIGHT WEAPONS - Weapons with delays less than 28 1 + TRUNCATE((LEVEL-25)/3) shorthand: 1hb equation + 1 MEDIUM WEAPONS - Weapons with delays between and including 28 and 39 TRUNCATE((LEVEL-25)/3) + (LEVEL-27)/4) shorthand: Light weapons equation - 1 + TRUNCATE((LEVEL-27)/4) SLOW WEAPONS - Weapons with delays between and including 40 and 42 TRUNCATE((LEVEL-25)/3) + (LEVEL-27)/4) + 1) - shorthand: Medium weapons equation + 1 VERY SLOW WEAPONS - Weapons with delays greater than 42 TRUNCATE((LEVEL-25)/3) + (LEVEL-27)/4) + (DELAY-34)/3) + 1) - shorthand: Slow weapons equation + TRUNCATE((DELAY-34)/3) I think these are probably the real values. If they aren't, the equations are so easy compared to the difficult ones, that we should probably follow these instead. I trust Lucy, but I also trust monkly. Let's go with the one that we can do. More to come. |
GN, are the values from Lucy and Monklybusiness WAY off or just don't quite jive (possible rounding errors, etc.)?
Next: I assume that next we take the level/delay DB and add the actual weapon DB to arrive at a final DB? Follow on: Okay, I just plugged this into Excel to compare against a known value. 60sk/255str/~1250atk/Rocksmasher(41/47 DB=31) and got a weird number. TRUNCATE((LEVEL-25)/3) + (LEVEL-27)/4) + 1) TRUNCATE(((60-25)/3)+((60-27)/4)+1)=20 (20.92) Now we take that and I assume add the weapon DB of 31 to arrive at 51. Now on the the next part (assuming a 100ac target and DI = delay of weapon (41)) DB + (1-AC/ATK) * 20 * DI 51+(1-100/1250) * 20 * 41 = 805.4 Thats very high, so I messed with AC of target to solve to the known value of 302 max hit with that combo and end up with a minimum AC of 867 or it may be that the ac/attack ratio cannot go below 0.3....or it could be that I'm broken in about 100 other ways :) STR comes to mind, but it's partially in there since any increase in STR has a direct corelation to increase in ATTK (1 to 1). Now I'm guessing at the DI value being weapon delay, it might be something else entirely. I don't think it can be the effective delay of attack since that would mean that a hasted (hence lower DI) attacker would hit for less than a unhasted one; which isn't the case. -- VetoEQ |
DI value for weapons hasn't been posted yet. I have found it, but it's not up there. Your initial Damage bonus value looked correct.
|
Quote:
So, to calculate DI: First we find maxdamage: maxdamage= ((STR + SKILL + LEVEL)/100)*weapondmg + DB DI = (maxdamage - DB)/20 Using algebra, we solve equation 2 for maxdamage so that we can have two equations that equal maxdamage. We use substitution to figure out PC DI. DI = (maxdamage - DB)/20 20DI = maxdamage - DB maxdamage = 20DI + DB and maxdamage = ((STR + SKILL + LEVEL)/100)*weapondmg + DB Substitute one equation for maxdamage, because both equations equal the same thing. 20DI + DB = ((STR + SKILL + LEVEL)/100)*weapondmg + DB 20DI = ((STR + SKILL + LEVEL)/100) * weapondmg // (+ DB - DB) cancels out so DI = ((STR + SKILL + LEVEL)/100) * weapondmg / 20 And finally!! DI = ((STR+SKILL+LEVEL)*weapondmg) / 2000 We plug this in for vetoeq's example: Let's assume maximum level, effective STR, and skill so that we find maximum damage. (okay, strength is WAY high, but I'll explain) For every 20 strength, you get another .01 * damage per DI in this example. That comes out to an overall addition of .2 * damage for 20 strength to the final equation, or .01 * damage per strength addition. I'm wondering if maybe we shouldn't cap strength. DI = ((310 + 250 + 65)*41) / 2000 = 12.813 (maxdamage = 307.25) (damage bonus of 51) DI = ((290 + 250 + 65)*41) / 2000 = 12.403 (maxdamage = 299.05) (damage bonus remains the same) DI = ((270 + 250 + 65)*41) / 2000 = 11.993 (maxdamage = 290.85) DI = ((250 + 250 + 65)*41) / 2000 = 11.583 (maxdamage = 282.65) Let's assume a level 50 has several str, and several skill levels, with your rocksmasher. DI = ((200 + 200 + 50)*41) / 2000 = 10.25 (maxdamage = 224.42) (damage bonus of 19.417) DI = ((100 + 200 + 50)*41) / 2000 = 7.175 (maxdamage = 162.92) (damage bonus is same) DI = ((80 + 200 + 50)*41) / 2000 = 6.765 (maxdamage = 154.72) DI = ((250 + 15 + 50)*41) / 2000 = 1.435 (maxdamage = 52.217) (damage bonus at level 50 with this weapon remains the same) This is with 15 skill. Okay, so rocksmasher works. Let's take a peak at a 1hb monk weapon. Posting to ensure my research doesn't get lost :P Will update. |
Let's take a look at the poor wittle n00bs!
Using the same formulae for low levels and high levels gives us this: Level 1!! YAYYYY!! We'll go through a 2 damage weapon (intense!!) with wuuuuussssy characters, and work our way up to the big Ogre Manmammoths DB = 0 (they're noobs!!) Assuming there are circumstances where newbies have badass + damage bonus weapons, we can either cap their damage bonus or their overall damage. It would be smarter to cap their damage bonuses at (level-14)/4 or something like that. We will cap their overall damage at some point anyway. Try to read the strength first, skill second, level third, and weapondamage as the multiplier Okay, back to our DI equations: DI = ((STR+SKILL+LEVEL)*weapondmg) / 2000 Level 1 and 2 WEAK casters DI = ((65 + 0 + 1)*2 / 2000 = .066 ( maxdamage = 1.32 ) DI = ((65 + 0 + 1)*3 / 2000 = .099 ( maxdamage = 1.98 ) DI = ((65 + 0 + 1)*4 / 2000 = .132 ( maxdamage = 2.64 ) DI = ((65 + 3 + 2)*2 / 2000 = .07 ( maxdamage = 1.4 ) DI = ((65 + 3 + 2)*4 / 2000 = .14 ( maxdamage = 2.8 ) Early level monks DI = ((103 + 0 + 1)*2 / 2000 = .104 ( maxdamage = 2.08 ) DI = ((103 + 20 + 3)*2 / 2000 = .126 ( maxdamage = 2.52 ) (put some sticks in his hands) DI = ((103 + 20 + 3)*6 / 2000 = .378 ( maxdamage = 7.56 ) Early level Ogres DI = ((153 + 0 + 1)*7 / 2000 = .539 ( maxdamage = 10.78 ) Damage caps will exist to limit twinking. We should probably make damage caps a database check. Up to the devs :P |
Okay, I figured out how to get modals to happen the way they should.
Equation for melee combat (so far), modalvalue = round((rand(0,1)*20*(ATK/AC)) if modalvalue < 1, modalvalue = 1 if modalvalue > 20, modalvalue = 20 DB + DI * modalvalue That should give damage values along the modals, with peaks at (1-AC/ATK)*20. and minimum or maximum. I haven't tested these yet. I'll bring this all together into a sleek piece of logic that shouldn't be too hard to interpret into code by any programmer. |
http://pub14.ezboard.com/fthesteelwa...cID=3094.topic
Quote:
Anyway, more to come. There is a lot of data on that link that I will continue to dissect. |
AGI/Defense, and other natural defenses should allow someone to evade attack. I hypothesize that I should be able to create an avoidance AC that gets added to mitigation AC to create total AC. Mitigation AC would decrease damage on one scale, while avoidance AC would decrease enemy accuracy on another scale. Has anyone heard this theory before, or can anyone offer me a link or raw data that may or may not support my theory?
Anyone can contribute any data, and it will be more helpful than what I know now. |
Players don't get a damage bonus on weapons until a certain level...I think it's 20, it's been a while since I leveled a melee though.
|
Thank you for the contribution, killspree. So, if you have a weapon with stats:
40/54 with a damage bonus of 13 You really just have 40/54 weapon up until 20? |
All times are GMT -4. The time now is 06:49 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.