Commit Graph

55 Commits

Author SHA1 Message Date
Tim203 bc301fba60
Move platforms for isolation 2024-02-18 19:03:14 +01:00
Tim203 c8fd024e4a
Merge remote-tracking branch 'origin/master' into feature/floodgate-merge
# Conflicts:
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/fabric/src/main/java/org/geysermc/geyser/platform/fabric/GeyserFabricMod.java
#	bootstrap/spigot/src/main/java/org/geysermc/geyser/platform/spigot/GeyserSpigotPlugin.java
#	bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
#	bootstrap/velocity/src/main/java/org/geysermc/geyser/platform/velocity/GeyserVelocityPlugin.java
#	bootstrap/velocity/src/main/java/org/geysermc/geyser/platform/velocity/floodgate/FloodgateModule.java
#	common/src/main/java/org/geysermc/floodgate/crypto/AesKeyProducer.java
#	common/src/main/java/org/geysermc/floodgate/crypto/FloodgateCipher.java
#	common/src/main/java/org/geysermc/floodgate/news/NewsItem.java
#	common/src/main/java/org/geysermc/floodgate/news/NewsItemMessage.java
#	common/src/main/java/org/geysermc/floodgate/news/NewsType.java
#	common/src/main/java/org/geysermc/floodgate/news/data/BuildSpecificData.java
#	common/src/main/java/org/geysermc/floodgate/news/data/ConfigSpecificData.java
#	common/src/main/java/org/geysermc/floodgate/util/BedrockData.java
#	common/src/main/java/org/geysermc/floodgate/util/LinkedPlayer.java
#	common/src/main/java/org/geysermc/floodgate/util/WebsocketEventType.java
#	core/src/main/java/org/geysermc/geyser/GeyserBootstrap.java
#	core/src/main/java/org/geysermc/geyser/GeyserImpl.java
#	core/src/main/java/org/geysermc/geyser/floodgate/FloodgateProvider.java
#	core/src/main/java/org/geysermc/geyser/floodgate/GeyserLoadStage.java
#	core/src/main/java/org/geysermc/geyser/floodgate/NoFloodgateProvider.java
#	core/src/main/java/org/geysermc/geyser/network/netty/LocalSession.java
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
#	gradle.properties
2024-02-18 16:37:26 +01:00
chris 6a51d8298f
Feature: Rework startup logic (#4377)
* This makes `geyser reload` work the same across all platforms. For example, it ensures that we reload the config to the greatest extent possible (with the exception of compression/injection settings). Additionally, this clears up issues where Extensions were previously disabled during reloading - instead, the new Pre and Post reload events allow extensions to reload whatever necessary on their own.
2024-02-14 12:50:50 +01:00
chris 32a8573651
Fix broken netty util class check (#4357) 2023-12-20 17:59:51 +01:00
chris f3e56d282e
Gracefully fail on older spigot builds due to outdated netty (#4355)
* Test for outdated netty to avoid https://github.com/GeyserMC/Geyser/issues/3814

* capitalization

* bad spigot, go paper
2023-12-20 16:35:48 +01:00
chris 95d65350e4
Project wide syntax/annotation cleanup (#4238)
Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>
2023-12-05 18:54:42 -05:00
Tim203 dab61ac41a
Merge remote-tracking branch 'origin/master' into feature/floodgate-merge
# Conflicts:
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/velocity/src/main/java/org/geysermc/geyser/platform/velocity/GeyserVelocityPlugin.java
#	core/src/main/java/org/geysermc/geyser/configuration/GeyserConfiguration.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCustomPayloadTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
2023-10-12 21:10:01 +02:00
chris 34ff8c1217
Allow extensions to load other extension's classes, and store extensions by IDs instead of name (#3946)
- the extensionmanagers `extension` method now takes in a extension id instead of name
- extension folders are now created using extension id's
- Extensions can load classes from other extensions now
- Added warning about external class loading
- Wherever applicable: store extensions internally by id instead of name
2023-10-01 07:17:53 +02:00
Tim203 a894ce9824
Updated Gradle to 8.3 and made Geyser work with latest Floodgate 2023-09-30 19:41:35 +02:00
Tim203 05eb054559
Merge remote-tracking branch 'origin/master' into feature/floodgate-merge 2023-09-24 10:44:56 +02:00
chris 00def3b0c6
Fix duplicate extension's help command permission registration on Paper (#4079)
* Fix duplicate permission registration

* Register /<extensionid> help (and aliased ?) commands under the "geyser.command.exthelp.id" permission

* Fix: Show correct header for /geyser help vs /<extensionid> help
2023-08-27 13:48:14 +01:00
rtm516 f272ed9383
Move PlatformType to API and expose it for extensions (#3798)
* Move PlatformType to API and expose it for extensions

* Move to a record
2023-06-17 02:56:50 +01:00
Tim203 d14a20845d
Some additional merge changes 2023-05-05 18:22:31 +02:00
Tim203 6ca53f5bf3
Merge remote-tracking branch 'origin/feature/floodgate-merge'
# Conflicts:
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/fabric/src/main/java/org/geysermc/geyser/platform/fabric/GeyserFabricMod.java
#	bootstrap/spigot/src/main/java/org/geysermc/geyser/platform/spigot/GeyserSpigotPlugin.java
#	bootstrap/sponge/src/main/java/org/geysermc/geyser/platform/sponge/GeyserSpongePlugin.java
#	bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
#	bootstrap/velocity/src/main/java/org/geysermc/geyser/platform/velocity/GeyserVelocityPlugin.java
#	core/build.gradle.kts
#	core/src/main/java/org/geysermc/geyser/GeyserImpl.java
#	core/src/main/java/org/geysermc/geyser/command/defaults/VersionCommand.java
#	core/src/main/java/org/geysermc/geyser/dump/DumpInfo.java
#	core/src/main/java/org/geysermc/geyser/entity/type/FireworkEntity.java
#	core/src/main/java/org/geysermc/geyser/network/netty/LocalSession.java
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockCommandRequestTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockNetworkStackLatencyTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCustomPayloadTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/level/JavaBlockUpdateTranslator.java
#	gradle/libs.versions.toml
2023-05-05 12:09:20 +02:00
Camotoy c8afd3436d Fix Floodgate autodetection 2023-04-26 21:11:26 -04:00
Tim203 7c1100b830
Fixed auto-setting auth-type to Floodgate 2023-04-26 18:53:03 +02:00
Julian Vennen f39e689b83
Implement System properties to set the udp port and address #3597 (#3689)
* System property stuff

* Add geyserUdpPort/Address system properties as overrides for pluginUdpPort/Address

* Fix formatting for if-else statements

---------

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2023-04-22 21:33:23 -04:00
Tim203 ca7d57e541
Merge remote-tracking branch 'origin/master' into feature/floodgate-merge 2023-02-08 13:57:30 +01:00
Camotoy 29f234d030 Fix /geyser reload on Spigot
Fixes #3478
2023-01-29 22:15:26 -05:00
Tim203 1d2103f265
Allow Floodgate to be run in Geyser Velocity 2022-11-10 21:14:07 +01:00
Camotoy 1c49036e3a
Proof-of-concept for Geyser-Floodgate merge 2022-11-06 21:32:55 -05:00
Camotoy 07c7b2f7f8
Clean up on legacy code that will no longer trigger 2022-10-03 13:33:24 -04:00
Camotoy 7f05ab9d22
Fix reloading on Spigot
Fixes #3319
2022-10-03 13:15:30 -04:00
Camotoy 47d14e12eb
Geyser now requires 1.13.2+ on Spigot 2022-09-30 11:58:09 -04:00
Camotoy 7cd71f570f Fix some ordering that regressed some behavior 2022-09-20 13:18:41 -04:00
Camotoy 6df8740955
Only register commands on Spigot if the extension has commands 2022-09-14 14:19:56 -04: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
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
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 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 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 23923d734f
Ensure old Paper builds can still use ping passthrough 2022-06-22 22:18:32 -04:00
ImDaBigBoss db003293e9 Merge master 2022-06-12 10:33:32 +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 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 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
Camotoy 9154a4571c Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-03-06 20:35:04 -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
RednedEpic 30303d5f16 Implement support for adding Geyser subcommands 2022-01-16 15:09:53 -06:00