Status: realase-day-2022-02-19v22.01.0.03 - Tutorial video will be coming soon.
Advertising:
You need a plugin or a dev? Feel free to ask
Forword:
Finally, I have decided to put my plugin to spigotmc.org.
For the beginning let‘s ask our self-What is MLG-Rush?
MLG-Rush is like bedwars but there are two big differences:
1. Short matches/rounds
2. 1vs1 (that means only 2 teams with each 1 player)
The plugin has been developed for players which are only playing bedwars.
Introduction:
After you have downloaded my plugin and uploaded it to your plugins-folder, you should reload/restart your server. If this is done, you will see two messages from the plugin in the console.
In the first message there should be a hint which says that you need to set a wait-lobby-spawnpoint (what can been done while the ingame setup). The second message is about the system and is like a statusreport which gives you information about the configuration-settings.
You have been already noticed that in the plugin folder another folder with the name „MLGRush“ has been created.
This folder contains following files/subfolders:
Files:
- settings.yml
- version.yml
Subfolders:
Inventories:
- inv_arena_select4invite.yml
- inv_top_player_list.yml
- inv_waiting_lobby_items.yml
Others:
- messagesSounds.yml
Texts:
- txt_cmdhelper4user.yml
- txt_invite2arena.yml
- txt_joinarena.yml
- txt_round_is_finally_over.yml
- txt_round_is_over.yml
- txt_stats.yml
File: settings.yml
The settings.yml is a important file in which you can configure, your mlg-rush settings. Here is a short list of things you can configure:
- OneServerMode
- AutomaticArenaSelect
- MySQL (use a databse or not)
- Scoreboard
- Chat
- 1.8-Combat (OldcombatSystem)
- Sign (can only be used if „OneServerMode“ is not enabled)
Short explantation about two configuration settings:
If you are using the „OneServerMode“ by setting it to „true“ (defaut) the mlg-rush plugin will run as one server. This means for example if a player connects to the server he will be automatically moved to the waiting-lobby. By not using this setting you can easily run multiple game modes like „KnockIT“ on the server whiteout blocking each other.
If you are using the „AutomaticArenaSelect“ by setting it to „true“ (the default is false) players will be automatically moved to a random selected arena if they invite each other. By not using this setting players can choose the arena or map they want to play on while inviting other players.
File: version.yml
The version.yml stores the current plugin-version (this is needed for newer versions and should not be changed). You can enable or disable the debug-messages in here which are helping you to understand how the plugin works. In case of an error, you should enable the debug-messages.
1.1 MLG-Rush Setup: Default settings
After reloading/restarting the server the folder „MLGRush“ has been successfully created to your plugin-folder, now you can join the server and start the mlg-rush setup.
Notice: You can leave the setup-mode by using the command: /Rush exit or leave
To enter the setup you should start with the name of your arena/map:
/Rush set arena <name> - Set your arena-name.
In the next step you should set the player spawnpoint and the bedspawnpoints by using following commands:
/Rush set player <1/2> - Set the player spawnpoint for player 1 or 2.
/Rush set bed <1/2> - Set the bed spawnpoint for player 1 or 2 (you need to stay near the bed)
After setting the player spawns you can define the playground by marking the whole playground like a box (diagonal).
/Rush set box <1/2> - Set the playground location 1 or 2 (like a box, diagonal marked)
Now you can decide with which items the players are gonna play with. For this put the items into your inventory or wear it and use the following command to set it as a starterpack:
/Rush set starterpack - Sets your current inventory as startepack for the players.
After you have done the setup you should save your settings/arena with the following command:
/Rush save - Save your settings
After successfully creating the arena/map you should set the wait-lobby-spawnpoint if you not already have done it.
/Rush set lobby - Sets the wait-lobby-spawnpoint for all arenas.
Signs:
When you are not using the „OneServerMode“ you can use signs which players can click to join the wait-lobby for mlg-rush. You can define your sign-design in the settings.yml. To create the join or leave sign, you need to be create a sign with the following design:
First line: [MLGRush]
Second line: Join or Leave
MySQL - Database:
If you like to store user data into a database you can easily write down your login-data to the settings.yml. After that is done please use run the following sql-statements on your database before reloading/restarting your server!
/* Delete tables */
DROP TABLE IF EXISTS mr_user;
DROP TABLE IF EXISTS mr_keys;
/* Create tables */
CREATE TABLE mr_user( user INT NOT NULL PRIMARY KEY, name VARCHAR(32) NOT NULL, uuid VARCHAR(42) NOT NULL, kills INT DEFAULT 0, deaths INT DEFAULT 0, wins INT DEFAULT 0, subWins INT DEFAULT 0, played INT DEFAULT 0, subPlayed INT DEFAULT 0 );
CREATE TABLE mr_keys ( tabelle VARCHAR(40) NOT NULL, schluessel INT DEFAULT 0 );
/* Insert current key mr_user starting by 0 */
INSERT INTO mr_keys ( tabelle ) VALUES( 'mr_user' );
Permissions:
Setup:
- rush.rush_setup
Default:
- rush.cmd_rush (need to be set to the default-group)
1.2 MLG-Rush Setup: Settings for the file-system
After you have done the default-settings, you should edit the following files to your preferences.
File: messagesSounds.yml
This file contains all messages which will be displayed to the default-player. You cannot change admin-messages for example the messages in the setup proccess. For editing the messages you can use specified placeholder (placeholder-list further down). One special you can do is adding sounds to each messages.
Here is an example for adding a sound to a predefined message:
Message:
Rush:
deathKilledByOtherPlayer: '&a%p%&f has been killed by &d%otherPlayer%&f.'
Sound:
By adding the sound the key-attribute of the message should match with the sound-pattern (key-attribute: deathKilledByOtherPlayer).
Sounds:
deathKilledByOtherPlayer: entity.ender_eye.death
*You can find the soundnames by using the command /Sound in minecraft*
Title-messages:
Maybe you have noticed that some messages are starting with the paramter „top=“ and using the parameter „bottom=“. These messages are used for title-messages with will be disbaled to the player. Here is an example how to use it:
Rush:
RespawnDeathTitle: top=&f&lYou will &6&lrespawn&f&l in;bottom=&a&l%seconds% &f&lseconds!
Explantation:
The top-title-message is "You will respawn in"
The bottom-title-message is: "<seconds> seconds!"
Placeholder list:
%arena% - Arena/map name
%p% - Playername
%name% - Playername
%uuid% - Player-UUID
%displayname% - Displayname from player
%invitedPlayer% - Player who invited you
%kills% - kills
%deaths% - deaths
%played% - played matches (no subplayed (whole played))
%subplayed% - played matches (including subrounds)
%wins% - wins (no subwins (whole wins))
%subwins% - won matches (including subwins)
%kd% - kills divided deaths
%winner% - Round winner name
%otherPlayer% - Other player name not yours (for exmaple: inviting player)
%prefix% - your prefix which is set in the messagesSounds.yml
%errorMessage% - error-message from plugin
Subfolder: Texts
The files in this subfolder are text-walls which will be send to the player. These text-walls will be send to the player for example by inviting another player or finnishing the mlg-rush round. By editing the text-files you have might be noticed that you can use here placeholder too. Please only use the placeholder which are already predefined for the specific text-file. One special you can do is using the %hover% - placeholder in here. The %hover%-placeholder sends an interactive-chatmessage to the player which will be execute a command after clicking on the message.
Here is an example:
- '%hover%;&aShow my stats;&fShows your stats.;rush show stats'
Explantation:
%hover% - key-word for the plugin.
text after the first semi-colon: 'Show my stats' - the message what will be displayed to the player.
text after the second semi-colon: 'rush show stats' - the command what will be executed after the player clicks the message.
Commands: special feature for the inventories
With the commands-section (for exmaple the inventorie-files) you can decide what should happen when the player interact with the item.
Here is an example:
example inventorie: inv_waiting_lobby_items.yml
'4':
typ: BOOK
amount: 1
name: '&8[&6Top players&8]'
lore:
- '&fShows a list of the top players!'
Commands:
- INV=inv_top_player_list
- PLAYSOUND=block.wooden_door.open
INV=<Name>
With this parameter you can open another inventorie in this case the inventorie for the top-players will be opened.
PLAYSOUND=<Sound>
With this parameter you can play a minecraft-sound to the player while interacting with the item.
Other Commands that can be used:
- CLOSE | closed the inventory
- DEBUG | prints a debug for the executed commands into the console.
- PERM=<permissions> | sets a needed permissions for this interaction.
- SCMD=<command> | execute a command as console (you can use placeholder like %p%).
- CMD=<command> | execute a command for the player (you can use placeholder like %p%).
- TXT=<textname> | sends the text to the player which must match with the text name in the folder plugins\Texts\
1.3 MLG-Rush Setup: Ready to play
After setting up the arena and changing the predefined files you can reload/restart your server and enjoy playing. To invite another player you can hit the player or use the invite command in the command-help. By starting a match the server will create a temporary world for the session and after the mlg-rush round is over the map will be automatically removed.
Help or report a bug, missing feature?
If you have found an error or need help by using my plugin please feel free to write me a private-message or a comment to this plugin.
System requirements:
Java: 1.7
Spigot: 1.17