Files
PlayHours/README.md

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