15206 Commits

Author SHA1 Message Date
Dylan K. Taylor
390c03f52e
tidy 2025-08-15 19:47:28 +01:00
ShockedPlot7560
db880c49a5
Use of BlockStateData instead of string
I'm not sure at the moment about using BlockStateData::current and getBlockStateData directly in this class.
2025-08-05 14:51:18 +02:00
ShockedPlot7560
5a1b975c03
Simplify serializeBlock 2025-07-31 13:06:53 +02:00
ShockedPlot7560
e00c99b97e
Fix style 2025-07-31 08:36:41 +02:00
ShockedPlot7560
90cc104b05
Get rid of useless closure 2025-07-31 08:33:36 +02:00
ShockedPlot7560
f5867851a5
fix PHPstan 2025-07-30 11:35:18 +02:00
ShockedPlot7560
930c8a1f82
BlockObjectToStateSerializer: Allow serializers to return an ID string 2025-07-30 11:24:55 +02:00
Dylan K. Taylor
d41f1b2889
World: avoid hammering the disk looking for known ungenerated chunks
closes #6679

judging by the debug logs, this actually happens a lot during initial world generation,
which I suppose isn't that surprising.
2025-07-25 18:01:02 +01:00
pmmp-admin-bot[bot]
0977f0db7d Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/16144129050
2025-07-08 13:08:27 +00:00
pmmp-admin-bot[bot]
a1d74b5710 5.31.1 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/16143550499
2025-07-08 12:43:11 +00:00
Dylan T.
50e15db9ac
Prepare 5.31.0 release (#6752) 2025-07-08 13:41:59 +01:00
pmmp-admin-bot[bot]
7082522509 Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/15837783229
2025-06-24 00:03:00 +00:00
pmmp-admin-bot[bot]
e415518435 5.30.2 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/15834488047
2025-06-23 20:31:58 +00:00
ipad54
cb508f4382
Release 5.30.1 (#6744) 2025-06-23 23:30:48 +03:00
ipad54
177fa76434
Disable client-side locator bar (#6743)
Without a propper server-side implementation, it just a mess of white dots of nearby players
2025-06-23 14:57:33 -05:00
ipad54
2a97b4294d
Fixed held block placement after respawn anchor explosion (#6742) 2025-06-23 16:59:40 +01:00
Dylan K. Taylor
258923cc78
World: verify blockstate IDs in setChunk()
I think I've finally traced the source of these problems back to BuilderTools setting bad values in async tasks :)
2025-06-21 23:05:51 +01:00
Dylan T.
04494e845c
EntityExplodeEvent: Fixed accidental BC break introduced by #6646
thanks @Yexeed
2025-06-20 15:26:42 +01:00
pmmp-admin-bot[bot]
6826420876 5.30.1 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/15743323722
2025-06-18 20:49:31 +00:00
Dylan K. Taylor
3643d3aeb8
Ready 5.30.0 release 2025-06-18 20:42:10 +01:00
Dylan K. Taylor
a662510cca
Merge remote-tracking branch 'origin/stable' into minor-next 2025-06-18 19:56:02 +01:00
pmmp-admin-bot[bot]
8843b1b568 5.29.1 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/15720776704
2025-06-18 00:16:13 +00:00
Dries C
9c71f4fc1c
Assemble 1.21.90 (#6736) 2025-06-18 01:15:00 +01:00
pmmp-admin-bot[bot]
bd39caccb0 Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/15598290427
2025-06-12 00:02:56 +00:00
Dylan T.
95b4db5169
Fix slow SubChunk garbage collection check, closes #6574 (#6731) 2025-06-11 21:29:03 +01:00
Dylan K. Taylor
48b80ecf78
Change crashdump file name format
this has bothered me for ages since it sorts into some absurd order by default due to the name starting with the day of the week.

this way it'll ensure that the files are always alphanumerically ordered, which means the most recent crashdump should always be
at the bottom.
2025-06-08 19:01:11 +01:00
Dylan K. Taylor
d053e9e168
Merge branch 'stable' into minor-next 2025-06-08 18:43:31 +01:00
Dylan T.
5ebbcd5d33
Move to newer systems for movement and block break handling (#6718)
MS is due to remove the non-server-auth versions of all of this stuff.

Fortunately v3 server auth movement works just fine without any changes,
although we will need to start sending player tick in some packets if
someone wants to actually use the rewind stuff.
2025-06-02 15:24:25 +01:00
Dylan K. Taylor
b4b6bbe29f
BaseInventory: fixed internalAddItem() setting air slots to air
this bug was introduced in #4237, but it was unnoticed due to having no adverse
effects other than noisy debugs and network traffic.
2025-05-29 17:18:45 +01:00
Dylan K. Taylor
0910a219d4
Fixed improper pre-checking of PlayerAuthInputPacket flags 2025-05-28 23:29:37 +01:00
Dylan K. Taylor
56da492e48
World: make less noise about deleted tile entities
no need to repeat the same message 100 times
2025-05-28 22:10:20 +01:00
Dylan K. Taylor
035d2dec23
LevelDB: make unknown block errors way less annoying
these would previously generate a new line for every error.
since errors are often repeated for different offsets (e.g. different states of the same block),
we can save a lot of spam by deduplicating them and telling which offsets the errors occurred in.
2025-05-28 22:03:29 +01:00
Dylan K. Taylor
b40b99fe72
Player: fixed crash on action item return
this can happen if the old item had a lower max damage than the new one, and the new
one has a damage higher than the old one's max damage.

it can also happen if the damage was overridden to some illegal value by a custom item
as seen in https://crash.pmmp.io/view/12754811
2025-05-28 21:32:48 +01:00
Dylan K. Taylor
baafaed362
Stem drops seeds according to binomial distribution
fixes #6709

we really need a better way to reverse-engineer the chance parameter for these
as the wiki just gives a probability table, which is quite tiresome to extract
patterns from.
2025-05-28 21:00:40 +01:00
Adam
bf33a625c9
Implemented Respawn Anchor (#6646)
PlayerRespawnAnchorUseEvent is also added with options SET_SPAWN and EXPLODE, which allows plugins to customise the outcome of using the anchor in PM, which currently doesn't support dimensions. The event is also cancellable.
2025-05-27 21:57:28 +01:00
Dylan T.
059f4ee7bf
Extract GeneratorExecutor system from World, v2 (#6682)
- `AsyncGeneratorExecutor` class added that encapsulates the logic of generating chunks using async tasks as previously
- `GeneratorExecutor` interface added that can be implemented to provide chunks in other ways
- `SyncGeneratorExecutor` which invokes the generator directly on the main thread, useful for simple generators like `Flat` where async tasks are not needed
- Some redundant APIs were removed from `World` (these will probably come back as deprecated stubs for the remainder of 5.x, but I was having too much fun deleting code)
- Removed internal `World->registerGeneratorToWorker()` (no longer useful)
- `World` now invokes generator executor instead of posting AsyncTasks directly
- Some internal classes moved to `pocketmine\world\generator\executor` (PopulationTask excluded because plugins use it in lieu of being able to regenerate chunks
- Generators can opt into main-thread execution by setting the `$fast` parameter to `true` in `GeneratorManager::register()`
2025-05-27 21:51:10 +01:00
Dylan K. Taylor
dd17adeaaf
Reintroduce step height additions for minor-next
Revert "Revert change that can't go on stable"

This reverts commit a554d2acf5db00f577493517e36bb3ad07a6bdd0.
2025-05-25 11:33:47 +01:00
Dylan K. Taylor
a554d2acf5
Revert change that can't go on stable
API additions need to wait for the next minor release

Revert "Entity: make stepHeight accessable (#6702)"

This reverts commit 5527a0c6bf4343b39cd6ed4526f75539ac6ddf19.
2025-05-25 11:32:40 +01:00
ItzxDwi
5527a0c6bf
Entity: make stepHeight accessable (#6702) 2025-05-25 10:07:41 +02:00
zSALLAZAR
eee2e62d81
Add EntityFrostWalkerEvent (#6673) 2025-05-25 10:01:46 +02:00
ipad54
4d5c27a734
Unit test block hardness & blast resistance values (#6629) 2025-05-24 21:01:36 +01:00
Dylan K. Taylor
e1af2a4af1
Update language dependency 2025-05-24 16:19:48 +01:00
pmmp-admin-bot[bot]
55123b36e1 Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/15090310700
2025-05-18 00:03:33 +00:00
Dylan K. Taylor
94fb5d95b9
CommonThreadPartsTrait: fixed thread crashes sometimes missing cause info
closes #6669

this happens because isTerminated returns true before the thread's shutdown handler runs,
so we join with the thread to make sure that shutdown handlers are done before returning.

... hopefully we don't get servers randomly deadlocking in shutdown handlers ???
2025-05-17 19:09:54 +01:00
pmmp-admin-bot[bot]
7169f8e553 Merge 'stable' into 'minor-next'
Automatic merge performed by: https://github.com/pmmp/RestrictedActions/actions/runs/15087062558
2025-05-17 16:31:32 +00:00
pmmp-admin-bot[bot]
647c2587a8 5.28.3 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/15086729525
2025-05-17 15:45:22 +00:00
Dylan T.
81d3017ad5
Murphy's Law (#6698) 2025-05-17 16:44:19 +01:00
pmmp-admin-bot[bot]
280911ec59 5.28.2 is next
Commit created by: https://github.com/pmmp/RestrictedActions/actions/runs/15085916916
2025-05-17 14:01:49 +00:00
Dylan T.
abb004fbc5
Ready 5.28.1 (#6696) 2025-05-17 15:00:53 +01:00
Dylan K. Taylor
67f3bb9c52
Update composer dependencies
and fix an error found by new PHPStan update
2025-05-17 13:46:33 +01:00