mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-06-21 02:44:03 +00:00
96 lines
4.8 KiB
Markdown
96 lines
4.8 KiB
Markdown
**For Minecraft: Bedrock Edition 1.19.62**
|
|
|
|
5.0.0 is a major update to PocketMine-MP, including many new features and API changes. It is **not** compatible with plugins written for previous versions of PocketMine-MP.
|
|
|
|
**During the beta phase, no new features will be added.**
|
|
|
|
This stage of development is focused on stability and cleaning up any major issues introduced during the alpha stage.
|
|
|
|
## WARNING
|
|
**This is a BETA release.** This means that it may be unstable, and is not yet ready for production use.
|
|
|
|
Since this version has undergone substantial changes compared to 4.x, plugins written for 4.x will need to be updated to work on this version.
|
|
|
|
Breaking API changes may still occur during the beta phase, but only if they are strictly necessary to fix a problem prior to full release.
|
|
|
|
**BACK UP your data before testing this.** This version will work with worlds and player data from 4.x,
|
|
BUT any world or player data loaded in 5.0.0 will not work in 4.x due to backwards-incompatible storage format changes.
|
|
|
|
# 5.0.0-BETA1
|
|
Released 7th March 2023.
|
|
|
|
**This release includes changes from the following releases:**
|
|
- [All 5.0.0 alpha releases](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA1/changelogs/5.0-alpha.md)
|
|
- [4.15.2](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA1/changelogs/4.15.md#4152)
|
|
- [4.15.3](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA1/changelogs/4.15.md#4153)
|
|
- [4.16.0](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA1/changelogs/4.16.md#4160)
|
|
|
|
## API
|
|
### `pocketmine\block`
|
|
- Improved documentation for the following methods:
|
|
- `Block->getTypeId()`
|
|
- `Block->getStateId()`
|
|
- `Block->describeType()`
|
|
- `Block->describeState()`
|
|
|
|
### `pocketmine\command`
|
|
- The following API methods have been renamed:
|
|
- `Command->getPermission()` -> `Command->getPermissions()`
|
|
|
|
## Internals
|
|
- The following methods have been renamed:
|
|
- `Block->computeStateData()` -> `Block->computeTypeAndStateData()`
|
|
- `Block->decodeStateData()` -> `Block->decodeTypeAndStateData()`
|
|
- Wall state data now packs connections into 7 bits instead of 8.
|
|
|
|
# 5.0.0-BETA2
|
|
Released 11th April 2023.
|
|
|
|
**This release includes changes from the following releases:**
|
|
- [4.17.0](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.17.md#4170)
|
|
- [4.17.1](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.17.md#4171)
|
|
- [4.17.2](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.17.md#4172)
|
|
- [4.18.0](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.18.md#4180)
|
|
- [4.18.1](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.18.md#4181)
|
|
- [4.18.2](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.18.md#4182)
|
|
- [4.18.3](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.18.md#4183)
|
|
- [4.18.4](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.18.md#4184)
|
|
- [4.19.0](https://github.com/pmmp/PocketMine-MP/blob/5.0.0-BETA2/changelogs/4.19.md#4190)
|
|
|
|
## Tools
|
|
- Added script `tools/generate-bedrock-data-from-packets.php`. This tool accepts a txt file containing base64-encoded packet dumps.
|
|
- This script has been used to generate data for [BedrockData](https://github.com/pmmp/BedrockData) for several years, but has only now been open-sourced.
|
|
- It's used to generate data such as crafting recipes, creative inventory data, and various other blobs of data needed to support the current version of Minecraft: Bedrock Edition.
|
|
|
|
## Gameplay
|
|
- Anvils now damage entities when they fall on top of them.
|
|
|
|
## API
|
|
### `pocketmine\block\utils`
|
|
- The following API interface requirements have been added (BC breaking):
|
|
- `public Fallable->getFallDamagePerBlock() : float` (default implementation provided by `FallableTrait`)
|
|
- `public Fallable->getMaxFallDamage() : float` (default implementation provided by `FallableTrait`)
|
|
|
|
### `pocketmine\data\bedrock\block`
|
|
- The following new API methods have been added:
|
|
- `public BlockStateData->getVersionAsString() : string`
|
|
|
|
#### `pocketmine\data\bedrock\block\upgrade\model`
|
|
- `BlockStateUpgradeSchemaModelBlockRemap` now accepts `null` for `oldState` and `newState`. This makes it easier to generate portable schemas for other languages to read.
|
|
|
|
### `pocketmine\event\entity`
|
|
- The following new API constants have been added:
|
|
- `EntityDamageEvent::CAUSE_FALLING_BLOCK`
|
|
- `EntityDamageEvent::MODIFIER_ARMOR_HELMET`
|
|
|
|
### `pocketmine\item`
|
|
- The following API methods have signature changes:
|
|
- `ItemTypeIds::toBlockTypeId()` may now return `null` if the item type ID is not a block.
|
|
|
|
### `pocketmine\player`
|
|
- The following classes have been removed:
|
|
- `PlayerChunkLoader` - deprecated in 4.19.0 (this was technically internal, but never marked as such)
|
|
|
|
## Internals
|
|
- Make use of `Item->canStackWith()` instead of `Item->equals()` wherever possible, to make the code more readable.
|