SkillTree
SkillTree 6 SkillTree
SkillTree 8 SkillTree
SkillTree 2 SkillTree
SkillTree 3 SkillTree
SkillTree 7 SkillTree
SkillTree 4 SkillTree
SkillTree 5 SkillTree
SkillTree 1 2 SkillTree
RespecConfirm SkillTree
FarmXP SkillTree
 

SkillTree

(2 customer reviews)

This plugin adds a character progression system to your server in the form of leveling and skill tree system.

Players gain xp by cutting trees, mining rocks, killing NPCs etc, and are rewarded with skill points when they level up.

These points can be used to unlock perks and buffs across a number of different skill trees.

$25.00

Sold By: imthenewguy
SKU: SkillTree.cs Categories: , , Tags: , , , , , , , ,

Description

About SkillTree

This plugin adds a character progression system to your server in the form of leveling and skill tree system.
Players gain xp by cutting trees, mining rocks, killing NPCs etc, and are rewarded with skill points when they level up.
These points can be used to unlock perks and buffs across a number of different skill trees.
The plugin is extremely customizable and server owners can change, move, scale or disable any perk to tailor the setup to their server.

 

Features

  • 44 unique buff types.
  • 8 unique skill trees.
  • 26 sources of xp with configurable values.
  • An functional tree system that prevents unlocking/upgrading of nodes if the player has not invested enough skill points into a tree.
  • Configurable limits on the amount of skill points that players can spend, allowing for more specialized builds.

SkillTree allows users to focus on multiple skill trees and unlock nodes in each tree as they level, to make their characters more powerful and unique.

 

Requirements/Dependencies

 

Permissions

skilltree.chat 	- required to use the chat commands to access the skill tree menu.
skilltree.xp 	- required to obtain xp from xp sources.
skilltree.tree 	- required to access and use the skill tree.
skilltree.admin - required to use the admin commands.

 

Chat Commands

Command: st
Description: Opens the skill tree menu. Requires skilltree.chat permissions.

Command: xp
Description: Displays the current xp and level information for the user.

Command: updatexptable
Description: Recalculates the xp table based on the config values.

Command: togglexpdrops
Description: Toggles the xp popup when obtaining xp.

Command: togglexphud
Description: Toggles the xp hud on the players screen.

Command: togglebc
Description: Toggles the BetterChat title on/off.

Command: movebar
Description: Opens a UI that can be used to move the xp bar location.

Command: turbo
Description: Toggles the turbo on the boat with the relevant perk.

Command: resetdata
Parameters: <name>
Description: Resets the target players data.

Command: givexp
Parameters: <name> <amount>
Description: Gives the player matching the name parameter, xp equal to the amount parameter.

Command: givesp
Parameters:  
Description: Gives the player matching the name parameter, skill points equal to the amount parameter.

 

XP Sources

Experience can be gained from a number of different sources. The value for each source can be adjusted via the config.

NodeHit - Hitting a stone, metal or sulfur mining node.
NodeHitFinal - Finishing a stone, metal or sulfur mining node.
TreeHit - Hitting a tree.
TreeHitFinal - Knocking down a tree.
SkinHit - Hitting an animal with a skinning tool.
SkinHitFinal - Finishing off an animal with a skinning tool.
CollectWildPlant - Collecting any map generated collectible, such as hemp, corn, pumpkin, stone, sulfur or metal.
CollectGrownPlant - Collecting any player grown produce.
BuildingBlockDeployed - Placing down a twig building block.
FishCaught - Catching a fish.
Crafting - Whenever a craft is successfully completed. XP is calculated based on the duration of the craft.
ScientistNormal - Killing a blue scientist.
ScientistHeavy - Killing a heavy scientists.
Barrels - Smashing barrels.
RoadSign - Smashing road signs.
SmallAnimal - Killing a small animal such as a chicken.
MediumAnimal - Killing a medium animal such as a boar, wolf or stag.
LargeAnimal - Killing a large animal such as a horse, shark or bear.
Scarecrow - Killing a scarecrow or a zombie from ZombieHorde.
Mission - Completing a mission in rust.
BradleyAPC - Getting the last hit on Bradley.
LootHackedCrate - First player to loot a locked crate.
LootHeliCrate - First player to loot a Heli crate.
LootBradleyCrate - First player to loot a Bradley crate.
CookingMealXP - (Requires cooking plugin) XP is calculated per ingredient used. Example 2 tomatoes and 8 bear meat would yield 100xp.
RaidableBaseCompletion - Gives xp to players who participated in a raidable base on its completion.

 

Buffs

Name: Mining Yield
Config Value: 1
Description: Increases the amount of resources gained while mining.

