ChainWorld
This plugin is currently in beta. If you encounter any problems let me know!
What is ChainWorld?
ChainWorld creates an asynchronous multiplayer experience for Minecraft. This idea is not new. ChainWorld is great for groups of users who want to play Minecraft together but live in different time zones or have busy schedules.
Want to try it out? Jump on the test server at: serv.nickmacholl.com:25565
How does it work?
Players take turns playing on the server; only one player is allowed on the server at a give time. If a player attempts to login out of sequence, they are put in a queue. A player's turn expires when they die or hit the time limit specified by the administrators. ChainWorld has some built in features to make the asynchronous gameplay more fun; such as: email notifications, dynamic difficulty, and randomized player spawns. Additionally, all player data is deleted upon death so each lease is a fresh start in the world.
Joining The Server
See this page for details on how players join the server.
Email Notifications
See this page for details on how email notifications work.
Dynamic Difficulty
See this page for details on how dynamic difficulty works.
Randomized Spawns
See this page for details on how randomized spawns work.
Installation
Simply download the archive which contains ChainWorld.jar, the ChainWorld folder and the lib folder and extract it to your /plugins directory. It's a good idea to open up the config.yml in the ChainWorld folder and configure the plugin before reloading/starting your server.
More detailed installation directions can be found here.
Commands
/cwlease - Displays the time and date of the lease expiration as well as the number of hours remaining. Can be run by players and the console.
/cwquit - Terminates the current lease. This is basically equivalent to the /kill command. Can be run by players and the console.
/cwregister <email> - Registers an email for the player. This email is used to send email notifications when they are given a lease. Can only be run by players.
/cwunregister - Removes the player's email from the registry. Can only be run by players.
Permissions
The following ChainWorld permissions are for commands and they are given to players by default.
chainworld.lease - Allows players to use the /cwlease command.
chainworld.quit - Allows players to use the /cwquit command.
chainworld.register - Allows players to use the /cwregister and /cwunregister commands.
The admin permission is not given by default; use wisely. Players with this permission are ignored.
chainworld.admin - Essentially makes a player invisible to the plugin for administrative purposes.
Default config.yml
#----------------------------------------- # ChainWorld Configuration File #----------------------------------------- #Lease Paramaters (time in integer hours) #The timeout period is how long a user has to login #after being assigned a lease. The duration is how #long the lease will last. leaseTimeout: 12 leaseDuration: 72 #Dynamic difficulty will make the game harder as #the lease ages. This will override the server settings. dynamicDifficulty: true #Sets the sector dimension for random spawns. #Set to 0 to disable random spawn generation. spawnDimension: 1000 #Dynamic MOTD will replace the server's MOTD on the #server list with dynamic information about ChainWorld. dynamicMOTD: true #Email Credentials for notifications. #Leave blank to disable email notifications. username: password: #Email server settings (GMAIL default) auth: true starttls: true host: smtp.gmail.com port: 587
Source
You can follow this project on GitHub.
0.3a is on the way. This update will include non-default world support so that your entire server doesn't have to be a chain world as well as a reincarnation mode where player data is inherited from turn to turn. As well as bug fixes (and probably some new bugs.)
0.2b is almost ready. This update *should* fix the falling through the world problem on login.
@iko_davalos
Check this out, also this subreddit.
why would anyone want this? would you do me the favor of explaining this out to me? why do this?
@ChengZi368
I hope to eventually add this feature so servers with multiple worlds can designate which ones should be counted as ChainWorlds.
An idea! Why not let players join another "Waiting World"..