
WERM
WERM is a modern, all-in-one monetization platform built specifically for Minecraft servers. Think of it as a Tebex alternative—but with better features, lower fees, and a focus on the modern server owner experience.
- Загрузки
- 96
- Подписчики
- 0
- Обновлён
- 2 января 2026 г.
- Лицензия
- All-Rights-Reserved
Опубликован 22 декабря 2025 г.
WERM - Web Engine for Realm Monetization
The official Minecraft plugin for WERM - the future of game monetization. Global wallets, instant delivery, and powerful analytics—all with the lowest fees in the industry.
🆕 What's New in v1.0.4
⚡ Performance & Reliability Release
This release adds batch delivery confirmation and async file I/O to improve performance and reliability during high-load scenarios.
| Feature | Description |
|---|---|
| 📦 Batch Delivery Confirmation | Up to 10 confirmations per API call for 90% reduction in network overhead |
| 🔄 Async File I/O | Non-blocking queue persistence with debounced writes prevents main thread blocking |
| 🛑 Graceful Shutdown | Proper executor termination ensures no data loss during server stops |
| ⚡ Faster Bulk Deliveries | Improved performance when multiple items need to be delivered at once |
Technical Details:
- Batch size: 10 confirmations per API call
- I/O thread: Daemon thread named
WERM-ConfirmationQueue-IO - Shutdown timeout: 5 seconds for graceful termination
- Debounced writes: 2-second delay to coalesce multiple queue changes
Previous Releases:
v1.0.3 - Performance Optimization
| Feature | Description |
|---|---|
| 🔗 HTTP Connection Pooling | New OkHttp-based connection manager with 5-connection pool and 5-minute keep-alive |
| 📉 Smart Polling | Dynamic polling with exponential backoff—reduces API calls by up to 75% during idle periods |
| ⚡ Faster Response Times | Keep-alive connections eliminate connection setup overhead |
| 🛠️ Improved Resource Usage | Connection reuse reduces memory footprint and CPU usage |
Technical Details:
- Connection pool: 5 max idle connections, 5-minute keep-alive
- Timeouts: 10s connect, 30s read, 10s write
- Backoff: Up to 4x base interval after consecutive empty responses
- Instant reset when player joins or delivery found
v1.0.2 - bStats Update
- 🔧 bStats Update - Updated bStats plugin ID for proper metrics tracking
- All security hardening from v1.0.1 remains in place
v1.0.1 - Security Features
| Feature | Description |
|---|---|
| 🛡️ Command Validation | Blocks dangerous commands (op, deop, ban, stop) from being executed via deliveries |
| 🔐 TLS 1.2+ Enforcement | All API connections now require modern TLS protocols |
| 📝 Debug Redaction | Sensitive data (tokens, UUIDs) automatically redacted in debug logs |
| 💾 Confirmation Queue | Pending delivery confirmations survive server restarts |
| ✅ Input Sanitization | Player names and UUIDs sanitized before command execution |
| 🌐 Endpoint Validation | HTTPS and domain whitelist enforcement for API endpoints |
| ⏱️ Rate Limiting | Verification attempts limited to prevent brute-force abuse |
| 🔄 Auto-Discovery | Project ID now auto-discovered from API (no hardcoding) |
🌐 What is WERM?
WERM is a modern, all-in-one monetization platform built specifically for Minecraft servers. Think of it as a Tebex alternative—but with better features, lower fees, and a focus on the modern server owner experience.
Platform Features
| Feature | Description |
|---|---|
| 🔍 Server Discovery | Get your server listed on our public directory where players can find, vote for, and join servers |
| 💰 Global Wallet System | Players have one wallet across all WERM-powered servers (1 credit = 1 USD cent) |
| 🛒 Built-in Storefront | Beautiful, customizable store pages with categories, sales, gifting, and wishlists |
| ⚡ Instant Delivery | Hybrid delivery system using webhooks + polling ensures items are delivered fast |
| 🗳️ Voting System | Integrated voting with Votifier/NuVotifier support to boost your server's ranking |
| 💬 Discord Integration | Display your Discord member count on your server listing |
| 🌍 Multi-Currency Support | Accept payments globally with automatic currency conversion |
| 💸 Lowest Fees | Starting at just 3% platform fee (vs 5%+ competitors) |
Why Choose WERM?
- Free Tier Available - Start monetizing with no monthly fees (up to $500/month revenue)
- Modern Dashboard - Clean, intuitive interface for managing your server and products
- Real-time Analytics - Track sales, player engagement, and revenue trends
- Cross-Server Economy - Players can use their wallet credits on any WERM server
- Open & Transparent - No hidden fees, no surprise charges
✨ Plugin Features
🔗 Account Verification
Players can securely link their Minecraft account to WERM using a simple 6-character verification code. Generate a code on the website, enter it in-game, and you're connected!
📦 Automatic Delivery System
Automatically delivers purchased products to players using configurable console commands. Supports both immediate delivery and requiring players to be online.
💓 Server Heartbeat
Keeps your server status updated on the WERM dashboard with real-time player counts and server version information.
🎮 Player Join Detection
Automatically checks for and delivers pending purchases when players join the server.
⚡ Async Processing
All API calls are processed asynchronously to ensure zero impact on your server's performance.
🛡️ Secure Authentication
Uses secure plugin token authentication to ensure only your server can manage deliveries.
📝 Fully Customizable
All messages are fully configurable with Minecraft color code support (& codes).
📜 Commands
| Command | Description | Permission |
|---|---|---|
/werm verify <code> |
Link your Minecraft account with WERM | werm.verify (default: true) |
/werm help |
Display help information | None |
/werm status |
View plugin connection status | werm.admin (default: op) |
/werm reload |
Reload plugin configuration | werm.admin (default: op) |
Aliases: /w
🎯 Permissions
| Permission | Description | Default |
|---|---|---|
werm.verify |
Allows players to verify their Minecraft account | true |
werm.admin |
Admin commands (reload, status) | op |
⚙️ Configuration
# WERM Plugin Configuration
# Generate your plugin token at https://wermpay.com/dashboard/servers
plugin-token: "werm_XXXXXXXX_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
# Enable debug logging for troubleshooting
debug: false
# Heartbeat Settings
heartbeat:
interval: 60 # Send status every X seconds
send-player-count: true # Include player count in heartbeat
# Delivery Settings
delivery:
interval: 15 # Check for deliveries every X seconds
# Customizable messages (supports & color codes)
messages:
prefix: "&8[&6WERM&8] &r"
verify-success: "&aYour Minecraft account has been linked successfully!"
verify-failed: "&cVerification failed: &7%reason%"
delivery-received: "&aYou received: &e{product} &ax{quantity}"
# ... and more customizable messages
📦 Delivery Placeholders
When configuring your product commands in the WERM dashboard, you can use these placeholders:
| Placeholder | Description |
|---|---|
{player} or {player_name} |
Player's username |
{uuid} or {player_uuid} |
Player's UUID |
{quantity} |
Quantity purchased |
{product_id} |
Product ID |
{product_name} |
Product name |
{order_id} |
Order ID |
{delivery_id} |
Delivery ID |
Example Commands:
give {player} diamond 64
lp user {player} parent add vip
eco give {player} 1000
🚀 Installation
- Download the WERM plugin JAR file
- Place it in your server's
pluginsfolder - Start/restart your server
- Generate a plugin token in your WERM Dashboard
- Edit
plugins/WERM/config.ymland add your plugin token - Run
/werm reloador restart your server - ✅ Your server will now appear as online in the WERM dashboard!
📋 Requirements
- Server Software: Spigot, Paper, Purpur, or any Spigot-based fork
- Minecraft Version: 1.13+
- Java Version: 8+
- WERM Account: Create one here
🔧 How It Works
- Setup: Configure the plugin with your unique plugin token from the WERM dashboard
- Heartbeat: The plugin sends periodic heartbeats to keep your server status updated
- Purchases: When a customer makes a purchase on your WERM store, a delivery is queued
- Delivery: The plugin polls for pending deliveries and executes the configured commands
- Confirmation: Successful deliveries are confirmed and marked as completed
💬 Support
Need help? Join our Discord Server for support and community discussions.
📄 License
This plugin is provided by WERM for use with the WERM monetization platform.
WERM - The Future of Game Monetization
© 2026 WERM | Made with ❤️ for the Minecraft community
Ченджлог
1.0.4Релиз1.21.9, 1.21.10, 1.21.11 · 2 января 2026 г.
[1.0.4] - 2026-01-02
⚡ Performance & Reliability Release
This release adds batch delivery confirmation and async file I/O to improve performance and reliability during high-load scenarios.
Added
Batch Delivery Confirmation (Improvement 1.3)
- New Batch API - Confirmations are now batched (up to 10 at a time) and sent in a single API call
- Backend Support - New
batch-confirm-deliveryendpoint processes multiple confirmations atomically - Reduced API Overhead - Up to 90% reduction in confirmation API calls during bulk deliveries
- Graceful Fallback - Automatically falls back to individual confirmations if batch fails
Async File I/O (Improvement 1.4)
- Non-blocking File Writes - Confirmation queue saves now run on a dedicated background thread
- ExecutorService - Single-thread daemon executor prevents main thread blocking
- Debounced Saves - Multiple queue changes are coalesced into fewer disk writes
- Graceful Shutdown - Synchronous save on server stop ensures no data loss
Changed
DeliveryConfirmationQueue.java- Complete rewrite with batch processing and async I/OVerificationAPI.java- AddedbatchConfirmDeliveries()method for batch API callsWERMPlugin.java- UpdatedonDisable()to properly shutdown confirmation queue
Technical Details
- Batch Size: 10 confirmations per API call
- I/O Thread: Daemon thread named
WERM-ConfirmationQueue-IO - Shutdown Timeout: 5 seconds for graceful termination
- New Classes:
BatchConfirmation- Data class for batch confirmation itemsBatchConfirmResult- Result wrapper for batch API responses
Performance Impact
- ~90% reduction in confirmation API calls during bulk deliveries
- Zero main thread blocking from file I/O operations
- Faster server shutdown due to optimized queue persistence
- Lower disk I/O through debounced writes
1.0.3Релиз1.21.9, 1.21.10, 1.21.11 · 28 декабря 2025 г.
[1.0.3] - 2025-01-11
🚀 Performance Optimization Release
This release focuses on network performance improvements with connection pooling and smart polling to reduce server load and API traffic.
Added
Performance Features
HTTP Connection Pooling (Improvement 1.1) - New
HttpClientManager.javausing OkHttp for efficient connection reuse- Maintains pool of 5 idle connections with 5-minute keep-alive
- Eliminates connection setup overhead for repeated API calls
- Proper TLS 1.2+ enforcement built into the connection pool
- Configurable timeouts: 10s connect, 30s read, 10s write
Smart Polling with Exponential Backoff (Improvement 1.2) - Dynamic polling based on server activity
- Increases polling interval when no deliveries are found (up to 4x base interval)
- Automatically resets to base interval when deliveries are found
- Instantly checks for deliveries when players join
- Reduces API load during low-activity periods by up to 75%
Changed
- Replaced all
HttpURLConnectionusage with OkHttp client inVerificationAPI.java - Refactored
DeliveryTask.javawith backoff state management - Updated
WERMPlugin.javato properly shutdown HTTP client on disable - Updated API connectivity test to use connection pool
Technical Details
- New Dependency: OkHttp 4.12.0 (Java 8 compatible)
- Relocated Packages:
okhttp3,okio,kotlin→com.werm.libs.* - Backoff Configuration:
- Max backoff multiplier: 4x
- Backoff triggers after 3 consecutive empty responses
- Backoff resets on delivery found or player join
Performance Impact
- ~50% reduction in connection overhead through reuse
- Up to 75% reduction in API calls during idle periods
- Faster response times due to keep-alive connections
- Lower memory footprint from connection reuse
1.0.2Релиз1.21.9, 1.21.10, 1.21.11 · 27 декабря 2025 г.
[1.0.2] - 2025-12-27
🔧 Maintenance Release
This release updates the bStats plugin ID for proper metrics tracking.
Changed
- Updated bStats plugin ID from 24691 to 28553 for correct metrics tracking
- Updated internal version constant to 1.0.2
Notes
- No functional changes from 1.0.1
- All security hardening from 1.0.1 remains in place
1.0.1Релиз1.21.9, 1.21.10, 1.21.11 · 26 декабря 2025 г.
[1.0.1] - 2025-12-27
🔒 Security Hardening Release
This release focuses on comprehensive security improvements based on a full security audit.
Added
Security Features
- Command Validator - New
CommandValidator.javablocks dangerous commands (op, deop, ban, stop, reload, whitelist, etc.) from being executed via deliveries - Delivery Confirmation Queue - New
DeliveryConfirmationQueue.javapersists pending confirmations to survive server restarts - TLS 1.2+ Enforcement - All API connections now require TLS 1.2 or higher
- Debug Log Redaction - Sensitive data (tokens, UUIDs, delivery IDs) automatically redacted in debug logs
- Input Sanitization - Player names and UUIDs sanitized before command placeholder substitution
- API Endpoint Validation - HTTPS requirement and domain whitelist enforcement
- Verification Rate Limiting - 5-second cooldown between
/werm verifyattempts - IP Change Detection - Backend logs security events when tokens are used from new IPs
- Configurable Fallback - Fallback endpoints now require explicit opt-in (disabled by default)
- Auto-Discovery - Appwrite Project ID now auto-discovered from API
/configendpoint
Admin Dashboard
- Audit Logs Page - New page in admin dashboard to view security events
Changed
- Removed hardcoded Appwrite Project ID from
VerificationAPI.java - Improved error handling for SSL/TLS connections
- Enhanced debug logging with automatic data redaction
Security Fixes
- CVE-like Fixes:
- Command injection via delivery commands (Critical)
- Debug mode exposing sensitive tokens (High)
- No rate limiting on verification attempts (Medium)
- Delivery confirmation atomicity issues (Medium)
- Player name injection in commands (Medium)
- Hardcoded project ID (High)
- SSL certificate validation (High)
- Unconfigured fallback endpoints (Low)
- No endpoint validation (Low)
Files Added
CommandValidator.java- Command blacklist and pattern validationDeliveryConfirmationQueue.java- Persistent confirmation queue
1.0.0Релиз1.21.9, 1.21.10, 1.21.11 · 22 декабря 2025 г.
[1.0.0] - 2025-12-23
🎉 Initial Release
The first official release of the WERM (Web Engine for Realm Monetization) Minecraft plugin.
Added
Core Features
- Account Verification System - Players can link their Minecraft account to WERM using
/werm verify <code>with 6-character verification codes - Automatic Delivery System - Automatically delivers purchased products to players by executing configured console commands
- Server Heartbeat - Sends periodic status updates to the WERM dashboard including player counts and server version
- Player Join Detection - Checks for and delivers pending purchases when players join the server
- Player Online Notification - Notifies the WERM API when players come online for real-time status tracking
Commands
/werm verify <code>- Link Minecraft account with WERM platform/werm help- Display plugin help and information/werm status- View plugin connection status (admin only)/werm reload- Reload plugin configuration (admin only)/w- Command alias for/werm
Permissions
werm.verify- Allows players to verify their account (default: true)werm.admin- Access to admin commands like reload and status (default: op)
Configuration
- Configurable plugin token authentication
- Adjustable heartbeat interval (default: 60 seconds)
- Adjustable delivery polling interval (default: 15 seconds)
- Toggle player count in heartbeat
- Debug mode for verbose logging
- Fully customizable messages with color code support (
&codes)
Delivery System
- Support for multiple delivery commands per product
- Command placeholder support:
{player}/{player_name}- Player's username{uuid}/{player_uuid}- Player's UUID{quantity}- Quantity purchased{product_id}- Product ID{product_name}- Product name{order_id}- Order ID{delivery_id}- Delivery ID
- Option to require player online for delivery
- Automatic delivery confirmation to WERM API
- Failed delivery reporting with error messages
- Duplicate delivery prevention
Technical
- Fully asynchronous API communication (no server lag)
- Tab completion for all commands and subcommands
- Console command support for
/werm reload - API connectivity testing on startup
- Endpoint fallback support for reliability
- GSON-based JSON parsing for API communication
- Secure token-based authentication with X-Plugin-Token header
Compatibility
- Spigot API 1.13+ support
- Compatible with Paper, Purpur, and all Spigot-based forks
- Java 8+ support
Links
- Website: https://wermpay.com
- Dashboard: https://wermpay.com/dashboard
- Support: https://discord.gg/werm
- Short URL: https://werm.gg
Комментарии
Загружаем…