ServUO Version
Publish Unknown
Ultima Expansion
Mondain's Legacy
Down loaded and installed The Custom Abilities. giving me these error. i run , Runuo 2.6.0. any help would be awesome as this script is something i've been wanting and this looks awesome.

Error Log:
Errors:
 + Custom/Custom_Abilities_2.0/Mobiles/Brigands/BrigandOccultist.cs:
    CS1002: Line 22: ; expected
    CS1002: Line 23: ; expected
    CS1002: Line 87: ; expected
    CS1002: Line 88: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Elementals/LightningElemental.cs:
    CS1002: Line 57: ; expected
    CS1002: Line 58: ; expected
    CS1002: Line 59: ; expected
    CS1002: Line 60: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Hags/NightHag.cs:
    CS1002: Line 60: ; expected
    CS1002: Line 61: ; expected
    CS1002: Line 62: ; expected
    CS1002: Line 63: ; expected
    CS1002: Line 168: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Hags/SeaHag.cs:
    CS1002: Line 61: ; expected
    CS1002: Line 62: ; expected
    CS1002: Line 63: ; expected
    CS1002: Line 64: ; expected
    CS1002: Line 91: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Hags/SwampHag.cs:
    CS1002: Line 63: ; expected
    CS1002: Line 64: ; expected
    CS1002: Line 65: ; expected
    CS1002: Line 66: ; expected
    CS1002: Line 171: ; expected
    CS1002: Line 172: ; expected
    CS1519: Line 172: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 173: ; expected
    CS1519: Line 173: Invalid token ';' in class, struct, or interface member declaration
 + Custom/Custom_Abilities_2.0/Mobiles/Hags/WinterHag.cs:
    CS1002: Line 61: ; expected
    CS1002: Line 62: ; expected
    CS1002: Line 63: ; expected
    CS1002: Line 64: ; expected
    CS1002: Line 169: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Imps/FireImp.cs:
    CS1002: Line 82: ; expected
    CS1002: Line 83: ; expected
    CS1002: Line 84: ; expected
    CS1519: Line 84: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 85: ; expected
    CS1519: Line 85: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 86: ; expected
    CS1519: Line 86: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 87: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Imps/IceImp.cs:
    CS1002: Line 82: ; expected
    CS1002: Line 83: ; expected
    CS1002: Line 84: ; expected
    CS1519: Line 84: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 85: ; expected
    CS1519: Line 85: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 86: ; expected
    CS1519: Line 86: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 87: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Imps/MistImp.cs:
    CS1002: Line 65: ; expected
    CS1002: Line 66: ; expected
    CS1002: Line 67: ; expected
    CS1519: Line 67: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 68: ; expected
    CS1519: Line 68: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 69: ; expected
    CS1519: Line 69: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 70: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Imps/ShadowImp.cs:
    CS1002: Line 65: ; expected
    CS1002: Line 66: ; expected
    CS1002: Line 67: ; expected
    CS1519: Line 67: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 68: ; expected
    CS1519: Line 68: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 69: ; expected
    CS1519: Line 69: Invalid token ';' in class, struct, or interface member declaration
    CS1002: Line 70: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Misc/BlightedVine.cs:
    CS1002: Line 91: ; expected
    CS1519: Line 91: Invalid token ';' in class, struct, or interface member declaration
 + Custom/Custom_Abilities_2.0/Mobiles/Rebels/RebelAlchemist.cs:
    CS1002: Line 73: ; expected
    CS1002: Line 74: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Rebels/RebelArcher.cs:
    CS1002: Line 72: ; expected
    CS1002: Line 73: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Rebels/RebelPaladin.cs:
    CS1002: Line 71: ; expected
    CS1002: Line 72: ; expected
 + Custom/Custom_Abilities_2.0/Mobiles/Rebels/RebelPriest.cs:
    CS1002: Line 73: ; expected
    CS1002: Line 74: ; expected
 
It's different C# versions if im not wrong, so you need to update(downgrade) the code to fit RunUO.
Small changes here and there. I believe you'll have more errors when these are solved.
 
1 of the error scripts:
using Server.Items;
using Server.Mobiles;
using Server.Targeting;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

namespace Server.Mobiles
{
    public class BrigandOccultist : BaseCreature
    {

    CustomAbilityList list;
    WalkingBomb wb = new WalkingBomb();
    ToxicRain tr = new ToxicRain();
    HealAllies ha = new HealAllies();

    private bool HasSummon = false;
    private PatchworkSkeleton summon;

        public override bool ClickTitle => false;
        public override bool ShowFameTitle => false;

