Hey guys,

Me and my buddy are running Runuo 2.5 and i go to put xmlspawner 2.0 into the customs for the simple install method and it gives me all of these errors! Help please!

Thank you in advance!

Code:
Errors:
 + Custom Scripts/XmlSpawner Core/XmlAttach/XmlAttach.cs:
    CS0019: Line 2375: Operator '>=' cannot be applied to operands of type 'Syst
em.DateTime' and 'long'
 + Custom Scripts/XmlSpawner Core/XmlAttachments/XmlAddFaction.cs:
    CS0246: Line 86: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0103: Line 86: The name 'XmlMobFactions' does not exist in the current con
text
    CS0246: Line 89: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 89: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0103: Line 95: The name 'XmlMobFactions' does not exist in the current con
text
    CS0246: Line 98: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 101: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
    CS0246: Line 130: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
    CS0103: Line 130: The name 'XmlMobFactions' does not exist in the current co
ntext
    CS0246: Line 133: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
    CS0246: Line 133: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
    CS0103: Line 139: The name 'XmlMobFactions' does not exist in the current co
ntext
    CS0246: Line 143: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
    CS0246: Line 146: The type or namespace name 'XmlMobFactions' could not be f
ound (are you missing a using directive or an assembly reference?)
 + Custom Scripts/XmlSpawner Core/XmlAttachments/XmlAddFactionCredits.cs:
    CS0246: Line 70: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 70: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 70: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 96: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 96: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
    CS0246: Line 96: The type or namespace name 'XmlMobFactions' could not be fo
und (are you missing a using directive or an assembly reference?)
 + Custom Scripts/XmlSpawner Core/XmlPropsGumps/XmlSetGump.cs:
    CS1502: Line 271: The best overloaded method match for 'Server.Gumps.SetBody
Gump.SetBodyGump(System.Reflection.PropertyInfo, Server.Mobile, object, System.C
ollections.Generic.Stack<Server.Gumps.StackEntry>, int, System.Collections.Array
List)' has some invalid arguments
    CS1503: Line 271: Argument 4: cannot convert from 'System.Collections.Stack'
 to 'System.Collections.Generic.Stack<Server.Gumps.StackEntry>'
 
Looks like you're missing the XmlMobFactions set of files perhaps? Where did you download Xml from?
 
downloaded it from runuo website. i delete the folders causing those errors, now im getting this error code.

Code:
Errors:
 + Custom Scripts/XmlSpawner Core/XmlPropsGumps/XmlSetGump.cs:
    CS1502: Line 271: The best overloaded method match for 'Server.Gumps.SetBody
Gump.SetBodyGump(System.Reflection.PropertyInfo, Server.Mobile, object, System.C
ollections.Generic.Stack<Server.Gumps.StackEntry>, int, System.Collections.Array
List)' has some invalid arguments
    CS1503: Line 271: Argument 4: cannot convert from 'System.Collections.Stack'
 to 'System.Collections.Generic.Stack<Server.Gumps.StackEntry>'
 
I really wouldn't recommend just deleting entire folders out of a package like that. You'll likely end up with worse problems down the road.

I suggest just using the most recent full package from fwiffo off of his Git repo. Check his sig on runuo.
 
seee i got the full package but in order for me to do that i have to change alot of other codes and such. according to the installation instructions.
 
At this point it would be easier from my perspective to reinstall the entire system and just fix the errors that the full system gives you.
 
okay i redownloaded the entire package, dropped it in. and now the only error im getting is this one.

Code:
Errors:
 + Custom Scripts/XmlSpawner Core/XmlPropsGumps/XmlSetGump.cs:
    CS1502: Line 271: The best overloaded method match for 'Server.Gumps.SetBody
Gump.SetBodyGump(System.Reflection.PropertyInfo, Server.Mobile, object, System.C
ollections.Generic.Stack<Server.Gumps.StackEntry>, int, System.Collections.Array
List)' has some invalid arguments
    CS1503: Line 271: Argument 4: cannot convert from 'System.Collections.Stack'
 to 'System.Collections.Generic.Stack<Server.Gumps.StackEntry>'

Here is the file it's saying the errors from:

