Commit graph

3688 commits

Author SHA1 Message Date
chris
b8481cc3cd
Fix: Recipe tags application
We only need to use recipe tags when there is more than one possible ingredient option. For example, before this, we applied a logs item tag to the planks recipe, which caused an issue with plank type suggestions. (#4321)
2023-12-01 20:38:25 +01:00
chris
11945db7a0
Clear mob spawners if the Java server so requests (#4232)
* Clear mob spawners if the Java server so requests

* Empty spawners by replacing the spawner block with a new one instead of adding an invalid identifier to them.
Unfortunately, sending one UpdateBlockPacket that replaces the spawner does not work, we need to set the spawner to air first. Cool. But at least we don't summon particles for all empty spawners now

* store position vector (address review by @konicai)

* remove empty line
2023-12-01 10:27:42 +01:00
Kas-tle
0f50a3cbe6
Re-implement subchunk v9 with proper index (#4287)
* Re-implement subchunk v9 with proper index

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>

* typo in comment

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2023-11-28 20:33:07 -08:00
chris
3292718e69
Don't show custom names on display entities (#4309)
* Ensure that a custom text display entity name doesn't show up - it doesn't show on Java, and if we show it, the text display contents aren't shown.

* Update core/src/main/java/org/geysermc/geyser/entity/type/TextDisplayEntity.java

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

---------

Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>
2023-11-23 09:51:57 +01:00
chris
119fbc86bc
Don't send an awkward "null" when a exeption disconnect cause doesn't have a message (#4306)
* Don't send an awkward "null" when a cause doesn't have a message

* Fix accidental regression leading to unhandled "CraftingEventPackets"
2023-11-22 21:03:24 +00:00
chris
44174fdc04
Add 1.20.50 Bedrock support (#4296)
* Start on 1.20.50

* Add 1.20.50 block_palette.1_20_50.nbt, creative_items.1_20_50.json and runtime_item_states.1_20_50.json

* fix stone and planks mappings

* add and do something with the new SetPlayerInventoryOptionsPacket

* Add readme version bump

* Cleanup/Explain the new BedrockSetPlayerInventoryOptionsTranslator
2023-11-21 23:31:56 +01:00
rtm516
dec0d13d8e
Delete Jenkinsfile (#4181) 2023-11-17 12:59:40 +01:00
chris
118e769976
Fix issues with empty MOTDs - fallback to configured MOTD (#4259)
* Fix issues with empty MOTDs - fallback to configured MOTD

---------

Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>
2023-11-14 00:33:34 +01: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
Camotoy
13339f1ed1
Dragon and piglin heads now animate on 1.20.2 servers 2023-11-11 17:14:15 -05:00
Camotoy
4e0cc92e93
Address #4281 2023-11-11 13:26:28 -05:00
chris
81178ba2a0
Reset weather on dimension switch (#4283) 2023-11-11 02:25:02 +01:00
chris
0ebb7232f9
Add SessionDisconnectEvent (#4052)
* Add SessionDisconnectEvent

* Move disconnect event calling to UpstreamSession, debug double calling issues

* Prevent duplicate disconnect calling

* Tidy up disconnection logic, ensure SessionDisconnectEvent is always fired - but only once. Fix /geyser reload command
2023-11-10 23:44:38 +01:00
chris
9dad1acfe5
Feature: Add recipe unlocking on Bedrock edition (#4016)
* Start on 1.20.10+ recipe unlocking system

* Keeping track of multiple Bedrock recipes to unlock for a single Java recipe

* Unlock stonecutter recipes

* Stonecutter recipes

* Unlock tipped arrows/shulker box recipes even when Java doesnt (why..?), and dont send trims if Java doesn't

* Translate FurnaceDataRecipes

* Revert FurnaceRecipe translation, revert stone cutter recipe identifier caching - Bedrock does not need the smelting recipe, and doesn't (un)lock stonecutter recipes (yet...?)

* Remove debug message

* Make decorated pot crafting just a little bit smoother :p

* formatting

* Use itemTag descriptors to fix https://github.com/GeyserMC/Geyser/issues/3784

* Use hashmap instead to store item tag overrides

* remove unnecessary comment

* Address review by @Konicai

* Support for 1.20.30

* undo add whitespace

* Merge upstream, use FastUtil maps, rename a few methods

* Address Camotoy's review

* Fix formatting
2023-11-10 20:45:15 +01:00
chris
f40ca2004e
Add ability to set molang tags for custom items (#4041)
* Start on custom molang tags with custom items

* geyser_custom instead of geyser item tag

* Address reviews, add custom namespace ("geyser_custom") to tags

* use isBlank() instead of isEmpty()

* More efficient item tag setting
Co-authored-by: Konicai <71294714+konicai@users.noreply.github.com>

* tags instead of temp

* Merge in master, adapt to changes in the MappingsReader, delete unused ToolBreakSpeedsUtils class

* oops

* clean diff

* Change namespace from `geyser_custom` to just `geyser`

* Don't force a namespace at all; just like blocks don't

* Tags for items are now, as blocks, NonNull. Additionally, calling the .tags() builder multiple times will not add both sets of tags, but replace the existing tag set

* Remove @NotNull usage in favor of @NonNull

* Allow setting null for tags, but ensure that .tags() is always non-null

* Fix nullable annotation on tags method in the builder interface
2023-11-09 08:44:13 +01:00
chris
aa899af908
Clear bossbars & entity attributes on server switching (#4278)
* This ensures bossbars are cleared on server switch. Additionally, this clears the EntityCache - which should resolve issues around air supply/hearts persisting visually.

* - Also reset attributes on server switch, aswell as air
2023-11-08 00:23:56 +01:00
chris
06663bcafd
Fix: Don't mistakingly assume that Geyser-Velocity initialized (#4276)
* Fix: ListenerBoundEvent could set `INITIALIZED` to true, even if we did not initialize yet - move that to postStartup() instead.

* only assign INITIALIZED once, and only after the correct listenertype bound.
2023-11-06 16:17:41 +01:00
chris
574dad015d
Fix: Display entities only being visible when directly looked at (#4271) 2023-11-04 18:59:02 +01:00
chris
a559cde654
Move "unknown entity definition" spam to debug level (#4270) 2023-11-04 16:06:23 +01:00
chris
ec526a798d
Send cooldown when punching air (#4257) 2023-11-03 17:22:55 +01:00
chris
644082ae84
Fix /geyser reload on Velocity (#4258)
* Fix /geyser reload on Velocity 

* No need to create/init a new injector on Velocity

* No need to warn about "abnormally long startup" on Bungee when we're reloading. And, as on velocity, no need to re-inject
2023-11-03 17:16:09 +01:00
chris
4ff8b7bff4
Bump mcpl to fix issues with the ClientboundLoginDisconnectPacket (#4264) 2023-11-03 17:09:34 +01:00
chris
121ca11db2
Fix text displays on 1.20.2
It seems like 1.20.2 added one more field to base displays (https://wiki.vg/Entity_metadata#Display), and a few more to text displays: https://wiki.vg/Entity_metadata#Text_Display (#4268)
2023-11-03 16:58:02 +01:00
Kas-tle
8d2ebcf69b
Reduce Frequency of Crashes Due to Dispensers, Droppers, and Chiseled Bookshelves (#4248)
* Revert to subchunk v8; reduces freq of #4240

* Full resolution
2023-10-26 08:16:24 -07:00
Konicai
2e68244fde
Merge pull request #4227 from GeyserMC/feature/1.20.40
Support for 1.20.40
2023-10-24 11:28:08 -04:00
Konicai
8173917623 Merge remote-tracking branch 'upstream/master' into feature/1.20.40 2023-10-24 10:37:28 -04:00
chris
b4290d5be4
Versioned potion mappings (#4239) 2023-10-24 01:41:02 +02:00
chris
51236f7a59
Let the fabric module really use Java 17 (#4231)
* Let the fabric module really use java 17

* Remove unnecessary target/source compat; handled by indra instead
2023-10-20 22:17:43 +02:00
chris
450e3b61fe
Bring back accidentally removed MTU option (#4229) 2023-10-20 20:14:16 +02:00
Hasan
53960c9d46
update readme version for 1.20.40 2023-10-20 01:02:10 -04:00
Konicai
647a73d9f6
Support 1.20.40 connections 2023-10-19 01:11:59 -04:00
rtm516
6b67e43f84
Update AesKeyProducer.java (#4211) 2023-10-15 21:51:06 +01:00
Kas-tle
3fa35b2cb9
Restrict game packets to state; Closes #4191 (#4210)
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2023-10-12 06:02:57 -07:00
EpsilonZunsat
00800acd6a
Fixed incorrect bedrock version of skin mirroring geometry (#4207)
* fix geometry.humanoid.wearingCustomSkull.json's LeftLeg

* fix geometry.humanoid.wearingCustomSkullSlim.json'LeftLeg
2023-10-11 17:15:33 +01:00
chris
b17f4a46f4
Update outdated proxy message to check for 1.20.2, remove floodgate 1.0 checks (#4204) 2023-10-09 18:20:18 +02:00
chris
e8048ede08
Fix: Skull rotation issues since 1.20.2 (#4200) 2023-10-08 20:33:35 +02:00
chris
3f0e366bac
Fix: Don't rename extensions while the extension directory is being walked (#4197) 2023-10-08 18:04:22 +02:00
chris
3fdd6b41d0
Fix: Beacon effects broken since 1.20.2 (#4199)
Since 1.20.2, effect IDs start at 0, not 1. Bedrock of course doesn't respect that, so we need to subtract 1!
2023-10-08 12:33:17 +02:00
chris
dec62e94e2
Fix: Implement 1.20.30 START_FLYING and STOP_FLYING cases (#4198) 2023-10-08 00:31:23 +02:00
rtm516
30cca70e56
Tell the server we loaded the resource pack (#4183)
* Tell the server we loaded the resource pack
* Decline resource packs if they are not required

---------

Co-authored-by: onebeastchris <github@onechris.mozmail.com>
2023-10-07 22:38:44 +02:00
Hasan
e8eccc64be
Change Bedrock version - Update README.md (#4188)
* Change Bedrock version - Update README.md

* Update pullrequest.yml

Don't ever ignore workflows from PRs based on files changed as this breaks pending approval

---------

Co-authored-by: Kas-tle <26531652+Kas-tle@users.noreply.github.com>
2023-10-06 07:18:48 -07:00
chris
82541a5b37
Show only 1.20.2 as supported on Fabric (#4190) 2023-10-06 06:50:01 -07:00
chris
b340d4d1c4
Add wiki/setup guides to the Geyser config (#4186)
* Added links to Wiki and Setup guide to the config
* implement suggestions
2023-10-05 19:23:14 +02:00
Kas-tle
89d7225c54
Fix API Registration of Custom Block Overrides (#4178)
* Api reg vanilla blockstate overrides; Closes #4177

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>

* proper case non static

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>

* Clear queue when done

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2023-10-04 09:56:47 -07:00
chris
3547fab228
Fix: Bedrock clients timing out due to present Java resource packs (#4176)
* fix: auto deny Java edition resource packs

* 1.20.2 bump on Fabric

* bump mcpl

* Bump required min version in the fabric.mod.json file
2023-10-03 17:15:30 +02:00
chris
7983448ce6
Remove Mojang account sign-in option (#4147)
* Remove Mojang auth

* Yeet Connector wrapper, ensure that empty config arrays (e.g. saved user logins) are empty lists instead of null to avoid NPE exceptions
2023-10-03 01:12:54 +02:00
petersv5
7d489c7354
Close threads at server shutdown (#4029)
Co-authored-by: Peter Svensson <petersv@psv.nu>
Co-authored-by: Konicai <71294714+Konicai@users.noreply.github.com>
2023-10-01 18:15:44 -04:00
Konicai
be5b437e5f
Add spigot world adapter for 1.20.2 (#4170) 2023-10-01 15:06:57 -04:00
Konicai
71bef08ef6
Fix CustomQueryTranslator (#4169) 2023-10-01 14:41:04 -04: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