Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Welcome to the official documentation for Kitsune-Lab’s K4-Seasons project.
A comprehensive Battle Pass plugin for your server, offering extensive configuration options, per-season settings, level-based rewards, personal and community missions, and a host of additional features to enhance player engagement.
This documentation provides an overview of the available permissions and commands in the K4-Seasons plugin. These features allow for managing and interacting with the season system.
Permissions in K4-Seasons control access to administrative features and commands. Below is a list of available permissions and their purposes.
@k4seasons/admin
Description: Grants access to administrative commands for managing seasons and rewards.
Command Access:
css_givebp [target]
css_season
Description: Displays the season menu with all relevant seasonal data for the player.
Use Case: Allows players to view their progress, available rewards, and other seasonal details.
Permission Required: None (available to all players).
Example Usage:
css_prestige
Description: Attempts to prestige the player, provided they meet the level requirements. Prestiging resets the player's level and grants a prestige multiplier.
Use Case: Enables players to progress to prestige levels for additional benefits and challenges.
Permission Required: None (available to all players).
Example Usage:
css_givebp
Description: Grants a Battle Pass to the specified player.
Use Case: Used by administrators to manually assign Battle Passes to players.
Targets: You can use the player's name, userid or you can use the groupping methods such as @all, @t, @ct, @alive, @dead, @me or any other.
Permission Required: @k4seasons/admin
Syntax:
Parameters:
[target]
: The player identifier (e.g., Name or UserID).
Example Usage:
The K4-Seasons plugin provides two methods to grant a Battle Pass to players: via the css_givebp command or by updating the database through external systems like a webshop.
css_givebp
Description: Grants a Battle Pass to a specified player.
Permission Required: @k4seasons/admin
Syntax:
[target]
: The identifier of the player (e.g., #{userid}
, groups, or username).
Example Usage:
Effect:
Immediately assigns the Battle Pass to the specified player.
The player gains access to Battle Pass-exclusive rewards and benefits for the current season.
Webshops or other external systems can also grant a Battle Pass by updating the player's data in the database.
Update the battle_pass_purchased
Field:
Locate the player in the database (e.g., by steamid
).
Set the battle_pass_purchased
field to a valid current date and time (e.g., the date of purchase).
Example:
Automatic Detection by the Plugin:
The plugin periodically checks the database for updates (every 1 minute).
If it detects that the battle_pass_purchased
field has been updated with a valid date:
It activates the Battle Pass for the player.
The player receives an in-game message, which can be edited in the translations:
Player Access:
The player gains immediate access to all Battle Pass-exclusive rewards and benefits for the current season.
Season-Limited:
The Battle Pass is only valid for the current season. Once the season ends, the Battle Pass is automatically revoked.
Example Scenario:
If a player activates their Battle Pass during Season 1, they retain access until the end of Season 1.
When Season 2 begins, the plugin revokes their Battle Pass unless they purchase or are granted a new one.
Simple and immediate for administrators.
Use css_givebp
to manually grant a Battle Pass to players.
Seamless integration with webshops or external systems.
Automatically detects Battle Pass purchases and activates them within 1 minute.
Sends in-game feedback to players upon activation.
Ensures that the Battle Pass is only valid for the active season.
Automatically revokes Battle Pass access at the end of the season, requiring renewal for future seasons.
The easiest way to report issues is by joining our Discord server. There, you'll find a publicly accessible room called "trackers," which functions as a forum where you can create threads for feature requests or issue reports. Be as detailed as possible in your report, and if applicable, attach logs or other relevant files to help us troubleshoot. Give your thread a clear title and assign appropriate labels to make it easier for us to identify the case.
Please do not share any sensitive information in the "trackers" room or with anyone in the community. We will never ask for personal details beyond the email address you used to register.
If you prefer not to use Discord, you can also report issues via the ticketing system on our website. To do so, log in to your account where your license key is registered, and navigate to the Tickets section. Here, you can open a ticket. Be sure to select the relevant project for your issue to help us locate the necessary details more quickly.
This documentation provides an overview of the Battle Pass system configuration file, detailing its settings and how they affect the system's behavior. The file is structured in JSON format, making it
The license-key
field contains the system's license key, used for unique identification and authentication.
license-key
The license-key
field contains the system's license key, used for unique identification and authentication.
KSE-f5933705-17fc-4b45-9c78-545d26d13361
The database-settings
section defines the parameters for connecting to the database.
host
The address of the database server.
mysql.domain.com
username
The username used to access the database.
username
password
The password for the database.
password
database
The name of the database.
database
port
The port for database communication (default: 3306).
3306
sslmode
The type of encryption for the database connection. You can use values from: none, required, preferred, verifyfull, verifyca
preferred
table-purge-days
The number of days after which database entries are purged due to inactivity.
90
Round End Save
Automatically save results at the end of each round not just on disconnect.
true
The experience-settings
section defines the amount of experience points (XP) awarded for various in-game actions.
events-enabled
Whether XP events are active.
true
round-mvp
XP awarded to the most valuable player (MVP) of a round.
75
hostage-rescued
XP awarded for rescuing a hostage.
100
bomb-defused
XP awarded for defusing a bomb.
150
bomb-planted
XP awarded for planting a bomb.
75
player-kill
XP awarded for killing an opponent.
25
round-win
XP awarded for winning a round.
150
game-win
XP awarded for winning a game.
500
The level-settings
section manages how players progress through levels in the system.
experience-per-level
Experience to achieve each level. Example: 1. level 1500, 3. 3000, etc
1500
level-cap
The maximum level a player can reach without a battle pass.
20
The mission-settings
section defines parameters for in-game missions.
missions-enabled
Whether missions are active.
true
daily-personal-mission-count
The number of personal daily missions available to players.
3
weekly-global-mission-count
The number of weekly missions available globally.
2
mission-daily-reroll-count
The number of times players can reroll their daily missions.
1
The mission-streak-settings
section incentivizes mission completion streaks.
streaks-enabled
The number of daily missions required for a streak.
true
streak-required-daily-complete
The number of daily mission complete required for a streak.
3
streak-day-settings
Defines XP multipliers for streaks of specific lengths..
{ "3": 1.1, "5": 1.25, "7": 1.5 }
The weekly-bonus-settings
section allows for additional bonuses on specific days.
sweekly-bonus-enabled
Whether weekly bonuses are active.
false
weekly-bonus-days
Multipliers for specific days of the week.
{ "Monday": 1f, "Tuesday": 1f, "Wednesday": 1f, "Thursday": 1f, "Friday": 1f, "Saturday": 1.2f, "Sunday": 1.2f }
The prime-time-settings
section defines bonus periods during specific times.
prime-time-enabled
Whether prime time bonuses are active.
false
prime-time-start
The start time for prime time.
"20:00:00"
prime-time-end
The end time for prime time.
"08:00:00"
prime-time-multiplier
The XP multiplier during prime time.
1.1f (10% increase)
The anti-frustration-settings
section minimizes player frustration through periodic rewards. When they can't complete a mission within the interval, they are offered to abandon the mission and gain xp depending on ther current progress with the mission.
anti-frustration-enabled
Whether anti-frustration measures are active.
false
anti-frustration-interval
Time (in minutes) between before detecting a mission as abandonable.
60
anti-frustration-between-delay
Delay (in seconds) between notifying the user about the abandon option.
15
The toplist-settings
section configures leaderboard bonuses.
toplist-enabled
Whether the leaderboard is active with their benefits.
true
toplist-bonus
XP multipliers for top-ranked players by their placement.
"toplist-bonus": { "1": 1.1f, "2": 1.09f, "3": 1.08f, ... }
The battle-pass-settings
section manages premium content for players.
battle-pass-multiplier
Additional XP multiplier for Battle Pass users.
1.5f (50% increase)
battle-pass-daily-extra-mission
Extra daily missions for Battle Pass users.
2
battle-pass-mission-extra-reroll
Extra mission rerolls for Battle Pass users.
2
battle-pass-level-cap
Maximum level for the Battle Pass.
100
The menu-settings
section defines the behavior of the in-game menu.
menu-freeze
Whether the player is frozen while having a menu open.
false
menu-credits
Whether to display credits for KitsuneLab in the menu.
true
date-format
The format in which dates are displayed.
yyyy/MM/dd
The prestige-settings
section manages the prestige system for advanced players. When they reach the maximum level, they can do a prestige reset, which sets their rank back to the start and allowing them to start the levelling again with a prestige level based XP multiplier.
prestige-enabled
Whether the prestige system is active.
false
prestige-level-cap
The maximum number of prestige levels.
5
prestige-multiplier-per-level
The XP multiplier for each prestige level.
1.2f (20% increase)
prestige-reminder-minute-interval
How often players are reminded of prestige status in minutes.
10
The catch-up-settings
section helps players who are behind catch up with others. When someone purchase the battlepass later than the season started, they get a multiplier depending on how many week elapsed to gain XP faster than other, until they reach the avarage battle pass user's level - 10%. So people won't think about the purchase as they cant maximize their rewards from it.
catch-up-enabled
Whether the catch-up system is active.
false
catch-up-multiplier-per-week-of-season
XP multiplier for every week missed during the season with the purchase of the battle pass for the user.
1.2f (20% increase)
This documentation provides an overview of how to configure a season for the game system using the JSON format provided. Users can edit or modify the JSON file to set up seasonal settings.
Each season has an index, starting from 1. So the first season config file will be season_1.jsonc. When the season ends, the plugin load the next config with it's own configurations, which would be season_2.jsonc. Don't forget to create them before the season ends.
The JSON configuration defines the following:
season_name
: The display name of the season.
duration_days
: The number of days the season will last.
rewards
: A mapping of levels to rewards.
Each reward specifies commands to execute, permissions to assign, and whether it is exclusive to Battle Pass owners.
Each level in the rewards
section defines a reward, and its structure supports additional properties beyond simple commands. Here’s an overview of all fields available in a LevelReward object.
The default config depends on K4-Cases. You can do your own levels and rewards by following this configuration.
name
Description: The name or description of the reward.
Type: string
Example:
commands
Description: A list of commands to execute when the reward is granted.
Type: array of strings
Default Value: []
(empty list)
Placeholders:
#{steamid}
: Player's SteamID64.
#{userid}
: Player's UserID.
#{name}
: Player's username.
Example:
permissions
Description: A list of permissions granted to the player upon being above that level.
Type: array of strings
(nullable)
Default Value: null
Example:
groups
Description: A list of groups the player is added to upon being above that level.
Type: array of strings
(nullable)
Default Value: null
Example:
command-access
Description: A list of commands the player is allowed to access after reaching the level.
Type: array of strings
(nullable)
Default Value: null
Example:
battle_pass_only
Description: Indicates whether the reward is exclusive to Battle Pass owners.
Type: boolean
Default Value: false
Example:
Here’s an updated example that includes all possible reward types:
Mix and Match Rewards: You can combine commands
, permissions
, groups
, and command-access
fields for a single reward.
Battle Pass Restrictions: Use "battle_pass_only": true
to make rewards exclusive to Battle Pass holders.
Commands with Placeholders: Replace placeholders (#{steamid}
, #{userid}
, #{name}
) dynamically when commands are executed.
The groups, permissions and command acceses are collected and always given to the player as long as the season goes on and they have the level for them.
This documentation explains the structure of the missions.json file used in the K4Seasons plugin. This file defines the missions available in the system and their corresponding configurations.
Event
"EventPlayerDeath"
Target
The target property of the event used for mission tracking (e.g., the player responsible for the action).
"Userid"
EventProperties
Additional properties to filter or specify the event's conditions.
{ "Weapon": "ak47", "Headshot": true }
Map
Specifies the map where the mission is applicable. If null
, it applies to all maps.
"de_dust2"
Type
The type of the mission (either personal or community-based).
"Personal"
or "Community"
Name
The name or description of the mission.
Die 3 times on Dust2
AmountToComplete
The number of actions required to complete the mission.
3
RewardExperience
The amount of experience points awarded upon completing the mission.
1500
BattlePassOnly
Indicates whether the mission is exclusive to Battle Pass users.
false
If EventProperties
is specified, the mission is only valid when the event properties match the provided criteria. You can find all property of any event at https://cs2.poggu.me/dumped-data/game-events/
The game event that triggers the mission's progress. Check available events at: