ff6672ba85
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/utils/Utils.php
2020-12-09 20:27:19 +00:00
68887105b2
Utils::cleanPath(): drop the square braces
...
this looks ugly, as well as breaking plugin crash detection (which tbh is too fragile, but it is what it is ...)
2020-12-09 20:26:08 +00:00
22c8bdeeeb
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/CrashDump.php
# src/utils/Utils.php
2020-12-09 01:47:05 +00:00
794bb0a71d
PermissionParser: bail on encountering permissions whose names are not strings
2020-12-09 00:32:50 +00:00
104e90b794
CrashDump: more robust core crash detection
2020-12-08 23:27:03 +00:00
994062f6dc
CrashDump: fixed plugin detection on eval()'d code
...
it's possible we could clean the path up to detect which plugin caused the crash, but for now I'll be happy to not have them showing up as core crashes ...
2020-12-08 23:11:29 +00:00
197b1a8566
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/network/mcpe/protocol/types/inventory/stackresponse/ItemStackResponseSlotInfo.php
# src/network/mcpe/raklib/FilterTextPacket.php
# src/pocketmine/VersionInfo.php
# src/pocketmine/network/mcpe/protocol/PacketPool.php
# src/pocketmine/network/mcpe/protocol/ResourcePacksInfoPacket.php
2020-12-08 21:34:06 +00:00
69a41a5ed4
3.17.1 is next
2020-12-08 21:02:14 +00:00
3903b70ef5
Release 3.17.0
3.17.0
2020-12-08 21:02:13 +00:00
692e63ad7c
Protocol changes for 1.16.200
2020-12-08 20:31:17 +00:00
05a1f45111
PluginGraylist: all fields are mandatory
2020-12-08 13:38:44 +00:00
219cf2126b
RegionWorldProvider: make loadRegion() return RegionLoader, fix 3 PHPStan null-reference errors
2020-12-07 19:04:52 +00:00
e810a68dd7
Merge branch 'stable'
...
# Conflicts:
# build/php
# composer.lock
# resources/vanilla
# src/pocketmine/VersionInfo.php
# src/pocketmine/level/format/io/region/McRegion.php
2020-12-07 18:57:58 +00:00
4d1be4d41d
McRegion: do not create a region file when trying to read a chunk that doesn't exist
...
fixes #3953
2020-12-07 18:44:49 +00:00
5f0310a8b6
3.16.2 is next
2020-12-07 17:16:11 +00:00
9b01fb3d89
Release 3.16.1
3.16.1
2020-12-07 17:16:10 +00:00
f28405fcfb
phpstan 0.12.59
2020-12-07 17:12:55 +00:00
c4b47c6c06
Implemented /clear command ( #3854 )
...
closes #3854
2020-12-06 15:26:12 +00:00
d9de775c27
Updated DevTools submodule to pmmp/DevTools@888d021260
2020-12-05 22:56:27 +00:00
0bbceee86d
PermissionParser: give permissions default FALSE if they don't specify their own default
2020-12-05 21:06:07 +00:00
9c07c206f6
Updated DevTools submodule to pmmp/DevTools@1606a4307b
2020-12-05 20:02:14 +00:00
d0d701f232
Updated build/php submodule to pmmp/php-build-scripts@a42c7df20a
2020-12-05 19:42:41 +00:00
07cae8a129
Updated composer dependencies
2020-12-05 19:40:30 +00:00
59cb11dc83
ChunkManager->setChunk() no longer accepts NULL
2020-12-05 18:54:30 +00:00
b6df5b974d
World->getHighestBlockAt() may still return -1 if the queried column of blocks is all air
2020-12-05 18:14:38 +00:00
531c191431
Finalize Utils class
2020-12-05 18:09:23 +00:00
1f330c0f50
World: ignore entities calling onEntityMoved() who aren't members of the world
...
this can happen if movement or teleportation occurs during the creation of an entity.
2020-12-05 17:49:34 +00:00
b2bab6c2fb
clean dead errors out of phpstan l8 baseline
2020-12-05 01:32:23 +00:00
a5315991d5
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/network/mcpe/protocol/serializer/PacketSerializer.php
# src/world/biome/Biome.php
# tests/phpstan/configs/l8-baseline.neon
2020-12-05 01:30:39 +00:00
6869ee1c2d
Clean up nonsensical code in NetworkBinaryStream->getSlot()
2020-12-05 01:24:41 +00:00
eca0e88471
BaseInventory: fixed passing NULL slots to InventoryListener->onContentChange()
...
as per the documentation, InventoryListener->onContentChange() does not expect to receive NULL in the given array.
2020-12-05 01:11:30 +00:00
070d8efda3
[ci skip] more world stuff for changelog
2020-12-05 01:02:53 +00:00
d728160a77
Removed the cycle between Entity and Chunk
...
it's now the World's responsibility to manage adding/removing entities from appropriate chunks. Entities no longer know or care that chunks exist.
Entity->checkChunks() remains as-is for backwards compatibility - now it just calls the world to sync its position.
2020-12-05 00:59:16 +00:00
03b1ea766a
Added a DedicatedQueryNetworkInterface to ensure Query functionality when RakLibInterface is disabled ( #3942 )
2020-12-04 21:21:25 +00:00
37b9694845
ConsumingItemAnimation: fixed itemID translation for 1.16.100
2020-12-04 20:44:03 +00:00
1c49cedc8c
World: disallow block placement and breaking in unloaded, ungenerated and locked chunks
2020-12-04 15:49:35 +00:00
bacdb7bde5
Make sure generator gets preemptively registered when a worker restart is detected
...
if a PopulationTask took place after the target worker was garbage collected, the population would fail and the chunks it used would be copied for nothing.
This change marks workers as having unregistered generators when detecting that a worker that previously had a generator registered is restarted.
2020-12-04 15:44:17 +00:00
e056456dd1
Player: fixed crash when stopping using a chunk before it's finished being generated
2020-12-04 15:36:43 +00:00
26155acff2
register HellBiome ( #3950 )
2020-12-04 11:58:49 +00:00
5ba09b6a25
fix PopulationTask crash
2020-12-03 23:48:40 +00:00
5f55cdfa76
Cleaned out dead error patterns from phpstan level 8 baseline
2020-12-03 22:44:03 +00:00
b9cd633cee
Chunks no longer exist in un-generated state
...
a non-generated chunk is now always represented by NULL. This forces the case of ungenerated chunks to be handled by all code, which is necessary because ungenerated chunks cannot be interacted with or modified in any meaningful way.
2020-12-03 22:28:43 +00:00
05ab44f768
PopulationTask no longer creates chunks if they don't exist
...
creating a throwaway empty chunk on the main thread is pointless.
2020-12-03 22:12:42 +00:00
c808095978
Chunks no longer contain their own coordinates
2020-12-03 21:59:30 +00:00
1f5998d24c
FastChunkSerializer no longer encodes chunk coordinates
...
in cases like PopulationTask it makes more sense to store the coordinates separately where they can be stored more efficiently (once instead of 9 times)
In addition, PopulationTask shouldn't need to serialize an empty chunk just to copy coordinates.
I've made changes like this in other areas already in preparation for the day when chunks no longer contain their coordinates, so this brings us one step closer to that goal.
2020-12-03 20:52:33 +00:00
5b1fa25dff
LightPopulationTask: remove useless @var
2020-12-03 20:29:41 +00:00
7edfa3713b
Do not persist SimpleChunkManager between async tasks
...
this is just asking for memory leaks.
2020-12-03 19:46:23 +00:00
dde2e7e66f
generation: drop AsyncWorker thread-local storage in favour of a more specialized storage
2020-12-03 19:28:22 +00:00
999defd20d
World: remove create params from loadChunk() and loadChunkAtPosition()
2020-12-03 18:49:14 +00:00
a67f0d1f75
World->registerChunkLoader() no longer causes creation of an empty chunk
...
this only made sense to work around the server crashing when creating a player in ungenerated terrain, but spawning at y=256 is hardly preferable, and it'll crash since fd99445c5b
anyway ...
2020-12-03 18:41:53 +00:00