Commit graph

523 commits

Author SHA1 Message Date
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
62bd2cc543 Allow any 1.19 version 2022-08-18 19:33:08 -04:00
Camotoy
e960303352 Update Geyser version 2022-08-13 20:27:13 -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
7121051d9a
Merge mistake fixes 2022-08-02 00:25:07 -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
51d9320500
Bungee: Check for potentially outdated proxies 2022-08-01 11:01:24 -04:00
Carlos Ramos
8b300426dc Update for Java 1.19.1 and Geyser 2.0.6-SNAPSHOT (#62)
* Updated to Minecraft 1.19.1

* Update fabric.mod.json
2022-07-28 19:56:13 -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
25289a3606
Error out gracefully when Velocity is outdated 2022-07-22 23:32:43 -04:00
Camotoy
0efd04dd87
Initial code for /geyser connectiontest
This command acts as a testing ground for debugging Unable to Connect to World. More checks will be added in the future.
2022-07-20 19:59:03 -04:00
Camotoy
fcd567808f
This was supposed to be a debug log 2022-07-16 00:12:57 -04:00
Camotoy
bd34d65580 Update README.md 2022-07-14 17:01:09 -04:00
Camotoy
2f1fa6d417 Update to 2.0.5-SNAPSHOT 2022-07-14 16:52:58 -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
897c4dcfec
Changes 2022-07-09 18:39:02 -04:00
ImDaBigBoss
36c49a7256
Custom item support for extensions (#2822)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-02 12:50:16 -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
3b32b16bc8 Properly exclude Fastutil 2022-06-14 21:49:47 -04:00
Camotoy
fb03885eb8 Consistent file name; remove Netty IO_Uring 2022-06-14 21:33:50 -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
David Choo
2a89eab100 Update for Java 1.19 and Geyser 2.0.4-SNAPSHOT (#53)
* Update for 1.19 and 2.0.4-SNAPSHOT

* Use mod version in Geyser dependency
2022-06-07 20:10:12 -04: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
davchoo
f079ee430b
Fix missing startup debug logs on Standalone 2022-05-27 02:03:45 -04:00
Camotoy
4b4529c590 Prevent NPE with new language overrides 2022-05-16 13:26:53 -04: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
Konicai
d1cedbb823
Generate velocity-plugins.json and relocate fastutil (#2940) 2022-04-20 12:36:10 -04:00
Camotoy
5ab6952278 Update to 2.0.3-SNAPSHOT 2022-04-19 10:36:22 -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
Stepan Usatiuk
d4b1961662 Update download link to 1.18 (#47) 2022-03-12 10:45:25 -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
05f7b01540 Relocate Adventure 2022-03-04 22:23:58 -05:00
Camotoy
a58239f15b Update Adapters to support 1.18.2 2022-03-04 15:25:33 -05:00
Camotoy
c977e36368
Deprecate userAuths in favor of a saved token system 2022-03-03 18:52:26 -05:00
Camotoy
3e71e3fb0b Require 1.18.2 2022-02-28 14:30:00 -05:00
Camotoy
5a5b2794a5 Bump to 2.0.2-SNAPSHOT 2022-02-28 10:19:13 -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
0251bb64b8
Update JLine
Fixes #2867
2022-02-26 14:26:13 -05: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
rtm516
9ea59d616e
Add sonarcloud analysis 2022-02-10 18:52:14 +00:00
Camotoy
354e87b747
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-02-10 09:17:27 -05:00
Camotoy
dcb91f34b8 Bump to 2.0.1-SNAPSHOT 2022-02-07 12:55:08 -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
RednedEpic
8e774ea314 Bump log4j2 to 2.17.1
Not really a concern as attackers need file access to actually exploit this, but always worth staying up to date regardless :)
2021-12-28 23:31:38 -06: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
51c77fe808 Remove invalid params 2021-12-28 11:33:24 -05:00
Camotoy
91095beb52 Attempt to re-enable publishing 2021-12-28 11:14:30 -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
dependabot[bot]
3bf68af82d
Bump log4j-api from 2.16.0 to 2.17.0 in /bootstrap/standalone (#2712)
Bumps log4j-api from 2.16.0 to 2.17.0.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-api
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-18 18:21:52 +00:00
dependabot[bot]
90442a8922
Bump log4j-api from 2.15.0 to 2.16.0 in /bootstrap/standalone (#2700)
Bumps log4j-api from 2.15.0 to 2.16.0.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-api
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-14 15:54:57 -05:00
Camotoy
7d5803bc37
Update Spigot adapters for 1.18 2021-12-13 13:35:11 -05:00
Camotoy
752d984dd7
Standalone: bump Log4J to release 2.15.0 2021-12-09 22:07:17 -05:00
Camotoy
d5e69e5f2a
Bump Log4J version 2021-12-09 14:18:16 -05:00
Camotoy
f0213d4b8e
Minor fixes; add CPU count to dump 2021-12-03 20:26:20 -05:00
Camotoy
dd632ef4b1 Update for Geyser usage
This fixes https://github.com/GeyserMC/Floodgate-Fabric/issues/7 on the Geyser-Fabric end. Floodgate-Fabric still needs to be fixed.
2021-12-03 11:08:05 -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
257e04fa6f Comment out deploying; we shouldn't need it here 2021-12-02 11:32:57 -05:00
Camotoy
fafdf31fa5 Update Jenkinsfile 2021-12-02 11:14:12 -05:00
Camotoy
5089067e4d Bump version to 2.0.0-SNAPSHOT; update Gradle wrapper 2021-12-02 11:10:22 -05:00
Akashii Kun
4f44fa8358 Java-1.18 (WIP) (#43) 2021-12-02 11:08:25 -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
4bbea1de68 Merge across 1.18 protocol changes 2021-11-13 23:36:43 -06:00
RednedEpic
e5869c00d6 Update to new renames in MCProtocolLib 2021-11-13 23:07:24 -06:00
Camotoy
363171b80c
Add BungeeCommandExecutor random changes and remove completed TODO 2021-11-13 23:52:11 -05: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
Camotoy
62cded2daf
Allow Geyser-BungeeCord to continue working after /greload
We won't support reloading (neither does BungeeCord nor Waterfall), but at least Geyser will continue working after such a command is performed.
2021-11-09 11:44:28 -05:00
Konicai
3f88f20272 Refactor perms and upstream (#35)
* refactor permissions

* upstream

* remove shutdown from the command list

* make FabricWorldManager#getPlayer() private
2021-10-31 19:46:51 -04: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
Camotoy
29fa4a9443 Relocate Jackson dependency 2021-10-27 18:59:42 -04: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
byquanton
6cc092cc8e Fixed loadFloodgate method (#31)
Upstream Commit 7cd3eb99ef broke it
2021-10-09 14:47:10 -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
f1098a9207
Add Geyser listener into listeners set in BungeeCord
Will fix ViaVersion compatibility when https://github.com/ViaVersion/ViaVersion/pull/2698 gets merged.
2021-10-02 08:53:36 -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
cef3f5f1bd Update to 1.4.3-SNAPSHOT 2021-09-22 13:51:06 -04:00
Camotoy
4b05b74a9a
Velocity: only initialize injector on Minecraft listener bound 2021-09-17 22:04:29 -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
fda17077a0 Bump Geyser version to 1.4.2-SNAPSHOT 2021-08-30 14:27:13 -04:00
Camotoy
b9541505af
Bump version to try and fix deploying; other nitpicks 2021-08-30 13:55:01 -04:00
rtm516
65e85eb853
Fix bungeecord dump logs after 9fb5090 2021-08-25 11:31:12 +01:00
Jens Collaert
d26aed0a87
Allow uploading logs with mclo.gs link into dump (#2453) 2021-08-24 15:11:38 -04:00
David Choo
57c0185b45
Prevent projectiles from blocking the player's vision (#2472)
Prevent Snowballs, Eggs, and other throwable projectiles from blocking the player's screen
2021-08-17 22:44:33 -04:00
Camotoy
76399881a3
Use legacy DefaultEventLoopGroup constructor; label Geyser <-> Spigot connection thread 2021-08-16 22:33:14 -04:00
Camotoy
e20247b6d6
Allow enum fields to be set through standalone command line 2021-08-12 14:16:19 -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
7f21a68d8d Auth type refactor in internal config (#26) 2021-07-28 19:53:08 -04:00
Konicai
b86648332a
Auth type refactor in internal config (#2410) 2021-07-28 19:44:09 -04:00
Redned
e73b7f5941 Use Minecraft color codes in console/logs, clean up log output and fix #1606
TerminalConsoleAppender lets us use the legacy colors on their own, so don't do our own ANSI handling.
2021-07-24 12:52:28 -05:00
Camotoy
38539c2148 Exclude Google libraries from the built jar 2021-07-21 09:37:51 -04:00
Redned
1a0ac26398 Move leak detector to standalone bootstrap class 2021-07-18 17:44:08 -05: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