1
0
mirror of https://github.com/GeyserMC/Geyser.git synced 2026-01-06 15:41:50 +00:00
Commit Graph

1785 Commits

Author SHA1 Message Date
chris
d5bdb7f6b1 Merge branch 'master' into feature/custom-entities-api 2025-12-10 21:36:26 +01:00
onebeastchris
e4c11401db Update protocol to resolve more client crashes on 1.21.130, re-enable commands, bump version 2025-12-10 21:34:00 +01:00
onebeastchris
b1c1c42a3c Merge remote-tracking branch 'upstream/master' into this-is-the-entity-api
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/entity/type/player/MannequinEntity.java
#	core/src/main/java/org/geysermc/geyser/entity/type/player/SkullPlayerEntity.java
2025-12-10 17:23:48 +01:00
onebeastchris
bc8214793e Fix skins not appearing on avatar entities and player heads, update protocol library for further fixes 2025-12-10 17:15:01 +01:00
onebeastchris
0cdd31ea1f Fix client crashing with empty text packets 2025-12-09 19:06:40 +01:00
onebeastchris
14580e89d0 Proper 1.21.130 support, thanks sneaky protocol bump 2025-12-09 18:23:49 +01:00
chris
8509bf1f1a Merge branch 'master' into feature/custom-entities-api 2025-12-09 13:08:36 +01:00
chris
8a9533f4a5 Support 1.21.130 (#6022)
* Initial 1.21.130 support

* Fix custom block collisions on 1.21.130+, temporarily disable command suggestions

* a bit too much debug

* Update integrated pack

* Update Bedrock protocol / networking libraries

Pulls in:
- a30f21345a
- https://github.com/CloudburstMC/Network/pull/57
2025-12-09 13:05:55 +01:00
chris
a55e7b8d14 Merge branch 'master' into feature/custom-entities-api 2025-12-04 01:11:58 +01:00
onebeastchris
d4f07135f4 Set up feature branch publishing and vertical offset applying 2025-12-01 16:35:30 +01:00
onebeastchris
8a79001b4b Remove debug print, validate that entity definitions have been registered, setup publishing 2025-12-01 15:53:48 +01:00
onebeastchris
f3070f7509 Remove unused offsets 2025-12-01 01:44:46 +01:00
onebeastchris
a3b3c72124 Refactor: unify offset handling, always store Java entity position 2025-12-01 01:19:37 +01:00
onebeastchris
a497d3d84c API polishing; properly initialize height/width 2025-11-30 15:28:47 +01:00
onebeastchris
37f1285fbd Fix NPE in test 2025-11-30 02:30:16 +01:00
onebeastchris
b26b9d17fb Implement dirty entities to send updates once a tick 2025-11-30 02:25:43 +01:00
onebeastchris
460305a515 Api design goes brrr 2025-11-30 02:13:20 +01:00
onebeastchris
5a16517d3c Another couple changes, start designing an entity data system to set scale/variant/height/width and so forth 2025-11-27 22:52:47 +01:00
onebeastchris
75d5f07170 Apply some suggestions 2025-11-27 22:18:12 +01:00
onebeastchris
9e6b1333b3 Rename SessionAttachParrotsEvent -> ServerAttachParrotsEvent, fill in API Javadocs 2025-11-27 22:13:22 +01:00
onebeastchris
8f8e3bea8c Expose geyserId in API, add SessionAttachParrotsEvent 2025-11-27 18:45:08 +01:00
onebeastchris
52b76f5b6f Fix startup 2025-11-27 18:45:07 +01:00
onebeastchris
b2739e1948 More work on events, closer to working 2025-11-26 17:08:05 +01:00
onebeastchris
8ff763ba66 Width, height and offset should be tied to the Java entity type; and can now be modified in the ServerSpawnEntityEvent 2025-11-25 22:34:05 +01:00
onebeastchris
dbed595091 Fix: WorldGuard protected doors being openable for Bedrock players
Some doors just aren't open

Fixes https://github.com/GeyserMC/Geyser/issues/6001
2025-11-25 00:06:15 +01:00
onebeastchris
22414721ed Handle invalid skulls gracefully 2025-11-24 22:16:25 +01:00
onebeastchris
e726b91f08 Fix: "Invalid skin length" issue, code-of-conduct screen not appearing correctly on server switching, InputMode / UiProfile not being read correctly
Fixes https://github.com/GeyserMC/Geyser/issues/5995, fixes https://github.com/GeyserMC/Geyser/issues/5994
2025-11-23 21:28:14 +01:00
onebeastchris
142cbaee71 Continue splitting bedrock entities from java types 2025-11-23 17:54:18 +01:00
Camotoy
473a4a58fd Remove obsolete code 2025-11-22 20:44:04 -05:00
Camotoy
b9a09d2d4f Fix DeviceOS reading in BedrockClientData
This is possibly a Configurate/GSON regression as it appears JSON does not handle ordinal -> enum constant well.
2025-11-22 20:41:03 -05:00
onebeastchris
c57f2508cc EntityDefinition -> EntityTypeDefinition 2025-11-22 19:53:29 +01:00
onebeastchris
3392510326 Separate BedrockEntityDefinition from Entity classes 2025-11-22 17:53:38 +01:00
onebeastchris
6fab587227 CustomEntityDefinition should extend GeyserEntityDefinition 2025-11-22 17:50:20 +01:00
onebeastchris
11e6b50d53 Move CustomEntityDefinition into custom package 2025-11-22 17:48:52 +01:00
Eclipse
a3869cf5f8 Implement CustomEntityDefinition, part one 2025-11-22 17:47:23 +01:00
Eclipse
e398c545f9 Add EntityDefinition#is 2025-11-22 17:44:55 +01:00
Eclipse
7fe8992ceb Work on exposing custom entity definitions in the API 2025-11-22 17:44:54 +01:00
Eclipse
d843745ded Further refactor EntityDefinition, create a Base class 2025-11-22 17:44:52 +01:00
Eclipse
0b8678e2f2 Allow creating custom entity types from API 2025-11-22 17:43:37 +01:00
Eclipse
f4156c61f6 Split EntityDefinition up into EntityDefinition and VanillaEntityDefinition, create GeyserEntityType, target custom entities MCPL 2025-11-22 17:43:35 +01:00
Eclipse
5a7bf1ba84 Start working on custom entity API (for real this time) 2025-11-22 17:41:00 +01:00
onebeastchris
a49ae8fade Print protocol version in join message 2025-11-21 18:56:44 +01:00
onebeastchris
b7e5f63672 Use new auth payload 2025-11-21 18:22:51 +01:00
onebeastchris
c0b4579436 Don't add invalid packet handler twice to subclient sessions 2025-11-21 18:09:04 +01:00
rtm516
846e0b5ce0 Fix trailing formatting characters causing OOB (#5990)
* Fix trailing formatting characters causing OOB

* Fix typo
2025-11-20 15:05:19 +01:00
chris
53596d05bc API 2.9.1: Support 1.21.124, add tint/isotropic method to custom block material, allowing updating entity properties immediately (#5991)
* Prepare for 1.21.124

* Add tint method and isotropic properties to block material instances (#5977)

* Add tint method and isotropic properties to block material instances

* Check if tint method is null before including it

* Lets cover the null check on render method too

* Allow updating properties immediately (#5961)

---------

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2025-11-20 14:52:56 +01:00
onebeastchris
c0c7b51935 Fix wrong comment of the show-cooldown config option 2025-11-19 22:07:16 +01:00
oryxel
8ba82dd7a1 Fix: swimming near water surface. (#5992)
* Fix: swimming near water surface.

* Only update if pose change.
2025-11-19 19:36:54 +01:00
onebeastchris
80db983a4c Indicate support for 1.12.12x, update Bedrock protocol library, bump Bedrock network dependency 2025-11-19 02:45:51 +01:00
Camotoy
765128ce42 Switch config system to Configurate (#5010)
* Start implementing Configurate config system

* More development

* Start migrating to Gson only

* Progress

* Update usage of WebUtils

* Most things now use Gson for JSON

* Allow tests to succeed by using new Gson version

* Use slightly cleaner version for Version deserializer

* Work around older Gson versions without record support

* GeyserCustomSkullConfiguration uses Configurate

* Fix regression in properties get

* New config used in core

* The configuration is gone. Long live the config.

* More changes and migrations away from Jackson

* Improve node ordering when updating configs

* typo

* Better check for ignoring non-configurate configs for considering comment moving

* Ensure metrics UUID is valid

* Initial advanced config

* Remove Jackson; finish config value placements

* Remove duplicate relocate declarations

* Let annotations work

* Renaming to PluginSpecific

* Use global bStats config where possible

* Fix test

* Re-introduce asterisk behavior in configs

* Remove GeyserPluginBootstrap as it's no longer necessary

* Remove old config.yml file

* Update Xbox achievement comment

* Apply suggestions from code review

Co-authored-by: chris <github@onechris.mozmail.com>

* No need to remove values anymore

* Fix: disable bstats relocation on platforms where it is not needed

* ensure it builds

* Update custom unavailable slot comment

Co-authored-by: chris <github@onechris.mozmail.com>

* Update cooldown image

* Logger message for direct-compression still being enabled

* oops

* More explicit RuntimeException message

Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>

* Constant for 'system' locale

* Better config JSON encoding (something is broken with Cloudflare; we'll figure it out

* Fix broadcast port default

* Add this file too

* Update configurate branch

* fix build

* Fix: Allow using custom config file on Standalone, add relocation comment

* Move config loading to GeyserBootstrap interface

* Add and rename some config options, add section notes (#5390)

* Add and rename some config options, add section notes

* adjust message

* Update core/src/main/java/org/geysermc/geyser/command/defaults/ConnectionTestCommand.java

Co-authored-by: Eclipse <eclipse@eclipseisoffline.xyz>

* Update core/src/main/java/org/geysermc/geyser/configuration/GeyserConfig.java

Co-authored-by: Eclipse <eclipse@eclipseisoffline.xyz>

* Update ConfigLoader.java

* Update AdvancedConfig.java

* clarify that we're talking about the HAProxy protocol

* rename config option to use-haproxy-protocol

* remove ominous warning sign on xbox auth warning

* adjust wording

---------

Co-authored-by: Eclipse <eclipse@eclipseisoffline.xyz>

* Back to one config file

* Some minor touchups

* Configurate: Sectionification (#5904)

* Init: config sections

* Start on adding tests, move migrations over to ConfigMigrations class

* Get rid of auth section again, rename that one config option, fix mtu migration

* Move custom skulls config options to the bottom of the gameplay settings

* Add more tests

* Rename and migrate proxy-protocol-whitelisted-ips to haproxy-protocol-whitelisted-ips

* Add automatic downloading of the GeyserOptionalPack

* Revert "Add automatic downloading of the GeyserOptionalPack"

This reverts commit 65b96208fb.

* Add more invalid config tests

* Warn about emote-offhand-workaround removal

* Add automatic loading of the GeyserOptionalPack (feature/configurate) (#5964)

* Add automatic downloading of the GeyserOptionalPack

* Warn about including the OptionalPack from extensions when Geyser is already including it instead of throwing.

* Copy optional pack instead of downloading

---------

Co-authored-by: onebeastchris <github@onechris.mozmail.com>

* Remove unused variable

* Start warning users not running Java 21

* Update tests, temporarily remove NumericRanges test

* Remove duplicate advanced section from Geyser dump

* Address some "reviews"

* yeet md5 hash from geyser dump

* Add info about number of resource packs / amount of mappings into Geyser dump

* Re-enable invalid config loading test

* Fix: allow-custom-skulls migration

* Fix test

* Add "enable-emotes" configuration option

* Rename "emotes-enabled" to "show-emotes"

* Only enable integrated pack when optional pack isn't present

* Update integrated pack

* Exclude jackson annotations, remove leftover debug print

* Remove one-time config migration warnings as we don't have access to the logger at that stage

* Throw more detailed descriptive error when loading resource packs from the "packs" folder, add another legacy config test

* Fix NeoForge's fun module conflict

* Re-add warning about moved functionality, fix Geyser-ViaProxy

This reverts commit fbadfa574a.

* oops

* Move GeyserLegacyPingPassthrough to separate thread to avoid Standalone command locking issues

---------

Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>
Co-authored-by: chris <github@onechris.mozmail.com>
Co-authored-by: Eclipse <eclipse@eclipseisoffline.xyz>
Co-authored-by: Aurora <auroranova8756@gmail.com>
2025-11-18 17:55:12 +01:00