COWMODSКаталог модов

cwhitelist

To soulve the whitelist problem when server in not in online mod

Автор: SkyDreamLG1,8 тыс.3обновлён 2 окт. 2026 г.
УправлениеТехнологииУтилиты

Описание

CWhitelist - Advanced Whitelist Management for Minecraft


🔒 Intelligent Whitelist System with API Integration for Modern Minecraft Servers

release issues license NeoForge


✨ Features

🔐 Multi-Dimensional Authentication

  • Player Name: Traditional username-based whitelisting
  • UUID: Secure player identification
  • IP Address: IP-based authentication with wildcard support (e.g., 192.168.*.*)
  • Configurable Check Types: Enable/disable each authentication method independently

🌐 API Integration

  • Dual-Mode Operation: API-first with local fallback
  • Centralized Management: Single source of truth across multiple servers
  • Real-time Synchronization: Automatic whitelist updates
  • Token-based Authentication: Secure API communication with permission levels
  • Health Monitoring: Built-in API health checks

📊 Intelligent Logging System

  • Comprehensive Audit Trail: Player login attempts with timestamps
  • Log Rotation: Automatic file management with size limits
  • Retention Policies: Configurable log retention periods
  • Remote Logging: Optional API-based event logging

🛠️ Advanced Management

  • Async Operations: Non-blocking API calls and file operations
  • Smart Caching: Configurable cache durations to reduce API load
  • Error Resilience: Graceful degradation when API is unavailable
  • Hot Reloading: Configuration changes without server restart

🎮 User Experience

  • Permission-Based Commands: Granular command access control
  • Real-time Feedback: Immediate operation confirmation
  • Comprehensive Status: Detailed API and token information
  • Fallback Protection: Seamless local operation during API outages

🚀 Quick Start

Installation

  1. Download the latest cwhitelist-x.x-NeoForge-1.21.x.jar from Releases
  2. Place it in your server's mods folder
  3. Start the server to generate default configuration
  4. Restart the server after configuration

Basic Configuration

For Local-Only Mode:

# config/cwhitelist-common.toml
[basic]
enableLogging = true
logRetentionDays = 7
logCutSizeMB = 10

[checks]
enableNameCheck = true
enableUuidCheck = true
enableIpCheck = true

[api]
enableApi = false  # Disable API integration

For API-Enabled Mode:

[api]
enableApi = true
baseUrl = "http://your-api-server.com/api"
token = "your-secure-api-token-here"
useHeaderAuth = true
timeoutSeconds = 10
syncOnStartup = true
logLoginEvents = true

Backend program repository address:cwhitelist-backend

⚙️ Configuration Guide

Basic Settings ([basic])

ParameterDefaultDescriptionRange
enableLoggingtrueEnable local file loggingboolean
logRetentionDays7Days to keep log files1-365
logCutSizeMB10Maximum log file size (MB)1-100

Check Settings ([checks])

ParameterDefaultDescription
enableNameChecktrueValidate by player name
enableUuidChecktrueValidate by player UUID
enableIpChecktrueValidate by IP address

API Settings ([api])

ParameterDefaultDescription
enableApifalseEnable API integration
baseUrlhttp://127.0.0.1:5000/apiAPI server base URL
token""API authentication token
useHeaderAuthtrueUse Authorization header (true) or query param (false)
timeoutSeconds10API request timeout
cacheDurationSeconds30Local cache duration (0 to disable)
syncOnStartuptrueSync with API on server start
logLoginEventstrueSend login events to API
serverId""Optional server identifier
sendServerIdfalseInclude server ID in API requests
includeExpiredfalseInclude expired entries when syncing

📋 Command Reference

🎮 Player Commands

CommandDescriptionPermission
No direct player commandsAll whitelist management requires admin permissions-

👑 Admin Commands

Basic Whitelist Management:

# Add entries
/cwhitelist add name <username>
/cwhitelist add uuid <uuid>
/cwhitelist add ip <ip-address>

# Remove entries
/cwhitelist remove name <username>
/cwhitelist remove uuid <uuid>
/cwhitelist remove ip <ip-address>

# View entries
/cwhitelist list

# Reload configuration
/cwhitelist reload

API Management Commands:

# Check API status
/cwhitelist api status

