Project 1999

Go Back   Project 1999 > Class Discussions > Casters

Reply
 
Thread Tools Display Modes
  #21  
Old 04-16-2025, 07:33 AM
Goregasmic Goregasmic is offline
Fire Giant

Goregasmic's Avatar

Join Date: Jan 2024
Posts: 613
Default

Disclaimer: I suck@stats so honest questions here.

Outside of visualization none of those graphs are helpful?

What are we trying to figure out here exactly?

I understand average isn't very relevant, especially in the context of charm where it is a bit all over the place but isn't the probability of charm breaking kinda useless too?

We already know level and MR are the big variables and outside of tash and mob choice you have no control over those two so the only actionable parameter is charisma if it has any impact at all. Just run a low cha and a high cha dataset, compare average time and then calculate the statistical significance of the difference. We've seen with the AC parsing thread that there's a point where AC completely squelches the mob attack and you get no return for going above a certain point. Since cha is the stat that would matter the least, we'd have to run tests with non trivial mobs and probably no tash to make sure the effect of cha isn't buried by a mob that has an already bottomed out charm resistance.

I'm very curious to see if cha is useful for charm but we do know cha has a significant impact on lull and that spell is integral to the chanter life so unless you're grouping all the time you'll want maxed cha no matter what, especially knowing a lull nerf is coming.

The other thing that is a big deal is mob level difference so for this to be useful you'd have to come up with a chart that shows probability by mob level for a level 60 player. That would show us at what point mobs become non-trivial charm targets. As Loraen shows, I suspect around 50-51.

In the end, outside of curiosity, there's no use to knowing if charm has a 95% or 98% chance to break on tick because on the field it will break when it will break and you'll have to deal with it. And it isn't like you have alternative options to compare efficiency against. The only time where breaking probability would be useful is if you could come up with something like "an ilis shaman has a 80% chance to break in the first 10 ticks" which lets you figure out if that's too unruly for you or not but you'd know that with a cursory glance at the dataset.

I'm not dissing any effort at understanding the game here, these are some of the questions I have relating to charm. I'm currently 59 and I planned on running those tests when I hit 60 because I'd also like some answers too.
Last edited by Goregasmic; 04-16-2025 at 07:43 AM..
Reply With Quote
  #22  
Old 04-16-2025, 10:37 AM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 8,054
Default

Quote:
Originally Posted by bcbrown [You must be logged in to view images. Log in or Register.]
You can tell by looking at a graph of a normal distribution or an exponential distribution what better fits your data. A normal distribution looks like the familiar bell curve everyone knows. An exponential distribution has a peak at the minimum value and swoops down in a curve till there's fewer and fewer at higher values. The two graphs are attached. It's clear that when looking at the provided histogram of charm duration, the exponential distribution is a better fit to the data.
All randomized calculations in P99 are dice rolls at their core, which approach a normal (gaussian) distribution via the central limit theorem. It isn't more complicated than that. I know the theory crafting is fun, but you are overcomplicating things.

The reason why you see more successful charms at the beginning (in the first 30 seconds) is because Charm uses CHA for the resist check on the initial cast. So you have a higher chance of success at the start if you have high enough CHA.

Subsequent dice rolls must pass a resistance check threshold. This means the dice rolls you are seeing for charm fails are only a subset of the dice rolls. For example, in the code the resistance roll is a d200. If the resistance check threshold is 40, you are only seeing the dice rolls from 1-40 if you graph charm fails the way OP did. You aren't seeing the dice rolls from 41-200.

Mobs also have variations in their resistance checks based on level difference and MR.

These three reasons are why you don't see a bell curve. We aren't looking at a complete set of dice rolls with no modifications.
Last edited by DeathsSilkyMist; 04-16-2025 at 11:00 AM..
Reply With Quote
  #23  
Old 04-16-2025, 11:40 AM
Tann Tann is offline
Planar Protector

Tann's Avatar

Join Date: Oct 2010
Posts: 1,121
Default

Quote:
Originally Posted by DeathsSilkyMist [You must be logged in to view images. Log in or Register.]
Here is the comment in the EQEMU code for charisma checks on spell resists:

