Description
# Custom BattleRoyale

😎[wiki](https://github.com/XColorful/BattleRoyale/wiki#English) | 📄[docs](https://github.com/XColorful/BattleRoyale/tree/HEAD/docs)
This mod is designed to create game modes with **highly customizable and extremely compatible** **zones, loot generation, and game rules**, blending with various gameplay styles to offer a rich selection of game modes, including but not limited to Battle Royale. This mod can also serve as an enhanced, higher-version alternative to the PUBGMC mod.
---
`This mod needs to be installed on both the server and the client.`
## Main Features
### High Customizability & Compatibility
- All configuration files support **unlimited presets and hot-reloading**, allowing for a one-click switch via in-game commands.
- The game mechanics are **independent of vanilla** teams, ensuring excellent compatibility with both vanilla and other mods.
- Coexists with Survival Mode: Game zones are invisible to survival players, and game players are not affected by survival players.
- Create complex game zones by freely combining zone shapes, positions, and functions.
- Build highly customized loot generation, including any items and entities from both vanilla and other mods.
### Custom Zones
- 2D Shapes: Circle, Square, Rectangle, Flat-Top Hexagon, Pointy-Top Polygon, Star, Ellipse
- 3D Shapes: Sphere, Cube, Cuboid, Ellipsoid
- Zone Functions: Safe zone, [refresh player's inventory](https://github.com/XColorful/BattleRoyale/wiki/Zone-simple-function#Inventory-zone), invulnerability zone, status effects particle generation, fireworks.
### Custom Loot Generation
- Supports **vanilla chest looting** and can filter specific containers like furnaces using whitelists and blacklists.
- Nested generation types, repeat generation, and conditional generation.
- Generating precisely based on biomes, structures, and NBT regular expressions.
- Automatically clear items and entities generated in previous games.
- Supports reading container contents to [automatically generate](https://github.com/XColorful/BattleRoyale/wiki/Utility-command#Generate-loot-spawner-configuration) loot configuration files.
### API and Datapack addon
Redefining datapack architecture design:
- **Event-Driven Datapacks**: Supports automatic listener registration via [configuration files](https://github.com/XColorful/BattleRoyale/wiki/Function-config#Event-register) and **dynamic registration** of [Mod events](https://github.com/XColorful/BattleRoyale/blob/HEAD/docs/api/event/EventType.md) or [Custom events](https://github.com/XColorful/BattleRoyale/blob/HEAD/docs/api/event/CustomEventType.md) via the [Function Register API](https://github.com/XColorful/BattleRoyale/wiki/Function-API-command#Function-register-API).
- Provides a rich set of [API Commands](https://github.com/XColorful/BattleRoyale/wiki/API-command#English) for efficient retrieval of game information, eliminating the need for manual state maintenance.
- Enhanced [entity selectors](https://github.com/XColorful/BattleRoyale/wiki/Temp-data-command#Enable-entity-selector): Filter game players instantly without the need for manual tag management.
### Mod Integrations
- JourneyMap: Draws game zones on the map.
- PlayerRevive: Sets the number of downs and adds consistent health loss for non-eliminated game players.
- Optional PUBGMC Command Compatibility: Allows command blocks using PUBGMC commands to work without modification.
- TaCZ: Provides out-of-the-box loot configuration example, and can disables guns in the PlayerRevive downed state