# Verify API token
/cwhitelist api verify

# Perform health check
/cwhitelist api health

# Manual sync from API
/cwhitelist api sync

# Clear API cache
/cwhitelist api clearcache

🔌 API Integration

API Requirements

CWhitelist supports integration with compatible API servers that implement the following endpoints:

  • GET /health - Health check (no authentication required)
  • GET /whitelist/sync - Retrieve whitelist entries (requires read permission)
  • POST /whitelist/entries - Add new entries (requires write permission)
  • DELETE /whitelist/entries/{type}/{value} - Remove entries (requires delete permission)
  • POST /login/log - Log login events (requires write permission)
  • GET /tokens/verify - Verify token validity (requires authentication)

Token Permissions

API tokens must be created with appropriate permissions:

  • Read: Required for syncing whitelist
  • Write: Required for adding entries and logging events
  • Delete: Required for removing entries
  • Manage: System administration (not typically needed)

Authentication Methods

Header Authentication (Recommended):

Authorization: Bearer your-token-here

Query Parameter Authentication:

GET /api/whitelist/sync?token=your-token-here

🗂️ File Structure

config/
├── cwhitelist-common.toml          # Main configuration
└── cwhitelist_entries.json         # Local whitelist backup

logs/
└── cwhitelist/
    ├── 2024-01-01.log              # Daily log files
    └── 2024-01-01.log.1704067200000 # Rotated logs

Data Files Format

cwhitelist_entries.json:

[
  {"type": "name", "value": "PlayerOne"},
  {"type": "uuid", "value": "123e4567-e89b-12d3-a456-426614174000"},
  {"type": "ip", "value": "192.168.1.*"}
]

🔄 Operation Modes

Mode 1: Local-Only (Default)

  • All data stored locally
  • No external dependencies
  • Simple deployment
  • Suitable for single servers

Mode 2: API-Primary with Fallback

  • Primary: Sync with central API
  • Fallback: Use local cache if API unavailable
  • Automatic re-sync when API restored
  • Ideal for multi-server setups

Mode 3: API-Only

  • All operations through API
  • No local whitelist storage
  • Centralized management
  • Requires reliable API connection

🛡️ Security Features

Authentication Security

  • Token-based Authentication: Secure API communication
  • Permission Validation: Granular access control
  • Token Expiry: Automatic token validity checks
  • No Hardcoded Secrets: Config file-based token management

Data Protection

  • Local Encryption: Sensitive data in configuration
  • Access Control: Admin-only command permissions (level 4)
  • Audit Logging: Comprehensive access logging
  • Input Validation: Sanitized API request parameters

Network Security

  • HTTPS Support: Secure API communication (when configured)
  • Timeout Protection: Configurable request timeouts
  • Retry Logic: Graceful error handling
  • Rate Limiting: Built-in request queuing

📈 Performance Optimization

Caching Strategy

// Configurable cache duration
cacheDurationSeconds = 30  // Balance between freshness and API load

// Smart cache invalidation
- Add/Remove operations clear cache
- Manual sync refreshes cache
- Automatic periodic validation

Async Operations

  • Non-blocking API Calls: HTTP requests on separate threads
  • Parallel Processing: Concurrent request handling
  • Queue Management: Ordered request processing
  • Resource Optimization: Efficient memory usage

🐛 Troubleshooting

Common Issues

API Connection Failed:

[Server] WARN API health check failed, falling back to local file

Solution: Verify API server is running and accessible. Check network connectivity and firewall settings.

Authentication Failed:

[Server] ERROR Token verification failed: Authentication required

Solution: Verify API token is correct and has required permissions. Use /cwhitelist api verify to test.

Permission Denied:

[Server] ERROR Token does not have write permission

Solution: Generate new token with appropriate permissions or use existing token with correct permissions.

Cache Issues:

[Server] DEBUG API cache cleared

Solution: Cache automatically clears on modification. Use /cwhitelist api clearcache to force refresh.

Log Files

Check log files for detailed error information:

  • Location: logs/cwhitelist/YYYY-MM-DD.log
  • Contains: API calls, authentication attempts, errors
  • Format: [HH:mm:ss] [RESULT] PlayerName UUID IP

Debug Commands

# Check current mode
/cwhitelist list