https://github.com/EQEmu/Server/blob...ells.cpp#L5469
the problem with the above is that this was most likely changed after Torven did his research on how charisma works on LIVE servers with the modern client.

The only tidbit of how it was back in classic era on EQlive is from this post on castersrealm,

Quote:
October 8, 1999

CHARISMA - THE NATURE OF CHARM

I checked with GZ this morning regardng the effect Charisma has in charming. The answer is that its effect is twofold.
Firstly it effects the chance at resisting the initial charm cast. Secondly, and more importantly, it makes it harder for the charmed NPC's save to successfully roll. This basically means it does effect duration.

Also charm does have a maximum duration. The higher level charm spell you use the longer the maximum duration can be. So there is a good reason to use that Allure spell even though its more mana.
GZ - Geoffrey Zatkin, original spell designer for EQ and collaborator with the dudes running castersrealm. Also did a nice interview with aLovingRobot and talks about creating enchanters.
__________________
< Knights Who Say Ni >
Qeynos questing and leveling (all quests nerfed) | Off the beaten path 24-40.
Reply With Quote
  #24  
Old 04-16-2025, 12:47 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 8,054
Default

Quote:
Originally Posted by Tann [You must be logged in to view images. Log in or Register.]
the problem with the above is that this was most likely changed after Torven did his research on how charisma works on LIVE servers with the modern client.

The only tidbit of how it was back in classic era on EQlive is from this post on castersrealm,



GZ - Geoffrey Zatkin, original spell designer for EQ and collaborator with the dudes running castersrealm. Also did a nice interview with aLovingRobot and talks about creating enchanters.
The only thing that matters is how it works on P99. P99 uses EQEMU code as the base. From the comment you posted, GZ confirmed CHA is used on the initial resist check. The EQEMU comment says the same. The question is if CHA helps with the future resist checks on tick (charm breaks). OP seems to think CHA does not affect charm breaks based on his data. This would match the EQEMU's implementation and comment if OP is correct.

While I disagree with OP's idea that averages are meaningless in this scenario (they aren't meaningless), that doesn't necessarily mean his findings on whether or not CHA affects charm duration are also incorrect.
Last edited by DeathsSilkyMist; 04-16-2025 at 01:00 PM..
Reply With Quote
  #25  
Old 04-17-2025, 07:13 AM
charleski charleski is offline
Large Bat


Join Date: Feb 2025
Posts: 12
Default

Quote:
Originally Posted by Goregasmic [You must be logged in to view images. Log in or Register.]
In the end, outside of curiosity, there's no use to knowing if charm has a 95% or 98% chance to break on tick because on the field it will break when it will break and you'll have to deal with it. And it isn't like you have alternative options to compare efficiency against. The only time where breaking probability would be useful is if you could come up with something like "an ilis shaman has a 80% chance to break in the first 10 ticks" which lets you figure out if that's too unruly for you or not but you'd know that with a cursory glance at the dataset.
It's certainly true that we see a massive amount of variability in practice. A pet can start out causing a lot of trouble with constant breaks and then suddenly settle down and produce several runs where the charm lasts for many minutes. The overall charm duration will only show its underlying distribution when you collect many hundreds of individual charm attempts (the graph in my first post was from data collected over more than 2 weeks).

On the other hand, the exponential nature of the cumulative duration probability does mean that relatively small differences in the underlying per-tick probability would end up leading to quite dramatic changes in duration:
[You must be logged in to view images. Log in or Register.]
Though as I noted, you're only going to really see this when looking at very large numbers of different charm attempts.

There is, possibly, an additional factor in play when it comes to maximum charm duration. I've attached a zip file containing the parsed data from the L2 orc pawn (CHA 115) and an apparition in CoM (still buffing my CHA back then, so CHA was 189 if I remember correctly). The apparition charm data is from when I was L48 and doing the moat area. Unfortunately at this point I was routinely casting Cajoling Whispers, so I'm not sure if it was above or below L37, but it hit for a max of 88, if that means anything.

