Skip to content

Commit bef9ceb

Browse files
committed
Finish up read me for 1.0-pre1 release
1 parent d15e09d commit bef9ceb

File tree

3 files changed

+34
-6
lines changed

3 files changed

+34
-6
lines changed

README.md

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,28 @@ This is the Seriously Necessary Adapter Plugin to enable plugins written against
77

88
Simply add the Bungee plugins into the plugins folder inside the Snap plugin folder.
99

10-
Snap will load the plugins from there and translate methods, classes as well as event
11-
calls.
10+
Snap will use it's own instance of BungeeCord's plugin manager to load the plugins
11+
from there and translate BungeeCord methods, classes as well as event calls to the
12+
respective Velocity ones and vice versa.
1213

14+
## Why?
15+
16+
Originally I wanted to document the Velocity equivalents to Bungee events, methods
17+
and classes. This evolved into the idea of writing a converter for source code which
18+
led me to decide to try to make a plugin which can directly load Bungee plugins.
19+
20+
Seeing as the proxies don't have too much logic that seems to have worked although
21+
it is definitely a lot more inefficient than just running native Velocity plugins
22+
due lots of classes being in need of getting translated on the fly.
23+
24+
Technically this could be made in a way that is a lot more efficient by directly
25+
modifying the Velocity or BungeeCord source code to extend the respective other
26+
classes but in practice that massively increases the work required to get this
27+
plugin running, and that's all I wanted to do for now.
28+
1329
## What works?
1430

15-
Most of it (hopefully). I mean that's the goal...
31+
Most of it (hopefully). I mean that's the goal... make sure to report any issues!
1632

1733
## What doesn't work?
1834

@@ -40,7 +56,10 @@ If you are sure that the plugin will work fine otherwise then you can have it re
4056
- Some **ProxyConfig** settings don't exist on Velocity or aren't exposed in the API so
4157
they return some sensible defaults which should reflect the proxy's state.
4258
- Registering commands after a plugin was enabled. I currently have no good way to hook
43-
into this besides straight up modifying the PluginManager class
59+
into this besides straight up modifying the PluginManager class which I would like to
60+
avoid.
61+
- Velocity plugins and Bungee plugins are not available to each other via the respective
62+
PluginManager APIs and as dependencies. Their classes should be accessible though.
4463
- Some connection handling and related events might not work 100% exactly like on
4564
Bungee. They are as close as possible though but if you already have to fiddle with
4665
that then its best to create a standalone Velocity plugin tbh.
@@ -55,6 +74,16 @@ If you are sure that the plugin will work fine otherwise then you can have it re
5574

5675
You can download the jar via [GitHub releases](https://github.com/Phoenix616/Snap/releases)
5776
or get builds from the latest commits from the [Minebench.de Jenkins](https://ci.minebench.de/job/Snap/).
77+
78+
## How can I support the project?
79+
80+
For the start trying out the plugin and reporting what other plugins work and don't work
81+
would already help a ton figuring out what work is still needed.
82+
83+
Of course I would also appreciate [monetary help](https://tip.phoenix616.dev) if the plugin
84+
has helped you transition to Velocity either by directly using it or referencing its code to
85+
adapt Bungee plugins to get running on Velocity natively. (Did you know that GitHub is still
86+
doubling donations to [my GitHub Sponsors page](https://ghsponsor.phoenix616.dev)? 😉)
5887

5988
## Is it open source?
6089

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
<groupId>de.themoep</groupId>
99
<artifactId>snap</artifactId>
10-
<version>1.0-SNAPSHOT</version>
10+
<version>1.0-pre1</version>
1111

1212
<properties>
1313
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

src/main/java/de/themoep/snap/SnapBungeeAdapter.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
import de.themoep.snap.forwarding.listener.PluginMessageListener;
3535
import de.themoep.snap.forwarding.listener.PostLoginListener;
3636
import de.themoep.snap.forwarding.listener.PreLoginListener;
37-
import de.themoep.snap.forwarding.listener.ProxyDefineCommandListener;
3837
import de.themoep.snap.forwarding.listener.ProxyPingListener;
3938
import de.themoep.snap.forwarding.listener.ProxyQueryListener;
4039
import de.themoep.snap.forwarding.listener.ProxyReloadListener;

0 commit comments

Comments
 (0)