6581 Commits

Author SHA1 Message Date
Dylan K. Taylor
a7cd081002
Release 3.19.1 2021-04-25 20:34:13 +01:00
Dylan K. Taylor
361be8fe36
Normal: drop MOUNTAINS and SMALL_MOUNTAINS from biome selection
this would cause disruption to generation on a patch release, which is unacceptable.
This would be better for 3.20 or 4.0.
2021-04-25 20:27:19 +01:00
Dylan K. Taylor
177b963d8e
TaskScheduler: do not push cancelled repeating tasks back onto the queue 2021-04-19 13:23:31 +01:00
TheNewHEROBRINEX
8d1a1628de
Item: Remove "ench" tag when all enchantments are removed from an item (#4184)
fixes #4144
2021-04-18 20:56:07 +01:00
Dylan K. Taylor
6f80b8979d
Particle: added some missing IDs 2021-04-16 18:20:47 +01:00
Dylan K. Taylor
3c8eb29d4e
Limit blockitem metadata hack to just blockitems
for some reason putting NBT on some items makes the creative inventory go haywire. Sadly, we currently need this hack, so I limit it to only stuff which actually needs it (blockitems).
closes #4159
2021-04-16 00:41:19 +01:00
Dylan K. Taylor
b94bbf6f5e
Merge branch 'stable' of github.com:pmmp/PocketMine-MP into stable 2021-04-16 00:11:01 +01:00
Dylan K. Taylor
314a8a1297
protocol: updated particle type constants
closes #4173
2021-04-16 00:10:48 +01:00
TheShermanTanker
547503e8f4
Normal: Fixed bug that never lets mountainous terrain generate (#4170) 2021-04-13 17:56:57 +01:00
Dylan K. Taylor
6c351357ab
NetworkBinaryStream: bail if finding unexpected trailing data on item extradata
this may help to discover additional bugs and/or missing data on items that we don't know about yet.
2021-04-11 16:02:41 +01:00
Dylan K. Taylor
3433406cff
3.19.1 is next 2021-04-07 19:03:36 +01:00
Dylan K. Taylor
b307cd0aa1
Release 3.19.0 2021-04-07 19:03:36 +01:00
Dylan K. Taylor
c9b83d7276
Protocol changes for 1.16.220 2021-04-07 18:59:01 +01:00
Dylan K. Taylor
e22b6ff566
Revert "Revert "Backport InventoryTransactionPacket impl from PM4""
This reverts commit c7cdaeae8569c766df7db9f889c67f4e65a38d15.
2021-04-07 18:42:07 +01:00
Dylan K. Taylor
af88f49a21
3.18.3 is next 2021-04-07 18:32:14 +01:00
Dylan K. Taylor
599d5253db
Release 3.18.2 2021-04-07 18:32:10 +01:00
Dylan K. Taylor
54cb5ee0fa
ItemTranslator: ensure that the correct meta value is returned after translation
-1 is a PM-specific thing. Right now there is a hack in the NetworkBinaryStream which prevents this from becoming a problem, but that might not be the case in future.
2021-04-07 13:10:29 +01:00
Ali
a45a4a91ae
Call InventoryCloseEvent in Player::removeWindow() (#4142)
closes #4130
2021-04-04 01:07:58 +01:00
Dylan K. Taylor
125837324f
Player: don't dump cursor contents on mouseover interaction
this can fire while the player has the inventory window open, because it also gets sent when the player swaps their held itemstack for something new.

We already had a special-case for mouseover with entity ID 0, but since
this isn't just a zero problem, a more general fix suits better
(particularly since we might need to handle the 0 case anyway).

closes #4140
closes #4141
2021-04-02 21:35:38 +01:00
Ali
609dff1aae
Player: Revert invalid attempts to toggle flight, instead of kicking (#4139)
If allowFlight was toggled by the server (e.g. due to gamemode change), a race could occur due to network latency where the client could try to enable flight, and then get kicked for cheating.

Since this can happen in legitimate, non-cheating cases, we can't make any assumptions about whether a player is cheating, so instead we just revert it, like we do with every other bad input.
2021-04-01 17:57:26 +01:00
Dylan K. Taylor
b03212053c
3.18.2 is next 2021-03-28 21:24:07 +01:00
Dylan K. Taylor
fd4ac885bb
Release 3.18.1 2021-03-28 21:24:03 +01:00
Dylan K. Taylor
34c2b62ffe
Remove unused import 2021-03-28 19:12:18 +01:00
Dylan K. Taylor
e42a691da9
Strip trailing whitespace 2021-03-28 19:02:51 +01:00
Ali
3b3fb5e662
fix ItemFrames (#4101)
removing items from item frames was broken due to behavioural changes in 1.16.210.
2021-03-28 18:53:46 +01:00
Dylan K. Taylor
4abf4aecad
MainLogger: fixed potential deadlock during syncFlushBuffer()
the notify() to flush the buffer might arrive in between the writeLogStream() and synchronized() calls in the thread body, resulting in a deadlock if the logger thread managed to call wait() before the main thread did.
2021-03-28 18:10:23 +01:00
Dylan K. Taylor
4bc57f00b8
Updated LevelSoundEventPacket constants 2021-03-23 23:36:48 +00:00
Dylan K. Taylor
ff61e1e018
ClientCacheBlobStatusPacket: fixed field order
miss comes first, not hit.
2021-03-23 19:52:25 +00:00
Dylan K. Taylor
fb20bb3832
Don't handle NAN/INF in movements 2021-03-23 14:54:39 +00:00
Dylan K. Taylor
c7cdaeae85
Revert "Backport InventoryTransactionPacket impl from PM4"
This reverts commit cb06be615aa3780d4c83a947520fa55c0d908618.

we can't push this to stable because it would break plugins without any
way to know (no protocol or API change).

At most, this should have been wrapped into a protocol change.
2021-03-22 21:21:11 +00:00
Dylan K. Taylor
cb06be615a
Backport InventoryTransactionPacket impl from PM4
this version is far better, and we're going to need it to deal with the PlayerAuthInputPacket bullshit.
2021-03-19 22:16:30 +00:00
Dylan K. Taylor
3667e95ff6
Added PlayerAuthInputFlags 2021-03-19 21:41:22 +00:00
Dylan K. Taylor
0e2dc51ec8
added some missing things to the protocol 2021-03-19 21:09:53 +00:00
Dylan K. Taylor
1bb2d162ab
Simplify CommandReader
while stream_select() doesn't work on pipes, if it ever starts working properly in the future, we'll need this code. In the meantime, it's harmless (it just immediately returns 1 anyway).
2021-03-16 21:42:35 +00:00
Nick
ee868bcccc
update argument type constants (#4082) 2021-03-15 18:22:01 +00:00
Yosshi999
cbc8576d4a
Implement UPnP support without dotNET (#3378)
UPnP forwarding is now available on all supported platforms.
com_dotnet is no longer required for UPnP forwarding to work.

Closes #3216 .
2021-03-14 22:50:33 +00:00
Dylan K. Taylor
edcf296086
RakLibInterface: fixed server being unjoinable if gamemode is Spectator
closes #4069
this happens because the client bans any server that has an invalid pong, which is very stupid in this case because the gamemode isn't even shown on the UI anyway ...
2021-03-14 20:35:17 +00:00
Dylan K. Taylor
a0368a843e
3.18.1 is next 2021-03-12 22:07:01 +00:00
Dylan K. Taylor
3f64906263
Release 3.18.0 2021-03-12 22:07:01 +00:00
Dylan K. Taylor
4816a66fb8
Baseline protocol changes for 1.16.210
this is not a complete changeset, but it's sufficient to get servers back online.
There are additional changes to PlayerAuthInputPacket which need to be reversed.
2021-03-12 21:41:48 +00:00
Dylan K. Taylor
5b8166c1f0
3.17.8 is next 2021-03-11 00:22:17 +00:00
Dylan K. Taylor
30c5cad5b3
Release 3.17.7 2021-03-11 00:22:17 +00:00
Dylan K. Taylor
f95fcecb5b
3.17.7 is next 2021-03-10 20:49:10 +00:00
Dylan K. Taylor
61391b6e23
Release 3.17.6 2021-03-10 20:48:57 +00:00
Dylan K. Taylor
fbb6f1f81c
Workaround for cursor sync in 1.13+, closes #4059 2021-03-07 21:17:52 +00:00
Dylan K. Taylor
ed84252942
Player: Improved XUID verification
we check if an existing player is online with a matching XUID first; if there isn't, we don't bother loading the playerdata, since that other player couldn't have joined unless they had a match or were allowed to bypass.
2021-03-07 19:53:19 +00:00
Dylan K. Taylor
e755e1dc23
ResourcePackClientResponsePacket: fixed non-deterministic decoding 2021-02-27 01:08:18 +00:00
Dylan K. Taylor
78f9985377
Player: fixed PlayerMoveEvent->getFrom() returning unexpected results on movement reversion
fixes #4043
2021-02-26 00:30:42 +00:00
Dylan K. Taylor
fac2bd3379
Liquid: mark getSmallestFlowDecay() as impure
this fixes two bogus PHPStan warnings.
2021-02-25 22:41:07 +00:00
Dylan K. Taylor
fcfd51dfc7
CrashDump: do not put FALSE into crashdumps in case file_get_contents() failed 2021-02-23 19:39:21 +00:00