Resource icon

Level System 3 - Rerelease 4.2

No permission to download

Joshua

Squire
Joshua submitted a new resource:

Level System 3 - Rerelease - Levels XML

Description of System
This is a re release of the level System 3 that was popular with RunUo 2.2. The original release was a bit buggy and also required edits to playermobile which caused serialization errors periodically.

Please take this for what it is as I'm trying to recover and make the system usable again and will post updates as I get them.

Working Features
- Levels up when killing Creature
- Level up Gump
- Stat Distribution
- Skill Point Distribution
- Mount...

Read more about this resource...
 

Joshua

Squire
Forgot to include this. The ExpTable i have on the download was a test file, this one is more complete ..
 

Attachments

  • Exp Tables.CS
    14.9 KB · Views: 46

Lena80

Citizen
nice rerelease,also yeah the party share is buggy. with 2 members the killer gets all the exp
 

Espcevan

Citizen
Got this installed with no issues.
So far I'm Liking it.

Figured I would at-least comment on the ease of Integration.

Can't wait for future updates to this.
 

Joshua

Squire
Please post your Crash Log, I'm currently at work so i cannot actively do any testing in game. But if it's code I can review it *my work thinks im working when im looking at code* lol...
 
Last edited:

eugenesa

Citizen
Please post your Crash Log, I'm currently at work so i cannot actively do any testing in game. But if it's code I can review it *my work thinks im working when im looking at code* lol...
Server Crash Report
===================

