Spell Interrption:

For ideas on how to make Second Age a better shard. Can it get any better? Maybe.
Forum rules
Posts in this forum are expected to be constructive, realistic and civil. Inflamatory or off topic posts will be removed.
User avatar
Faust
Posts: 6247
Joined: Mon Sep 22, 2008 7:01 pm

Re: Spell Interrption:

Post by Faust »

Brief summary...
Faust wrote:The current state or scope of these changes are as followed...

- Debuffs will no longer be "a guarenteed interruption" and be applied to the spell interruption formula as predicted by me a long time ago using a value of 0 damage. This creates a 42% chance of spell disruption when casted on a GM mage casting the greater heal spell. The chance varies depending ont he circle being casted. The lower the circle the lower the chance of disruption and vice versa for higher circles.

- Spells will check TWICE for a spell interruption using a damage value x2 what is now for the first check and divide that value by 2 for the second check. Here is mere example of this cause and effect. The harm spell hitting a mage for 4 damage under the current system has slightly under a 50% chance to disrupt the greater heal spell. With the "real" version it would double the chance and run another interruption check with half that chance if the first one failed to disrupt.

- Debuffs utitlizing the "check twice" for spell interruption will mean it will "almost" be a guarenteed disrupt and be slightly less effective in the correct system with the possibility that it will not disrupt. However, spells like magic arrow and harm including anything above that will be SIGNIFICANTLY more effective when disrupting spells. Harm will rarely not disrupt a spell under this new system when it's corrected.

- Current state of melee for spell disruption looks like it won't be changing as of now from the current way it works(already utilizes the method before pre-division).

- Poison damage will utilize the "check twice" system as will firebreath.


That is all that I can think of at this very moment...

Kraarug
UOSA Donor!!
UOSA Donor!!
Posts: 1448
Joined: Tue Dec 16, 2008 2:46 pm

Re: Spell Interrption:

Post by Kraarug »

Faust wrote:Brief summary...
Faust wrote:The current state or scope of these changes are as followed...

- Debuffs will no longer be "a guarenteed interruption" and be applied to the spell interruption formula as predicted by me a long time ago using a value of 0 damage. This creates a 42% chance of spell disruption when casted on a GM mage casting the greater heal spell. The chance varies depending ont he circle being casted. The lower the circle the lower the chance of disruption and vice versa for higher circles.

- Spells will check TWICE for a spell interruption using a damage value x2 what is now for the first check and divide that value by 2 for the second check. Here is mere example of this cause and effect. The harm spell hitting a mage for 4 damage under the current system has slightly under a 50% chance to disrupt the greater heal spell. With the "real" version it would double the chance and run another interruption check with half that chance if the first one failed to disrupt.

- Debuffs utitlizing the "check twice" for spell interruption will mean it will "almost" be a guarenteed disrupt and be slightly less effective in the correct system with the possibility that it will not disrupt. However, spells like magic arrow and harm including anything above that will be SIGNIFICANTLY more effective when disrupting spells. Harm will rarely not disrupt a spell under this new system when it's corrected.

- Current state of melee for spell disruption looks like it won't be changing as of now from the current way it works(already utilizes the method before pre-division).

- Poison damage will utilize the "check twice" system as will firebreath.


That is all that I can think of at this very moment...
Great work.
Image

User avatar
Faust
Posts: 6247
Joined: Mon Sep 22, 2008 7:01 pm

Re: Spell Interrption:

Post by Faust »

Don't forget that this is all preliminary data and could change at any moment though.

Some of this information has been confirmed but needs further testing and some hasn't. However, due to the nature of how damage works from my experience with the demo and this process, this is the way that the "current" state or scope of the process has/is turning out.

I stress that this could "change" at any given moment but so far is looking very unlikely.

User avatar
Batlin
wobble llama
wobble llama
Posts: 512
Joined: Fri Dec 19, 2008 4:32 am
Location: Ultima Universe

Re: Spell Interrption:

Post by Batlin »

After testing and modifying the monster, player and casting scripts, I'm confident that the interrupt check occurs twice for poison and magery damage. Once before the halvation and once after.

It occurs in the demo only once for melee and this is with the actual damage, not with the pre-halved damage! This could have changed because the demo contains a function doDamageFight which in the current implementation is not used at all. Maybe OSI wanted to move melee to that function in which case the double check would occur too. Or maybe not.

There is no difference made between monsters and players.

There is one thing that needs to be tested extra in the demo : 2 players casting on/fighting each other because something weird is going on with the event system in that case. Only 1 of the 2 events occurs, as if, when interrupted the remaining events are cancelled even though I do not find any reason why this would happen.


This code I added to the monster script (so we can see what happens with monsters):

Code: Select all

on washit
{
  string Q4IB = damamt;
  systemMessage(attacker, "monster" + " (" + getName(attacker) + "-" + ">" + getName(this) + ") " + Q4IB);
  return(0x01);
}