Name: Instant Mine
Config Value: 2
Description: Gives the user a chance to instantly mine out a stone, sulfur or metal node.

Name: Smelt On Mine
Config Value: 3
Description: Gives the user a chance to smelt some of the ore as its mined from sulfur and metal nodes.

Name: Mining Luck
Config Value: 4
Description: Gives the user a chance to obtain items from the Mining luck loot table when they finish mining a node.

Name: Mining Tool Durability
Config Value: 5
Description: Decreases the durability loss of mining tools.

Name: Woodcutting Yield
Config Value: 6
Description: Increases the amount of resources gained while woodcutting.

Name: Instant Chop
Config Value: 7
Description: Gives the user a chance to instantly chop down a tree.

Name: Woodcutting Coal
Config Value: 8
Description: Gives the user a chance to obtain some charcoal while woodcutting.

Name: Woodcutting Luck
Config Value: 9
Description: Gives the user a chance to obtain items from the Woodcutting luck loot table when they finish cutting down a tree.

Name: Woodcutting Tool Durability
Config Value: 10
Description: Decreases the durability loss of woodcutting tools.

Name: Skinning Yield
Config Value: 11
Description: Increases the amount of resources gained while skinning.

Name: Instant Skin
Config Value: 12
Description: Gives the user a chance to instantly cut up an animal.

Name: Skinning Tool Durability
Config Value: 13
Description: Decreases the durability loss of skinning tools.

Name: Skinning Cook
Config Value: 14
Description: Gives the user a chance to received cooked meat, instead of raw meat, while skinning an animal.

Name: Harvest Wild Yield
Config Value: 15
Description: Increases the yield when harvesting map generated collectibles, such as berries, hemp, stone, sulfur and mushrooms.

Name: Harvest Grown Yield
Config Value: 16
Description: Increases the yield when harvesting player grown produce.

Name: Extra Fish
Config Value: 17
Description: Gives the user a chance of receiving an extra fish while fishing.

Name: Double Bandage Heal
Config Value: 18
Description: Doubles the healing power of cloth bandages.

Name: Radiation Reduction
Config Value: 19
Description: Reduces the amount of radiation damage taken by the player.

Name: Extra Food
Config Value: 20
Description: Increases the amount of calories the player receives when consuming food.

Name: Fire Damage Reduction
Config Value: 21
Description: Reduces the amount of fire damage received.

Name: Fall Damage Reduction
Config Value: 22
Description: Reduces the amount of fall damage received.

Name: No Cold Damage
Config Value: 23
Description: Removes all cold damage from the player.

Name: Wounded Resist
Config Value: 24
Description: Gives the player a chance to get straight back on their feet after entering the wounded state.

Name: Animal Damage Resist
Config Value: 25
Description: Reduces the damage taken by animals.

Name: Riding Speed
Config Value: 26
Description: Increases the speed of a horse while riding it.

Name: Free Bullet Chance
Config Value: 27
Description: Gives the player a chance to not expend a bullet when firing a gun.

Name: Primitive Expert
Config Value: 28
Description: Removes durability loss for primitive weapons.

Name: Upgrade Refund
Config Value: 29
Description: Gives the player a chance to receive their resources back when upgrading a building block.

Name: Craft Speed
Config Value: 30
Description: Increases the crafting speed of a player.

Name: Research Refund
Config Value: 31
Description: Gives the player a chance to receive their scrap back when researching an item on the research bench.

Name: Craft Refund
Config Value: 32
Description: Gives the player a chance to receive their crafting materials back when crafting an item.

Name: Extra Scrap Barrel
Config Value: 33
Description: Gives the player a chance to receive additional scrap when destroying a barrel.

Name: Barrel Smasher
Config Value: 34
Description: Allows the player to instantly smash a barrel with any weapon.

Name: Extra Scrap Crate
Config Value: 35
Description: Gives the player a chance to obtain extra scrap when looting a crate for the first time.

Name: Component Chest
Config Value: 36
Description: Gives the player a chance to obtain additional components when looting a crate for the first time.

Name: Electronic Chest
Config Value: 37
Description: Gives the player a chance to obtain additional electronics when looting a crate for the first time.

Name: Component Barrel
Config Value: 38
Description: Gives the player a chance to obtain additional components when smashing a barrel.

Name: Electronic Barrel
Config Value: 39
Description: Gives the player a chance to obtain additional electronics when smashing a barrel.

Name: Melee Resist
Config Value: 40
Description: Reduces the damage taken by melee weapons.

Name: Iron Stomach
Config Value: 41
Description: Allows the player to eat spoiled and raw food without being poisoned.

Name: Boat Speed
Config Value: 42
Description: Allows the user to activate a turbo boost while on a boat, increasing the boats speed.

