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!

[RunUO 2.0 RC1] Lucid's <<_Advanced Archery_>>

I prolly need to go back and fix the code a bit, but let's put it this way....
Should you be selecting the ammo before the bow has a string on it? Might wanna double-click the bow and target a bow stringer first. No string = worthless bow.

TalRave;656655 said:
OKay, I just fixed the no-firing bows, but still I have to use [props to set changes (ex: bowstrings, gears, arrow use) to my bows.

I double click a bow, then click an arrow as it tells me. It says "A module is being created for you, please wait." and nothing happens. at all, even after waiting up to an hour. Anything is selectable, not just arrows, but they all say the same module message. I get this line in the server window each time:



(edit: thanks for the quick response, btw, )
 

TalRave

Wanderer
Lucid Nagual;656657 said:
I prolly need to go back and fix the code a bit, but let's put it this way....
Should you be selecting the ammo before the bow has a string on it? Might wanna double-click the bow and target a bow stringer first. No string = worthless bow.

So... even random bows across the world need to be strung first? Any suggestions on how I make them accessable to players?


And, to that matter, I did try stringing the bow when it asked for arrows, just to check that part... and it gave the exact same module message.

First I used a bought bow, then a crafted one, and then used [add.. all three were the same.
 
Sorry if I missed a fix for this elsewhere in the thread, but I'm getting these errors.

I'm working on a near clean install, the only things I have installed currently are the latest XmlSpawner and XmlCustomAttacks_20_v103.

Code:
RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiing C# scripts...failed (1 errors, 1 warnings)
Warnings:
 + Customs/Advanced Archery v301c/Quivers/BaseQuiver.cs:
     CS0162: Line 73: Unreachable code detected
     CS0162: Line 114: Unreachable code detected
     CS0162: Line 155: Unreachable code detected
     CS0162: Line 222: Unreachable code detected
     CS0162: Line 240: Unreachable code detected
Errors:
 + Customs/Advanced Archery v301c/Lucid's Core v1a/[Lucid's] Modules/[Advanced Archery]PlayerModule.cs:
     CS0103: Line 718: The name 'm_BOBFilter' does not exist in the current context
     CS0103: Line 719: The name 'm_TinkBOBFilter' does not exist in the current context
     CS0103: Line 718: The name 'm_TamingBOBFilter' does not exist in the current context
Scripts: One or more scripts failed to compile or no script files were found. 
 - Press return to exit, or R to try again.

Thanks for your all hard work on this system.



Edit* I commented out the mentioned lines in the error and it compiled but I'm getting the module is being created for me message. :/
 
MightyHythloth;656870 said:
Sorry if I missed a fix for this elsewhere in the thread, but I'm getting these errors.

I'm working on a near clean install, the only things I have installed currently are the latest XmlSpawner and XmlCustomAttacks_20_v103.

Code:
RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiing C# scripts...failed (1 errors, 1 warnings)
Warnings:
 + Customs/Advanced Archery v301c/Quivers/BaseQuiver.cs:
     CS0162: Line 73: Unreachable code detected
     CS0162: Line 114: Unreachable code detected
     CS0162: Line 155: Unreachable code detected
     CS0162: Line 222: Unreachable code detected
     CS0162: Line 240: Unreachable code detected
Errors:
 + Customs/Advanced Archery v301c/Lucid's Core v1a/[Lucid's] Modules/[Advanced Archery]PlayerModule.cs:
     CS0103: Line 718: The name 'm_BOBFilter' does not exist in the current context
     CS0103: Line 719: The name 'm_TinkBOBFilter' does not exist in the current context
     CS0103: Line 718: The name 'm_TamingBOBFilter' does not exist in the current context
Scripts: One or more scripts failed to compile or no script files were found. 
 - Press return to exit, or R to try again.

Thanks for your all hard work on this system.



Edit* I commented out the mentioned lines in the error and it compiled but I'm getting the module is being created for me message. :/

Please download the new core files and let me know if the problem goes away.
 

TalRave

Wanderer
After a server restart things seem to be working well... But I still had a few questions, if you don't mind.

1) How do these gears work? Like, how would one go about applying one to a bow?

2) How can I change the skills needed to string bows? I find it a little ackward that one has to be GM skilled to string a bow with the weakest of strings, and due to this, I've had to personally go around re-stringing everyone's bow myself.
 
TalRave;658242 said:
After a server restart things seem to be working well... But I still had a few questions, if you don't mind.

1) How do these gears work? Like, how would one go about applying one to a bow?

2) How can I change the skills needed to string bows? I find it a little ackward that one has to be GM skilled to string a bow with the weakest of strings, and due to this, I've had to personally go around re-stringing everyone's bow myself.


The gears have not been added. So far they are usless items.

The skill I have chosen is Fletcher to try and give players even more of a reason to be a Fletcher. Makes being a Fletcher more profitable. If you have a small playerbase then I would suggest making the Fletcher Vendor gives the services at a cost.
 

TalRave

Wanderer
Okay, I figured the gears hadn't been implimented, just had to ask.
I added the first two strings to the vendor, making the others craftable.

Great script though, so far the players seem to love it as soon as I got it working.
 
TalRave;658400 said:
Okay, I figured the gears hadn't been implimented, just had to ask.
I added the first two strings to the vendor, making the others craftable.

Great script though, so far the players seem to love it as soon as I got it working.

Thank you.
I would make the Angel Hair strings hard to get since they are indestructable :)
 
The Scoop:

OK I have redone a lot of code. The current release is being tested right now. I am hoping to release the new version by this weekend. If anyone is interested I can post the code and and volunteers can help test it for me. Thanks for your patience!!!
 
Update:

OK here is the beta version of the new release. Please report any issues that you have. Once we find out it works I will update the system in the first post. THX!

BTW: I have added a pair of Fletcher's Scissors to cut bow strings with. Oh yeah and I prolly need to change the sound for it.

Edit: Download has been removed.
 

chocomog

Wanderer
does not contain a definition

Errors:
+ Customes/[2.0]Lucid Nagual's Advanced Archery Beta2/SaveBaseRangedInfo.cs:
CS0117: Line 86: 'Server.Items.BaseRanged' does not contain a definition for
'm_HasBowString'
CS0117: Line 87: 'Server.Items.BaseRanged' does not contain a definition for
'm_HasBowString'
CS0117: Line 92: 'Server.Items.BaseRanged' does not contain a definition for
'm_Module'
CS0117: Line 96: 'Server.Items.BaseRanged' does not contain a definition for
'CheckStringCondition'
Code:
			foreach ( BaseRanged ranged in m_BaseRanged )
			{
				CentralMemory.AppendModule( ranged.Serial, new BaseRangedModule( ranged.Serial ), true );
				BaseRangedModule module = ( BaseRangedModule )CentralMemory.GetModule( ranged.Serial, typeof( BaseRangedModule ) );
				
				if ( ranged.[COLOR="Red"]m_HasBowString [/COLOR]== true && ranged.StringStrengthSelection == StringStrength.NoString )
					ranged.[COLOR="Red"]m_HasBowString [/COLOR]= false;
				
				if ( module != null )
				{
					//m_This = ranged;
					ranged.[COLOR="Red"]m_Module [/COLOR]= module;
					module.m_Ranged = ranged;
					module.m_Serial = ranged.Serial;
					
					ranged.[COLOR="Red"]CheckStringCondition[/COLOR]( from );
				}
				else
					return;
			}
