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.* |