PulseCore
作者:rebot | 分类:模组
Minecraft 版本: 1.21 1.21.1 1.21.2 1.21.3 1.21.4 1.21.5 1.21.6 1.21.7 1.21.8 1.21.9
平台: folia paper purpur
标签: economy management utility
✨ Pulse Features
? Core Systems
? Rank System
A comprehensive rank management system with support for multiple ranks per player, temporary ranks, and advanced permission inheritance.
Features:
- Create unlimited custom ranks with weights, prefixes, and suffixes
- Assign multiple ranks to a single player simultaneously
- Set temporary ranks with automatic expiration
- Primary rank system with automatic weight-based selection
- Default rank assignment for new players
- Full permission inheritance from ranks to players
Commands:
/rank create <rank> <weight> <prefix> <suffix>- Create a new rank/rank delete <rank>- Delete an existing rank/rank set <player> <rank> [duration]- Set a player's rank/rank info <rank>- View detailed rank information/rank list- List all available ranks/rank permission <rank> <add|remove|deny|list> [permission]- Manage rank permissions/rank reload- Reload the rank system
? Grant System (GUI)
An intuitive GUI-based system for managing player ranks with visual feedback and confirmation steps.
Features:
- Clean, user-friendly inventory interface
- Grant ranks with custom durations (1h, 1d, 7d, 30d, 90d, or permanent)
- View all active ranks on a player
- Remove ranks with a single click
- Visual distinction between primary and secondary ranks
- Real-time expiration countdown display
- Confirmation system to prevent accidental grants
Usage:
/grant <player>- Open the grant GUI for a player- Navigate through menus to select ranks and durations
- Click to confirm or cancel operations
? Permission System
Advanced permission management with player-specific and rank-based permissions, including denial support.
Features:
- Add permissions directly to players or ranks
- Deny specific permissions (overrides grants)
- Permission inheritance from all player ranks
- Check player permissions with full inheritance resolution
- List all permissions for players or ranks
- Real-time permission updates without reconnection
Commands:
/permission add <player> <permission>- Add a permission to a player/permission remove <player> <permission>- Remove a permission from a player/permission deny <player> <permission>- Deny a permission for a player/permission check <player> <permission>- Check if a player has a permission/permission list <player>- List all player permissions
? Economy System
Full-featured economy with Vault integration, transaction history, and leaderboards.
Features:
- Customizable currency name and symbol
- Support for decimal balances
- Player-to-player payments with transaction fees
- Balance leaderboards (top balances)
- Admin commands for adding, removing, and setting balances
- Vault economy provider for compatibility with other plugins
- Persistent storage with automatic save
Commands:
/coin- Check your balance/coin <player>- Check another player's balance/coin pay <player> <amount>- Pay another player/coin add <player> <amount>- Add coins to a player (admin)/coin remove <player> <amount>- Remove coins from a player (admin)/coin set <player> <amount>- Set a player's balance (admin)/coin top- View balance leaderboard
? Shop System
YAML-configured shop with multi-page support, enchantments, and flexible pricing.
Features:
- Multiple shop pages with custom titles
- Support for items with custom names, lore, and enchantments
- Stack-based purchasing (buy multiple items at once)
- Permission-based shop access
- Economy integration for purchases
- Live configuration reload without restart
- Potion effects and item flags support
Commands:
/shop- Open the shop GUI/shop list- List all shop items/shop reload- Reload shop configuration (admin)
Configuration:
pages:
- title: "Main Shop"
items:
- slot: 0
material: DIAMOND_SWORD
name: "&bDiamond Sword"
price: 1000
enchantments:
- SHARPNESS:5
⏱️ Playtime System
Track, display, and persist player playtime with Folia-safe scheduling and database storage.
Features:
- Accurate playtime tracking with session calculation
- Asynchronous auto-save every 5 minutes (Folia/Paper compatible)
- Persistent storage in database (SQLite/MySQL/PostgreSQL)
- Cached lookups for performance
- Placeholders for formatted/raw time values
- Commands to view self and others' playtime with permission checks
Commands:
/playtime- View your playtime/playtime <player>- View another player's playtime (requirespulse.playtime.others)
? Profile System
View comprehensive player profiles with stats, ranks, playtime, economy, and tags in a GUI.
Features:
- Interactive GUI-based player profiles
- Display player head with UUID and online/offline status
- Show current rank and balance with currency name
- Display total playtime (formatted as days/hours/minutes)
- View active and owned tags (up to 5 shown, with counter for more)
- Staff button to view punishment history (requires
pulse.profile.staff) - View own profile or other players' profiles with permission
Commands:
/profile- View your own profile/profile <player>- View another player's profile (requirespulse.profile.others)
? Report System
Command-based player reporting system with staff notifications and database logging.
Features:
- Report online or offline players with
/report <player> <reason> - Minimum 5-character reason required
- Assigns unique report ID for tracking
- Sends confirmation message to reporter with report ID
- Notifies all online staff members with
pulse.reports.notifypermission
Commands:
/report <player> <reason>- Report a player for staff review
?️ Tag System
Player name tags with prefixes, suffixes, colors, and decorations.
Features:
- Create unlimited custom tags
- Rich formatting with colors, gradients, and decorations
- Tag collections and unlockables
- Give/remove tags from players
- Players can equip tags from their collection
- Permission-based tag access
- Default tag support
Commands:
/tag- Open tag selection GUI/tag <tag>- Equip a specific tag/tag others <player>- View another player's tags (admin)/tag give <player> <tag>- Give a tag to a player (admin)/tag remove <player> <tag>- Remove a tag from a player (admin)/tag create <id> <prefix> <suffix>- Create a new tag (admin)/tag edit <id> <prefix|suffix> <value>- Edit a tag (admin)/tag delete <id>- Delete a tag (admin)/tag reload- Reload tag system (admin)
⚖️ Punishment System
Comprehensive moderation toolkit with temporary and permanent punishments.
Features:
- Kick, warn, mute, freeze, ban, and IP ban
- Temporary bans and IP bans with duration support
- Warning accumulation system with history
- Remove individual warnings
- Persistent punishment storage
- Broadcast messages for public punishments
- Staff-only silent punishments
Commands:
/kick <player> [reason]- Kick a player/warn <player> <reason>- Warn a player/warns <player>- View player warnings/unwarn <player> <id>- Remove a warning/mute <player> [duration] [reason]- Mute a player/unmute <player>- Unmute a player/freeze <player>- Freeze/unfreeze a player/ban <player> [reason]- Permanently ban a player/tempban <player> <duration> [reason]- Temporarily ban a player/unban <player>- Unban a player/ipban <player> [reason]- IP ban a player/tempipban <player> <duration> [reason]- Temporarily IP ban a player
? Gamemode Commands
Quick gamemode switching with shorthand aliases and permission support.
Features:
- Change your own gamemode or others' with permission
- Short aliases for quick switching (gmc, gms, gma, gmsp)
- Permission-based access control per gamemode
Commands:
/gamemode <mode> [player]- Change gamemode/gmc [player]- Creative mode/gms [player]- Survival mode/gma [player]- Adventure mode/gmsp [player]- Spectator mode
? Chat System
Advanced chat formatting with rank integration, color support, and customizable join/leave messages.
Features:
- Automatic rank prefix/suffix in chat
- Color code support for players with permission
- PlaceholderAPI integration for chat format
- Configurable chat format via YAML
- Persistent display name formatting
- Customizable join/leave messages with color support
- Toggle join/leave messages on/off independently
- %player% placeholder for player names in messages
? Command Blocker System
Block unwanted commands and provide custom help messages with full tab completion filtering.
Features:
- Block any command from being executed by players
- Configurable list of blocked commands in
config.yml - Custom blocked command message with MiniMessage support
- Remove blocked commands from tab completions automatically
- Custom help command system that overrides default
/help - Multi-line help messages with full formatting support
- Toggle help command on/off independently
- Case-insensitive command matching for reliability
- Lowest priority event handling to intercept before other plugins
Configuration:
command-blocker:
blocked-commands:
- "plugins"
- "pl"
- "version"
- "ver"
blocked-message: "<red>Unknown command. Type \"/help\" for help."
help-command:
enabled: true
message:
- "<yellow>Available Commands:"
- "<gray>• <white>/spawn <gray>- Teleport to spawn"
- "<gray>• <white>/home <gray>- Teleport home"
? Technical Features
?️ Database
- Exposed ORM with Kotlin DSL for type-safe queries
- HikariCP connection pooling for optimal performance
- Support for SQLite (default) and MySQL/MariaDB
- Automatic schema creation and migration
- Asynchronous database operations (non-blocking)
- Connection validation and automatic recovery
⚡ Performance
- Folia-compatible with proper thread scheduling
- Async-first architecture for all heavy operations
- Caching layer for frequently accessed data
- Optimized database queries with prepared statements
- Minimal main thread blocking
- Efficient placeholder resolution
? Integration
- Vault integration for economy and permissions
- PlaceholderAPI expansion with 40+ placeholders
- LuckPerms compatibility (optional, Pulse can standalone)
- Event-driven architecture for extensibility
- Open API for third-party plugins
? Configuration
- YAML-based configuration files
- Automatic resource versioning with migration
- Hot-reload support for most configurations
- Validation with helpful error messages
- Per-system configuration files for organization
? Customization
- Messages.yml for all player-facing text
- Support for MiniMessage and legacy color codes
- Configurable prefixes and suffixes
- Custom shop layouts with unlimited pages
- Punishment reasons and duration formats
?️ Security
- SQL injection protection via prepared statements
- Permission checks on all sensitive commands
- Input validation and sanitization
- Rate limiting on economy transactions
- Audit trail for administrative actions
? Multi-Server Support
- Shared database for cross-server data
- Synchronized rank changes across network
- Global economy balances
- Network-wide punishments
- Cross-server placeholders
? Modular Architecture
Every system is independently functional:
- Disable economy if using another plugin
- Run without shop if not needed
- Use only the rank system
- Mix and match features as needed
Permissions
Click to view all permissions ### Root Permissions - `pulse.*` - All pulse permissions - `pulse.admin` - Administrator access to pulse - `pulse.chat.color` - Use color codes in chat messages ### Rank Permissions - `pulse.rank` - Access to rank commands (includes all sub-permissions) - `pulse.rank.create` - Create new ranks - `pulse.rank.delete` - Delete existing ranks - `pulse.rank.set` - Set player ranks - `pulse.rank.info` - View rank information - `pulse.rank.list` - List all ranks - `pulse.rank.permission` - Manage rank permissions - `pulse.rank.reload` - Reload rank system ### Permission Management - `pulse.permission` - Access to permission commands (includes all sub-permissions) - `pulse.permission.add` - Add permissions to players - `pulse.permission.remove` - Remove permissions from players - `pulse.permission.deny` - Deny permissions for players - `pulse.permission.check` - Check player permissions - `pulse.permission.list` - List player permissions ### Gamemode Permissions - `pulse.gamemode` - Change gamemode (includes all sub-permissions) - `pulse.gamemode.creative` - Change to creative mode - `pulse.gamemode.survival` - Change to survival mode - `pulse.gamemode.adventure` - Change to adventure mode - `pulse.gamemode.spectator` - Change to spectator mode - `pulse.gamemode.others` - Change others' gamemode ### Punishment Permissions - `pulse.punishment` - All punishment permissions (includes all sub-permissions) - `pulse.punishment.kick` - Kick players - `pulse.punishment.warn` - Warn players - `pulse.punishment.warns` - View player warnings - `pulse.punishment.unwarn` - Remove warnings - `pulse.punishment.mute` - Mute players - `pulse.punishment.unmute` - Unmute players - `pulse.punishment.freeze` - Freeze/unfreeze players - `pulse.punishment.tempban` - Temporarily ban players - `pulse.punishment.ban` - Permanently ban players - `pulse.punishment.unban` - Unban players - `pulse.punishment.ipban` - IP ban players - `pulse.punishment.tempipban` - Temporarily IP ban players ### Economy Permissions - `pulse.coin` - Access to coin commands (includes pay permission) - `pulse.coin.add` - Add coins to players - `pulse.coin.remove` - Remove coins from players - `pulse.coin.set` - Set player coin balances - `pulse.coin.pay` - Pay other players - `pulse.coin.top` - View balance leaderboard - `pulse.coin.others` - Check other players' balances ### Shop Permissions - `pulse.shop` - Access to shop (includes use permission) - `pulse.shop.use` - Use the shop - `pulse.shop.reload` - Reload shop configuration - `pulse.shop.list` - List shop items ### Tag Permissions - `pulse.tag` - Access to tag commands (includes all sub-permissions) - `pulse.tag.others` - View other players' tags - `pulse.tag.give` - Give tags to players - `pulse.tag.remove` - Remove tags from players - `pulse.tag.create` - Create new tags - `pulse.tag.edit` - Edit existing tags - `pulse.tag.delete` - Delete tags - `pulse.tag.reload` - Reload tag system ### Grant Permissions - `pulse.grant` - Access to grant command GUI for managing player ranks ### Playtime Permissions - `pulse.playtime` - View own playtime - `pulse.playtime.others` - View other players' playtime ### Profile Permissions - `pulse.profile` - View own profile - `pulse.profile.others` - View other players' profiles - `pulse.profile.staff` - Access staff-only features in profiles ### Report Permissions - `pulse.report` - Report players - `pulse.reports.notify` - Receive notifications when players are reported ### Miscellaneous Permissions - `pulse.update.notify` - Receive update notifications on joinPlaceholders
Click to view all placeholders All placeholders use the format `%pulse_%` ### Rank Information - `%pulse_rank%` - Player's rank ID - `%pulse_rank_name%` - Player's rank name - `%pulse_rank_prefix%` - Player's rank prefix - `%pulse_rank_suffix%` - Player's rank suffix - `%pulse_rank_weight%` - Player's rank weight - `%pulse_rank_is_default%` - Whether player has default rank (true/false) ### Player Display - `%pulse_player_formatted%` - Formatted player display name - `%pulse_player_display%` - Player display name (alias) - `%pulse_player_prefix%` - Player's prefix - `%pulse_player_suffix%` - Player's suffix - `%pulse_player_name_formatted%` - Player name with prefix and suffix ### Permission Information - `%pulse_permissions_count%` - Total permissions count - `%pulse_permissions_total%` - Total permissions count (alias) - `%pulse_permissions_player_count%` - Player-specific permissions count - `%pulse_permissions_rank_count%` - Rank permissions count - `%pulse_permissions_denied_count%` - Denied permissions count ### Economy - `%pulse_balance%` - Player's balance (formatted with currency symbol) - `%pulse_money%` - Player's balance (alias) - `%pulse_balance_raw%` - Player's balance (raw number) - `%pulse_currency_name%` - Currency name (singular) - `%pulse_currency_name_plural%` - Currency name (plural) - `%pulse_currency_symbol%` - Currency symbol ### Server Statistics - `%pulse_players_total%` - Total players in database - `%pulse_players_online%` - Current online players - `%pulse_ranks_total%` - Total ranks - `%pulse_default_rank%` - Default rank ID ### Time - `%pulse_last_seen%` - Time since player was last seen ### Playtime - `%pulse_playtime%` - Player's playtime (formatted) - `%pulse_playtime_raw%` - Player's playtime in milliseconds - `%pulse_playtime_hours%` - Player's playtime in hours (2 decimals) - `%pulse_playtime_minutes%` - Player's playtime in minutes - `%pulse_playtime_seconds%` - Player's playtime in seconds ### Dynamic Placeholders - `%pulse_has_permission_%` - Check if player has permission (true/false) - `%pulse_rank_players_online_%` - Online players with specific rank - `%pulse_rank_players_total_%` - Total players with specific rank - `%pulse_rank_weight_%` - Weight of specific rank - `%pulse_rank_prefix_%` - Prefix of specific rank - `%pulse_rank_suffix_%` - Suffix of specific rank - `%pulse_rank_display_%` - Display name of specific rank - `%pulse_has_balance_%` - Check if player has balance amount (true/false) - `%pulse_balance_formatted_%` - Format a specific amount with currency symbolPulse - One plugin, infinite possibilities. Built for performance, designed for simplicity.
请登录后举报
暂无评论,抢个沙发吧~