I have tried this with the new and old files the new ones posted above give this error. did I forget to update sometihing.. I did have some issues with some but I found those errors and removed the respected problem. I had a dup from the bacaws easy lvl system that was tossing out a few errors. these are the last ones I get from your last beta zip.
Thank you for your contribution.
Follows is the base ranged that the abopve error says has no definition to the above save info.
Code:
using System;
using Server.Items;
using Server.Network;
using Server.Spells;
using Server.Mobiles;
using Server.Targeting;
using System.Collections;
using Server.Enums;
using Server.ACC.CM;
using Server.LucidNagual;


namespace Server.Items
{
	public abstract class BaseRanged : BaseMeleeWeapon
	{
		//--<<Advanced Archery Edit>>---------------------[Start 1/4]
		//SkillModule edit.
		private BaseRangedModule m_BaseRangedModule;
		
		[CommandProperty( AccessLevel.GameMaster )]
		public BaseRangedModule BaseRangedModule
		{
			get
			{
				BaseRangedModule existingModule = ( BaseRangedModule )CentralMemory.GetModule( this.Serial, typeof( BaseRangedModule ) );
				
				if ( existingModule == null )
				{
					CentralMemory.Flush();
					
					BaseRangedModule module = new BaseRangedModule( this.Serial );
					CentralMemory.AppendModule( this.Serial, module, true );
					
					return ( m_BaseRangedModule = module as BaseRangedModule );
				}
				else
				{
					if ( m_BaseRangedModule != null )
						return m_BaseRangedModule;
					
					return ( m_BaseRangedModule = existingModule as BaseRangedModule );
				}
			}
		}
		//SkillModule edit.
		
		public static int PlayerFreezeTimer = 2; 
		public static int NPCFreezeTimer = 2; 		
		
		public BoltType m_BoltType;
		public ArrowType m_ArrowType;
		public StringStrength m_Strength;
		public PoundsPerPull m_PullWeight;
		
		[CommandProperty(AccessLevel.GameMaster)]
		public ArrowType ArrowSelection	{ get { return m_BaseRangedModule.ArrowSelection; } set { m_BaseRangedModule.ArrowSelection = value; } }
		
		[CommandProperty(AccessLevel.GameMaster)]
		public BoltType BoltSelection { get { return m_BaseRangedModule.BoltSelection; } set { m_BaseRangedModule.BoltSelection = value; } }
		
		[CommandProperty(AccessLevel.GameMaster)]
		public StringStrength StringStrengthSelection { get { return m_BaseRangedModule.StringStrengthSelection; } set { m_BaseRangedModule.StringStrengthSelection = value; } }
		
		[CommandProperty(AccessLevel.GameMaster)]
		public PoundsPerPull PullWeightSelection { get { return m_BaseRangedModule.PullWeightSelection; } set { m_BaseRangedModule.PullWeightSelection = value; } }
		
		[CommandProperty( AccessLevel.GameMaster )]
		public bool HasBowString { get{ return m_BaseRangedModule.HasBowString; } set{ m_BaseRangedModule.HasBowString = value; } }		
		
		private static Mobile m_Mobile;
		private static BaseRanged BRanged;
		
		public static TimeSpan StringWarningDelay = TimeSpan.FromSeconds( 10.0 );
		public static DateTime m_NextStringWarning;
		public static TimeSpan AmmoWarningDelay = TimeSpan.FromSeconds( 10.0 );
		public static DateTime m_NextAmmoWarning;
		
		public static readonly TimeSpan PlayerFreezeDuration = TimeSpan.FromSeconds( 3.0 );
		public static readonly TimeSpan NPCFreezeDuration = TimeSpan.FromSeconds( 6.0 );
		//--<<Advanced Archery Edit>>---------------------[End 1/4]
		
		public abstract int EffectID{ get; }
		public abstract Type AmmoType{ get; }
		public abstract Item Ammo{ get; }
		
		public override int DefHitSound{ get{ return 0x234; } }
		public override int DefMissSound{ get{ return 0x238; } }
		
