2775 Commits

Author SHA1 Message Date
Alexander Medvedev
b60f15a95e feat: add pumpkin-plugin-utils 2026-08-17 10:34:07 +02:00
Alexander Medvedev
14337d5285 chore: update pumpkin-plugin-wit submodule 2026-08-17 07:24:57 +02:00
ZlordHUN
cfef833394 Fix Bedrock use item transactions (#2965) 2026-08-16 14:26:23 -07:00
Alexander Medvedev
8ce513ff89 feat: more plugin features 2026-08-16 22:28:01 +02:00
ZlordHUN
4ec5eb8a45 fix(bedrock): NetherNet IP connections (#2968) 2026-08-16 14:40:20 +02:00
Alexander Medvedev
a72531a7c2 fix: chunk leak 2026-08-16 14:32:10 +02:00
Alexander Medvedev
c13c515081 feat(plugin-api): add entity attributes 2026-08-15 18:45:02 +02:00
Alexander Medvedev
0fe84c75d8 fix: ci 2026-08-15 16:30:25 +02:00
Alexander Medvedev
a2b92e6dc5 chore: some fuzz fixes 2026-08-15 13:35:14 +02:00
Noël Hagestein
6e94e6dfca feat(events): use TextComponent for ServerListPingEvent motd (#2912) 2026-08-15 10:26:01 +02:00
H4MM
3c8f537517 fix: lightning rod placement orientation (#2787)
Co-authored-by: Harryarry <htommeyer@mmail.com>
2026-08-15 10:19:19 +02:00
Maksas Gornostajus
635cea3852 fix(net): acknowledge block changes after handling each packet (#2940)
The block change acknowledgement was only sent from the keepalive timer,
so it went out at most once every 15s. Until it lands the client keeps
showing its own prediction for the block it interacted with and drops our
updates for that position.

Vanilla sends it at the end of the packet that carried the sequence, so
move it there.
2026-08-15 10:16:01 +02:00
ZlordHUN
f12b3602d8 fix(bedrock): stop bedrock players from flying after eating (#2928) 2026-08-15 10:13:01 +02:00
QiuHu
ff66c7fa2a fix(command): send success message after teleport (#2921)
* fix(command): send success message after teleport

All seven executors in teleport.rs performed the teleport but never sent a
feedback message to the command sender. Send the existing success
translation keys (entity/location, single/multiple) via sender.send_message.

Fixes #2920

* fix(command): elide needless lifetime in tp success helper

* fix(command): add bedrock translations for tp success message
2026-08-15 10:10:51 +02:00
Xavier horwood
ef3f7aeb0f fix(protocol): banned and whitelist message not showing to players (#2936) 2026-08-15 10:08:37 +02:00
Demetrius Kanios
c10341b80f refactor(bedrock): Move CActorEvent back to SActorEvent (#2949) 2026-08-15 00:05:38 -07:00
Alexander Medvedev
fc063c4dff feat: add missing events 2026-08-14 19:16:05 +02:00
Alexander Medvedev
f27e64afbf chore: add some more events 2026-08-14 15:58:16 +02:00
Bluezly
bd47c40708 fix(plugin): apply WASM packet event results (#2890)
Co-authored-by: Bluezly <Bluezly@users.noreply.github.com>
2026-08-14 13:04:06 +02:00
Megalith
251368c357 feat: implement bonemeal interactions (#2873) 2026-08-14 13:01:27 +02:00
Alexander Medvedev
e09e8c529a feat(plugin): add more block entity api stuff 2026-08-14 11:32:50 +02:00
Alexander Medvedev
00cb2f9240 feat(plugin): native bedrock features 2026-08-13 21:23:23 +02:00
Demetrius Kanios
e0d16c74f2 chore(protocol): Clean up Bedrock by using more derive (#2808) 2026-08-13 11:18:26 -07:00
Alexander Medvedev
0d5f868db6 chore: split packets into separate folders 2026-08-13 19:08:32 +02:00
ZlordHUN
05c692985f fix(bedrock): synchronize colored beds (#2917)
* fix(bedrock): synchronize colored beds

* refactor(bedrock): abstract bed block actor data
2026-08-13 18:21:35 +02:00
Andrew
ddd98c88d9 perf(pathfinder): use FxHashMap in compute_path (#2417)
The rest of the pathfinder already uses rustc-hash's FxHashMap/FxHashSet, but
compute_path's closed_set, the path-reconstruction visited set, and the
Navigator's path_type_overrides were still on the default SipHash hasher.
Switch them to FxHashMap/FxHashSet for consistency and to shave hashing off the
per-repath hot path. Keys are Vector3<i32>/PathType (small, internal). No new
dependency and no behavior change.
2026-08-13 18:14:13 +02:00
Mcxiaocaibug
e61517780a feat: add more dispenser behaviors (#2760)
Adds vanilla dispense behavior for snowballs, eggs, splash and
lingering potions, fire charges, wind charges, firework rockets,
empty and filled buckets, flint and steel (including priming TNT)
and honeycomb.

Refactors the player-path helpers (Ignition::ignite_block, bucket
pickup/placement, honeycomb waxing) so they can be reused without a
Player, and emits the wax-on world event for players as well.

Co-authored-by: Mcxiaocaibug <Mcxiaocaibug@users.noreply.github.com>
2026-08-13 18:08:40 +02:00
Megalith
cb856eb074 fix(block): apply vanilla position offsets to block shapes (#2869)
* fix: apply vanilla position offsets to block shapes

* refactor: use extracted block shape offsets
2026-08-13 18:06:22 +02:00
Alexander Medvedev
5a5bc19bbb feat: add some more entity logic 2026-08-13 17:28:56 +02:00
QiuHu
24d9dbdc6b fix(inventory): decode block-placement and swing hands via from_packet_id (#2876)
The placement and swing packet 'hand' fields use 0 = main hand, but they were
decoded with TryFrom<i32>, which maps 0 -> Hand::Left (that conversion is for
the client's dominant-hand setting). Hand::Left means off-hand in the inventory
API, so the decremented stack was written back to the off-hand instead of the
main hand, causing non-consumed placement and duplication into the off-hand.

Use Hand::from_packet_id for these packet fields and read the item via
inventory.get_stack_in_hand, matching the existing use_item handler.
2026-08-13 14:23:58 +02:00
Alexander Medvedev
a3ab25f53e chore: webrtc 2026-08-13 12:32:17 +02:00
Whiron
9fe599e261 fix: stop stdin console task on EOF (#2524)
Co-authored-by: Whiron <15068326+dnlblasco@users.noreply.github.com>
2026-08-13 10:51:22 +02:00
xRookieFight
c9a6c6a36a fix(world): do not tick entities while their chunk is not loaded (#2842) 2026-08-13 10:48:29 +02:00
ZlordHUN
9d0a7b5ff1 fix(bedrock): synchronize Bedrock chest behavior (#2915)
* Fix Bedrock chest synchronization

* Add Bedrock chest lid animations
2026-08-13 10:24:02 +02:00
ZlordHUN
820840b8bf fix: Bedrock dead player reconnects (#2911) 2026-08-13 10:03:00 +02:00
Eshan I.
757f4bedaf fix(player): match flying fall behavior (#2913) 2026-08-13 10:00:45 +02:00
Alexander Medvedev
2edc79f7cc feat: implement Bedrock cross-edition scoreboard support and remove_objective 2026-08-12 21:50:39 +02:00
Alexander Medvedev
f49e29aa3f feat(bedrock): implement Bedrock status effect packet and translation 2026-08-12 21:31:31 +02:00
Alexander Medvedev
be279fa274 feat(block): implement structure block 2026-08-12 21:05:18 +02:00
Alexander Medvedev
56c3d6c134 feat(block): implement fletching table block 2026-08-12 21:04:53 +02:00
Alexander Medvedev
2bffaee1bf feat(block): implement smithing table block 2026-08-12 21:04:31 +02:00
Alexander Medvedev
1be04b9441 feat(block): implement cartography table block 2026-08-12 21:03:58 +02:00
Alexander Medvedev
5f74b162cd feat(block): implement loom block 2026-08-12 21:03:25 +02:00
Alexander Medvedev
788e369786 feat(block): implement turtle egg block 2026-08-12 21:03:00 +02:00
Alexander Medvedev
22daa1e5d0 feat(block): implement archaeology brushable blocks 2026-08-12 20:46:43 +02:00
Alexander Medvedev
75200d79ae feat(block): implement sniffer egg hatching logic 2026-08-12 20:40:08 +02:00
Alexander Medvedev
c64d6cca70 feat(block): implement creaking heart block logic 2026-08-12 20:38:10 +02:00
Alexander Medvedev
3fcbf9ba3d feat(block): implement calibrated sculk sensor resonance logic 2026-08-12 20:32:22 +02:00
Alexander Medvedev
e9958f5d64 feat(block): implement decorated pot block logic and fix deadlock 2026-08-12 20:28:44 +02:00
Alexander Medvedev
d0cc8a2b51 feat(block): implement vault and trial spawner block logic 2026-08-12 20:18:29 +02:00