// Binary
B309 9B0B 0822 DC0D 9A3F E906 F015 2F18 E906 9615 3207 9E3B 4320 3E0F 1035 C813 967F 293B 1B0F D63C 175D 2800 
BF0F E906 0F18 3E0F E906 C813 122D C923 175D A201 C923 293B D601 C923 9B0B 0F18 0C39 9E3B E820 A626 C923 175D
6101 C923 9E3B F015 035D 3207 E95D 9901 BD17 01 A626 FD5C B77E
This code I added to the player script:

Code: Select all

on washit
{
  string Q4IB = damamt;
  systemMessage(this, "self" + " ("  + getName(attacker) + "-" + ">" + getName(this) + ") " + Q4IB);
  return(0x01);
}

// Binary
8A32 1035 0822 145E B52D 1035 F015 161F E906 9615 3207 1035 4320 0C39 1035 E820 253B 1D0A AD10 D63C 293B 2800 
BF60 9B0B 0F18 9901 9E3B C813 122D C923 FA2B A201 C923 175D D601 D63C 1035 0F18 2401 9B0B E820 B339 D63C FA2B 
6101 BF60 1035 F015 A626 FD5C 9F19 2401 BD17 01 035D 123E B77E
There is one big issue I had with the double "washit" checking: the slime script (and some others too) do certain things when the event occurs. Slimes split when hit (and when enough damage is applied to them). Some monsters talk when hit. If a double check would occur then the slimes should split twice. To test this I modified the horse script and added some code to it. The top event is the "washit" event as used by the casting script, the bottom one is similar to the one used by the slimes. The value of 300 between "on" and "washit" is a chance indicator giving the event only 30% chance to occur. So a slime splitting twice can still occur but the chance for that is only 30% (the actual chance is even a litle bit less).

The code added:

Code: Select all

// output 1000 so we know the 100% chance event occured
on washit
{
  string Q4IB = 1000;
  systemMessage(attacker, Q4IB);
  return(0x01);
}

// output 300 so we know the 30% chance event occured
on 300 washit
{
  string Q4IB = 300;
  systemMessage(attacker, Q4IB);
  return(0x01);
}

// Binary
8F03 1035 0822 145E A730 9E3B F015 161F 5B27 E803 FD5C 9E3B 4320 0C39 E906 C813 1F1E 9B0B F015 B339 123E E95D 
9901 B85D 01 122D 2001 A115 8F03 F40F 2C01 9B0B 0822 145E A730 9B0B F015 2F18 8F3D 2C01 123E 9E3B 4320 0C39 9E3B 
C813 1F1E 9E3B F015 A626 3207 E95D 9901 EB21 01 B339 123E B77E 
This line I inserted in the casting script, binary part is missing for this one.

Code: Select all

systemMessage(this, "casting" + " ("  + getName(attacker) + "-" + ">" + getName(this) + ") " + damamt + " (" + Q4IB + ")");
+ORC: If you give a man a crack he'll be hungry again tomorrow, but if you teach him how to crack, he'll never be hungry again.
chumbucket: I don't collect pixels.

Never trust the client. It's in the hands of the enemy : UO Demo internals @ JoinUO

poogoblin
Posts: 544
Joined: Sat Jun 27, 2009 11:05 pm

Re: Spell Interrption:

Post by poogoblin »

So in lame man's terms? In the demo it is doing exactly the opposite of what faust was saying?

Kraarug
UOSA Donor!!
UOSA Donor!!
Posts: 1448
Joined: Tue Dec 16, 2008 2:46 pm

Re: Spell Interrption:

Post by Kraarug »

poogoblin wrote:So in lame man's terms? In the demo it is doing exactly the opposite of what faust was saying?
Actually, in laymans terms, the demo is doing what Faust said it would do in his brief. There are just some strange issues with some of the double checks.
Image

Hiram
UOSA Donor!!
UOSA Donor!!
Posts: 84
Joined: Mon Jun 08, 2009 4:06 pm

Re: Spell Interrption:

Post by Hiram »

I think it's important to note a small mathematical error on Faust's part:

If there are two checks done at an interrupt and each check has a 42 percent chance of interrupting, this does not equal an overall 84 percent chance. You can see this is wrong by logically extrapolating that if there were three chances to interrupt at 42 percent chance each, the actual final percent chance would not be 126 percent! :)

If you have 2 chances at 42 percent chance to interrupt, the actual final chance of interruption is more like 66 percent. 42 percent chance to interrupt the first time, 42 percent of the other 58 percent where you do not interrupt will also result in an interrupt (42 percent of 58 percent is roughly 24)

42 + 24 = 66

Just like flipping two coins, if our question was "what are the odds either of the coins will show heads", its 50 percent on the first coin, 50 percent on the second, but the odds are not 100 percent, the possible outcomes of flipping two coints are:

HH
HT
TH
TT

Which shows that only 3/4 outcomes have a coin with heads in them which is 75, not 100 percent.

That means that if this change occurs, debuff spells will have roughly a 2/3 chance to interrupt.

User avatar
Faust
Posts: 6247
Joined: Mon Sep 22, 2008 7:01 pm