If you just eyeball then orc pawn data first, you'll see a surprising number of charms lasting 142 or 143 ticks (as I mention in the code, the log's precision is limited to 1second, which means that some error is introduced by the need to account for casting time of the charm spell). Out of the 31 charms, 6 last 142 or 143 ticks, which doesn't fit an exponential distribution and suggests that there's a hard limit being imposed which rolls up the long tail and caps it at 143 ticks. I didn't see the same effect on the data from the greater spurbone, and at first wondered if this was evidence of a level effect. But then I went through my old logs and found the data on the CoM apparition, in which you can see a very similar effect, only now the hard cap seems to apply at 155 ticks (5 of the 25 charms recorded have this length). Comparing these data is hard, as there's a difference both in mob level and my own CHA. I've also seen evidence that the cap can go even longer, with at least one charm from CoM when I was L49 (also with 189 CHA) lasting 161 ticks.

So, it's possible that there is indeed a hard cap on charm duration, and I can't rule out the possibility that the length of this cap is at least partially determined by CHA. I really haven't tested this, though, and looking at the sort of design that a proper test would need - studying the maximum length of 15+minute charms - something like that is going to be very gruelling.
Attached Images
File Type: jpg Different p_values.jpg (28.6 KB, 138 views)
Attached Files
File Type: zip Two different pets.zip (1.1 KB, 0 views)
__________________
_____
Green: Feressa
Reply With Quote
  #26  
Old 04-17-2025, 07:37 AM
charleski charleski is offline
Large Bat


Join Date: Feb 2025
Posts: 12
Default

Quote:
Originally Posted by bcbrown [You must be logged in to view images. Log in or Register.]
charleski, in your results you report a "p charm success per tick" value. How is this calculated? Is it the same as p-hat (charm breaks / total ticks)?
If you look at the equation for the Wilson Score interval,
[You must be logged in to view images. Log in or Register.]
you'll see it's actually the solution to a quadratic equation, with a central point [(2*n*p_hat+c^2)/(2*(n+c^2))] flanked by the +/- term, which gives the upper and lower bounds. p_hat is actually (ticks on which the charm test succeeded) / (total ticks). The central point is what's reported as p charm success per tick.

Quote:
Given your discussion of MR and the challenges with handling tash wearing off, were all the data collected without using tash? Are you calculating total ticks for each charm as something like total charm duration in seconds / 6, rounded down? I'm sure I can answer these questions by looking at the code, but haven't had a chance to do that yet.
Yeah, the problem of tash wearing off is something I haven't really accounted for. I didn't want to interfere with the data by cutting it up and throwing parts of it out, so I thought it would be best just to leave it as-is. The CHA 115 data has 2 charms that last over 10mins, the longest being 138ticks, the CHA226 data has 5 charms lasting over 10mins, the longest being 161ticks. Unfortuantely, even though I spent over 4 hours on this, the numbers of very long charms are just too small to draw any sort of inference from them.

Yes, total ticks is calculated as (duration in seconds) // 6, where // is the python operator for floor division, which throws away any remainder.
__________________
_____
Green: Feressa
Reply With Quote
  #27  
Old 04-17-2025, 08:56 AM
kjs86z2 kjs86z2 is offline
Sarnak


Join Date: Jun 2019
Posts: 472
Default

or theres just some kind of weight that increases on the charm break/hold roll as time goes on

the bigger question: who cares?
Reply With Quote
  #28  
Old 04-17-2025, 10:17 AM
Yumyums Inmahtumtums Yumyums Inmahtumtums is offline
Planar Protector

Yumyums Inmahtumtums's Avatar

Join Date: Sep 2013
Posts: 2,086
Default

Quote:
Originally Posted by Goregasmic [You must be logged in to view images. Log in or Register.]
So if I understand correctly, above 75cha you get -1 resist check every 10cha up to 255, so considering diminishing returns probably like -15resist at 255?

(200-75)/10=12.5
(55/10)/2= 2.75

The last 55cha would be about -2.5 resist, which isn't much but I guess it matters when it is the difference between killing a named or getting harm touched by an entire room.

As for fear as an enchanter, I bought them all and I never casted one. Can't comment on that one. I can see situations where it would be useful but those are some edge cases.
It's possible to have changed but there used to be a marked difference at >200 versus <200.

I'm not going to do the work to verify this but there was a hard line at 200 with diminishing returns afterwards. It was particularly evident on my SSF characters.
__________________

