NPC Hate Development

EQ2Emulator Development forum.

Moderator: Team Members

Post Reply
User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

NPC Hate Development

Post by John Adams » Sat Jan 30, 2010 8:10 pm

We have a current problem where two spawns that are sworn enemies can pop together in the same area and never aggro. This is because the current system only checks for faction/hate/aggro when the spawns have a moment loop. This isn't going to work for some cases, though I agree most of the time mobs that wander are what catch aggro from other NPCs that hate them.

I'd like to see what caveats we might run into if World checks for hate/aggro for any spawn with opposing factions set. If it puts too much overhead on World to check 500,000 spawns for possible aggro every second, then we'll have to make every spawn that pops "move" a tad when they spawn/respawn in a zone ;)

How this came up was again, watching the Defenders and Invaders on Queen's Colony. I noticed that when a defender is in-combat with a goblin invader, and another invader wanders up, that invader never attacks the guard. I thought there was a bug in Hate, but it's because the guard is not moving, and even when out of combat, has no movement loop. The guards only aggro the goblins because they are moving towards the defenders... and since Defender Bristlebrow is already in combat, he does not go "aggro" the next goblin that approaches.

Ideally, both factions hate one another so when the second, third, fourth (etc) goblin wanders up, they should be aggro'ing the defenders to instead of just continuing on their movement loop and standing there looking stupid until attacked.


So LE/Scat, how badly will this change effect World processing time, scanning for aggro opportunities?

Thanks
John Adams
EQ2Emulator - Project Ghost
"Everything should work now, except the stuff that doesn't" ~Xinux

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests