Difference between revisions of "User talk:Onderduiker"
Onderduiker (talk | contribs) (→Skill formulae: Reply) |
(dm formula) |
||
Line 64: | Line 64: | ||
: This is accurate for Diablo II and Lord of Destruction: its results match game values up to level 60, when maximum value b is reached (remains the same up to level 99). | : This is accurate for Diablo II and Lord of Destruction: its results match game values up to level 60, when maximum value b is reached (remains the same up to level 99). | ||
+ | |||
+ | :: Are you sure about such high levels? For example, [[Clay Golem]] slow formula, <code>dm</code> with params 0 and 75, if we removed the <code>min</code> part, reaches the value of 76 at slvl 76. And even earlier, at slvl 71, if we stick to the formula from <code>skilldesc.txt</code>, with only one floor division by <code>(100 * (lvl + 6)</code> (full formula: <code>a + ROUNDDOWN(((b - a) * (110 * slvl)) / (100 * (slvl + 6)); 0)</code>). [[User:Trang Oul|Trang Oul]] ([[User talk:Trang Oul|talk]]) 01:56, 9 July 2024 (EDT) | ||
: Since I don't have Diablo II: Resurrected, for Impale and [[Throwing Mastery]] I entered a and b values until the results for levels 1-20 matched those from Fandom's [https://diablo.fandom.com/wiki/Impale_(Diablo_II) Impale (Diablo II)] and [https://diablo.fandom.com/wiki/Throwing_Mastery Throwing Mastery] pages (I expect those values were taken from the game rather than calculated): for Impale's attack rate and movement speed, these were a = 0 and b = 75 (for Throwing Mastery, a = 0 and b = 55 for chance to pierce, and a = 0 and b = 66 for chance not to consume quantity). | : Since I don't have Diablo II: Resurrected, for Impale and [[Throwing Mastery]] I entered a and b values until the results for levels 1-20 matched those from Fandom's [https://diablo.fandom.com/wiki/Impale_(Diablo_II) Impale (Diablo II)] and [https://diablo.fandom.com/wiki/Throwing_Mastery Throwing Mastery] pages (I expect those values were taken from the game rather than calculated): for Impale's attack rate and movement speed, these were a = 0 and b = 75 (for Throwing Mastery, a = 0 and b = 55 for chance to pierce, and a = 0 and b = 66 for chance not to consume quantity). |
Revision as of 00:56, 9 July 2024
Hiya Onderduiker!
I noticed that you reverted a few of my pages that I had deleted. I had deleted them at the time due to being somewhat unwelcome in the Basin, regarding that most basiners would rather do without my help or assistance in anything. That was not actually a vandalism, but if you feel that the pages were wanted, then do please keep them. It would probably do a lot for my self-esteem if someone finds the pages useful and enjoys them. Thanks for taking the time and effort in saving the work done here ... I greatly appreciate the things you do to keep this wiki going. Skie of Marduke 22:31, 27 July 2011 (UTC)
- I think you're giving me too much credit: a few months ago I went through our Wiki just adding category tags to all content pages (including yours) so that it would be clear(er) to which game they belonged, but I don't remember reverting any blanked or deleted pages. As far as I know, your only potentially controversial contributions are your CD_Rom emulation guide and A Guide to Rushing, both of which I've seen linked for as long as I can remember (although I may have moved around those links over the years: just a few days ago I moved the link to the guide to rushing from the Basic to the new Hardcore page).
- Thanks for your contributions to our Wiki: you don't always get the same feedback you do from our forums, but judging by the number of views your guides must have been appreciated (certainly, no one has taken enough offence to remove internal links to them, let alone blank or delete the pages themselves). Onderduiker 07:04, 28 July 2011 (UTC)
- I was, of course, referring to the Guildwars guide pages... I had never removed the D2 guides. I do think, though, that I should convert my Diablo Clone guide to wiki markup and put it in here... but I basically stopped playing Guildwars a long while ago. I have no idea how to even check how often a page gets viewed in here, lol! Skie of Marduke 09:22, 28 July 2011 (UTC)
- Ah, I see: I don't play Guild Wars so I don't visit those forums or Wiki pages (except to add category tags), so I was unaware of any controversy or friction there. However, looking at the revision history of A Guide to Bows and Modifiers and A Guide to Combat in Guild Wars, I notice that you first blanked the pages and then reverted those yourself (my recent edits were simply to add them to the Guild Wars category).
- If you decide to add your Diablo Clone guide to our Wiki, you can add a link to it to the World Event and Diablo (World Event) pages (or add the information directly to those pages if you prefer: I won't get around to adding any information myself until late this year or early next year).
- There's a bar at the bottom of each page which tells you when it was last modified and how many times it's been accessed/viewed (easy to overlook on long pages unless you scroll right down to the bottom).
- I noticed you blanked some pages added by vandals, but this isn't necessary: I regularly check recent changes and as an administrator I can delete those pages entirely and block the users (now that I've categorised all legitimate pages, I can use Special:UncategorizedPages to double-check in case I miss any). Unfortunately the vandalism is most likely the product of bots rather than actual people, but I can deal with it quite quickly and easily as long as I don't let it build up (a minute or two a day is no problem, 15-20 minutes once a week would be tedious). Onderduiker
Just a quick thanks for the formatting help on the D3 pages. I did look at the tables you had set up before, but didn't know how to make that formatting work with the spreadsheet that I was using for the skills info. Much thanks for the formatting and standardizing help! Martini
- No problem: although I don't plan to add any content to our Diablo III section, I'm likely to chip in with formatting, navigation and categorisation. Let me know if you ever need any help. Onderduiker 09:35, 9 April 2012 (PDT)
PM waiting
Hi :) I sent you a pm on D2 boards, could you check it out? --Antitrust 15:03, 29 September 2012 (PDT)
Worked
Thanks. Naturelover (talk) 20:12, 30 September 2021 (UTC)
Spear Mastery and Polearm Mastery
Apparently you've found a bug in 2.4 patch notes! They say:
- Increased base attack rating bonus to 40% (from 28%)
, which was not true in LoD. The intern working there apparently copypasted other Masteries' changes... Good catch, thanks!
- No problem! Not sure why Sword, Axe and Mace Mastery start at +28% Attack Rating but Polearm, Throwing and Spear Mastery start at +30%... or why it was thought necessary to increase that to +40% (+10-12% is barely anything).
- Incidentally, you can sign comments on talk pages by adding ~~~ (Onderduiker (talk)), and timestamp them as well by adding ~~~~. Onderduiker (talk) 15:27, 27 June 2024 (EDT)
- Maybe that dfference was originally meant to distinguish the "advanced"/"higher tier" masteries from "basic" ones? Or to promote the use of such weapons, since they have always been niche? Assuming those 2 percentage points would make any difference...
And yeah, I forgot to sign earlier. :( Trang Oul (talk) 15:55, 27 June 2024 (EDT)
Skill formulae
Hey Onderduiker!
I've seen you added formulae to Impale. Where did you find the formula?
The actual formula does not have a limit, it's simply 50 - ((110 * lvl) * (30 - 0)) / (100 * (lvl + 6))
. The limit exists, at lvl=∞ it is 17, but it's not explicitly defined in the formula.
The second thing, more important, is whether we want to use "original" formulae (in case of Impale as above) or simplified ("simplified" = tidied up, not less accurate; in this case (17*lvl + 300)/(lvl + 6)
?
I wanted to update all skills to D2R and wrote a util to simplify that. It can be found here.
Trang Oul (talk) 07:22, 3 July 2024 (EDT)
- It's been over a decade, but I have something like the following diminishing returns formula entered in a spreadsheet:
dm(a,b) = MIN (a + ROUNDDOWN( (b - a) * ROUNDDOWN( (110 * slvl) / (slvl + 6) ) / 100) ; b)
- This is accurate for Diablo II and Lord of Destruction: its results match game values up to level 60, when maximum value b is reached (remains the same up to level 99).
- Are you sure about such high levels? For example, Clay Golem slow formula,
dm
with params 0 and 75, if we removed themin
part, reaches the value of 76 at slvl 76. And even earlier, at slvl 71, if we stick to the formula fromskilldesc.txt
, with only one floor division by(100 * (lvl + 6)
(full formula:a + ROUNDDOWN(((b - a) * (110 * slvl)) / (100 * (slvl + 6)); 0)
). Trang Oul (talk) 01:56, 9 July 2024 (EDT)
- Are you sure about such high levels? For example, Clay Golem slow formula,
- Since I don't have Diablo II: Resurrected, for Impale and Throwing Mastery I entered a and b values until the results for levels 1-20 matched those from Fandom's Impale (Diablo II) and Throwing Mastery pages (I expect those values were taken from the game rather than calculated): for Impale's attack rate and movement speed, these were a = 0 and b = 75 (for Throwing Mastery, a = 0 and b = 55 for chance to pierce, and a = 0 and b = 66 for chance not to consume quantity).
- I was confused by your Impale formula until I realised it was for its durability loss, which was already there. According to Skills.txt,
dur loss chance = par6-dm34
, where Param6 = 50, Param3 = 0 and Param4 = 30, so:
dur loss chance = 50 - dm(0,30) = 50 - MIN (0 + ROUNDDOWN( (30 - 0) * ROUNDDOWN( (110 * slvl) / (slvl + 6) ) / 100 ) ; 30)
- In our wiki I use square brackets to indicate rounding down, and thought it might be more intuitive to express it so that minimum chance (level 60 onward) was clearer:
max(50 - [30 * [ (110 * slvl) / (slvl + 6) ] / 100] , 20)
- If your formula is derived from SkillCalc.txt (
dm12 = ((110*lvl) * (b-a))/(100 * (lvl+6)) + a
) then you should know that file is a simplified reference for humans rather than exactly what is used by the game (for example, look atln12 = a+lvl*b
): if you check the results against actual game values, some (even most) may match but you should also see some discrepancies due to rounding errors, and there is very definitely a limit at level 60.
- I'm all for making things as simple as they can be without compromising accuracy, but it may also be useful for someone to be able to recognise the parameter values when they look at a formula. Onderduiker (talk) 13:22, 3 July 2024 (EDT)
- Oh, I always thought that square brackets are just another level, not to confuse too many round brackets (as I was taught in school:
{[3 × (2 + 5)] - 4} / 2
). I know that square brackets are also used to denote the integer part, but it's not very common (I'd say less common that floor ⌊x⌋ and ceiling ⌈x⌉). Good to know that you've covered the fact that D2 operates on integers rather than leaving it implicitly. This is very important when converting frames to seconds: one has to round down to integers BEFORE dividing by 25; otherwise one'd get inflated values. - If you want to make parameters recognisable, maybe we should list both the original parametrized formula (with parameters as symbols, and their values separately) and a substituted one (with numbers instead of symbols, and optionally simplified)? If the formula is, say,
((110 * lvl) * 40) / (100 * (lvl + 6)) + 30
, how could I know that the params are 30 and 40, and 100 and 110 are hardcoded? Oh, actually the second param is 70, not 30. I wouldn't know anything of that, hadn't I looked in the data files to see the full, unparametrized formula. - If the formulae from skillcalc.txt are just simplified, is there any source of exact formulae? Other than deriving by experimenting with values, as this is tedious and you can never be sure if such derived formula is exact or just correct for some of the values.
- Trang Oul (talk) 16:03, 3 July 2024 (EDT)
- Oh, I always thought that square brackets are just another level, not to confuse too many round brackets (as I was taught in school:
- If floor ⌊x⌋ and ceiling ⌈x⌉ are more common, feel free to use them instead of square brackets. So the common diminishing returns formula could be expressed as follows:
dm12 = min (a + ⌊ (b - a) * ⌊ (110 * slvl) / (slvl + 6) ⌋ / 100 ⌋ ; b)
- Parameters don't need to be recognisable to everyone, just to those like us who are familiar with the formulae so it's easier to check. When you changed the Blaze formula to
(109*slvl + 60)/(5*slvl + 30)
, I recognised it as still being a dm formula (auralencalc: dm12 in Skills.txt) but I didn't see Param1 (50) or Param2 (500) anywhere, and wondered whether this had been changed in D2R: I did see the parameters in the previous formulamin( (50 + [450 * [ (110*slvl) / (slvl+6) ] / 100] ) / 25 , 20)
(50, 50+450 or 20*25 = 500), although that would have been even clearer if expressed asmin( (50 + [450 * [ (110*slvl) / (slvl+6) ] / 100] ) , 500) / 25
.
- Parameters don't need to be recognisable to everyone, just to those like us who are familiar with the formulae so it's easier to check. When you changed the Blaze formula to
- It's been over a decade since I did most work on this wiki, on a game released over a decade earlier. I don't remember ever finding a compendium for all formulae used, but the Phrozen Keep's Knowledge Base is a good place to look (Skills.txt being the most pertinent), and there should be more detail for specific skill mechanics and calculations in our wiki's Reference section links. I don't remember the origin of my dm formula, but I do remember checking it against game values for some skills (Lower Resist, for example) up to level 60 (and at level 99 using Hero Editor) and not finding any discrepancies. Most other formulae are linear in some way, much more straightforward. Onderduiker (talk) 03:53, 4 July 2024 (EDT)
⌊x⌋
and⌈x⌉
are more intuitive (because of their shapes), but⌊x⌋
is not the same asint(x)
. It is for positive values, but not for negative ones. For example⌊-2.3⌋ = -3
, butint(-2.3) = -2
. Since params and values can be negative (for example Jab damage at low levels), I'd avoid using the floor notation, unless the game actually performs such an operation.- Feel free to revert my edits if you find them making the formulae less legible. Sorry for any inconvenience. :( Trang Oul (talk) 08:10, 4 July 2024 (EDT)
- I've filtered the Param columns of Skills.txt for negative values, and it doesn't look like any of them are subject to truncation (Jab dmg% = ln34). Some skills like Holy Freeze use -dm (-dm34 for velocitypercent, attackrate and other_animrate), so the calculation uses non-negative parameters (Param3 = 25 and Param4 = 60) before the outcome is turned negative.
- I've rolled back your edits to the Blaze page, then edited to make some minor changes, including clarifying the duration formula and removing any mention of bit rate or bit damage (not sure where those terms came from, but it's probably better to express it as 1/256 damage (per frame) for Open Wounds and cold, fire and poison damage per second). Onderduiker (talk) 07:36, 7 July 2024 (EDT)