- Add complete PlayHours mod source code with all features: * Schedule enforcement with per-day schedules and midnight-spanning support * Login control with configurable thresholds and exemptions * Warnings and auto-kick system with countdown functionality * Force modes (NORMAL/FORCE_OPEN/FORCE_CLOSED) for maintenance * Whitelist/blacklist system for player access control * Date exceptions for holidays and special events * Multi-language support (English/French) with smart time formatting * LuckPerms integration with vanilla ops fallback * Dynamic MOTD system with real-time schedule display * Comprehensive command system with permission integration * TOML configuration with hot-reload support - Add comprehensive documentation suite: * Installation guide with step-by-step setup instructions * Complete configuration reference with all options * Commands reference with usage examples * Features overview with detailed explanations * MOTD system configuration and customization guide * Permissions system documentation with LuckPerms integration * Technical details covering architecture and limitations * Usage examples with real-world scenarios * Changelog with version history - Add resource files: * Language files (en_us.json, fr_fr.json) with localized messages * Mod metadata (mods.toml) with proper Forge configuration * Resource pack metadata (pack.mcmeta) - Update build configuration: * Gradle build system with proper dependencies * Project properties and version management * Development environment setup - Restructure documentation: * Replace old README.txt with new comprehensive README.md * Create modular documentation structure in docs/ directory * Add cross-references and navigation between documents * Include quick start guide and common use cases This commit represents the complete v1.0.0 release of PlayHours, a production-ready server operation hours enforcement mod for Minecraft Forge 1.20.1.
99 lines
3.4 KiB
Markdown
99 lines
3.4 KiB
Markdown
# PlayHours - Server Operation Hours Enforcement
|
|
|
|
**Version:** 1.0.0
|
|
**Minecraft:** 1.20.1
|
|
**Forge:** 47.4.10
|
|
**Java:** 17+
|
|
**Author:** Mr-KayJayDee
|
|
|
|
A production-ready server-side Forge mod that enforces configurable server open hours with per-day schedules, automatic warnings, login blocking, and comprehensive admin commands.
|
|
|
|
## 🚀 Quick Start
|
|
|
|
1. **Download** `playhours-1.0.0.jar` from the `build/libs/` directory
|
|
2. Place in your server's `mods/` folder
|
|
3. Start the server to generate the default config
|
|
4. Edit `config/playhours.toml` to your needs
|
|
5. Use `/hours reload` or restart the server
|
|
|
|
## ✨ Key Features
|
|
|
|
- **🕒 Schedule Enforcement** - Per-day schedules with midnight-spanning support
|
|
- **🚫 Login Control** - Deny logins outside open hours with clear messages
|
|
- **⚠️ Warnings & Auto-Kick** - Configurable warnings and automatic player removal
|
|
- **🔧 Force Modes** - Override schedule (NORMAL/FORCE_OPEN/FORCE_CLOSED)
|
|
- **👥 Whitelist/Blacklist** - Player access control independent of schedule
|
|
- **📅 Date Exceptions** - Special open/closed dates for holidays and events
|
|
- **🌍 Multi-Language** - English and French support with smart time formatting
|
|
- **🔑 Permissions** - LuckPerms integration with ops fallback
|
|
- **📢 MOTD Display** - Dynamic server list information with schedule status
|
|
|
|
## 📚 Documentation
|
|
|
|
### Core Documentation
|
|
- **[Installation Guide](docs/INSTALLATION.md)** - Setup and installation instructions
|
|
- **[Configuration Guide](docs/CONFIGURATION.md)** - Complete configuration reference
|
|
- **[Commands Reference](docs/COMMANDS.md)** - All available commands and usage
|
|
- **[Features Overview](docs/FEATURES.md)** - Detailed feature explanations
|
|
|
|
### Advanced Documentation
|
|
- **[MOTD System](docs/MOTD.md)** - Message of the Day configuration and customization
|
|
- **[Permissions System](docs/PERMISSIONS.md)** - Permission nodes and LuckPerms integration
|
|
- **[Technical Details](docs/TECHNICAL.md)** - Architecture, limitations, and implementation details
|
|
- **[Usage Examples](docs/EXAMPLES.md)** - Real-world scenarios and configurations
|
|
|
|
### Additional Resources
|
|
- **[Changelog](docs/CHANGELOG.md)** - Version history and updates
|
|
- **[Building from Source](docs/TECHNICAL.md#building-from-source)** - Compilation instructions
|
|
|
|
## 🎯 Common Use Cases
|
|
|
|
### Basic Server Hours
|
|
```toml
|
|
[defaults]
|
|
periods = ["09:00 AM-06:00 PM"]
|
|
|
|
[days]
|
|
saturday = ["02:00 PM-11:59 PM"]
|
|
sunday = ["02:00 PM-10:00 PM"]
|
|
```
|
|
|
|
### Weekend Events
|
|
```toml
|
|
[exceptions]
|
|
open_dates = ["2025-12-31 08:00 PM-11:59 PM"] # New Year's Eve
|
|
closed_dates = ["2025-12-25"] # Christmas Day
|
|
```
|
|
|
|
### Maintenance Mode
|
|
```
|
|
/hours force close
|
|
```
|
|
|
|
## 🔧 Quick Commands
|
|
|
|
| Command | Description | Permission |
|
|
|---------|-------------|------------|
|
|
| `/hours status` | Show current server status | `playhours.view` |
|
|
| `/hours force open` | Override to always open | `playhours.admin` |
|
|
| `/hours force close` | Override to always closed | `playhours.admin` |
|
|
| `/hours reload` | Reload configuration | `playhours.admin` |
|
|
|
|
## 📋 Requirements
|
|
|
|
- **Minecraft:** 1.20.1
|
|
- **Forge:** 47.4.10+
|
|
- **Java:** 17 or 23
|
|
- **Server-side only** - No client mod required
|
|
|
|
## 🆘 Support
|
|
|
|
For issues, feature requests, or questions, please refer to the detailed documentation or contact the author.
|
|
|
|
## 📄 License
|
|
|
|
All Rights Reserved © 2025 Mr-KayJayDee
|
|
|
|
---
|
|
|
|
*For detailed information about any aspect of the mod, please refer to the specific documentation files listed above.* |