Configurable in-game agreements for Minecraft servers and networks.
ConsentGate shows rules, policies, and other documents to players before they are admitted, and only lets them in after they accept. Documents live in local files with their own titles, text, translations, and versions. No website or extra hosting is needed.
- Velocity: players accept before any backend connection.
- Paper: players accept before entering the world.
- Spigot (hold mode, weaker): players enter the world but stay frozen and hidden until they accept. Other plugins still see the join. Use Paper for the full guarantee.
- BungeeCord: there is no proxy JAR. Install the Paper JAR (or the Spigot JAR) on each backend, with shared MySQL/MariaDB.
- Java dialogs, plus native Bedrock forms through Geyser.
- SQLite by default, or MySQL/MariaDB to share consent across servers.
| Language selection | Required agreements |
|---|---|
![]() |
![]() |
| Missing agreement warning | Reading a document |
![]() |
![]() |
| Platform | Needs |
|---|---|
| Velocity | Java 21+, Minecraft Java 1.21.6+ clients, and PacketEvents 2.13.0 on the same proxy |
| Paper | Java 21+, Paper 1.21.7+, Minecraft Java 1.21.6+ clients |
| Spigot | Java 21+, Spigot 1.21.8+, Minecraft Java 1.21.6+ clients |
| BungeeCord | No proxy JAR. The Paper or Spigot JAR on every backend, all using the same MySQL/MariaDB database |
| Bedrock (optional) | Geyser on the same proxy or server |
- Download the JAR for your platform from releases and put it in
plugins/(with PacketEvents on Velocity). Paper and Spigot have separate JARs; each one refuses every login on the other. - Start once. The gate starts disabled and creates its config and starter documents.
- Edit
documents/terms.yml.exampleanddocuments/privacy.yml.example, then rename them to end in.yml. - Set
enabled: trueinconfig.yml. - Run
consentgate validate, thenconsentgate reloadin the console.
The starter documents are templates. Review and adapt them before use.
Read the docs on the web at kaizenmc.id/software/consentgate, or here on GitHub:
- Overview
- Installation
- Configuration
- Writing documents
- Player experience
- Commands and permissions
- Storage and MySQL/MariaDB
- Backups and recovery
- Compatibility
- Troubleshooting
- Changelog
Working on ConsentGate itself? See contributing.
GNU General Public License v3.0 only (GPL-3.0-only). See LICENSE. Dependencies keep their own licenses; see THIRD_PARTY_NOTICES.md.




