Commit graph

264 commits

Author SHA1 Message Date
Tim203
9f32ba81b1
Merge remote-tracking branch 'refs/remotes/origin/master' into feature/floodgate-merge
# Conflicts:
#	bootstrap/bungeecord/base/build.gradle.kts
#	bootstrap/spigot/base/build.gradle.kts
#	bootstrap/spigot/base/src/main/java/org/geysermc/geyser/platform/spigot/GeyserSpigotInjector.java
#	bootstrap/velocity/base/build.gradle.kts
#	core/build.gradle.kts
#	core/src/main/java/org/geysermc/geyser/GeyserImpl.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/java/JavaCustomPayloadTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
#	gradle.properties
#	gradle/libs.versions.toml
#	settings.gradle.kts
2024-05-09 18:04:56 +02:00
onebeastchris
255835438d viaversion 4.10.0 compat, indicate 1.20.6 support on modrinth 2024-04-30 21:59:38 +02:00
onebeastchris
dd745b901f move to paper-adapters 2024-04-30 20:48:10 +02:00
onebeastchris
5d3630cf23 ominous banners - this really isn't ideal 2024-04-29 23:19:18 +02:00
onebeastchris
8b7b8cdffd Properly shutdown LocalSession's, ensure transferring works properly regardless if we're injected or not 2024-04-29 16:08:14 +02:00
onebeastchris
9b1e45007a Fix injectors, should work with Spigot/Paper 1.20.5 now 2024-04-28 23:41:13 +02:00
onebeastchris
91a74603c7 idea: deal with cookies and transfer 2024-04-26 14:50:48 +02:00
Camotoy
b29e0d9d10
Move MCProtocolLib to dev - package ID change 2024-04-24 16:39:35 -04:00
onebeastchris
c48428daf0
init: pick item component change 2024-04-24 16:26:58 -04:00
chris
94f664ad8d
Fix: Properly check whether the so_reuseport socket option is available (#4579)
* Try to properly check if so_reuseport is available

* io_uring "support"

* comment out io_uring, for now

* Make IO_uring opt-in via `-DGeyser.io_uring=true` flag

* dont include io_uring

* oops - bungee 

editing on mobile is hard

* oops - spigot

* oops - velocity

* properly exclude all io_uring on all platforms except standalone

---------

Co-authored-by: Kas-tle <26531652+Kas-tle@users.noreply.github.com>
2024-04-19 11:50:40 +02:00
chris
867cf6da05
Feature: JiJ dependencies on modded platforms (#4502)
* Use JiJ inclusion for Fabric/NeoForge to prevent mod conflicts. Further: Don't publish shadow jars to maven.

* Shade and relocate dependencies that don't conform to SemVer on Fabric

* Shade/Relocate dependencies on Fabric to avoid version warnings

* Use relocate function from the build-logic plugin
2024-03-19 23:05:30 +01:00
Tim203
120b367a41
Merge remote-tracking branch 'origin/master' into feature/floodgate-merge
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
2024-03-18 16:38:52 +01:00
chris
123990a795
Update ViaVersion api usage 2024-03-02 20:03:18 +01:00
Tim203
d44b523acb
Isolated Velocity 2024-02-25 20:00:03 +01:00
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
3288f422b1
Update ViaVersion api usage (#4386)
- Switch to fluent accessor, since the getter was removed after being deprecated for 3 years
2024-01-12 15:39:53 +01:00
chris
592a58a0c8
Use uuid for bukkit api permission checks (#4363)
* lookup players by uuid instead of name

* Fix: look up Players by UUID for permissions, dont throw if a player can't be found (e.g. disconnected)

* use api method
2023-12-25 20:43:13 +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
Konicai
bb6a1ec40a
Simply pingpassthrough logic, add fabric ping passthrough (#3930)
* Check if PingPassthrough is null
* Remove QueryPacketHandler
* Fabric ping passthrough
2023-11-13 18:17:40 -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
Tim203
cdd0f9a75e
We don't have to add handshake data when Floodgate is integrated 2023-10-12 19:54:22 +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
806ec35a84
Feature: Allow client-side "game settings" menu gamemode/difficulty changes (#4062)
Removes difficulty/Gamemode settings from the custom server settings form since these are now present in the client side settings.
2023-09-09 00:34:19 +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
Konicai
40775149f5
NMS adapter for spigot 1.20 (#3911) 2023-06-28 00:31:03 -04: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
Kas-tle
f3cc93c94e
Relocate org.yaml for bungee and spigot (#3820)
* Relocate org.yaml

* Spigot did the same for yaml sadly
2023-06-07 13:22:36 -05: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
Camotoy
b6113dfd31 Optimizations and regression fix 2023-04-06 21:47:37 -04:00
Camotoy
8083f70435 KQueue no longer needs to be shaded in on Spigot/Fabric 2023-04-06 19:54:22 -04:00
Camotoy
d9811d08e3 Merge remote-tracking branch 'origin/master' into feature/protocol-3.0 2023-04-06 13:26:28 -04:00
Camotoy
e2535108e6
Folia support and preparations for future changes 2023-03-30 15:44:55 -04:00
Camotoy
323394d2b5
Clean up jar file classes a bit 2023-03-26 13:20:53 -04:00
YouHaveTrouble
81f0cbe5ed
Assign permission to the command (#3599)
Assigning permission allows people to possibly deny that permission to hide the command from tab complete list.
Permission is defaulted to true, so command keeps current behavior by default.
2023-03-07 12:54:41 -05:00
SupremeMortal
1769f2a85c
Merge branch 'master' into feature/protocol-3.0 2023-02-14 22:09:48 +00: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
Camotoy
3e778cdb49
Merge branch 'feature/protocol-3.0' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0 2022-12-20 20:01:05 -05:00
Camotoy
4fe9aeca40
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0 2022-12-20 19:47:45 -05:00
Camotoy
9656caf4cb
Merge branch 'compression' into dev 2022-12-18 13:21:07 -05:00