Commit Graph

6630 Commits

Author SHA1 Message Date
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 c7cdaeae85.
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 cb06be615a.

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
Dylan K. Taylor
ccc76cf338 Make less noise about XBL being enabled
this has been in force for years now, it's expected by now.
2021-02-23 19:25:22 +00:00