diff --git a/README.md b/README.md index 9f8c6a326..b9e2e1888 100644 --- a/README.md +++ b/README.md @@ -20,31 +20,61 @@ GitHub release (latest by SemVer)

-## Getting started +## What is this? +PocketMine-MP is a highly customisable server software for Minecraft: Bedrock Edition, built from scratch in PHP, with over 10 years of history. + +If you're looking to create a Minecraft: Bedrock server with **custom functionality**, look no further. + +- 🧩 **Powerful plugin API** - extend and customise gameplay as you see fit +- 🗺️ **Rich ecosystem** and **large developer community** - find plugins easily and learn to develop your own +- 🌐 **Multi-world support** - offer a more varied game experience to players without transferring them to other server nodes +- 🏎️ **Performance** - get 100+ players onto one server (depending on hardware and plugins) +- ⤴️ **Continuously updated** - new Minecraft versions are usually supported within days + +## :x: PocketMine-MP is NOT a vanilla Minecraft server software. +**It is poorly suited to hosting vanilla survival servers.** +It doesn't have many features from the vanilla game, such as vanilla world generation, redstone, mob AI, and various other things. + +If you just want to play **vanilla survival multiplayer**, consider using the [official Minecraft: Bedrock server software](https://minecraft.net/download/server/bedrock) instead of PocketMine-MP. + +If that's not an option for you, you may be able to add some of PocketMine-MP's missing features using plugins from [Poggit](https://poggit.pmmp.io/plugins), or write plugins to implement them yourself. + +## Getting Started - [Documentation](http://pmmp.readthedocs.org/) - [Installation instructions](https://pmmp.readthedocs.io/en/rtfd/installation.html) - [Docker image](https://github.com/pmmp/PocketMine-MP/pkgs/container/pocketmine-mp) - [Plugin repository](https://poggit.pmmp.io/plugins) ## Community & Support -- [Forums](https://forums.pmmp.io/) -- [Discord](https://discord.gg/bmSAZBG) -- [StackOverflow](https://stackoverflow.com/tags/pocketmine) +Join our [Discord](https://discord.gg/bmSAZBG) server to chat with other users and developers. + +You can also post questions on [StackOverflow](https://stackoverflow.com/tags/pocketmine) under the tag `pocketmine`. + +## Developing Plugins +If you want to write your own plugins, the following resources may be useful. +Don't forget you can always ask our community if you need help. -## For developers - * [Building and running from source](BUILDING.md) * [Developer documentation](https://devdoc.pmmp.io) - General documentation for PocketMine-MP plugin developers * [Latest release API documentation](https://apidoc.pmmp.io) - Doxygen API documentation generated for each release * [Latest bleeding-edge API documentation](https://apidoc-dev.pmmp.io) - Doxygen API documentation generated weekly from `major-next` branch * [DevTools](https://github.com/pmmp/DevTools/) - Development tools plugin for creating plugins * [ExamplePlugin](https://github.com/pmmp/ExamplePlugin/) - Example plugin demonstrating some basic API features + +## Contributing to PocketMine-MP +PocketMine-MP accepts community contributions! The following resources will be useful if you want to contribute to PocketMine-MP. + * [Building and running PocketMine-MP from source](BUILDING.md) * [Contributing Guidelines](CONTRIBUTING.md) ## Donate -- Bitcoin Cash (BCH): `qq3r46hn6ljnhnqnfwxt5pg3g447eq9jhvw5ddfear` +PocketMine-MP is free, but it requires a lot of time and effort from unpaid volunteers to develop. Donations enable us to keep delivering support for new versions and adding features your players love. + +You can support development using the following methods: + +- [Patreon](https://www.patreon.com/pocketminemp) - Bitcoin (BTC): `171u8K9e4FtU6j3e5sqNoxKUgEw9qWQdRV` - Stellar Lumens (XLM): `GAAC5WZ33HCTE3BFJFZJXONMEIBNHFLBXM2HJVAZHXXPYA3HP5XPPS7T` -- [Patreon](https://www.patreon.com/pocketminemp) + +Thanks for your support! ## Licensing information This project is licensed under LGPL-3.0. Please see the [LICENSE](/LICENSE) file for details. diff --git a/src/Server.php b/src/Server.php index 6b3a91543..f4d4a0958 100644 --- a/src/Server.php +++ b/src/Server.php @@ -1356,6 +1356,7 @@ class Server{ } /** + * @internal * Broadcasts a list of packets in a batch to a list of players * * @param bool|null $sync Compression on the main thread (true) or workers (false). Default is automatic (null). diff --git a/src/item/StringToItemParser.php b/src/item/StringToItemParser.php index 8d78fcf95..2ed9e7d95 100644 --- a/src/item/StringToItemParser.php +++ b/src/item/StringToItemParser.php @@ -868,6 +868,8 @@ final class StringToItemParser extends StringToTParser{ $result->registerBlock("pink_petals", fn() => Blocks::PINK_PETALS()); $result->registerBlock("pink_tulip", fn() => Blocks::PINK_TULIP()); $result->registerBlock("piglin_head", fn() => Blocks::MOB_HEAD()->setMobHeadType(MobHeadType::PIGLIN)); + $result->registerBlock("pitcher_plant", fn() => Blocks::PITCHER_PLANT()); + $result->registerBlock("pitcher_pod", fn() => Blocks::PITCHER_CROP()); $result->registerBlock("plank", fn() => Blocks::OAK_PLANKS()); $result->registerBlock("planks", fn() => Blocks::OAK_PLANKS()); $result->registerBlock("player_head", fn() => Blocks::MOB_HEAD()->setMobHeadType(MobHeadType::PLAYER));