		public override SkillName DefSkill{ get{ return SkillName.Archery; } }
		public override WeaponType DefType{ get{ return WeaponType.Ranged; } }
		public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.ShootXBow; } }
		
		public override SkillName AccuracySkill{ get{ return SkillName.Archery; } }
		
		public BaseRanged( int itemID ) : base( itemID )
		{
		}
		
		public BaseRanged( Serial serial ) : base( serial )
		{
			BRanged = this;
		}
		
		public static void Initialize()
		{
			Mobile from = m_Mobile;
			//Mobile m = (Mobile)parent;
			//BaseWeapon weapon = m.Weapon as BaseWeapon;
		}
		
		public override TimeSpan OnSwing( Mobile attacker, Mobile defender )
		{
			WeaponAbility a = WeaponAbility.GetCurrentAbility( attacker );
			
			// Make sure we've been standing still for .25/.5/1 second depending on Era
			if ( DateTime.Now > ( attacker.LastMoveTime + TimeSpan.FromSeconds( Core.SE ? 0.25 : (Core.AOS ? 0.5 : 1.0) )) || (Core.AOS && WeaponAbility.GetCurrentAbility( attacker ) is MovingShot) )
			{
				bool canSwing = true;
				
				if ( Core.AOS )
				{
					canSwing = ( !attacker.Paralyzed && !attacker.Frozen );
					
					if ( canSwing )
					{
						Spell sp = attacker.Spell as Spell;
						
						canSwing = ( sp == null || !sp.IsCasting || !sp.BlocksMovement );
					}
				}
				
				if ( canSwing && attacker.HarmfulCheck( defender ) )
				{
					attacker.DisruptiveAction();
					attacker.Send( new Swing( 0, attacker, defender ) );
					
					if ( OnFired( attacker, defender ) )
					{
						if ( CheckHit( attacker, defender ) )
							OnHit( attacker, defender );
						else
							OnMiss( attacker, defender );
					}
				}
				
				attacker.RevealingAction();
				
				return GetDelay( attacker );
			}
			else
			{
				attacker.RevealingAction();
				
				return TimeSpan.FromSeconds( 0.25 );
			}
		}
		
		public override void OnHit( Mobile attacker, Mobile defender )
		{
			//--<<Advanced Archery Edit>>---------------------[Start 2/4]
			if ( attacker == null || defender == null )
				return;
			
			MoreBaseRanged.CustomAmmoCheck( attacker, defender, AmmoType );
			
			if ( Ammo == null )
				attacker.SendMessage( "You are out of arrows, or may have to choose a different type of arrow by double clicking the bow." );
			//--<<Advanced Archery Edit>>---------------------[End 2/4]
			
			if ( attacker.Player && !defender.Player && ( defender.Body.IsAnimal || defender.Body.IsMonster ) && 0.4 >= Utility.RandomDouble() )
				defender.AddToBackpack( Ammo );
			
			base.OnHit( attacker, defender );
		}
		
		public override void OnMiss( Mobile attacker, Mobile defender )
		{
			if ( attacker.Player && 0.4 >= Utility.RandomDouble() )
				Ammo.MoveToWorld( new Point3D( defender.X + Utility.RandomMinMax( -1, 1 ), defender.Y + Utility.RandomMinMax( -1, 1 ), defender.Z ), defender.Map );
			
			base.OnMiss( attacker, defender );
		}
		
		public virtual bool OnFired( Mobile attacker, Mobile defender )
		{
			//--<<Advanced Archery Edit>>---------------------[Start 3/4]
			PlayerMobile a_pm = attacker as PlayerMobile;
			Container pack = attacker.Backpack;
			BaseQuiver quiver = attacker.FindItemOnLayer( Layer.MiddleTorso ) as BaseQuiver;
			//Container quiver = ( BaseQuiver )a_pm.Quiver;
			BaseRangedModule module = this.BaseRangedModule;

			if ( !module.HasBowString )
			{
				if ( DateTime.Now >= m_NextStringWarning )
				{
					m_NextStringWarning = DateTime.Now + StringWarningDelay;
					attacker.SendMessage( "You need a string to use this bow. See a local fletcher to apply the string." );
					return false;
				}
				else
					return false;
			}
			
			if ( Ammo == null )
			{
				if ( DateTime.Now >= m_NextAmmoWarning )
				{
					m_NextAmmoWarning = DateTime.Now + AmmoWarningDelay;
					attacker.SendMessage( "You are out of ammo." );
					return false;
				}
				else
					return false;
			}
			
			if( attacker.Player && quiver != null && quiver.LowerAmmoCost > Utility.Random( 100 ) )
			{
				attacker.MovingEffect( defender, EffectID, 18, 1, false, false );
				return true;
			}
			
			if( attacker.Player &&
			   ( quiver == null || !quiver.ConsumeTotal( AmmoType, 1 ) ) &&
			   (   pack == null ||   !pack.ConsumeTotal( AmmoType, 1 ) ) )
				return false;
			
			attacker.MovingEffect( defender, EffectID, 18, 1, false, false );
			return true;
			//--<<Advanced Archery Edit>>---------------------[End 3/4]
		}
		
		//--<<Advanced Archery Edit>>---------------------[Start 4/4]
		public override void OnDoubleClick( Mobile from )
		{
			BaseRangedModule module = this.BaseRangedModule;
			
			if ( IsChildOf( from.Backpack ) || Parent == from )
			{
				if ( module.HasBowString )
				{
					if ( this is Bow || this is CompositeBow || this is ElvenCompositeLongbow ||
					    this is MagicalShortbow || this is Yumi )
					{
						from.SendMessage( "Please choose which type of arrows you wish to use." );
						from.Target = new BowTarget( this );
					}
					
					if ( this is Crossbow || this is HeavyCrossbow || this is RepeatingCrossbow )
					{
						from.SendMessage( "Please choose which type of bolts you wish to use." );
						from.Target = new CrossbowTarget( this );
					}
				}
				else
				{
					from.SendMessage( "You must string your bow. Please select a bow stringer." );
					from.Target = new StringerTarget( this );
				}
			}
			
			else
				return;
		}
		
		/*		public override void OnDelete()
		{
			BaseRangedModule module = ( BaseRangedModule )CentralMemory.GetModule( BRanged.Serial, typeof( BaseRangedModule ) );
			
			if ( module != null )
			{
				module.Delete();
			}
			
			base.OnDelete();
		}*/
		
		public override bool OnEquip( Mobile from )
		{
			m_Mobile = from;
			
			return true;
		}
		
		public override bool CanEquip( Mobile from )
		{
			BaseRangedModule module = this.BaseRangedModule;

			if ( from != null && !module.HasBowString )
			{
				from.SendMessage( "You cannot use that without a string." );
				return false;
			}
			
			base.CanEquip( from );
			
			return true;
		}
		
		public virtual Item AmmoArrowSelected()
		{
			BaseRangedModule module = this.BaseRangedModule;
			
			switch ( module.m_ArrowType )
			{
				case ArrowType.Normal:
					return new Arrow();
				case ArrowType.Poison:
					return new PoisonArrow();
				case ArrowType.Explosive:
					return new ExplosiveArrow();
				case ArrowType.ArmorPiercing:
					return new ArmorPiercingArrow();
				case ArrowType.Freeze:
					return new FreezeArrow();
				case ArrowType.Lightning:
					return new LightningArrow();
					
				default:
					return new Arrow();
			}
		}
		
		public virtual Type GetArrowSelected()
		{
			BaseRangedModule module = this.BaseRangedModule;
			
			switch ( module.m_ArrowType )
			{
				case ArrowType.Normal:
					return typeof( Arrow );
				case ArrowType.Poison:
					return typeof( PoisonArrow );
				case ArrowType.Explosive:
					return typeof( ExplosiveArrow );
				case ArrowType.ArmorPiercing:
					return typeof( ArmorPiercingArrow );
				case ArrowType.Freeze:
					return typeof( FreezeArrow );
				case ArrowType.Lightning:
					return typeof( LightningArrow );
					
				default:
					return typeof( Arrow );
			}
		}
		
		public virtual Item AmmoBoltSelected()
		{
			BaseRangedModule module = this.BaseRangedModule;
			
			switch ( module.m_BoltType )
			{
				case BoltType.Normal:
					return new Bolt();
				case BoltType.Poison:
					return new PoisonBolt();
				case BoltType.Explosive:
					return new ExplosiveBolt();
				case BoltType.ArmorPiercing:
					return new ArmorPiercingBolt();
				case BoltType.Freeze:
					return new FreezeBolt();
				case BoltType.Lightning:
					return new LightningBolt();
					
				default:
					return new Bolt();
			}
		}
		
		public virtual Type GetBoltSelected()
		{
			BaseRangedModule module = this.BaseRangedModule;
			
			switch ( module.m_BoltType )
			{
				case BoltType.Normal:
					return typeof( Bolt );
				case BoltType.Poison:
					return typeof( PoisonBolt );
				case BoltType.Explosive:
					return typeof( ExplosiveBolt );
				case BoltType.ArmorPiercing:
					return typeof( ArmorPiercingBolt );
				case BoltType.Freeze:
					return typeof( FreezeBolt );
				case BoltType.Lightning:
					return typeof( LightningBolt );
					
				default:
					return typeof( Bolt );
			}
		}
		
		public override void GetProperties( ObjectPropertyList list )
		{
			base.GetProperties(list);
			
			BaseRangedModule module = this.BaseRangedModule;
			
			if ( module != null )
			{
				ArrayList strings = new ArrayList();
				
				strings.Add( ( "---------------" ) );
				
				if ( this is Bow || this is CompositeBow || this is ElvenCompositeLongbow ||
				    this is MagicalShortbow || this is Yumi )
				{
					strings.Add( ( "Quiver Using: " + module.m_ArrowType ) );
				}
				
				if ( this is Crossbow || this is HeavyCrossbow || this is RepeatingCrossbow )
				{
					strings.Add( ( "Quiver Using: " + module.m_BoltType ) );
				}
				
				strings.Add( ( "lbs per Pull: " + module.m_PullWeight ) );
				strings.Add( ( "String Str: "  + module.m_Strength ) );
				
				string toAdd = "";
				int amount = strings.Count;
				int current = 1;
				
				foreach ( string str in strings )
				{
					toAdd += str;
					
					if ( current != amount )
						toAdd += "\n";
					
					++current;
				}
				
				if ( toAdd != "" )
					list.Add( 1070722, toAdd );
			}
			else
			{
				return;
			}
		}
		//--<<Advanced Archery Edit>>---------------------[End 4/4]
		
		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );
			writer.Write( (int) 2 ); // version
		}
		
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );
			int version = reader.ReadInt();
			
			switch ( version )
			{
				case 2:
				case 1:
					{
						break;
					}
				case 0:
					{
						/*m_EffectID =*/ reader.ReadInt();
						break;
					}
			}
			
			if ( version < 2 )
			{
				WeaponAttributes.MageWeapon = 0;
				WeaponAttributes.UseBestSkill = 0;
			}
		}
	}
}
 
