Welcome, Guest. Please login or register.
Did you miss your activation email?
November 29, 2024, 02:07:58 am *

Login with username, password and session length
Pages: 1 2 3 4 5 [6] 7
Print
Author Topic: Death Save and Divine Save ie DI and deathpact stuff  (Read 43648 times)
lerxst2112
Hero Member
*****
Posts: 724


View Profile
« Reply #75 on: December 20, 2012, 03:24:07 pm »

Did I need to replace the spell effect or update it? As stated above, I am using EZ's spell file at the moment.

I don't know what's in the spell file, but if you ran the query posted earlier that gives everyone the AA sets the percent chance to 0.  You'd need a buff on you with effect id 232 that raises the chance to something reasonable.

I posted earlier with a detailed explanation of how it would work with or without the aa.
Logged
hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #76 on: December 20, 2012, 04:04:14 pm »

I will experiment tonight as I have time. I did scroll back and re-read thread again to make sure I was 100% clear. I did see your explanation lerxst2112 and I will double check. I tried Death Save and Divine Save, but I need to bump up values considerably. Thank you as always

-Hate
Logged

I'm so sorry Hunter, I tried...
Natedog
Master
******
Posts: 830


View Profile
« Reply #77 on: December 20, 2012, 04:57:38 pm »

I got up early today, redownloaded source/maps/quests/etc, recompiled, and everything worked. However, I was using the DI and Death Pact from spell file, AAXP on wizard, no luck yet. See below.

http://hateborne.com/ezserver/debug/lolwizard.png

He was hitting slowly for 10k (8x my health bar). Did I need to replace the spell effect or update it? As stated above, I am using EZ's spell file at the moment.

-Hate



It works on EZ currently... just for clerics only .. cast Divine Intervention on your cleric kill the cleric and its around 50% chance to save him
Logged

hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #78 on: December 21, 2012, 04:22:29 am »

Ok here goes, lerxst2112 was (unsurprisingly) right. There is a bit of a possible bug.

If Divine Intervention does NOT have a value in the limit field, it does nothing. If ANY numeric value is set, it force casts 4789 (Divine Intervention). The reason it works on the cleric right now is the AAXP has the effect already in it and is combining the aa + spell + item bonuses for DI.