Code:
using System;
using System.Reflection;
using System.Collections;
using System.Collections.Generic;
using Server;
using Server.Network;
using Server.HuePickers;
using Server.Commands;
using Server.Commands.Generic;

namespace Server.Gumps
{
	public class XmlSetGump : Gump
	{
		private PropertyInfo m_Property;
		private Mobile m_Mobile;
		private object m_Object;
#if (NEWTIMERS)
		private Stack<StackEntry> m_Stack;
#else
		private Stack m_Stack;
#endif
		private int m_Page;
		private ArrayList m_List;

		public static readonly bool OldStyle = PropsConfig.OldStyle;

		public static readonly int GumpOffsetX = PropsConfig.GumpOffsetX;
		public static readonly int GumpOffsetY = PropsConfig.GumpOffsetY;

		public static readonly int TextHue = PropsConfig.TextHue;
		public static readonly int TextOffsetX = PropsConfig.TextOffsetX;

		public static readonly int OffsetGumpID = PropsConfig.OffsetGumpID;
		public static readonly int HeaderGumpID = PropsConfig.HeaderGumpID;
		public static readonly int EntryGumpID = PropsConfig.EntryGumpID;
		public static readonly int BackGumpID = PropsConfig.BackGumpID;
		public static readonly int SetGumpID = PropsConfig.SetGumpID;

		public static readonly int SetWidth = PropsConfig.SetWidth;
		public static readonly int SetOffsetX = PropsConfig.SetOffsetX, SetOffsetY = PropsConfig.SetOffsetY;
		public static readonly int SetButtonID1 = PropsConfig.SetButtonID1;
		public static readonly int SetButtonID2 = PropsConfig.SetButtonID2;

		public static readonly int PrevWidth = PropsConfig.PrevWidth;
		public static readonly int PrevOffsetX = PropsConfig.PrevOffsetX, PrevOffsetY = PropsConfig.PrevOffsetY;
		public static readonly int PrevButtonID1 = PropsConfig.PrevButtonID1;
		public static readonly int PrevButtonID2 = PropsConfig.PrevButtonID2;

		public static readonly int NextWidth = PropsConfig.NextWidth;
		public static readonly int NextOffsetX = PropsConfig.NextOffsetX, NextOffsetY = PropsConfig.NextOffsetY;
		public static readonly int NextButtonID1 = PropsConfig.NextButtonID1;
		public static readonly int NextButtonID2 = PropsConfig.NextButtonID2;

		public static readonly int OffsetSize = PropsConfig.OffsetSize;

		public static readonly int EntryHeight = PropsConfig.EntryHeight;
		public static readonly int BorderSize = PropsConfig.BorderSize;

		private static readonly int EntryWidth = 212;

		private static readonly int TotalWidth = OffsetSize + EntryWidth + OffsetSize + SetWidth + OffsetSize;
		private static readonly int TotalHeight = OffsetSize + (2 * (EntryHeight + OffsetSize));

