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
Dylan K. Taylor
a6cb3313b0
Release 4.2.5
2022-03-28 16:34:57 +01:00
Dylan K. Taylor
c6374b79b0
Improve crashdump ergonomics
...
hopefully this will result in less people making useless pastes that don't contain backtraces ...
2022-03-24 19:46:11 +00:00
Dylan K. Taylor
993adc8c82
LevelDB: remove deprecated constants
...
there's no point pretending we can maintain BC on this now
2022-03-24 12:59:45 +00:00
Dylan K. Taylor
9f4418e01d
Wall: separate connection calculation into its own method
...
we'll need this once wall connections start actually being stored instead of just being recalculated on every read.
2022-03-24 12:52:51 +00:00
Dylan K. Taylor
8bf1fb7b1d
Merge branch 'next-minor' into modern-world-support
2022-03-24 12:50:45 +00:00
Dylan K. Taylor
f25beab6cb
Use constants for compound meta values
2022-03-23 15:58:27 +00:00
Dylan K. Taylor
334c9daa6a
BlockFactory: change property cache arrays to use regular arrays instead of SplFixedArray
...
this does come at a performance cost, but is necessary for metadata expansion.
we finally concede that this is not going to happen without BC breaks, however small they might be ...
2022-03-23 15:22:57 +00:00
Dylan K. Taylor
b52bb5016c
BlockIdentifier: enforce that ID and variant must be non-negative
2022-03-23 14:39:02 +00:00
Dylan K. Taylor
310104f786
BlockFactory: change fullList to non-fixed array
...
when we expand the metadata range, having a fixed array here will present some problems due to significantly increased memory footprint (2x for every bit added).
2022-03-23 14:34:15 +00:00