13016 Commits

Author SHA1 Message Date
ねらひかだ
27056b6c37
Player: creative players should not be damaged by the void (#4978) 2022-04-21 16:39:36 +01:00
Dylan K. Taylor
37f0ccdb7e
fix CS 2022-04-20 14:58:57 +01:00
Dylan K. Taylor
43e61336cf
Support 1.18.30 worlds 2022-04-20 14:58:32 +01:00
Dylan K. Taylor
e383f6d8f8
Merge branch 'next-major' into modern-world-support 2022-04-20 14:29:22 +01:00
Dylan K. Taylor
6dbfdd970f
Merge branch 'stable' into next-minor 2022-04-20 14:23:51 +01:00
Dylan K. Taylor
cfea0dac76
Push back to 4.4.0 2022-04-20 14:22:31 +01:00
Dylan K. Taylor
cd021f49cd
4.3.1 is next 2022-04-20 14:15:12 +01:00
Dylan K. Taylor
e4ce467c0b
Release 4.3.0 2022-04-20 14:15:06 +01:00
Dylan K. Taylor
6b4687a36b
RuntimeBlockMapping: unseal constructor to facilitate easier testing of new versions 2022-04-20 14:00:20 +01:00
Dylan K. Taylor
c085bf0db4
Changes for 1.18.30 2022-04-20 13:59:50 +01:00
Dylan K. Taylor
e0d4bd985e
4.2.11 is next 2022-04-20 13:03:25 +01:00
Dylan K. Taylor
3339225fe8
Release 4.2.10 2022-04-20 13:03:25 +01:00
Dylan K. Taylor
df33e179e5
Player: fixed chat newlines denial-of-service vulnerability
irresponsibly reported in #4974

closes #4974
2022-04-20 13:01:05 +01:00
Dylan K. Taylor
624a7dff16
4.2.10 is next 2022-04-19 16:53:12 +01:00
Dylan K. Taylor
1d314ad4ce
Release 4.2.9 2022-04-19 16:53:11 +01:00
Dylan K. Taylor
5a98b08ee8
Fixed several crashes on bad data due to inadequate TAG_List type checks 2022-04-19 16:48:18 +01:00
Dylan K. Taylor
be863015bf
Merge branch 'next-major' into modern-world-support 2022-04-19 15:32:44 +01:00
Dylan K. Taylor
ded7e24f67
Merge branch 'stable' into next-minor 2022-04-19 15:27:55 +01:00
Dylan K. Taylor
f272986903
4.2.9 is next 2022-04-17 20:45:32 +01:00
Dylan K. Taylor
988da8eaab
Release 4.2.8 2022-04-17 20:45:32 +01:00
Dylan K. Taylor
52e3f1e269
ZippedResourcePack: ensure non-empty file
ZipArchive raises deprecation errors on empty files for some reason
2022-04-17 20:32:23 +01:00
Dylan K. Taylor
4c9d2a989e
cs again 2022-04-17 19:32:30 +01:00
Dylan K. Taylor
022db5cbe3
NetworkSession: compare usernames case-insensitively
the current data management system uses case-insensitive names, so we can't allow different players with the same name in different cases to join, or we will have duplication exploits.

This typically only applies to offline servers, since Xbox Live doesn't permit reuse of a username, same case or otherwise.

closes #4965
2022-04-17 19:28:10 +01:00
Dylan K. Taylor
42474c14aa
World: reduce blockhash padding for Y axis to accommodate new height range 2022-04-15 19:47:25 +01:00
Dylan K. Taylor
63b2e7cc4f
fix CS 2022-04-15 19:25:39 +01:00
Dylan K. Taylor
eafbc3a468
Expand height range to include -64 to 320 2022-04-15 19:10:24 +01:00
Dylan K. Taylor
c1c3475e5a
RuntimeBlockMapping: reuse the state ID for unknown blocks
this doesn't really provide any meaningful benefit, unless there are a very large number of unrecognized states
2022-04-15 19:06:56 +01:00
Dylan K. Taylor
3bbf558883
4.2.8 is next 2022-04-15 16:36:47 +01:00
Dylan K. Taylor
1d68d9f71a
Release 4.2.7 2022-04-15 16:36:42 +01:00
Dylan K. Taylor
f2e8824242
fix CS 2022-04-15 16:24:15 +01:00
Dylan K. Taylor
a0e47b5a64
phpstan 1.5.6 2022-04-15 16:21:05 +01:00
Dylan K. Taylor
453bf6d73b
fix build 2022-04-10 21:37:10 +01:00
Dylan K. Taylor
3353a00641
List command aliases in /help <commandName> 2022-04-10 21:32:46 +01:00
Dylan K. Taylor
e388cb1643
Merge branch 'stable' into next-minor 2022-04-10 21:23:04 +01:00
Rush2929
741182c55f
InGamePacketHandler: skip processing movement if the player's position
was changed during processing other properties (#4913)

fixes #4952
2022-04-10 21:02:45 +01:00
Dylan K. Taylor
2efce35331
PluginManager: fixed updating disabled scheduler when plugins cause other plugins to be disabled from within scheduled tasks 2022-04-10 21:00:16 +01:00
Dylan T
d1dfbd95e2
Entity: workaround teleport client bug #4394 by despawning and respawning the entity (#4870)
this is a sucky solution but it works well enough for this scenario.

From my research it appears that while the client-side MovementInterpolator is active on the client and hasn't yet reached its target, any teleport sent during the lerp will get overridden by the lerp.
This appears to last 3-4 ticks (about 150-200 ms) which explains why this can be reproduced by stopping movement just before the ender pearl lands (human reaction times would make the reproduction unreliable otherwise).

Things to note:
- All entities are affected by this bug.
- MovePlayerPacket appears not to have the problem, but we can't use it because it doesn't work for non-players.
- MoveActorAbsolute and MoveActorDelta are both handled by the same code and will have the same lerping bug.

This is the cleanest solution I could come up with.
2022-04-08 23:12:01 +01:00
Dylan K. Taylor
4fc712119f
FlowerPot: allow removing the planted item
closes #4896
closes #4898

this is not completely consistent with client-side predictions due to a bug in the client, which I believe is a problem limited to the legacy transaction system.
2022-04-08 23:07:08 +01:00
Dylan K. Taylor
ea677154cb
InGamePacketHandler: rely exclusively on prediction mismatch checking to re-sync slots during bad transactions
fixes #4894
closes #4926
relying on the core code to guess which slots should be synced is unreliable at best.
2022-04-04 21:58:19 +01:00
Armen Deroian
f924208881
Update PlayerPreLoginEvent documentation (#4940)
Removed outdated documentation that was very misleading. Replaced with better documentation that accurately describes how to cancel the event.
2022-04-03 17:59:07 +01:00
Dylan K. Taylor
ac3a6033b9
PluginManager: account for possible abstract main classes
idk why anyone does this, but it shouldn't cause a core crash ...
2022-04-01 23:42:37 +01:00
Dylan K. Taylor
d7e6b01216
4.2.7 is next 2022-04-01 23:01:15 +01:00
Dylan K. Taylor
26aee7ff73
Release 4.2.6 2022-04-01 23:01:15 +01:00
Dylan K. Taylor
ede9e78fbd
ItemBlock: make final, and document its purpose more clearly 2022-03-29 12:49:49 +01:00
Dylan K. Taylor
4c433fd75b
Remap invalid metadata values to zero
this is a bit less sophisticated than the way we do it with BlockFactory, but this shouldn't usually have any relevance anyway - it's only used for correcting bogus states.
2022-03-28 18:13:14 +01:00
Dylan K. Taylor
53c2c4939e
Merge branch 'next-major' into modern-world-support 2022-03-28 17:23:13 +01:00
Dylan K. Taylor
7d1464f0a1
Merge branch 'stable' into next-minor 2022-03-28 17:18:54 +01:00
Dylan K. Taylor
8cc7fb9dd9
fix CS 2022-03-28 17:16:35 +01:00
Dylan K. Taylor
194cb1fb84
phpstan 1.5.1 2022-03-28 17:12:00 +01:00
Dylan K. Taylor
8ea106c091
4.2.6 is next 2022-03-28 16:35:10 +01:00