		private static readonly int BackWidth = BorderSize + TotalWidth + BorderSize;
		private static readonly int BackHeight = BorderSize + TotalHeight + BorderSize;

#if (NEWTIMERS)
		public XmlSetGump( PropertyInfo prop, Mobile mobile, object o, Stack<StackEntry> stack, int page, ArrayList list ) : base( GumpOffsetX, GumpOffsetY )
#else
		public XmlSetGump( PropertyInfo prop, Mobile mobile, object o, Stack stack, int page, ArrayList list ) : base( GumpOffsetX, GumpOffsetY )
#endif
		{
			m_Property = prop;
			m_Mobile = mobile;
			m_Object = o;
			m_Stack = stack;
			m_Page = page;
			m_List = list;

			bool canNull = !prop.PropertyType.IsValueType;
			bool canDye = prop.IsDefined( typeof( HueAttribute ), false );
			bool isBody = prop.IsDefined( typeof( BodyAttribute ), false );

            int xextend = 0;
			if(prop.PropertyType == typeof(string))
			{
			     xextend = 300;
			}

			object val = prop.GetValue( m_Object, null );
			string initialText;

			if ( val == null )
				initialText = "";
			else
				initialText = val.ToString();

			AddPage( 0 );

			AddBackground( 0, 0, BackWidth+xextend, BackHeight + (canNull ? (EntryHeight + OffsetSize) : 0) + (canDye ? (EntryHeight + OffsetSize) : 0) + (isBody ? (EntryHeight + OffsetSize) : 0), BackGumpID );
			AddImageTiled( BorderSize, BorderSize, TotalWidth+xextend - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight + (canNull ? (EntryHeight + OffsetSize) : 0) + (canDye ? (EntryHeight + OffsetSize) : 0) + (isBody ? (EntryHeight + OffsetSize) : 0), OffsetGumpID );

			int x = BorderSize + OffsetSize;
			int y = BorderSize + OffsetSize;

			AddImageTiled( x, y, EntryWidth+xextend, EntryHeight, EntryGumpID );
			AddLabelCropped( x + TextOffsetX, y, EntryWidth+xextend - TextOffsetX, EntryHeight, TextHue, prop.Name );
			x += EntryWidth+xextend + OffsetSize;

			if ( SetGumpID != 0 )
				AddImageTiled( x, y, SetWidth, EntryHeight, SetGumpID );

			x = BorderSize + OffsetSize;
			y += EntryHeight + OffsetSize;

			AddImageTiled( x, y, EntryWidth+xextend, EntryHeight, EntryGumpID );
			AddTextEntry( x + TextOffsetX, y, EntryWidth+xextend - TextOffsetX, EntryHeight, TextHue, 0, initialText );
			x += EntryWidth+xextend + OffsetSize;

			if ( SetGumpID != 0 )
				AddImageTiled( x, y, SetWidth, EntryHeight, SetGumpID );

			AddButton( x + SetOffsetX, y + SetOffsetY, SetButtonID1, SetButtonID2, 1, GumpButtonType.Reply, 0 );

			if ( canNull )
			{
				x = BorderSize + OffsetSize;
				y += EntryHeight + OffsetSize;

				AddImageTiled( x, y, EntryWidth+xextend, EntryHeight, EntryGumpID );
				AddLabelCropped( x + TextOffsetX, y, EntryWidth+xextend - TextOffsetX, EntryHeight, TextHue, "Null" );
				x += EntryWidth+xextend + OffsetSize;

				if ( SetGumpID != 0 )
					AddImageTiled( x, y, SetWidth, EntryHeight, SetGumpID );

				AddButton( x + SetOffsetX, y + SetOffsetY, SetButtonID1, SetButtonID2, 2, GumpButtonType.Reply, 0 );
			}

			if ( canDye )
			{
				x = BorderSize + OffsetSize;
				y += EntryHeight + OffsetSize;

				AddImageTiled( x, y, EntryWidth+xextend, EntryHeight, EntryGumpID );
				AddLabelCropped( x + TextOffsetX, y, EntryWidth+xextend - TextOffsetX, EntryHeight, TextHue, "Hue Picker" );
				x += EntryWidth+xextend + OffsetSize;

				if ( SetGumpID != 0 )
					AddImageTiled( x, y, SetWidth, EntryHeight, SetGumpID );

				AddButton( x + SetOffsetX, y + SetOffsetY, SetButtonID1, SetButtonID2, 3, GumpButtonType.Reply, 0 );
			}

			if ( isBody )
			{
				x = BorderSize + OffsetSize;
				y += EntryHeight + OffsetSize;

				AddImageTiled( x, y, EntryWidth+xextend, EntryHeight, EntryGumpID );
				AddLabelCropped( x + TextOffsetX, y, EntryWidth+xextend - TextOffsetX, EntryHeight, TextHue, "Body Picker" );
				x += EntryWidth+xextend + OffsetSize;

				if ( SetGumpID != 0 )
					AddImageTiled( x, y, SetWidth, EntryHeight, SetGumpID );

				AddButton( x + SetOffsetX, y + SetOffsetY, SetButtonID1, SetButtonID2, 4, GumpButtonType.Reply, 0 );
			}
		}

