Configuration
Every setting in SkinStudio.json: database, licence, Workshop addon, menu behaviour.
Everything is in one file: game/csgo/addons/counterstrikesharp/configs/plugins/SkinStudio/SkinStudio.json. The top level holds the skin engine's settings; the "Studio" block holds the menu's.
The settings you must fill in
SkinStudio.json
{
"DatabaseHost": "your-mysql-host",
"DatabasePort": 3306,
"DatabaseUser": "your-user",
"DatabasePassword": "your-password",
"DatabaseName": "your-database",
"Studio": {
"LicenseKey": "KSL-ABCDE-FGHJK-MNPQR-STUVW",
"LicenseServer": "https://studio.krispshot.in",
"WorkshopAddonId": "<Workshop ID from your portal>"
}
}Leave the other lines as they are. If you're moving from WeaponPaints and leave the database fields empty, the plugin uses the login from configs/plugins/WeaponPaints/WeaponPaints.json.
Engine settings (top level)
| Setting | Default | What it does |
|---|---|---|
Database… | MySQL login. The tables are created automatically. | |
CmdRefreshCooldownSeconds | 3 | How often a player may use !wp. |
Website | Your loadout website, if you have one, shown to players in chat. | |
WebRefreshEnabled | true | Pick up changes made on your website. See Website sync. |
WebRefreshIntervalSeconds | 4 | How often to look for website changes. |
Additional | Turn sections on or off (KnifeEnabled, GloveEnabled, AgentEnabled, MusicEnabled, PinsEnabled, PetsEnabled…), rename chat commands (CommandKnife…), and the VIP command list. |
Menu settings ("Studio" block)
| Setting | Default | What it does |
|---|---|---|
LicenseKey | "" | Your licence key. |
LicenseServer | https://studio.krispshot.in | Leave as it is. |
WorkshopAddonId | "" | The menu addon players download. |
ManageMultiAddonManager | true | Turns on MultiAddonManager's download cache and hides reconnect messages. |
BrandName, BrandSubtitle | KRISPSHOT, LOADOUTS | The name at the top left of the menu. |
ChatPrefix | [KRISPSHOT Loadouts] | Prefix of every chat message. |
OpenCommands | inv, inventory, loadout, studio | Extra commands that open the menu. !skins and !ws always do. |
Permission | "" | Flag needed to open the menu at all. See Permissions. |
SectionPermissions | all empty | A flag per section. |
ApplyCooldownMs | 600 | Minimum time between two Apply clicks per player. |
MaxPresets, MaxFavourites | 8, 75 | Per player. |
NameTagMaxLength | 20 | |
ChatTyping | true | While the on-screen keyboard is open, a chat line is used as the text. |
OpenWithBuyKey | false | Open the menu with B. This replaces the buy menu, so only use it in modes without buying. |
CloseOnDeath | false | Close the menu when the player dies. |
PrecacheAgents | true | Load agent models with the map so switching agent is instant. Applies from the next map. |
RebuildPanelOnConnect | true | Works around a CS2 bug that blanks menu text when someone joins. |
Debug | false | Log every click. |
After editing, restart the server or change the map.