Dylan K. Taylor
27324a3aeb
Protocol changes for 1.17.30
2021-09-22 00:26:39 +01:00
Dylan K. Taylor
133398c69a
changelog: add newline
...
[ci skip]
2021-09-19 22:57:22 +01:00
Dylan K. Taylor
52b6952771
changelog: baseline for 4.0.0-BETA3
...
[ci skip]
2021-09-19 22:55:48 +01:00
Dylan K. Taylor
1ce388ca0b
Liquid: add getMinAdjacentSourcesToFormSource(), remove circular dependency between Liquid and Water
...
this unpleasantly-named method allows controlling the source-forming behaviour of liquids by changing the required number of adjacent sources that must be present in order for a new source to form. This allows stuff like non-infinite water.
2021-09-19 15:59:16 +01:00
Dylan K. Taylor
971cbe3929
Liquid: restore mistakenly removed check
2021-09-19 15:42:17 +01:00
Dylan K. Taylor
18de35ffc7
Liquid: use facing instead of hardcoded integers
2021-09-19 15:37:03 +01:00
Dylan K. Taylor
576c33ee8f
Liquid: make flow vector calculation less cancerous to read
2021-09-18 23:04:28 +01:00
Dylan K. Taylor
6b2ab15ea1
MinimumCostFlowCalculator: fix bug caused by recent change
2021-09-18 16:20:01 +01:00
Dylan K. Taylor
027f7e249b
MinimumCostFlowCalculator: Use match statements where possible
...
coincidentally, this also fixes the build.
2021-09-18 16:17:08 +01:00
Dylan K. Taylor
a9c4238c59
Liquid: Extract a big chunk of code to MinimumCostFlowCalculator
2021-09-18 16:13:38 +01:00
Dylan K. Taylor
34e1b244fa
Liquid: split canFlowInto() over multiple lines
...
the original version is very hard to read.
2021-09-18 15:53:54 +01:00
Dylan K. Taylor
b047100719
Liquid: improve minimum cost calculation handling
2021-09-18 15:52:16 +01:00
Dylan K. Taylor
1b5071e074
Liquid: make some code slightly less cancerous to read
2021-09-18 15:28:45 +01:00
Dylan K. Taylor
3836a57ba6
Player: add getPlayerInfo(), closes #4450
2021-09-17 22:17:36 +01:00
Dylan K. Taylor
87dc763d92
actions: test that generated code is consistent
2021-09-17 16:46:27 +01:00
Dylan K. Taylor
43b2e1a0e8
tools/convert-world: improve error messages and exit codes
...
die with a string exits with zero? wtf?
2021-09-16 15:28:20 +01:00
Dylan K. Taylor
05e2bef5ce
ItemFactory: fix crash when checking if blockitem IDs are registered
2021-09-16 14:53:19 +01:00
Dylan K. Taylor
6cf181b579
LevelDB: Use arrow functions for better readability
2021-09-16 14:44:56 +01:00
Dylan K. Taylor
9490b78640
Move packet handler default implementations to BedrockProtocol
...
in many cases this will now require zero changes to PM at all to be compatible with a new protocol version.
2021-09-15 22:27:49 +01:00
Mini S
59f3622f69
changelog: mention PluginLoadOrder changes ( #4458 )
...
[ci skip]
2021-09-15 17:18:53 +01:00
Dylan K. Taylor
a1c82da2f2
Liquid: remove useless continue
2021-09-12 16:03:52 +01:00
Dylan K. Taylor
84170ad3e1
Furnace: fixed deactivation after being reloaded from disk (regression from PM3)
...
closes #4430
2021-09-12 15:49:33 +01:00
Dylan K. Taylor
ace8841d5d
Explosion: allow the normal blockupdate mechanism to deal with explosions
...
in PM4, all blockupdates are buffered, so the old 7x performance penalty that used to be incurred by doing this is no longer a problem.
Also, this actually reduces the overhead of explosions themselves by moving the onNearbyBlockChange() burden off explodeB() and into the main world ticking function.
2021-09-12 15:45:02 +01:00
Dylan K. Taylor
5ddd94b7e8
Remove redundant World->isChunkGenerated() calls
...
isChunkGenerated() merely checks if the chunk can be loaded from disk, if it's not in the runtime cache already.
This is pointless in all of these cases, because the check is prefaced by an isChunkLoaded() check, which already limits the possibility anyway. If the chunk is not generated, it'll also be considered not loaded.
2021-09-12 15:21:09 +01:00
Dylan K. Taylor
f0fa561c2f
World: use arrow functions in useBreakOn()
2021-09-12 15:16:55 +01:00
Dylan K. Taylor
33a7c05425
Updated PHPStan baselines
2021-09-11 23:12:43 +01:00
Dylan K. Taylor
273aa8ab42
Drop useless usage translation strings for commands with no parameters
2021-09-11 17:06:26 +01:00
Dylan K. Taylor
3b7580688c
Stop auto-translating string descriptions/usages for commands
...
Require usage of Translatable for translations.
2021-09-11 16:46:40 +01:00
Dylan K. Taylor
b65e3c69b1
4.0.0-BETA3 is next
2021-09-10 17:18:32 +01:00
Dylan K. Taylor
26e3280fea
Release 4.0.0-BETA2
4.0.0-BETA2
2021-09-10 17:18:31 +01:00
Dylan K. Taylor
fa45d1cdb5
Merge branch 'stable'
2021-09-10 17:13:51 +01:00
Dylan K. Taylor
33b5da3749
3.22.6 is next
2021-09-10 17:09:51 +01:00
Dylan K. Taylor
40e88f1686
Release 3.22.5
3.22.5
2021-09-10 17:09:50 +01:00
Dylan K. Taylor
c995c2de37
updated changelog
...
[ci skip]
2021-09-10 17:04:35 +01:00
Dylan K. Taylor
7701e1ff98
InGamePacketHandler: fix regression in movement handling since 82c8fa696a2e8609d8ae086c52f96abe7c7705b6
...
fixes #4291
fixes #4398
2021-09-10 16:52:46 +01:00
Dylan T
4111d92b98
Stop hardcoding chunk dimensions everywhere ( #4443 )
2021-09-10 16:13:25 +01:00
Dylan K. Taylor
9d5a86fe53
Revert "World: make the second parameter for getCollidingEntities() mandatory and non-nullable"
...
This reverts commit e1b7bf31bbbf8a0c679bdf238cf7594881d0842b.
fixes #4447
2021-09-10 16:06:08 +01:00
Dylan K. Taylor
cf762d345d
Player: Log debug messages when canInteract() prevents block interaction
2021-09-10 15:58:38 +01:00
Dylan K. Taylor
f5c9c02e09
Improve documentation of Thread and Worker
2021-09-10 15:57:45 +01:00
Dylan K. Taylor
32588d79c8
ConsoleReaderThread: remove useless code
2021-09-10 13:54:42 +01:00
Dylan K. Taylor
1cc57afd25
Stop the ConsoleReaderThread explicitly, instead of letting ThreadManager do it
...
this hack dates back to the days when the console reader would get stuck on shutdown on some platforms.
2021-09-10 13:48:01 +01:00
Dylan K. Taylor
334bf1277d
BlockTransaction: Return failure if no blocks were changed
...
fixes #2813
2021-09-10 00:32:46 +01:00
Dylan K. Taylor
082f0f2d57
Player: Generate an InventoryTransaction (with event) for crafting grid/cursor evacuation
...
this fixes the crack in the armour that allows creative players to drop items even when all drops are being cancelled by plugins.
closes #3284
2021-09-09 17:11:59 +01:00
Dylan K. Taylor
5d4f14b388
Added TransactionBuilderInventory for server-side inventory transaction generation
2021-09-09 17:10:04 +01:00
Dylan K. Taylor
4a787769bf
Merge branch 'stable'
2021-09-09 16:06:16 +01:00
Dylan K. Taylor
4c65a0cdaa
LegacySkinAdapter: Use 64x64 for persona polyfilled skins
...
64x32 has some corruption issues and generally just looks really bad.
2021-09-09 16:04:43 +01:00
Dylan K. Taylor
e0e19c67ef
World: do not warn about leaked Player entities during world unload
...
this raises false-positives during shutdown if players were online.
The fact that the player entity leans on the World to clean up after it is slightly problematic, but I'm not sure what else to do about it for now.
2021-09-09 15:55:37 +01:00
Dylan K. Taylor
6f8261f26a
Added changelog so far for beta2
2021-09-09 01:32:39 +01:00
Dylan K. Taylor
34f01a3ce3
World: Track entities separately from chunks
...
this allows entities to exist outside of generated chunks, with one caveat: they won't be saved in such cases.
Obviously, for player entities, this doesn't matter.
fixes #3947
2021-09-09 01:17:41 +01:00
Dylan K. Taylor
ba2bfe0e11
World: depopulate neighbourBlockUpdateQueueIndex sooner
...
this fixes 2 problems:
1) Blocks which set themselves to something else during onNearbyBlockChange() would not receive any block update
2) A memory leak when blocks in unloaded chunks were scheduled for an update.
I'm a little uneasy about this change, because there must have been some reason why I put this at the end of the block and not at the start, but whatever it is, I can't reason about it, and there's reasons not to put it at the end too.
2021-09-08 22:11:17 +01:00