Releases: pmmp/PocketMine-MP
PocketMine-MP 1.6.2dev-229 "Unleashed" with API 3.0.0-ALPHA6
For Minecraft PE 1.1.0.55
Beginning of strict types, some performance improvements, lots of bug fixes.
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA6. These changes are NOT yet complete.
Notable changes
Core
- 32-bit support has been removed for consistency and performance reasons. (#984)
- The
Binary
class now has strict types and type-hinting for safety reasons when writing data to network. - Fixed incorrect PC world format versions causing Mojang's official McRegion -> Anvil converter to reject PocketMine-MP-generated McRegion worlds.
- Fixed ServerKiller does not work correctly on single-core machines.
- AsyncTasks no longer leak memory after completion. (#922)
- Fixed masses of console spam when a crash occurs and an NBT tag or EncapsulatedPacket was an argument somewhere in the call stack.
- NBT ListTags now default to TAG_End if no tag type is specified instead of null.
- Fixed /particle command crash when creating TerrainParticle or ItemBreakParticle
- Player
XpSeed
is now restricted to the bounds of an int32 on all platform (since it is supposed to be saved as an IntTag, which is bounded to the range of an int32). - Player->close() now does its best to catch thrown exceptions and clean up after itself to avoid possible leaks and issues during the quit process.
- Fixed AutoUpdater crashing the server when invalid data is returned by the updater host.
- Changed updater host to https://update.pmmp.io
- Changed crash-archive host to https://crash.pmmp.io
- Fixed some issues with static properties not being included in memory dumps.
- Fixed server crashing when crashing while creating a CrashDump.
- Fixed silenced errors being reported in CrashDumps when a plugin uses
exit()
ordie()
. - Fixed lots of bugs exposed by strict types.
Network
- Chunk serialization and compression is now always done asynchronously to improve performance.
- Level area-broadcasted packets and block updates are now sent in batches instead of individual packets to improve performance.
- Workaround for packets sent with immediate priority being ignored by the client (#1026)
- Fixed UUID encoding (players will no longer see themselves twice in the player list)
- ResourcePackDataInfoPacket will now report the correct number of resource pack chunks.
Gameplay
- Dropped items no longer bounce on partial blocks such as slabs.
- Fixed hunger decreasing too fast.
- Fixed server crash when vines are placed on some block faces.
- Falling sand is no longer destroyed by grass and no longer destroys slabs.
- Falling into water 1 block deep no longer causes fall damage.
- Removed eye-height offsets causing spawned entities to appear in wrong positions on the client-side.
- Arrows will now fly correctly towards targets and no longer spin round and fall flat when hitting a surface.
- Implemented basic sky-light population on chunk generation and sky-light updating when blocks are changed in the world. This will be needed for proper farming.
- Improved player movement (smoother, much less stuttery) and fixed several client-sided positioning bugs.
- Fixed other players don't see teleport movement when teleporting to nearby locations.
- Fixed player spawn points set using /spawnpoint not working.
API
- Strict types are now enabled throughout the core code. See #969 and #993 for details.
- Plugins can now specify the
extensions
attribute in plugin.yml to specify PHP extensions required for the plugin to function correctly. This may be useful where plugins require extensions which are not supplied by default with PMMP-supplied PHP binaries. (#903) - Added
Vector3->asVector3()
,Position->asPosition()
,Location->asLocation()
(#973). This is intended to provide an easy way to convert a descendent of one of these classes (such as anEntity
) into an explicit Vector3, Position or Location. - Added the following events:
- PlayerDataSaveEvent, which is called when a player's NBT data is about to be saved to disk. (#920)
- UpdateNotifyEvent, which is called when the AutoUpdater receives information that a new PocketMine-MP version is available.
- PlayerInteractEvent is now called with the left-click action when a player attempts to remove an item from an item frame.
- NBT classes now have more strict type-checking in the constructors,
Tag->getValue()
andTag->setValue()
. ByteTags, ShortTags and IntTags will now throw an exception if the supplied value is outside of the range they can store. - Block constructors will now always retain the meta values passed in the constructor, fixes issues with crafting with recipes that required any-damage ingredients.
- Added API methods
Block->canClimb()
,Entity->canClimb()
,Entity->setCanClimb(bool)
,Entity->canClimbWalls()
andEntity->setCanClimbWalls(bool)
along with corresponding entity metadata flags. - Added API methods
Block->getLightFilter()
andBlock->diffusesSkyLight()
(used in sky light population). - Added
/title
command and API for resetting title durations. - Refactored some JSON-parsing-specific NBT code into its own class.
- Added
Server->broadcastTitle()
. Item->setLore()
is now fluent.
PocketMine-MP 1.6.2dev-57 "Unleashed" with API 3.0.0-ALPHA5
For Minecraft PE 1.0.7.0
Many bug fixes, changes to network API (work still in progress!), improved chunk sending, added resource packs support
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA5. These changes are NOT yet complete.
Notable changes
Core
- World format implementations using Regions will now be more thoroughly checked for validity before the core attempts to use them. (#393)
- Fixed a crash that would prevent a world from being at all usable if a Human was created with an invalid skin.
- Fixed chunk object memory leak when chunks are replaced by the generator.
- Tile and Entity NBT trees are now destroyed when their close() methods are called to combat memory leaks.
- Fixed tile and entity object memory leaks and crashes when replacing chunks
- Chunk->addTile(Tile) and Chunk->addEntity(Entity) will now throw exceptions if something attempts to add a closed tile or entity to them.
- Fixed squid health attribute errors
- Fixed server crash when taking damage after dying when the Health Boost effect was applied before death.
- Fixed crashes when using xdebug and breaking very tall cacti or sugarcane (recursive block updates)
- Fixed some packets being sent with reliability level 0, may improve connections randomly being dropped
- Fixed memory leak related to persistent entities when lots of players join and quit a server in the same area
- Fixed possible item NBT duplication where items were holding references to the same NBT trees when cloned.
- Fixed usage always being reported even when disabled in pocketmine.yml
- Fixed stack traces in the logger sometimes missing the top stack frame.
- Fixed Entity object memory leak in EntityDamageByEntityEvent
- Fixed Player object memory leak when players subscribed to the administrative broadcast permission quit the server
- Non-generated chunks will no longer be saved to disk, fixes big dirty holes in some maps due to chunks being saved before being generated
- Rewritten the chunk sending algorithm, much better chunk sending (will now actually reach the horizon)
- Fixed a major memory leak when a W10 player set a very high render distance due to the server not enforcing radius limits. This has been corrected,. A player's render distance will now be set to the minimum of the spawn radius, the player's radius, or the server default render distance.
- The settings
chunk-sending.max-chunks
has been removed from pocketmine.yml in favour of a more vanillaview-distance
setting in server.properties (values match MCPE render distance settings) andchunk-sending.spawn-threshold
has been replaced withchunk-sending.spawn-radius
(again, same values as MCPE). - Fixed CPU waste of batched packets sometimes being encoded twice.
- Auto-updater checks are now done with an AsyncTask to prevent slowdown on server start.
- Added debug output for lots of network- and protocol-related things.
API
- Massive refactor of the network namespace. All packets have moved from network\protocol to network\mcpe\protocol, and Info has been renamed to ProtocolInfo. This is to make space for future changes. Note that these changes are far from complete and more will follow.
- Added API methods to Player to allow transferring them to other servers, and to allow sending titles.
- Added Entity API for setting entity scale.
- Added support for commands with spaces in their names for future command implementation.
- Item->deepEquals() has been deprecated and its functionality added to Item->equals().
- Added the Color class to the utils namespace. This was primarily added for use when reversing the encoding of the ClientboundMapItemDataPacket.
- Player->hasPermission() will now throw an exception if the player has been closed.
- Commands no longer all have the same hints if you modify one command's data.
- API methods Player::isValidSkin() and Player::isValidName() have been added.
- The API for Utils internet access has been improved, added BulkCurlTask for batch-executing cURL operations. See #834 for details.
Gameplay
- Fixed sounds not working after 1.0.4
- Added resource packs support. This support is currently very basic and will be improved in the future. Currently only resource packs in the .zip format are supported. See the resource packs configuration for details (will be created in the resource_packs/ directory after you run the server).
- Hunger now works!
- Implemented Absorption effect
- Fixed bows can't be fired after starting or stopping sprint.
- Fixed solid blocks filtering their own light, fixes light saving for lit furnace, pumpkins and glowing obsidian.
- Fixed unlit furnaces glowing in the dark.
- Fixed lighting issues due to light changes in subchunks which were not being saved to disk.
- Block light is now correctly updated when removing obstructions.
- Fixed potion bubbles not working.
- Added support for copying tile NBT onto items by ctrl+middle-clicking on Windows 10 Edition.
- Fixed blocks sometimes glitching and reappearing when broken due to timing issues.
- Fixed slowness being removed when trying to sprint
- Fixed lots of issues with the hotbar, armor equipment and item equipment in creative (and caused some creative transaction bugs)
- Fixed Cake recipe not showing up due to having multiple result items
- Fence-gates now work properly
- Spectator-mode players cannot break blocks anymore if the AdventureSettings flags were not set correctly.
- Fixed some issues with entity spawn rotation due to a silly mistake in AddEntityPacket.
PocketMine-MP 1.6.2dev "Unleashed" with API 3.0.0-ALPHA4
For Minecraft PE 1.0.3.0
Many bug fixes, changes to Chunk, Tile and Entity API, improved language system
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA4. These changes are NOT yet complete.
Notable changes
Core
- Removed SQLite3 hard dependency as it is no longer used by the core code.
- Translation system has been reworked for better synchronization and consistency. Please head over to http://translate.pocketmine.net if you would like to help.
Gameplay
- Enchanted Golden Apples now give the eater Absorption 4
API
- Removed chunk/provider/level/tile/entity entanglement. This is a very breaking change, see c21197e for details.
- Removed some sound classes
- Removed deprecated version constants from PocketMine.php
- Added UnknownBlock class
- Added some API methods for changing entity scale (6dc6e32)
Fixes
- Fixed a CPU leak that occurred when movement checks were disabled (this was the same underlying issue causing
player moved too fast, reverting movement
) (ccef045) - Fixed a CrashDump bug causing all crashdumps to report an issue creating the crashdump directory (09a6776)
- Fixed incorrect git commit hash parsing when running a server from source code (#299)
- Fixed some issues with command sending
- Fixed Sea Lantern lighting issues
- Fixed half-trees in freshly-generated worlds
- Fixed DestroyBlockParticle
- Fixed some issues with removing items from item frames
- Fixed movement-checking bugs due to bad anti-spam check in MovePlayerPacket handler
- Fixed lots of improperly-implemented blocks causing suffocation
- Fixed issues breaking some improperly-implemented blocks
- Fixed heightmap-related crashes in McRegion worlds
PocketMine-MP 1.6.2dev "Unleashed" with API 3.0.0-ALPHA3
For Minecraft PE 1.0.0.16
API changes relating to closing Levels and anti-cheat, along with many bug fixes.
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA3. These changes are NOT yet complete.
Changes
Core
- Added a hack to workaround client-side text duplication (TODO REVERT 52748fc)
- Crashdumps are now created in the
crashdumps
folder instead of being dumped into your server root directory. - Some tweaks for Anvil I/O for more performance in some circumstances (won't make much difference in heavily-built up worlds)
- Movement-checks and instabreak anti-cheats can now be disabled in pocketmine.yml (#287)
- EXPERIMENTAL LevelDB support is back, with support for MCPE 1.0 worlds. NOTE that LevelDB can be HIGHLY UNSTABLE and will segfault a lot. See #254 for progress.
- Added crafting data cache to reduce on-join lag spikes. (9c36e0c)
- Assertion behaviour is now configurable: the server will by default warn on startup if assertions are enabled, and assertion exception throws are now disabled by default. This can be configured under the
debug
section in pocketmine.yml.
API
- API version suffix for plugins is now non-case-sensitive.
- Type-hints have been added to Item::get() and some Item API methods. This is in an effort to combat some peculiar issues which arose from using null or wrong types.
- Added API to allow customising randomly-ticked blocks in Level.
- Added method
Level->isClosed()
to allow checking if a Level is still usable before trying to do stuff with it. Position->getLevel()
will now verify that the Level is usable before returning it, and if it is not will destroy the reference and return null. This is to help identify leaks with unloaded Levels.- Added API methods to allow controlling anti-cheat configuration per-player (#287) and added PlayerIllegalMoveEvent to allow plugins to cancel movement anti-cheat positives.
- Removed deprecated
Utils::getRandomBytes()
(use php7 random_bytes() instead) (085d1a1) - Moved LevelException, PluginException and ChunkException into more relevant namespaces (946d301)
Fixes
- Fixed CommandReader hanging on shutdown on Windows (#171)
- Fixed vanilla McRegion worlds getting corrupted (8902992)
- Fixed total server freeze when teleporting long distances
- Fixed anti-cheat false-positives when climbing ladders and a wide variety of other movement issues (8ea0352)
- Fixed shutdown memory leaks related to double chests (e4aa3d7)
- Fixed eating golden apples with full hunger
- Fixed long-string NBT encoding (longer than 127 bytes, length is a uvarint not a byte), fixed corrupted sign issues, fixed issues with unicode sign text
- Fixed players appearing under the world when sleeping.
- Fixed players continuing to burn in creative mode.
- Fixed players sometimes not dying properly after taking lethal damage due to food regeneration (441961b)
- Fixed a logic error in the basic generator preventing swamp biomes from generating (b566c4e)
- Fixed setting item custom name doesn't update player (0584681)
- Fixed bad lighting issues when importing a PocketMine-MP world back to vanilla Minecraft (946d301)
PocketMine-MP 1.6.2dev "Unleashed" with API 3.0.0-ALPHA2
For Minecraft PE 1.0.0.16
Less surface changes, better performance, large changes to Level IO
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA2. These changes are NOT yet complete.
Changes
Core
- Re-added support for async network chunk serialization
- Refactored level\format namespace (see files for changes)
- Added new world format PMAnvil (based on Anvil with some alterations)
Gameplay
- Added Item Frames
- Added some 0.16 blocks and items.
- Updated creative inventory and crafting recipes for 1.0.0.16
API
- Refactored Server::broadcastPacket() to be non-static, use available server references.
- Type declarations and strict types for most things in the level\format namespace.
- Refactor Level::chunkBlockHash() -> Chunk::chunkBlockHash()
- GenericChunk::fastSerialize() is no longer static.
- Refactored format\generic\GenericChunk -> format\Chunk. You should already have been using the format\Chunk interface, if not you may need to make alterations.
- Removed unused Entity stub classes in preparation for Entity API rewrite.
Fixes
- Fixed unable to teleport over Y = 128
- Fix some mob head rotation bugs
- Fixed some issues with Flower Pot items vanishing and not saving correctly
- Fixed Win10 Edition default hotbar mapping
- Fixed issues crafting with items with NBT (5443b10, 77b3cd7)
- Fixed a crash in Item->deepEquals() where only one item had a tag
- Fixed issues with the title bar and /status reporting incorrect CPU and tick usage statistics (8bdfe0d)
- Fixed an age-old corruption bug due to use of IntTag for Time in PC worlds (3dcfa7b)
- Fixed negative effect amplifier crash (#191)
- Fixed some bugs with some blocks having to be broken twice (obsidian, netherrack) (wrong hardness values)
- Fixed Head drops
- Fixed dropped items disappearing after a server restart
PocketMine-MP 1.6.2dev "Unleashed" with API 3.0.0-ALPHA1
For Minecraft PE 1.0.0.16
Initial snapshot of MCPE 1.0 changes.
DISCLAIMER: THIS IS AN ALPHA SNAPSHOT. THIS BUILD IS NOT FEATURE-COMPLETE AND IS LIKELY TO BE HIGHLY UNSTABLE. WE ARE NOT RESPONSIBLE FOR NUCLEAR WAR, EXPLOSIONS OR CORRUPTION OF DATA RESULTING FROM USE OF THIS BUILD.
This build has breaking API changes, so the API has been bumped to 3.0.0-ALPHA1. These changes are NOT yet complete.
Changes
Core
- New generic in-memory chunk format for universal chunk handling and future conversion implementation.
Gameplay
- Supported 256-height worlds
- Standard chunk interface changed from FullChunk to Chunk (see above)
API
- Removed biome color support and all related biome color API methods (no longer supported by MCPE client)
Fixes
- Fixed Win10 throws away their held item when the inventory is closed (3b3abab)
- Fixed MobHead bounding box and properties (c79077c)
- Fixed server ignoring head rotation (fa5624f)
- Fixed gamemode switching to adventure/spectator for op players (43a36db)
- Fixed clicking on fire to extinguish it (#132)
- Fixed players always respawning at the server spawn when the folder name is different to the world name (#150)
PocketMine 1.6.1dev-87 "Unleashed"
For Minecraft PE 0.16.0.5 alpha
THIS IS A PRE RELEASE. Do not use it in production unless you are sure you know what you are doing.
Only changes since the 1.6dev tag will be documented here. Changes between 1.4.1 and 1.6dev are far too extensive to document effectively.
Changes
Core
- New RNG, based on XorShift128 from the php-random library. This fixes issue with repeating terrain on 32-bit systems. Note however that new generation into existing worlds will not be seamless.
- Block and Item IDs have been moved to interfaces for better consistency
- Better method for synchronisation of client/server time (less packet spam)
- Utils::getRandomBytes() has been deprecated in favour of php7's random_bytes() function.
<player>.dat
saving/reading can now be disabled inpocketmine.yml
(setplayer.save-player-data
tofalse
)
Gameplay/game features
- Added Flower Pots
- Containers can now be opened in creative
- Trapdoors can now be placed without a supporting block
API
This release has API changes, bumping the version to 2.1.0.
Entity metadata (0.16)
Many changes have been made to entity metadata. Many true/false data properties are now entity status flags, such as NoAI, NametagVisible and various others. Entity status flags can be set using:
$entity->setDataFlag(Entity::DATA_FLAGS, Entity::INSERT_DATA_FLAG_NAME, true/false);
Breaking changes are detailed here. Additions are not documented. https://gist.github.com/dktapps/76b291b7a861762b54f7a8b834389883
NOTE: It's strongly recommended to use provided API methods where possible instead of tampering with metadata directly.
AsyncTask API additions
- Main thread local storage: Developers can pass any data including objects to the constructor of AsyncTask such that the data can be retrieved after the AsyncTask completes using the new
AsyncTask::fetchLocal()
method, or use theAsyncTask::peekLocal()
method to get the data without removing it. - Progress updates: Developers can use the new
AsyncTask::publishProgress() method and override
AsyncTask::onProgressUpdated()` to handle AsyncTask progress information in the main thread.
Refer to #1 and #100 for details.
WeakPosition
WeakPosition was added in 1.6.1 to fix bugs with unloading levels which have player spawn points set in them. This type of position holds a level ID instead of a direct reference. Use this when your position may outlive the level it is in.
Removal of Item/NBT circular dependency
Refer to #121 for details.
Other
- Added Player->sendWhisper() (#73).
- Removed LargeExplodeParticle due to incorrect name - use HugeExplodeParticle. Added HugeExplodeSeedParticle and BlockForceFieldParticle (7314aaf)
Fixes
- Fixed the infamous hotbar spaz bug
- Creative/spectator inventory now sends correctly
- Fixed spectator flight controls
- Fixed issues with items going past the end of the regular inventory
- Fixed furnace client crashes
- Fixed inventory windows for anvils and enchanting tables
- Fixed kicked for walking on lily pads (#blameshoghicp)
- Fixed a nasty entity-related memory leak on chunk unload
- Fixed sleeping players floating above beds and teleportation of sleeping players.
- Fixed a bug in Level::updateAround() where only one block would update
- Fixed some slab placement issues (#31)
- Fixed crash loading 1.11 worlds (#32)
- Fixed broken
--disable-readline
command-line option (#34) - Fixed world unload crash when players have spawnpoints set in that world (#24)
- Fixed start.sh detection of system PHP binaries (#66)
- Fixed anvil rotation when placed and variant drops (d696049)
- /timings command is now more verbose about paste errors (#95)
- Fixed server crash at shutdown when RCON is enabled (#101)
- Fixed server name is always "Minecraft: PE Server" when running setup wizard (92bd1a7)
- Fixed CraftItemEvent->getInput() does not return used items (7eb9530)
- Fixed useless ServerKiller (#122)
PocketMine-MP 1.4.1 "Zekkou Cake"
For Minecraft: PE v0.10.5 alpha
This version has API changes, bumping the version to 1.11.0, and it won't be bumped again until a stable build is released. These changes are detailed below.
Main features:
- Improved chunk saving and reduced world corruption
- Fixed some strange crashes on broken systems
- Improved movement and block placing
- Automatic resource freeing on Region-based worlds
- Ignore spawn protection when no ops are set
- Improved flight cheat protection
- Fixed chunk corruptions
API changes
- API 1.11.0
- Added PlayerCreationEvent
- Added Level->getChunks(), fixed some Doc Comments
- Added Async Task crash warning
- Fixed issue where plugins schedule a Player update before log in
- Added new predictive flight protection
- Added Location::__toString()
- Added Entity->resetFallDistance()
- Fixed #2619 BlockMetadataStore
- Added Entity->fastMove() for players and direct-controlled entities
- Implemented Threaded ClassLoader, improves class loading while on different threads (no need to synchronize states)
- Allow plugins to cancel some kicks better, closes #2743
Fixes and additions:
- Improved threading and resource usage, new defaults
- Removed all @mkdir() calls
- Implemented proportional armor modifier, applied armor in other damage types and consume armor when player is damaged
- Implemented hardcore banning, closes #2574
- Implemented double chest fix, closes #2744, fixes #2493
- Catch exceptions on level generation
- Changed generator choosing logic, add proper preset if needed, fixes #2751
- Fixed some crashes related to crashing
- Fixed messages and default settings
- Fixed #2488 Player suffocates when putting blocks to climb higher
- Fixed #2489 Falling Sand drops as an item when not expected
- Cleaned up BanEntry creation
- Fixed phar check
- Fixed visual typo in /ban-ip, closes #2503
- Improved chunk saving times by not marking it as changed when Players are added/removed
- Fixed #2511
- Catch more corruption issues in Region-based worlds, fixed first chunk being generated on an invalid sector
- Fixed Entities being placed in recreated chunks
- Fixed Flat generator on existing chunks, region issues
- Unload unused regions after 5 minutes
- Improved file resource usage
- Added GarbageCollectionTask, workaround for weird PHP behaviour when using --disable-ansi
- Fixed /timings off
- Fixed fences not showing up
- Improved chunk ticking
- Block saving chunks too big
- Changed max speed per tick from 100 to 10 blocks
- Added outdated event static properties
- Allow placing Snow Layers on top of solid transparent blocks
- Fixed PHPRC env. variable being set
- Throw exception when RakLib crashes
- Added rotation transformations to remaining packet
- Fixed #2557
- Fixed #2541 server not saving chunks on chunk unloading
- Return on Level->getSafeSpawn() in case of invalid position
- Fixed #2565
- Falling sand will become block when in contact with a Liquid
- Fixed Iron bar, Stonecutter drops
- TallGrass blocks should be only placed on grass blocks
- Fixed #2615
- Fixed players getting kicked for flying when going through special blocks
- Future workaround for #2626
- Catch file saving exceptions
- Added basic speed protection
- Fixed Dark Oak Fence's name
- Fixed #2762
- Fixed Anvil lighting issues
- Fix some Chunk corruption due to Chunk overlap
- Fixed constructors, default memory to -1, default async generator
- Fixed NBT IntArray off-by-one reading
- Fixed falling sand breaking on full BB partial blocks, closes #2770
Not implemented or known issues:
Please do not report lacking features to the bug tracker, only report bugs on implemented features.
- Entities / Entity AI
- No conversion for old levels (will be added later)
- No Minecarts
- Not all items are implemented
- Generated worlds use a basic generator
PocketMine-MP 1.4.1-936 beta1
For Minecraft: PE v0.10.4 alpha
This version has API changes, bumping the version to 1.11.0, and it won't be bumped again until a stable build is released. These changes are detailed below.
Main features:
- Improved chunk saving and reduced world corruption
- Fixed some strange crashes on broken systems
- Improved movement and block placing
- Automatic resource freeing on Region-based worlds
API changes
- API 1.11.0
- Added PlayerCreationEvent
- Added Level->getChunks(), fixed some Doc Comments
- Added Async Task crash warning
- Fixed issue where plugins schedule a Player update before log in
Fixes and additions:
- Improved threading and resource usage, new defaults
- Removed all @mkdir() calls
- Catch exceptions on level generation
- Fixed some crashes related to crashing
- Fixed messages and default settings
- Fixed #2488 Player suffocates when putting blocks to climb higher
- Fixed #2489 Falling Sand drops as an item when not expected
- Cleaned up BanEntry creation
- Fixed phar check
- Fixed visual typo in /ban-ip, closes #2503
- Improved chunk saving times by not marking it as changed when Players are added/removed
- Fixed #2511
- Catch more corruption issues in Region-based worlds, fixed first chunk being generated on an invalid sector
- Fixed Entities being placed in recreated chunks
- Fixed Flat generator on existing chunks, region issues
- Unload unused regions after 5 minutes
- Improved file resource usage
- Added GarbageCollectionTask, workaround for weird PHP behaviour when using --disable-ansi
Not implemented or known issues:
Please do not report lacking features to the bug tracker, only report bugs on implemented features.
- Entities / Entity AI
- No conversion for old levels (will be added later)
- No Minecarts
- Not all items are implemented
- Generated worlds use a basic generator
PocketMine-MP 1.4 "Zekkou Cake"
For Minecraft: PE v0.10.4 alpha
This is the first stable build of PocketMine-MP 1.4. Lots of changes have happened since 1.3.12, and they won't be detailed here. You can find them on the release list here on GitHub.
Old worlds won't be converted automatically, and you can find it lacking some features. These will be implemented in a future update, as the release was pushed ahead due to the old "stable" release being completely outdated and no features being offered by it.
This version has API changes, bumping the version to 1.10.0. These changes are detailed below.
Main features:
- New version format (drops the stage part)
- Added automatic/manual IP blocking
- Increased chunk defaults
- Improved speed of several generation steps
- Fixed some memory leaks on 32-bit hosts
- Improved exception handling and trace creation
API changes
- API 1.10.0
- Changed RakLib network interface implementation
Fixes and additions:
- Bitmask block state
- New version format
- Possible workaround for some PHP bug related to resources and threads
- Players won't take damage 60 ticks after spawning / respawning.
- Fixed #2446
- Added automatic/manual RakLib IP address, block addresses when exceptions are thrown
- Move Query exceptions to debug level > 1
- Block IP addresses on ban-ip
- Added typehints to HelpCommand
- Corrected fence crafting recipes, closes #2457
- Improved Normal generator speed
- Fixed memory leak issues on chunk generation under 32-bit hosts. Closes #2419, fixes #2308
- Fixed issue with generated chunks not having a provider. Closes #2421
- Higher chunk defaults
- Improved Simplex 2D noise
- Added chunk check on Level
- Detect really big corrupted chunks, closes #2471
- Improved exception handling and trace creation
- Fixed players not calculating onGround correctly
Not implemented or known issues:
Please do not report lacking features to the bug tracker, only report bugs on implemented features.
- Entities / Entity AI
- No conversion for old levels (will be added later)
- No Minecarts
- Not all items are implemented
- Generated worlds use a basic generator