chocomog;662327 said:
Errors:
+ Customes/[2.0]Lucid Nagual's Advanced Archery Beta2/SaveBaseRangedInfo.cs:
CS0117: Line 86: 'Server.Items.BaseRanged' does not contain a definition for
'm_HasBowString'
CS0117: Line 87: 'Server.Items.BaseRanged' does not contain a definition for
'm_HasBowString'
CS0117: Line 92: 'Server.Items.BaseRanged' does not contain a definition for
'm_Module'
CS0117: Line 96: 'Server.Items.BaseRanged' does not contain a definition for
'CheckStringCondition'
Code:
            foreach ( BaseRanged ranged in m_BaseRanged )
            {
                CentralMemory.AppendModule( ranged.Serial, new BaseRangedModule( ranged.Serial ), true );
                BaseRangedModule module = ( BaseRangedModule )CentralMemory.GetModule( ranged.Serial, typeof( BaseRangedModule ) );
 
                if ( ranged.[COLOR=red]m_HasBowString [/COLOR]== true && ranged.StringStrengthSelection == StringStrength.NoString )
                    ranged.[COLOR=red]m_HasBowString [/COLOR]= false;
 
                if ( module != null )
                {
                    //m_This = ranged;
                    ranged.[COLOR=red]m_Module [/COLOR]= module;
                    module.m_Ranged = ranged;
                    module.m_Serial = ranged.Serial;
 
                    ranged.[COLOR=red]CheckStringCondition[/COLOR]( from );
                }
                else
                    return;
            }
I have tried this with the new and old files the new ones posted above give this error. did I forget to update sometihing.. I did have some issues with some but I found those errors and removed the respected problem. I had a dup from the bacaws easy lvl system that was tossing out a few errors. these are the last ones I get from your last beta zip.
Thank you for your contribution.
Follows is the base ranged that the abopve error says has no definition to the above save info.
Code:
using System;
using Server.Items;
using Server.Network;
using Server.Spells;
using Server.Mobiles;
using Server.Targeting;
using System.Collections;
using Server.Enums;
using Server.ACC.CM;
using Server.LucidNagual;
 
 
namespace Server.Items
{
    public abstract class BaseRanged : BaseMeleeWeapon
    {
        //--<<Advanced Archery Edit>>---------------------[Start 1/4]
        //SkillModule edit.
        private BaseRangedModule m_BaseRangedModule;
 
        [CommandProperty( AccessLevel.GameMaster )]
        public BaseRangedModule BaseRangedModule
        {
            get
            {
                BaseRangedModule existingModule = ( BaseRangedModule )CentralMemory.GetModule( this.Serial, typeof( BaseRangedModule ) );
 
                if ( existingModule == null )
                {
                    CentralMemory.Flush();
 
                    BaseRangedModule module = new BaseRangedModule( this.Serial );
                    CentralMemory.AppendModule( this.Serial, module, true );
 
                    return ( m_BaseRangedModule = module as BaseRangedModule );
                }
                else
                {
                    if ( m_BaseRangedModule != null )
                        return m_BaseRangedModule;
 
                    return ( m_BaseRangedModule = existingModule as BaseRangedModule );
                }
            }
        }
        //SkillModule edit.
 
        public static int PlayerFreezeTimer = 2; 
        public static int NPCFreezeTimer = 2;         
 
        public BoltType m_BoltType;
        public ArrowType m_ArrowType;
        public StringStrength m_Strength;
        public PoundsPerPull m_PullWeight;
 
        [CommandProperty(AccessLevel.GameMaster)]
        public ArrowType ArrowSelection    { get { return m_BaseRangedModule.ArrowSelection; } set { m_BaseRangedModule.ArrowSelection = value; } }
 
        [CommandProperty(AccessLevel.GameMaster)]
        public BoltType BoltSelection { get { return m_BaseRangedModule.BoltSelection; } set { m_BaseRangedModule.BoltSelection = value; } }
 
        [CommandProperty(AccessLevel.GameMaster)]
        public StringStrength StringStrengthSelection { get { return m_BaseRangedModule.StringStrengthSelection; } set { m_BaseRangedModule.StringStrengthSelection = value; } }
 
        [CommandProperty(AccessLevel.GameMaster)]
        public PoundsPerPull PullWeightSelection { get { return m_BaseRangedModule.PullWeightSelection; } set { m_BaseRangedModule.PullWeightSelection = value; } }
 
        [CommandProperty( AccessLevel.GameMaster )]
        public bool HasBowString { get{ return m_BaseRangedModule.HasBowString; } set{ m_BaseRangedModule.HasBowString = value; } }        
 
        private static Mobile m_Mobile;
        private static BaseRanged BRanged;
 
        public static TimeSpan StringWarningDelay = TimeSpan.FromSeconds( 10.0 );
        public static DateTime m_NextStringWarning;
        public static TimeSpan AmmoWarningDelay = TimeSpan.FromSeconds( 10.0 );
        public static DateTime m_NextAmmoWarning;
 
        public static readonly TimeSpan PlayerFreezeDuration = TimeSpan.FromSeconds( 3.0 );
        public static readonly TimeSpan NPCFreezeDuration = TimeSpan.FromSeconds( 6.0 );
        //--<<Advanced Archery Edit>>---------------------[End 1/4]
 
        public abstract int EffectID{ get; }
        public abstract Type AmmoType{ get; }
        public abstract Item Ammo{ get; }
 
        public override int DefHitSound{ get{ return 0x234; } }
        public override int DefMissSound{ get{ return 0x238; } }
 
