Lite Survival Games Manager
Lite Survival Games Manager
This project is abandoned. Use an alternative plugin.
Description
Survival Games have become popular in Minecraft recently, with the Hunger Games movie. The goal of the game is simple: survive. Players must adapt to the environment, find resources, and - most importantly - kill. The last player standing is the winner. The goal of this plugin is to allow players to run servers - whether big, public servers or smaller ones with friends - easily and make the experience more enjoyable. The hope for this plugins release is to allow admins to add maps, configure the plugin, then run the server and take the day off. Making the entire game automatic and requiring no admin at all.
Features
- Create a backup of the world to reload after the match
- Automatically refill select chests with select items
- Set players to spectate mode after death
- Changeable time limit
- Automatically restart and reload world after the match.
- Allow admins to set hosts with simple commands
- Keep track of individual scores
- Store data in a SQLite file
- Allow a server to load different maps in a map cycle
- Allow multiple spawn points to be set up
- Black or white list blocks that can't or can be broken, respectively, by players in-game
- Voting to start a game without an admin
- Selecting a button/lever to be triggered on game start
- Auto start with minimum players
- Peace time
- Players kicked after death
Spectate mode will god players, allow them to fly, make them invisible, and prevent them from interacting with the world. They can also teleport to players.
Use
- Set the server up for auto restart. See the section below.
- Edit the config files to your liking. They should be config.yml and blocks.yml in the plugins/LSGM folder.
- Add a map to the map cycle. Type /lsgm addmap <mapname>. You can add as many maps as you'd like, they'll be randomly picked from the file (same map can not be repeated) to be loaded on restart.
- Set spawns. You will want an individual spawn for the maximum players on your server. If there are too few spawns, more than one player should be spawned at a spawn point. Stand on the spawn point and type /lsgm addspawn <id>.
- Add chests. Chests will be automatically refilled on a set time or will be refilled on the command /lsgm fillchests. Look at the chest and type /lsgm addchest <id> [group], or - if you feel that your computer can handle it - type /lsgm addchest all and every chest on the map will be found automatically. You must fly around and make sure you load every chunk on the world to get every chests! Currently, we can only find chests on loaded blocks.
- Back up the world. This allows the world to revert to its original state when it is loaded next. Just type /lsgm backup.
- If necessary, add a start button or a lever. This will be activate when the game starts. Look at it and type /lsgm addbutton <id>
- Start the game. Go ahead and type /lsgm start [chest refill delay in minutes] [time limit in minutes]. If you do not specify a refill delay or a time limit, they will default to a 15 minute refill delay and no time limit.
- Check for bugs! There are probably going to be a lot. Not an understatement.
- Type /lsgm help for various other commands.
- If set, the server will automatically restart after the game.
Recommended: Download AntiCheat to easily disable client mods and prevent exploitation!
Auto Restart
In order for the server to start up again after the plugin has stopped it, you must change the file you use to run the server (e.g., RUN.bat). You will need to loop through the java -jar command so that it is ran when the server goes down. See the examples below:
Windows (*.bat)
@ECHO OFF SET BINDIR=%~dp0 CD /D "%BINDIR%" :start java -Xincgc -Xmx1G -jar craftbukkit.jar goto start
Mac/Linux (*.sh)
#!/bin/bash BINDIR=$(dirname "$(readlink -fn "$0")") cd "$BINDIR" while true do java -Xincgc -Xmx1G -jar craftbukkit.jar done
Commands
General command usage: /lsgm <command> [args]
- backup - Makes a backup of the world, to be loaded on the next game.
- addmap - Adds map to maplist. Usage: /lsgm addmap <map>
- delmap - Removes a map from the map list. Usage: /lsgm delmap <map | all>
- listmaps - Lists the maps on the map list.
- addchest - Adds the chest you are looking at to the refill list. Usage: /lsgm addchest <id> [group]
- delchest - Removes the chest you are looking at from the refill list. Usage: /lsgm delchest <id | all>
- listchests - Lists all of the chests on the refill list.
- fillchests - Fills all of the chests on the refill list.
- info - Display game info. Usage: /lsgm info [player]
- start - Start the games. Usage: /lsgm start [chest fill delay] [time limit]
- stop - Stop the games.
- addspawn - Add a spawn point where you are. Usage: /lsgm addspawn <id>
- delspawn - Remove a spawn point. Usage: /lsgm delspawn <id | all>
- sethost - Make a player a host. Usage: /lsgm sethost <player> <true | false>
- reload - Reload the config
- votestart - Vote to start a game
- addbuton - Add the button/lever you're looking at to buttons/levers to be triggered on game start. Usage: /lsgm addbutton <id>
- delbutton - Remove a start button. Usage: /lsgm delbutton <id | all>
- listbuttons - List ALL the start buttons!
Permissions
- lsgm.backup:
Back up worlds
- lsgm.access:
Use LSGM commands
- lsgm.fillchests:
Refill chests
- lsgm.addchest:
Add chests to the database
- lsgm.removechest:
Remove chests from the database
- lsgm.addmap:
Add maps to the map cycle
- lsgm.removemap:
Remove maps from the map cycle
- lsgm.start:
Start the game
- lsgm.stop:
Stop the game
- lsgm.addspawn:
Add a spawn point
- lsgm.delspawn:
Remove a spawn point
- lsgm.sethost:
Make a player a host
- lsgm.reload:
Reload the config
- lsgm.addbuton:
Add a start button
- lsgm.delbutton
Remove a start button
Configuration
config.yml
This is the general config file.
# -- blocklist-type # Use "black list" if you want what is in blocks.yml to not be broken by players. # Use "white list" if you want the blocks in blocks.yml - and only those blocks - to be allowed to be broken by players. # If you do not want to block anything, leave this as black list and leave blocks.yml empty # Warning: If this is set to white list and blocks.yml is empty, then no blocks can be broken. # -- time-limit # Default time limit in minutes; set to 0 for no time limit. # -- auto-restart # Set to "true" to automatically restart the server after a game, otherwise set to "false." # -- restart-delay # Time - in seconds - to wait before the server restarts. # -- alow-vote-start # Set to "true" to allow players to vote to start the game, otherwise set to "false." # -- minimum-players # Minimum players needed to start a game via voting. Will be ignored if less than 2. # -- auto-start # Start automatically when minimum players reached. # -- auto-start-delay # Time to wait for more players before game auto starts (minutes). # -- allow-spectators # Whether or not people can stay in the game after they die and spectators can join while the game is in progress. True/false # -- peace-time-length # The length (in minutes) players can not attack one another at the start. 0 allows players to attack one another immediatally. # -- refill-delay # Default automatic chest refill delay in minutes; set to 0 for no automatic refills. # -- refill-group # Chest group to be refilled automatically; leave default if you do not use custom groups. # -- refill-items # Items eligible to be placed into chests on automatic refill; format: itemid amount. # For now, the only way to set the probability of getting a certain item to be higher, you must add the item more than once. blocklist-type: white list time-limit: 0 auto-restart: true restart-delay: 5 allow-vote-start: true minimum-players: 2 auto-start: false auto-start-delay: 5 allow-spectators: true peace-time-length: 0 refill-delay: 15 refill-group: default refill-items: ..
blocks.yml
The blocks to be used in the white/black list. Use the block's ID, not the name.
# These are the blocks to be used with the white/black list. # See the example below for how to format this file. Use the block's id in the list. # Do NOT use tabs or allow you text editor to auto-tab! When indenting to list the ID, use two spaces! blocks: - 0 - 7
@MrFrostmaul
Try changing the spawn with Essentials, the plugin does nothing with teleporting before the game starts. All of the player files are deleted when the map reloads.
@hockeygoalie5
Yeah, Ive just done the spawns and they are working fine with the "/lsgm listspawns". It's when I first join the server.
BTW- What happens to users as it saves their inv etc. in the world "Players" folder, does the plugin override this?
@MrFrostmaul
When you join, or when the game starts? Type /lsgm listspawns and see if there's one you don't recognize that may be in the wrong place.
Hey, I have everything working fine, but when I join the game is teleports me to another part of the map.
All the spawns are setup fine, but when I got to join it does not teleport me to the starting "tubes". It puts me into spectator mode etc.
I dont have my player stuff saved in the world files etc.
@TheFluffey
It's supported a map cycle from the start, but this time it actually automatically restarts the server. There is one thing you need to do, though, to get the server to automatically come back up that I forgot to add and now feel bad about. Will do that now!
EDIT: There you go! See the "Auto Restart" section.
@hockeygoalie5
So this now automatically cycles through maps?
Also, for those of you who missed the announcement, please check the "notice" section at the top of the description. Thanks!
@MrFrostmaul
Thanks! I really hope that that map rotation doesn't kaputt on you when running it 24/7! Developer paranoia.
@hockeygoalie5
Ok, thanks :) - Now i can start hosting it 24/7 and fully auto :)
- One of the best things about this is the Map rotations etc. Epic Ideas and work, keep it up :)
@MrFrostmaul
It depends, but it shouldn't take long at all.
@hockeygoalie5
:) - How long does Bukkit take now with the approval?
Holy Bacon, Batman!
Version 1 is here! I called it a release! It's the same as everything else except it's called a release and gives me an excuse to use exclamations in as many run-on sentences I want! Yay! We've got some nice stuff for you in here! Config files, vote start, auto restart, start buttons, oh my! See the project's description for more!
Also, sorry for those who just peed themselves, the file still needs approval.
@MrFrostmaul
Absolutely sorry, I'm working with things that aren't in the API, so they're a bit difficult.
@MrFrostmaul
Lol, just realised that iam checking this page like every 20 mins to see if there is an update :)
@hockeygoalie5
ok, thanks :)
@MrFrostmaul
Players "spawning" once the game starts has nothing to do with the world's spawn point. As long as you have set up the spawn points with /lsgm addspawn, then they will spawn where you set it to.
@hockeygoalie5
Kinda of a noob question I think but, when players first join the game, I had to use essentials to change the spawn and build a room for them to spawn in, when they first spawn in that room and are waiting for the game to start, does it auto put them into the different spawn sections for the game to start?
@hockeygoalie5
ahh ok.
@MrFrostmaul
It's nothing amazing; I'm adding a command to set a button or a lever that will be activated when the game starts. Like the one that activates the countdown and pistons in Survival Games 2.
@hockeygoalie5
Cool, cant wait to see the new feature you've added :)