About Skill System
xSkillSystem
xSkillSystem adds an RPG-style leveling experience to your gameplay. Whether you're chopping wood, mining for ores, or battling wildlife, every action earns you XP and helps you level up specialized skills. XP Table was testet properly and it should be fine.
PLUG&PLAY PLUGIN, but options to adjust the XP table.
Test it here: client.connect 135.181.134.94:60402
Skills: Each player starts at Level 1 in every skill and levels up through regular gameplay. Here's what you can master:
- Woodcutting – Chop trees.
- Mining – Dig deep and extract valuable resources like stone, metal, and sulfur.
- Gathering – Pick up natural items from the environment.
- Slayer – Hunt animals, kill NPCs and fight players.
- Skinning – Skin downed animals for XP.
- Crafting – Gain XP as you build tools, weapons, and other items.
> Each skill has unique XP values, making your path to mastery feel rewarding.
> Ores has different XP table.
> Animals / Player / NPC has different XP table and depends on distance. (BaseXP + (distance *2))
> Each 10th level will trigger a global message.
Double XP Weekends
Level up twice as fast every Friday evening through Sunday!
> Friday 8p.m. - Sunday 12p.m. (UTC +2)
> See the attached double-xp image (the green arrow up is indicating that the DXP event is running)
Eye-Catching UI
Each skill comes with a custom icon, sleek visual panels, XP- and level up popups.
Commands
Use /skills to view your current levels and progress. Use /stats <playername> to view others' skills. Use /lb to see the leaderboards and find out who's on top!
Hooks
// Gives a player a specific amount of XP in a specific skill. Valid Skills: Woodcutting, Mining, Gathering, Slayer, Skinning, Crafting public void GiveXP(BasePlayer player, string skillName, ulong amount) // Returns a specific skill level of a player public int GetSkillLevel(BasePlayer player, string skillName) // Returns the current XP amount of a specific skill level for a player public ulong GetSkillXP(BasePlayer player, string skillName) // Sets a level for a specific skill of a player (Considers XP & XP_Target) public void SetSkillLevel(BasePlayer player, string skillName, int level) // Resets a specific skill level of a player public bool ResetPlayerSkill(BasePlayer player, string skillName) // Resets all skill levels of a player public void ResetAllSkills(BasePlayer player) // Returns if the double xp weekend is currently running (true or false) public bool IsDoubleXPWeekend()
Plugin Preview:
Config
{ "WoodcuttingXP": { "wood": 25 }, "MiningXP": { "stones": 75, "metal.ore": 150, "sulfur.ore": 175, "hq.metal.ore": 300 }, "SkinningXP": { "skinning": 90 }, "GatheringXP": { "collectible": 725 }, "SlayerXP": { "chicken": 25, "boar": 75, "deer": 60, "wolf": 150, "stag": 70, "bear": 250, "default": 100, //fallback, if any NPC not found. "crocodile": 850, "snake": 225, "panther": 650, "tiger": 650, "player_and_npcs": 1500 }, "CraftingXP": { "Build": 5, "Items": 2, "Resources": 1, "Clothing": 5, "Tool": 20, "Medical": 12, "Weapon": 18, "Ammo": 8, "Electrical": 6, "Component": 4, "Common": 2 }, "XPBaseTarget": 275, //Level 1 to 2 you need by default 275 XP, you can change this here. (If changed, delete dataFile) "XPTargetPerLevelIncrease": 85, //XP_Target incremental, e.g. level 2 to 3 will require 360 XP. (Previous TargetXP + 85) "DoubleXPTimes": [ //This default config gives you double xp from Friday 8 p.m. - Sunday 12 p.m. (Double XP Weekend) [UTC TIME +2] { "Day": "Friday", // Valid days: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday "StartHour": 20, // 8p.m. "EndHour": 24 // 12p.m. }, { "Day": "Saturday", "StartHour": 0, "EndHour": 24 }, { "Day": "Sunday", "StartHour": 0, "EndHour": 24 } ] }