Commit graph

725 commits

Author SHA1 Message Date
Kas-tle
7171ade0bd
Prevent double placement for custom block items (#3399) 2022-11-18 14:04:22 -05:00
Kevin Ludwig
37931e4996
Fix potion recipes not working on pre-1.12 servers (#3408) 2022-11-18 12:36:18 -05:00
Camotoy
3338f5c707
Remove duplicate inventory logic 2022-11-15 11:50:58 -05:00
Camotoy
5ddb0ad90a
Allow virtual inventories to be opened when player at world height
commit c53bb38a47d1a48f0b5a72059e81c4354c2b8e90
Author: Camotoy <20743703+Camotoy@users.noreply.github.com>
Date:   Mon Nov 14 15:12:29 2022 -0500

    Final touch

commit f9ff9553eda7c80620a8e6f63e14f01adb39ac8b
Merge: b57109ddf 886d7e5b4
Author: Camotoy <20743703+Camotoy@users.noreply.github.com>
Date:   Mon Nov 14 14:54:28 2022 -0500

    Merge branch 'master' of https://github.com/GeyserMC/Geyser into pull/3281

commit b57109ddf7
Author: Kevin Ludwig <signing@valaphee.com>
Date:   Mon Sep 12 12:23:36 2022 +0200

    Revert use entities for single chest inventories

commit fda66e83b9
Author: Kevin Ludwig <signing@valaphee.com>
Date:   Sat Sep 10 11:49:40 2022 +0200

    Use entities for single chest inventories, check if a block for server-side opened inventories can be placed either above or below, otherwise, close the inventory (same logic as with inventory translator found)
2022-11-14 15:12:46 -05:00
Camotoy
886d7e5b4b
Fix crashes when joining a server in the Nether 2022-11-12 10:28:53 -05:00
Camotoy
7d84928627
(Should) remove unneeded messages about incorrect chunk heights 2022-11-11 11:10:08 -05:00
Konicai
b1d832dded
Replace ; with : in motd/submotd (#3389) 2022-11-09 11:12:12 -05:00
Konicai
592b48dbf5
Simplify IP censoring in dumps (#3330) 2022-11-01 09:59:44 -04:00
RednedEpic
74798d8071 Remove old network code & use manual ping 2022-10-30 17:00:08 -05:00
RednedEpic
3f42d68f4e Update to latest Protocol changes & cleanup item registry populator 2022-10-30 11:34:08 -05:00
Konicai
87f8cf9cea
Update mappings to fix bow sounds (#3375)
Fixes #3311
2022-10-30 12:31:46 -04:00
Camotoy
90c9d5b9c4
Prevent large Object[] allocations in command list translation 2022-10-30 12:28:48 -04:00
RednedEpic
86ebfbbc6e Set datagram type from EventLoops 2022-10-29 22:42:38 -05:00
RednedEpic
a133308f51 It compiles! 2022-10-29 22:02:11 -05:00
RednedEpic
18e7db8c30 Start on update to Protocol 3.0 2022-10-29 19:23:21 -05:00
Konicai
cc82f4b871
Fix bounding box for 1.19.40 after death + respawn (#3374)
Co-authored-by: onebeastchris <105284508+onebeastchris@users.noreply.github.com>
2022-10-29 20:08:41 -04:00
Camotoy
0d3b77e567 Fix chunk translation errors in online mode 2022-10-26 17:57:40 -04:00
Camotoy
e9b99b2098
Indicate 1.19.40 support; bump Protocol 2022-10-25 16:49:34 -04:00
Camotoy
ca7799d984
Add core Gradle Adventure change 2022-10-24 13:26:28 -04:00
Camotoy
254f0da03c
Fabric improvements
Mainly in commands - the old permissions file no longer needs to exist.
2022-10-24 13:21:02 -04:00
Camotoy
a612be60aa
Warn when custom item name begins with a digit 2022-10-21 14:09:17 -04:00
Kevin Ludwig
e8764c6a81
Fix rare NPE in skin handling code (#3357) 2022-10-20 14:17:08 -04:00
Camotoy
94a810b683
Initial 1.19.40.24 Bedrock support 2022-10-18 19:04:02 -04:00
Camotoy
730b0beb01
Consolidate CommandManager implementations
A lot of these just implemented the class overrode the `description` method returning nothing.
2022-10-18 16:05:55 -04:00
Camotoy
0e07991edf
Changes as I was randomly staring at the code 2022-10-17 23:36:46 -04:00
Camotoy
657968f872
Indicate 1.19.31 Bedrock support 2022-10-17 23:35:16 -04:00
Kevin Ludwig
bd613987ce
Fix empty chunk encoding 2022-10-15 20:26:02 -04:00
Camotoy
8bf8b22d6b
Fix some regressions in custom item handling 2022-10-12 17:21:58 -04:00
Camotoy
f59e33d749
Fix behavior of matching custom item predicates
Huge thanks to Kastle for helping me disect this behavior.

- The Unbreakable NBT tag is not the only source for determining if an item should be treated as unbreakable. The damage NBT is also taken into account.
- Custom item options must be processed in an ascending order.
- Multiple conditions may be necessary for an item to be selected.
- Conditions do not have to be exact. See the comments in CustomItemTranslator for an explanation.
- Added a test so we don't break this behavior in the future.
2022-10-10 15:40:07 -04:00
Konicai
7653a626af
Update Sponge to API 8 (#2611) 2022-10-02 16:43:14 -04:00
Camotoy
cb864b3c98 Fix NPE with furnace minecart with NBT data 2022-09-30 21:21:37 -04:00
Kevin Ludwig
c31bd456f6
Fix entity motion (arrows now rotate correctly) (#3307) 2022-09-30 12:12:27 -04:00
Camotoy
1b6cfad5ad
Fix ghost blocks when insta-mining on 1.19+
Fixes #3113
2022-09-27 19:24:50 -04:00
SupremeMortal
e491cf8a17
Use Gradle's dependency catalogue feature (#3305)
Move all of our dependencies to a single catalogue file to make maintenance of them easier.
2022-09-26 11:43:17 -04:00
Kevin Ludwig
2c5c72f85f
Replace particle explosion with particle block explosion in JavaExplodePacket (#3301) 2022-09-23 10:04:15 -04:00
Camotoy
d2b7b8c392
Set the default Bedrock version to 1.19.30 2022-09-21 15:33:33 -04:00
Camotoy
50b99d70a1
Return to using NBT dependency provided by Protocol 2022-09-21 13:39:06 -04:00
Camotoy
6df9081d6e
Possibly fix recipe class cast errors 2022-09-21 12:52:29 -04:00
Camotoy
5206bc3b99
Elaborate if secure profiles need to be disabled 2022-09-21 12:49:38 -04:00
Camotoy
55f7253a98
Let biomes NBT be parsed by 1.19.30 2022-09-21 12:27:16 -04:00
Camotoy
98cfdb0b33
Fix epoll on at least standalone 2022-09-20 14:25:39 -04:00
Camotoy
f31b183a33
Rename Geyser standalone jar to Geyser-Standalone.jar 2022-09-19 11:26:47 -04:00
Konicai
c84d53c827
Re-add git.properties (#3287)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-09-19 11:22:09 -04:00
Camotoy
9791e7b544
One more try on branch name 2022-09-18 16:29:44 -04:00
Camotoy
f11dc6d03d
A better educated guess to fix the git branch 2022-09-18 15:56:46 -04:00
Camotoy
8605f0a91c
Use master languages branch 2022-09-18 15:56:30 -04:00
Camotoy
44e60b7ad8
An educated guess to fix Git branch 2022-09-18 15:40:44 -04:00
Camotoy
f71fa9ccac
Only check for correct protocol version once 2022-09-18 15:18:48 -04:00
Camotoy
bb2f4644be
Fix IO_Uring being included in builds 2022-09-18 15:11:18 -04:00
Camotoy
4e2d750791
Gatekeep RequestAbilityPackets to 1.19.30+ 2022-09-18 12:20:54 -04:00
Camotoy
64c03b9610
Correctly detect flying in 1.19.30 2022-09-18 12:18:47 -04:00
Camotoy
c8a51d7834
Update to release protocol 1.19.30 2022-09-17 16:37:30 -04:00
Konicai
0aa7411d02
Fix git branch on Jenkins (#3286) 2022-09-15 20:32:38 -04:00
Camotoy
83be01958f
Yeet logging into Microsoft with password
This has been broken for ages; we need to finally remove it.
2022-09-15 15:53:03 -04:00
Camotoy
27b948a09b
Use Indra to get branch name 2022-09-14 21:22:34 -04:00
Camotoy
e64e12ff98
Initial support for 1.19.30 Bedrock 2022-09-14 21:17:08 -04:00
Camotoy
6df8740955
Only register commands on Spigot if the extension has commands 2022-09-14 14:19:56 -04:00
Camotoy
a99afe4418
Remove usage of Fastutil Object2Reference maps
These are only beneficial for containsValue checks.
2022-09-13 16:24:08 -04:00
Camotoy
2d7a463089
Make Geyser dumps backwards compatible 2022-09-11 19:26:22 -04:00
RednedEpic
8fb22ee225 Merge branch 'master' into feature/extensions 2022-09-04 16:42:14 -05:00
RednedEpic
770dfca328 Fix dumps 2022-09-04 16:35:50 -05:00
ImDaBigBoss
f1da9d7072 Allow events to be registered by any class
Supersedes & closes #3073

Co-authored-by: Redned <redned235@gmail.com>
2022-09-04 16:11:08 -05:00
RednedEpic
db3b470225 Merge remote-tracking branch 'konicai/api-version-check' into feature/extensions 2022-09-04 13:17:20 -05:00
RednedEpic
e5337b6298 Reintroduce GeyserDefineCommandsEvent and cleanup a few things 2022-09-04 13:08:17 -05:00
Kevin Ludwig
a16fc9c07c
Add way to specify key for encrypted packs (#3263) 2022-09-03 14:12:48 -04:00
Camotoy
7d7a38a502 Indicate support for 1.19.22 2022-09-03 14:03:22 -04:00
Tim203
c07c7b9337
Added support for latest events version 2022-09-01 00:50:03 +02:00
AJ Ferguson
f8a84f9777
Loopback exemption fixes (#3261)
* Fix potential hang when checking loopback exemptions

* Remove single quotes from LoopbackExempt command
2022-08-31 16:42:38 -04:00
Camotoy
d9db035d95
Add example issue to Inventory#getBedrockId 2022-08-29 12:30:16 -04:00
AJ Ferguson
8e47a9f5e9
Ensure bedrock inventory id is at most 100 (#3260) 2022-08-29 12:26:30 -04:00
Kas-tle
1db77ad2bd
Fix address, port, & motd being ignored in config (#3259) 2022-08-28 20:42:31 -04:00
Camotoy
670308edc2
Update Netty version used in standalone 2022-08-26 11:19:23 -04:00
Camotoy
b7337fa032
Update mappings
Fixes #3252
2022-08-25 16:11:30 -04:00
Camotoy
29fcce7ec8
Add option to not log player IP addresses
Resolves #3246
2022-08-25 16:10:43 -04:00
Kas-tle
936fed1ded
Move sendMessage(Component) to GeyserCommandSource 2022-08-24 15:38:54 +00:00
Kas-tle
e35f3785b2
Resolve fallout 2022-08-24 04:53:13 +00:00
Kas-tle
9232310b4d
Upstream 2022-08-24 04:53:00 +00:00
Camotoy
8dde4b4347
Support Bedrock 1.19.21 2022-08-23 13:20:57 -04:00
Camotoy
82411978c8
Update languages submodule 2022-08-22 14:34:26 -04:00
Camotoy
d499e22502
Debugging always sneaks in... 2022-08-21 21:25:32 -04:00
Camotoy
67a65c45d3
Implement update notifications for Geyser
Geyser installations will now get notified when a new Bedrock release is out and Geyser must be updated. The system works similarly to ViaVersion where OPs get a notification of an update when they join. The permission node for players to see update notifications is `geyser.update` and the backing JSON that controls this can be found at https://github.com/GeyserMC/GeyserSite/blob/gh-pages/versions.json. There is also a config option to disable update checking.

This update also fixes modern Paper installations not being able to see colored text logged from Geyser in the console.
2022-08-21 21:22:15 -04:00
Camotoy
a3b1cf61ad
Geyser end of https://github.com/GeyserMC/GeyserOptionalPack/pull/34 2022-08-20 16:32:24 -04:00
Camotoy
3716b7a84f
Remove initialized check in movement
This probably isn't needed anymore. This was introduced in https://github.com/GeyserMC/Geyser/pull/41 and is probably no longer needed since we never send movement before the player is spawned, and we don't allow movement to go through until the Bedrock player matches the unconfirmed teleport we create in JavaPlayerPositionTranslator. By removing this we should fix some instances of players kicked for 'flying' as players joining in the air would never respond to gravity until Bedrock finished loading.
2022-08-20 14:56:40 -04:00
Tim203
13046a8602
Fixed building and switched event library 2022-08-13 22:48:12 +02:00
David Choo
33af9e094c
Fix missing cool down indicator when attacking mobs (#3230) 2022-08-12 22:25:07 -04:00
Tim203
ab6e0d1e16
Some more API changes 2022-08-12 01:01:26 +02:00
Tim203
80588a07bd
Initial API changes 2022-08-11 23:17:56 +02:00
Typical
fd4f683d15
Merge pull request #1 from TypicalShavonne/master
Set baby if armor stand is small for OptionalPack (#3210)
2022-08-11 14:40:00 +07:00
Kas-tle
50ea5eac9a
Set baby if armor stand is small for OptionalPack (#3210) 2022-08-10 18:05:59 -04:00
Konicai
737df21495
Merge remote-tracking branch 'upstream/master' into ext-1.19.20-fixes
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	pom.xml
2022-08-10 17:01:02 -04:00
Konicai
ab2b79485b
Fix sending forms with floodgate for 1.19.20 (#3217)
* Fix sending forms with floodgate

* Comment about 1.19.20

* Swapped if-else

Co-authored-by: Tim203 <mctim203@gmail.com>
2022-08-10 22:09:55 +02:00
David Choo
25a18a2e4f
Fix maps not loading in Bedrock (#3218) 2022-08-09 21:35:26 -04:00
Camotoy
88727fb473
Bump Geyser to version 2.0.7-SNAPSHOT and default Bedrock to 1.19.20 2022-08-09 20:30:49 -04:00
Konicai
259fed247a
Merge remote-tracking branch 'upstream/master' into ext-1.19.20-fixes
# Conflicts:
#	core/pom.xml
2022-08-09 19:27:25 -04:00
Camotoy
eab92da988
Fix form responses on 1.19.20 2022-08-09 19:07:11 -04:00
7man7LMYT
ef81bdeb6b
Update items to 1.19.20 (#3215)
* Update to 1.19.20

* Add 1.19.20 mapping

* Revert biome changes
2022-08-09 16:52:53 -04:00
Konicai
ee5e916112
Merge remote-tracking branch 'upstream/master' into ext-1.19.20
# Conflicts:
#	core/pom.xml
2022-08-09 14:36:54 -04:00
Camotoy
f74713c0ed
Initial support for 1.19.20 Bedrock 2022-08-07 12:09:54 -04:00
Camotoy
3c27273eac
Indicate support for Java 1.19.2 2022-08-05 11:29:47 -04:00
Konicai
29c9bde9ef
Merge branch 'feature/extensions' into api-version-check 2022-08-04 18:18:21 -04:00
Konicai
67e3bf1f8d
Move extensions folder to Geyser's config folder (#3202)
* Move extensions folder to Geyser's config folder

* Move directory field
2022-08-04 17:55:12 -04:00
Konicai
22b16e3587
Merge branch 'feature/extensions' into api-version-check 2022-08-03 11:29:31 -04:00
Konicai
36ef23b24e
Don't allow empty extension name 2022-08-03 00:30:22 -04:00
Konicai
aa7d0f4a57
Use class for reading extension.yml 2022-08-03 00:20:27 -04:00
Konicai
a5dc70a3b5
Refactor extension description 2022-08-02 23:22:08 -04:00
Konicai
17f3deb8df
try to reset languages 2022-08-02 01:11:17 -04:00
Konicai
7121051d9a
Merge mistake fixes 2022-08-02 00:25:07 -04:00
Konicai
aee43e68fa
Merge remote-tracking branch 'upstream/master' into feature/extensions
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/command/CommandManager.java
#	core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
#	core/src/main/resources/languages
#	pom.xml
2022-08-02 00:01:05 -04:00
Camotoy
6856922f42
Don't let players change their own gamemode without permission
Fixes #3191
2022-08-01 14:45:03 -04:00
Camotoy
51d9320500
Bungee: Check for potentially outdated proxies 2022-08-01 11:01:24 -04:00
Camotoy
ab5e5a661d
Update wording on saved-user-logins 2022-08-01 00:37:17 -04:00
Camotoy
d826949b01
Indicate support for Bedrock 1.19.11 2022-07-28 18:09:35 -04:00
Camotoy
8f8964761a
Merge branch 'feature/1.19.1' 2022-07-28 17:45:55 -04:00
Camotoy
4163de9314
Translate allay dancing 2022-07-28 17:45:38 -04:00
Camotoy
c914938acb
Fix clientbound action serialization 2022-07-27 16:55:57 -04:00
Camotoy
45b05d14be
Compiles; bump version 2022-07-27 16:38:51 -04:00
Camotoy
40fde6b046
Some nitpicks and cleaning up the provider API
The command changes here are not final. Internally we're discussing if we want to allow extensions to register root commands on platforms.
2022-07-26 18:33:39 -04:00
Camotoy
f4a5ccb1f9
Empty villager trades are valid
Fixes #3171
2022-07-24 19:41:05 -04:00
Camotoy
a18ac29a91
Initial 1.19.1 Java support 2022-07-24 19:32:22 -04:00
Camotoy
41273001d8
Fix chunks on Hypixel 2022-07-24 13:51:17 -04:00
Camotoy
76bb5d4d88
Fix persistent FOV when walk speed is ever set to zero
Fixes #3139
2022-07-23 10:50:43 -04:00
Camotoy
0efd04dd87
Initial code for /geyser connectiontest
This command acts as a testing ground for debugging Unable to Connect to World. More checks will be added in the future.
2022-07-20 19:59:03 -04:00
Camotoy
616c088b66
Fix custom items with ItemTranslator#getBedrockItemMapping 2022-07-20 18:35:40 -04:00
sctigercat1
467286060c
Update items to 1.19.10 (#3151)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-19 21:23:04 -04:00
David Choo
3de2b33e30
Armor stand fixes (#3147)
Co-authored-by: David Choo <davchoo@users.noreply.github.com>
Co-authored-by: The Judge <53906078+thejudge156@users.noreply.github.com>
2022-07-17 21:00:08 -04:00
Kas-tle
46faf02474 Merge remote-tracking branch 'upstream/master' into feature/extensions 2022-07-14 01:46:26 +00:00
Camotoy
f6f8886f23
Fix PS4 players crashing on certain dimension switches 2022-07-13 21:31:10 -04:00
Kas-tle
1b5f237996 Merge remote-tracking branch 'upstream/master' into feature/extensions 2022-07-12 20:17:23 +00:00
Camotoy
109e1c0a97
Fix dropping items in 1.19.10 2022-07-12 16:05:06 -04:00
Kas-tle
2dbd39c5a4
Per review by @Camotoy 2022-07-12 16:33:57 +00:00
Kas-tle
bca6359f7e
1.19.10 fallout 2022-07-12 05:29:39 +00:00
Kas-tle
363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions 2022-07-12 05:26:52 +00:00
Camotoy
16bb79e7aa
Support HAProxy in legacy ping passthrough 2022-07-11 08:38:26 -04:00
Camotoy
83ba6b5ab5
Extensions have their own command 2022-07-10 20:58:48 -04:00
Camotoy
4656383c67
Bump to 2.0.5-SNAPSHOT 2022-07-10 17:05:19 -04:00
Camotoy
fa726092e3
A cleaner error on illegal set slot packet 2022-07-10 15:52:11 -04:00
Camotoy
4d0952c224
Initial support for 1.19.10 Bedrock 2022-07-10 13:33:39 -04:00
Camotoy
2ce7ff850a
Support the 1.19.0 Java block prediction/ack system 2022-07-09 23:02:19 -04:00
Camotoy
897c4dcfec
Changes 2022-07-09 18:39:02 -04:00
Yashar
ab4800c4f2
Fix login screen not closing (#3122) 2022-07-08 19:01:00 -04:00
David Choo
dc810f1d39
Fix break time while submerged in water (#3110)
* Fix break time while submerged in water

* Review stuff

* LAYERS -> LEVELS
2022-07-02 21:17:14 -04:00
RednedEpic
f9fd7cb831 Fix Geyser not working in IDE 2022-07-02 12:42:31 -05:00
RednedEpic
b5eb27693f Use an immutable view in GeyserDefineCommandsEvent
Methods to properly register/unregister commands are provided in the command manager
2022-07-02 12:30:23 -05:00
ImDaBigBoss
36c49a7256
Custom item support for extensions (#2822)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-02 12:50:16 -04:00
AJ Ferguson
f2f894b1d1
Fix IronGolem cracked texture and sound (#3103)
* Update mappings submodule

* Set IronGolem maxHealth to 100 by default

Fixes cracked texture on vanilla servers

* Add detail to comment
2022-06-30 17:40:30 -04:00
Camotoy
13e8b59ed0
Quick fix for NPE in SystemChatTranslator
This won't matter in 1.19.1 so.
2022-06-30 16:53:55 -04:00
Camotoy
f62484b93e
Update Adventure to fix click event deserialization
Fixes #3054
2022-06-29 16:42:30 -04:00
David Choo
5d29bda7eb
Fix incorrect patterns in loom and DecoderException in beacons (#3090)
* Fix DecoderException when setting beacon effect

* Fix incorrect patterns applied in loom and remove old version stuff
2022-06-26 19:12:43 -04:00
Camotoy
00603c5239
Fix creeper primed sound 2022-06-26 18:45:47 -04:00
Camotoy
2ea50116cf
Forward cooldowns for shields and goats
These are server-controlled as of 1.19. Ender pearls and chorus fruit still appear to be client-controlled.
2022-06-24 23:13:35 -04:00
David Choo
9ea22042eb
Fix some item interactions (#3083)
* Remove Bedrock only banner patterns from the creative inventory

* Add sound for tadpole bucket

* Fix lily pad and frogspawn placing on mobile/single stacks

* Workaround? Fix? for bucket usage on mobile

* Simplify math and update position+rotation whenever ServerboundUseItemPacket is sent

* Rotate the player back after using an item and fix glass bottles

* ITEM_USE actionType 1 does not need the rotation fix

Increase delay for look back

* Add some checks

* Prevent buckets and spawn eggs from being unintentionally placed when interacting with special blocks

As of 1.19 Bedrock no longer sends a PlayerActionPacket with action=BLOCK_INTERACT. Bedrock now sends action=ITEM_USE_ON_START before and action=ITEM_USE_ON_STOP after using an item on a block. However, this is not useful as it is sent for all block interactions.

* Fix inventory transactions being rejected after restoreCorrectBlock

The held item's netId is always 0 in the InventoryTransactionPacket.

* Touch ups

* Fix lookAt for different poses and sneaking + cauldron + bucket interactions

Fix boat items being desynced when placing them very close to collision
Fix bottles being desynced when tapping above water

Resend the held item if we do encounter a desync

* Avoid getting blockstate twice and fix comment

* Use generated interaction data

* Fix glass bottles being double filled and phantom water bottles/water buckets

* Don't update the entire inventory on useItem

* Use Geyser's inventory copy for check

* Use ItemTranslator#getBedrockItemMapping to avoid NBT translation

* mappings

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-06-24 16:48:28 -04:00
Camotoy
60327339d6
Indicate support for Bedrock 1.19.2 2022-06-23 21:24:26 -04:00
AJ Ferguson
18f6836c15
Set default Warden heartBeatDelay to 40 (#3071) 2022-06-18 15:32:51 -04:00
Xamyr
fef0401add
Fixed armorstand passenger yOffset (#2976) 2022-06-17 22:15:31 -04:00
AJ Ferguson
71c489b462
Add missing villager entity events (#3063) 2022-06-17 12:25:49 -04:00
Camotoy
37d6fd8abf
Add an option to disable compression for Geyser clients 2022-06-16 19:18:11 -04:00
Camotoy
5b67c78785
Allow Minecraft locales to be loaded even if offline 2022-06-16 17:14:47 -04:00
David Choo
5e1769d2bd
Translate goat horns (#3057) 2022-06-15 22:55:11 -04:00
Camotoy
ea21e0323a
Map correct glass sounds
Fixes #3049
2022-06-15 21:38:10 -04:00
Camotoy
7739e8097e
Another locale string to pick up on for outdated servers 2022-06-15 19:59:27 -04:00
Camotoy
4405989b81
Fix compiling 2022-06-15 18:36:55 -04:00
Camotoy
ddd2262380
Custom chat types at login are valid
Fixes https://github.com/GeyserMC/Geyser-Fabric/issues/55
2022-06-15 18:32:27 -04:00
rtm516
aa097ecdc4
Fix java style queries responding incorrectly (#3051) 2022-06-14 19:51:45 -04:00
ImDaBigBoss
db003293e9 Merge master 2022-06-12 10:33:32 +02:00
Camotoy
162aff4978
Better handle chat packets sent before login 2022-06-10 10:27:07 -04:00
Camotoy
f1a12d1feb
Bump mappings and MCProtocolLib 2022-06-09 18:34:25 -04:00
Camotoy
72a9df58e0
Properly support differently setup chat registries
ViaVersion has two entries in its fake chat registry that are not in the same order as Java. This commit supports that properly and renders subtitled text correctly.

Resolves #3023
2022-06-08 22:30:34 -04:00
ImDaBigBoss
4e2f74481b Updated to 1.19 2022-06-08 14:09:14 +02:00
Camotoy
78bb69be42
Fix LevelEvent reading 2022-06-07 15:07:54 -04:00
Camotoy
2595eae300 Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
Camotoy
c8856d487d
Compile too 2022-06-06 22:56:08 -04:00
Camotoy
172167f14f
Prepare for release 2022-06-06 22:54:10 -04:00
Camotoy
a397f55e8b
Add goat horn count 2022-06-06 21:06:02 -04:00
Tim203
378aa6ed99
Updated changes for latest Geyser version 2022-06-07 00:31:29 +02:00
Tim203
d8b63b9310
Merge remote-tracking branch 'origin/feature/1.19-bedrock' into feature/floodgate-packet
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCustomPayloadTranslator.java
#	core/src/main/java/org/geysermc/geyser/util/PluginMessageUtils.java
2022-06-07 00:25:17 +02:00
Tim203
3582d5cd6f
Changed back the Geyser version and use Cumulus 1.1 2022-06-07 00:19:59 +02:00
Tim203
5fe24ac867
Merge remote-tracking branch 'origin/feature/1.19-bedrock' into feature/cumulus-1.1
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/session/cache/AdvancementsCache.java
2022-06-07 00:14:43 +02:00
Tim203
86d0200960
Re-added the old sendForm methods 2022-06-06 10:03:39 +02:00
Camotoy
09fb6bf3ba
Fix direct connection and ensure connecting doesn't block 2022-06-05 18:38:29 -04:00
Tim203
94445a5222
Re-added the old sendForm methods 2022-06-06 00:25:45 +02:00
RednedEpic
bcc68ee4b5 Update to latest MCPL changes 2022-06-05 13:12:36 -05:00
Camotoy
3ac2c981a7
Swap pitch and volume for warden heartbeat 2022-06-02 18:57:33 -04:00
davchoo
2e3e7c6949
Fix sonic boom duration ticking below zero 2022-05-31 15:15:15 -04:00
davchoo
365f8cf7e3
Translate Warden sonic boom event
Bump Protocol to fix Sonic boom flag
2022-05-31 14:58:40 -04:00
Camotoy
eb23a46887
Fix frog color translation 2022-05-31 14:51:21 -04:00
Camotoy
81bb6f124e
e 2022-05-31 14:26:08 -04:00
Camotoy
196742a597
Set entities silent client-side, and more
Add warden entity events. Fix up other things.
2022-05-31 14:25:15 -04:00
Camotoy
bf4e1d5be7
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.19-bedrock 2022-05-31 10:52:10 -04:00
Camotoy
c83eb7f142
Print CPU name in dump if possible 2022-05-30 14:51:03 -04:00
davchoo
9133008e18
Translate ClientboundSoundEntityPacket
Used by allay, frog, and a few other mobs.
Move common code to SoundUtils
Update mappings
2022-05-30 14:38:03 -04:00
Camotoy
a3cdfc5306
Use correct type for entity metadata 2022-05-29 21:11:10 -04:00
Camotoy
e43a143bf4
Remove obsolete chunk writing code 2022-05-29 20:39:14 -04:00
Camotoy
7a0a6795d0
Remove now-obsolete sign workaround. Yay. 2022-05-29 20:31:54 -04:00
davchoo
f79a3ef2f7
Bump Protocol version to fix command suggestions
Fix assert that occurs on Bedrock after typing /
2022-05-29 18:56:54 -04:00
Tim203
bd1cc26bf3
Use new Cumulus methods 2022-05-29 23:39:40 +02:00
Camotoy
cbba0d3a75
Update biome mappings 2022-05-29 11:59:32 -04:00
Tim203
84bcadc687
Converted the new forms 2022-05-28 23:45:35 +02:00
Tim203
d4ecd2bd72
Merge remote-tracking branch 'origin/master' into feature/cumulus-1.1
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/session/cache/AdvancementsCache.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCustomPayloadTranslator.java
#	core/src/main/java/org/geysermc/geyser/util/LoginEncryptionUtils.java
#	pom.xml
2022-05-28 17:09:20 +02:00
Camotoy
b10ce16506
The wild update experiment is no longer necessary 2022-05-27 22:44:03 -04:00
davchoo
87320f0a78
Fix player head yaw for moveAbsolute teleport
Fixes SkullPlayerEntity rotation
Remove redundant? overrides
2022-05-27 19:03:12 -04:00
davchoo
7b9a98aa09
Add croaking and using tongue poses to frog 2022-05-27 13:59:37 -04:00
Camotoy
1afc8ee77b
Map Darkness status effect 2022-05-27 13:27:10 -04:00
davchoo
528e8d6f67
Add effects for sculk shrieker and sculk catalyst. Translate vibration particle
Bumps NBT version to 2.2.1 for LevelEventGenericPacket
2022-05-27 11:55:00 -04:00
davchoo
f079ee430b
Fix missing startup debug logs on Standalone 2022-05-27 02:03:45 -04:00
Camotoy
3898e4f7e6
add Swift Sneak enchantment to known enchantments 2022-05-26 20:05:02 -04:00
davchoo
41cd7f4574
SoundEvent and ParticleEvent are now combined 2022-05-26 19:57:45 -04:00
Camotoy
4a9eec4c54
Implement last death position translation 2022-05-26 19:34:27 -04:00
Camotoy
85800eb32b
Tadpole 2022-05-26 18:52:04 -04:00
Camotoy
e2ce553d3a
Warden time 2022-05-26 18:41:19 -04:00
davchoo
a70f1bc003
Reinforced deepslate can't be moved by pistons 2022-05-26 18:09:27 -04:00
Camotoy
83c309711e
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.19-bedrock 2022-05-26 18:05:39 -04:00
Camotoy
d74b0e236d
Fix encoding SpawnParticleEffectPacket for 1.18.30+ 2022-05-26 18:04:58 -04:00
Camotoy
29c819fe21
Implement allay, plus some interaction fixes 2022-05-26 17:51:55 -04:00
davchoo
4b9055c252 Add new PaintingTypes 2022-05-26 16:27:54 -04:00
Camotoy
59cb0c07c2
Start implementing frogs. Ribbit. 2022-05-26 16:22:53 -04:00
davchoo
2c77306937 Use new toasts for advancements and simplify advancement form response 2022-05-26 13:13:06 -04:00
Camotoy
9183897d52
Implement chest boat 2022-05-26 13:11:39 -04:00
davchoo
66a7efaa96 Yeet 1.18.30 and old palette stuff 2022-05-25 22:11:35 -04:00
davchoo
c5de293373 Allow 1.19.0 to join and use new block mappings 2022-05-25 21:50:50 -04:00
Camotoy
1a7b57018e
Chat messages now show up correctly. 2022-05-25 21:48:38 -04:00
Camotoy
ebf18cfb28
Switch all Position instances to Vector3i 2022-05-25 19:17:49 -04:00
Camotoy
193fa23146
Paintings work 2022-05-25 18:44:33 -04:00
Camotoy
bbf45b6a4c
Compiles; provide your own mappings for now 2022-05-25 15:55:15 -04:00
Camotoy
5339127105 Start work on 1.19 2022-05-24 16:16:40 -07:00
David Choo
38625312a1
Prevent max health from being set below 0 (#2980)
* Prevent max health from being set below 0

* Add more detail to comment
2022-05-21 11:54:32 -04:00
Camotoy
8c9d1fe09f
Allow language file overrides
By placing a locale file in `languages/ll_CC.properties`, any strings in that file will take priority over Geyser's own.
2022-05-15 14:23:52 -04:00
Camotoy
b885e22fa3
Always show the world border at least five blocks away
Previously, no indication that the world border exists would show if warning blocks was set to 0.
2022-05-15 13:52:18 -04:00
David Choo
b33cc512b4
Add custom skull render distance (#2751)
* Add player skull render distance

* Improve updateVisibleSkulls a bit

Avoid rechecking visibility on small movements

* Periodically despawn unused skull entities

* Don't hide skull entity for position/rotation changes

Prevents flickering for skulls that are rotating

* Update visible skulls when a skull is removed

* Only update on removal if an entity is assigned

* No need to check for skull in ChunkUtils

Update copyright year

* Avoid rechecking all skulls when a skull is added/removed

* Allow skull render distance and number to be configured

Renamed some fields to better match their values

* Compare texture property directly from GameProfile

* Remove unnecessary blockState field from SkullPlayerEntity

* Use binarySearch for insertion

Wait for player movement before loading skulls

* Allow culling to be disabled by setting max-visible-custom-skulls to -1

* Only remove skulls in inRangeSkulls when culling is enabled

* Add suggestions from review

* Merge the for loops in updateVisibleSkulls

* Fix skulls being leaked on chunk unload
2022-05-14 15:12:18 -04:00
Camotoy
db13b4c276
Fix decoding for some UTF-8 characters 2022-05-10 12:40:15 -04:00
RednedEpic
fbaa6c1f5f Remove entity work from main extension branch for now 2022-05-07 10:11:21 -05:00
Camotoy
f38c1fbc0f
Spigot: programmatically add Geyser permissions and fix reloading 2022-05-06 15:32:43 -04:00
Camotoy
05e98c3a10
Fix edge case in health code since 1.18.30
Fixes #2957
2022-05-04 15:54:19 -04:00
RednedEpic
59d5a6469c Add support for modifying identifiers through the AvailableEntityIdentifiersPacket
This is the first of many commits that address adding support for custom entities through the Geyser API.
2022-05-01 12:25:24 -05:00
RednedEpic
4ae9bdf4b9 Merge branch 'master' into feature/extensions 2022-05-01 09:44:47 -05:00
Camotoy
31a84ea302
Remove unused set 2022-04-30 20:42:29 -04:00
Camotoy
e66014af9e
Fix lava and snow cauldrons looking wrong
Fixes #2955
2022-04-30 20:40:34 -04:00
Camotoy
8a1799e0e3
Remove block tag adding to villager trading
Fixes sugar cane being untradeable.
2022-04-29 13:24:58 -04:00
Camotoy
3035527be2
Indicate 1.18.31 support for Geyser
This uses the same protocol version as 1.18.30, so no further changes are required.
2022-04-27 20:04:13 -04:00
Camotoy
074d60d5b0
Add system locale and encoding to Geyser dumps 2022-04-25 15:13:09 -04:00
RednedEpic
7f0e5b409f Optimizations to extension loading 2022-04-24 14:53:47 -05:00
RednedEpic
7c8bf330a9 Fix loading multiple extensions (Closes #2826) 2022-04-24 14:37:44 -05:00
RednedEpic
735697b553 Allow loading extensions in dev environment 2022-04-24 14:17:15 -05:00
RednedEpic
766f28ec60 Publishing seems to work locally now(?) 2022-04-24 14:07:39 -05:00
RednedEpic
3091d27e0e i think i fixed it? 2022-04-24 13:35:49 -05:00
RednedEpic
463fc83f78 Publishing changes 2022-04-24 13:16:39 -05:00
Camotoy
0d1fedbdbf
Fix instances of resizing global biome palettes
Fixes #2744
2022-04-24 13:58:34 -04:00
Camotoy
9bf3334cb0
Update Protocol for 1.18.30 command param correctness 2022-04-24 13:38:44 -04:00
RednedEpic
7ca3b8d433 Merge branch 'feature/extensions' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-04-24 12:08:11 -05:00
RednedEpic
9af6f948fe Publish extensions branch 2022-04-24 12:07:50 -05:00
rtm516
0163e33693
Re-arrange groups and artefacts when publishing (#2899)
* Re-arrange groups and artefacts when publishing

* Publish core jar
2022-04-24 12:02:02 -05:00
RednedEpic
f2e606c0f3 Rename HYBRID AuthType back to FLOODGATE 2022-04-24 11:42:17 -05:00
RednedEpic
43f23674d6 Merge branch 'master' into feature/extensions
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/configuration/GeyserJacksonConfiguration.java
#	core/src/main/java/org/geysermc/geyser/network/UpstreamPacketHandler.java
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockFilterTextTranslator.java
#	pom.xml
2022-04-24 11:23:26 -05:00
Tim203
2f54bf0e14
Rotation fixes (#2396)
* Should fix some rotation issues

* Some more changes

* Small changes

* Fixed merge conflicts and updated other classes that changed

* Added translation for the LookAt packet
2022-04-23 13:57:32 -05:00
Camotoy
c36b98d778
Make completed advancement color easier to read
Resolves #2937
2022-04-22 20:16:22 -04:00
Camotoy
7ea14c1a03 Don't send the SetHealthPacket clientbound
Seems like this can cause the client to break in 1.18.30, and we already send the health as an attribute.
2022-04-22 18:06:38 -04:00
Camotoy
5a94bdae5a
oops 2022-04-21 22:24:41 -04:00
Camotoy
05d74ebd3e
Fix signs for Bedrock 1.18.30
Fixes #2944
2022-04-21 22:23:00 -04:00
Camotoy
575fe98c0f
Fix anvils for 1.18.30 Bedrock 2022-04-20 21:39:35 -04:00
Konicai
03b067e23e
Merge master into extensions (#2941)
* Don't always store cert/client data used for skin uploaded

This takes up a decent 30K of memory that we don't use after the skin is uploaded. The GameProfileTranslator cannot be run more than once per session.

* Make all moon phases visible

The fix to prevent integer overflows also prevented moon phases from being visible until now.

Fixes #2927

* SetTimeTranslator: cast from long on the entire modulus

This should fix some inaccuracies with time on older worlds.

* Bump version; drop 1.17.40; support 1.18.30

* Actually bump to 2.0.3-SNAPSHOT

* Fix message being sent still if a single escape character is sent

* Replace instances of configs using `generateduuid` for Metrics

* Fix some merge mistakes

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-04-20 21:37:50 -04:00
Camotoy
e923325246
Fix stonecutters for Bedrock 1.18.30
Also add an option in debug mode to not log pings in the event they're spammy.
2022-04-20 21:22:02 -04:00
Camotoy
b528a1c4f6
Update Protocol to better support older Netty versions 2022-04-20 13:30:45 -04:00
Camotoy
137eb3ece8
Replace instances of configs using generateduuid for Metrics 2022-04-19 10:18:50 -04:00
Camotoy
af08488d1e
Fix message being sent still if a single escape character is sent 2022-04-18 21:30:44 -04:00
Camotoy
67f4de9781 Actually bump to 2.0.3-SNAPSHOT 2022-04-17 20:10:16 -04:00
Camotoy
cf8114543e Bump version; drop 1.17.40; support 1.18.30 2022-04-17 19:53:06 -04:00
Camotoy
0803c5d9af
SetTimeTranslator: cast from long on the entire modulus
This should fix some inaccuracies with time on older worlds.
2022-04-12 19:42:41 -04:00
Camotoy
98db9c6948
Make all moon phases visible
The fix to prevent integer overflows also prevented moon phases from being visible until now.

Fixes #2927
2022-04-12 19:04:09 -04:00
Camotoy
cb8858fc42
Don't always store cert/client data used for skin uploaded
This takes up a decent 30K of memory that we don't use after the skin is uploaded. The GameProfileTranslator cannot be run more than once per session.
2022-04-11 15:44:15 -04:00
Camotoy
1ebc3fd8f6
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-04-07 19:22:46 -04:00
Camotoy
1d3eebc678
Add recent Paper check and new vanilla check for block placement
Fixes #2917
2022-04-04 21:03:43 -04:00
Camotoy
d6cb5bd52d
ItemMappings: use array for ItemMapping class 2022-04-04 14:08:35 -04:00
Camotoy
fb26e263cc
Be more resilient with different enchantment NBT types
Fixes #2911
2022-04-01 15:20:30 -04:00
Camotoy
2a05dd57ff
Don't store GameProfile class of players
This stores repetitive information, and also we don't currently use the signature, so it's wasted memory.
2022-03-30 22:30:49 -04:00
Camotoy
7a5321b78f
Hmm what print line? 2022-03-29 14:38:15 -04:00
Camotoy
f78d2d3d2a
Fix ghost items when taking items out of a furnace 2022-03-29 14:36:58 -04:00
rtm516
0067ba5bb9
Fix jackson versions causing build to fail 2022-03-26 15:56:36 +00:00
rtm516
08051edad1
Update Jackson dependency 2022-03-26 15:49:02 +00:00
Camotoy
238be40c6a
No need to reset when a set times packet is just about to be sent 2022-03-25 20:30:33 -04:00
Camotoy
f639be6362
Better handling of fake cooldown
Because of Bedrock limitations, if a player has text background opacity enabled, they'll see an empty section where the title is usually displayed as the fake cooldown is shown. This commit minimizes the time that is shown by clearing the text as soon as possible. Reference issue: https://github.com/GeyserMC/Geyser/issues/1710

This commit also removes starting the fake cooldown process if the client switches to an inventory slot with the same Java ID.
2022-03-25 20:22:39 -04:00
Camotoy
877301a500
Remove locator map from creative menu; show some map colors
Java allows any map color but Bedrock only allows a few, so we take what we can get.

Fixes #2617
2022-03-23 16:21:04 -04:00
Camotoy
b7de1b668f
Remove unused NibbleArray class 2022-03-23 13:57:58 -04:00
Camotoy
24b0f83742
Change banner item translator into NBT-specific translator
Since we don't need to change any other item properties, this removes a builder hack that had to be implemented.
2022-03-23 13:57:25 -04:00
Camotoy
780218d39d
Consolidate NoteblockBlockEntityTranslator behavior
It was only used in one place that could better use existing code.
2022-03-22 23:03:37 -04:00
Camotoy
10383d31ab
Replace show coordinates string
Use the one built into Bedrock for less maintenance.
2022-03-22 23:01:00 -04:00
RednedEpic
b26879f76c Add deprecated annotaiton so gradle stops complaining 2022-03-19 23:24:57 -05:00
RednedEpic
95747d5649 Add maxPlayers API 2022-03-19 22:35:41 -05:00
RednedEpic
f8e9662665 Add BedrockListener API and fix other stuffs 2022-03-19 22:30:12 -05:00
RednedEpic
9939a26a5b Add RemoteServer API 2022-03-19 21:55:29 -05:00
RednedEpic
1232c02c8e Do not compile ap into jar 2022-03-19 21:13:37 -05:00
RednedEpic
02cda38259 Merge remote-tracking branch 'origin/master' into feature/extensions-gradle 2022-03-19 20:48:14 -05:00
RednedEpic
f53c3b71c0 Update dependencies 2022-03-19 20:46:30 -05:00
RednedEpic
4455dc0ded Merge remote-tracking branch 'origin/feature/extensions' into feature/extensions-gradle 2022-03-19 20:39:59 -05:00
Konicai
87d70be10d
Register floodgate:transfer plugin channel (#2896)
* Register floodgate:transfer channel

* Don't warn on unknown channel
2022-03-19 19:56:34 -05:00
Hancho1577
b81ad3f0db
Prevent async task pool from being full (#2894)
Fixes #2883
2022-03-19 09:45:19 -04:00
Camotoy
732fd90d48
Missed instance of Outdated server 2022-03-18 23:31:25 -04:00
Konicai
f8e983887e
Add method in Connection API for transferring connections (#2891) 2022-03-18 18:59:32 -04:00
Camotoy
b36ec79bbb
Update languages submodule 2022-03-18 10:51:36 -04:00
Camotoy
607e97f988
More descriptive disconnect messages for outdated Java servers 2022-03-18 10:51:22 -04:00
Camotoy
0829b5cd4e
Replicate Bedrock shield behavior more accurately
If the player swings, then they cannot be holding their shield at the same time.

Also fixes an animation edge case with other players.
2022-03-15 13:34:56 -04:00
Camotoy
7f5d81772b Fix inability to toggle sitting of parrots 2022-03-10 15:16:08 -05:00