Commit graph

246 commits

Author SHA1 Message Date
Camotoy
6df8740955
Only register commands on Spigot if the extension has commands 2022-09-14 14:19:56 -04:00
RednedEpic
8fb22ee225 Merge branch 'master' into feature/extensions 2022-09-04 16:42:14 -05:00
RednedEpic
896bf7c218 Fix bungeecord startup and move version checks to onLoad 2022-09-04 16:19:56 -05:00
ImDaBigBoss
f1da9d7072 Allow events to be registered by any class
Supersedes & closes #3073

Co-authored-by: Redned <redned235@gmail.com>
2022-09-04 16:11:08 -05:00
RednedEpic
e5337b6298 Reintroduce GeyserDefineCommandsEvent and cleanup a few things 2022-09-04 13:08:17 -05:00
Camotoy
94d56f04bb
Spigot: Use most compatible signature for CommandSender#sendMessage 2022-08-29 12:29:45 -04:00
Kas-tle
f1642d81dc
Fix comment 2022-08-24 13:41:24 +00:00
Kas-tle
dc29d997fd
Exclude from relocation, not inclusion 2022-08-24 05:18:12 +00:00
Kas-tle
e35f3785b2
Resolve fallout 2022-08-24 04:53:13 +00:00
Kas-tle
9232310b4d
Upstream 2022-08-24 04:53:00 +00:00
Camotoy
67a65c45d3
Implement update notifications for Geyser
Geyser installations will now get notified when a new Bedrock release is out and Geyser must be updated. The system works similarly to ViaVersion where OPs get a notification of an update when they join. The permission node for players to see update notifications is `geyser.update` and the backing JSON that controls this can be found at https://github.com/GeyserMC/GeyserSite/blob/gh-pages/versions.json. There is also a config option to disable update checking.

This update also fixes modern Paper installations not being able to see colored text logged from Geyser in the console.
2022-08-21 21:22:15 -04:00
Camotoy
88727fb473
Bump Geyser to version 2.0.7-SNAPSHOT and default Bedrock to 1.19.20 2022-08-09 20:30:49 -04:00
Konicai
aee43e68fa
Merge remote-tracking branch 'upstream/master' into feature/extensions
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/command/CommandManager.java
#	core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
#	core/src/main/resources/languages
#	pom.xml
2022-08-02 00:01:05 -04:00
Camotoy
45b05d14be
Compiles; bump version 2022-07-27 16:38:51 -04:00
Camotoy
40fde6b046
Some nitpicks and cleaning up the provider API
The command changes here are not final. Internally we're discussing if we want to allow extensions to register root commands on platforms.
2022-07-26 18:33:39 -04:00
Camotoy
fcd567808f
This was supposed to be a debug log 2022-07-16 00:12:57 -04:00
Kas-tle
0335c8263c
Address @Camotoy's review 2022-07-13 16:20:42 +00:00
Kas-tle
d1fbb909a5
fixed java 16 thanks to @davchoo 2022-07-12 17:09:48 +00:00
Kas-tle
2dbd39c5a4
Per review by @Camotoy 2022-07-12 16:33:57 +00:00
Kas-tle
bca6359f7e
1.19.10 fallout 2022-07-12 05:29:39 +00:00
Kas-tle
363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions 2022-07-12 05:26:52 +00:00
Camotoy
83ba6b5ab5
Extensions have their own command 2022-07-10 20:58:48 -04:00
Camotoy
4656383c67
Bump to 2.0.5-SNAPSHOT 2022-07-10 17:05:19 -04:00
Camotoy
23923d734f
Ensure old Paper builds can still use ping passthrough 2022-06-22 22:18:32 -04:00
Julian Vennen
3a5e5fe9f0
Update Paper APIs to 1.19; fix ping passthrough for new Spigot+ builds (#3078) 2022-06-22 22:11:58 -04:00
Camotoy
08241b8bd8
Spigot: Ensure surprise method/constructor changes won't stop ping passthrough from working
Fixes #3079 but will need more work
2022-06-20 22:57:49 -04:00
Camotoy
2af10ad8bd
Update for 1.19 2022-06-18 16:45:50 -04:00
Camotoy
37d6fd8abf
Add an option to disable compression for Geyser clients 2022-06-16 19:18:11 -04:00
Camotoy
4a9581c5a6
Update Spigot adapters for 1.19 2022-06-13 13:47:05 -04:00
ImDaBigBoss
db003293e9 Merge master 2022-06-12 10:33:32 +02:00
ImDaBigBoss
795bec91d7 Fixed plugin.yml for spigot 2022-06-11 10:03:19 +02:00
Camotoy
691d674f01
Use PaperServerListPingEvent when available
We need to support this or else events that exclusively use PaperServerListPingEvent will not see our call.

Fixes https://github.com/GeyserMC/Geyser/issues/3003
2022-06-09 21:40:54 -04:00
ImDaBigBoss
4e2f74481b Updated to 1.19 2022-06-08 14:09:14 +02:00
Camotoy
5a1e6a6d08
Fix Geyser booting on Spigot 1.19 2022-06-07 14:46:59 -04:00
Camotoy
2595eae300 Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
Tim203
3582d5cd6f
Changed back the Geyser version and use Cumulus 1.1 2022-06-07 00:19:59 +02:00
Tim203
5fe24ac867
Merge remote-tracking branch 'origin/feature/1.19-bedrock' into feature/cumulus-1.1
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/session/cache/AdvancementsCache.java
2022-06-07 00:14:43 +02:00
RednedEpic
bcc68ee4b5 Update to latest MCPL changes 2022-06-05 13:12:36 -05:00
RednedEpic
56daefb0a0 Update PaperMC repo 2022-06-05 13:08:32 -05:00
Tim203
84bcadc687
Converted the new forms 2022-05-28 23:45:35 +02:00
Camotoy
f38c1fbc0f
Spigot: programmatically add Geyser permissions and fix reloading 2022-05-06 15:32:43 -04:00
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