Name: Recycler Speed
Config Value: 43
Description: Increases the speed of recycling for the player.

 

XP Table Info

The xp table uses a common equation to calculate its levels and xp requirements. You can read more about the method here: https://blog.jakelee.co.uk/converting-levels-into-xp-vice-versa/

There is also a spreadsheet you can make a copy of and adjust the y value at the top of. Increasing the number minimizes the xp between levels. Find a good value, then put it in the “y” value under the “Leveling information” section in the config.

Rule of thumb:

– 0.07: default
– 0.04: grindy.

 

API

object STCanGainXP(BasePlayer player, BaseEntity source)

Returning a non-null value will cancel the xp gain. Source can return null so be sure to check that.

 

string[] ST_GetPlayerLevel(BasePlayer player)

Returns the players level [0] and xp [1] as a string[].

 

object STCanReceiveYield(BasePlayer player, BaseEntity entity)

Returning a non-null value will cancel the yield gain.

2 reviews for SkillTree

  1. Stefan (verified owner)

    looks very high quality and is easy to adjust

  2. marcopetersen (verified owner)

    Nice Plugin.

Only logged in customers who have purchased this product may leave a review.

Version 1.0.6 | Updated January 13, 2022
  • Added Added Hook when a player is going to lose xp from a death - object STOnLoseXP(BasePlayer player). Returning a non-null value cancels the xp loss.
  • Added Added support for EventManager to prevent xp loss from a death while at an event (configurable).
  • Added Added powertool exclusion for woodcutting, skinning and mining perks. Will still award xp if they are on the whitelist and the whitelist is being used.
  • Added Added null checks to OnDispenserBonus.
  • Updated Changed the xp to not be awarded if the powertool exclusion is set to false for a hook, and the tool is not on the whitelist.
  • Updated Added rounding for the ui display of xp.
  • Updated Changed the ST_GetPlayerLevel API to return a string[] instead. The first value will be the player level (returns the configured max level if the players level exceeds the max), and the second value will be the xp.
  • Updated Changed the player level displayed with BetterChat and on the pump xp bar to display the max config level if the player exceeds that level (if max level is > 0).
  • Fixed Fixed a bug that caused players' buffs to double in value upon reconnecting to a server that had not restarted between play sessions.
Version 1.0.5 | Updated January 9, 2022
  • Added Added Recycler Speed perk to the Scavenging skill tree.
  • Added Added check when adding a new entry to the taskMonitor Dictionary to prevent a duplication error.
  • Added Added new hook KeyValuePair ST_GetPlayerLevel(BasePlayer player). This returns the players level (int) and their current xp (double).
  • Added Added xp source for raidable base completion.
  • Added Fixed a bug that would consume any item as cost to pay the respec instead of scrap specifically.
Version 1.0.4 | Updated January 7, 2022
  • Added Added xp reward source for completing Rust Missions.
  • Added Added xp reward source for destroying Bradley, looting Bradley crates, looting Heli crates and looting locked crates.
  • Fixed Fixed a message issue with the givexp command.
  • Added Added support for receiving xp when creating a meal using the cooking plugin. XP is calculated per ingredient used (requires cooking 1.2.6 or later).
  • Added Added Hook to prevent xp gain: STCanGainXP(BasePlayer player, BaseEntity source). Returning a non-null value prevents the xp gain.
  • Added Added command to give a player skill points: /givesp .
  • Added Added config option for default xp bar placement.
Version 1.0.3 | Updated January 3, 2022
  • Added Added command: /togglebc to toggle BetterChat titles on/off for each player.
  • Updated Optimized OnEntityDismounted.
  • Updated Combined OnEntityDeath hooks that targeted BaseCombatEntity's.
  • Fixed Fixed a bug where the looted containers perks could be rolled multiple times.
  • Added Added support for ZombieHorde. Will not receive xp when killing zombies (change the Scarecrow value in the config to adjust the amount).
  • Added Added a command /movebar which allows players to relocate the xp bar.
Version 1.0.2 | Updated January 2, 2022
  • Fixed Fixed a bug with the leveling system rounding up the players current level.
  • Added Added a pumping XP bar to the current xp bar.
  • Added Added a max level colour for BetterChat.
  • Added Added a chat command to reset player data (resetdata )
  • Added Added check for players levels based on their xp/config values when the plugin loads. Will adjust player levels to match the config values based on the accumulated xp.
