EQEmu / Server

Open Source Fan-Based EverQuest Emulator Server project
https://docs.eqemu.io/
GNU General Public License v3.0
447 stars 413 forks source link

min_expansion spawn2 field doesn't always work #2396

Closed scotty0100 closed 10 months ago

scotty0100 commented 2 years ago

I am creating a server with progression style content and limiting several NPCs spawn groups using min_expansion. This generally works fine but whilst developing I have found that it doesn't always work.

It will on occasion (I would estimate between 10-15% of the time) when spawning the zone initially ignore those rules and spawn the mobs anyway and ignore the expansion rules. If I manually #repop the zone then it kicks it back into action correctly..It is the first boot up from an idle dynamic zone.exe causing the problem. Once it's booted and repopped it will work fine again. I have not tested what will happen if I kill a mob to see if it will still use the wrong mob on the next respawn or not.

However as it stands, this will inevitably lead to my server having out of era items in error eventually.

I am using dynamic zones rather than statics. I think statics may not have the problem but can't say for certain on that.

Another potential major factor is resources of the server as I am developing on a free Amazon ec2 server for the time being which has 1CPU and 1GB memory and have definitely noticed if the zone takes a long time to start up initially then that's when it is most likely to happen. If it boots up quickly it just seems to work.

I think some more integrity checking of the spawns may be required to prevent it happening on a low resource server or a server under that's under load.

Has anyone else encountered this or just me?

scotty0100 commented 2 years ago

image

Happened again on my first zone boot up of the day after rebooting the server. Attached an image to what happens. We have Cazic Thule 1.0 mobs spawning with Cazic Thule 2.0 mobs even though expansion is set to 0 (Classic) and CT 2.0 mobs are set to min_expansion 5.

I killed both mobs to see what would respawn, just CT 1.0 mob respawned so it seems you can only kill them one time at least but still not ideal as these mobs hit for about 250 in a level 30 zone 😆

fryguy503 commented 2 years ago

I was seeing similar issues with content_flag_disabled as well.

I set a content_flag_disabled to test and with the test flag set to yes the spawn point was still processing. (Did a reload of flags and tried restarting the server).

image
mackal commented 2 years ago

I know before either of these things were added, just hitting #depopzone can result in weird spawns as well.

scotty0100 commented 2 years ago

Glad to hear it's not just me! I saw this in the pull requests https://github.com/EQEmu/Server/pull/2388

I'm wondering if this will improve/solve this problem too?

Akkadius commented 2 years ago

Spawns have really funky logic that have multiple weird edge cases that should be looked into (independent of expansion and content filtering). I’ll add this to my list but I’m pretty swamped currently so could be a few weeks. Unless someone wants to deep dive first

Akkadius commented 2 years ago

2388 is not related to this @scotty0100

joligario commented 10 months ago

Is this still an issue @scotty0100 ?

fryguy503 commented 10 months ago

I know my comment was resolved by Akkadius not long after.

Kinglykrab commented 10 months ago

Closing and can reopen if anyone sees this issue again.