		private class InternalPicker : HuePicker
		{
			private PropertyInfo m_Property;
			private Mobile m_Mobile;
			private object m_Object;
#if (NEWTIMERS)
			private Stack<StackEntry> m_Stack;
#else
			private Stack m_Stack;
#endif
			private int m_Page;
			private ArrayList m_List;

#if (NEWTIMERS)
			public InternalPicker( PropertyInfo prop, Mobile mobile, object o, Stack<StackEntry> stack, int page, ArrayList list ) : base( ((IHued)o).HuedItemID )
#else
			public InternalPicker( PropertyInfo prop, Mobile mobile, object o, Stack stack, int page, ArrayList list ) : base( ((IHued)o).HuedItemID )
#endif
			{
				m_Property = prop;
				m_Mobile = mobile;
				m_Object = o;
				m_Stack = stack;
				m_Page = page;
				m_List = list;
			}

			public override void OnResponse( int hue )
			{
				try
				{
					CommandLogging.LogChangeProperty( m_Mobile, m_Object, m_Property.Name, hue.ToString() );
					m_Property.SetValue( m_Object, hue, null );
				}
				catch
				{
					m_Mobile.SendMessage( "An exception was caught. The property may not have changed." );
				}

				m_Mobile.SendGump( new XmlPropertiesGump( m_Mobile, m_Object, m_Stack, m_List, m_Page ) );
			}
		}

		public override void OnResponse( NetState sender, RelayInfo info )
		{
			object toSet;
			bool shouldSet, shouldSend = true;

			switch ( info.ButtonID )
			{
				case 1:
				{
					TextRelay text = info.GetTextEntry( 0 );

					if ( text != null )
					{
						try
						{
							toSet = XmlPropertiesGump.GetObjectFromString( m_Property.PropertyType, text.Text );
							shouldSet = true;
						}
						catch
						{
							toSet = null;
							shouldSet = false;
							m_Mobile.SendMessage( "Bad format" );
						}
					}
					else
					{
						toSet = null;
						shouldSet = false;
					}

					break;
				}
				case 2: // Null
				{
					toSet = null;
					shouldSet = true;

					break;
				}
				case 3: // Hue Picker
				{
					toSet = null;
					shouldSet = false;
					shouldSend = false;

					m_Mobile.SendHuePicker( new InternalPicker( m_Property, m_Mobile, m_Object, m_Stack, m_Page, m_List ) );

					break;
				}
				case 4: // Body Picker
				{
					toSet = null;
					shouldSet = false;
					shouldSend = false;

					m_Mobile.SendGump( new SetBodyGump( m_Property, m_Mobile, m_Object, m_Stack, m_Page, m_List ) );

					break;
				}
				default:
				{
					toSet = null;
					shouldSet = false;

					break;
				}
			}

			if ( shouldSet )
			{
				try
				{
					CommandLogging.LogChangeProperty( m_Mobile, m_Object, m_Property.Name, toSet==null?"(null)":toSet.ToString() );
					m_Property.SetValue( m_Object, toSet, null );
				}
				catch
				{
					m_Mobile.SendMessage( "An exception was caught. The property may not have changed." );
				}
			}

			if ( shouldSend )
				m_Mobile.SendGump( new XmlPropertiesGump( m_Mobile, m_Object, m_Stack, m_List, m_Page ) );
		}
	}
}
 
Looks like for some reason it's reading the first variable here...

Code:
#if (NEWTIMERS)
            private Stack<StackEntry> m_Stack;
#else
            private Stack m_Stack;
#endif

...instead of the second. The SetBodyGump it's trying to access in the SetBodyGump.cs file doesn't accept the "Stack<StackEntry>" argument.
 
Incidentally, I have no idea what (NEWTIMERS) even is or how it's defined, as in my files all I find when searching it is more if/else's for it. Afraid I can't help much more with this.

Theoretically you could comment out the if/else only leaving the variable you need. Not sure if that would break anything else down the road though.

@Lokai or @dmurphy, any ideas?
 
Fwiffo seems to suggest:

He is using RunUO 2.5 from mark sturgil, but doesn't know of the core mods that were done inside here.

The core needs to be recompiled with the option /D:NEWTIMERS if it's using my release of xmlspawner...

just look at the attached file and eventually replace your file and recompile the server.
 
yeah see i saw that post but im totally lost where to even look to change that or anything. idk how to do that.
 
Open the file he attached to that post he made, and search "NEWTIMERS". You should see where to add the option..
 
Back