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