Commit Graph

2579 Commits

Author SHA1 Message Date
Camotoy da33811e3b
Init SkinProvider on Geyser startup
Prevents it from loading in the middle of the first Geyser player joining
2022-01-30 17:06:45 -05:00
Camotoy 2d28ba0cb5
Several inventory and parity improvements
These changes fix up things that were missed with Java Edition inventory changes in 1.17 and 1.17.1. Working with the inventory in modern versions should be much nicer.
2022-01-30 11:15:07 -05:00
Camotoy d0fa2d2b05
Don't send respawn code until Java is ready
Fixes #2668
2022-01-30 11:14:51 -05:00
Camotoy 14882534c0
Don't fully translate item data to compare net IDs
Just compare the item mappings of the two Java items. This should shave some NBT and display conversion processing time down.
2022-01-30 11:05:29 -05:00
Tim203 5ce2c113ae
Remove IPv6 scope if present 2022-01-28 13:08:10 +01:00
Camotoy f682cf1326
Yes, Geyser supports Bedrock 1.18.0/1/2. 2022-01-22 16:36:41 -05:00
Camotoy 1fba96c339
Address armor stand invisibility edge case
See https://github.com/GeyserMC/Geyser/issues/2780
2022-01-22 16:22:27 -05:00
Camotoy e92633d657
Add an option to always quick-change armor
With thanks to f068217cb7/src/main/java/me/juancarloscp52/bedrockify/client/features/quickArmorSwap/ArmorReplacer.java for making me realize this was possible.

Currently disabled by default in the event that a server implementation also has this feature. May be enabled by default in the future.
2022-01-20 18:09:35 -05:00
Camotoy 6667a53bca
Better handling of invalid display tags 2022-01-19 19:44:46 -05:00
Camotoy a6004af083
Minor cleanups 2022-01-19 19:30:54 -05:00
Camotoy 001a1a7a15
Support proper dimensions for player dying pose 2022-01-19 19:30:45 -05:00
Camotoy c1e4040cb6
Don't let Bedrock players send format character
See https://github.com/PaperMC/Paper/issues/7362
2022-01-17 16:10:56 -05:00
RednedEpic 5abf989139 Use lambda metadata factory for events
stonks
2022-01-16 22:52:27 -06:00
RednedEpic ac134b84f2 Remove onEnable, onDisable and onLoad and replace it with lifecycle events 2022-01-16 18:28:39 -06:00
RednedEpic 34d1dfde5e Add extensions permission to Spigot plugin.yml 2022-01-16 16:43:57 -06:00
RednedEpic 115b103628 Add extensions command 2022-01-16 16:35:27 -06:00
RednedEpic ac18ef6054 Remove adventure usage in API
Unfortunately due to various platforms we support not having adventure support, we are unable to fully implement adventure into our API without having issues with shading or conflicts with other plugins. May look into what we can do in regards to classloading in the future but unfortunately it may not be a possibility at this point in time to support adventure inside of the API.
2022-01-16 15:58:47 -06:00
RednedEpic 4c297092a5 Update PostOrder names and don't use lombok in API 2022-01-16 15:31:32 -06:00
RednedEpic 2277b98dfd Rename Priority to PostOrder 2022-01-16 15:16:52 -06:00
RednedEpic 30303d5f16 Implement support for adding Geyser subcommands 2022-01-16 15:09:53 -06:00
Camotoy f702fb45b4
Handle correct internal slot for swapping from inventory 2022-01-16 14:42:17 -05:00
RednedEpic 57345fa102 Event owner can be null 2022-01-15 23:01:40 -06:00
RednedEpic b82c661688 Implement simple event system 2022-01-15 22:54:08 -06:00
Camotoy 6d577a3f4e
Add the Spigot change for the prior commit 2022-01-15 20:32:45 -05:00
Camotoy 8a93f6a116
Send the client render distance to the server
Previously we've had discussions on if the render distance math should be tweaked like we do server -> client, but for now this is better than nothing and can be tweaked further in the future.
2022-01-15 20:29:00 -05:00
RednedEpic 778f004d99 Slight cleanups and make Extension an interface 2022-01-15 16:27:35 -06:00
Camotoy 516d8e573e
Config option to disable Bedrock scaffolding/godbridging 2022-01-15 16:28:52 -05:00
RednedEpic 142bb95c06 Fix package name for `Connection` 2022-01-15 11:56:40 -06:00
Redned 3b088e81bc
Merge pull request #2761 from ImDaBigBoss/master
Geyser extension loading
2022-01-15 11:53:23 -06:00
David Choo a39de7d7d2
Fix ArrayIndexOutOfBoundsException for worlds lower than -64 (#2759)
* Fix ArrayIndexOutOfBoundsException for worlds lower than -64

`chunkSize` is Java section count while `sectionCount` is the Bedrock section count

* Send biomes for air sections while also staying within limits

.-.

* Move protocol version check to variable
2022-01-14 14:57:59 -05:00
Camotoy 3b943f214c
Update comments 2022-01-13 20:03:38 -05:00
Camotoy 881352daaf
Recreate the death smoke particles to work around double death noises
Fixes #2363
2022-01-13 20:00:05 -05:00
ImDaBigBoss 0ccd85ccfb Use Geyser locale for log messages 2022-01-12 18:43:10 +01:00
ImDaBigBoss f8c173aae8 Actually did what Konicai wanted 2022-01-12 16:47:25 +01:00
ImDaBigBoss 8bb8e48a55 Fixed what Konicai asked 2022-01-12 16:40:51 +01:00
ImDaBigBoss cb18c969d7 I forgot the "s" in Geyser 2022-01-12 15:32:49 +01:00
ImDaBigBoss f3a331981f Added extension dump data & make plugins be enabled on reload 2022-01-12 15:31:28 +01:00
ImDaBigBoss 805f7f666a Added javadocs & fixed API version & more 2022-01-12 13:50:54 +01:00
Camotoy 1c11a2ef01
Partially revert previous commit and implement hotbar swap actions
1.16.5 does not cooperate well when an action is invalid, and this breaks hard when crafting.
2022-01-11 16:56:11 -05:00
Camotoy a29e7731e8
Inventory fixes and state ID emulation
- Introduce a state ID incrementation emulation. This prevents the server from spamming back with tons of set content packets, and can instead reply with set slot packets.
- Fix what we were sending as a carried item in the ServerboundContainerClickPacket.
2022-01-10 22:55:27 -05:00
ImDaBigBoss 6757437193 Moved the extension into geyser-api 2022-01-10 20:01:36 +01:00
ImDaBigBoss bfe4c09290 Merge https://github.com/GeyserMC/Geyser 2022-01-10 18:47:37 +01:00
ImDaBigBoss 8627787ea9 Added basic extension loading 2022-01-10 18:45:26 +01:00
Tim203 3251d9010c
We're in 2022 now 2022-01-01 20:03:05 +01:00
Camotoy d7eef7aaeb
Cache forms until the player has fully initialized 2021-12-29 14:20:34 -05:00
RednedEpic 7beedb46f8 Check for empty component in JavaSetTitleTextTranslator 2021-12-29 10:50:26 -06:00
Redned c6c2ff99c3 Fix NPE and API contract breakage for Component deserialization 2021-12-29 10:29:48 -06: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
RednedEpic 61636f44aa Simulate Java chunk unloading by sending empty chunks
Closes #2725
2021-12-28 23:25:33 -06:00
RednedEpic 6742865bc5 Don't send UUID cape or ear requests if player is an NPC
Addresses #2722
2021-12-28 23:01:38 -06:00