A modern, customizable Minecraft plugin for managing player gangs. Supports Paper/Bukkit 1.21+ and integrates with PlaceholderAPI. Built for performance, flexibility, and ease of use.
- Create, join, leave, and manage gangs
- Gang chat (/gc)
- Gang descriptions and info
- Invite system with expiry
- Admin commands for moderation
- Dual database support: MySQL and SQLite (async, high performance)
- Configurable messages and settings
- PlaceholderAPI integration
- Permissions-based access control
- Automated release workflow via GitHub Actions
- Download the plugin JAR and place it in your server's
plugins/directory. - Ensure you are running Paper 1.21 or newer.
- (Optional) Install PlaceholderAPI for placeholder support.
- Start your server to generate default config files.
- Configure the plugin as needed (see below).
Edit plugins/Gangs/config.yml to configure your database and customize gang settings:
# Database Configuration
database:
# Database type: mysql or sqlite
type: sqlite
# SQLite Configuration (used when type is sqlite)
sqlite:
file: "gangs.db" # Database file path (relative to plugin folder)
# MySQL Configuration (used when type is mysql)
mysql:
host: localhost
port: 3306
database: gangs
username: gangs_user
password: "secret"
pool-size: 10
# Gang Settings
gang:
name:
min-length: 3
max-length: 16
allowed-characters: "^[a-zA-Z0-9]+$"
description:
max-length: 24
invites:
expiry-seconds: 3600
list:
items-per-page: 10
no-gang-value: "None"The plugin supports two database types:
- SQLite (default): Lightweight, file-based database. Perfect for smaller servers or testing. No additional setup required.
- MySQL: Full-featured database server. Recommended for larger servers or when sharing data across multiple servers.
You can also customize all player-facing messages in plugins/Gangs/messages.yml.
/gangs: Main command for all gang actions./gangs create <name>— Create a new gang
Permission:gangs.player.create/gangs invite <player>— Invite a player
Permission:gangs.player.invite/gangs accept— Accept a gang invite
Permission:gangs.player.accept/gangs kick <player>— Kick a member from your gang
Permission:gangs.player.kick/gangs leave— Leave your current gang
Permission:gangs.player.leave/gangs description <text>— Set gang description
Permission:gangs.player.description/gangs info [name]— View info about a gang
Permission:gangs.player.info/gangs list [page]— List all gangs
Permission:gangs.player.list/gangs disband— Disband your gang (leader only)
Permission:gangs.player.disband/gangs disband confirm— Confirm disbanding your gang
Permission:gangs.player.disband.confirm/gangs rename <name>— Rename your gang (leader only)
Permission:gangs.player.rename/gangs rename confirm— Confirm renaming your gang
Permission:gangs.player.rename.confirm/gangs help— Show help message
Permission:gangs.player.help/gc <message>— Send a message to your gang chat
Permission: (player, no explicit permission required)
Admin Commands:
/gangs forcedisband <gang>— Force disband any gang
Permission:gangs.admin.forcedisband/gangs forcedescription <gang> <description>— Force set a gang's description
Permission:gangs.admin.forcedescription/gangs forcerename <gang> <name>— Force rename a gang
Permission:gangs.admin.forcerename/gangs forcerename confirm— Confirm force renaming a gang
Permission:gangs.admin.forcerename.confirm
%gang_name%: Shows the player's gang name (or "None")
For help, bug reports, or feature requests, please open an issue.