Joined: Mon Jun 09, 2014 3:47 pm
Thanks to over 66,000 samples gathered over the last few weeks, I plan on lifting the veil and helping players with their gearing decisions all while helping the staff (both builders and immortals) create revised guidelines for gear creation.
‘Thank you’s related to this project go out to Kiirion for his use of test port, Kesavaram for his detailed chats about code and Aisling for her help with the various charts, statistical analysis and editing my frightening train of thought in this project.
Part 1 - Background
When asked to test the system, I was asked to test a Melee/Hybrid/Caster (M/H/C going forward) attacker vs a M/H/C victim of the same basic race (kine) and level. Blind also seemed like the simplest mala to work with because it has a simple check against saves, so I used that exclusively. Kiirion also defined the ‘optimal’ save rates as he had heard them before for use in initial testing:
-40 for Melee
-50 for Casters
-Something in between for Hybrids, based off of mana gains (I went
with -45 for testing purposes)
To start the project, I was going to take the M/H/C ‘optimal’ rates as a baseline to compare all other samples to. I then wanted to check higher values of saves that are attainable with current equipment (-70) and an unrealistically high value to establish an upper limit (-100). I will also look at how cursing affects the success rate of landing blind by having a group with +6 saves for each of the optimal save values for M/H/C. To establish how saves behave below the optimal numbers, I ran tests at -25, -15 and 0 for each class as well.
I used a minimum of 1000 attempts to cast blind per trial in order to try and work some random number generation (RNG) variance out of the data. I tracked each and every attempt via my custom script, restored the combatants every 60 seconds and would astrip (0 lag staff command) off a successful blind before it was ever cast again so there was never any overlap - only a brand new success or fail.
Part 2 - Code Conversations
I spoke with Kes about two thirds of the way through the process and he provided several pieces of pivotal information that had me reconsider parts of the process going forward.
1) There is a hard coded upper and lower save percentage limit. The maximum chance to save vs a spell is 90% while the minimum amount is 5%. Some of my samples may show variances to those numbers by +/- 2% or 2.5% due to sample size. ]
2) Level vs Level matters in almost all spell casting. However the biggest caveat to this entire thought process is the realization that all melee classes cast offensive magics at level 48, not level 50. Self cast spells still count for level 50. This may account for SOME of the variances in the landing rates when testing a warrior.
3) Hybrid classes do not exist anywhere in the saves code. I wish I had known this earlier in the process as I wouldn't have spent the time collecting the data. I have included it where I have it and excluded it from the remaining trials I had to run from that point forward (it will be quite clear when you see the data sets).
4) Manually changing / setting classes doesn't make any part of the pfile work in a funny way in relations to this set of testing. This was entirely my concern in order to help validate data integrity and shouldn't be anything your average reader will need to worry about.
Part 3 - Summary of Findings
Having learned a bit from my entangle write up, I’m going to give you the end results of everything first THEN overload you with all the write ups of the gritty details.
All of the followings listed in the Gory Details have been summed up nicely by Aisling into a single chart. Casters, as it turns out, have a true optimal save rate closer to -45 than -50 (there was no significant increase in the blind land rate until the first curse trial around -39 saves). The sum total of the data does show that casters do have a SLIGHTLY higher success rate in casting maledictions against a similar target than melee attackers (which falls in line with code point #2). Once you reach the optimal amount save wise, the rate flatlines excluding minor insignificant variations.
TL;DR: Casters should be at -45 saves minimum and up to -51 via spells / additional gearing in order to protect against the large downside of curse.
The Melee testing did not reveal anything new (unlike the caster trials which showed their save rate was lower than anticipated overall) and only revealed that like casters, once you arrive at your optimal save amount there is literally nothing to be gained outside of a defensive curse buffer to your saves.
TL;DR: Melee should be at -40 saves minimum and up to -46 via spells / additional gearing in order to protect against the curse downside. Past that, saves are unnecessary in any greater amount, period.
Anything you would think of as a Hybrid class behaves as either a Melee or a Caster depending on the class itself. I am still waiting on Kiirion to provide a firm code based list of what classes are counted as what inside the code (per this thread.
Part 4 - The Gory Details (Trial Information)
Trial #1: ‘Optimal’ Saves
I have made the optimal saves for each group (melee at -40 and caster at -50) into the benchmark against which we will compare the other data.
Based on the results shown above, we can see that the optimal amount of saves appear to work very well, especially when compared to the stated code constraint (#1 - 90% is the maximum save rate). The initial data seems to indicate that you should be pretty well set with JUST the optimal amount, and that even the term ‘optimal’ has been a true, yet unsupported statement until this point in time.
Trial #2 and #3: -70 Saves and -100 saves
Moving the save value out from it’s optimal amount to -70 and then -100 across all class types did not significantly affect the success rate of landing blind. Most of the rates are within +2.5% or -1.5% of the 10% hard cap for a minimum hit rate. The +2.5% or -1.5% variances are mostly a mix between sample size and RNG.
Trial #4: Cursed (+6 Saves from optimal) and an anomaly
This trial is one of the most important trials because it showed me a mistake in our assumptions of optimal saves for casters as well as what the actual optimal save value was for casters (see code issue #3) all while giving a series of real world data on “This is why bad things start to happen to you while cursed.”
The +6 drop in your save value while cursed ends up being fairly significant. The Hit rate percentage for blind jumps from around 10% up to between 19% to 24%, signifying a jump in the rate somewhere 90% and 140%. This explains in full why your fights get so much harder WHILE you can’t portal away from it.
In addition, per the data table you can see that the Caster victim @ -44hit by blind at about the same rate as if not cursed. This section of the data helped guide my question to Kes, and we had determined that both Hybrids didn’t exist in the code AND that the caster optimal save amount was closer to -45 than -50. Luckily, because I was still keeping track of Hybrid data through this point, there is still an accurate representation of a cursed casters data included.
Due to the drastic increase in the land rates of maledictions against a cursed victim, I fully recommend overcapping yourself by going -6 saves higher (lower?) than your class calls for to protect yourself against curse. If you do it via spells, be careful on the drastic swings in your protection level that becomes dependent on keeping spells up.
Trials #5-8: The Undercapped Curve
These trials (that now EXCLUDE Hybrid data) are all part of a gradual set to establish what sort of a rate that a malediction will land with versus a worse and worse save rate. It’s a pretty linear rate of decline. The further under your optimal rate you are, the worse your life will become - get to -40 or -45 at a minimum and make your life better.
Trial #9 - 0 Saves (why would you do this to yourself?!)
At 0 saves we run into the other side of the saves code: your hit rate can go no higher than 95%. There are slight variances due to the same sample size issues that have cropped up all over the place, but I hope no one would try and function at this level of saves at level 50. There’s just no reason.