# Verify API connectivity
/cwhitelist api health

# Test token permissions
/cwhitelist api verify

# View detailed status
/cwhitelist api status

🧩 API Compatibility

Supported API Versions

  • Minimum: v1.0.0
  • Recommended: v1.1.0+
  • Tested With: CWhitelist API v1.2.0

Response Format Expectations

{
  "success": true,
  "message": "Operation successful",
  "data": { /* operation-specific data */ }
}

Error Handling

The mod handles the following HTTP status codes:

  • 200-299: Success - Process response
  • 401: Unauthorized - Token invalid/expired
  • 403: Forbidden - Insufficient permissions
  • 429: Rate Limited - Automatic retry with backoff
  • 500+: Server Error - Fallback to local mode

🔧 Development

Building from Source

# Clone repository
git clone https://github.com/SkyDreamLG/CWhitelist.git
cd CWhitelist

# Build with Gradle
./gradlew build

# Output: build/libs/cwhitelist-x.x.x.jar

Prerequisites

  • Java: 17 or higher
  • Minecraft: 1.21.x
  • NeoForge: Latest recommended build
  • Build Tools: Gradle 8.0+

Project Structure

src/main/java/org/skydream/cwhitelist/
├── Cwhitelist.java              # Main mod class
├── Config.java                  # Configuration management
├── ApiClient.java               # API communication
├── WhitelistManager.java        # Core whitelist logic
├── WhitelistCommand.java        # Command implementation
├── LogHandler.java              # Logging system
└── WhitelistEntry.java          # Data model

Extending the Mod

Adding New Authentication Methods:

  1. Update Config.java with new check setting
  2. Modify WhitelistManager.isAllowed() method
  3. Add corresponding command handlers
  4. Update API client for new endpoint support

Custom API Integration:

// Implement custom ApiClient interface
public interface CustomApiClient {
    CompletableFuture<List<WhitelistEntry>> fetchEntries();
    CompletableFuture<Boolean> validateEntry(WhitelistEntry entry);
}

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Development Workflow

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Coding Standards

  • Follow existing code style and patterns
  • Add comprehensive JavaDoc comments
  • Include unit tests for new features
  • Update documentation for API changes
  • Ensure backward compatibility

Third-Party Licenses

  • Gson: Apache License 2.0
  • NeoForge: LGPL 2.1
  • SLF4J: MIT License

🌟 Acknowledgments

  • NeoForge Team for the excellent modding framework
  • Mojang Studios for Minecraft
  • Contributors who help improve this project
  • Community for feedback and support

📞 Support


Built with ❤️ by SkyDream Team
If you find this project useful, please consider giving it a ⭐ on GitHub!

🎯 Quick Reference

Deployment Checklist

  • Verify Java 17+ installation
  • Configure API token (if using API mode)
  • Set appropriate permission levels
  • Test API connectivity
  • Configure logging preferences
  • Set up log rotation schedule
  • Test local fallback functionality

Performance Tips

  1. Cache Duration: Set cacheDurationSeconds based on update frequency
  2. Log Rotation: Configure logCutSizeMB to prevent disk space issues
  3. Timeout Settings: Adjust timeoutSeconds based on network latency
  4. API Calls: Minimize API calls during peak hours

Security Best Practices

  1. Token Security: Store tokens in configuration, not in code
  2. Permission Minimization: Grant minimum required permissions
  3. Regular Audits: Review log files for suspicious activity
  4. API Security: Use HTTPS for API communication
  5. Backup Strategy: Regular backups of local whitelist files

Ready to secure your Minecraft server? Install CWhitelist today and experience professional-grade whitelist management!

Последние версии

Все версии →
release

cwhitelist 3.1-26.1+-NeoForge

3.1-26.1+-NeoForge
2 окт. 2026 г.55Minecraft: 26.1, 26.1.1, 26.1.2, 26.2, 26.3neoforge
Скачать
Что нового
Fixed an issue where the mod could not load on 26.1 and above due to an incorrect allowed version range.
release

cwhitelist 3.1-1.21.11+-NeoForge

