Skip to content

Commit

Permalink
refactor: remove waterfall support in favor of velocity. If you still
Browse files Browse the repository at this point in the history
need waterfall, the old builds will continue to work until a breaking
change is introduced upstream.
  • Loading branch information
oddlama committed May 13, 2024
1 parent 0e84be3 commit 789a51e
Show file tree
Hide file tree
Showing 32 changed files with 35 additions and 816 deletions.
40 changes: 7 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,44 +57,18 @@ Grab the `all-plugins.zip` if you don't want to download each file by hand. You

- You are using the correct Paper (or Purpur) server version (compatible versions are listed in the title on the download page)
- You have the latest version of [ProtocolLib](https://ci.dmulloy2.net/job/ProtocolLib/).
- Beware that `vane-waterfall`, `vane-velocity` and `vane-plexmap` (plexmap addon) are not classical server plugins! Use them only if you know what you are doing.
- Beware that `vane-velocity` and `vane-plexmap` (plexmap addon) are not classical server plugins! Use them only if you know what you are doing.

For a comprehensive guide, visit the [Installation Guide](https://github.com/oddlama/vane/wiki/Installation-Guide) on the wiki.

## Proxy Installation (vane-waterfall, vane-velocity)
## Proxy Installation (vane-velocity)

Download the applicable jar (`vane-waterfall.jar` or `vane-velocity.jar`) and place it in the proxy server's `plugins/` directory. The configuration will be generated on first start.

<details>
<summary>
Enabling Authentication Multiplexing
</summary>
</br>

**Waterfall:** Before using multiplexers, you must define listeners (distinct ports) for your servers in the
proxy's `config.yml`. Afterwards, all further configuration is handled in the plugin's `config.toml`.

**Velocity:** All configuration is handled in the plugin's `config.toml`
</details>

<details>
<summary>
Permission management
</summary>
</br>
Download `vane-velocity.jar` and place it in the velocity proxy server's `plugins/` directory. The configuration will be generated on first start.
All configuration is handled in the plugin's `config.toml`.

There are permissions players will need to perform certain actions, such as starting offline
servers and joining servers in maintenance mode.

**Waterfall:** Permissions **must** be defined in the proxy's `config.yml`! External permissions plugins
will **not** work.
These permissions must be assigned to the player's **UUID**. *THIS IS IMPORTANT* and
won't work with player names.

**Velocity:** Permissions can be handled by any external permissions plugin, such as [LuckPerms](https://luckperms.net).
Unlike Waterfall, this **will** work with player names or UUIDs.
Check the config for additional settings to manage your servers.
</details>
servers and joining servers in maintenance mode. Permissions can be handled by any external
permissions plugin, such as [LuckPerms](https://luckperms.net).

## Building from source

Expand All @@ -115,7 +89,7 @@ Please refer to the [FAQ](https://github.com/oddlama/vane/wiki/FAQ) in the wiki.
I would like to thank the following projects and people maintaining them:

- [Spigot](https://www.spigotmc.org/) for the awesome baseline server software.
- [PaperMC](https://papermc.io/) for the valuable additions missing from Spigot, and for Waterfall.
- [PaperMC](https://papermc.io/) for the valuable additions missing from Spigot.
- [ProtocolLib](https://github.com/dmulloy2/ProtocolLib) for the awesome protocol layer library.
- [DynmapCoreAPI](https://github.com/webbukkit/DynmapCoreAPI) (Apache-2.0), dynmap integration
- [BlueMapAPI](https://github.com/BlueMap-Minecraft/BlueMapAPI) (MIT), [BlueMap](https://bluemap.bluecolored.de/) integration
Expand Down
6 changes: 3 additions & 3 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ subprojects {

// All Paper Plugins + Annotations.
configure(subprojects.filter {
!listOf("vane-waterfall", "vane-velocity", "vane-proxy-core").contains(it.name)
!listOf("vane-velocity", "vane-proxy-core").contains(it.name)
}) {
apply(plugin = "io.papermc.paperweight.userdev")

Expand All @@ -65,7 +65,7 @@ configure(subprojects.filter {

// All Projects except proxies and annotations.
configure(subprojects.filter {
!listOf("vane-annotations", "vane-waterfall", "vane-velocity", "vane-proxy-core").contains(it.name)
!listOf("vane-annotations", "vane-velocity", "vane-proxy-core").contains(it.name)
}) {
tasks.create<Copy>("copyJar") {
from(tasks.reobfJar)
Expand Down Expand Up @@ -104,7 +104,7 @@ configure(subprojects.filter {

// All paper plugins except core.
configure(subprojects.filter {
!listOf("vane-annotations", "vane-core", "vane-waterfall", "vane-velocity", "vane-proxy-core").contains(it.name)
!listOf("vane-annotations", "vane-core", "vane-velocity", "vane-proxy-core").contains(it.name)
}) {
dependencies {
// https://imperceptiblethoughts.com/shadow/multi-project/#depending-on-the-shadow-jar-from-another-project
Expand Down
20 changes: 10 additions & 10 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2517,52 +2517,52 @@ <h2 id="feature-vane-admin--autostop">
<div class="p-5 border border-b-0 border-gray-200 dark:border-gray-700 dark:bg-gray-900">
<div class="prose prose-slate prose-img:rounded-xl prose-img:w-1/3 prose-img:sm:m-4 prose-img:w-full prose-img:sm:w-1/2 prose-img:lg:w-2/5 prose-img:min-w-32 prose-img:max-w-full prose-img:float-right prose-img:clear-right prose-h1:clear-right prose-h2:clear-right prose-img:float-right dark:prose-invert max-w-none"><p>To save on your server's resources, vane will shutdown your server when 20 minutes have passed
while the server is empty.
This feature is especially great combined with the <a href="#feature-vane-waterfall--autostart">Autostart</a> feature by vane-waterfall,
This feature is especially great combined with the <a href="#feature-vane-velocity--autostart">Autostart</a> feature by vane-velocity,
which automatically starts your server when someone tries to connect to it.</p></div>
<div class="clear-right"><!-- spacer --></div>
</div>
</div>

<h2 id="feature-vane-waterfall--autostart">
<button type="button" class="feature-toggle flex justify-between items-center p-5 w-full font-medium text-left text-gray-500 border border-b-0 border-gray-200 focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-800 dark:border-gray-700 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800" aria-expanded="false" aria-controls="body-feature-vane-waterfall--autostart">
<h2 id="feature-vane-velocity--autostart">
<button type="button" class="feature-toggle flex justify-between items-center p-5 w-full font-medium text-left text-gray-500 border border-b-0 border-gray-200 focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-800 dark:border-gray-700 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800" aria-expanded="false" aria-controls="body-feature-vane-velocity--autostart">
<span class="flex items-center">
<div class="relative mr-4 w-[32px] h-[32px] min-w-[32px] min-h-[32px]">
<img class="absolute object-cover is-pixelated w-full h-full" src="assets/minecraft/textures/item/clock_00.png">
</div>
Autostart
</span>
<div class="inline-flex shrink-0">
<span class="bg-gray-100 text-gray-800 text-sm font-medium mr-2 px-2.5 py-0.5 rounded dark:bg-gray-200 dark:text-gray-900 dark:opacity-50">waterfall</span>
<span class="bg-gray-100 text-gray-800 text-sm font-medium mr-2 px-2.5 py-0.5 rounded dark:bg-gray-200 dark:text-gray-900 dark:opacity-50">velocity</span>

<svg data-accordion-icon class="w-6 h-6 shrink-0" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
</div>
</button>
</h2>
<div id="body-feature-vane-waterfall--autostart" class="hidden">
<div id="body-feature-vane-velocity--autostart" class="hidden">
<div class="p-5 border border-b-0 border-gray-200 dark:border-gray-700 dark:bg-gray-900">
<div class="prose prose-slate prose-img:rounded-xl prose-img:w-1/3 prose-img:sm:m-4 prose-img:w-full prose-img:sm:w-1/2 prose-img:lg:w-2/5 prose-img:min-w-32 prose-img:max-w-full prose-img:float-right prose-img:clear-right prose-h1:clear-right prose-h2:clear-right prose-img:float-right dark:prose-invert max-w-none"><p>This feature allows you to have your server automatically start when a player tries to connect to it.
This is part of vane-waterfall, a plugin for a server proxy like <a href="https://www.spigotmc.org/wiki/bungeecord/">BungeeCord</a> or <a href="https://docs.papermc.io/waterfall">Waterfall</a>.</p>
This is part of vane-velocity, a plugin for the <a href="https://papermc.io/software/velocity">Velocity</a> proxy server.</p>
<p>Check out our <a href="https://oddlama.github.io/minecraft-server">Server Installer</a> for information on how set this up correctly.</p></div>
<div class="clear-right"><!-- spacer --></div>
</div>
</div>

<h2 id="feature-vane-waterfall--multiplexing">
<button type="button" class="feature-toggle flex justify-between items-center p-5 w-full font-medium text-left text-gray-500 border border-b-0 border-gray-200 focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-800 dark:border-gray-700 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800" aria-expanded="false" aria-controls="body-feature-vane-waterfall--multiplexing">
<h2 id="feature-vane-velocity--multiplexing">
<button type="button" class="feature-toggle flex justify-between items-center p-5 w-full font-medium text-left text-gray-500 border border-b-0 border-gray-200 focus:ring-4 focus:ring-gray-200 dark:focus:ring-gray-800 dark:border-gray-700 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800" aria-expanded="false" aria-controls="body-feature-vane-velocity--multiplexing">
<span class="flex items-center">
<div class="relative mr-4 w-[32px] h-[32px] min-w-[32px] min-h-[32px]">
<img class="absolute object-cover is-pixelated w-full h-full" src="assets/minecraft/textures/item/honeycomb.png">
</div>
Account Multiplexing
</span>
<div class="inline-flex shrink-0">
<span class="bg-gray-100 text-gray-800 text-sm font-medium mr-2 px-2.5 py-0.5 rounded dark:bg-gray-200 dark:text-gray-900 dark:opacity-50">waterfall</span>
<span class="bg-gray-100 text-gray-800 text-sm font-medium mr-2 px-2.5 py-0.5 rounded dark:bg-gray-200 dark:text-gray-900 dark:opacity-50">velocity</span>

<svg data-accordion-icon class="w-6 h-6 shrink-0" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
</div>
</button>
</h2>
<div id="body-feature-vane-waterfall--multiplexing" class="hidden">
<div id="body-feature-vane-velocity--multiplexing" class="hidden">
<div class="p-5 border border-b-0 border-gray-200 dark:border-gray-700 dark:bg-gray-900">
<div class="prose prose-slate prose-img:rounded-xl prose-img:w-1/3 prose-img:sm:m-4 prose-img:w-full prose-img:sm:w-1/2 prose-img:lg:w-2/5 prose-img:min-w-32 prose-img:max-w-full prose-img:float-right prose-img:clear-right prose-h1:clear-right prose-h2:clear-right prose-img:float-right dark:prose-invert max-w-none"><p>A multiplexer is an additional port for your server. When someone connects
via this port, they will be logged into a secondary player character. This also
Expand Down
2 changes: 1 addition & 1 deletion documentation/build.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash

function die() { echo "error: $*" >&2; exit 1; }

Expand Down
6 changes: 3 additions & 3 deletions documentation/content.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ vane-permissions = "red"
vane-portals = "indigo"
vane-regions = "sky"
vane-trifles = "sky"
vane-waterfall = "gray"
vane-velocity = "gray"

[[categories]]
id = "gameplay"
Expand Down Expand Up @@ -98,7 +98,7 @@ content = [
"vane-core/translations.md",
"vane-core/configurability.md",
"vane-admin/autostop.md",
"vane-waterfall/autostart.md",
"vane-waterfall/multiplexing.md",
"vane-velocity/autostart.md",
"vane-velocity/multiplexing.md",
"vane-core/uninstalling.md",
]
2 changes: 1 addition & 1 deletion documentation/content/vane-admin/autostop.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ module = "vane-admin"
---
To save on your server's resources, vane will shutdown your server when 20 minutes have passed
while the server is empty.
This feature is especially great combined with the [Autostart](#feature-vane-waterfall--autostart) feature by vane-waterfall,
This feature is especially great combined with the [Autostart](#feature-vane-velocity--autostart) feature by vane-velocity,
which automatically starts your server when someone tries to connect to it.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
```toml
title = "Autostart"
icon = "minecraft:textures/item/clock_00.png"
module = "vane-waterfall"
module = "vane-velocity"
```
---
This feature allows you to have your server automatically start when a player tries to connect to it.
This is part of vane-waterfall, a plugin for a server proxy like [BungeeCord](https://www.spigotmc.org/wiki/bungeecord/) or [Waterfall](https://docs.papermc.io/waterfall).
This is part of vane-velocity, a plugin for the [Velocity](https://papermc.io/software/velocity) proxy server.

Check out our [Server Installer](https://oddlama.github.io/minecraft-server) for information on how set this up correctly.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
```toml
title = "Account Multiplexing"
icon = "minecraft:honeycomb"
module = "vane-waterfall"
module = "vane-velocity"
```
---
A multiplexer is an additional port for your server. When someone connects
Expand Down
6 changes: 6 additions & 0 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,12 @@
packages = [
pkgs.temurin-bin-17
(pkgs.gradle.override {java = pkgs.temurin-bin-17;})
(pkgs.python3.withPackages (ps: [
ps.markdown
ps.toml
ps.pyyaml
]))
pkgs.nodejs
];
};

Expand Down
1 change: 0 additions & 1 deletion settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,3 @@ include(":vane-proxy-core")
include(":vane-regions")
include(":vane-trifles")
include(":vane-velocity")
include(":vane-waterfall")
2 changes: 1 addition & 1 deletion sign_and_zip.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ echo "[+] Creating all-plugins.zip"
cd target \
|| die "Could not cd into target/"
rm all-plugins.zip &>/dev/null
zip -r all-plugins.zip vane*.jar -x "vane*plexmap*.jar" -x "vane*waterfall*.jar" -x "vane*velocity*.jar" \
zip -r all-plugins.zip vane*.jar -x "vane*plexmap*.jar" -x "vane*velocity*.jar" \
|| die "Could not create all-plugins.zip"
60 changes: 0 additions & 60 deletions vane-waterfall/build.gradle.kts

This file was deleted.

This file was deleted.

This file was deleted.

Loading

0 comments on commit 789a51e

Please sign in to comment.