Re: Spell Interrption:

Post by Faust »

So you are saying that melee uses the "finalized" damage value instead of the value before it's cut in half on the demo Batlin?

This would very well surprise me if that is the case.

I see that you mentioned that there are two different methods used for melee where the main one used on the demo only checks once and the second checks twice for an interruption. This could very well mean they were shifting one way or the other. There really is no way to really know for sure it looks like, sadly.

Btw, I never "literally" meant an exact 84% chance Hiram... It was more of a "guess" based on a double chance obviously. We all know that a "multiple" chances doesn't stack up until it maximizes out into a hundred percent chance. You can have something check a million times on a 50% chance for each and still come out losing. However, the "overall" chance of that happening is very unlikely.

User avatar
archaicsubrosa77
UOSA Donor!!
UOSA Donor!!
Posts: 3477
Joined: Fri Jul 03, 2009 5:31 pm
Location: Taylor Michigan

Re: Spell Interrption:

Post by archaicsubrosa77 »

maybe its not supposed to be a double check maybe it is range variance depending on intelligence/magery levels like one number for minimum and one for maximum, or maybe one for if it is hit another if it is resisted.
Last edited by archaicsubrosa77 on Fri Aug 21, 2009 10:54 am, edited 1 time in total.
Derrick wrote:I wish it were possible that a mount could be whacked while you are riding it, but to the best of my knowedge it is not.

Hiram
UOSA Donor!!
UOSA Donor!!
Posts: 84
Joined: Mon Jun 08, 2009 4:06 pm

Re: Spell Interrption:

Post by Hiram »

Faust wrote: Btw, I never "literally" meant an exact 84% chance Hiram... It was more of a "guess" based on a double chance obviously. We all know that a "multiple" chances doesn't stack up until it maximizes out into a hundred percent chance. You can have something check a million times on a 50% chance for each and still come out losing. However, the "overall" chance of that happening is very unlikely.
Not everyone knows that, and 84% is not even close to 66%. I don't know why you would even "guess" if you have the formula in front of you. 66% isn't a guess, it's a fact based on 42 percent chance executed twice (rounded down from the exact probability of 66.36%).

Edit:

Probability isn't a mystic art, even the probability of your hypothetical situation can be determined fairly easily by calculationg:

1/2 + (1/2)^2 + (1/2)^3....+(1/2)^1000000
Last edited by Hiram on Fri Aug 21, 2009 10:58 am, edited 1 time in total.

User avatar
archaicsubrosa77
UOSA Donor!!
UOSA Donor!!
Posts: 3477
Joined: Fri Jul 03, 2009 5:31 pm
Location: Taylor Michigan

Re: Spell Interrption:

Post by archaicsubrosa77 »

could the second check be if it fails intially but makes another check if it is resisted?
Derrick wrote:I wish it were possible that a mount could be whacked while you are riding it, but to the best of my knowedge it is not.

User avatar
Derrick
Posts: 9004
Joined: Thu Dec 13, 2007 7:49 pm
Location: Cove
Contact:

Re: Spell Interrption:

Post by Derrick »

The proposed changes have been made on test center.
While we are still looking into some of the "wierdness" that Batlin mentioned, I belive what is currently on testcenter is more correct than what we have now.

Server: test.uosecondage.com
Port: 2593
Image
"The text in this article or section may be incoherent or very hard to understand, and should be reworded if the intended meaning can be determined."

User avatar
archaicsubrosa77
UOSA Donor!!
UOSA Donor!!
Posts: 3477
Joined: Fri Jul 03, 2009 5:31 pm
Location: Taylor Michigan

Re: Spell Interrption:

Post by archaicsubrosa77 »

Derrick wrote:The proposed changes have been made on test center.
While we are still looking into some of the "wierdness" that Batlin mentioned, I belive what is currently on testcenter is more correct than what we have now.

Server: test.uosecondage.com
Port: 2593
Why would there be two checks for chance of interruption unless there was one check intially made to see if there was interuption and if the interruption succeeded there was the second check made to see if it was still interrupted if the spell was resisted?
Derrick wrote:I wish it were possible that a mount could be whacked while you are riding it, but to the best of my knowedge it is not.

Kraarug
UOSA Donor!!
UOSA Donor!!
Posts: 1448
Joined: Tue Dec 16, 2008 2:46 pm

Re: Spell Interrption:

Post by Kraarug »

...
Last edited by Kraarug on Fri Aug 21, 2009 11:32 am, edited 2 times in total.
Image

User avatar
archaicsubrosa77
UOSA Donor!!
UOSA Donor!!
Posts: 3477
Joined: Fri Jul 03, 2009 5:31 pm
Location: Taylor Michigan

Re: Spell Interrption:

Post by archaicsubrosa77 »

the half check I believe was if there was resistance in the equation...why else would that be? If damage is halved in resistance then the chance would be as well.
Derrick wrote:I wish it were possible that a mount could be whacked while you are riding it, but to the best of my knowedge it is not.

Post Reply