By
Monster
in Plugins
XLevels (BattlePass) - levels and awards for your server.
- Optimization of the interface for different monitor resolutions.
- Storing player data in - oxide/data/XDataSystem/XLevels
- There is a lang ru/en/uk/es.
- Sound effects when interacting with the menu.
- Setting the number of levels and XP to increase the level.
- Setting up the level reward. [ Item, Custom Item, Command ]
[ You can customize the rewards for a specific level. For example 5, 10, 20, 30. The rest will be without rewards ]
- Configuring the issuance of XP by permissions for online.
- Setting the XP multiplier by permissions.
- Setting up coupons. [ Exchange for XP ]
- Configuring boxes and the chance to spawn coupons.
- Configuring the issuance of XP. [ Loot, kill, break barrels, open boxes, pick from the ground, harvest ]
- Possibility to enable/disable the system of coupons.
- Possibility to enable/disable VIP levels.
- Chat prefix with player level.
- Mini-panel with pumping progress.
- Inventory with received awards.
- Two options to get into the level menu. [ Command | NPC shops/keepers ]
- Setting the increase in the amount of required XP with each pumped level.
- The ability to accumulate XP if the maximum level is reached. [ Useful for top players ]
- The ability to exchange coupons for XP if the maximum level is reached. [ Useful for top players ]
- Top players. [ Level | XP ]
- The ability to level up and receive rewards again after the maximum level has been reached.
[Level and XP reset to zero. ]
- Rank system. [ Setting in config. Display in the chat (prefix) and in the menu. ]
- Possibility to hide the reward. [ The reward will not be displayed until the player reaches the required level. ]
-> Overview - YouTube <-
Shortnames for config settings.
WORK WITH BetterLoot
For the correct spawning of coupons in the crate, in the BetterLoot plugin, remove/comment out the following line of code.
630 - container.inventory.capacity = container.inventory.itemList.Count;
Permissions
xlevels.vip - access to VIP rewards.
xlevels.top - access to the top players.
Commands
Open the level menu - /level, /lvl, /pass
Give XP - level_give_xp <SteamID> <Amount XP>
API
int API_GetLevel(BasePlayer player) - returns the player's level.
int API_GetLevel(ulong userID) - returns the player's level.
void API_GiveXP(BasePlayer player, float XPAmount) - give the player XP.
string API_GetPlayerPrefix(BasePlayer player) - get a ready-made player prefix with all the settings.
string API_GetPlayerPrefix(ulong userID) - get a ready-made player prefix with all the settings.
Config
{
"General settings": {
"XP for the pickup of resources": true,
"XP for harvest": true,
"XP for bonus resources": true,
"XP for kill": true,
"XP for opening crates": true,
"Include messages of received rewards in chat": true,
"Include level up messages in chat": true,
"Enable coupons": true,
"Enable VIP rewards": true,
"Get VIP reward - [ True - only with permission | False - without permission ]": true,
"Take VIP Reward - [ True - take only with permission | False - take at any time without permission ]": true,
"Add XP if the maximum level is already reached - [ Suitable for top players ]": false,
"Exchange coupons if you have already reached the maximum level - [ Suitable for top players ]": false,
"Reset the level and XP of the player after reaching the maximum level - [ Players will re-open levels and receive rewards ]": false,
"There is a plugin for custom loot": false,
"Profile SteamID for custom avatar": 0,
"List of commands to open the menu": [
"level",
"lvl",
"pass"
],
"Enable prefix in chat - [ Set to False if the prefix should be disabled or the prefix is used by a third party chat plugin ]": true,
"Display the level in prefix": true,
"Display the rank in prefix": true,
"List of available ranks - [ Level - Rank ] ( If the list is empty, then the rank will not be displayed in the menu )": {
"0": "CAP-Х",
"1": "IRON-1",
"2": "IRON-2",
"3": "IRON-3",
"4": "BRONZE-1",
"5": "BRONZE-2",
"6": "BRONZE-3",
"7": "SILVER-1",
"8": "SILVER-2",
"9": "SILVER-3",
"10": "GOLD-1",
"11": "GOLD-2",
"12": "GOLD-3",
"13": "PLATINUM-1",
"14": "PLATINUM-2",
"15": "PLATINUM-3",
"16": "DIAMOND-1",
"17": "DIAMOND-2",
"18": "DIAMOND-3",
"19": "IMMORTAL-1",
"20": "IMMORTAL-2",
"21": "IMMORTAL-3",
"22": "RADIANT-1",
"23": "RADIANT-2",
"24": "RADIANT-3",
"25": "GOD"
}
},
"Vendings settings": {
"Open the level menu. [ True - Immediately after the opening of the NPC shop | False - UI button ]": false,
"Access to the level menu is only through the NPC shops. [ True - NPC shop | False - Command ]": false,
"List of NPC shops in which you can open the level menu (shop name)": [
"Black Market"
]
},
"XP multiplier": {
"Enable XP multiplier when exchanging coupons - [ This parameter affects only the multipliers for the exchange of coupons ]": false,
"Setting up permissions for XP multipliers for the exchange of coupons and other actions. [ Permission | XP multiplier ]": {
"xlevels.125p": 2.25,
"xlevels.75p": 1.75,
"xlevels.10p": 1.1
}
},
"Issuing XP for online": {
"Enable issuing XP to online players": false,
"XP issue interval (in sec.)": 15.0,
"Setting up permissions. [ Permission | XP ]": {
"xlevels.default": 5.0
}
},
"Mini-bar location / Main menu settings": {
"AnchorMin": "1 0",
"AnchorMax": "1 0",
"OffsetMin": "-403 16",
"OffsetMax": "-210 42",
"Show mini-bar": true,
"Color background_1": "0.517 0.521 0.509 0.95",
"Color background_2": "0.217 0.221 0.209 0.95",
"Display reward container - [ True - Only when there is a reward in the level | False - Always ]": false,
"Display required reward level": true,
"Display required VIP reward level": true
},
"Settings levels": {
"Maximum level": 25,
"Number of XP to upgrade one level": 100.0,
"How much to increase the number of XP with each level": 25.0
},
"XP settings | Shortname : ValueXP": {
"XP for the pickup of resources": {
"stones": 10.0,
"sulfur.ore": 15.0,
"metal.ore": 12.5
},
"XP for harvest": {
"potato.entity": 2.5,
"corn.entity": 1.75,
"hemp.emtity": 0.25
},
"XP for bonus resources": {
"stones": 5.0,
"sulfur.ore": 10.0,
"metal.ore": 7.5
},
"XP for kill / destroy barrel": {
"boar": 10.0,
"loot-barrel-1": 7.5,
"heavyscientist": 2.5
},
"XP for opening crates": {
"crate_normal": 5.0,
"crate_normal_2": 1.0,
"crate_tools": 3.5
}
},
"Coupons for XP": [
{
"Coupon name": "Coupon 5ХР",
"Coupon text": "Coupon for 5ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 5,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 3
}
]
},
{
"Coupon name": "Coupon 10ХР",
"Coupon text": "Coupon for 10ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 10,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 3
}
]
},
{
"Coupon name": "Coupon 25ХР",
"Coupon text": "Coupon for 25ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 25,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 2
}
]
},
{
"Coupon name": "Coupon 50ХР",
"Coupon text": "Coupon for 50ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 50,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 2
}
]
},
{
"Coupon name": "Coupon 100ХР",
"Coupon text": "Coupon for 100ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 100,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 1
}
]
},
{
"Coupon name": "Coupon 200ХР",
"Coupon text": "Coupon for 200ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 200,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 1
}
]
},
{
"Coupon name": "Coupon 500ХР",
"Coupon text": "Coupon for 500ХР\n\nExchange them and get XP to level up!\n\nCommand for exchange - /level",
"Coupon skin": skinID,
"XP amount": 500,
"Setting the chance of falling out of crates/barrels": [
{
"Name crate/barrel": "crate_normal_2",
"Drop chance": 50.0,
"Minimum amount of coupons": 1,
"Maximum number of coupons": 1
}
]
}
],
"Level reward": {
"1": {
"Item shortname / custom reward name [ Must not be empty ]": "wood",
"Reward display name": "Wood",
"Item quantity": 1250,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"2": {
"Item shortname / custom reward name [ Must not be empty ]": "charcoal",
"Reward display name": "Charcoal",
"Item quantity": 1500,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"3": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.ore",
"Reward display name": "Metal ore",
"Item quantity": 1000,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"4": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.fragments",
"Reward display name": "Metal fragments",
"Item quantity": 750,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"5": {
"Item shortname / custom reward name [ Must not be empty ]": "sulfur.ore",
"Reward display name": "Sulfur ore",
"Item quantity": 500,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"6": {
"Item shortname / custom reward name [ Must not be empty ]": "sulfur",
"Reward display name": "Sulfur",
"Item quantity": 300,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"7": {
"Item shortname / custom reward name [ Must not be empty ]": "gunpowder",
"Reward display name": "Gunpowder",
"Item quantity": 400,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"8": {
"Item shortname / custom reward name [ Must not be empty ]": "hq.metal.ore",
"Reward display name": "HQM ore",
"Item quantity": 25,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"9": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.refined",
"Reward display name": "HQM",
"Item quantity": 20,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"10": {
"Item shortname / custom reward name [ Must not be empty ]": "scrap",
"Reward display name": "Scrap",
"Item quantity": 50,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
}
},
"VIP level reward": {
"1": {
"Item shortname / custom reward name [ Must not be empty ]": "wood",
"Reward display name": "Wood",
"Item quantity": 1250,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"2": {
"Item shortname / custom reward name [ Must not be empty ]": "charcoal",
"Reward display name": "Charcoal",
"Item quantity": 1500,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"3": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.ore",
"Reward display name": "Metal ore",
"Item quantity": 1000,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"4": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.fragments",
"Reward display name": "Metal fragments",
"Item quantity": 750,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"5": {
"Item shortname / custom reward name [ Must not be empty ]": "sulfur.ore",
"Reward display name": "Sulfur ore",
"Item quantity": 500,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"6": {
"Item shortname / custom reward name [ Must not be empty ]": "sulfur",
"Reward display name": "Sulfur",
"Item quantity": 300,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"7": {
"Item shortname / custom reward name [ Must not be empty ]": "gunpowder",
"Reward display name": "Gunpowder",
"Item quantity": 400,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"8": {
"Item shortname / custom reward name [ Must not be empty ]": "hq.metal.ore",
"Reward display name": "HQM ore",
"Item quantity": 25,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"9": {
"Item shortname / custom reward name [ Must not be empty ]": "metal.refined",
"Reward display name": "HQM",
"Item quantity": 20,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
},
"10": {
"Item shortname / custom reward name [ Must not be empty ]": "scrap",
"Reward display name": "Scrap",
"Item quantity": 50,
"Item skin": 0,
"Command": "",
"Link to custom image": "",
"Hide reward - [ Reward will not be displayed until the player reaches this level ]": false
}
}
}