Takaro module library

Takaro Modules

Takaro is a game server management platform for running, automating, and moderating multiplayer communities. These modules install into Takaro to add server automation, Discord workflows, economy systems, and moderation tools.

BuffManager

by Limon
for 7 Days to Die
Sell, grant, and maintain configurable 7 Days to Die buff packages through Takaro. BuffManager helps admins turn buffs into permissioned, timed, and currency-backed player perks.
Use this module to:
  • Configure multiple buff packages with display names and command triggers.
  • Require roles or permissions for specific buff packages.
  • Charge Takaro currency for player-selected buffs.
  • Track expirations and reapply active buffs when players reconnect.
  • Give staff admin commands for manual buff and debuff workflows.
Good fit for 7 Days to Die servers that want VIP buffs, paid perks, timed role benefits, or economy-connected buff rewards.

Module details

Dynamic Buff Manager

Flexible buff management system that supports unlimited buff packages with role requirements, expiration tracking, and currency costs.

Features

  • ✅ Unlimited buff packages (add as many as you need)
  • ✅ Role-based access control per package
  • ✅ Time-based expiration system
  • ✅ Auto-apply buffs on player connect
  • ✅ Currency costs and cooldowns per package
  • ✅ Automatic maintenance to keep buffs active

Quick Start

  1. Add a Buff Package
    • Click "Add Item" under Buff Packages
    • Set Command Name (e.g., "vipbuff")
    • Set Display Name (e.g., "VIP Speed Package")
    • Add buff names from your XML (e.g., "SpeedbuffVip")
  2. Get Role ID
    • Go to Settings → Roles in Takaro
    • Click on the role you want (e.g., "VIP")
    • Look at the browser address bar: https://your-takaro.com/settings/roles/743b9623-ad09-4cf2-86c0-3d7faed57a88
    • Copy the UUID from the URL (the part after /roles/)
    • Example: 743b9623-ad09-4cf2-86c0-3d7faed57a88
    • Paste into "Required Role ID" field
    • Leave empty to allow everyone
  3. Configure Duration
    • Set how long buffs should last in minutes
    • 0 = never expires (maintenance keeps them active forever)
    • 60 = expires after 1 hour
  4. Save and Install

Configuration Fields

Buff Package Settings

  • Command Name: What players type (creates /getbuff commandName)
  • Display Name: Friendly name in messages
  • Description: Explanation of what the package does
  • Buff Names: Array of buff codes from your buffs.xml
  • Required Role ID: UUID of the role (copy from browser URL). Empty = everyone
  • Duration (Minutes): Expiration time. 0 = never expires
  • Auto-Apply on Connect: Give buff automatically when player joins
  • Currency Cost: Price to use the command
  • Cooldown (Seconds): Per-player cooldown

Examples

VIP Package:
  • Command: "vipbuff"
  • Buffs: ["SpeedbuffVip", "ExpBuffVip"]
  • Role: 743b9623-ad09-4cf2-86c0-3d7faed57a88
  • Duration: 0 (permanent)
  • Auto-apply: Yes
  • Cost: 0
  • Cooldown: 0
Temporary Donor Buff:
  • Command: "donorbuff"
  • Buffs: ["SuperSpeed", "SuperJump"]
  • Role: abc-123-donor-role-id
  • Duration: 120 (2 hours)
  • Auto-apply: No
  • Cost: 1000
  • Cooldown: 3600 (1 hour)

How It Works

  1. On Player Connect: Module checks all packages with auto-apply enabled and matching roles
  2. Manual Command: Player uses /getbuff to activate a specific package
  3. Expiration Tracking: Module stores expiration timestamp per player per package
  4. Maintenance: Cronjob re-applies non-expired buffs every 15 minutes

Troubleshooting

Buffs not applying:
  • Check buff names match your buffs.xml exactly (case-sensitive)
  • Verify role ID is correct UUID from browser URL
  • Check player actually has the role assigned
  • Look at module execution events for detailed logs
Buffs disappearing:
  • Check duration - may be expiring
  • Verify maintenance cronjob is enabled
  • Check game server console for buff command errors
Currency not deducting:
  • Verify economy is enabled in Takaro settings
  • Check currency cost is set correctly per package
communityTakaro main

Components Overview

1
config
3
commands
1
hooks
1
Cron Jobs
0
functions
1
permissions

New Module: BuffManager

NEW
October 16, 2025
Updated to version latest. Added 3 commands: buffplayer, debuffplayer, getbuff. Added 1 hook: Auto-Apply Buff Packages (player-connected). Added 1 scheduled task: check Buff Packages. New permission: BUFF_ADMIN. New configuration options: buffPackages, maintenanceEnabled, maintenanceInterval.

