Thank you very much! I will test it and let you know!

The main goal for now is avoiding server crashes. The rest, later..

At this point a lot of reasons can justify the backpack missing, like: my servuo not completely configured to allow using the enhanced client. You know, Pub57 :cool:

Thanks again!

**EDIT #1**

Ok I just remarked I have a couple of log files in my folder.. at the time of the daily restart and at 2 others I did..

I updated the code in BoxCore.cs..

Starting the server it is ok, restarting it gives this error..

Server Crash Report

ServUO Version 0.5, Build 8539.8039
Operating System: Microsoft Windows NT 6.2.9200.0
.NET Framework: 4.0.30319.42000
Time: 2023-05-22 11:24:36 AM
Mobiles: 17203
Items: 161373
System.NullReferenceException: Object reference not set to an instance of an object.
   at Server.Services.UOBlackBox.BoxCore.EventSink_Shutdown(ShutdownEventArgs e) in C:\GamingSVR\ServUO\Scripts\Services\UOBlackBox\Box\BoxCore.cs:line 142
   at Server.ShutdownEventHandler.Invoke(ShutdownEventArgs e)
   at Server.EventSink.InvokeShutdown(ShutdownEventArgs e) in C:\GamingSVR\ServUO\Server\EventSink.cs:line 2087
   at Server.Core.HandleClosed() in C:\GamingSVR\ServUO\Server\Main.cs:line 351
   at Server.Core.Kill(Boolean restart) in C:\GamingSVR\ServUO\Server\Main.cs:line 325
   at Server.Misc.ServerConsole.ProcessCommand(String input) in C:\GamingSVR\ServUO\Scripts\Misc\ConsoleCommands.cs:line 199
   at Server.Misc.ServerConsole.ProcessCommand() in C:\GamingSVR\ServUO\Scripts\Misc\ConsoleCommands.cs:line 85
   at Server.Timer.DelayCallTimer.OnTick() in C:\GamingSVR\ServUO\Server\Timer.cs:line 700
   at Server.Timer.Slice() in C:\GamingSVR\ServUO\Server\Timer.cs:line 409
   at Server.Core.Main(String[] args) in C:\GamingSVR\ServUO\Server\Main.cs:line 673

- Count: 0

I added a backpack validation at line 42 and it seems it fixed the issue..

        private static void EventSink_Shutdown(ShutdownEventArgs e)
            var players = World.Mobiles.Values.ToList().FindAll(m => m is PlayerMobile);

            for (int i = 0; i < players?.Count; i++)
                if (players[i].Backpack != null) // check for backpack
                    if (players[i].AccessLevel > StaffAccess && players[i].Backpack.FindItemByType(typeof(BlackBox)) is BlackBox box)


NOTE: I am receiving these errors only since the connection attempts with the EC client

Thinking: why is it done when no client connected

Will keep you informed for the first one!

**EDIT #2**

Fix you sent for login: same error, but at line 91 this time.. EventSink_Login().. for the same reason. EC client is true in my flie and no error on manual shutdown/restart..

Last edited:
I'll investigate further from information provided, though I will preface this with that if the enhanced client becomes a hassle, I will more than likely exclude it from the project!
that is what I was thinking.. disabling it with a client version check and I can probably investigate more later!

Thanks for your time! :)