3.1-1.21.11+-NeoForge
24 июл. 2026 г.86Minecraft: 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2neoforge
Скачать
Что нового
# Changelog ## 2026-07-23 ### Added - **Heartbeat system**: Automatically starts when the API is enabled, calling `/health` every 30s to check connectivity; switches to 5s fast retry on failure, and reverts to 30s once restored. The heartbeat is bound to the API toggle – disabling the API stops it. - **Player logout reporting**: When a player leaves the game, a `POST /login/logout` request is sent, reporting `player_name`, `player_uuid`, `player_ip`, and `server_id`. This shares the `logLoginEvents` toggle with login events. - **Global `server_id` propagation**: All API requests (`/health`, `/whitelist/sync`, `/whitelist/entries`, `/login/log`, `/login/logout`) now forcibly carry `server_id`. If not configured, `"undefined"` is used as fallback. - **Warning for missing `server_id`**: When API mode is enabled but `serverId` is empty, a prominent warning is printed to the console, prompting the server owner to configure it. - **Singleplayer host player detection**: Added `isHostPlayer()` method; the owner of a singleplayer world is automatically allowed and detected via the `isSingleplayerOwner` API, with log entries marked as `[Host Login]`. - **Server-side translation preloading**: Translation files for `en_us` and `zh_cn` are preloaded at startup. Kick messages are translated server‑side based on the client’s language, so clients do not need the mod installed to see correct messages. ### Changed - **Removed `sendServerId` config option**: `server_id` is now always sent with every request; the `sendServerId` setting in the config file is deprecated. - **Removed `API_SEND_SERVER_ID` config option**: The relevant field and build code have been deleted from `Config.java`. ### Fixed - **Inverted `isValidForWriting` semantics**: Previously returned `!isActive || !canWrite || isExpired()`; corrected to `isActive && canWrite && !isExpired()`. - **Inverted `hasValidToken` semantics**: Previously returned `!isTokenVerified.get() || tokenInfo == null`; corrected to `isTokenVerified.get() && tokenInfo != null`. - **Inverted permission checks in sync operations**: Token permission checks in `syncWhitelist`, `addEntry`, `removeEntry`, and `logLoginEvent` were corrected from `hasValidToken() || tokenInfo.isValidForXxx()` to `!hasValidToken() || !tokenInfo.isValidForXxx()`. - **Inverted `getTokenStatus` logic**: The `hasValidToken()` condition was corrected from `true` to `!false`. - **Local singleplayer players being incorrectly blocked**: In `isAllowed()`, the initial `allowed` value was changed from `false` to `isHost`, so the singleplayer owner is no longer intercepted by the whitelist. - **`getPlayerIP` security enhancement**: No longer directly casts to `InetSocketAddress`; uses `instanceof` pattern matching, with fallback for `LocalAddress` (returns `<host>` for singleplayer/LAN), and returns `"unknown"` on exception. - **Blank logs during initialization**: Log writing and API login events now include an `isLoaded` guard, executing only after the whitelist has been fully loaded, preventing empty entries from being generated during mod initialization. ### Important - If you need to use the API functionality, please make sure to use backend version **2.1.0** or higher.
release

cwhitelist 3.1-1.21.1-1.21.10-NeoForge

