PDA

View Full Version : My Siren's Grotto


provocating
06-25-2009, 01:11 PM
I have a few loose ends on my server before I would say it is perfect for me and my players. Two zones ToV and Siren's Grotto have Mobs beating the crap out of each other.

Here is my Siren's log for only a few minutes.

[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") an_icy_servant013 attacking a_servant_swordfish003 Dist 2304.204374 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_myrmidon011 attacking a_servant_swordfish003 Dist 2374.232475 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_myrmidon010 attacking a_servant_swordfish003 Dist 2400.965662 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_coldspine_seahorse008 attacking a_servant_swordfish003 Dist 2532.842214 Z 273.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") #shimmering_sea_spirit000 attacking a_servant_swordfish003 Dist 2267.094805 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_beguiler006 attacking a_servant_swordfish003 Dist 2541.357458 Z 273.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_neriad_mistress003 attacking a_servant_swordfish003 Dist 2071.563322 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_myrmidon002 attacking a_servant_swordfish003 Dist 2530.963088 Z 273.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_myrmidon001 attacking a_servant_swordfish003 Dist 2413.213429 Z 273.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_servant_swordfish003") a_siren_beguiler001 attacking a_servant_swordfish003 Dist 2534.924864 Z 273.875000
[Debug] Fading rune from slot 6
[Debug] Fading rune from slot 2
[Debug] AIYellForHelp("a_siren_beguiler000","a_siren_myrmidon012") a_siren_beguiler010 attacking a_siren_myrmidon012 Dist 1913.000000 Z 258.059998
[Debug] Fading rune from slot 2
[Debug] AIYellForHelp("a_siren_beguiler010","a_siren_myrmidon012") a_siren_templar009 attacking a_siren_myrmidon012 Dist 3008.189579 Z 256.285431
[Debug] Fading rune from slot 3
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 25, expected 8
[Debug] [NET__STRUCT_HEX] 0000: b4 00 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 62 65 67 75 69 6c 65 72 - 00 | beguiler.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 25, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 51 00 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | Q....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 62 65 67 75 69 6c 65 72 - 00 | beguiler.
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") an_icy_servant013 attacking a_siren_templar003 Dist 2780.925309 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_siren_myrmidon011 attacking a_siren_templar003 Dist 2409.791190 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_siren_myrmidon010 attacking a_siren_templar003 Dist 2405.579500 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_coldspine_seahorse008 attacking a_siren_templar003 Dist 2405.580289 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_neriad_mistress003 attacking a_siren_templar003 Dist 2072.097094 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_siren_myrmidon002 attacking a_siren_templar003 Dist 2072.097414 Z 274.875000
[Debug] AIYellForHelp("a_siren_myrmidon014","a_siren_templar003") a_siren_myrmidon001 attacking a_siren_templar003 Dist 2072.096753 Z 274.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_siren_beguiler000") #shimmering_sea_spirit000 attacking a_siren_beguiler000 Dist 381.917412 Z 273.875000
[Debug] AIYellForHelp("a_siren_beguiler008","a_siren_beguiler000") a_siren_beguiler001 attacking a_siren_beguiler000 Dist 547.595933 Z 273.875000
[Debug] AIYellForHelp("a_siren_myrmidon009","a_neriad_mistress004") a_siren_beguiler006 attacking a_neriad_mistress004 Dist 1800.354107 Z 274.875000

ChaosSlayerZ
06-25-2009, 01:14 PM
starting with simple question - does any of them have AGRO set to 1?

provocating
06-25-2009, 01:23 PM
You mean in the database npc_aggro ??

I checked the beguiler, ID 125018 and it's npc_aggro is set to 0.

Keep in mind I have a vanilla PEQ database from CVS, no changes.

ChaosSlayerZ
06-25-2009, 01:46 PM
check them for that matter. cause if at least 1 of them has it set to 1, and it agroes on oppsing faction - all the guys on HIS faction will jump to assist, and and all the guys on opposing faction will also jump to assist their guy.

