Repository navigation
BetaKey 4.0-RELEASE
What's New
Built-in Website
BetaKey now comes with its own redeem website. It runs directly inside the plugin, so you don't need a webserver, PHP or an extra database anymore.
- Enable it with
/betakey website enable(port8080by default). - Configure it in
plugins/BetaKey/website/settings.yml. - Guide: https://inconnu-plugins.de/wiki/betakey/website
Web Admin Panel
Manage your keys on <website>/admin:
- Statistics (total, used, unused keys)
- See who uses which key
- Search keys and players
- Create keys (up to 100 random keys at once, or custom keys)
- Delete keys
Admins log in with a password, a confirmation ingame or both (AdminPanel.Authentication). Set your password with /betakey website password <password> and confirm logins with /betakey verify <code>. Passwords are stored salted and hashed.
Website Themes and Languages
Change the design of the website with your own themes (templates and CSS). English and German are included, and the language of the visitor's browser is chosen automatically.
SQLite Support
BetaKey now works without a database server. SQLite is the new default and stores the keys in plugins/BetaKey/database/BetaKey.db.
MySQL, MariaDB and PostgreSQL are still supported, for example if several servers need the same keys.
Messages in Every Player's Language
- All messages moved to the
messagesfolder (en-us.yml,de-de.yml). - With
Language: autoevery player gets the language of their Minecraft client, and the Discord bot answers in the language of the Discord user. - Add your own language by copying a file, e.g. to
fr-fr.yml. Missing messages are taken from English.
Switch Features On and Off with Commands
| Command | Effect |
|---|---|
/betakey enable / /betakey disable |
Switches the beta access (players without a key can join while it is disabled) |
/betakey website enable / disable |
Starts and stops the website |
/betakey discord enable / disable |
Starts and stops the Discord bot |
The changes are saved in the config.yml and work right away, without a restart.
Clickable Help
/betakey and /betakey website now show all commands with a description. Click a command in the chat to use it.
Automatic Config Update
Your old config.yml is updated to the new format automatically. All settings and your own messages are kept.
Better Support Information
/betakey debug now also shows the website status and its last errors. It contains no passwords, so you can safely send it to the support.
Commented config.yml
The config.yml now explains every setting, including an easy database setup.
Fixes
- Security: Database queries on BungeeCord and Velocity now use prepared statements.
- Security: A Discord link can now only be confirmed for the Discord user who started it.
- A second Discord link request no longer fails after the first one.
/unlinkon Discord without a linked account no longer fails./linkfrom the console no longer causes an error.- "Already linked" is now detected correctly when linking a Discord account.
/betakey reloadnow really reloads theconfig.ymlon Spigot.- The "config outdated" warning no longer shows up on every start on Spigot.
- Spigot no longer prints
/betasystemafter every command. - Random keys are now always 6 digits long.
- MariaDB, SQLite and PostgreSQL connections now load their database driver correctly.
- The Discord bot is now stopped when the plugin is disabled, so no second bot runs after a reload.
- An invalid Discord bot token no longer prevents the plugin from starting.
- The update check no longer runs on the main thread on Spigot.
- The copy button in the key list now copies the key on Minecraft 1.15 and newer.
- Discord links are now made with the exact player name.
Changes
- New default database: SQLite (existing MySQL configurations keep working).
- Messages moved from the
config.ymlto themessagesfolder. - Config version updated to 3.
- The
config.ymlis no longer rewritten by the plugin on Spigot, so your comments are kept. - Discord embed colors can now also be written as HEX, e.g.
0x00FF00. - Spigot, BungeeCord and Velocity now share the same code, so all platforms get the same features and fixes.
- Tested with Paper up to 26.3.
- The PHP website is now called Legacy Website. It still works with MySQL/MariaDB, but gets no new features. Use it only if your host gives you just one port: https://inconnu-plugins.de/wiki/betakey/legacy-website
Requirements
| Platform | Version | Java |
|---|---|---|
| Spigot / Paper | 1.8.8 or newer | 8 or newer |
| BungeeCord | current | 8 or newer |
| Velocity | 3.x | 21 or newer |
Minecraft 1.7 is not supported (as before).
Upgrade Instructions (Important)
- Download and replace the old plugin
.jarwith the new version. Use the jar for your platform:BetaKeySpigot-4.0-RELEASE.jarBetaKeyBungee-4.0-RELEASE.jarBetaKeyVelocity-4.0-RELEASE.jar
- Start the server. Your config is updated automatically:
- The old config is saved as
config.yml.v<old version>.backup. - The new
config.ymlkeeps all your settings. - Your messages are moved to
messages/legacy-mig.ymlandLanguageis set tolegacy-mig, so your server keeps its own texts.
- The old config is saved as
- If you want to use the new translated messages, set
Language: autoin theconfig.ymland run/betakey reload. - If you used SQLite before, your database is copied to
database/BetaKey.dbautomatically. If you use MySQL, nothing changes. - Optional: enable the new website with
/betakey website enableand set your admin panel password with/betakey website password <password>.
Upgrade now and enjoy the new website, the admin panel and BetaKey in your players' language! 🎉