[RELEASE] SurvivalGames - Survival Games for Sponge!

Hello everyone! I am submitting and hope you enjoy it!

Github: https://github.com/m0pt0pmatt/SurvivalGames
Release: https://github.com/m0pt0pmatt/SurvivalGames/releases/tag/1.0.0

SurvivalGames is a Sponge Plugin which lets you play the classic Minecraft Survival Games game mode on your Sponge Server! You can run multiple survival games at once, and each game is customizable. Config files for survival games can be saved and loaded from file.

This plugin was created for the Sponge Summer Plugin Competition 2016.

Survival Games can be fully played. Hence why this is marked as a full RELEASE.

Demo

NOTE: Players participating in the demo must be opped.

Installing the plugin on your server gives you instant access to survival games. just run /ssg demo to have the demo worlds and config files automatically downloaded. BE WARNED: running this command might ruin your server (still working out bugs), so please run it on a fresh server.
Run these commands to get the server running:

  • /ssg demo
  • /ssg load demo demo.yml
  • /ssg set blocks demo
  • /ssg ready demo
  • For each player: /ssg add player demo <player>
  • /ssg start demo

Commands

Everything which can be set via a config can also be adjusted through commands. The root command is /ssg. Other commands include:

  • /ssg create <game> Creates a new survival game
  • /ssg delete <game> Deletes a survival game
  • /ssg load <game> <file> Loads a survival game from a config file
  • /ssg save <game> <file> Saves a survival game to a config file
  • /ssg set <game> <property> <value> Sets a p\config value of a survival game
  • /ssg print <game> <property> Prints the current value of a config property
  • /ssg add <game> <list-propery> <value> Adds a value to a list property. Examples include spawn points and players.
  • /ssg remove <game> <list-property> <value> Removes a value from a list property.
  • And more!

Permissions

Each command has it’s own permission, based on the structure of the command in the command tree. For example, to run /ssg add player, you need the permission "ssg.add.player".

Config

Each survival game config has the following options:

  • World name
  • A vector for the center of the map
  • Spawn locations
  • Boundarys for the game (World borders are created from this)
  • An exit world and vector, for teleporting players who have perished in the games.
  • Loot for spawning items in chests
  • Mob spawners
  • And more!

Mob Spawners

You can configure a certain region to spawn mobs when a survival game is running. This is done via the /ssg add mob-spawn-area <game> <x> <y> <z> <x> <y> <z> <EntityType> <EntitysPerMinute>

Events

SurvivalGames has it’s own events which are fired when game-related things happen. Not only can other players use these events, but SurvivalGames also can fire command blocks with the command /ssg event [EventName]. This allows for map makers to do some really custom stuff!

For example, If a command block is set with the command /ssg event MobSpawnedEvent, then whenever a MobSpawnedEvent occurs, the command block is executed. It is then turned into a redstone torch for 5 seconds, so surronding blocks can be powered. (This is a temporary workaround)

Java Docs

While they still need work, you can view the Javadocs here: http://m0pt0pmatt.github.io/SurvivalGames/docs/
But I recommend you just look at the source code :wink:

6 Likes

Do you have a planned features section so we can suggest features for you?

Just leave a Github issue and I’ll see it :slight_smile: I’ve been busy with other projects, so I haven’t been able to make any progress on SurvivalGames, but I plan to devote some time to it soon.

Hey Matt, do you still develope, or plan to develope, this plugin? You’re literally the only person to create a hunger games plugin for sponge. It doesn’t seem like a lot of people are interested but I certainly am. Ever since I started playing feed the beast modpacks I’ve dreams of playing a hunger games on a modpack. This is my ticket to do so. Anyone knows if this plugin works with the latest sponge version?

@Michael_Angie,

Yes I still plan to develop this plugin. Sorry to you and @RawbDeeni for not being active about it. The Sponge plugin competition was able to get my butt in gear… recently I’ve been busy with work.

I have no idea if it works with current sponge, but I’ll work towards updating it this week. If you don’t see me doing anything just keep pinging me :slight_smile:

Thanks for the interest! Can’t wait to play some Feed the Beast hunger games with you :wink:

Is there an update on this?
Would love to put an event on for my server this Saturday :slight_smile:

Hello, just wanted to let everyone know that this mod does still load in minecraft version 1.10.2 with mods as of 9/15/2017.
One thing that I am having troubles with is setting up my first game, if someone could make/post a tutorial video/guide/instructions based of what they did, it would be appreciated.

edit
when following the commands listed (for starting the demo), I get an error when I do the command /ss set blocks demo
the error is as follows
No value found: lesser-boundary

The game also complains that the game can’t be started because blocks haven’t been set, although I cannot get that to work.

Hey, sorry, I haven’t been able to come back to this yet. Life moves on, and I’ve been busy with other things. Let me see if I can give this plugin some well needed love. <3

Hi!

Sorry for the late response. Sounds like you need to /ssg set boundary, to set the world boundary of the game.

The /ssg set boundary command will set the boundary to the block you are looking at, or, you can specify the x, y, x on the command line.

You have to set the cubic opposites of the map. Don’t forget to use the /ssg print command to look at what you’ve set.

no chance this will be updated for Sponge 7 is there?

Oh there’s a chance :wink:
Let me look at it tonight

sweet!! Was there ever a video done to show how to use it? Still trying to figure everything out here.

does the world size shrink? how do you restart the game and have everyone back to normal (without gear, etc.)?

@tonnic I just built a new version: Release v1.0.6 · mattysweeps/SurvivalGames · GitHub
It targets version 7.1.0 of the SpongeAPI. I would use it.

I never made a video to explain how it works, but that’s a good idea. In the meantime, take a look at the demo config: https://s3.amazonaws.com/com.cloudcraftnetwork.survivalgames.maps/demo.yml

Or, run the demo commands in the readme:

I don’t think the world size shrinks. I use a world boundary for keeping players in bounds. Making it shrink would be a great addition, so I added a Github issue to do that: Add feature to shrink the world boundary over time · Issue #2 · mattysweeps/SurvivalGames · GitHub

One more note: I’ve started playing around with Ore, but I haven’t published anything yet (I changed my PGP key so I can’t sign anything for 3 days…) Hopefully in the future I can push jars there.

Let me know if you run in to any problems, or if you have any questions. I’ll see if I can’t whip a tutorial video this weekend.

I’ve spent a few hours this weekend working on fixing the demo command, but there’s a lot more work that needs to be done.

I’ve opened up a Github ticket to track that progress: Demo command completely overwrites the server's world · Issue #3 · mattysweeps/SurvivalGames · GitHub

I did ship a new version, which makes a slight improvement to the demo command and updates the README.

My goals are to

  1. Fix demo command so it is safe to run on all servers
  2. Add an option to shrink world size over time.
  3. Create an instructional video once 1 and 2 are done

Sunday night update!

Check out Release v1.1.0 · mattysweeps/SurvivalGames · GitHub
I’ve made a huge improvement to the demo command. It’s much more stable now.

I’ve also added the concept of schedules: basically a way to force a game to end + restart it on a loop.

The demo command automatically schedules the demo map.