3.1-1.21.1-1.21.10-NeoForge
23 июл. 2026 г.442Minecraft: 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, 1.21.10neoforge
Скачать
Что нового
# Changelog ## 2026-07-23 ### Added - **Heartbeat system**: Automatically starts when the API is enabled, calling `/health` every 30s to check connectivity; switches to 5s fast retry on failure, and reverts to 30s once restored. The heartbeat is bound to the API toggle – disabling the API stops it. - **Player logout reporting**: When a player leaves the game, a `POST /login/logout` request is sent, reporting `player_name`, `player_uuid`, `player_ip`, and `server_id`. This shares the `logLoginEvents` toggle with login events. - **Global `server_id` propagation**: All API requests (`/health`, `/whitelist/sync`, `/whitelist/entries`, `/login/log`, `/login/logout`) now forcibly carry `server_id`. If not configured, `"undefined"` is used as fallback. - **Warning for missing `server_id`**: When API mode is enabled but `serverId` is empty, a prominent warning is printed to the console, prompting the server owner to configure it. - **Singleplayer host player detection**: Added `isHostPlayer()` method; the owner of a singleplayer world is automatically allowed and detected via the `isSingleplayerOwner` API, with log entries marked as `[Host Login]`. - **Server-side translation preloading**: Translation files for `en_us` and `zh_cn` are preloaded at startup. Kick messages are translated server‑side based on the client’s language, so clients do not need the mod installed to see correct messages. ### Changed - **Removed `sendServerId` config option**: `server_id` is now always sent with every request; the `sendServerId` setting in the config file is deprecated. - **Removed `API_SEND_SERVER_ID` config option**: The relevant field and build code have been deleted from `Config.java`. ### Fixed - **Inverted `isValidForWriting` semantics**: Previously returned `!isActive || !canWrite || isExpired()`; corrected to `isActive && canWrite && !isExpired()`. - **Inverted `hasValidToken` semantics**: Previously returned `!isTokenVerified.get() || tokenInfo == null`; corrected to `isTokenVerified.get() && tokenInfo != null`. - **Inverted permission checks in sync operations**: Token permission checks in `syncWhitelist`, `addEntry`, `removeEntry`, and `logLoginEvent` were corrected from `hasValidToken() || tokenInfo.isValidForXxx()` to `!hasValidToken() || !tokenInfo.isValidForXxx()`. - **Inverted `getTokenStatus` logic**: The `hasValidToken()` condition was corrected from `true` to `!false`. - **Local singleplayer players being incorrectly blocked**: In `isAllowed()`, the initial `allowed` value was changed from `false` to `isHost`, so the singleplayer owner is no longer intercepted by the whitelist. - **`getPlayerIP` security enhancement**: No longer directly casts to `InetSocketAddress`; uses `instanceof` pattern matching, with fallback for `LocalAddress` (returns `<host>` for singleplayer/LAN), and returns `"unknown"` on exception. - **Blank logs during initialization**: Log writing and API login events now include an `isLoaded` guard, executing only after the whitelist has been fully loaded, preventing empty entries from being generated during mod initialization. ### Important - If you need to use the API functionality, please make sure to use backend version **2.1.0** or higher.
release

cwhitelist 3.0-1.21.11+-NeoForge

3.0-1.21.11+-NeoForge
23 мар. 2026 г.52Minecraft: 1.21.11neoforge
Скачать
release

cwhitelist 3.0-1.21.1-1.21.10-NeoForge

3.0-1.21.1-1.21.10-NeoForge
23 мар. 2026 г.410Minecraft: 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, 1.21.10neoforge
Скачать
Что нового
# CWhitelist Changelog ## v3.0 - 2026-01-18 ### Fixes #### 🐛 API Sync Fix - Fixed `api sync` command using cache instead of refreshing - Added forced refresh mechanism to ensure latest data is fetched #### 🔤 Translation System Fix - Fixed translation keys showing as key names instead of translated content - Optimized translation file paths and formats #### 🔧 Version Compatibility Fix - Fixed compatibility issues on Minecraft 1.21.10 and newer versions - Ensured command system works properly in new versions ### Update Recommendation All users are recommended to upgrade to this version, especially administrators using API integration features.
release

cwhitelist 2.1-1.21.x-NeoForge