I made a small adjustment to Touch of the Divine, changing it to 50k HP Once value (meaning no charm scaling), removing the Invuln (which is the aggro wipe), and set it to no duration (so it won't pulse purify).

To resolve DI to somewhat normal standards again:
Code:
UPDATE spells_new SET effect_limit_value1 = 4789 WHERE id = 1546;
REPLACE INTO `spells_new` VALUES (4789, 'Touch of the Divine', 'PLAYER_1', '', '', '', 'You have been spared from death!', '', '', 0, 0, 0, 0, 0, 2250, 900000, 0, 0, 0, 10, 0, 0, 0, 0, 50000, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2511, 2045, -1, -1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 0, 1, 0, 0, 254, 10, 10, 10, 79, 291, 254, 254, 254, 254, 254, 254, 6, 25, 4, -1, 0, 0, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 46, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 999, 3, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 1);

This is a slightly important fix (thanks to Paldail's original work and lerxst2112's constant guidance), so it will go into the fixit thread as well.


-Hate
Logged

I'm so sorry Hunter, I tried...
Natedog
Master
******
Posts: 830


View Profile
« Reply #79 on: December 21, 2012, 04:44:30 am »

So should the spell work WITHOUT the AA? Because it sure isn't working for me =p



I was also wrong... wasn't working at 0% DI for the AA for some reason... hmm


Had to set it to 1 in every rank to get it to work... hmm


But it is also really late.. and im ultra tired.. so I might be doing something wrong lol..
« Last Edit: December 21, 2012, 05:17:51 am by Paldail » Logged

lerxst2112
Hero Member
*****
Posts: 724


View Profile
« Reply #80 on: December 21, 2012, 05:32:50 am »

So should the spell work WITHOUT the AA? Because it sure isn't working for me =p

It should work fine without the aa.  The buff would need effect id 232, effect value is the percentage chance to trigger, and effect limit value is the spell to cast in addition to spell 4789.  I suspect you may not have had the effect limit value set which just makes it do nothing.

It seems like it should save you from death and cast spell 4789 even if the buff/aa doesn't have an additional spell defined, but the way it's implemented if there's no additional spell to cast it just doesn't do anything.
Logged
hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #81 on: December 21, 2012, 05:43:02 am »

It should work fine without the aa.  The buff would need effect id 232, effect value is the percentage chance to trigger, and effect limit value is the spell to cast in addition to spell 4789.  I suspect you may not have had the effect limit value set which just makes it do nothing.

It seems like it should save you from death and cast spell 4789 even if the buff/aa doesn't have an additional spell defined, but the way it's implemented if there's no additional spell to cast it just doesn't do anything.


As far I can tell, there seems to be a bit of a copy/paste error. Example:
Code:
bool Mob::TryDivineSave() {

/*
How Touch of the Divine AA works:
-Gives chance to avoid death when client is killed.
-Chance is determined by the AA value. (base1)
-Spell can be triggered from divine save (base2) in this case a Heal
Note: Heal value does not and should not increase from more levels of this AA.
-If chance is met, a heal is done and a divine aura like effect 'Touch of the Divine'
is applied to the client. Determintal spell effects are removed.
*/
sint16 SuccessChance = aabonuses.DivineSaveChance[0] + itembonuses.DivineSaveChance[0] + spellbonuses.DivineSaveChance[0];

if (SuccessChance)
{
if (MakeRandomInt(0, 100) <= SuccessChance)
{
int32 HealAmt = 0;
BuffFadeByEffect(SE_DivineSave);
//Touch of the Divine=4789, an Invulnerability/HoT/Purify effect hard coded to trigger if spell effect is defined from base2.
if (aabonuses.DivineSaveChance[1] || itembonuses.DivineSaveChance[1] || spellbonuses.DivineSaveChance[1]) {

SetHP(1);

if (aabonuses.DivineSaveChance[1])
SpellOnTarget(aabonuses.DivineSaveChance[1], this);

if (itembonuses.DivineSaveChance[1])
SpellOnTarget(aabonuses.DivineSaveChance[1], this);

if (spellbonuses.DivineSaveChance[1])
SpellOnTarget(aabonuses.DivineSaveChance[1], this);

SpellOnTarget(4789, this);
SendHPUpdate();
return true;
}
}
}
return false;
}

Shouldn't it be:
Code:
bool Mob::TryDivineSave() {

/*
How Touch of the Divine AA works:
-Gives chance to avoid death when client is killed.
-Chance is determined by the AA value. (base1)
-Spell can be triggered from divine save (base2) in this case a Heal
Note: Heal value does not and should not increase from more levels of this AA.
-If chance is met, a heal is done and a divine aura like effect 'Touch of the Divine'
is applied to the client. Determintal spell effects are removed.
*/
sint16 SuccessChance = aabonuses.DivineSaveChance[0] + itembonuses.DivineSaveChance[0] + spellbonuses.DivineSaveChance[0];

if (SuccessChance)
{
if (MakeRandomInt(0, 100) <= SuccessChance)
{
int32 HealAmt = 0;
BuffFadeByEffect(SE_DivineSave);
//Touch of the Divine=4789, an Invulnerability/HoT/Purify effect hard coded to trigger if spell effect is defined from base2.
if (aabonuses.DivineSaveChance[1] || itembonuses.DivineSaveChance[1] || spellbonuses.DivineSaveChance[1]) {

SetHP(1);

if (aabonuses.DivineSaveChance[1])
SpellOnTarget(aabonuses.DivineSaveChance[1], this);

if (itembonuses.DivineSaveChance[1])
SpellOnTarget(itembonuses.DivineSaveChance[1], this);

if (spellbonuses.DivineSaveChance[1])
SpellOnTarget(spellbonuses.DivineSaveChance[1], this);

SpellOnTarget(4789, this);
SendHPUpdate();
return true;
}
}
}
return false;
}

Specifically, it has "SpellOnTarget(aabonuses.DivineSaveChance[1], this);" for the AA, Item, and Spell checks.

-Hate
Logged

I'm so sorry Hunter, I tried...
Natedog
Master
******
Posts: 830


View Profile
« Reply #82 on: December 21, 2012, 05:43:56 am »

|| *id* || *name* || *effect_base_value1* || *effect_limit_value1* || *effectid1* ||
|| 1546 || Divine Intervention || 100 || 4789 || 232 ||



-- not working for me thats correct though right?



Procs 100% of the time with the AA set to 1 


Procs never... with just the spell buff ?
Logged

Natedog
Master
******
Posts: 830


View Profile
« Reply #83 on: December 21, 2012, 05:59:33 am »

Specifically, it has "SpellOnTarget(aabonuses.DivineSaveChance[1], this);" for the AA, Item, and Spell checks.

-Hate


So each type checks for the AA on the target hmmm.. ?
Logged

hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #84 on: December 21, 2012, 07:13:18 am »

So each type checks for the AA on the target hmmm.. ?

Seems to be. My level 1 wizard with 0 AAXP had DI proccing with 100% proc chance, with 50% proc chance, and then with 25% proc chance. The key is to set the limit value to the Touch of the Divine (4789). It seems to default to this cast anyway, but without some legitimate spell ID in the limit value (even though it ignores the spell and STILL goes for Touch of the Divine) then the DI will simply not trigger.

I'm writing a post on EQEMU boards about it now. Hopefully they can get it fixed in a future source.

-Hate
Logged

I'm so sorry Hunter, I tried...
Natedog
Master
******
Posts: 830


View Profile
« Reply #85 on: December 21, 2012, 07:16:52 am »

So each type checks for the AA on the target hmmm.. ?

Seems to be. My level 1 wizard with 0 AAXP had DI proccing with 100% proc chance, with 50% proc chance, and then with 25% proc chance. The key is to set the limit value to the Touch of the Divine (4789). It seems to default to this cast anyway, but without some legitimate spell ID in the limit value (even though it ignores the spell and STILL goes for Touch of the Divine) then the DI will simply not trigger.

I'm writing a post on EQEMU boards about it now. Hopefully they can get it fixed in a future source.

-Hate


It would proc without the AA for me too.. with an OLD OLD OLD Revision of the DB .. with the newest revision though... it doesnt work
Logged

hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #86 on: December 21, 2012, 07:39:14 am »

I updated my server to whatever was current last night and it's working for me without the AAXP. Divine Intervention has effectid1 = 232, effect_base_value1 = 50, effect_limit_value1 = 4789.

-Hate


EDIT: When I get home tonight, assuming I have died before then from sleep deprivation, I will check my notes. I don't recall doing anything else, but I've slept ~3h15min last night. So...yeah
« Last Edit: December 21, 2012, 07:44:11 am by hateborne » Logged

I'm so sorry Hunter, I tried...
Natedog
Master
******
Posts: 830


View Profile
« Reply #87 on: December 21, 2012, 08:06:25 am »

Just updated to Rev2300 -- I will try in a minute heh



Ya.. i can't get it to work the way you are doing it.. I think I'm doing it wrong  Cry
« Last Edit: December 21, 2012, 09:36:28 am by Paldail » Logged

hateborne
Legend
*******
Posts: 2282


Don't nerf me bro!


View Profile
« Reply #88 on: December 21, 2012, 09:57:03 am »

http://www.eqemulator.org/forums/showthread.php?p=215468#post215468

They acknowledge, fixed, and added to the 2301 revision. Yay


-Hate
Logged

I'm so sorry Hunter, I tried...
Fugitive
Legend
*******
Posts: 1807


TROLL KING


View Profile
« Reply #89 on: December 21, 2012, 10:02:06 am »

+1
Logged


Quoted for the Brotherhood of Warriors
"I want my wizard to cast Fugitives instead of fireballs.
We can't always get what we want. ;-)"
-Hate"
Pages: 1 2 3 4 5 [6] 7
Print
Jump to:  

Recent

Stats

Members
  • Total Members: 6156
  • Latest: Rin1
Stats
  • Total Posts: 65127
  • Total Topics: 5066
  • Online Today: 298
  • Online Ever: 8678
  • (December 19, 2022, 02:32:09 pm)
Users Online
Users: 0
Guests: 249
Total: 249
TinyPortal v1.0 beta 4 © Bloc