Commit graph

205 commits

Author SHA1 Message Date
RednedEpic
f2e606c0f3 Rename HYBRID AuthType back to FLOODGATE 2022-04-24 11:42:17 -05:00
Camotoy
4cb18ebf5b
Use stable version for maven-shade-plugin 2022-04-23 14:14:09 -04:00
Camotoy
67f4de9781 Actually bump to 2.0.3-SNAPSHOT 2022-04-17 20:10:16 -04:00
Camotoy
1ebc3fd8f6
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-04-07 19:22:46 -04:00
Camotoy
c610e98f4c
Spigot: fix loading on 1.12 2022-03-25 14:04:16 -04:00
Camotoy
80b6d14cee
Spigot: enable command completions for /geyser 2022-03-24 17:39:35 -04:00
RednedEpic
9939a26a5b Add RemoteServer API 2022-03-19 21:55:29 -05:00
RednedEpic
f53c3b71c0 Update dependencies 2022-03-19 20:46:30 -05:00
RednedEpic
4455dc0ded Merge remote-tracking branch 'origin/feature/extensions' into feature/extensions-gradle 2022-03-19 20:39:59 -05:00
Camotoy
9154a4571c Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-03-06 20:35:04 -05:00
Camotoy
a58239f15b Update Adapters to support 1.18.2 2022-03-04 15:25:33 -05:00
Camotoy
65b68087b8
Bump Geyser to 2.0.2 and Java to 1.18.2 2022-02-28 10:07:45 -05:00
RednedEpic
6321ecc166 Initial move to gradle 2022-02-27 16:38:55 -06:00
Camotoy
811ae178c9
Store recipes in a more compact GeyserRecipe type
This prevents us from storing some unnecessary data.

