From d786d6b870251b4f2c12cb6e2212e1130a5e9bfd Mon Sep 17 00:00:00 2001 From: Brahim Date: Wed, 17 Jun 2026 18:44:04 -0400 Subject: [PATCH 1/2] Bedrock 1.26.30 --- composer.json | 4 +- composer.lock | 61 ++++++++++--------- generated/data/bedrock/BiomeIds.php | 1 + .../data/bedrock/block/BlockStateNames.php | 1 + .../bedrock/block/BlockStateStringValues.php | 6 ++ .../data/bedrock/block/BlockTypeNames.php | 1 + generated/data/bedrock/item/ItemTypeNames.php | 1 + src/block/utils/RecordType.php | 2 +- .../mcpe/handler/InGamePacketHandler.php | 4 +- .../mcpe/handler/PreSpawnPacketHandler.php | 4 +- src/world/sound/RecordStopSound.php | 2 +- 11 files changed, 50 insertions(+), 37 deletions(-) diff --git a/composer.json b/composer.json index 86645166471..e2c794442f7 100644 --- a/composer.json +++ b/composer.json @@ -35,9 +35,9 @@ "adhocore/json-comment": "~1.2.0", "netresearch/jsonmapper": "~v5.0.0", "pocketmine/bedrock-block-upgrade-schema": "~5.2.0+bedrock-1.21.110", - "pocketmine/bedrock-data": "~6.6.0+bedrock-1.26.20", + "pocketmine/bedrock-data": "dev-bedrock-1.26.30 as 6.7.0", "pocketmine/bedrock-item-upgrade-schema": "~1.17.0+bedrock-1.26.20", - "pocketmine/bedrock-protocol": "~57.1.0+bedrock-1.26.20", + "pocketmine/bedrock-protocol": "dev-bedrock-1.26.30 as 58.0.0", "pocketmine/binaryutils": "^0.2.1", "pocketmine/callback-validator": "~1.0.4", "pocketmine/color": "^0.3.0", diff --git a/composer.lock b/composer.lock index 5f1794150fe..e9649ed91dd 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "27ffe65161b3ef11d491030cc543a5af", + "content-hash": "c5f64ab094b13279dab140d970cc8082", "packages": [ { "name": "adhocore/json-comment", @@ -67,25 +67,25 @@ }, { "name": "brick/math", - "version": "0.13.1", + "version": "0.14.8", "source": { "type": "git", "url": "https://github.com/brick/math.git", - "reference": "fc7ed316430118cc7836bf45faff18d5dfc8de04" + "reference": "63422359a44b7f06cae63c3b429b59e8efcc0629" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/fc7ed316430118cc7836bf45faff18d5dfc8de04", - "reference": "fc7ed316430118cc7836bf45faff18d5dfc8de04", + "url": "https://api.github.com/repos/brick/math/zipball/63422359a44b7f06cae63c3b429b59e8efcc0629", + "reference": "63422359a44b7f06cae63c3b429b59e8efcc0629", "shasum": "" }, "require": { - "php": "^8.1" + "php": "^8.2" }, "require-dev": { "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^10.1", - "vimeo/psalm": "6.8.8" + "phpstan/phpstan": "2.1.22", + "phpunit/phpunit": "^11.5" }, "type": "library", "autoload": { @@ -115,7 +115,7 @@ ], "support": { "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.13.1" + "source": "https://github.com/brick/math/tree/0.14.8" }, "funding": [ { @@ -123,7 +123,7 @@ "type": "github" } ], - "time": "2025-03-29T13:50:30+00:00" + "time": "2026-02-10T14:33:43+00:00" }, { "name": "netresearch/jsonmapper", @@ -204,16 +204,16 @@ }, { "name": "pocketmine/bedrock-data", - "version": "6.6.0+bedrock-1.26.20", + "version": "dev-bedrock-1.26.30", "source": { "type": "git", "url": "https://github.com/pmmp/BedrockData.git", - "reference": "e5a25957497a4520f4672a379e2a3f6b87602e37" + "reference": "7e91146842837b2267a8e4d8bf8b8dab5e482970" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/e5a25957497a4520f4672a379e2a3f6b87602e37", - "reference": "e5a25957497a4520f4672a379e2a3f6b87602e37", + "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/7e91146842837b2267a8e4d8bf8b8dab5e482970", + "reference": "7e91146842837b2267a8e4d8bf8b8dab5e482970", "shasum": "" }, "type": "library", @@ -224,9 +224,9 @@ "description": "Blobs of data generated from Minecraft: Bedrock Edition, used by PocketMine-MP", "support": { "issues": "https://github.com/pmmp/BedrockData/issues", - "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.26.20" + "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.26.30" }, - "time": "2026-05-09T15:06:58+00:00" + "time": "2026-06-16T10:44:11+00:00" }, { "name": "pocketmine/bedrock-item-upgrade-schema", @@ -256,16 +256,16 @@ }, { "name": "pocketmine/bedrock-protocol", - "version": "57.1.0+bedrock-1.26.20", + "version": "dev-bedrock-1.26.30", "source": { "type": "git", "url": "https://github.com/pmmp/BedrockProtocol.git", - "reference": "b38ef7d8a87651d8b253645196fac97b6825cb98" + "reference": "507a8df7c53b369f6e62aebd32e3dbaf609b4755" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/b38ef7d8a87651d8b253645196fac97b6825cb98", - "reference": "b38ef7d8a87651d8b253645196fac97b6825cb98", + "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/507a8df7c53b369f6e62aebd32e3dbaf609b4755", + "reference": "507a8df7c53b369f6e62aebd32e3dbaf609b4755", "shasum": "" }, "require": { @@ -297,9 +297,9 @@ "description": "An implementation of the Minecraft: Bedrock Edition protocol in PHP", "support": { "issues": "https://github.com/pmmp/BedrockProtocol/issues", - "source": "https://github.com/pmmp/BedrockProtocol/tree/57.1.0+bedrock-1.26.20" + "source": "https://github.com/pmmp/BedrockProtocol/tree/bedrock-1.26.30" }, - "time": "2026-05-09T17:13:12+00:00" + "time": "2026-06-16T11:12:56+00:00" }, { "name": "pocketmine/binaryutils", @@ -875,16 +875,16 @@ }, { "name": "symfony/filesystem", - "version": "v6.4.34", + "version": "v6.4.39", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "01ffe0411b842f93c571e5c391f289c3fdd498c3" + "reference": "c507b077756b4e3e09adbbe7975fac81cd3722ca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/01ffe0411b842f93c571e5c391f289c3fdd498c3", - "reference": "01ffe0411b842f93c571e5c391f289c3fdd498c3", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/c507b077756b4e3e09adbbe7975fac81cd3722ca", + "reference": "c507b077756b4e3e09adbbe7975fac81cd3722ca", "shasum": "" }, "require": { @@ -921,7 +921,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.4.34" + "source": "https://github.com/symfony/filesystem/tree/v6.4.39" }, "funding": [ { @@ -941,7 +941,7 @@ "type": "tidelift" } ], - "time": "2026-02-24T17:51:06+00:00" + "time": "2026-05-07T13:11:42+00:00" } ], "packages-dev": [ @@ -2777,7 +2777,10 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": {}, + "stability-flags": { + "pocketmine/bedrock-data": 20, + "pocketmine/bedrock-protocol": 20 + }, "prefer-stable": false, "prefer-lowest": false, "platform": { diff --git a/generated/data/bedrock/BiomeIds.php b/generated/data/bedrock/BiomeIds.php index f3c38d3ed10..4320d0fbed4 100644 --- a/generated/data/bedrock/BiomeIds.php +++ b/generated/data/bedrock/BiomeIds.php @@ -123,4 +123,5 @@ private function __construct(){ public const MANGROVE_SWAMP = 191; public const CHERRY_GROVE = 192; public const PALE_GARDEN = 193; + public const SULFUR_CAVES = 194; } diff --git a/generated/data/bedrock/block/BlockStateNames.php b/generated/data/bedrock/block/BlockStateNames.php index d24edab729b..09cde23a5e5 100644 --- a/generated/data/bedrock/block/BlockStateNames.php +++ b/generated/data/bedrock/block/BlockStateNames.php @@ -108,6 +108,7 @@ private function __construct(){ public const PERSISTENT_BIT = "persistent_bit"; public const PILLAR_AXIS = "pillar_axis"; public const PORTAL_AXIS = "portal_axis"; + public const POTENT_SULFUR_STATE = "potent_sulfur_state"; public const POWERED_BIT = "powered_bit"; public const POWERED_SHELF_TYPE = "powered_shelf_type"; public const PROPAGULE_STAGE = "propagule_stage"; diff --git a/generated/data/bedrock/block/BlockStateStringValues.php b/generated/data/bedrock/block/BlockStateStringValues.php index e6ae30e640f..01784bd80cf 100644 --- a/generated/data/bedrock/block/BlockStateStringValues.php +++ b/generated/data/bedrock/block/BlockStateStringValues.php @@ -134,6 +134,12 @@ private function __construct(){ public const PORTAL_AXIS_X = "x"; public const PORTAL_AXIS_Z = "z"; + public const POTENT_SULFUR_STATE_CONTINUOUS = "continuous"; + public const POTENT_SULFUR_STATE_DORMANT = "dormant"; + public const POTENT_SULFUR_STATE_DRY = "dry"; + public const POTENT_SULFUR_STATE_ERUPTING = "erupting"; + public const POTENT_SULFUR_STATE_WET = "wet"; + public const SEA_GRASS_TYPE_DEFAULT = "default"; public const SEA_GRASS_TYPE_DOUBLE_BOT = "double_bot"; public const SEA_GRASS_TYPE_DOUBLE_TOP = "double_top"; diff --git a/generated/data/bedrock/block/BlockTypeNames.php b/generated/data/bedrock/block/BlockTypeNames.php index e49d37635cd..509b9ab92c8 100644 --- a/generated/data/bedrock/block/BlockTypeNames.php +++ b/generated/data/bedrock/block/BlockTypeNames.php @@ -990,6 +990,7 @@ private function __construct(){ public const POLISHED_SULFUR = "minecraft:polished_sulfur"; public const POLISHED_SULFUR_DOUBLE_SLAB = "minecraft:polished_sulfur_double_slab"; public const POLISHED_SULFUR_SLAB = "minecraft:polished_sulfur_slab"; + public const SULFUR_SPIKE = "minecraft:sulfur_spike"; public const POLISHED_SULFUR_STAIRS = "minecraft:polished_sulfur_stairs"; public const POLISHED_SULFUR_WALL = "minecraft:polished_sulfur_wall"; public const POLISHED_TUFF = "minecraft:polished_tuff"; diff --git a/generated/data/bedrock/item/ItemTypeNames.php b/generated/data/bedrock/item/ItemTypeNames.php index 496f8e8f4af..9d7a00f1e15 100644 --- a/generated/data/bedrock/item/ItemTypeNames.php +++ b/generated/data/bedrock/item/ItemTypeNames.php @@ -388,6 +388,7 @@ final class ItemTypeNames{ public const MUSIC_DISC_5 = "minecraft:music_disc_5"; public const MUSIC_DISC_BLOCKS = "minecraft:music_disc_blocks"; public const MUSIC_DISC_CAT = "minecraft:music_disc_cat"; + public const MUSIC_DISC_BOUNCE = "minecraft:music_disc_bounce"; public const MUSIC_DISC_CHIRP = "minecraft:music_disc_chirp"; public const MUSIC_DISC_CREATOR = "minecraft:music_disc_creator"; public const MUSIC_DISC_CREATOR_MUSIC_BOX = "minecraft:music_disc_creator_music_box"; diff --git a/src/block/utils/RecordType.php b/src/block/utils/RecordType.php index d49b2df5647..ae2d8821cfd 100644 --- a/src/block/utils/RecordType.php +++ b/src/block/utils/RecordType.php @@ -110,7 +110,7 @@ public function getSoundName() : string{ return $this->getMetadata()[0]; } - public function getSoundId() : int{ + public function getSoundId() : string{ return $this->getMetadata()[1]; } diff --git a/src/network/mcpe/handler/InGamePacketHandler.php b/src/network/mcpe/handler/InGamePacketHandler.php index 3fccfc884fd..66b613e9e0c 100644 --- a/src/network/mcpe/handler/InGamePacketHandler.php +++ b/src/network/mcpe/handler/InGamePacketHandler.php @@ -304,7 +304,7 @@ public function handlePlayerAuthInput(PlayerAuthInputPacket $packet) : bool{ public function handleInventoryTransaction(InventoryTransactionPacket $packet) : bool{ $result = true; - if(count($packet->trData->getActions()) > 50){ + if(count($packet->trData?->getActions() ?? []) > 50){ throw new PacketHandlingException("Too many actions in inventory transaction"); } if(count($packet->requestChangedSlots) > 10){ @@ -312,7 +312,7 @@ public function handleInventoryTransaction(InventoryTransactionPacket $packet) : } $this->inventoryManager->setCurrentItemStackRequestId($packet->requestId); - $this->inventoryManager->addRawPredictedSlotChanges($packet->trData->getActions()); + $this->inventoryManager->addRawPredictedSlotChanges($packet->trData?->getActions() ?? []); if($packet->trData instanceof NormalTransactionData){ $result = $this->handleNormalTransaction($packet->trData, $packet->requestId); diff --git a/src/network/mcpe/handler/PreSpawnPacketHandler.php b/src/network/mcpe/handler/PreSpawnPacketHandler.php index 4e3d506d36e..986a68f184c 100644 --- a/src/network/mcpe/handler/PreSpawnPacketHandler.php +++ b/src/network/mcpe/handler/PreSpawnPacketHandler.php @@ -113,10 +113,10 @@ public function setUp() : void{ false, false, new NetworkPermissions(disableClientSounds: true), + false, null, new ServerTelemetryData("", "", "", ""), - [], - 0, + [] )); $this->session->getLogger()->debug("Sending items"); diff --git a/src/world/sound/RecordStopSound.php b/src/world/sound/RecordStopSound.php index 15ed7dd8fb5..570f226c1f2 100644 --- a/src/world/sound/RecordStopSound.php +++ b/src/world/sound/RecordStopSound.php @@ -30,6 +30,6 @@ class RecordStopSound implements Sound{ public function encode(Vector3 $pos) : array{ - return [LevelSoundEventPacket::nonActorSound(LevelSoundEvent::STOP_RECORD, $pos, false)]; + return [LevelSoundEventPacket::nonActorSound(LevelSoundEvent::RECORD_NULL, $pos, false)]; } } From 1c4b4170aacd3018a5160384efc1746d35d4a52a Mon Sep 17 00:00:00 2001 From: Brahim Date: Wed, 17 Jun 2026 19:06:11 -0400 Subject: [PATCH 2/2] gg --- src/network/mcpe/handler/PreSpawnPacketHandler.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/network/mcpe/handler/PreSpawnPacketHandler.php b/src/network/mcpe/handler/PreSpawnPacketHandler.php index 986a68f184c..a797f3e52ad 100644 --- a/src/network/mcpe/handler/PreSpawnPacketHandler.php +++ b/src/network/mcpe/handler/PreSpawnPacketHandler.php @@ -116,7 +116,8 @@ public function setUp() : void{ false, null, new ServerTelemetryData("", "", "", ""), - [] + [], + 0 )); $this->session->getLogger()->debug("Sending items");