Configuration

Configure this module using the schemas below. The JSON schema defines the data structure, while the UI schema customizes how the configuration form is displayed.

Configuration Schema

Configuration Properties (3)

buffPackages*array
Buff Packages

Define unlimited buff packages. Each package can have its own role requirements, duration, and cost.

maintenanceEnabledboolean
Enable Maintenance Cronjob

Periodically re-apply active (non-expired) buffs to keep them running

Default: true
maintenanceIntervalstring
Maintenance Schedule

Cron expression for maintenance frequency (default: every 15 minutes)

Default: */15 * * * *

UI Schema

No configuration properties defined. This module uses default settings.

About Configuration Schemas

The Configuration Schema defines the structure and validation rules for module settings. The UI Schema customizes how the configuration form is displayed in the Takaro interface, including field ordering, labels, and input types.

Commands (3)

These commands can be executed by players in-game. Each command has a trigger word, optional arguments, and executes JavaScript code on the server.

buffplayer

/buffplayerTrigger Command

Description

Admin command to apply a buff package to any player

Arguments (2)

playerName
stringPosition 0
Help: Name of the player to buff
Default: None
packageName
stringPosition 1
Help: Name of the buff package to apply
Default: None

Function Implementation

buffplayer Function

JAVASCRIPT

Usage Example

Player types: /buffplayer <playerName> <packageName>

debuffplayer

/debuffplayerTrigger Command

Description

Remove buff tracking from a player. If packageName is not specified, removes all buffs. Usage: /debuffplayer [packageName]

Arguments (2)

playerName
stringPosition 0
Help: Name of the player to debuff
Default: None
packageName
stringPosition 1
Help: The buff package name to remove
Default: ""

Function Implementation

debuffplayer Function

JAVASCRIPT

Usage Example

Player types: /debuffplayer <playerName> <packageName>

getbuff

/getbuffTrigger Command

Description

Apply a buff package to yourself. Use /getbuff or just /getbuff to see available packages

Arguments (1)

packageName
stringPosition 0
Help: Name of the buff package to apply (optional - leave empty to list all)
Default: ""

Function Implementation

getbuff Function

JAVASCRIPT

Usage Example

Player types: /getbuff <packageName>

About Module Commands

Commands allow players to interact with your module through chat. Each command has a trigger word that players type (prefixed with /), optional arguments for parameters, and a JavaScript function that executes when the command is used. Arguments are automatically validated and passed to the function.

Hooks (1)

These hooks respond to various game events automatically. Each hook executes JavaScript code when its specific event type occurs, allowing modules to react to player actions, system changes, and more.

Real-time Events

1 hook

Auto-Apply Buff Packages

player-connectedEvent Type
Description
Automatically applies buff packages to players based on role requirements when they connect
Function Implementation

Auto-Apply Buff Packages Hook Function

JAVASCRIPT
Event Details
Event Type:player-connected
Trigger:Automatic
Category:Real-time Events

About Module Hooks

Hooks allow your module to respond automatically to game events like player actions, server status changes, and chat messages. Each hook has an event type that determines when it triggers, optional regex patterns for filtering specific events, and a JavaScript function that executes when the conditions are met. Hooks are grouped by category for better organization.

Scheduled Jobs (1)

These jobs run automatically on a schedule defined by cron expressions. Each job executes JavaScript code at specific times or intervals.

check Buff Packages

* * * * *Schedule

Description

Re-applies non-expired buffs to online players every 15 minutes to keep them active

Schedule Details

Cron Expression
* * * * *
Human-Readable Schedule

Every minute

Function Implementation

check Buff Packages Function

JAVASCRIPT

Cron Expression Format

minute hour day-of-month month day-of-week

Each field can contain numbers, ranges (1-5), lists (1,3,5), or wildcards (*). Use */n for intervals (e.g., */5 for every 5 units).

About Scheduled Jobs

Cron jobs allow your module to execute code automatically on a schedule. Each job has a cron expression that defines when it runs, and a JavaScript function that executes at those times. Jobs run server-side and can perform maintenance tasks, send notifications, or update game state automatically.

Permissions (1)

These permissions control who can access different features of this module. Administrators can assign these permissions to roles, allowing fine-grained access control.

General Permissions

1 permission

Buff Administrator

BUFF_ADMINPermission Key
Description

Can manage and apply any buff package

Permission Details
Full Key:BUFF_ADMIN
Can Have Count:No
Category:General

About Module Permissions

Permissions control access to module features and functionality. Each permission has a unique key for identification, a friendly name for display, and a description explaining what it allows. Some permissions are countable, meaning they can have numeric values or limits assigned. Administrators assign these permissions to user roles to control who can use different module features.