Also removes some 1.11 recipe compatibility code that is essentially unusable.
2022-02-21 16:11:51 -05:00
Camotoy
354e87b747
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-02-10 09:17:27 -05:00
Camotoy
e73a4efe60
Fix build; bump to 2.0.1-SNAPSHOT 2022-02-07 12:38:28 -05:00
RednedEpic
34d1dfde5e Add extensions permission to Spigot plugin.yml 2022-01-16 16:43:57 -06:00
RednedEpic
30303d5f16 Implement support for adding Geyser subcommands 2022-01-16 15:09:53 -06:00
Camotoy
6d577a3f4e
Add the Spigot change for the prior commit 2022-01-15 20:32:45 -05:00
Tim203
3251d9010c
We're in 2022 now 2022-01-01 20:03:05 +01:00
Camotoy
b246d5b4d1
Spigot: Temporarily work around issue where channel handlers don't see the connection
This 'fixes' issues where Floodgate may not work when the first player joins.
2021-12-28 15:36:45 -05:00
Camotoy
6318655e28
Print a logger warning if Geyser players will be unable to join this server
We check if ViaVersion supports our version and doesn't have us blocked, and if the server supports our version natively.
2021-12-27 13:58:09 -05:00
Konicai
6cd8b3387c
Cleanup some ping passthrough stuff (#2726) 2021-12-22 23:05:56 -05:00
Camotoy
7d5803bc37
Update Spigot adapters for 1.18 2021-12-13 13:35:11 -05:00
Camotoy
763743a845
Allow for implementations to provide a custom resource loader
This will allow Geyser-Fabric to work without resource loading issues. This commit also ensures try-with-resources is used anywhere a resource is accessed.
2021-12-03 11:01:06 -05:00
Camotoy
404613520f Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.18 2021-11-26 11:13:33 -05:00
YHDiamond
720045a03f
Add Advanced Tooltips command (#2632)
Co-authored-by: YHDiamond <47502993+yehudahrrs@users.noreply.github.com>
2021-11-26 10:49:28 -05:00
Camotoy
b2d1212359 Bump Geyser to version 2.0.0-SNAPSHOT 2021-11-24 10:14:27 -05:00
Camotoy
966c2155ad
API: change player class to Connection 2021-11-22 14:52:26 -05:00
RednedEpic
83ddbd7d1a Initial api draft 2021-11-21 12:36:42 -06:00
RednedEpic
2c663e0ee5 The Great Refactor Part 3 - Entire project restructure 2021-11-20 17:29:46 -06:00
RednedEpic
3f5cb29ee0 The Great Refactor Part 2 - org.geysermc.connector -> org.geysermc.geyser 2021-11-20 15:34:30 -06:00
RednedEpic
0b5009b415 The Great Refactor Part 1 - connector -> core 2021-11-20 13:56:40 -06:00
Camotoy
6249292903
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.18 2021-11-14 13:38:22 -05:00
RednedEpic
e5869c00d6 Update to new renames in MCProtocolLib 2021-11-13 23:07:24 -06:00
Camotoy
768b09e7fd
Update to latest MCProtocolLib with Mojang mappings 2021-11-12 22:44:15 -05:00
David Choo
adbadbbba4
Prevent blocks destroyed by pistons from moving on Geyser-Spigot (#2627) 2021-11-12 20:36:01 -05:00
Camotoy
5d58394bc0
Move all PacketLib local channel classes to Geyser 2021-11-12 11:25:15 -05:00
Camotoy
09e3793fb2
Refactor GeyserSession tracking for better concurrency 2021-11-12 09:02:14 -05:00
Konicai
1929a5be83
Fix help command (#2604)
* Always pass session to execute() if the sender is a geyser player

* cleanup
2021-10-31 00:22:41 -05:00
Konicai
f883dfdf2c
Remove commands from autocomplete/help list that cannot be run (#2602)
* only tabcomplete for commands the sender has permission for

* set permission defaults for spigot

* Make velocity autocomplete on arg length 0 and 1

* fix advancements perm in spigot plugin.yml and add settings perm

(whoops)

* don't show bedrock commands to java players

* modify spigot perm defaults

* censor help menu, abstract tab complete code

* Bedrock players don't get cmd argument suggestions

* update spigot plugin.yml
2021-10-30 20:57:54 -05:00
Jens Collaert
7454033277
Register /geyser stop only on standalone (#2569)
We don't want to condone stopping Geyser in the middle of a plugin session, especially when there's no way to start it back up again.
2021-10-13 13:09:19 -04:00
Camotoy
11bc083885
Update MCProtocolLib; add clearer errors for various connection issues
Errors that are a result of online mode and offline mode clashes are now clarified.
Users will now get a clearer message stating that the server is offline.

Resolves #2501
2021-10-07 11:00:43 -04:00
Camotoy
7cd3eb99ef
Always check for a key in Floodgate's folder first on plugin versions
This should avoid people trying to incorrectly copy the key.
2021-10-02 14:00:10 -04:00
Camotoy
43bef851c7
Don't shade any Google dependency
All server platforms have modern enough Google dependencies that nothing should break. Tested with Velocity, BungeeCord, Spigot 1.12.2/1.16.5/1.17.1.
2021-09-26 20:54:44 -04:00
Camotoy
4ecdcbb7c3
Preface Spigot injector messages with a warning 2021-09-10 21:18:24 -04:00
Camotoy
bc0cfde8f9
Set the minimum Java version to 16; drop Bedrock 1.17.0 (#2477) 2021-09-10 14:10:56 -04:00
David Choo
8461cf76b7
Smooth Pistons (#1542)
With proper piston collision for players as well.
2021-09-09 21:20:25 -04:00
Camotoy
0069566803
Dependency update; re-use Thread.MAX_PRIORITY for Spigot; other network optimizations 2021-08-31 19:57:56 -04:00
Camotoy
b9541505af
Bump version to try and fix deploying; other nitpicks 2021-08-30 13:55:01 -04:00
Camotoy
76399881a3
Use legacy DefaultEventLoopGroup constructor; label Geyser <-> Spigot connection thread 2021-08-16 22:33:14 -04:00
Camotoy
a197f60446
Move use-direct-adapters to system property 2021-07-31 13:54:51 -04:00
Camotoy
002be32bb3
Connect Geyser players directly to the server for plugin versions (#2413)
- Faster loading times and improved latency; Geyser no longer creates a physical TCP connection to join the server
- Less configuration: remote address and port are now irrelevant
- Accurate IP addresses without needing Floodgate.

Co-authored-by: Redned <redned235@gmail.com>
2021-07-31 12:52:49 -04:00
Konicai
b86648332a
Auth type refactor in internal config (#2410) 2021-07-28 19:44:09 -04:00
RednedEpic
ff280ef192 Replace Reflections usage with an annotation processor
Reduces jar size by about 1.5-2mb
2021-07-17 13:36:04 -05:00
Redned
f7ef90278b
Implement a new registry system (#2306)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-07-12 21:19:40 -04:00
Camotoy
62174c0e3b
Spigot plugin fixes
- If non-NMS world adapter: don't try to load a chunk if it doesn't exist
- Don't error out with older Spigot versions if a gamerule doesn't exist
2021-06-28 20:48:44 -04:00
Camotoy
5b1d815926
Bump NMS adapter version 2021-06-26 14:08:59 -04:00
Camotoy
3220190904
Relocate ASM (fixes #2315) 2021-06-23 13:57:03 -04:00
Camotoy
3a2cff7864
Clean up a bunch
Mostly checked with IntelliJ, but manually performed. The only issue I possibly anticipate is item name/lore issues, but the new method should be technically better.
2021-06-20 21:42:22 -04:00
Camotoy
511cfd1ae8
Update Geyser version to 1.4.0-SNAPSHOT 2021-06-08 08:55:56 -04:00
Camotoy
b41552faf3
Use ViaVersion master branch 2021-06-07 14:56:29 -04:00
Camotoy
3cdc4c767d
Don't start if Floodgate is outdated 2021-06-06 19:01:16 -04:00
Camotoy
19f8e2dfac
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17 2021-06-06 11:42:59 -04:00
Tim203
1ded2086e3
Merge remote-tracking branch 'origin/floodgate-2.0' into feature/1.17
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
2021-06-06 01:16:57 +02:00
Camotoy
4f23066b88
Merge branch 'viaversion4.0.0' into feature/1.17 2021-06-02 11:55:48 -04:00
Camotoy
ebf726ce9e
Yeet cache chunks
So many features require this config option, and we don't intend on supporting it being both disabled and enabled.
2021-06-01 15:36:33 -04:00
Konicai
4c542ba2c4
Register permissions in Spigot plugin.yml (#2246) 2021-05-31 22:35:25 -04:00
Tim203
776fc4e933
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/GeyserConnector.java
#	connector/src/main/java/org/geysermc/connector/utils/SettingsUtils.java
2021-05-26 02:17:33 +02:00
Camotoy
505de0e0d5
Remove Geyser-Bukkit migration 2021-05-24 19:25:35 -04:00
Camotoy
986701f06f
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17 2021-05-23 21:31:40 -04:00
Camotoy
4734ce2059
Update MCProtocolLib + PacketLib (#2211)
By updating these dependencies, we bring in a couple fixes that should improve network performance:

    Use TCP_NODELAY for the Java connection
    Use Epoll/KQueue if possible for the Java connection
    Only use one event loop for the Java connection
    Fix Netty dependencies so Spigot and BungeeCord can use native network types

Currently, Geyser-Spigot pre-1.12 breaks with these changes. It is unlikely that this will be fixed.
2021-05-23 15:55:01 -04:00
Camotoy
b5307ab3ed
21w20a support 2021-05-19 22:24:11 -04:00
Camotoy
50bea0e180
Update to the latest ViaVersion changes 2021-05-01 00:30:01 -04:00
Camotoy
e45215d1ea
Update to support ViaVersion 4.0.0 for Spigot integration
This breaks compatibility with ViaVersion 3.2.1.
2021-04-24 15:18:41 -04:00
Camotoy
86b2901f02
1.16.220 support (#2105)
This update does not break compatibility with any other currently supported version of Bedrock.

Co-authored-by: Redned <redned235@gmail.com>
2021-04-06 00:14:06 -04:00
Tim203
644ece124f
Bumped Geyser version to 1.3.0-SNAPSHOT 2021-03-23 01:49:08 +01:00
Tim203
107cd5bd5a
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
2021-03-23 01:35:02 +01:00
Camotoy
1d8961c498
Allow GeyserWorldManager to be overwritten while still holding a cache (#2036) 2021-03-14 12:26:47 -04:00
Camotoy
48aa586b21
More formatting fixes 2021-03-13 18:07:43 -05:00
Tim203
4229db0a2f
Merge remote-tracking branch 'origin/server-inventory' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
2021-03-10 20:46:50 +01:00
Tim203
643098e09e
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/bedrock/BedrockServerSettingsRequestTranslator.java
2021-03-10 20:42:37 +01:00
Camotoy
ded00dfd97
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-09 14:45:04 -05:00
Camotoy
9ae7c1de25
1.16.210 support (#2019)
This commit implements 1.16.210 support while still keeping 1.16.100 and 1.16.210 compatibility.

Co-authored-by: AJ Ferguson <AJ-Ferguson@users.noreply.github.com>
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2021-03-09 12:51:48 -05:00
Camotoy
ad4196f5a0
Add spacing in lectern Spigot get code 2021-03-08 16:59:59 -05:00
Camotoy
da11cd298c
Address requests 2021-03-08 16:57:31 -05:00
Camotoy
6775d88704
Handle no-NBT lecterns 2021-02-26 21:53:24 -05:00
Camotoy
13c924f841
Make lecterns more reliable on chunk load in Spigot 2021-02-26 00:54:05 -05:00
Tim203
0832e7d65c
Fixes issue when both Geyser and Floodgate are on the same server 2021-02-25 20:55:00 +01:00
Tim203
c16c66b860
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/pom.xml
#	connector/src/main/java/org/geysermc/connector/GeyserConnector.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/bedrock/BedrockNetworkStackLatencyTranslator.java
#	connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java
#	connector/src/main/java/org/geysermc/connector/utils/SettingsUtils.java
2021-02-25 02:28:48 +01:00
Camotoy
47879c913b
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-04 21:25:29 -05:00
Camotoy
c26a2baed6
Add more metrics (#1896)
- Add the Java version being used
- Add the Minecraft server version being used, alongside the platform type that is using that version. Not used for proxies as those have to be on latest to support the latest Minecraft version
2021-02-03 19:54:35 -05:00
Camotoy
254990148c
Fix several world-related errors on Spigot 1.12 (#1886)
- Fix v1.12R1 not being recognized as a world adapter
- Return air if a chunk is not loaded
2021-02-03 19:54:12 -05:00
Tim203
5ad2510b87
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/command/defaults/SettingsCommand.java
#	connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/session/cache/WindowCache.java
#	connector/src/main/java/org/geysermc/connector/utils/LoginEncryptionUtils.java
#	connector/src/main/java/org/geysermc/connector/utils/StatisticsUtils.java
2021-02-01 12:02:49 +01:00
Camotoy
f7822e07eb
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-17 11:12:38 -05:00
Camotoy
2d9baf1bfc
Send message to Java if command is Bedrock-only (#1834)
* Send message to Java if command is Bedrock-only

If a Java player attempts to use a Bedrock-only command, such as `geyser statistics`, they will get an error message stating that this command is only for Bedrock players.

This commit also cleans up Velocity Adventure dependency usage. Issues were caused because of the way relocation works and because Velocity also uses Adventure.

* Only look for a session if we have to

* Update languages submodule
2021-01-16 22:18:13 -05:00
AJ Ferguson
196c9f5c17 Remove debug lines 2021-01-13 19:19:01 -09:00
Camotoy
4db9ec92bf
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-11 19:46:39 -05:00
Camotoy
2cc8726c12
Shade in the entire net.kyori package (#1826) 2021-01-11 14:11:21 -05:00
Camotoy
54fb56ea85
Add legacy crafting support for Spigot and finish up standalone 2021-01-09 16:45:32 -05:00