        [Constructable]
        public BrigandOccultist()
            : base(AIType.AI_Necro, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();
            Title = "the brigand occultist";
            Hue = Utility.RandomSkinHue();
        int clothes = Utility.RandomNeutralHue();

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
                AddItem(new Skirt(clothes));
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
                AddItem(new ShortPants(clothes));
            }

            SetStr(86, 100);
            SetDex(151, 165);
            SetInt(361, 475);

            SetDamage(4, 6);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 35, 45);
            SetResistance(ResistanceType.Fire, 25, 30);
            SetResistance(ResistanceType.Cold, 25, 30);
            SetResistance(ResistanceType.Poison, 10, 20);
            SetResistance(ResistanceType.Energy, 10, 20);

            //SetSkill(SkillName.EvalInt, 75.0, 95.5);
            SetSkill(SkillName.Meditation, 75.0, 95.5);
            SetSkill(SkillName.MagicResist, 73.5, 89.5);
            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Tactics, 100.0);
            //SetSkill(SkillName.Magery, 95.0, 115.0);
            SetSkill(SkillName.Necromancy, 65.0, 89.0);
            SetSkill(SkillName.SpiritSpeak, 65.0, 89.0);

            Fame = 3000;
            Karma = -3000;

            AddItem(new Boots());
        AddItem(new FancyShirt());
            AddItem(new Doublet(clothes));
            AddItem(new NecromancerSpellbook());
        AddItem(new WizardsHat(clothes));

            Utility.AssignRandomHair(this);
        }

        public BrigandOccultist(Serial serial)
            : base(serial)
        {
        }

        public override bool AlwaysMurderer => true;
    public override bool AlwaysAttackable => true;

        public override void GenerateLoot()
        {
            AddLoot(LootPack.Rich);
            AddLoot(LootPack.MedScrolls, 3);
            AddLoot(LootPack.HighScrolls, 1);
        }

    public override void OnThink()
    {
        base.OnThink();

        if(list == null)
        {
        list = new CustomAbilityList();
            wb.SetDamage(15, 30);
            tr.SetDamage(12, 18);

        list.Add(tr);
        list.Add(wb);
        list.Add(ha);
        }
        else
            list.CheckTrigger(this);

        CheckSummon();

    }

    public virtual bool IsFriend(Mobile m)
    {
        if(m is BrigandPillager || m is Brigand || m is BrigandCutthroat )
        return true;
        else
            return base.IsFriend(m);
    }

    public void CheckSummon()
    {
        if( !Alive || Combatant == null || Map == null || Map == Map.Internal)
        {
        if( HasSummon == true)
        {
            summon.Delete();
            HasSummon = false;
        }
        else
            return;
        }
        else if( HasSummon == false && Combatant != null)
        {
        HasSummon = true;
        this.Animate(AnimationType.Spell, 0);

        Point3D p = Map.GetSpawnPosition(Location, 6);
        Effects.SendLocationParticles(EffectItem.Create(p, Map, TimeSpan.FromSeconds(2)), 0x3789, 1, 40, 0x3F, 3, 9907, 0);

            Timer.DelayCall(TimeSpan.FromSeconds(2), () =>
            {
            summon = new PatchworkSkeleton();
            summon.MoveToWorld(p, Map);
            summon.Team = Team;
                    summon.Combatant = Combatant;
            });

        }
    }

        public override bool OnBeforeDeath()
        {
            if( summon != null || !summon.Deleted)
        summon.Kill();

            return base.OnBeforeDeath();
        }


        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            writer.Write(0); // version
        }

        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();
        }
    }
}
333
So let me ask this. Say I switch over, all the days and hours spent in game arranging and getting this just right would I have to redo all of that? IE, manual placing spanner in areas of interest.
 
It's doesn't have to ve a question of switching over or not.
It's more find a way to change the script to fit your C# version and of course some parts RunUO doesn't have versus what ServUO have.
If you feel like you need help with it, run them through an AI, tell them to "edit this code from C#7 to C#5" . Or just let the AI tell you what kind of compability issue it might be.
ChatGPT4 is better than 3.5 when it comes to this.
But my guess is BardAI could work just aswell.
 
I mean all line like this
Code:
public override bool ClickTitle => false;

just need to get changed to
Code:
public override bool ClickTitle { get { return false; } }

Thats it, really
 
I mean all line like this
Code:
public override bool ClickTitle => false;

just need to get changed to
Code:
public override bool ClickTitle { get { return false; } }

Thats it, really
My eye couldn't catch that apparently :D
It seems like hes taking the error from the compiler not from VS.
Seldom it shows you all the errors if its many.
Im not that great with code, but when ive done this before going from ServUO -> RunUO and back, it saved me time just rechecking all the code with the help of AI :p
 
Back