3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-11-05 15:50:12 +01:00
Commit graph

1190 Commits

Autor SHA1 Nachricht Datum
onebeastchris
aaad10b8c9 Merge remote-tracking branch 'upstream/master' into dev 2024-06-03 20:54:10 +02:00
Camotoy
8ad10f8a9e
Boats are leashable 2024-06-02 23:36:44 -04:00
Camotoy
65fd409a00
Painting re-implemented. Started on enchantments 2024-06-02 20:42:53 -04:00
Camotoy
214cc5a824
Initial changes for Java 1.21 2024-06-01 01:25:30 -04:00
Camotoy
da5d8006ad
Add native offhand support for *some* items
About 46 items are data-driven enough where we can tell Bedrock these items are permitted in the offhand.
2024-05-30 22:29:00 -04:00
Camotoy
c8fbffb638
Piston head correct pick block behavior 2024-05-29 21:47:50 -04:00
chris
66f30a2cb6
Ensure we send commands/chat the same way a Java client would (#4703)
* Ensure we send commands/chat the same way a Java client would

* yeet static import, move blank check
2024-05-29 23:43:39 +02:00
onebeastchris
8be60b41bf Remove lectern/item frame dropping handling for pre 1.20.60 2024-05-29 22:39:33 +02:00
Camotoy
97d9207c69
Merge branch 'dev' of https://github.com/GeyserMC/Geyser into dev 2024-05-29 00:39:51 -04:00
chris
63c84bc25b
Yeet lectern cache (#4695)
* attempt to yeet lectern cache

* yeet lecternutils usage

* properly update lecterns

* yeet accidental diff
2024-05-29 00:39:39 -04:00
chris
0fcf0f9b4f
Update Bungee version check, create logger earlier (#4697)
* use the logger where possible instead of system.out.print

* make loggers final

* yeet unused constructors

* velocity is more complicated
2024-05-28 17:23:19 +02:00
Camotoy
6c88cc5883
Merge branch 'master' of https://github.com/GeyserMC/Geyser into dev 2024-05-27 14:39:54 -04:00
Camotoy
675faf6bb4
Remove unused chat class 2024-05-27 14:35:02 -04:00
Camotoy
444b5ecee8
Remove BlockStateUpdater dependency
Not currently used
2024-05-27 14:33:11 -04:00
Valaphee The Meerkat
3570caae25
Fix crafting output not updating sometimes (#4692)
* Only cancel crafting grid future if slot == 0

* Add some comments
2024-05-27 16:53:42 +02:00
Valaphee The Meerkat
cb0488a271
Fix NPE in TippedArrow when it has no components (#4694) 2024-05-27 14:08:04 +02:00
Kas-tle
fa6808a620
Bedrock 1.21.0 Support (#4687)
* 1.21.0

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

* Deprecate Bedrock 1.20.70 and below

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

* Strictly disconnect on all exceptions

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

* Remove old version resources

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

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-05-26 23:00:47 -04:00
Camotoy
5f7a31a1d8
Fix #4688 2024-05-25 20:55:05 -04:00
Camotoy
0ea01bfa48
Allow skull pick item NBT 2024-05-25 18:59:37 -04:00
rtm516
d5fdbeb49c
Make allow-third-party-capes default to false (#4690) 2024-05-25 14:19:59 +02:00
Camotoy
ec3327efeb
Minor minor changes 2024-05-23 11:41:26 -04:00
Joshua Castle
377eb07afc
Merge remote-tracking branch 'origin/master' into dev
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-05-22 17:13:09 -07:00
gecko10000
6f4c29c834
Match Advancement Packet Behavior Towards Java (#4684)
* Send advancement packet regardless of current tab

* Send advancement close packet when single-advancement form closed
2024-05-22 11:26:32 +02:00
Camotoy
f7b026d61b
Remove old sneaking/crawling workarounds
Since Bedrock implements these natively, there's no need for extra checks. :)
2024-05-21 20:56:13 -04:00
Camotoy
96bfda2ed3
Fix #4683 2024-05-21 20:37:18 -04:00
Camotoy
0094fa1418
BlockState values can now be switched at runtime
E.G. Blocks.PISTON_HEAD.defaultBlockState().withValue(FACING, Direction.SOUTH)

Some of the inspiration may be thanks to FerriteCore, at least with the shared property keys idea, so thank you to them.
2024-05-21 14:25:57 -04:00
Camotoy
db166ad8de
Small optimizations and BlockStateValues reduction 2024-05-20 21:26:01 -04:00
gecko10000
a780eeaae8
Open advancement tab regardless of currently open tab (#4665) 2024-05-20 19:52:41 +02:00
AJ Ferguson
f489fd3b98 Add TrapDoorBlock 2024-05-20 00:28:40 -04:00
Camotoy
1b075badce
Actually implement adventure mode predicates, kind of.
If it's just block IDs, it'll work.
2024-05-19 23:15:52 -04:00
Camotoy
d85549c38d
BlockMapping is removed 2024-05-19 20:24:19 -04:00
Camotoy
6c904b2378
It's almost done. 2024-05-18 16:37:06 -04:00
chris
8b7703154e
Resolve issue when trying to transfer a Geyser player (#4673) 2024-05-18 21:13:00 +02:00
Camotoy
a439f3e3d7
Fix compilation for Spigot 2024-05-17 21:14:59 -04:00
Camotoy
beef01f3fc
Pistons now use the new block stuff 2024-05-17 20:55:34 -04:00
Camotoy
06dc0d1ca8
Collisions without BlockMapping 2024-05-17 17:52:19 -04:00
chris
5ebb6ef0d6
Fix: using curly brackets in custom Minecraft locale overrides 2024-05-17 22:48:46 +02:00
chris
b010c500d8
Various entity fixes: Ensure TNT doesn't bug into the ground, reset player entity flags properly (#4670)
* Various entity fixes

* actually update the tnt entity position

* revert bad diff
2024-05-17 22:21:01 +02:00
Camotoy
1cd0aad79f
Comment out snow collision
Seems to be unnecessary as of 1.20.30. Will be deleted later if no problems are found!
2024-05-17 15:02:12 -04:00
Camotoy
a46332ace1
Move block breaking to new system 2024-05-17 14:50:21 -04:00
Camotoy
cbaa9cd2a0
Block refactory 2024-05-16 23:12:06 -04:00
Camotoy
9bca012194
Bump Erosion 2024-05-15 15:31:02 -04:00
Camotoy
423d2e3a36
Emulate vanilla behavior with existing registries 2024-05-15 13:41:31 -04:00
Camotoy
6c4b2cb173
Don't create a property manager if an entity has no properties 2024-05-15 13:40:57 -04:00
rtm516
4d61766d0a
Fix SessionSkinApplyEvent not keeping altered skin data (#4663) 2024-05-14 16:38:51 +01:00
rtm516
b11a6d7176
Remove unofficial skin sources and add skin event for extensions (#4507)
* Remove ears and unoffical skin sources

* Remove supplyEars

* Cleanup and add SkinApplyEvent

* Add failed back to skin

* Accept suggestion on SkinGeometry

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

* Add javadoc and update copyright

* Remove old config options

* Make SkinApplyEvent a ConnectionEvent

* Add warning about third-party config options

* Update warning message

* Add javadoc to event

* Fix javadoc

* Ajust for review and bump version to 2.2.4

* Get rid of array and preserve original skin data

* Add originalSkin method to event

* Handle NonNull in SessionSkinApplyEvent

* Revert default copyright change

---------

Co-authored-by: chris <github@onechris.mozmail.com>
2024-05-14 14:22:54 +02:00
Teelair
7801e357fb
Map new Mace enchantments for Bedrock clients (#4653)
* Map new Mace enchantments for Bedrock clients

* Move to using a map for Java-only enchantments.

* Change to using null check for translationKey
2024-05-11 01:20:52 +02:00
chris
e697eb3ae3
Feat: Make connection data exposed in api less prone to throw errors (#4604)
* Feat: Make connection data exposed in api less prone to throw errors

* address reviews

* review
2024-05-10 23:58:27 +02:00
AJ Ferguson
627c2babe9
Fix various mob attack animations (#4627)
* Fix various mob attack animations

* Fix error

* Don't set piglin target unless attacking

* Fix piglin and hoglin shaking effect

* Fix piglin attack animation when switching weapons
2024-05-07 19:26:31 -04:00
Eclipse
cda7a19a08
Fix discarding of custom trim patterns/materials (#4642)
* Fix discarding of custom trim patterns/materials

* Rename `stripNamespace` method to reflect its behaviour
2024-05-07 08:16:21 +02:00
AJ Ferguson
0a261f1d9d
Update MCPL and MCAuthLib (#4645)
* Update MCPL and MCAuthLib

* Bump MCPL
2024-05-06 21:40:32 -04:00
Camotoy
5770c96f48
Indicate support for 1.20.81 2024-05-05 01:29:37 -04:00
Camotoy
b39ed5de53
Panda eating particles are not necessarily bamboo 2024-05-02 20:33:28 -04:00
Camotoy
cab1a20034
Set mappings commit to master 2024-05-02 13:08:09 -04:00
AJ Ferguson
60f8532be3 Fix attribute display text 2024-05-02 06:12:16 -04:00
AJ Ferguson
29a613b85c Use java default area effect cloud radius 2024-05-02 05:04:19 -04:00
AJ Ferguson
d003818e73 Potion fixes 2024-05-02 03:47:30 -04:00
AJ Ferguson
fdae333351 Add data components hash code to translated NBT 2024-05-01 19:06:22 -04:00
Camotoy
cc635d4447
This would probably end up being an issue... 2024-05-01 15:41:27 -04:00
Camotoy
1e8d6b23cf
Different registry implementation; fix banner blocks with ViaVersion 2024-05-01 15:35:30 -04:00
Camotoy
abb1d7d9e9
Indicate Java 1.20.6 support 2024-04-30 18:50:41 -04:00
Camotoy
59a2c0dc02
Use item tags for all animal loved food 2024-04-30 18:35:52 -04:00
AJ Ferguson
aff7d2cf35 Fix potential NPE 2024-04-30 18:05:46 -04:00
onebeastchris
51cbbba47c Merge remote-tracking branch 'upstream/feature/1.20.5' into feature/1.20.5 2024-04-30 21:48:41 +02:00
onebeastchris
4a0a694eb9 revert bad diff 2024-04-30 21:38:25 +02:00
onebeastchris
d99f498901 translate ominous banners 2024-04-30 21:35:21 +02:00
AJ Ferguson
ff9965f559 Translate item repair cost component 2024-04-30 05:49:22 -04:00
AJ Ferguson
74d6a37261 Fix bug when adding enchantments in anvil 2024-04-30 05:49:03 -04:00
AJ Ferguson
dacacc6df8 Anvil renaming 2024-04-30 04:48:15 -04:00
Camotoy
c963503fef
Entity scale attribute is now applied 2024-04-30 00:33:49 -04:00
onebeastchris
28d5db622b revert bad change 2024-04-29 23:41:14 +02:00
onebeastchris
5d3630cf23 ominous banners - this really isn't ideal 2024-04-29 23:19:18 +02:00
onebeastchris
8b7b8cdffd Properly shutdown LocalSession's, ensure transferring works properly regardless if we're injected or not 2024-04-29 16:08:14 +02:00
AJ Ferguson
4ff746e48a Fix translateTag NPE 2024-04-29 04:22:51 -04:00
Camotoy
a82a156419
Firework shapes 2024-04-29 01:03:18 -04:00
Camotoy
88ae447fc6 Fix banner block entity base colors with no patterns 2024-04-29 00:47:52 -04:00
Camotoy
e8c1c2218f Fix banners on shields 2024-04-29 00:35:44 -04:00
onebeastchris
8ab0921448 Merge remote-tracking branch 'upstream/feature/1.20.5' into feature/1.20.5 2024-04-28 23:41:36 +02:00
onebeastchris
9b1e45007a Fix injectors, should work with Spigot/Paper 1.20.5 now 2024-04-28 23:41:13 +02:00
basaigh
420f67752c Fix suspicious stew NPEs 2024-04-28 18:54:34 +01:00
AJ Ferguson
e97bbcc483 Potion effect colors 2024-04-28 02:10:20 -04:00
Camotoy
6d5ac233d6
Dyeable items work. 2024-04-27 21:00:10 -04:00
Camotoy
f47754be03
Goat horns 2024-04-27 15:49:19 -04:00
Camotoy
9217414c8c Merge remote-tracking branch 'origin/feature/1.20.5' into feature/1.20.5 2024-04-26 21:46:38 -04:00
Camotoy
2fa7585db3 Switch to Cloudburst NBT only 2024-04-26 21:44:59 -04:00
onebeastchris
68534f386c Merge remote-tracking branch 'upstream/feature/1.20.5' into feature/1.20.5 2024-04-26 15:36:41 +02:00
onebeastchris
f67c131b8d Forcibly disconnect players even if no server target was set in the JavaTransferEvent 2024-04-26 15:36:26 +02:00
onebeastchris
91a74603c7 idea: deal with cookies and transfer 2024-04-26 14:50:48 +02:00
AJ Ferguson
3656395ce1 Armadillo states 2024-04-25 21:08:38 -04:00
onebeastchris
8e3a3ea453 implement curse of binding check for wolf armor removal 2024-04-26 01:00:14 +02:00
Joshua Castle
99e6a2981d
Entity properties
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-04-25 01:33:18 -07:00
Joshua Castle
652f6af784
Fix custom skulls 1.20.5
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-04-24 18:13:07 -07:00
Camotoy
9d540fe672
Shulker box NPE fix 2024-04-24 16:41:02 -04:00
Camotoy
b29e0d9d10
Move MCProtocolLib to dev - package ID change 2024-04-24 16:39:35 -04:00
AJ Ferguson
9490a091b5
Calculate horse inventory size 2024-04-24 16:26:59 -04:00
Camotoy
a1534e4535
Basic Armadillo structure 2024-04-24 16:26:59 -04:00
AJ Ferguson
bbaffb2ab3
Wolf interactions 2024-04-24 16:26:59 -04:00
Camotoy
c54624fb26
Fix some cases of empty tags being needed 2024-04-24 16:26:59 -04:00
Camotoy
abea0131e4
Fix llama carpets 2024-04-24 16:26:59 -04:00
Camotoy
b81408820b
Refactor TagCache to be extensible
Previously, for any new tag, we would have to add a field, add the line to load it, add the line to clear it, and make a method for that tag. Now, you just add an enum.
2024-04-24 16:26:58 -04:00
onebeastchris
c48428daf0
init: pick item component change 2024-04-24 16:26:58 -04:00
AJ Ferguson
9d8edad9fc
Fix horse inventory 2024-04-24 16:26:58 -04:00
Joshua Castle
3f499e3ec0
Start on custom skulls
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-04-24 16:26:58 -04:00
AJ Ferguson
1bdbcab4e8
Wolf variants 2024-04-24 16:26:58 -04:00
AJ Ferguson
d3f902ae34
Banners 2024-04-24 16:26:58 -04:00
Camotoy
11f79d4e2c
Refactor Java registry storage; implement trim support 2024-04-24 16:26:58 -04:00
onebeastchris
6a5efa3c9d
Start on 1.20.5 mod platform support - NeoForge (temporarily) excluded
Also fixes lecterns, and block break speed calculations
2024-04-24 16:26:58 -04:00
Camotoy
c34f0f2c3b
Update for latest MCProtocolLib 2024-04-24 16:26:58 -04:00
basaigh
dac5f69d47
Bump mcpl 2024-04-24 16:26:58 -04:00
AJ Ferguson
8381a148fc
Fix book signing 2024-04-24 16:26:58 -04:00
onebeastchris
c5e02d28e6
ensure geyser builds 2024-04-24 16:26:58 -04:00
onebeastchris
b73f23de0f
remove global palette bits, fix nullable block entity tags 2024-04-24 16:26:58 -04:00
basaigh
57ce5706ee
Update mappings submodule 2024-04-24 16:26:58 -04:00
Camotoy
61907b1851
Little more work 2024-04-24 16:26:57 -04:00
Camotoy
687ddbb520
Tiny fixes 2024-04-24 16:26:57 -04:00
AJ Ferguson
ab8832b771
Compiles 2024-04-24 16:26:57 -04:00
Camotoy
8bd2df0828
Trying to get more compiled but brain is officially fried for the day! 2024-04-24 16:26:57 -04:00
basaigh
94e533ea7c
Fix tags and attributes 2024-04-24 16:26:57 -04:00
Camotoy
aed7f1bed7
Update the item parts 2024-04-24 16:26:57 -04:00
basaigh
6d8021f155
Update the non-item parts (#4586)
* Update the non-item parts

* Add MaceItem

* Fix registry data loading
2024-04-24 16:26:57 -04:00
Camotoy
909139326d
Keep chugging away 2024-04-24 16:26:57 -04:00
Camotoy
c1edf20734
Here's the idea so far 2024-04-24 16:26:57 -04:00
Camotoy
099e968bde
Initial, incomplete pass at Java 1.20.5 2024-04-24 16:26:57 -04:00
Kas-tle
2471de100b
Add system property Geyser.RakSendCookie to allow disabling cookie send (#4598) 2024-04-24 06:56:15 -07:00
AJ Ferguson
c19b4ad306
Check if boat is valid when updating paddles (#4597)
* Check if boat is valid when updating paddles

* Add comment

* Refactor boat paddling to use ticks

* Null check
2024-04-24 05:41:57 -07:00
AJ Ferguson
16385a4e2b
Check if session is closed when running scheduled tasks (#4595) 2024-04-24 01:39:37 -04:00
Kas-tle
3bd5ab7f35
Use old SetEntityMotionSerializer for codec < 662 (#4593) 2024-04-23 11:23:09 -07:00
Camotoy
d706e9e70f
Serialize disconnects 2024-04-23 12:34:24 -04:00
Kas-tle
3fa7952936
1.20.80 Support and Protocol Changes (#4561)
* Make evil more harder

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

* Deregister more unused packets

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

* Add more unused packets

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

* Pin protocol to 68dc192

* Correction

* Update Protocol

* More kicking

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

* stop reading when there is no item to read (#9)

* Bump protocol

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

* 1.20.80

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

* Remove unused postinitchannel GeyserServerInitializer

* Pull protocol jitpack from cloudburst again

* Actually builds

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

* Bump protocol to fix BossEventPacket & EmotePacket

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

* Add remove before merge comment

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

* Bump protocol to fix BlockEntityDataPacket and ignore serverbound BossEventPacket

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

* Bump protocol & add more illegal/ignored packets

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

* Remove deprecated packet

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

* Ignore ClientCacheStatusPacket instead of disallow

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

* Define static serializers

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

* Less static class nonsense more correct order

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

* Remove unused import

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

* Bump protocol

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

* Move codec processing to CodecProcessor

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

* Falsify recipe symetry assumption

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

* Update Protocol for 2 wrong packet IDs & 5 wrong directions

* Jitpack protocol from Geyser repo

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
Co-authored-by: chris <github@onechris.mozmail.com>
2024-04-23 09:16:18 -07:00
AJ Ferguson
810c9ced72
Fix filled cauldrons only showing as water (#4585)
* Fix filled cauldrons only showing as water

* Update comment
2024-04-20 17:21:39 -04:00
Kas-tle
525a9ccec4
Fix Preview Workflow (#4583)
* Fix preview workflow

* Correct path to artifacts

* Uncomment repo checks

* Don't enforce repo/branch on preview deploy

* Correct paths-ignore for build
2024-04-20 02:47:00 +01:00
chris
94f664ad8d
Fix: Properly check whether the so_reuseport socket option is available (#4579)
* Try to properly check if so_reuseport is available

* io_uring "support"

* comment out io_uring, for now

* Make IO_uring opt-in via `-DGeyser.io_uring=true` flag

* dont include io_uring

* oops - bungee 

editing on mobile is hard

* oops - spigot

* oops - velocity

* properly exclude all io_uring on all platforms except standalone

---------

Co-authored-by: Kas-tle <26531652+Kas-tle@users.noreply.github.com>
2024-04-19 11:50:40 +02:00
AJ Ferguson
c3ffd65f48
Fix default wolf and cat collar color (#4582) 2024-04-19 05:41:06 -04:00
ookiegajwa
0cc2921eda
Translate scoreboard display name and number format (#4567)
The following caveats apply because selectively removing or modifying the score numbers on Bedrock cannot be done without removing all of them:
* "blank" and "styled" number formats are ignored for "list" and "sidebar" display slots
* The "fixed" number format is appended to the end of the "list" and "sidebar" entry names instead of replacing the score number
* The "below_name" slot has no limitations and displays identically to Java
2024-04-18 21:23:33 -04:00
AJ Ferguson
815456c549
Reset metadata and attributes if needed when respawning (#4566)
* Reset metadata and attributes if needed when respawning

* Minor edits

* Reset attributes in JavaLoginTranslator

* Fix client bug when updating absorption and health in the same tick
2024-04-18 00:16:41 -04:00
AJ Ferguson
576a1b7d7a
Remove map cache (#4576) 2024-04-17 17:53:56 -04:00
chris
7a20a190a0
Feature: Structure block translation (#4521)
* ported camotoy's attempt of implementing structure blocks, removal of a few TODO's

* no more parsing of java structure templates

* Don't attempt to re-request structure size

* ensure we can load structures in even if we know the size

* init: send correct structure size/offset/rotation to java, not fully working yet

* restore offsets so we are sending correct values to the java server regarding where we want the structure to be placed

* something something mirror

* attempt at proper offsets for mirroring AND rotations. this was not fun at all

* rotation, mirror, offsetting all seem to work

* undo import changes

* fix NPE

* Proper handling of empty structures, ensure that we can clear the structure block outline when a zero vector was sent for structure size

* oops

* Update core/src/main/java/org/geysermc/geyser/session/cache/StructureBlockCache.java

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Update core/src/main/java/org/geysermc/geyser/translator/level/block/entity/StructureBlockBlockEntityTranslator.java

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Update core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockStructureBlockUpdateTranslator.java

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Update core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockStructureTemplateDataRequestTranslator.java

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* consolidate java structure sending into one method

* fix merge conflict
---------

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2024-04-17 23:21:25 +02:00
AJ Ferguson
c8475d8100
Always remove entities from cache (#4577)
* Always remove entities from cache

* Despawn throwable entities in the void
2024-04-17 03:18:17 -04:00
Kas-tle
5151c25e1a
Support RakNet Cookies (#4554)
* Support cookies

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

* Use cloudburst upstream raknet

* Comment out mavenLocal()

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-04-16 20:52:46 -07:00
rtm516
e856a8af84
Fix user agent strings (#4562) 2024-04-12 13:12:38 +01:00
Eclipse
ca0e226aac
Fix breaking of custom head blocks added by Polymer by adding a default fallback to block mappings (#4557) 2024-04-11 03:05:15 +02:00
Camotoy
fa2e4e5a94
Reduce processing for incoming TrimDataPackets 2024-04-07 22:44:58 -04:00
Denys Loshkarev
3d9f3ac645
Show 1.20.73 as being supported (#4543)
* update version supported by plugin

* Update README.md
2024-04-07 01:12:56 +03:00
Eclipse
1819ed4dbd
Remove Java custom armor trims when translating item to Bedrock to prevent visual issues (#4548)
* Fix (or workaround) armor items with custom armor trims having no texture on bedrock

* Fix armor items with custom trims causing issues on entity models by removing the Trim tag entirely

* Refer to minecraft namespace inline for consistency
2024-04-04 11:55:00 -07:00
rtm516
47237e07b7
Fix block custom registration failing with simmilar named items (#4540) 2024-04-02 00:10:12 +01:00
Kas-tle
08aa5282d4
Ensure proxiedAddresses is not null before lookup (#4539) 2024-04-01 15:50:58 -07:00
Sage
fa441f1c7b
Add ConnectionRequestEvent (#4533)
* Add ConnectionRequestEvent and implement it

* Add debug message and use InetSocketAddress instead of string

* Provide both proxy and real client ip

And add some minor javadocs

* Make ProxyIp nullable

* Apply changes from pr

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Apply changes from pr

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Apply changes from pr

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

* Bump API version

* Dont JiJ common on mod platforms

---------

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
Co-authored-by: Kas-tle <26531652+Kas-tle@users.noreply.github.com>
2024-04-01 14:33:12 -07:00
Kas-tle
c9ca4c82f7
Allow configuration of RakNet limits (#4532)
* Allow configuration of RakNet limits

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

* Validate packet limiter system properties

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

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-03-31 21:42:31 -07:00
rtm516
fbafdbb2a7
Allow NonVanillaCustomItemData to have a block assigned (#4530) 2024-03-31 12:01:59 +01:00
chris
85908690a3
Revert inventory "fix" that's causing issues with quickly opening & closing inventories (#4523) 2024-03-27 01:47:21 +01:00
rtm516
4ea94f89a2
Fix entity pick request for cherry and bamboo boats (#4522) 2024-03-24 21:30:00 +00:00
CloudyOrk
c64e8afcce
Indicate existing 1.20.72 support (#4515)
* update supported version

* Update GameProtocol.java

* Update GameProtocol.java

---------

Co-authored-by: Kas-tle <26531652+Kas-tle@users.noreply.github.com>
2024-03-22 12:03:17 -07:00
chris
4fa0bcd01b
Update Jackson (#4512)
* Update jackson

* relocate yaml on velocity
2024-03-21 19:05:41 +01:00
chris
b03818a0c4
Add attack damage indicator to custom items (#4495) 2024-03-18 19:41:36 +01:00
chris
112f4ddb8d
Fix: Inventory handling when client tries to open the player inventory when it shouldn't (#4499)
* attempt at fixing <https://github.com/GeyserMC/Geyser/issues/4497>

* Fix wrong handling of OPEN_INVENTORY case in BedrockInteractTranslator
2024-03-15 17:33:48 +01:00
chris
c3d4277ae6
More error-robust kernel version parsing (#4496)
* should resolve https://github.com/GeyserMC/Geyser/issues/4492

* Use regex to parse version

* yeet debug

* Only log the throwable message
2024-03-15 13:52:34 +01:00
chris
c91ee53788
Fix virtual lecterns - again (#4494) 2024-03-14 10:27:49 +01:00
chris
39b05e284e
update protocol lib to resolve command crashing (#4493) 2024-03-13 12:25:30 -07:00
Kas-tle
a9467cf150
Temporary bad fix for command crashing (#4490)
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-03-13 02:54:39 -07:00
Kas-tle
7e4d97f6e1
Fix wooden slabs (#4489)
* Fix wooden slabs

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

* Update submodule

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

* Also indicate 1.20.71 support

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

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-03-13 02:05:41 -07:00
Kas-tle
1df63c6de8
Support Bedrock 1.20.70 (#4477)
* Support 1.20.70

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

* Update readme

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

* Use 1.20.70 mappings

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

* Creative lectern drops work but not survival yet

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

* Fix lectern book pickup in survival

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

* Add copyright notices to new files

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

* Temp fix for incorrect creative_items from Cloudburst/Data

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

* Fix item frame breaking in creative

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

* Clarify what to remove when 1.20.60 support is dropped

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

* Don't use dim change enum pre 1.20.70

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

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-03-11 00:29:27 -07:00
Kas-tle
a0fd720e7c
Fix client crash issue if empty recipe is sent (#4485)
* Fix client crash issue if empty recipe is sent

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

* More efficent order

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

* Recipes are recipies

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

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-03-11 00:03:37 -07:00
chris
0ad7c4325d
Fix: Workaround for recipes involving custom items to show up in the recipe book (#4484)
* Allow adding custom items to the creative inventory in order for recipes outputting said custom items to work

* yeet includeInCreativeInventory as it would break existing nonvanilla extensions - and is pretty pointless anyways

* rename mappings to `creative_group` and `creative_category`

* delete outdated comment
2024-03-10 23:38:38 +01:00
Kas-tle
527eab0b58
Cap render distance at 96 (#3530)
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
Co-authored-by: onebeastchris <github@onechris.mozmail.com>
2024-03-09 04:51:32 +01:00
chris
32f66371d9
Should resolve https://github.com/GeyserMC/Geyser/issues/4121 (#4481) 2024-03-08 21:30:17 +00:00
rtm516
1af24e5547
Add new village map icons (#4480) 2024-03-08 21:24:15 +00:00
chris
79154f3d0c
Fix: Lecterns not opening when there is no lectern cache (#4476)
... the LecternCache doesn't always exist. Oops.
2024-03-04 00:39:57 +01:00
chris
5d95bf65a6
Fix lecterns on 1.20.60, add support for virtual books (#4471)
* Fix lecterns on 1.20.60, start on virtual lecterns

* Fix: virtual books & actual books opening twice, resolve other issues, remove debug

* undo some unnecessary diff

* Don't try to send virtual books to pre 1.20.60 clients

* address review by camotoy
2024-03-02 03:21:31 +01:00
rtm516
3c4a1a82c9
Deprecate unit cube in block components (#4470)
* Depricate unit cube

* Didn't mean to remove that
2024-03-02 01:56:35 +01:00
Redned
97fc2de42f
NeoForge Platform Support (#3781)
* Initial work on Forge platform

* Rework modded platforms to use a common module

* Add support for integrated worlds on modded platforms

* Fix classload errors and move mixins to shared module

* Fix Fabric mixins and check min height in mod world manager

* Add Forge command support

* Add back modrinth publishing

* Don't apply application plugin to shared mod sources

* Fix docs

* Delete unused class

* Clean up repositories

* - Update to 1.20.2
- set custom refmap name
- fixed console commands crashing the server (hasPermission now accepts CommandSourceStack instead of Player)
- Forge wants fastutil relocated, so be it

Current issues:
- ClassNotFound exceptions with classes that are clearly present

* - Fix ClassNotFound errors on Forge due to weird Classloader
- Dont relocate gson

* merge upstream

* oh no

* Bump lombok, architectury-loom

* init: neoforge 1.20.4 support

* NeoForge builds

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

* Archive neoforge artifacts

* transformForge -> transformNeoForge

* Neoforge boots!
* Fix mixins on neoforge
* Update build/pr file names
* Update mods.toml to new neoforge standard
* Fix refmap naming

* more fixes
- no need to include gson
- cleanup nullable/nonnull annotations
- add more info to geyser dumps on neoforge

* yeet platform executor

* yet another temp branch to figure out the runServer task

* yeet transitive dependency, that cant be right

* Attempt at getting the runServer task to work, part two

* Revert the changes for the runServer task, try and shut down the injector

* Remove spigot weird bug workaround, shut down properly
Also add a compileOnly dependency for the mod module to get rid of spammy false warnings

* Update to latest restart changes
- fix duplicate nodes crashing neoforge
- connector -> geyser in GeyserModCommandExecutor
- create command manager early to fix issues with permission gather event

* Consistent NeoForge spelling, move some dependencies to the version toml

* Add lombok to version catalogue

* Add plugins to version catalogue

* revert move to buildSrc

* Create `assets/geyser/icon.png` to reference icon from a single file on standalone/neoforge/fabric

* add fabric permissions api to libs.versions.toml

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
Co-authored-by: onebeastchris <github@onechris.mozmail.com>
Co-authored-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2024-02-23 17:58:39 +01:00
RK_01
aca368e332
Implemented ViaProxy bootstrap (#4201)
* Implemented ViaProxy bootstrap

* Applied requested changes to code

* Override indra settings to Java 17

* Removed explicit java source/target version

* Added ViaProxy artifact to build.yml

* Added ViaProxy artifact to pullrequest.yml

* Updated ViaProxy API usage

* Implemented floodgate support for ViaProxy

* Depend on stable ViaProxy release

* Initialize command manager and ping passthrough before Geyser#start

* Revert "Initialize command manager and ping passthrough before Geyser#start"

This reverts commit 39356071c4.

* Some ping passthrough improvements

* Merged code properly

* Updated ViaProxy API usage

* Implemented better command handling

* Updated ViaProxy and Geyser API usage

* Combine bootstrap and plugin into one class

* Minor code improvements

* Call Geyser shutdown on plugin disable

* Only call disable if Geyser was enabled once

* Don't send two shutdown done messages

* Use setter for enabled boolean
2024-02-19 22:25:49 +01:00
byquanton
8b170d656e
Fix: Nametags are not shown in some other cases (#4447) 2024-02-15 22:22:46 +01:00
byquanton
e97258f625
Fix: Nametags not showing up after respawn (#4445) 2024-02-15 14:57:51 +01:00
chris
6a51d8298f
Feature: Rework startup logic (#4377)
* This makes `geyser reload` work the same across all platforms. For example, it ensures that we reload the config to the greatest extent possible (with the exception of compression/injection settings). Additionally, this clears up issues where Extensions were previously disabled during reloading - instead, the new Pre and Post reload events allow extensions to reload whatever necessary on their own.
2024-02-14 12:50:50 +01:00
chris
19c6648bc2
Fix: Nametags not showing up (#4427) 2024-02-08 17:30:01 +01:00
chris
63fd97ab32
Fix: Crashing due to custom bows/crossbows/tridents (#4421)
* initial stab at fixing crashing due to removal of the chargeable component

* remove hardcoded animation
2024-02-07 18:17:51 +01:00
Kas-tle
e6636ec9fe
Weapon component is deprecated (#4417) 2024-02-07 06:15:36 -08:00
chris
19a3dc3c4b
Support Bedrock 1.20.60 (#4415)
* Start on 1.20.60 support

* fix dimension switching

* Fix custom item icons... thanks mojang

* fix custom blocks/custom skulls breaking all block mappings

* - replace 10000 with static final variable

* fix: creative items not being found

* versioned custom item registration

* fix compression level setting
* show 1.20.61 as supported
2024-02-06 20:11:17 +01:00
千飞夏
226a4bb151
Use multiple channels at startup, fix the occasional issue of all pla… (#4329)
* Use multiple channels at startup, fix the occasional issue of all players getting disconnected.

* Standardized shutdown periods and refactored network handlers for improved consistency.

* tiny fix

* Let's use the system property

---------

Co-authored-by: chris <github@onechris.mozmail.com>
2024-02-02 16:25:50 +01:00
chris
f555dc0a92
Feature: Camera/Input locking API (#4332)
Adds API methods to control player cameras - including fancy transitions,  color fades, or simple input locks.
2024-01-31 11:21:06 +01:00
rtm516
07150db592
Fix language key typo when floodgate encryption fails (#4412) 2024-01-28 22:49:47 +00:00
chris
61b3ffd0de
Feature: Allow setting a different port in the motd (#4293)
* Allow changing the broadcasted port using a system property. This may be needed if the port Geyser runs on & the port Bedrock players connect on do not match - e.g. due to port forwarding/different routing.

* initial stab at making the broadcast port an (unsafe) config option

* Automatically set broadcast port to be the bind port unless manually overridden

* Warn about broadcast port mismatch

* Use 0 instead of -1 as indicator to broadcast the port geyser is running on
2024-01-24 22:28:03 +01:00
rtm516
3f577f4128
Add fetching MC versions and Console from the extensions API (#4168)
* Add fetching MC versions and Console from the extensions API

* Address reviews, expose custom MinecraftVersion interface

* Rename of McVersion -> MinecraftVersionImpl; proper nonnull annotation

* fluent consoleCommandSource(), change MinecraftVersion#name() to versionString()

* Javadocs adjustments

* Create impl package and move `MinecraftVersionImpl` there

* api version bump

---------

Co-authored-by: onebeastchris <github@onechris.mozmail.com>
2024-01-24 22:20:30 +01:00
chris
97ba6a25e6
Don't warn if clients send subchunkrequest packets (#4395) 2024-01-24 21:18:09 +01:00
chris
7bcecdf403
Fix: Opening inventory menus in spectator mode (#4407)
Revert to spectator_viewer instead of the native Bedrock spectator menu. While it looks uglier - e.g. it's showing health/hunger bars; it allows opening menus. It'll also be needed for entity spectating, since clicking on things isnt possible in bedrocks spectator mode
2024-01-23 00:34:53 +01:00
chris
87779dca88
Gracefully handle invalid stone cutter recipes (#4406)
* Gracefully handle invalid stone cutter recipes

Further various little fixes:
- bump source version in AP to 17 to silence build log spam
- remove unneeded close() on auto-closable resource
2024-01-22 19:21:12 +01:00
chris
16f9f0d94f
Don't try to show the server settings form to players who are not logged in (#4387)
* Don't show the server settings form to players who are not yet logged in

* Add brackets to if statement
2024-01-20 12:03:32 +01:00
Camotoy
7613bdbafe
Fix https://github.com/GeyserMC/Geyser/issues/4378 2024-01-04 13:49:01 -05:00
chris
46bde0c019
Fix: protocol being null during online mode login (#4369)
* fix: protocol being null during online mode login

* gimme more space

* add debug logging for too early downstream packet sending
2023-12-31 02:24:44 +01:00
Kas-tle
b0ccf45cd4
Closes GeyserMC/Geyser#4358 (#4360)
Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
2023-12-23 18:06:06 -08:00
Tim203
58ff00db96
Fixed an issue where there would be a null score in SetScorePacket 2023-12-16 23:42:59 +01:00
Konicai
a13492e0ed Final 1.20.4 cleanup 2023-12-14 21:31:14 -05:00
Konicai
d3a4b13364 cleanup 2023-12-14 21:31:14 -05:00
Konicai
21a2c2332f translate trial spawners, cleanup 2023-12-14 21:31:14 -05:00
Konicai
22009054ab Crafter translation 2023-12-14 21:31:14 -05:00
Konicai
e2062dd182 Reimplement support for 1.20.40 2023-12-14 21:31:14 -05:00
Konicai
9b53f2efd1 Update 1.20.50 creative items to include experimental items
also remove the old unused ones
2023-12-14 21:31:14 -05:00
Konicai
701e567818 Enable 1.21 experimental features 2023-12-14 21:31:14 -05:00
Konicai
c7da8fe163 Better nullability annotations/handling for ItemStacks 2023-12-14 21:31:14 -05:00
Konicai
f0e983977a update mappings 2023-12-14 21:31:14 -05:00