Yumyums Inmahtumtums - 59 Shaman
Lemonspoon Icebeaner - 52 Enchanter
Yumyums Inmahtumtums - 60 Enchanter
Reply With Quote
  #29  
Old 04-17-2025, 03:28 PM
Goregasmic Goregasmic is offline
Fire Giant

Goregasmic's Avatar

Join Date: Jan 2024
Posts: 613
Default

Quote:
Originally Posted by charleski [You must be logged in to view images. Log in or Register.]
If you just eyeball then orc pawn data first, you'll see a surprising number of charms lasting 142 or 143 ticks (as I mention in the code, the log's precision is limited to 1second, which means that some error is introduced by the need to account for casting time of the charm spell). Out of the 31 charms, 6 last 142 or 143 ticks, which doesn't fit an exponential distribution and suggests that there's a hard limit being imposed which rolls up the long tail and caps it at 143 ticks. I didn't see the same effect on the data from the greater spurbone, and at first wondered if this was evidence of a level effect. But then I went through my old logs and found the data on the CoM apparition, in which you can see a very similar effect, only now the hard cap seems to apply at 155 ticks (5 of the 25 charms recorded have this length). Comparing these data is hard, as there's a difference both in mob level and my own CHA. I've also seen evidence that the cap can go even longer, with at least one charm from CoM when I was L49 (also with 189 CHA) lasting 161 ticks.

So, it's possible that there is indeed a hard cap on charm duration, and I can't rule out the possibility that the length of this cap is at least partially determined by CHA. I really haven't tested this, though, and looking at the sort of design that a proper test would need - studying the maximum length of 15+minute charms - something like that is going to be very gruelling.
The cajoling whisper page says:

"Duration: 12.7 minutes @L39 to 20.5 minutes @L65"

There's a good chance those repeated tick numbers was the hard cap on cajoling whispers for that level. Were you L50 for the pawn? On mobile, not gonna bother with opening zip files right now. Makes no sense that an orc pawn would cap lower than an apparition/spurbone. You were at 115cha for the pawn so maybe charisma affects max duration which makes it hard to detect considering the exponential nature?

I've wondered for someone doing the charm double kill routine if you really need more than 200cha self buffed since you only need your charm to last 2-3 minutes at best. A significantly bigger mana/hp pool could be more helpful depending on where you're leveling.

Quote:
Originally Posted by Yumyums Inmahtumtums [You must be logged in to view images. Log in or Register.]
It's possible to have changed but there used to be a marked difference at >200 versus <200.

I'm not going to do the work to verify this but there was a hard line at 200 with diminishing returns afterwards. It was particularly evident on my SSF characters.
The wiki entry for the charisma stat says

"Max (hard-cap): 255
Soft-cap: 200"

Past 200 the returns are probably axed in half.
Last edited by Goregasmic; 04-17-2025 at 03:53 PM..
Reply With Quote
  #30  
Old 04-17-2025, 03:47 PM
DeathsSilkyMist DeathsSilkyMist is offline
Planar Protector

DeathsSilkyMist's Avatar

Join Date: Jan 2014
Posts: 8,054
Default

Quote:
Originally Posted by charleski [You must be logged in to view images. Log in or Register.]
So, it's possible that there is indeed a hard cap on charm duration, and I can't rule out the possibility that the length of this cap is at least partially determined by CHA. I really haven't tested this, though, and looking at the sort of design that a proper test would need - studying the maximum length of 15+minute charms - something like that is going to be very gruelling.
There is a hard cap on charm duration:

https://wiki.project1999.com/Charm - 4.6 minutes (Level 12) to 19 minutes (Level 60).

https://wiki.project1999.com/Beguile - 8.2 minutes (Level 24) to 19 minutes (Level 60).

https://wiki.project1999.com/Cajoling_Whispers - 12.7 minutes (Level 39) to 19 minutes (Level 60).

You gain 0.3 minutes (3 ticks) per level. All three spells follow the same scaling pattern, they just have a shorter initial duration. So you are capped at 16.3 minutes (163 ticks) on all three spells at level 51. If you gathered data at earlier levels, you need to subtract 3 ticks per level from 163 ticks.
Last edited by DeathsSilkyMist; 04-17-2025 at 04:02 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 11:36 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 - 2025, Jelsoft Enterprises Ltd.