In other words it only takes 1 npc with agro set to have entire zone fighting =)

and a single "1" value could goten in there by accident (mistype/whatever)

provocating
06-25-2009, 01:50 PM
I will check them all and report back.

provocating
06-25-2009, 02:11 PM
I created this query to test the database.

SELECT *
FROM spawn2 s2
INNER JOIN
spawngroup s1 ON s2.spawngroupID=s1.id
INNER JOIN
spawnentry s3 ON s1.id=s3.spawngroupID
INNER JOIN
npc_types n1 ON s3.npcID=n1.id
WHERE zone='sirens' AND n1.npc_aggro=1

And it came back negative.....

ChaosSlayerZ
06-25-2009, 02:49 PM
well I can think of one more weird explanation - one of the spells one of the mobs is casting as "buff" could be an aoe nuke, which provokes at attack.

other than that - seek our devs help =)

provocating
06-25-2009, 02:51 PM
Exactly what I am thinking too, an AOE....tracking it down will be fun.

ChaosSlayerZ
06-25-2009, 03:17 PM
Exactly what I am thinking too, an AOE....tracking it down will be fun.

here is easy way to check this.

make a copy of entire npc_type table as npc_typesBACKUP

then set spell ids for all mobs in groto to 0
then see if they still attacking =)

provocating
06-25-2009, 03:23 PM
Great idea.

provocating
06-25-2009, 06:02 PM
Oh cool. I rebooted the server and now Siren's Grotto is doing something different.