        public override SkillName DefSkill{ get{ return SkillName.Archery; } }
        public override WeaponType DefType{ get{ return WeaponType.Ranged; } }
        public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.ShootXBow; } }
 
        public override SkillName AccuracySkill{ get{ return SkillName.Archery; } }
 
        public BaseRanged( int itemID ) : base( itemID )
        {
        }
 
        public BaseRanged( Serial serial ) : base( serial )
        {
            BRanged = this;
        }
 
        public static void Initialize()
        {
            Mobile from = m_Mobile;
            //Mobile m = (Mobile)parent;
            //BaseWeapon weapon = m.Weapon as BaseWeapon;
        }
 
        public override TimeSpan OnSwing( Mobile attacker, Mobile defender )
        {
            WeaponAbility a = WeaponAbility.GetCurrentAbility( attacker );
 
            // Make sure we've been standing still for .25/.5/1 second depending on Era
            if ( DateTime.Now > ( attacker.LastMoveTime + TimeSpan.FromSeconds( Core.SE ? 0.25 : (Core.AOS ? 0.5 : 1.0) )) || (Core.AOS && WeaponAbility.GetCurrentAbility( attacker ) is MovingShot) )
            {
                bool canSwing = true;
 
                if ( Core.AOS )
                {
                    canSwing = ( !attacker.Paralyzed && !attacker.Frozen );
 
                    if ( canSwing )
                    {
                        Spell sp = attacker.Spell as Spell;
 
                        canSwing = ( sp == null || !sp.IsCasting || !sp.BlocksMovement );
                    }
                }
 
                if ( canSwing && attacker.HarmfulCheck( defender ) )
                {
                    attacker.DisruptiveAction();
                    attacker.Send( new Swing( 0, attacker, defender ) );
 
                    if ( OnFired( attacker, defender ) )
                    {
                        if ( CheckHit( attacker, defender ) )
                            OnHit( attacker, defender );
                        else
                            OnMiss( attacker, defender );
                    }
                }
 
                attacker.RevealingAction();
 
                return GetDelay( attacker );
            }
            else
            {
                attacker.RevealingAction();
 
                return TimeSpan.FromSeconds( 0.25 );
            }
        }
 
        public override void OnHit( Mobile attacker, Mobile defender )
        {
            //--<<Advanced Archery Edit>>---------------------[Start 2/4]
            if ( attacker == null || defender == null )
                return;
 
            MoreBaseRanged.CustomAmmoCheck( attacker, defender, AmmoType );
 
            if ( Ammo == null )
                attacker.SendMessage( "You are out of arrows, or may have to choose a different type of arrow by double clicking the bow." );
            //--<<Advanced Archery Edit>>---------------------[End 2/4]
 
            if ( attacker.Player && !defender.Player && ( defender.Body.IsAnimal || defender.Body.IsMonster ) && 0.4 >= Utility.RandomDouble() )
                defender.AddToBackpack( Ammo );
 
            base.OnHit( attacker, defender );
        }
 
        public override void OnMiss( Mobile attacker, Mobile defender )
        {
            if ( attacker.Player && 0.4 >= Utility.RandomDouble() )
                Ammo.MoveToWorld( new Point3D( defender.X + Utility.RandomMinMax( -1, 1 ), defender.Y + Utility.RandomMinMax( -1, 1 ), defender.Z ), defender.Map );
 
            base.OnMiss( attacker, defender );
        }
 
        public virtual bool OnFired( Mobile attacker, Mobile defender )
        {
            //--<<Advanced Archery Edit>>---------------------[Start 3/4]
            PlayerMobile a_pm = attacker as PlayerMobile;
            Container pack = attacker.Backpack;
            BaseQuiver quiver = attacker.FindItemOnLayer( Layer.MiddleTorso ) as BaseQuiver;
            //Container quiver = ( BaseQuiver )a_pm.Quiver;
            BaseRangedModule module = this.BaseRangedModule;
 
            if ( !module.HasBowString )
            {
                if ( DateTime.Now >= m_NextStringWarning )
                {
                    m_NextStringWarning = DateTime.Now + StringWarningDelay;
                    attacker.SendMessage( "You need a string to use this bow. See a local fletcher to apply the string." );
                    return false;
                }
                else
                    return false;
            }
 
            if ( Ammo == null )
            {
                if ( DateTime.Now >= m_NextAmmoWarning )
                {
                    m_NextAmmoWarning = DateTime.Now + AmmoWarningDelay;
                    attacker.SendMessage( "You are out of ammo." );
                    return false;
                }
                else
                    return false;
            }
 
            if( attacker.Player && quiver != null && quiver.LowerAmmoCost > Utility.Random( 100 ) )
            {
                attacker.MovingEffect( defender, EffectID, 18, 1, false, false );
                return true;
            }
 
            if( attacker.Player &&
               ( quiver == null || !quiver.ConsumeTotal( AmmoType, 1 ) ) &&
               (   pack == null ||   !pack.ConsumeTotal( AmmoType, 1 ) ) )
                return false;
 
            attacker.MovingEffect( defender, EffectID, 18, 1, false, false );
            return true;
            //--<<Advanced Archery Edit>>---------------------[End 3/4]
        }
 
        //--<<Advanced Archery Edit>>---------------------[Start 4/4]
        public override void OnDoubleClick( Mobile from )
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            if ( IsChildOf( from.Backpack ) || Parent == from )
            {
                if ( module.HasBowString )
                {
                    if ( this is Bow || this is CompositeBow || this is ElvenCompositeLongbow ||
                        this is MagicalShortbow || this is Yumi )
                    {
                        from.SendMessage( "Please choose which type of arrows you wish to use." );
                        from.Target = new BowTarget( this );
                    }
 
                    if ( this is Crossbow || this is HeavyCrossbow || this is RepeatingCrossbow )
                    {
                        from.SendMessage( "Please choose which type of bolts you wish to use." );
                        from.Target = new CrossbowTarget( this );
                    }
                }
                else
                {
                    from.SendMessage( "You must string your bow. Please select a bow stringer." );
                    from.Target = new StringerTarget( this );
                }
            }
 
            else
                return;
        }
 
        /*        public override void OnDelete()
        {
            BaseRangedModule module = ( BaseRangedModule )CentralMemory.GetModule( BRanged.Serial, typeof( BaseRangedModule ) );
 
            if ( module != null )
            {
                module.Delete();
            }
 
            base.OnDelete();
        }*/
 
        public override bool OnEquip( Mobile from )
        {
            m_Mobile = from;
 
            return true;
        }
 
        public override bool CanEquip( Mobile from )
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            if ( from != null && !module.HasBowString )
            {
                from.SendMessage( "You cannot use that without a string." );
                return false;
            }
 
            base.CanEquip( from );
 
            return true;
        }
 
        public virtual Item AmmoArrowSelected()
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            switch ( module.m_ArrowType )
            {
                case ArrowType.Normal:
                    return new Arrow();
                case ArrowType.Poison:
                    return new PoisonArrow();
                case ArrowType.Explosive:
                    return new ExplosiveArrow();
                case ArrowType.ArmorPiercing:
                    return new ArmorPiercingArrow();
                case ArrowType.Freeze:
                    return new FreezeArrow();
                case ArrowType.Lightning:
                    return new LightningArrow();
 
                default:
                    return new Arrow();
            }
        }
 
        public virtual Type GetArrowSelected()
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            switch ( module.m_ArrowType )
            {
                case ArrowType.Normal:
                    return typeof( Arrow );
                case ArrowType.Poison:
                    return typeof( PoisonArrow );
                case ArrowType.Explosive:
                    return typeof( ExplosiveArrow );
                case ArrowType.ArmorPiercing:
                    return typeof( ArmorPiercingArrow );
                case ArrowType.Freeze:
                    return typeof( FreezeArrow );
                case ArrowType.Lightning:
                    return typeof( LightningArrow );
 
                default:
                    return typeof( Arrow );
            }
        }
 
        public virtual Item AmmoBoltSelected()
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            switch ( module.m_BoltType )
            {
                case BoltType.Normal:
                    return new Bolt();
                case BoltType.Poison:
                    return new PoisonBolt();
                case BoltType.Explosive:
                    return new ExplosiveBolt();
                case BoltType.ArmorPiercing:
                    return new ArmorPiercingBolt();
                case BoltType.Freeze:
                    return new FreezeBolt();
                case BoltType.Lightning:
                    return new LightningBolt();
 
                default:
                    return new Bolt();
            }
        }
 
        public virtual Type GetBoltSelected()
        {
            BaseRangedModule module = this.BaseRangedModule;
 
            switch ( module.m_BoltType )
            {
                case BoltType.Normal:
                    return typeof( Bolt );
                case BoltType.Poison:
                    return typeof( PoisonBolt );
                case BoltType.Explosive:
                    return typeof( ExplosiveBolt );
                case BoltType.ArmorPiercing:
                    return typeof( ArmorPiercingBolt );
                case BoltType.Freeze:
                    return typeof( FreezeBolt );
                case BoltType.Lightning:
                    return typeof( LightningBolt );
 
                default:
                    return typeof( Bolt );
            }
        }
 
        public override void GetProperties( ObjectPropertyList list )
        {
            base.GetProperties(list);
 
            BaseRangedModule module = this.BaseRangedModule;
 
            if ( module != null )
            {
                ArrayList strings = new ArrayList();
 
                strings.Add( ( "---------------" ) );
 
                if ( this is Bow || this is CompositeBow || this is ElvenCompositeLongbow ||
                    this is MagicalShortbow || this is Yumi )
                {
                    strings.Add( ( "Quiver Using: " + module.m_ArrowType ) );
                }
 
                if ( this is Crossbow || this is HeavyCrossbow || this is RepeatingCrossbow )
                {
                    strings.Add( ( "Quiver Using: " + module.m_BoltType ) );
                }
 
                strings.Add( ( "lbs per Pull: " + module.m_PullWeight ) );
                strings.Add( ( "String Str: "  + module.m_Strength ) );
 
                string toAdd = "";
                int amount = strings.Count;
                int current = 1;
 
                foreach ( string str in strings )
                {
                    toAdd += str;
 
                    if ( current != amount )
                        toAdd += "\n";
 
                    ++current;
                }
 
                if ( toAdd != "" )
                    list.Add( 1070722, toAdd );
            }
            else
            {
                return;
            }
        }
        //--<<Advanced Archery Edit>>---------------------[End 4/4]
 
        public override void Serialize( GenericWriter writer )
        {
            base.Serialize( writer );
            writer.Write( (int) 2 ); // version
        }
 
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );
            int version = reader.ReadInt();
 
            switch ( version )
            {
                case 2:
                case 1:
                    {
                        break;
                    }
                case 0:
                    {
                        /*m_EffectID =*/ reader.ReadInt();
                        break;
                    }
            }
 
            if ( version < 2 )
            {
                WeaponAttributes.MageWeapon = 0;
                WeaponAttributes.UseBestSkill = 0;
            }
        }
    }
}

