Commit Graph

2376 Commits

Author SHA1 Message Date
kedor
ed0bf820f7 feat: Add the display position calculation of the advancements (#2256)
* generate the placement of the advancements to be display rightfully for the client

* fix typos with appropriate naming
2026-06-24 18:20:12 +02:00
Mark
8f7ec2464e fix(client): preserve vanilla modifier identifiers in synced updates (#1997)
* fix(attributes): Update modifier id to use string identifier instead of Uuid to prevent modifier duplication on client

* style: format enderman imports

* fix(entity): use vanilla enderman attacking modifier id

---------

Co-authored-by: Missing_Love <42416195+Q2297045667@users.noreply.github.com>
2026-06-24 18:12:43 +02:00
PigTurtle
eaf1bf3cbe fix(compile-times) replaced const arrays with statics (#2281)
the const [&T; 29873]s for block(state) mapping were being inlined ~300 times just to be deduplicated by LLVM.
They are now statics but are accessed via const fns.
This improves compile times by roughly 12 minutes.
2026-06-24 18:11:37 +02:00
PigTurtle
48dcc82985 chore(pumpkin/compile-times): remove unused module declarations from main.rs (#2284)
the modules are already declared in the lib part of the pumpkin crate and were being typechecked twice
2026-06-24 18:04:31 +02:00
Alexander Medvedev
d0d760de6a fix: bedrock 26.30 2026-06-24 18:03:08 +02:00
Alexander Medvedev
461a5eb768 fix: ci 2026-06-22 20:09:55 +02:00
Alexander Medvedev
a8669b8582 fix: typo 2026-06-22 19:52:35 +02:00
Alexander Medvedev
74beb9738a fix: https://github.com/Pumpkin-MC/Pumpkin/issues/2276 2026-06-22 19:28:25 +02:00
Alexander Medvedev
ca71ffcb6f fix: mappings-26.2to26.1 2026-06-22 18:32:27 +02:00
Alexander Medvedev
0c1cb25c05 feat: set camera for spectators 2026-06-22 17:57:36 +02:00
Alexander Medvedev
65fe9f0af0 feat: add bundles 2026-06-22 16:59:31 +02:00
dependabot[bot]
eaedfdc13b build(deps): bump actions/checkout from 6 to 7 (#2286)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 09:03:25 +02:00
Alexander Medvedev
ed8833d375 fix: ci 2026-06-21 21:58:59 +02:00
Alexander Medvedev
5f60d23804 feat: villager Professions 2026-06-21 21:54:10 +02:00
Alexander Medvedev
daa0111009 feat: add minecarts 2026-06-21 15:01:06 +02:00
Alexander Medvedev
c52531b37a feat: Implement Trident 2026-06-21 07:55:09 +02:00
perplexinglysimple
e0ec4f9569 fix: allow snow layers to be placed on top of leaves (#2246)
Snow placement checked is_side_solid (isSideSolidFullSquare / support
shape), which leaves override to be empty. Vanilla's SnowBlock#canPlaceAt
instead checks the snow_layer support tags and whether the block's
collision shape fully covers the top face — leaves have a full-cube
collision shape, so they should support snow layers.

Fixes #2218
2026-06-20 21:55:03 +02:00
Laptop59
11380eb38a feat(command): implement column pos argument type (#2237)
* initial commit

* added a new struct `ColumnPos` and suggestions for the new argument type

* remove examples that don't actually work
2026-06-20 21:49:21 +02:00
BitForge
c70b17d058 fix(entity): persist dropped items across reconnect (#1987)
* fix(entity): prevent duplicate items and drop animation replay on reconnect

When a player reconnects, spawn_world_entity_chunks unconditionally
created new entity instances from chunk NBT, even if those entities
already existed in the world (e.g. another player still tracking them).
This caused three bugs:

1. Drop animation replay: read_nbt_non_mut restores the original drop
   velocity from NBT, so the client renders items as if they were just
   dropped again.
2. Uncollectable ghost items: duplicate entities with different
   entity_ids but the same UUID desync client and server state, making
   items impossible to pick up.
3. Dupe glitch: the same chunk NBT entry spawns a second entity on
   every reconnect, duplicating items in the world.

Fix by:
- Checking world.entities for existing entities with the same UUID
  before creating new ones; if found, only send spawn packet for the
  existing entity to the reconnecting player.
- Clearing velocity to zero after NBT restore so the spawn packet does
  not carry stale drop velocity.
- Adding a UUID dedup guard in add_entity_silent as a second line of
  defense.

* fix(item): restore NBTStorage for ItemEntity to fix ghost items after reconnect

Re-implement write_nbt/read_nbt_non_mut to persist and restore:
- Item compound (via write_item_stack/read_item_stack)
- Age, PickupDelay, Health

Add new_for_restore() constructor without random velocity.

Update EntityType::ITEM dispatch to use new_for_restore() instead of
ItemEntity::new() with AIR.

* fix(clippy): resolve doc-markdown and collapsible-if in ItemEntity

---------

Co-authored-by: Missing_Love <42416195+Q2297045667@users.noreply.github.com>
2026-06-20 20:33:03 +02:00
Jan1k
04639715df fix: prevent statistic overflow panics (#2271) 2026-06-20 20:27:54 +02:00
Alexander Medvedev
1509276b5c fix: ci
ofc
2026-06-20 20:15:13 +02:00
Alexander Medvedev
23e7992b2d Port to 26.2 2026-06-20 20:07:31 +02:00
Alexander Medvedev
8ce76261ac feat(bedrock): add creative content 2026-06-19 18:52:50 +02:00
Demetrius Kanios
02f6c8994e fix(plugin): inherit_stdout and inherit_stderr in Wasm plugins (#2273) 2026-06-19 16:37:53 +02:00
kedor
fb3b146fdd feat: add advancement progress (#2261)
* implementing the advancement progress so each advancement has certain requirements to be mark has complete

* cargo fmt

* fix test

---------

Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
2026-06-15 14:50:12 +02:00
dependabot[bot]
8394c27212 build(deps): bump alpine from 3.23 to 3.24 (#2267)
Bumps alpine from 3.23 to 3.24.

---
updated-dependencies:
- dependency-name: alpine
  dependency-version: '3.24'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-15 14:45:00 +02:00
Alexander Medvedev
8634d8740f fix: nether/end 2026-06-13 22:44:29 +02:00
Alexander Medvedev
38a924e6ce fix: slimes 2026-06-13 19:14:33 +02:00
Alexander Medvedev
68bae5899e feat: add stats 2026-06-12 20:55:29 +02:00
kedor
3b3ae983e4 feat: add saving/loading advancements (#2257)
* implementing the saving and loading advancements for the different players

* fix format
2026-06-12 16:39:11 +02:00
kedor
fda79cbc41 feat: adding barebone advancement codegen (#2251)
* implementing the barebone generation of

* cargo fmt

* fixing CI

* fixing unused import

* updating advancements.json file

* remove useless modification for identifier.rs

* fixing CI and typos

* remove bad modification

* update pumkin-plugin-wit
2026-06-12 07:07:10 +02:00
Alexander Medvedev
b4a652c68c fix: ci 2026-06-12 06:58:14 +02:00
Alexander Medvedev
acb295b250 fix: ci/test 2026-06-11 23:02:42 +02:00
Alexander Medvedev
5b8eab0f56 feat: initial village support 2026-06-10 23:07:10 +02:00
Daniil Nartsissov
30303a8cbd chore(nix): fix and update flake (#2252) 2026-06-10 14:41:39 +02:00
Alexander Medvedev
7bff068dff fix: discord links 2026-06-09 16:49:32 +02:00
Alexander Medvedev
dd524b6ef9 Revert "feat: implementing the base generation of advancement (#2236)"
This reverts commit decfc460b2.
2026-06-09 16:49:14 +02:00
ChocoDev
636331ead3 chore update world generation benchmark (#2216)
* benchmark

* clippy
2026-06-09 16:01:40 +02:00
kedor
decfc460b2 feat: implementing the base generation of advancement (#2236)
* implementing the barebone generation of

* cargo fmt

* fixing CI

* fixing unused import

* updating advancements.json file
2026-06-09 16:00:37 +02:00
Greened
046894c371 chore: code tweaks (#2245)
* chore: utilize player.rotation() for yaw and pitch

* chore: remove duplicate shooter id

* chore: introduce is_sneaking() is_sprinting() and is_fall_flying() functions

---------

Signed-off-by: Greened <108997309+GreenedDev@users.noreply.github.com>
2026-06-09 15:47:50 +02:00
Alexander Medvedev
3d15f6fecd feat(plugin-api): add some more stuff 2026-06-09 15:46:05 +02:00
Glory
dc6ad807ce fix(items): ender pearl logic and item cooldown (#2189)
* fix: throw sound pitch

* fix: ender pearl teleporting player to wrong position

* impl: spawn endermite on ender pearl collision

* fix: check world rules before spawning endermites

* impl: ender pearl damages collided entity

* impl: item use cooldown

* fix: cooldown_group in pumpkin-codegen

* resolve merge conflict

---------

Signed-off-by: Glory <89966094+gloryrunner@users.noreply.github.com>
Co-authored-by: Missing_Love <42416195+Q2297045667@users.noreply.github.com>
2026-06-08 13:27:29 +02:00
dependabot[bot]
707186ddab build(deps): bump crate-ci/typos from 1.47.0 to 1.47.2 (#2249)
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.47.0 to 1.47.2.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/v1.47.0...v1.47.2)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-version: 1.47.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-08 08:14:34 +02:00
Alexander Medvedev
b08be9e158 feat(bedrock): add container open 2026-06-07 21:12:16 +02:00
Alexander Medvedev
e47695d810 feat(bedrock): add item drops 2026-06-07 14:34:54 +02:00
Greened
3a5f2d0855 chore: Only send some packets to players who are tracking the chunk (#2241)
* chore: replace player.living_entity.entity with player.get_entity()

* chore: replace more

---------

Signed-off-by: Greened <108997309+GreenedDev@users.noreply.github.com>
2026-06-07 08:17:53 +02:00
Demetrius Kanios
2283048b9b feat(bedrock): Initial inventory setup (#2215)
* Initial asset prep, and `CItemRegistry` packet (vanilla; no Java fixes).

* Fix definition component NBTs.

* Packet fixes and dummy stick.

* Map actual player inventory & add stack UIDs

* Cleanup

* Update assets README
2026-06-07 07:59:06 +02:00
Greened
1bd6eef2a4 feat: Implement TakeItemActor for bedrock (#2239)
* fix: only send TakeItem packet to tracking players. implement TakeItemActor packet for bedrock

* fix: clippy warnings

* feat: introduce macros for VarLong and VarULong

* chore: change source

---------

Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
2026-06-06 16:10:51 +02:00
Alexander Medvedev
c17e7124d8 feat: extend packet send and receive events 2026-06-06 10:13:53 +02:00
Alexander Medvedev
376001dbd4 fix: register packet send and receive events 2026-06-06 09:31:44 +02:00