[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 6b 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | k....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 18 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.

provocating
06-25-2009, 06:06 PM
If I zone into another zone, this does not happen, just Siren's Grotto. It has to be related to all the crazy inter-zone killing going on.

[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 9b 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 24 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | $....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 9b 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 24 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | $....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 9b 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 24 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | $....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.
[Debug] [NET__STRUCTS] Wrong size on outbound OP_InterruptCast (InterruptCast_Struct): Got 24, expected 8
[Debug] [NET__STRUCT_HEX] 0000: 9b 01 00 00 be 30 00 00 - 61 20 73 69 72 65 6e 20 | .....0..a siren
[Debug] [NET__STRUCT_HEX] 0016: 74 65 6d 70 6c 61 72 00 - | templar.

ChaosSlayerZ
06-25-2009, 06:13 PM
hmm perhaps something wrong witht he OP codes handling spell casting..

which server build you using?

provocating
06-25-2009, 07:04 PM
My changelog has this in it, this is from the source of my last compile.

EQEMu Changelog (Started on Sept 24, 2003 15:50)^M
-------------------------------------------------------^M
==06/08/2009==^M
KLS(realityincarnate): Charms: Added charm item scaling with scriping support and initial work on evolving items.^M
KLS(realityincarnate): Added perl method $client->GetModCharacterFactionLevel(FactionID)^M
KLS(realityincarnate): Added perl method $group->GetMember(index)^M
KLS: Added perl method $client->GetLDoNWins()^M
KLS: Added perl method $client->GetLDoNLosses()^M
KLS: Added perl method $client->GetLDoNWinsTheme(theme 1-5)^M
KLS: Added perl method $client->GetLDoNLossesTheme(theme 1-5)^M
KLS: Added support for item clicklevel and item clicklevel2^M
Trevius: Increased spellbook from 400 to 480 in the Player Profile for use with SoF (60 page spell book)^M
Trevius: SoF - Added new functions to SoF.cpp for converting Slot IDs between Titanium and SoF^M
Trevius: SoF - Corrected the location of the spellbook field in the Player Profile to fix an issue with loading spells^M

gaeorn
06-25-2009, 07:08 PM
Thats rev 642. Current rev is 713.

ChaosSlayerZ
06-25-2009, 07:09 PM
actualy they have some bugs in the build before this one.
There is a new build just released 2 days ago.
I suggest uprgade to that build and continue from there

provocating
06-25-2009, 07:12 PM
I am just not in a position to upgrade, I would rather fix the problem. Every time I upgrade more problems pop up.

zergling
06-27-2009, 12:26 PM
Just wanted to note that I have gotten reports from my players that this kind of stuff has been happening in Thurgadin, and the froglok city.

Im using an installer, so my revision is probably also not the cutting edge. But I would also be interested in a fix that doesn't require me to re install.

provocating
06-27-2009, 01:54 PM
I agree, I really do not want to be on the bleeding edge. All of my other problems are ironed out but this one.

provocating
07-01-2009, 11:16 PM
Also to let you guys know, this is Temple of Veeshan also. When I zone in a few of the mobs start attacking each other. When i get to the larger dragons I notice many of the supporting dragons are at 50% when I get there.

zergling
07-06-2009, 10:30 AM
I've poked around a bit but haven't been able to find whats causing this. Have you had any luck on this Prov?


I've had two players die now while trying to buy things in Thurgadin from what seems to be the same issue.

provocating
07-06-2009, 10:36 AM
Nope, but I did play a lot this weekend. Zones we have seen it in are BoT, ToV, SG and many others. SG seems to be the worst though. I am moving my server from a VM to it's on beefy server by Wednesday so maybe I can look into it again. I bet along the same lines another problem, well not so much a problem but a quirk. In a lot of zones our bots are casting mez randomly without being told, some zones worse than others. Like in ToV last night we would just be fighting the yard trash and the bots quit attacking the mob when it was not completely dead. When asked to engage again they would tell you it was mezzed. Not a problem really, it just slows you down in fights. So this problem could be related, it could be in the spells.

provocating
07-06-2009, 01:32 PM
May had found one thing right off.

Apathy of the Nihil

Is showing up as a nuke on my BOTS ??? That is an AOE mez.

zergling
07-07-2009, 01:19 AM
Did some more searching by checking the problems in Thurgadin and found that one of the NPCs was casting Mark of Kings on himself like he thought it was a buff.

But that is a debuff, so my current guess is that he got hate because he debuffed someone on the surrounding people's faction (himself), and so they attacked him.

I repopped the zone and #stun'd him and no fighting broke out.

Need to go to bed, but tomorrow I am going to try to make Mark of Kings not possible to cast on yourself.

provocating
07-07-2009, 08:34 AM
Someone reported to me this activity in Kael last night.

zergling
07-07-2009, 10:07 AM
Noticed that Mark of Kings and some of the other spells in the line were set up as damage shields instead of reverse damage shields. They were all flagged as non-beneficial already though.

I fixed all that, but unfortunately he still cast it on himself. Does anyone have any idea of how you control what spells an NPC casts on themself?

Seems like this would be a problem with any NPC that is a cleric of sufficient level.

Shendare
07-07-2009, 10:19 AM
Potentially relevant database tables include:

- damageshieldtypes
- npc_spells
- npc_spells_entries

zergling
07-07-2009, 12:15 PM
Mark of Kings is set as 8 ( SpellType_Buff ) for type in npc_spells_entries. Where those constants are defined I do not see any that is SpellType_Debuff that I can change it to. The list I see is:

const int SpellType_Nuke=1;
const int SpellType_Heal=2;
const int SpellType_Root=4;
const int SpellType_Buff=8;
const int SpellType_Escape=16;
const int SpellType_Pet=32;
const int SpellType_Lifetap=64;
const int SpellType_Snare=128;
const int SpellType_DOT=256;
const int SpellType_Dispel=512;
const int SpellType_InCombatBuff=1024;
const int SpellType_Mez=2048;

What should a debuff be coded as? Just like a nuke?

gaeorn
07-07-2009, 12:23 PM
Maybe more like a DOT since it has a fixed duration where there is no point in recasting until it fades. Tho, I would have to look at the server code to see if that is really the best option. Maybe someone else knows already.

ChaosSlayerZ
07-07-2009, 12:28 PM
technicly its a debuff, but since we don't have such property, the DoT should do.
I just realised I why I don't have problem with this on my server - I have turned off npc buffing each other a while ago =)

Shendare
07-07-2009, 12:30 PM
Yeah, if there isn't a debuff category, it's hard to say. It's probably actually closer to a DoT than a nuke, since it'll be causing damage over time as the hits land.

Edit: Oops, must have left the tab open longer than I thought. Others already answered. :P

zergling
07-07-2009, 12:38 PM
Cool deal, I will try setting them as DoTs when I get home.

For reference, this should catch the cleric "Mark" line

UPDATE `npc_spells_entries` SET `type` = '256' WHERE `npc_spells_entries`.`id` =3157 LIMIT 1 ;
UPDATE `npc_spells_entries` SET `type` = '256' WHERE `npc_spells_entries`.`id` =3159 LIMIT 1 ;

Looks like only two of the spells in that line appear on cast lists. Those two statements will set them as DoTs instead of buffs.

Also, Prov, Apathy of the Nihil was set as 1 (nuke), so I would think it would still be detrimental, but I'm probably going to go ahead and set it to Mez ( 2048 ) since there is a specific category for mezzes.

UPDATE `npc_spells_entries` SET `type` = '2048' WHERE `npc_spells_entries`.`id` =3851 LIMIT 1 ;


There may be others, but me may have to just find them through trial and error.

Congdar
07-07-2009, 07:04 PM
May had found one thing right off.

Apathy of the Nihil

Is showing up as a nuke on my BOTS ??? That is an AOE mez.

This is an Enchanter bot spell. It was supposed to be Dreary Deeds which is a slow and is listed in Alla's but it was changed from Apathy of the Nihil which is a mez in 2005 and both have the same id=4877. It's in the Titanium spell file as Apathy of the Nihil and in the SoF spell file as Dreary Deeds.

I'll update my spell files for the bots and get them to the database guys. It's been a while since I had the databases updated with the bot spells and I've had many other spell changes that need to go in.

provocating
07-07-2009, 08:48 PM
Cool deal, I will try setting them as DoTs when I get home.

For reference, this should catch the cleric "Mark" line

UPDATE `npc_spells_entries` SET `type` = '256' WHERE `npc_spells_entries`.`id` =3157 LIMIT 1 ;
UPDATE `npc_spells_entries` SET `type` = '256' WHERE `npc_spells_entries`.`id` =3159 LIMIT 1 ;

Looks like only two of the spells in that line appear on cast lists. Those two statements will set them as DoTs instead of buffs.

Also, Prov, Apathy of the Nihil was set as 1 (nuke), so I would think it would still be detrimental, but I'm probably going to go ahead and set it to Mez ( 2048 ) since there is a specific category for mezzes.

UPDATE `npc_spells_entries` SET `type` = '2048' WHERE `npc_spells_entries`.`id` =3851 LIMIT 1 ;


There may be others, but me may have to just find them through trial and error.

Well I was about to post something similar but you beat me to it. I am standing in front of Semkak Prophet of Vallon in Kael and right when he cast Mark of Karn the two guards in front of him beat him down like he is a level 1 newbie.

I backed up my database, then ran those two MySQL lines and zoned back in, repopped the zone. They are still doing it, do you have to bounce the server for that to work ?

provocating
07-07-2009, 11:05 PM
I just rebooted and everything is now fixed. I ran the two SQL statements, bounced the server and all is well now. It was the Mark line of spells causing it.

joligario
07-13-2009, 08:59 PM
Just an update, Mark of Kings is spellid 3469. It should be changed from 8 to 256 as well.

Unless the numbers are different for SoF of course...

joligario
07-13-2009, 09:10 PM
For the PEQ DB (Titanium if it matters):

update npc_spells_entries set type=256 where spellid=3469;
update npc_spells_entries set type=256 where spellid=1548;
update npc_spells_entries set type=2048 where spellid=4877;

Fixes the same 3 spells.

zergling
07-14-2009, 01:28 PM
The fix I had was for titanium. I was just updating by the npc_entries id instead of the spell id. So both should work identically I think for a stock DB.

But if someone had modified their DB to add those spells to another npc cast list, your queries would be more comprehensive.

Thanks!