2.1-1.21.x-NeoForge
17 янв. 2026 г.44Minecraft: 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.9neoforge
Скачать
Что нового
# CWhitelist Changelog ## v2.1 - 2026-01-17 ### 🔧 New Features #### API Token Authentication System - **Complete Token Authentication Support**: Added secure token authentication mechanism for API servers - **Dual Authentication Methods**: - **Header Authentication**: Authenticate via `Authorization: Bearer <token>` header (Recommended) - **Query Parameter Authentication**: Authenticate via `?token=<token>` query parameter - **Permission Validation**: Automatically verify token read/write/delete/management permissions - **Token Expiration Detection**: Real-time token validity checks with automatic handling of expired tokens #### Enhanced Permission Management - **Granular Permission Control**: - `can_read`: Read permission for synchronizing whitelist - `can_write`: Write permission for adding entries and logging events - `can_delete`: Delete permission for removing entries - `can_manage`: Management permission for system administration - **Smart Permission Verification**: Automatically validates required permissions based on operation type - **Clear Permission Feedback**: Detailed permission error messages #### Token Status Management - **Token Verification Command**: Added `/cwhitelist api verify` command to validate token effectiveness - **Status Information Display**: Detailed token information shown in `/cwhitelist api status` - **Automatic Verification**: Tokens are automatically verified on server startup ### ⚙️ Configuration Updates #### New Configuration Options ```toml [api] # Basic Authentication Configuration token = "your-api-token-here" # API authentication token useHeaderAuth = true # Authentication method (true:header/false:query parameter) # Optional Configuration serverId = "" # Server identifier (optional) sendServerId = false # Whether to include server ID in requests includeExpired = false # Whether to include expired entries ``` #### Configuration Change Notes - **Backward Compatible**: Existing configurations require no changes, new options have reasonable defaults - **Security Recommendation**: Strongly recommend using Header authentication for better security ### 🎮 Command Extensions #### New API Management Commands | Command | Description | Permission | |---------|-------------|------------| | `/cwhitelist api verify` | Verify API token validity | OP (2) | | `/cwhitelist api status` | Display detailed API and token status | OP (2) | #### Enhanced Commands - **`/cwhitelist api health`**: Added network error handling and timeout control - **`/cwhitelist api sync`**: Enhanced permission validation, only tokens with read permission allowed - **All API-related operations**: Now require valid token authentication ### 🔒 Security Improvements #### Authentication Security - **Secure Token Storage**: Tokens stored only in configuration files, not hardcoded - **Secure Communication**: Two authentication methods to meet different security needs - **Permission Isolation**: Operation scope limited based on token permissions #### Error Handling - **Authentication Failure Handling**: Automatic fallback to local mode ensuring service availability - **Clear Error Messages**: Detailed permission and authentication failure notifications - **Logging**: Records all authentication attempts and permission checks ### 📊 Performance Optimizations #### Smart Caching - **Token Verification Cache**: Reduces duplicate token validation requests - **Permission Caching**: Caches token permission information for faster verification - **Intelligent Refresh**: Automatically re-validates tokens upon expiration #### Network Optimization - **Connection Reuse**: HTTP client connection reuse reduces connection establishment overhead - **Timeout Control**: Configurable timeout settings prevent long blocks - **Queue Management**: Optimized request queues to avoid concurrency issues ### 📋 Change Summary #### Core Changes 1. **API Client Refactor**: Rewrote `ApiClient` class to support token authentication 2. **Token Information Model**: Added `TokenInfo` class to manage token data and permissions 3. **Authentication Header Management**: Simplified to single token configuration, replacing complex header lists #### Configuration Simplification - **Removed**: `API_AUTH_HEADERS` configuration option - **Added**: `API_TOKEN` single token configuration - **Optimized**: More intuitive authentication method selection #### User Experience - **Status Display**: More detailed token and permission information - **Error Notifications**: More user-friendly permission denial messages - **Operation Feedback**: Real-time authentication status feedback ### 🐛 Known Issues - None - This version is a feature enhancement release with no bug fixes --- **Update Recommendation**: Strongly recommended for all server administrators requiring API integration, providing a more secure and flexible authentication mechanism. **Technical Support**: For upgrade issues, please refer to documentation or seek assistance through GitHub Issues.
release

cwhitelist 1.3-1.21.x-NeoForge

1.3-1.21.x-NeoForge
15 апр. 2025 г.310Minecraft: 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5neoforge
Скачать
Что нового
Increase module priority, while modifying whitelist data reading to asynchronous loading and adding whitelist data cache
release

cwhitelist 1.2-1.21.x-NeoForge

1.2-1.21.x-NeoForge
13 февр. 2025 г.127Minecraft: 1.21.1, 1.21.2, 1.21.3, 1.21.4neoforge
Скачать
Что нового
Added multilingual support (currently only supports English and Simplified Chinese) Add switch function for whitelist system check items (modified in configuration file) Fixed the control issue of the log system in the configuration file
alpha

cwhitelist 1.0-SNAPSHOT

1.0-SNAPSHOT
13 февр. 2025 г.62Minecraft: 1.21.1neoforge
Скачать
Что нового
first update(this version have some mistakes, please use the newest version instead this)
release

cwhitelist 1.1-1.21.x-NeoForge

1.1-1.21.x-NeoForge
12 февр. 2025 г.78Minecraft: 1.21.1, 1.21.2, 1.21.3, 1.21.4neoforge
Скачать