Reload Spawnscripts

Old bugs stored here for reference.
Locked
User avatar
thefoof
Retired
Posts: 630
Joined: Wed Nov 07, 2012 7:36 pm
Location: Florida

Reload Spawnscripts

Post by thefoof » Wed Jul 24, 2013 7:41 pm

Something I've been noticing with reload spawns lately is occasionally when trying to use it, the server (or zoneserver) will lock up. You don't get kicked but the server never reloads the spawns and if you log out the game will tell you, you have a character in the world when you try to log in.

I've only ever noticed this on DB Project but that's where I spend most of my time on the emu. One thing maybe worth noting is this usually happens after a reload spawnscripts but I almost always use that before a /reload spawns so not sure that signifies anything.

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:

Re: Reload Spawns

Post by John Adams » Thu Jul 25, 2013 9:30 am

Next time you're in Dev, try reloading spawns without the scripts. Jab did fix some stuff with reload spawns a while back, and I never noticed a problem. Also keep in mind a lot of functionality has been added to spawns during the Frostfang content dev, so it's possible something new could be getting deadlocked on the unload or reload.

If you can get this to happen on your local server, you might be able to step into the code and trap it.

User avatar
thefoof
Retired
Posts: 630
Joined: Wed Nov 07, 2012 7:36 pm
Location: Florida

Re: Reload Spawnscripts

Post by thefoof » Thu Sep 05, 2013 6:58 pm

I've ran into this a couple more times lately since I've been in-game more and it's definitely related to reload spawnscripts. Haven't gotten it to happen in debug yet and it's fairly rare so I'll try to run in debug (oh how I hate slow compiles ;)) and figure out what's going wrong.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: Reload Spawnscripts

Post by Jabantiz » Sun Sep 15, 2013 1:13 pm

Committed a possible fix to this issue, looks like spawns could still make calls to spawn scripts while it was in the process of reloading, if timing is just right it had the potential to lock up the spawn loop of the zone server basically killing it, client loop (different thread) was not effected allowing the player to still do commands not related to spawns (chat, /who) and not being kicked as communication is still going on between the server and client.

I added a bool to lua_interface that gets set to true when a reload starts, and false when every thing is done, as long as the bool is true spawns can not call their spawn scripts, this seems to have solved the problem, at least I have not encountered it again after the changes

Locked

Who is online

Users browsing this forum: No registered users and 0 guests