Delete your SaveBaseRangedInfo.cs it is no longer needed.
 
chocomog;662485 said:
Yep that did it. that would explain why base ranged had no definitions. thanks

NP let me know if it works ok and I'll release it. I tested it myself but might have missed something.
 

Dramier

Wanderer
Got an error with m_BOBFilter not being defined in context.. looks like you left a serialize command in for these lines:

m_BOBFilter.Serialize( writer ); //Custom BOD System
m_TinkBOBFilter.Serialize( writer ); //Custom BOD System
m_TamingBOBFilter.Serialize( writer ); //Custom BOD System

Which causes a definition error. I commented them out after examing the previously commented out lines defining them and it compiled without errors.

I'm guessing that is something you have planned for the future releases, hence why it is all commented out, but you might want to update those serialize commands and comment them out as well.

Anyway, just something I caught. Cheers! :cool:
 

wensday

Wanderer
alright, I'm super confused as I have tried hard to stay away from this 2.0 stuff till it became more stable, but with everyone forgetting about 1.0 I am forced to make the change over. I have implemented only 5 things.... 4 are plug-ins and the last is the advanced archery I got from here. I have had to deal with several bits of errors, and I am currently stuck on this error
Code:
RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiling C# scripts...failed (1 errors, 2 warnings)

Errors:
 + custom scripts/systems/Lucid's Core v1a/Lucid's Core v1a/[Lucid's] Modules/[Advanced Archery]PlayerModule.cs: CS0029: Line 788: Cannot implicitly convert type 'Server.ACC.CM.MyPlayerFlag' to 'System.TimeSpan'
Scripts: One or more scripts failed to compile or no script files were found.
 - Press return to exit, or R to try again.

I am unsure of exactly what is going on here, so any help would be greatly appreciated as I know absolutely nothing about this 2.0 stuff. Thank you in advance.
 

Twisted1851

Wanderer
Alright well, I played around with it, and narrowed it down to just one error, a fairly large one though.... (I have the core from first page, and beta archery from this page)
Code:
RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Core: Optimizing for 2 processors
Scripts: Compiling C# scripts...failed (1 errors, 0 warnings)
Errors:
 + Custom/Lucid's Core v1a/Lucid's Enums.cs:
    CS0101: Line 23: The namespace 'Server.Enums' already contains a definition
for 'MobileAccess'
    CS0101: Line 35: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillLock'
    CS0101: Line 42: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillName'
    CS0101: Line 55: The namespace 'Server.Enums' already contains a definition
for 'PlayerRaces'
    CS0101: Line 68: The namespace 'Server.Enums' already contains a definition
for 'PlayerClasses'
    CS0101: Line 89: The namespace 'Server.Enums' already contains a definition
for 'GateAccess'
    CS0101: Line 110: The namespace 'Server.Enums' already contains a definition
 for 'PlayerTribes'
    CS0101: Line 122: The namespace 'Server.Enums' already contains a definition
 for 'PlayerRanks'
    CS0101: Line 133: The namespace 'Server.Enums' already contains a definition
 for 'PlayerAlignment'
    CS0101: Line 147: The namespace 'Server.Enums' already contains a definition
 for 'PlayerReligion'
    CS0101: Line 156: The namespace 'Server.Enums' already contains a definition
 for 'PlayerDeity'
    CS0101: Line 161: The namespace 'Server.Enums' already contains a definition
 for 'PlayerBloodType'
    CS0101: Line 188: The namespace 'Server.Enums' already contains a definition
 for 'PlayerSickness'
    CS0101: Line 199: The namespace 'Server.Enums' already contains a definition
 for 'PlayerVirus'
    CS0101: Line 204: The namespace 'Server.Enums' already contains a definition
 for 'MaritalStatus'
    CS0101: Line 213: The namespace 'Server.Enums' already contains a definition
 for 'TypeOfMarriage'
    CS0101: Line 220: The namespace 'Server.Enums' already contains a definition
 for 'ArrowType'
    CS0101: Line 230: The namespace 'Server.Enums' already contains a definition
 for 'BoltType'
    CS0101: Line 241: The namespace 'Server.Enums' already contains a definition
 for 'StringType'
    CS0101: Line 251: The namespace 'Server.Enums' already contains a definition
 for 'PoundsPerPull'
    CS0101: Line 259: The namespace 'Server.Enums' already contains a definition
 for 'StringStrength'
    CS0101: Line 272: The namespace 'Server.Enums' already contains a definition
 for 'HuntMode'
    CS0101: Line 281: The namespace 'Server.Enums' already contains a definition
 for 'HuntRank'
    CS0101: Line 299: The namespace 'Server.Enums' already contains a definition
 for 'HuntReward'
Scripts: One or more scripts failed to compile or no script files were found.
 - Press return to exit, or R to try again.
 
Twisted1851;666133 said:
Alright well, I played around with it, and narrowed it down to just one error, a fairly large one though.... (I have the core from first page, and beta archery from this page)
Code:
RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Core: Optimizing for 2 processors
Scripts: Compiling C# scripts...failed (1 errors, 0 warnings)
Errors:
 + Custom/Lucid's Core v1a/Lucid's Enums.cs:
    CS0101: Line 23: The namespace 'Server.Enums' already contains a definition
for 'MobileAccess'
    CS0101: Line 35: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillLock'
    CS0101: Line 42: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillName'
    CS0101: Line 55: The namespace 'Server.Enums' already contains a definition
for 'PlayerRaces'
    CS0101: Line 68: The namespace 'Server.Enums' already contains a definition
for 'PlayerClasses'
    CS0101: Line 89: The namespace 'Server.Enums' already contains a definition
for 'GateAccess'
    CS0101: Line 110: The namespace 'Server.Enums' already contains a definition
 for 'PlayerTribes'
    CS0101: Line 122: The namespace 'Server.Enums' already contains a definition
 for 'PlayerRanks'
    CS0101: Line 133: The namespace 'Server.Enums' already contains a definition
 for 'PlayerAlignment'
    CS0101: Line 147: The namespace 'Server.Enums' already contains a definition
 for 'PlayerReligion'
    CS0101: Line 156: The namespace 'Server.Enums' already contains a definition
 for 'PlayerDeity'
    CS0101: Line 161: The namespace 'Server.Enums' already contains a definition
 for 'PlayerBloodType'
    CS0101: Line 188: The namespace 'Server.Enums' already contains a definition
 for 'PlayerSickness'
    CS0101: Line 199: The namespace 'Server.Enums' already contains a definition
 for 'PlayerVirus'
    CS0101: Line 204: The namespace 'Server.Enums' already contains a definition
 for 'MaritalStatus'
    CS0101: Line 213: The namespace 'Server.Enums' already contains a definition
 for 'TypeOfMarriage'
    CS0101: Line 220: The namespace 'Server.Enums' already contains a definition
 for 'ArrowType'
    CS0101: Line 230: The namespace 'Server.Enums' already contains a definition
 for 'BoltType'
    CS0101: Line 241: The namespace 'Server.Enums' already contains a definition
 for 'StringType'
    CS0101: Line 251: The namespace 'Server.Enums' already contains a definition
 for 'PoundsPerPull'
    CS0101: Line 259: The namespace 'Server.Enums' already contains a definition
 for 'StringStrength'
    CS0101: Line 272: The namespace 'Server.Enums' already contains a definition
 for 'HuntMode'
    CS0101: Line 281: The namespace 'Server.Enums' already contains a definition
 for 'HuntRank'
    CS0101: Line 299: The namespace 'Server.Enums' already contains a definition
 for 'HuntReward'
Scripts: One or more scripts failed to compile or no script files were found.
 - Press return to exit, or R to try again.

Try this one.
 

Attachments

  • Advanced Archery Beta v[3].0.1 (c).zip
    88.4 KB · Views: 56

Remo82

Wanderer
Lucid Nagual;666165 said:
Try this one.

I re d/l the core from the first post and downloaded the latest file you just put up to try and im still getting this:

RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiling C# scripts...failed (22 errors, 0 warnings)
Errors:
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Eng
ines.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Enu
ms.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Msg
Center.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/CentralMemory.
cs:
CS0101: Line 11: The namespace 'Server.ACC.CM' already contains a definition
for 'CentralMemory'
CS0102: Line 639: The type 'Server.ACC.CM.CentralMemory' already contains a
definition for 'IEntityMod'
CS0102: Line 648: The type 'Server.ACC.CM.CentralMemory' already contains a
definition for 'ModuleEntry'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/Module.cs:
CS0101: Line 6: The namespace 'Server.ACC.CM' already contains a definition
for 'Module'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/ModuleList.cs:

CS0101: Line 7: The namespace 'Server.ACC.CM' already contains a definition
for 'ModuleList'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACC.cs:
CS0101: Line 8: The namespace 'Server.ACC' already contains a definition for
'ACC'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACCGump.cs:
CS0101: Line 11: The namespace 'Server.ACC' already contains a definition fo
r 'ACCGump'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACCSystem.cs:
CS0101: Line 8: The namespace 'Server.ACC' already contains a definition for
'ACCSystem'
+ Custom/Lucid's Core v1a/[Lucid's] Modules/BaseRangedModule.cs:
CS0101: Line 35: The namespace 'Server.ACC.CM' already contains a definition
for 'BaseRangedModule'
CS0102: Line 123: The type 'Server.ACC.CM.BaseRangedModule' already contains
a definition for 'InternalTarget'
+ Custom/Lucid's Core v1a/[Lucid's] Modules/[Advanced Archery]PlayerModule.cs:
CS0101: Line 43: The namespace 'Server.ACC.CM' already contains a definition
for 'MyPlayerFlag'
CS0101: Line 49: The namespace 'Server.ACC.CM' already contains a definition
for 'PlayerModule'
CS0102: Line 637: The type 'Server.ACC.CM.PlayerModule' already contains a d
efinition for 'InternalTarget'
+ Custom/Lucid's Core v1a/Lucid's Enums.cs:
CS0101: Line 23: The namespace 'Server.Enums' already contains a definition
for 'MobileAccess'
CS0101: Line 35: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillLock'
CS0101: Line 42: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillName'
CS0101: Line 55: The namespace 'Server.Enums' already contains a definition
for 'PlayerRaces'
CS0101: Line 68: The namespace 'Server.Enums' already contains a definition
for 'PlayerClasses'
CS0101: Line 89: The namespace 'Server.Enums' already contains a definition
for 'GateAccess'
CS0101: Line 110: The namespace 'Server.Enums' already contains a definition
for 'PlayerTribes'
CS0101: Line 122: The namespace 'Server.Enums' already contains a definition
for 'PlayerRanks'
CS0101: Line 133: The namespace 'Server.Enums' already contains a definition
for 'PlayerAlignment'
CS0101: Line 147: The namespace 'Server.Enums' already contains a definition
for 'PlayerReligion'
CS0101: Line 156: The namespace 'Server.Enums' already contains a definition
for 'PlayerDeity'
CS0101: Line 161: The namespace 'Server.Enums' already contains a definition
for 'PlayerBloodType'
CS0101: Line 188: The namespace 'Server.Enums' already contains a definition
for 'PlayerSickness'
CS0101: Line 199: The namespace 'Server.Enums' already contains a definition
for 'PlayerVirus'
CS0101: Line 204: The namespace 'Server.Enums' already contains a definition
for 'MaritalStatus'
CS0101: Line 213: The namespace 'Server.Enums' already contains a definition
for 'TypeOfMarriage'
CS0101: Line 220: The namespace 'Server.Enums' already contains a definition
for 'ArrowType'
CS0101: Line 230: The namespace 'Server.Enums' already contains a definition
for 'BoltType'
CS0101: Line 241: The namespace 'Server.Enums' already contains a definition
for 'StringType'
CS0101: Line 251: The namespace 'Server.Enums' already contains a definition
for 'PoundsPerPull'
CS0101: Line 259: The namespace 'Server.Enums' already contains a definition
for 'StringStrength'
CS0101: Line 272: The namespace 'Server.Enums' already contains a definition
for 'HuntMode'
CS0101: Line 281: The namespace 'Server.Enums' already contains a definition
for 'HuntRank'
CS0101: Line 299: The namespace 'Server.Enums' already contains a definition
for 'HuntReward'
CS0101: Line 318: The namespace 'Server.Enums' already contains a definition
for 'CCSpawns'
+ Custom/Lucid's Core v1a/Lucid's MsgCenter.cs:
CS0101: Line 31: The namespace 'Server.Messages' already contains a definiti
on for 'MsgCenter'
CS0101: Line 71: The namespace 'Server.Messages' already contains a definiti
on for 'Msglist'
+ Items/Weapons/ML Weapons/ElvenCompositeLongbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'ElvenCompositeLongbow'
+ Items/Weapons/ML Weapons/MagicalShortbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'MagicalShortbow'
+ Items/Weapons/Ranged/BaseRanged.cs:
CS0101: Line 9: The namespace 'Server.Items' already contains a definition f
or 'BaseRanged'
+ Items/Weapons/Ranged/Bow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Bow'
+ Items/Weapons/Ranged/CompositeBow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'CompositeBow'
+ Items/Weapons/Ranged/Crossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Crossbow'
+ Items/Weapons/Ranged/HeavyCrossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'HeavyCrossbow'
+ Items/Weapons/Ranged/RepeatingCrossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'RepeatingCrossbow'
+ Items/Weapons/SE Weapons/Yumi.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Yumi'
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.