ServUO Version 0.5, Build 6977.34100
Operating System: Microsoft Windows NT 6.1.7601 Service Pack 1
.NET Framework: 4.0.30319.42000
Time: 2019-02-07 오후 3:03:13
Mobiles: 20604
Items: 185902
Exception:
System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.
위치: Server.LevelHandler.Set(Mobile killer, Mobile killed)
위치: Server.Mobiles.BaseCreature.OnDamage(Int32 amount, Mobile from, Boolean willKill)
위치: Server.Mobile.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.Mobiles.BaseCreature.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.AOS.Damage(IDamageable damageable, Mobile from, Int32 damage, Boolean ignoreArmor, Int32 phys, Int32 fire, Int32 cold, Int32 pois, Int32 nrgy, Int32 chaos, Int32 direct, Boolean keepAlive, DamageType type)
위치: Server.Items.BaseWeapon.OnHit(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.BaseWeapon.OnSwing(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.Fists.OnSwing(Mobile attacker, IDamageable defender)
위치: Server.Mobile.CombatTimer.OnTick()
위치: Server.Timer.Slice()
위치: Server.Core.Main(String[] args)
 

Joshua

Squire
Also for some additional clarity, before the crash happened. Did it actually happen the moment you attacked the creature, or when you killed the creature?
 

eugenesa

Citizen
Also for some additional clarity, before the crash happened. Did it actually happen the moment you attacked the creature, or when you killed the creature?
Yes
It's a server crash when you attack monsters with a pet and get experience.
 

Joshua

Squire
Yes
It's a server crash when you attack monsters with a pet and get experience.

Found the problem, It will be a little bit of time to find a work around.
[doublepost=1549560923][/doublepost]Fixed it. Replace your Level Handler with this one.
Confirmed it doesn't crash on the current servuo distro , also confirmed in debug mode, nothing funny happening.
Silly attachments. tricks are for kids...
 

Attachments

  • Level Handler.CS
    10 KB · Views: 5

eugenesa

Citizen
Found the problem, It will be a little bit of time to find a work around.
[doublepost=1549560923][/doublepost]Fixed it. Replace your Level Handler with this one.
Confirmed it doesn't crash on the current servuo distro , also confirmed in debug mode, nothing funny happening.
Silly attachments. tricks are for kids...
Wow ~! Thank you very much
It works very well ~!
[doublepost=1549627173][/doublepost]This is a bug report.
As shown in the picture,
It is wrong.
Is this a title issue?
 

Attachments

  • 레벨 표시 에러.png
    레벨 표시 에러.png
    48.6 KB · Views: 73
Last edited:

eugenesa

Citizen
It's really great. Almost complete.
But....
Upcoming character name display It is the same as before the modification.
[doublepost=1549813330][/doublepost]This is a bug report.
Double-click the quest npc
Just happen to crash the server ...
********************************************************************************
ServUO Version 0.5, Build 6978.22313
Operating System: Microsoft Windows NT 6.1.7601 Service Pack 1
.NET Framework: 4.0.30319.42000
Time: 2019-02-10 오후 3:34:04
Mobiles: 20523
Items: 185074
Exception:
System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.
위치: Server.LevelHandler.Set(Mobile killer, Mobile killed)
위치: Server.Mobiles.BaseCreature.OnDamage(Int32 amount, Mobile from, Boolean willKill)
위치: Server.Mobile.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.Mobiles.BaseCreature.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.AOS.Damage(IDamageable damageable, Mobile from, Int32 damage, Boolean ignoreArmor, Int32 phys, Int32 fire, Int32 cold, Int32 pois, Int32 nrgy, Int32 chaos, Int32 direct, Boolean keepAlive, DamageType type)
위치: Server.Items.BaseWeapon.OnHit(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.BaseWeapon.OnSwing(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.Fists.OnSwing(Mobile attacker, IDamageable defender)
위치: Server.Mobile.CombatTimer.OnTick()
위치: Server.Timer.Slice()
위치: Server.Core.Main(String[] args)
 

Attachments

  • [ServUO.com]-player.png
    [ServUO.com]-player.png
    48.6 KB · Views: 24
Last edited:

Joshua

Squire
Ahh that was my mistake, I forgot to put the updated LevelHandler.cs in the new download file, just re download it from the previous thread, I will update the zip file now with the right file.
 

Joshua

Squire
Joshua updated Level System 3 - Rerelease with a new update entry:

Added levelHandler.cs updated fix

Forgot to include the updated LevelHandler.cs in the core folder to address a previously fixed bug.

Read the rest of this update entry...
[doublepost=1549829033][/doublepost]The other issue with the overhead display, that I cannot replicate. Still works as intended for me. Can you post your playermobile.cs for me ?
[doublepost=1549837849][/doublepost]Did some digging, I found the issue with double clicking on Quest PC's as well as BaseVendors, the titles distro edit was the issue. I've posted the updated edit to titles.cs on the main resource page and below. Just update this bit of code and that problem should go away.

Code:
            if (Core.SA)
            {
                #region Level System
                PlayerMobile pm = beheld as PlayerMobile;
                XMLPlayerLevelAtt xmlplayer = (XMLPlayerLevelAtt)XmlAttach.FindAttachment(pm, typeof(XMLPlayerLevelAtt));
                Configured c = new Configured();
               
                if (beheld is PlayerMobile && ((PlayerMobile)beheld).PaperdollSkillTitle != null)
                {
                    if (c.PaperdollLevel)
                    {
                        string d = LevelCore.Display(pm, new Configured());
                        title.Append(" - Level " + d + ", ").Append(((PlayerMobile)beheld).PaperdollSkillTitle);
                    }
                    else
                        title.Append(", ").Append(((PlayerMobile)beheld).PaperdollSkillTitle);
                }
                else if (beheld is PlayerMobile && ((PlayerMobile)beheld).PaperdollSkillTitle == null)
                {
                    string d = LevelCore.Display(pm, new Configured());
                    if (c.PaperdollLevel)
                    {
                        if (pm.AccessLevel > AccessLevel.Player && c.StaffHasLevel)
                        {
                            title.Append(" - Level " + d);
                        }
                        else
                        {
                            if (pm.AccessLevel < AccessLevel.GameMaster)
                            {
                                title.Append(" - Level " + d);
                            }
                        }
                       
                    }
                }

                else if (beheld is BaseVendor)
                    title.AppendFormat(" {0}", customTitle);
               
               
                /*
                if (beheld is PlayerMobile && ((PlayerMobile)beheld).PaperdollSkillTitle != null)
                    title.Append(", ").Append(((PlayerMobile)beheld).PaperdollSkillTitle);
                else if (beheld is BaseVendor)
                    title.AppendFormat(" {0}", customTitle);
                */
                #endregion
            }

It's really great. Almost complete.
But....
Upcoming character name display It is the same as before the modification.
[doublepost=1549813330][/doublepost]This is a bug report.
Double-click the quest npc
Just happen to crash the server ...
********************************************************************************
ServUO Version 0.5, Build 6978.22313
Operating System: Microsoft Windows NT 6.1.7601 Service Pack 1
.NET Framework: 4.0.30319.42000
Time: 2019-02-10 오후 3:34:04
Mobiles: 20523
Items: 185074
Exception:
System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.
위치: Server.LevelHandler.Set(Mobile killer, Mobile killed)
위치: Server.Mobiles.BaseCreature.OnDamage(Int32 amount, Mobile from, Boolean willKill)
위치: Server.Mobile.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.Mobiles.BaseCreature.Damage(Int32 amount, Mobile from, Boolean informMount, Boolean checkDisrupt)
위치: Server.AOS.Damage(IDamageable damageable, Mobile from, Int32 damage, Boolean ignoreArmor, Int32 phys, Int32 fire, Int32 cold, Int32 pois, Int32 nrgy, Int32 chaos, Int32 direct, Boolean keepAlive, DamageType type)
위치: Server.Items.BaseWeapon.OnHit(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.BaseWeapon.OnSwing(Mobile attacker, IDamageable damageable, Double damageBonus)
위치: Server.Items.Fists.OnSwing(Mobile attacker, IDamageable defender)
위치: Server.Mobile.CombatTimer.OnTick()
위치: Server.Timer.Slice()
위치: Server.Core.Main(String[] args)