diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2024-06-28 01:45:24 -0400 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2024-06-28 01:45:24 -0400 |
commit | b7f79527534c8edac418dee0791281ff784bec72 (patch) | |
tree | 7a55b7b997a79479e7be03f1de8246a7516dad5e /README.md | |
parent | 02cc74cc5ac06a69ec59d6277234ce69031402f4 (diff) | |
download | Tumble-b7f79527534c8edac418dee0791281ff784bec72.tar.gz Tumble-b7f79527534c8edac418dee0791281ff784bec72.tar.bz2 Tumble-b7f79527534c8edac418dee0791281ff784bec72.zip |
Improve documentation, tweak commands
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 94 |
1 files changed, 74 insertions, 20 deletions
@@ -1,10 +1,11 @@ ## temporary stuff (not ready for merge) ### known issues -- [ ] file writing not fully implemented (just need to call ArenaManager.write() somewhere) +- [x] file writing not fully implemented (just need to call ArenaManager.write() somewhere) - [ ] issues with join command - [ ] no config validation ### todo +- [ ] finish og-guide - [ ] improve inventory saving - [ ] improve Game.leave() method - [ ] perhaps replace spectator mode with survival flight @@ -20,7 +21,7 @@ Tumble is a Spigot/Paper plugin that aims to recreate the Tumble minigame from t ## What *is* Tumble? -If you've never heard of it, [Tumble](https://minecraft.wiki/w/tmbl) is a twist on the classic Minecraft minigame of spleef, where the objective is to break the blocks under your opponents. But in Tumble, you play on randomly generated layers of blocks, using shovels, snowballs, or both to try and eliminate your opponents. +If you've never heard of it, [Tumble](https://minecraft.wiki/w/tumble) is a twist on the classic Minecraft minigame of spleef, where the objective is to break the blocks under your opponents. But in Tumble, you play on randomly generated layers of blocks, using shovels, snowballs, or both to try and eliminate your opponents. ## Features @@ -32,37 +33,90 @@ If you've never heard of it, [Tumble](https://minecraft.wiki/w/tmbl) is a twist - Highly customizable - Open-source codebase - Multiple arenas and concurrent games +- Heavily configurable ## Setup -1. Simply [download](https://github.com/MylesAndMore/tmbl/releases) the plugin's JAR file and place it in your server's plugins directory. -2. Load the worlds for your lobby and arenas. - +1. [Download](https://github.com/MylesAndMore/tmbl/releases) the plugin's JAR file and place it in your server's plugins directory. +2. Place the worlds for your lobby and arenas in your plugins worlds directory. - If you would like an experience similar to the original game, see [my guide](https://github.com/MylesAndMore/tmbl/blob/main/OG-GUIDE.md) for using the original worlds. -3. Start your server. The plugin will generate a couple of warnings, these are normal. -4. Ensure that you have imported your worlds using a plugin like Multiverse. This can be done with the command ```/mv import <your-world-name> normal```. -5. Now you need to tell Tumble where your lobby is and where your game arena is. You can do this by going to the center positions and running ```/tmbl-config set lobbyWorld``` and ```/tmbl-config add <arenaname>``` respectively. -6. **VERY IMPORTANT:** The plugin will teleport players to the world and generate the game's blocks around the point you set. Ensure that your spawn points are clear of any obstructions, and that a 20x20x20 cube is cleared out **Any blocks in this area will be destroyed when the game begins.** -7. You're done! You can now start games with the command ```/tmbl start <arenaname> mixed```. +3. Start your server. +4. Import your worlds using a plugin like Multiverse. ```/mv import myWorld normal```. +5. Create your first arena `/tmbl create myArena` + - **Note**: The layers will generate relative to this location. Ensure that the area is clear, 20 blocks in each direction. + +7. You're done! You can now join the game ```/tmbl join myArena mixed```. Scroll down for more options to configure your game. ## Commands / Permissions -| Command | Description | Permission | -|------------------------------------------------|-----------------------------------|---------------------| -| `/tmbl join <arenaName> [gameType]` | Join a Tumble match. | `tumble.join` | -| `/tmbl leave` | Quit a Tumble match. | `tumble.leave` | -| `/tmbl forcestart [arenaName]` | Force start a Tumble match. | `tumble.forcestart` | -| `/tmbl forcestop [arenaName]` | Force stop a Tumble match. | `tumble.forcestop` | -| `/tmbl config <add/set/disable/delete> <data>` | Modify arenas and worlds in game. | `tumble.config` | -| `/tmbl reload` | Reload the plugin's config. | `tumble.reload` | +| Command | Description | Permission | +|-------------------------------------|------------------------------------------------------------------------------------|-------------------------| +| `/tmbl join <arenaName> [gameType]` | Join a Tumble match. Can infer game type if a game is already started in the arena | `tumble.join` | +| `/tmbl leave` | Quit a Tumble match | `tumble.leave` | +| `/tmbl forcestart [arenaName]` | Force start a Tumble match. Can infer arena if you are in one | `tumble.forcestart` | +| `/tmbl forcestop [arenaName]` | Force stop a Tumble match. Can infer arena if you are in one | `tumble.forcestop` | +| `/tmbl reload` | Reload the plugin's configs. | `tumble.reload` | +| `/tmbl create <arenaName>` | Create a new arena | `tumble.create` | +| `/tmbl remove <arenaName>` | Remove an arena | `tumble.remove` | +| `/tmbl setGameSpawn <arenaName>` | Set game spawn to your current position | `tumble.setGameSpawn` | +| `/tmbl setKillYLevel <arenaName>` | Set the arena's Y-level to kill players at to current Y coordinate | `tumble.setKillYLevel` | +| `/tmbl setLobby <arenaName>` | Set the arena's lobby to current location | `tumble.setLobby` | +| `/tmbl setWaitArea <arenaName>` | Set the arena's wait area to the current location | `tumble.setWaitArea` | +| `/tmbl setWinnerLobby <arenaName>` | Set the arena's lobby to the current location | `tumble.setWinnerLobby` | + ## Configuration -Use `/tmbl config` for modifying the config in-game. See available options with the tab auto complete feature +Configuration for this plugin is stored in three files. + +### config.yml +Stores common settings + +| Option | Type | Default value | +|----------------------------|-----------------|---------------| +| `hide-join-leave-messages` | `boolean` | `false` | +| `wait-duration` | `int` (seconds) | `15` | + + +### arenas.yml +Stores data for each arena. You may add and remove arenas as you wish. + +Each arena can contain the following locations: + +| Location | Description | +|--------------------------|-------------------------------------------------------------------------------------| +| `game-spawn` **Required* | The location where players will be teleported, and the layers will generate around. | +| `wait-area` | The location where players will be teleported to before the game begins | +| `lobby` | The location where players will be teleported to after the game | +| `winner-lobby` | The location where the winner will be teleported after the game | + +Locations are stored using the following format: +```yaml + location: + x: 0.5 + y: 100 + z: 0.5 + world: worldName +``` + +Each arena can also contain the following option: + +| Option | Type | Description | +|-------------|--------|-----------------------------------------------------------------| +| `kill-at-y` | double | When a player falls below this Y-level, they will be eliminated | + +### language.yml +Most of this plugin's strings are configurable through this file. (Excluding from some console errors) + +All plugin chat messages will have the `prefix` prepended to them. + +Colors can be added using alternate color codes: +``` +&cRed Text +``` -See the comments inside config,yml for manual editing ## Issues & Feedback |