Any ideas? pretty new to scripting, looks like duplicates somewhere? not really sure.

Thx for any help you can provide :)
 
Remo82;666324 said:
I re d/l the core from the first post and downloaded the latest file you just put up to try and im still getting this:

RunUO - [www.runuo.com] Version 2.0, Build 2357.32527
Core: Running on .NET Framework Version 2.0.50727
Scripts: Compiling C# scripts...failed (22 errors, 0 warnings)
Errors:
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Eng
ines.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Enu
ms.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Advanced Archery Beta/Scripts/Customs/Lucid's Systems/Core/Lucid's Msg
Center.cs:
CS0116: Line 1: A namespace does not directly contain members such as fields
or methods
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/CentralMemory.
cs:
CS0101: Line 11: The namespace 'Server.ACC.CM' already contains a definition
for 'CentralMemory'
CS0102: Line 639: The type 'Server.ACC.CM.CentralMemory' already contains a
definition for 'IEntityMod'
CS0102: Line 648: The type 'Server.ACC.CM.CentralMemory' already contains a
definition for 'ModuleEntry'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/Module.cs:
CS0101: Line 6: The namespace 'Server.ACC.CM' already contains a definition
for 'Module'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/Central Memory/ModuleList.cs:

CS0101: Line 7: The namespace 'Server.ACC.CM' already contains a definition
for 'ModuleList'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACC.cs:
CS0101: Line 8: The namespace 'Server.ACC' already contains a definition for
'ACC'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACCGump.cs:
CS0101: Line 11: The namespace 'Server.ACC' already contains a definition fo
r 'ACCGump'
+ Custom/Lucid's Core v1a/[Alien's]Central Memory/ACCSystem.cs:
CS0101: Line 8: The namespace 'Server.ACC' already contains a definition for
'ACCSystem'
+ Custom/Lucid's Core v1a/[Lucid's] Modules/BaseRangedModule.cs:
CS0101: Line 35: The namespace 'Server.ACC.CM' already contains a definition
for 'BaseRangedModule'
CS0102: Line 123: The type 'Server.ACC.CM.BaseRangedModule' already contains
a definition for 'InternalTarget'
+ Custom/Lucid's Core v1a/[Lucid's] Modules/[Advanced Archery]PlayerModule.cs:
CS0101: Line 43: The namespace 'Server.ACC.CM' already contains a definition
for 'MyPlayerFlag'
CS0101: Line 49: The namespace 'Server.ACC.CM' already contains a definition
for 'PlayerModule'
CS0102: Line 637: The type 'Server.ACC.CM.PlayerModule' already contains a d
efinition for 'InternalTarget'
+ Custom/Lucid's Core v1a/Lucid's Enums.cs:
CS0101: Line 23: The namespace 'Server.Enums' already contains a definition
for 'MobileAccess'
CS0101: Line 35: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillLock'
CS0101: Line 42: The namespace 'Server.Enums' already contains a definition
for 'CustomSkillName'
CS0101: Line 55: The namespace 'Server.Enums' already contains a definition
for 'PlayerRaces'
CS0101: Line 68: The namespace 'Server.Enums' already contains a definition
for 'PlayerClasses'
CS0101: Line 89: The namespace 'Server.Enums' already contains a definition
for 'GateAccess'
CS0101: Line 110: The namespace 'Server.Enums' already contains a definition
for 'PlayerTribes'
CS0101: Line 122: The namespace 'Server.Enums' already contains a definition
for 'PlayerRanks'
CS0101: Line 133: The namespace 'Server.Enums' already contains a definition
for 'PlayerAlignment'
CS0101: Line 147: The namespace 'Server.Enums' already contains a definition
for 'PlayerReligion'
CS0101: Line 156: The namespace 'Server.Enums' already contains a definition
for 'PlayerDeity'
CS0101: Line 161: The namespace 'Server.Enums' already contains a definition
for 'PlayerBloodType'
CS0101: Line 188: The namespace 'Server.Enums' already contains a definition
for 'PlayerSickness'
CS0101: Line 199: The namespace 'Server.Enums' already contains a definition
for 'PlayerVirus'
CS0101: Line 204: The namespace 'Server.Enums' already contains a definition
for 'MaritalStatus'
CS0101: Line 213: The namespace 'Server.Enums' already contains a definition
for 'TypeOfMarriage'
CS0101: Line 220: The namespace 'Server.Enums' already contains a definition
for 'ArrowType'
CS0101: Line 230: The namespace 'Server.Enums' already contains a definition
for 'BoltType'
CS0101: Line 241: The namespace 'Server.Enums' already contains a definition
for 'StringType'
CS0101: Line 251: The namespace 'Server.Enums' already contains a definition
for 'PoundsPerPull'
CS0101: Line 259: The namespace 'Server.Enums' already contains a definition
for 'StringStrength'
CS0101: Line 272: The namespace 'Server.Enums' already contains a definition
for 'HuntMode'
CS0101: Line 281: The namespace 'Server.Enums' already contains a definition
for 'HuntRank'
CS0101: Line 299: The namespace 'Server.Enums' already contains a definition
for 'HuntReward'
CS0101: Line 318: The namespace 'Server.Enums' already contains a definition
for 'CCSpawns'
+ Custom/Lucid's Core v1a/Lucid's MsgCenter.cs:
CS0101: Line 31: The namespace 'Server.Messages' already contains a definiti
on for 'MsgCenter'
CS0101: Line 71: The namespace 'Server.Messages' already contains a definiti
on for 'Msglist'
+ Items/Weapons/ML Weapons/ElvenCompositeLongbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'ElvenCompositeLongbow'
+ Items/Weapons/ML Weapons/MagicalShortbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'MagicalShortbow'
+ Items/Weapons/Ranged/BaseRanged.cs:
CS0101: Line 9: The namespace 'Server.Items' already contains a definition f
or 'BaseRanged'
+ Items/Weapons/Ranged/Bow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Bow'
+ Items/Weapons/Ranged/CompositeBow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'CompositeBow'
+ Items/Weapons/Ranged/Crossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Crossbow'
+ Items/Weapons/Ranged/HeavyCrossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'HeavyCrossbow'
+ Items/Weapons/Ranged/RepeatingCrossbow.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'RepeatingCrossbow'
+ Items/Weapons/SE Weapons/Yumi.cs:
CS0101: Line 8: The namespace 'Server.Items' already contains a definition f
or 'Yumi'
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.


Any ideas? pretty new to scripting, looks like duplicates somewhere? not really sure.

Thx for any help you can provide :)

Yes you will have to find your duplicates and delete them. Maybe it would be best to delete everything and use my new drag and drop bundle to place everything in the directories for you. I am redoing my bundles to make it easier it install these packages and will prolly cause a few issues till everyone uses the same ones.
 
Top