`MarsPlugin` adds a complete Mars dimension for Paper with custom terrain generation, many handcrafted structures, biome-based exploration, hazards, bosses, custom loot, futuristic items, and travel systems that connect the experience together.
## Overview
This plugin is not just one biome or a few custom mobs. It builds a full Mars-themed gameplay loop:
– travel to Mars
– explore custom biomes and terrain profiles
– locate structures and rare points of interest
– collect special resources and loot
– craft and use advanced Mars gear
– fight dangerous enemies and bosses
The plugin generates a dedicated `Mars` world with its own terrain system. From the class data inside the jar, the terrain includes multiple Mars-style biome themes such as:
– Adds a real sci-fi endgame destination
– Gives players new exploration goals
– Includes bosses, loot, and progression
– Makes Mars feel like a full custom dimension instead of a small addon
– Great for survival servers, adventure servers, and themed SMP worlds
## Short Summary
Complete Mars dimension for Paper with custom terrain, biomes, structures, bosses, loot, hazards, and futuristic items.
## Notes
– The inspected jar reports `api-version: 1.21`
– The content above is based on the actual `MarsPlugin V1.1 Paper.jar` you provided
– Best suited for a Modrinth page with a banner, icon, and feature screenshots/gallery
## Bugs
– If there stil are bugs go to my discord channel
– and i go try to fix every bug
– [discord Mars Plugin](https://discord.gg/9JdAmnqD)
Maintenance
## About This Plugin
**This plugin lets you activate a maintenance mode on your Paper, Velocity, Bungee, and Sponge server, which will prevent players without a permission to join the server.**
**This plugin uses MiniMessage as the component text format.**
**LEGACY TEXT FORMATTING (§a/&a) IS NOT SUPPORTED**
* Use [https://webui.adventure.kyori.net/](https://webui.adventure.kyori.net/) to preview parsed components
* You can find full documentation on the format (including normal colors and formatting, rgb, click/hover events, and more) here: [https://docs.adventure.kyori.net/minimessage/format](https://docs.adventure.kyori.net/minimessage/format)
Its features include:
* A **custom motd** as well as **server icon**, that will be shown during maintenance
* **Start- and endtimers**, which will **enable/disable maintenance mode after the time is up**
* **Schedule timers,** which will enable maintenance, then disable it after a given amount of time
* A ‘%TIMER%’ variable usable in the pingmessage, to show the time until a running endtimer finishes *(other variables and tricks are explained in the configuration file’s comments)*
* A **maintenance whitelist**, to grant specific players the ability to join while you’re working on your server
* Notifications when players try to join your server during maintenance
* Nearly all **messages are editable** via the language file, given in a multitude of different languages
**Additional features on Velocity/Bungee:**
* Only want to enable **maintenance on a single server**? You can also do so by using the `/maintenance ` command
* Link **multiple proxy instances with a MySQL database** connection, so you don’t have to enable/disable maintenance on each proxy by hand
* **Waiting servers** during full proxy maintenance, as well as **fallback servers** to go to when a single proxied server is under maintenance
* **Using ServerListPlus**? Maintenance will toggle its status when enabling maintenance and reenable the SLP motd when disabling maintenance
* Want to have PlaceholderAPI placeholders on Paper? See **[here](https://github.com/kennytv/maintenance/wiki/maintenanceaddon)** for more information on the MaintenanceAddon.
*Want to know a secret?*
You can have text **left of the server icon** by just adding a lot of spaces to the playercountmessage, like so:
“`yaml
playercountmessage: “Maintenance AAAA”
“`

IMPORTANT: If using the plugin on a Paper server, the plugin **[ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/)** is required to use Maintenance to its full extend.
## Issues/Support
Did you find a bug? Use the [**issue tracker**](https://github.com/kennytv/maintenance/issues)
Other questions or problems? [Join the support Discord guild](https://discord.gg/vgcuzhq) ✨
German Plugin Tutorial
@[YouTube](https://youtu.be/xZpAVIeGhjM)
## Commands
*Arguments in < > are necessary, those in [ ] aren’t (can be omitted).*
* **/maintenance [server]** will set the status of the maintenance mode
* **/maintenance reload** reloads the config and maintenance-icon file
* **/maintenance ** allows specific players to join on the server when maintenance is enabled
* **/maintenance whitelist** returns a list of all players on the
* maintenance whitelist
* **/maintenance starttimer [server] ** will enable maintenance mode after the time is up
* **/maintenance endtimer [server] ** will enable maintenance mode for the given time in minutes. After the time is up, it’ll be disabled again
* **/maintenance schedule [server] ** will enable maintenance mode after the given time, then disable it according to the second parameter
* **/maintenance aborttimer** cancels a running start-/endtimer
* **/maintenance setmotd <1/2> ** sets a motd for maintenance mode
* **/maintenance motd** lists the currently set maintenance motds
* **/maintenance update** remotely downloads the newest version of the plugin onto your server
* **/maintenance dump** dumps some server information, used for bug reports
## Permissions
* **maintenance.admin** – super permission, that grants access to all perms below
* **maintenance.bypass** – join the server during maintenance
* **maintenance.command** – use the “/maintenance” command (also required to use the subcommands)
* **maintenance.toggle** – use the “/maintenance ” commands
* **maintenance.reload** – use the “/maintenance reload” command
* **maintenance.update** – use the “/maintenance ” commands
* **maintenance.timer** – use the “/maintenance ” and “/maintenance timer abort” commands
* **maintenance.whitelist.add** – use the “/maintenance add ” command
* **maintenance.whitelist.remove** – use the “/maintenance remove ” command
* **maintenance.whitelist.list** – use the “/maintenance whitelist” command
* **maintenance.setmotd** – use the “/maintenance setmotd <1/2> ” command
* **maintenance.motd** – use the “/maintenance motd” command
* **maintenance.dump** – use the “/maintenance dump” command
* **maintenance.joinnotification** – if enabled: sends a notification to you if a player tries to join the server while maintenance is enabled
Extra permissions for the Velocity/Bungee part:
* **maintenance.singleserver.bypass.******** – join the proxied server during maintenance
* **maintenance.singleserver.toggle** – use the “/maintenance ” commands
* **maintenance.singleserver.timer** – use the “/maintenance ” and “/maintenance timer abort ” commands
* **maintenance.singleserver.status** – use the “/maintenance status” command
IMPORTANT – If you are using the plugin on your proxyserver: You have to have these permissions on the proxy, not on the backend servers! The best way of doing this is using a proper permissions plugin on the proxy (for example LuckPerms).
## Configuration
If you are using *the Paper version of the plugin*, you have to have [**ProtocolLib**](https://www.spigotmc.org/resources/protocollib.1997/) installed to use the custom server-icon and the playercount-messages (that, or you have Paper running on 1.12.2 or higher)! The rest however is also accessible without it.
For the Velocity/Bungee version you don’t need to have any other plugins installed.
*proxied-maintenance-servers*, *fallback* and *mysql* section are only for the Velocity/Bungee version.
# Enables maintenance on certain servers managed by your proxy instance(s).
proxied-maintenance-servers:
– PaperServer1
# – AnotherServer
# If maintenance is enabled on a proxied server with players on it, they will be sent to the fallback server instead of being kicked off the network.
# If the fallback server is not reachable/not set, they will just be kicked off the network.
# This can also be set to an array to set multiple fallback servers, in case one server is not always reachable: ‘fallback: [s1, s2, s3, …]’
fallback: lobby
# If maintenance is enabled globally, you can define a “waiting” lobby for players to be sent to instead of being kicked.
# Leave this empty to disable.
waiting-server: “”
# The message shown in the multiplayer server list motd when maintenance is enabled.
# If you put in multiple entries, one of them will be chosen randomly on every ping.
# If running an endtimer, the time left can be displayed by including ‘%TIMER%’ in a pingmessage (also works in playercount(-hover) message).
pingmessages:
– “Currently under maintenance We will be back soon!”
# – “Other entry”
enable-pingmessages: true
# Any extra commands inside the arrays will be executed when maintenance is enabled/disabled.
# Example: commands-on-maintenance-enable: [“say hello!”, “stop”]
commands-on-maintenance-enable: []
commands-on-maintenance-disable: []
# If set to true and an endtimer is currently running, a pingmessage from this pool will be chosen
# instead of the ones above, so you can have different messages for when an endtimer is running/not running.
enable-timerspecific-messages: true
timerspecific-pingmessages:
– “Currently under maintenance Come back in: %TIMER%”
# – “Other entry”
# If set to true, the message below will be shown in the top right corner of the server in the serverlist, where the playercount would normally be displayed.
# If set to false, the normal playercount will be shown.
#
# Alternatively you can use ‘%ONLINE%’ and ‘%MAX%’ if you want to include the playercount in a custom message (e.g. “Maintenance %ONLINE%/%MAX%”).
# DOES NOT SUPPORT RGB!
enable-playercountmessage: true
playercountmessage: “Maintenance”
# Is shown when you move your mouse above the text in the top right corner of the server in the serverlist,
# where the playercount would normally be displayed.
# DOES NOT SUPPORT RGB!
playercounthovermessage: “Currently under maintenance”
# If set to true, the server icon will be changed to the ‘maintenance-icon.png’ file in the plugin’s folder during maintenance.
custom-maintenance-icon: false
# If set to true, players with the ‘maintenance.joinnotification’ permission will receive a message,
# that a player tried to join the server while maintenance is enabled.
send-join-notification: false
# Set this to false if you do not want players to be kicked when you enable maintenance (new connections will still be blocked).
# … I don’t know why you would want that, but you can disable it. :p
kick-online-players: true
# Changes the language of command feedback/messages.
# If you find missing translations or want to contribute a new language file, you are very welcome to message me on the Paper forums or my Discord server! 🙂
# Currently available are: en (English), de (German), fr (French), pt (Portuguese), es (Spanish), ru (Russian), zh (Chinese), it (Italian), pl (Polish)
language: en
# If you have 2 or more proxy instances, the database connection will make sure all proxies
# have the same maintenance status, so you won’t have to enable/disable it on every proxy by hand.
mysql:
use-mysql: false
host: host
port: 3306
database: database
username: username
password: password
# Requests to the database will only be made at least x seconds after the last request,
# so there won’t be a request on every single ping on a server with many players.
#
# Set this to 0 to make a database request on (almost) every single ping.
# (0 is not recommended if having more than a hundred concurrent players, then I’d recommend keeping it from 10-60).
update-interval: 15
# If you for some reason cannot establish SSL connections to your database, you may disable it here (not recommended).
use-ssl: true
# If enabled and the server is restarted while running an endtimer, the timer will be continued after the restart.
# If the timer ends while the server is offline, maintenance will be disabled as soon as the server starts again.
continue-endtimer-after-restart:
enabled: false
# This value is set everytime an endtimer is started, cancelled or ended.
# Do not manually change this value.
end: 0
# If using the timer command: In what intervalls before enabling/disabling maintenance there will be a broadcast.
timer-broadcast-for-seconds: [1200, 900, 600, 300, 120, 60, 30, 20, 10, 5, 4, 3, 2, 1]
# If disabled, you will no longer receive any messages if there is an update.
# Not recommended to disable, as new versions generally tend to run better and with fewer bugs.
# However, you can always check for updates manually using the ‘/maintenance update’ command.
update-checks: true
# Used for autoupdating the config, do not change this value.
config-version: 6
“`
“`yaml
# Messages containing the placeholder “” will have it replaced with the following string
prefix: “[Maintenance] ”
noPermission: “You do not have the permission to execute that command.”
kickmessage: “The server is currently under maintenance! Try again later!”
maintenanceActivated: “Maintenance mode is now activated.”
maintenanceDeactivated: “Maintenance mode is now deactivated.”
alreadyEnabled: “Maintenance is already enabled!”
alreadyDisabled: “Maintenance is already disabled!”
endtimerBroadcast: “Maintenance mode will be disabled in %TIME%.”
endtimerStarted: “Started timer: Maintenance mode will be deactivated in %TIME%.”
starttimerBroadcast: “Maintenance mode will be enabled in %TIME%.”
starttimerStarted: “Started timer: Maintenance mode will be activated in %TIME%.”
scheduletimerBroadcast: “Maintenance mode will be enabled in %TIME% and will last for %DURATION%.”
timerAlreadyRunning: “There is already a timer scheduled!”
timerNotRunning: “There is currently no running timer.”
timerCancelled: “The current timer has been disabled.”
timerTooLong: “The number has to be less than 40320 (28 days)!”
timerMotdDisabled: “You have to set ‘enable-timerspecific-messages’ in the config to ‘true’, if you want to use/edit timerspecific motds.”
motdTimer: “%HOURS%:%MINUTES%:%SECONDS%”
motdTimerNotRunning: “-”
joinNotification: “%PLAYER% tried to join the server.”
motdList: “List of your maintenance motds:”
motdListEmpty: “You don’t have any maintenance motds set!”
reload: “Reloaded config, whitelistedplayers, language file and the maintenance icon.”
removedMotd: “Removed motd number %INDEX%.”
removeMotdError: “You only have one motd, so you cannot remove any!”
setMotd: “Set line %LINE% of the %INDEX%. maintenance motd to %MOTD%”
setMotdIndexError: “You currently have %MOTDS% motds, so you have to pick a number between 1 and %NEWAMOUNT%.”
setMotdLineError: “The second argument has to be the line number (1 or 2)!”
updateDownloading: “Downloading update…”
updateFailed: “Update failed!”
updateFinished: “The update was successful! To prevent issues with tasks and to complete the update, you have to restart the server!”
whitelistedPlayers: “Whitelisted players for maintenance:”
whitelistedPlayersFormat: “– %NAME% (%UUID%)”
whitelistAdded: “Added %PLAYER% to the maintenance whitelist!”
whitelistAlreadyAdded: “%PLAYER% already is in the maintenance whitelist!”
whitelistRemoved: “Removed %PLAYER% from the maintenance whitelist!”
whitelistNotFound: “This player is not in the maintenance whitelist!”
whitelistEmpty: “The maintenance whitelist is empty! Use /maintenance add to add someone!”
playerNotFound: “No player with this name has played on this server before.”
playerNotFoundUuid: “No player with that uuid could be found.”
playerNotOnline: “There is no player online with that name.”
invalidUuid: “Invalid uuid format!”
# Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
sentToWaitingServer: “You have been sent to a waiting server!”
forceWaitingServer: “You cannot leave the waiting server while maintenance is enabled!”
serverNotFound: “No server with this name is registered on the proxy!”
singleTimerAlreadyRunning: “There is already a timer scheduled for that server!”
singleTimerCancelled: “The current timer for server %SERVER% has been disabled.”
singleTimerNotRunning: “There is currently no running timer for that server.”
singleEndtimerBroadcast: “Maintenance mode on server %SERVER% will be disabled in %TIME%.”
singleStarttimerBroadcast: “Maintenance mode on server %SERVER% will be enabled in %TIME%.”
singleScheduletimerBroadcast: “Maintenance mode on server %SERVER% will be enabled in %TIME% and will last for %DURATION%.”
singleMaintenanceKick: “The server %SERVER% is currently under maintenance! Try again later!”
singleMaintenanceKickComplete: “The server %SERVER% is under maintenance! You may try to rejoin to go onto another server!”
singleMaintenanceActivated: “Maintenance mode is now activated on server %SERVER%.”
singleMaintenanceDeactivated: “Maintenance mode is now deactivated on server %SERVER%.”
singleServerAlreadyEnabled: “Maintenance is already enabled on server %SERVER%!”
singleServerAlreadyDisabled: “Maintenance is already disabled on server %SERVER%!”
singleServerMaintenanceList: “Proxied servers, that have maintenance enabled:”
singleServerMaintenanceListEmpty: “There are no proxied servers that are under maintenance.”
singleServerMaintenanceListEntry: “– %SERVER%”
helpHeader: “========[ %NAME% | %PAGE%/%MAX% ]========”
helpPageNotFound: “There is no page with that number!”
helpNextPage: “Use /maintenance help %PAGE% to get to the next help window.”
helpAbortTimer: “/maintenance aborttimer (If running, the current timer will be aborted)”
helpEndtimer: “/maintenance endtimer (After the given time in minutes, maintenance mode will be disabled)”
helpStarttimer: “/maintenance starttimer (After the given time in minutes, maintenance mode will be enabled)”
helpScheduleTimer: “/maintenance scheduletimer (After the given time in minutes, maintenance mode will be enabled for the given duration in minutes)”
helpDebug: “/maintenance debug (Enables some debug logging)”
helpDump: “/maintenance dump (Dumps some server information, used for bug reports)”
helpHelp: “/maintenance help [page] (Shows this beautiful help window)”
helpMotd: “/maintenance motd [timer] (Lists the currently set maintenance motds. If specifying ‘timer’, the timer motds are shown)”
helpRemoveMotd: “/maintenance removemotd [timer] (Removes a maintenance motd. If using ‘timer’ as an argument, a timerspecific pingmessage will be removed)”
helpSetMotd: “/maintenance setmotd [timer] <1/2> (Sets a motd for maintenance mode. If using ‘timer’ as an argument, a timerspecific pingmessage will be set)”
helpReload: “/maintenance reload (Reloads the config file, whitelist file and the server-icon)”
helpToggle: “/maintenance (Enables/disables maintenance mode)”
helpUpdate: “/maintenance update (Remotely downloads the newest version of the plugin onto your server)”
helpWhitelist: “/maintenance whitelist (Shows all whitelisted players for the maintenance mode)”
helpWhitelistAdd: “/maintenance add (Adds the player to the maintenance whitelist, so they can join the server even though maintenance is enabled)”
helpWhitelistRemove: “/maintenance remove (Removes the player from the maintenance whitelist)”
# Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
helpAbortSingleTimer: “/maintenance aborttimer [server] (If running, the current timer will be aborted)”
helpSingleEndtimer: “/maintenance endtimer [server] (After the given time in minutes, maintenance mode will be disabled)”
helpSingleStarttimer: “/maintenance starttimer [server] (After the given time in minutes, maintenance mode will be enabled)”
helpSingleScheduleTimer: “/maintenance scheduletimer [server] (After the given time in minutes, maintenance mode will be enabled for the given duration in minutes)”
helpSingleToggle: “/maintenance [server] (Enables/disables maintenance mode)”
helpStatus: “/maintenance status (Lists all proxied servers, that are currently under maintenance)”
# Used for autoupdating the language file, do not change this value.
language-version: 1
“`
## ServerListPlus Integration
If you have the ServerListPlus plugin on your server, Maintenance will toggle its status. If you enable maintenance, the ServerListPlus motd will be disabled and then reenabled, when you disable maintenance to prevent any issues with them overriding each other.
## MySQL/Multi-Proxy Support
*Only available in the Bungee/Velocity version!*
By enabling MySQL in the config, you can even connect multiple proxy-servers to a set value in your database, so you won’t have to enable/disable maintenance on each proxy by hand!
I want to give a small thank you to the people translating messages – you’re awesome!
French: Zendrique
Spanish: Vixo_Ulises
Polish: Slasherss and EEEGuba
Portuguese: JoaoPinto
Russian: En_0t_S
Chinese: yeban
LuckPerms is a permissions plugin/mod for Minecraft servers. It allows server admins to control what features players can use by creating groups and assigning permissions.
It is:
* **fast** – written with performance and scalability in mind.
* **reliable** – trusted by thousands of server admins, and the largest of server networks.
* **easy to use** – setup permissions using commands, directly in config files, or using the web editor.
* **flexible** – supports a variety of data storage options, and works on lots of different server types.
* **extensive** – a plethora of customization options and settings which can be changed to suit your server.
* **free** – available for download and usage at no cost, and permissively licensed so it can remain free forever.
For more information, see the wiki article on [Why LuckPerms?](https://luckperms.net/wiki/Why-LuckPerms)
### Useful Links
The latest downloads & other useful links can be found on the project homepage at [luckperms.net](https://luckperms.net/).
The plugin has extensive [documentation available on the wiki](https://luckperms.net/wiki). Please use the resources there before coming to us directly for support.
Support for the plugin is provided on [Discord](https://discord.gg/luckperms). If you have a question which cannot be answered by reading the wiki, the best place to ask it is there.
If you would like to report a bug, please [open a ticket on GitHub](https://github.com/lucko/LuckPerms/issues).
LuckPerms is proudly sponsored by [BisectHosting](https://bisecthosting.com/luck).
BisectHosting are Minecraft server hosting experts, ready to help you create and host your very own server! They are a trusted and well-established hosting provider in the community, and provide an outstanding level of service that we are happy to recommend. There is a special 25% off discount available for LuckPerms users – click the link above to create your server today.
LPPronouns
# LPPronouns
A simple, cross API plugin that allows players to set their pronouns.
Works on: Spigot, BungeeCord, Fabric, Forge, and Velocity
Link to our support: [Discord](https://discord.gg/NffvJd95tk)
# Message formatting configuration
formatting:
# This sets LPPronouns as the server’s chat formatter
enabled: true
# %player% – Player name
# %message% – Message
# %server% – Server name
# %prefix% – Player prefix
# %suffix% – Player suffix
# %displayname% – Player display name
format: “<%displayname% (%suffix%)> %message%”
# Pronoun configuration
pronouns:
none: “”
any: any
other: other
ask: ask
avoid: avoid
# …
“`
## Background
At the time of this plugin’s creation, it is Lunar New Year (02/2023). Usually, during special holidays, the lottery prize money in Hong Kong get’s extra high to attract people to buy for the occasion.
However, while that is happening, I am halfway across the globe from my extended family and loved ones (Think of it like Christmas when the entire family gather around). Therefore, I’ve had the bright idea of creating a lottery plugin inspired by this… Scroll to the bottom of the page if you want to see what inspired this plugin.
## About
Want a **lottery system** on your server that is **a bit more like IRL** that doesn’t evenly distribute chances over all tickets bought making the poor who wants to try their luck just idiots giving free money to that one person who bought 6400 tickets?
With this plugin, you can create a **manually started or automatically reoccurring lottery game** on your server. While the mechanics in full might not be as simple, **joining a game by placing a bet is super simple**. A player can **win prizes of different tiers depending on the number of matching numbers** they’ve bet on!
**One thing to note is that the odds are independent of the number of bets placed. (In other words, one person playing doesn’t mean that player is 100% going to win.)**
## How to play LotterySix?
### 1. Check if a draw is scheduled and available to play!
– Games can be scheduled to start in the config or manually started with `/lottery start`
– Open the GUI with `/lottery play`
### 4. Get ready at the scheduled draw time for the draw!
– 6 numbers + 1 special number will be chosen at random
– By a cryptographically secure random number generator, if that matters to you
### 5. Collect prizes if you win!
– If the numbers you’ve picked contain 3 or more numbers selected in the draw (excluding the special number), you will win some prizes!
– The more matching numbers, the higher your winnings!
– **Each tier is NOT guaranteed a winner, unlike a lucky draw, in fact, it is extremely difficult to win higher tiers**
– See the link below for a detailed explanation
## How do the entry types & draw work?
https://github.com/LOOHP/LotterySix/wiki/LotterySix-Draw-&-Prizes-Explanation
## DiscordSRV Integration
Place bets, check your bets, past draw results and more offline via DiscordSRV!
– Draw Result Announcement
– Slash Command **/lottery**
## Floodgate Geyser Integration
Use Bedrock forms in places where book interfaces were used because they cannot be opened remotely

## Responsible Gambling
**See how LotterySix facilitates the promotion of responsible gambling even as a just-for-fun Minecraft plugin**
**https://github.com/LOOHP/LotterySix/wiki/Responsible-Gambling**
## Returning to the Community / Charity
**An account can be configured to receive a portion of the lottery ticket sales taken as tax (the “Lotteries Fund”).**
For example, they can be received by the server owner or an admin to then be redistributed to other players to fund server-wide projects! This allows taxed ticket sales to be turned to good use, returning them to the server community.
## Installation
### Only on Spigot, Paper etc.
1. Put LotterySix.jar into the plugins folder along with the required dependencies
2. Start the server
3. *Edit the config (if you need to)*
4. *Restart the server (if you changed something in the config in step 3)*
### Over a Bungeecord or Velocity Network
1. Put LotterySix.jar into the plugins folder along with the required dependencies in your backend servers (Spigot, Paper etc.)
2. Put LotterySix.jar into the plugins folder in your proxy server (there are no dependencies on proxy servers)
3. Start and then Stop your proxy server and your backend servers
4. Edit your LotterySix config **on the proxy server**
5. Remember to set `Bungeecord: true` in the above config
6. **Copy the above config to all of your backend servers** and replace the originally generated one
7. Start your proxy server and your backend servers
8. If you ever want to adjust the config, make sure you follow the steps again starting **from Step 3**
### You are recommended to read this if you are unsure how to configure LotterySix games.
**https://github.com/LOOHP/LotterySix/wiki/Configuration-Guide-&-Recommendations**
## Commands
**/lotterysix play** – Opens the LotterySix GUI [lotterysix.play]
**/lotterysix balance** – Change the balance in any player’s betting account [lotterysix.balance]
**/lotterysix start** – Manually start a game and schedule the draw at timestamp [lotterysix.start]
**/lotterysix run** – Manually start the draw of an on-going game [lotterysix.run]
**/lotterysix cancel** – Cancel the current game and refund all bets [lotterysix.cancel]
**/lotterysix preference** – Set your own player preferences [lotterysix.preference]
**/lotterysix settopprizefund** – Set the top 3 tier prize fund for the current game [lotterysix.settopprizefund]
**/lotterysix setdrawtime** – Set the draw time of the current game [lotterysix.setdrawtime]
**/lotterysix setspecialname** – Set a special name for the current game [lotterysix.setspecialname]
**/lotterysix setcarryoverfund** – Set the carry-over fund from last round to the current game [lotterysix.setcarryoverfund]
**/lotterysix reload** – Reload the config [lotterysix.reload]
**/lotterysix update** – Check for updates [lotterysix.update]
## Disclaimer
Many jurisdictions have regulations against “Game of Chance” (Such as loot boxes, or lotteries) with real-world monetary value. Please make sure your server follows those relevant regulations. LotterySix is just for fun and is not responsible for how each server uses our content.
## Data usage
Usage statistics at https://bstats.org/plugin/bukkit/LotterySix will be visible to the public with your server included in the statistics. No private information of your server is sent.
Update checking is also done via https://api.loohpjames.com to notify you whenever a new version is released. No private information of your server is sent.
## Inspired By “[Mark Six 六合彩](https://en.wikipedia.org/wiki/Mark_Six)” of the [Hong Kong Jockey Club](https://en.wikipedia.org/wiki/Hong_Kong_Jockey_Club)
**If you are wondering how it looks like IRL~~**
(Language: Cantonese, Partially English)
The draw starts at **1:35**
A lightweight authentication plugin for cracked/offline-mode Minecraft servers. Supports Bukkit, Spigot, Paper, Purpur, Folia, BungeeCord, Waterfall, and Velocity — all in a single JAR.
—
## Features
– Register and login system with `/register` and `/login`
– Passwords hashed with **SHA-256 + random salt** per player — never stored in plaintext
– Offline session cache — players don’t need to re-login after briefly disconnecting
– Full movement, chat, and command restrictions until authenticated
– Blindness effect applied to unauthenticated players
– Login timeout on proxy (auto-kick if not logged in within X seconds)
– **Session sharing** — login once at the proxy, stays logged in across all backend servers
– No external database required — uses a simple flat file (`players.dat`)
**Standalone (Paper/Spigot only, no proxy):**
Drop `LoginMe.jar` into your server’s `plugins/` folder and restart.
**With proxy (BungeeCord / Velocity):**
Drop `LoginMe.jar` into **both** the proxy `plugins/` folder and every backend server’s `plugins/` folder. The proxy handles authentication and shares the session to backend servers automatically.
—
## Commands
| Command | Description |
|—|—|
| `/login ` | Login to your account |
| `/register ` | Create an account |
| `/reg ` | Alias for `/register` |
—
## Configuration
Located at `plugins/LoginMe/config.yml`:
“`yaml
prefix: “&7[&bLoginMe&7] ”
# How long to keep a session after a player disconnects
# Supports: s (seconds), m (minutes), h (hours), d (days)
offline-cache-duration: “5m”
# Proxy only: kick player if not logged in within this time after joining
login-timeout: “60s”
messages:
login-success: “&aLogin successful!”
already-logged-in: “&cYou are already logged in!”
not-registered: “&cYou are not registered! Use /register ”
login-usage: “&cUsage: /login ”
wrong-password: “&cWrong password!”
register-success: “&aRegister successful!”
already-registered: “&cYou are already registered! Use /login ”
register-usage: “&cUsage: /register ”
password-mismatch: “&cPasswords do not match!”
please-login: “&ePlease login with /login ”
please-register: “&ePlease register with /register ”
must-login-first: “&cYou must login first!”
must-login-chat: “&cYou must login first to chat!”
login-timeout: “&cLogin timeout! Please reconnect and login.”
Player data is stored in `plugins/LoginMe/players.dat`. Each entry contains the player’s UUID alongside a randomly generated salt and SHA-256 hash of their password. The file is human-readable but **should not be edited manually**.
Lock & Key adds a full-fledged key and lock system to Minecraft containers, turning chest protection into a gameplay mechanic.
Access to containers is determined not by permissions or commands, but by physical keys with unique FormCodes.
—
## 🔑 Keys
Each created key receives a unique FormCode in the format:
“`txt
XXX#123
“`
This code determines which containers (chests, barrels, etc.) the key can open.
—
## 🧱 Locking Containers
Sneak and right-click a container with a key to bind it to that key.
* Double chests are supported
* Only keys with a matching FormCode can open the container
—
## 🔄 Access Modes
Containers support multiple access modes:
* 🔒 Fully Locked — access only with the correct key
* 👁 View Only — players can open the container, but cannot take items
—
## 🧪 Key Copying System
The plugin includes a unique key duplication mechanic:
### 🟢 Key Cast
* Copies the FormCode of the original key
* Has limited durability
### 🟡 Duplicate Key
* Created from a key cast
* Can open linked containers
* Has a limited number of uses
—
## ⚙️ Key Durability
Duplicate keys lose durability with each use.
When durability reaches zero, the key breaks.
—
## 🧠 Features
* Uses `PersistentDataContainer` for data storage
* No commands or region systems required
* Fully integrated into survival gameplay
* Lightweight and server-friendly
### Depends on [KarmaAPI](https://www.spigotmc.org/resources/karmaapi-platform.98542/)
LockLogin is [open source](https://github.com/KarmaDeb/LockLoginReborn)
LockLogin will be discunuated soon, please refer to [LockLogin2](https://gitlab.com/karmadev/locklogin) for more information
[](https://www.patreon.com/karmaconfigs)
High-performance lobby and limbo management plugin for BungeeCord and Velocity networks.
Designed for scalability, reliability, and smooth player routing across multi-server environments.
## Overview
LobbyLimboManager handles player distribution, fallback logic, and queue management at the proxy level.
* Automatically routes players to available lobbies
* Uses limbo servers to keep players connected when needed
* Includes a built-in queue system for full or unavailable lobbies
* Fully configurable behavior
* Works on both Velocity and BungeeCord
## Features
### Smart Routing
Automatically sends players to the most suitable lobby based on configurable strategies:
* Least players
* Random selection
* Round-robin distribution
### Limbo & Fallback System
Prevents unnecessary disconnections when lobbies are not available.
* Sends players to limbo servers when needed
* Keeps players connected during downtime
* Smoothly redirects back to lobbies when available
### Queue System
Handles full or unavailable lobbies efficiently.
* Automatic queue handling
* Sends players when space becomes available
* Prevents connection spam and failed joins
### Multiple Servers Support
Built for flexible network setups.
* Multiple lobby servers
* Multiple limbo servers
* Dynamic routing between them
### Fully Configurable
Customize behavior to fit your network.
* Routing modes
* Server limits
* Fallback behavior
* Queue system
Supports live reload with:
“`
/llm reload
“`
## Commands
* `/lobby`, `/hub` → Sends the player to an available lobby
* `/llm reload` → Reloads plugin configuration (Warning: nvm, it works)
## Permissions
* `lobbylimbomanager.command.lobby` → Access to the /lobby and /hub commands
* `lobbylimbomanager.admin` → Access to administrative commands
## Installation
1. Download the latest release
2. Place the `.jar` in your proxy plugins folder
3. Start your proxy
4. Edit the generated configuration if needed
## Compatibility
* Velocity
* BungeeCord
* Waterfall (Not tested, but expected to work)
## Config.yaml Example
Spoiler
“`
# ============================================================
# LobbyLimboManager Configuration
# ============================================================
# This file controls how players are routed between lobby and
# limbo servers on BungeeCord, Waterfall, and Velocity proxies.
#
# IMPORTANT: Server names listed below must match the names
# defined in your proxy configuration EXACTLY.
# They are NOT case-sensitive in this file, but must exist.
# ============================================================
# ———————————————————–
# Config Version
# ———————————————————–
# This value is managed by the plugin. Do not modify it.
# Changing it may reset your configuration on next reload.
config-version: 1
# ============================================================
# LOBBY SERVERS
# ============================================================
# List all lobby servers that players can be sent to.
# These are the main servers players join when logging in or
# being recovered from a kick.
#
# NOTE: Names MUST match the servers defined in your proxy
# configuration (e.g. BungeeCord config.yml or Velocity
# velocity.toml). The plugin looks up servers by these
# names at runtime.
lobbies:
servers:
– lobby1
– lobby2
– lobby3
# ============================================================
# LIMBO SERVERS
# ============================================================
# Limbo servers are lightweight holding servers used when no
# lobbies are available or a player is queued.
#
# NOTE: A server listed here should NOT also be listed under
# lobbies. The plugin will ignore overlapping names in
# limbo selection.
limbos:
servers:
– limbo1
– limbo2
# ============================================================
# SELECTION MODES
# ============================================================
# Controls how the plugin chooses which server to send a
# player to.
modes:
# Lobby Selection Mode
# ——————–
# Determines how a lobby is chosen when a player needs one.
#
# Valid values:
# ROUND_ROBIN – Cycles through lobbies in order.
# Example: lobby1 -> lobby2 -> lobby3 -> lobby1
# RANDOM – Picks a random available lobby.
# LEAST_PLAYERS – Picks the lobby with the lowest player
# count at that moment.
lobby-mode: ROUND_ROBIN
# Limbo Selection Mode
# ——————–
# Determines how a limbo server is chosen.
#
# Valid values:
# FALLBACK – Limbos are ONLY used when no lobby is
# available. This is the recommended default.
# ROUND_ROBIN – Rotates through limbo servers independently.
# STANDALONE – Limbo servers are never used automatically.
# They must be targeted manually.
limbo-mode: FALLBACK
# ============================================================
# FALLBACK SETTINGS
# ============================================================
# Controls what happens when a player is kicked from a server.
#
# Fallback Flow (in order):
# 1. If kick message contains a no-fallback keyword, the
# player is disconnected (no recovery attempted).
# 2. If fallback-to-lobby is enabled, the plugin tries to
# find another available lobby.
# 3. If no lobby is available and fallback-to-limbo is
# enabled, the player is sent to a limbo server.
# 4. If nothing is available, the kick proceeds normally.
fallback:
# Enable fallback to another lobby when a player is kicked.
# Set to false if you want kicked players to disconnect
# instead of being moved to another lobby.
fallback-to-lobby-enabled: true
# Enable fallback to limbo when no lobbies are available.
# If both this and fallback-to-lobby are false, kicked
# players will simply be disconnected.
fallback-to-limbo-enabled: true
# Server Fallback Control
# ——————–
# Controls which servers are allowed to trigger fallback.
#
# Mode: allow
# Only servers listed below PLUS all lobby servers can
# trigger fallback. All other servers will disconnect
# players on kick.
#
# Mode: deny
# Servers listed below will NEVER trigger fallback.
# All other servers (including lobbies) will trigger
# fallback normally.
servers-fallback-disabled:
mode: deny
servers:
– creative
# Kick Message No-Fallback Keywords
# ———————————
# If a kick message contains any of these keywords (case
# insensitive), the plugin will NOT attempt fallback.
# This is useful for bans, manual kicks, or anti-cheat
# disconnects where moving the player is undesirable.
#
# Examples of common keywords:
# banned – Prevents banned players from rejoining
# kicked by – Prevents staff kicks from triggering fallback
# timed out – Connection issues usually don’t need fallback
kick-message-nofallback:
– banned
– kicked by
– timed out
– disconnect.spam
– flying
# ============================================================
# QUEUE SETTINGS
# ============================================================
# When all lobbies are full, players are placed in a queue.
# These settings control how and when they are released.
queue:
# Dispatch Attempt Threshold
# ————————–
# Number of consecutive successful health checks a lobby
# must pass before it is considered READY for queue dispatch.
#
# This works together with health-check-interval:
# If health-check-interval = 30 and this value = 2,
# a newly started lobby must be healthy for 60 seconds
# before queued players are sent to it.
#
# WARNING: Setting this too low (e.g. 1) may send players to
# lobbies that are still warming up, causing join
# failures. Setting it too high delays recovery.
#
# Recommended: 1-3 for quick recovery, 3-5 for stability.
dispatch-attempt-threshold: 1
# ============================================================
# GENERAL SETTINGS
# ============================================================
settings:
# Health Check Interval (seconds)
# ——————————-
# How often the plugin pings all configured servers to check
# if they are online, full, or offline.
#
# Trade-off: Lower values detect crashes faster but increase
# network load. Higher values are lighter but slower to
# react.
#
# Recommended: 30 for small networks, 60 for large networks.
health-check-interval: 30
# Failed Server Retry Interval (seconds)
# ————————————–
# When a server fails a health check, it is marked as failed
# and will not be selected for routing until this time has
# passed AND it passes a new health check.
#
# This prevents repeatedly sending players to a crashed
# server.
failed-server-retry-seconds: 60
# Attempt Expiry (seconds)
# ————————
# How long the plugin remembers that it already tried to
# send a specific player to a specific server.
#
# This prevents infinite loops: if a player fails to connect
# to lobby1, the plugin won’t try lobby1 again for this
# duration. After expiry, it can be retried.
attempt-expiry-seconds: 30
# Queue Dispatch Interval (milliseconds)
# ————————————–
# Minimum time between queue processing cycles.
#
# Lower values move players faster but increase CPU usage.
# The plugin will still respect server capacity and readiness.
queue-dispatch-interval: 2000
# Queue Waiting Message Interval (milliseconds)
# ———————————————–
# How often queued players receive a waiting message.
# Set to 0 to disable waiting messages entirely.
queue-waiting-interval: 5000
# Debug Mode
# ———-
# When enabled, the plugin prints detailed state transitions,
# routing decisions, and queue activity to the console.
#
# WARNING: This generates a LOT of output. Only enable when
# troubleshooting. Disable for production.
debug: false
# Server Player Limits
# ——————–
# Defines the maximum number of players each server can hold.
# This is used to determine if a lobby is FULL and to decide
# how many queued players can be dispatched.
#
# Valid values for each server:
# -1 = Unlimited. The server is never marked FULL.
# 0 = Auto-detect. The plugin pings the server to read
# its max-player value (from server.properties or
# the server’s own configuration).
# >0 = Fixed limit. The server is marked FULL when its
# online player count reaches this number.
#
# Example: A survival server with 50 slots should be set to
# 50 so the plugin knows when it is full.
server-limits:
lobby1: 100
lobby2: 100
lobby3: 100
# ============================================================
# MESSAGES
# ============================================================
# All messages shown to players support Minecraft color codes
# using the ‘&’ symbol (e.g. &a = green, &c = red).
#
# Available placeholders:
# %server% – Replaced with the target server name
# %player% – Replaced with the player’s name
# %position% – The player’s position in the queue
# %total% – The total number of players in the queue
#
# NOTE: Placeholders only work in messages that reference them.
# Using an unsupported placeholder will leave the raw
# text in the message.
messages:
# Shown when a player is successfully connected to a lobby.
connect-lobby: “&aConnecting you to lobby &e%server%&a…”
# Shown when a player is sent to a limbo server.
connect-limbo: “&eConnecting you to limbo server &7%server%&e…”
# Shown when a player is kicked and moved to a fallback lobby.
fallback-lobby: “&eThe server you were on became unavailable. Moving you to &a%server%&e…”
# Shown when a player is kicked and moved to a fallback limbo.
fallback-limbo: “&cAll lobbies are full or unavailable. Moving you to limbo &7%server%&c…”
# ———————————————————–
# Error / Status Messages
# ———————————————————–
no-lobby-available: “&cNo lobby servers are currently available. Please try again later.”
no-limbo-available: “&cNo limbo servers are currently available. Please try again later.”
no-server-available: “&cNo servers are currently available. Please try again later.”
server-not-found: “&cThe target server could not be found.”
already-connecting: “&cYou are already being connected to a server.”
command-player-only: “&cThis command can only be used by players.”
already-in-lobby: “&cYou are already connected to a lobby server.”
# ———————————————————–
# Queue Messages
# ———————————————————–
# These messages are sent automatically by the queue system.
queue-position: “&eYou are in position &c%position% &eof &c%total% &ein the queue.”
queue-join: “&cAll lobbies are full. You have been added to the queue.”
queue-waiting: “&eYou are in the queue. Position: &c%position%&e of &c%total%&e. Please wait…”
lobby-available: “&aA lobby is now available! Connecting you to &e%server%&a…”
“`
## Notes
* Designed for stability and long-term usage
* Suitable for both small and large networks
* Focused on reliable routing and clean behavior