SurvivalGamesMultiverse

72.6k Downloads

Description

PERMISSIONS || COMMANDS || CHANGELOG || PLANNED


Suspended

The development of this plugin has been suspended/reduced to almost standstill, this is because I simply don't have any time for it. I will only release a new update if the plugin stops working completely, like a new minecraft version, or some other major change in Bukkit.

If someone wishes to take over the development of this plugin, feel free to PM me and we can discuss it if I find you competent enough.

Currently under heavy development

This plugin is currently being completely remade from the ground up. This should fix some of the problems this plugin has since it wasn't developed for public release from the start. It was only later that I modified it for release here.

I will link to the new page where you will be able to find the remake when it is ready for release. One thing to note is that most of the configs have changed to support a lot more configuration, this means that if you want to change to the remake, you will have to reconfigure the plugin.

Features

  • Supports custom worlds.
  • Fully automated, install and forget. Even updates itself.
  • Simultaneous games in different worlds.
  • Does not require WorldEdit to be able to work.
  • Multi-language support, just edit the strings in language.yml.
  • Randomized chests, loot-list can be configured in itemlist.yml.
  • Logs and saves all wins, kills and deaths.
  • Auto regenerates the worlds after each match.
  • Backs up players inventories.
  • Easteregg in the config.
  • Worldspecific grace period.
  • Worldspecific blockfilter.

Requirements

  • No requirements, just install and play.

Conflicts

  • No known conflicts.

Possible conflicts (not confirmed):

  • Multiinv and similar plugins.

Important

This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • The plugin's version
  • The server's version
  • The OS version/name and architecture
  • The core count for the CPU
  • The number of players online
  • The Metrics version

Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.

It also uses an auto-updater that automatically fetches the latest moderator approved version of this plugin and installs it if needed everytime the server is started. This can be disabled in the config for this plugin. Simply put "false" instead of "true" after "auto-updater" in the config.


Description

This plugin allows you to host multiple SurvivalGames in diffrent worlds at the same time.

Worlds

Each survivalgames-match takes place in its own world. Anything that happens in these worlds are logged and reset after each match. This means that you could do pretty much anything to the world and everything will be back to normal when a new round starts. This opens up for some interesting gameplay, like allowing all players to be able to craft their own armor or weapons, or build bridges, dig tunnels, create walls to hide behind etc.

Each match is timed, and after a configurable time all players in the match are teleported to a predefined arena to fight till the end. If the players just wont kill each other in the arena the plugin will kill all players left and start a new match if the time runs out.

Chests

All chests in the map gets randomized the first time a player opens them when a new game has started. You can edit what items are going to spawn in the chests and how often they will spawn in the _itemlist.yml_.

If a player crafts a chest in the game it will automatically be added to the log of chests to not randomize, this means that players can not craft a chest and it will be randomized when they open it. It will function just as a regular chest, and when the game resets the chest gets removed. Chests that already where placed in the world will not be added to the log of chests to not randomize, this means that all chests that where allready in the world gets randomized when a player first opens it.

Chests will only get randomized once every game. Opening and closing a gamechest (a chest that allready was in the world and not crafted by a player) will not randomize it again when opened.

Multithreaded I/O operations

Everytime the plugin needs to talk to the database or log something in a file it happens in a seperate thread. This will prevent server lag/freezes when the plugin needs to store some information, like kills, wins, deaths or positions.

Stats & MySQL

Kills, wins and deaths are logged for each player and displayed on the right side of their screen when they play.

This data can also be sent to an other MySQL-database so that it can be displayed on a webpage for example. Note, the plugin will never read anything from that MySQL-database, it will only send the stats to it when it gets updated.

The table in the MySQL-database has to have the following structure for it to work:

Column NameType Primary KeyNotNull
playernamesVARCHARYESYES
winsINTNONO
killsINTNONO
deathsINTNONO
Multilanguage support

Every message/broadcast in the game (except error messages for commands or in the console) can be customized.

You can edit/translate the messages in language.yml.

This allows people from all nations to play the game in their native language without me having to do all the translations myself.

For example, the community im the head developer for is using this plugin in swedish. All they had to do was translate the strings in the language.yml file.

Setup

Installing the plugin.

Configuring the itemlist.yml.

Signs

Players join by rightclicking a sign. These signs can be placed anywhere.

To create "joinsign", write [sginfo] on the first line of the sign, and the name of the gameworld on the second line. Then just rightclick the sign to register it and it will update with the correct information.

Sourcecode

This plugin is open-source and released under the GNU-GPLv3 license. The code can be found here: GitHub/SurvivalGamesMultiverse

MCStats