Today I started working on a formula that would rank dragons according to value or rarity. That way it would be a bit easier to compare two dragons or a list of dragons to get ballpark prices for them. The formula as it stands now is : =(((Hit Points-800)*3)+((STR-796)*2)+((DEX-86)*2)+(INT-436))/2 *I'm aware that attempting to quantify the subjective is inherently imprecise. For quick reference the stats are weighted as follows: HP @ 3x STR @ 2x DEX @ 2x INT @ 1x The highest possible value is 105, which is an extremely rare perfect stats dragon. The lowest possible value is 0, which is an extremely rare perfectly trash dragon. For shits I put some of the dragons I own through the formula. I'm interested in hearing what you guys think or if you think I'm balancing the stats poorly.
I'd remove Dex under 100. It raises too fast to matter for sales pricing and weight it higher. (105-100)*6 I'd also put in a minimum tiers for the others. 796-810 STR would get like 2x, above 3x. HP fire damage runs in blocks of 20, so I'd put that in as that's all that really matters.
I reworked the formula and it's a bit more complicated now. Someone who's good at math could probably get it into a single logic statement, I had to break it out into multiple parts. HITS are weighted at 3x with the following formula: =IF(HITS=825,6,IF(HITS>=820,4,IF(HITS>=800,2,IF(HITS<800,0,0))))*15 - Min:Max = 0:90 - Bonus added for maximum value(825) STR is weighted at 2x with the following formula: =roundup(((STR3-796)*2.05),0) - Values are rounded up to whole numbers - Min:Max = 0:60 - No bonus at max value DEX is weighted at 2x with the following formula: =IF(DEX<100,0,IF(DEX>=100,((DEX-100)*12))) - No value is given to DEX less than or equal to 100. - Min:Max = 0:60 - No bonus at max value INT is weighted at 1x with the following formula: =roundup((E2-436)*0.75,0) - Min:Max = 0:30 - No bonus at max value Final Value = sum($HITS_value+$STR_value+$DEX_value+$INT_value:J2)) -Min:Max = 0:240 Here's an example of what different values work out to: Any feedback is appreciated! PS, I blow at math so if anyone who's good at math wants to pitch in, you're more than welcome to PSS, I'd like to add another column that works out rough starting bids. It would value good dragons highly and shit dragons horribly.
A while ago I had a post where I tried to lay out what the incremental damage was for gaining STR versus DEX. It's probably still useful in comparing them to each other. HP and INT are a bit more complicated... I agree with the firebreath tiers being most important. INT isn't useful if you make your gold farming for 6 hours at a time, but for the Mask of the Wilds, an extra Ebolt from having 20 extra mana can help bump you up a peg on the damagers list.
I like one of each per tamer it makes it easier to pull and sort life bars. GJ on this btw. there was a thread a long time ago where two ppl were breakingdown the math on what stats are more important. i think it was Gidion and someone els. Cant seem to find it atm
You should take int out completely. The difference between 430 and 470 is not even one flamestrike. Its truly an inconsequential number.
I am not sure if I understand the formulas, but on a dragon 820hp should be valued the same as 824hp imo. Only reason 825 could be worth more is bragging rights. So when searching dragons out i value str and dex balance the most while putting hp in its own levels. HP of 800 to 819 is the same on the field til it gets hit but I want 820hp if I can. If 820 is met then I don't value hp anymore after that. Unless of course it's for a near perfect percentage and just paying for bragging rights. I am not sure if your formula would value a 825hp 823 103 dragon above a 820 824 104 dragon. If it doesn't favor the second one above the first I'd tweak the scale a bit Edit, there are certainly times when 809 and 810hp is worth more than 800 as the dragon blesses himself at 90 or 100 magery he can be mini healed after and enter max fire breath til he is hit, while you cant do the same at 808hp
I thought strength is what determines fireball. if that's true, then how is 820 hp different than 819?
There should be no difference in value between a dragon with 820 HP, and one with 825 HP. Dragon breath value is calculated as Code: Hits * BreathDamageScalar If this was AOS, the BreathDamageScalar would be 0.16, but since it's not, BreathDamageScalar is 0.05. Code: public virtual double BreathDamageScalar{ get{ return (Core.AOS ? 0.16 : 0.05); } } So, a dragon with 820 HP will do 41 damage, one with 825 HP will do 41.25 damage. But folks will pay so much more for a 825 HP dragon.
Fire breath is 1 damage per 20 active health. A 800hp dragon at full life will deal 40hp fire breath. A dragon with 825hp at full life will deal 41. A 825hp dragon that damaged and only has 520 health will deal 26hp fire breath.
If this is correct, then 819 hits does 40.95 damage and 820 hits does 41. But somebody said these are only accumulated every 20 points. So if that's true, then 825 would do 41 points, 819 would do 40.
Unless I'm reading the RunUO code wrong, that is how fire breath is calculated. Of course, if it's been modified by the UOR admin to be calculated differently, I would have no idea. https://github.com/runuo/runuo/blob...25ffb277/Scripts/Mobiles/BaseCreature.cs#L625 Code: // Base damage given is: CurrentHitPoints * BreathDamageScalar public virtual double BreathDamageScalar{ get{ return (Core.AOS ? 0.16 : 0.05); } } https://github.com/runuo/runuo/blob...25ffb277/Scripts/Mobiles/BaseCreature.cs#L768 Code: public virtual int BreathComputeDamage() { int damage = (int)(Hits * BreathDamageScalar); if ( IsParagon ) damage = (int)(damage / Paragon.HitsBuff); if ( damage > 200 ) damage = 200; return damage; } And, of course, the Dragon inherits the BaseCreature class and doesn't override any of these.
You are right, nothing is rounded because its using an int (vs. a double for example). Anything pass the decimal is simply dropped. A dragon with STR of 800 does the same breath damage as a dragon with 819. A dragon with 820 does the same as 825.
I added some additional calculations to include bonuses for max stats and a suggested starting bid price. The calculation is essentially the same except for: - Max stat bonus multiplier added -- Max Hits bonus moved to this column. -- Suggested starting bid price added (I'm not going to add a suggested buyout) Here's a link to the current spreadshseet. It's set to read only so you'll have to copy it out to your own spreadsheet: https://docs.google.com/spreadsheets/d/1OcbfYfRusqb-QsXkHIY5bzNadbIWtWUnGCJ2ikRg9oA/edit?usp=sharing ** There are hidden columns, to adjust the math to your preference, unhide those columns. Sample:
As I said above, it is quite consequential, particularly when bosses log damage and award to the top N damagers. And there is a difference between 820 and 825 HP, not just in survivability but in damage output too. An 825 HP dragon that's lost 5 HP will still firebreath for 41. An 824 HP dragon that has lost 5 HP will firebreath for a paltry 40. Of course it's such a minor difference as to not be worth quibbling that much about, but it IS a difference and this whole thread is an effort in vanity and minutiae. So may as well include it!