RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

World Load Error - PricedHealer

Orbit Storm

Sorceror
For starters, this error seemed to occur only after implementing Tresdni's "Completely Automated Staff Team". The system works perfectly fine in-game, but once saving the world and attempting a subsequent restart, I receive the following error:

Code:
World: Loading...An error was encountered while loading a saved object
 - Type: Server.Mobiles.PricedHealer
 - Serial: 0x00000002
Delete the object? (y/n)

I utilized the updates to Tresdni's system, provided by Sythen.

Completely Automated Staff Team! - Oh yes, I did.

Thankfully I have a spare backup, and can simply reload it; but alas, that's pointless as I'm unable to save the world.

I've only found 3 search results for this error, and all 3 infer that there is a serialization/de-serialization issue, and to me knowledge, I've merged all scripts seamlessly with WinMerge.

Any help, would be greatly appreciated. :)
 

JamzeMcC

Squire
There were some issues with that script and de/serialize Took some time before I got my issues figured out. Post your Playermobile.cs (Or could just post the serialize/deserialize section) and we'll look it over.
 

Orbit Storm

Sorceror
Playermobile.cs is attached (too big to copy/paste).

I'm currently looking over BaseVendor.cs again, using WinMerge to compare my current copy to a fresh copy from the Automated Staff system.
 

Attachments

  • PlayerMobile.cs
    172.4 KB · Views: 3

JamzeMcC

Squire
This is your Deserialize:
Code:
                #region Shadows Edge - Automated Server Staff
 
                case 34:
                    {
                        m_PromoGiftLast = reader.ReadDateTime();
                        goto case 33;
                    }
                           
                case 33:
                    {
                        m_LastTimePaged = reader.ReadDateTime();
                        goto case 32;
                    }
 
                #endregion Edited By: A.A.R
 
#region Guantlet Points
                case 32:
                    {
                        m_GauntletPoints = reader.ReadDouble();
 
                        goto case 31;
                    }
                #endregion
 
#region Shadows Edge - Automated Server Staff
This is your Serialize:
Code:
            #region Removed For This Script Edit
            /*
            writer.Write((int)30); // version
            writer.Write((int)29); // version
            */
            #endregion Edited By: A.A.R
 
#endregion Edited By: A.A.R
 
            base.Serialize(writer);
 
            writer.Write((int)32); // version

That number in serialize should match your Deserialize cases. So, should be 34. Then anything you added to Deserialize, should go under serialze in the exact order you have it in deserialize. Just change it to 34 and try a save restart. The rest looks ok at quick glance
 

Orbit Storm

Sorceror
Ah, didn't catch that.

I did make an adjustment in BaseVendor - turns out the "2" in the code below,

Code:
writer.Write( (int)2 ); // version

was actually a 1. Something I somehow missed. The server loaded up fine, and I did a test Shutdown w/ Restart (with Save) to be sure. So are we 100% certain the Playermobile edit is required? Not saying you're wrong, just don't want to make unnecessary edits. =)
 

JamzeMcC

Squire
As far as your serialize and deserialize, yes, its completely necessary. If you dont fix it, it will never save right or load right, which ever is the case. Any time you add a new write to it the save, you must add it to the load section and vice versa.
 

Orbit Storm

Sorceror
Turns out I'm getting that exact same error again:

Code:
World: Loading...An error was encountered while loading a saved object
     - Type: Server.Mobiles.PlayerMobile
     - Serial: 0x00000001
Delete the object? (y/n)

I haven't made many adjustments (only the ones provided by another poster, to implement the FS:ATS system). The only noticeable change, is that the region for Gauntlet Points was moved below the FS:ATS region; which should not be an issue, as FS:ATS is Case 34 and 33, and Gauntlet Points is Case 32. So the adjustment should actually be beneficial, not harmful.

Here's my updated PlayerMobile.cs just in case.
 

Attachments

  • PlayerMobile.cs
    173.4 KB · Views: 3

Orbit Storm

Sorceror
Did a full revert to last night's world save (prior to today's FS:ATS adjustments of course), and am still getting the same error, after a shutdown w/ restart (with save). I can load the world just fine, but once I save it and restart, this error pops.

I've uploaded a copy of the original PlayerMobile (fresh install), with NO modifications.

Aside from the merging of the FS:ATS and the tidbit for Automated Staff, there are NO differences. This is beyond frustrating, because the server is throwing an error at me for a script that couldn't possibly be the problem.
 

Attachments

  • PlayerMobile.cs
    167.6 KB · Views: 2

JamzeMcC

Squire
ok... Looking at the first one you posted... I see the issue. You still have the serialize issue there. This time, you dont have any Serialize info for the Automated system but you DO on the Deserialize. The second one, at quick glance, looks like it should work if youve taken out the automated system. Wow... I actually just looked at the first one you posted. You dont have the Automated system Serialized there either... Ill attach one that I added the serialize in. Try this and let me know what happens.
 

Attachments

  • PlayerMobile (1).cs
    173.3 KB · Views: 2

Orbit Storm

Sorceror
Just tested it on my most recent save, and a save from last night; nada. I just get PricedHealer tossed at me now.

Just to note, the only edits made to PlayerMobile were for the Automated Staff Team (Sythen's edition of it), and FS:ATS Animal Taming Gen2. I did comment out the Queen's Loyalty System (only because I hate the silly sub-title that appears when mousing over your character).
 

JamzeMcC

Squire
whats this pricedhealer? wait, nevermind lol its tryin to delete it. its still a save issue... Now to find where. Lol
 

Orbit Storm

Sorceror
The PricedHealer error is identical to the PlayerMobile error, except for it being PricedHealer and the serial ending in a 2 instead of a 1.

It's location, is Scripts\Mobiles\Healers\PricedHealer.cs

I uploaded a copy if it's needed.
 

Attachments

  • PricedHealer.cs
    1.5 KB · Views: 2

JamzeMcC

Squire
Try this, just for kicks. Take your saves folder out. Run RunUO and create new acct info. Creat a test character and call the GM's. Save and shut down then reload. In order to reload this without the issues, I had to go back to a save before I even loaded this on to the server. I jsut want to see if we have the PM right
 

Orbit Storm

Sorceror
Followed those steps. Created the new account, pressed Help, tested one of the keyword functions (livesupport), saved, shutdown and restarted. Then this:

Code:
World: Loading...An error was encountered while loading a saved object
 - Type: Server.Mobiles.GameMaster_GM
 - Serial: 0x00000002
 

JamzeMcC

Squire
Yes, that script is correct. Repost your PlayerMobile.cs (the most updated version) please... Theres still gotta be an error somewhere.
 
Top