Version 1.0.1 | Updated January 1, 2022
  • Fixed Fixed a number of possible null reference issues.
  • Added Added extra checks to confirm the entity is a real player in a number of hooks.
  • Added Added a fail safe to the xp_sources config so it won't error if the user makes a mistake.
  • Added Added new xp sources: barrels and roadsigns.
  • Added Added support for BetterChat to display the players level in their title.
  • Updated Made it so the xp bar will display when the user connects to the server, if they have it toggled on.
  • Added Added Respec button and description to the lang file.
  • Added Added a minimum and and maximum value for component, electronic and scrap drops.
  • Fixed Fixed a rare NRE from the OnEntityMounted hook.
  • Removed Removed some test outputs that were spamming console.
  • Updated Changed the boat speed perk to use a chat command and/or mouse 3 input, depending on the config. This is due to the performance hit that OnPlayerInput can have on higher pop servers.
  • Updated Few other random optimizations.

No custom license found. Refer to the TOS for License information!

Got something to discuss?


Customer
BetterDeadThanZed
26 days 21 hours ago

I watched the video but I’m confused about something. What is “respec”?

Support
Im the new guy go easy D
26 days 21 hours ago

Respec means to reallocate the players skill points. It’s a common term when dealing with skill trees 🙂

Customer
Mbesailor
25 days 19 hours ago

Morning. Have a question, is there a way to move where it has “Lv 42:” to just over the quick select functions where your ax, torch, and snowballs are.

Support
Im the new guy go easy D
25 days 17 hours ago

What quick select functions are you talking about? I can look at implementing a movement function so players can move it to the desired locations.

Customer
Mbesailor
25 days 17 hours ago

The quick select where your place your weapons at. if you look at your video you have an ax, torch, and snowballs. the LV42 in the video is just to the right of it. But yes be nice to move around on the screen to a specific location.

Support
Im the new guy go easy D
25 days 5 minutes ago

Updated in 1.0.3. Use the /movebar command.

Customer
Jaxors
25 days 12 hours ago

I think Mbesailor is referring to the belt

Support
Im the new guy go easy D
25 days 4 hours ago

Ahh i understand. No worries. I think allowing for the option to move it around would manage most expectations from players.

Customer
BadonkaNae
23 days 18 hours ago

movebar seems to be an unknown command

Customer
BadonkaNae
23 days 17 hours ago

nevermind
didn’t see that was just added

Customer
BetterDeadThanZed
21 days 14 hours ago

I know players can move the UI, but could we get an option in the config to set the default location?

Support
Im the new guy go easy D
21 days 10 hours ago

Will add to the next release.

Customer
Dustin Hansen
19 days 15 hours ago

I have had a few complaints now from players that respec is taking their ammo instead of scrap for some reason.

Support
Im the new guy go easy D
19 days 7 hours ago

Oh god. Yeah I found the issue. Will push a patch out today that fixes it.

Customer
Dustin Hansen
19 days 11 hours ago

All of my images from the Combat, Build Craft, and Scavenging Skill Trees and seven images from the Medical Skill Tree are not loading and say No Image Found. I tried reloading Image Library and SkillTree, but that didn’t help, neither did server restarts.

Support
Im the new guy go easy D
19 days 7 hours ago

Is this still the case?
Not having this issue on any of my servers. Add me on discord and send me your config: im the new guy#0001

Customer
matthew worrell
12 days 19 hours ago

My players lvl’s keep resetting if i wipe map or anything else, is there a way to prevent this from happening?

Support
Im the new guy go easy D
12 days 12 hours ago

There is a config option: “Erase all data on wipe”. Set that to false.

Customer
DeX
12 days 9 hours ago

Hi there, Is is possible toPrevent XP loss when dying at an event hosted by RaidBases?

Support
Im the new guy go easy D
11 days 21 hours ago

Can’t see any hooks besides when someone leaves the area,

Customer
Dustin Hansen
8 days 6 hours ago

Any plans to add more restrictions on respec? Like times per day or week that a player can respec, for example? We have some players that are taking advantage a bit, but I don’t want to disable it necessarily.

Support
Im the new guy go easy D
8 days 6 hours ago

No plans. Increase the cost to respec so it’s less viable.

Customer
marcopetersen
1 day 11 hours ago

Good day.

Thank you for this great plugin.
What I would like if it would support multiple language files such as german

 
Plugin FAQ – How do I use this .zip/.7z file I just purchased on my server?

• First, you want to unzip the file. You can do so by just double-clicking it to open, then drag the contents to the desired location (you may need to install an external unzipping software if you don’t already have one such as 7zip or winrar)
• Next you will find either a structure of folders or just the .cs file itself (it’s the actual plugin file itself).
• After that just install the .cs (plugin file) into your …/oxide/plugins/ folder where you will install plugins you ever need to.

Additionally, here’s a great video that easily covers adding a plugin to your server if you need! https://youtu.be/yWC_p97FhQA

• Installation is not included with any products on the site, however, if needed we may assist if you reach out to our support.