Spottedleaf
30a79469e3
Correctly retrun true for empty input shapes in EntityGetter#isUnobstructed
...
Vanilla will return true for empty shapes, so we should as well.
2025-01-27 07:59:20 -08:00
Jason Penilla
254b331259
Exclude transitive deps provided by Minecraft
2024-12-04 10:19:20 -07:00
Jason Penilla
a21c44ad31
Use libraries from Paper repo ( #82 )
...
* Use YamlConfig from Paper repo
* Add comment to settings
* Use ConcurrentUtil from Paper repo and use release of YamlConfig
* Use ConcurrentUtil release
2024-12-03 20:33:24 -07:00
Spottedleaf
77ba4a4584
Throw when sync loading chunks after shutdown
...
The caller would block indefinitely if a sync load is requested
during shutdown. Rather than block indefinitely, we should throw
an exception to indicate to the caller that the chunk system is
unable to process requests.
2024-12-03 20:32:14 -07:00
Spottedleaf
a510acbd78
Set version to 0.1.0-SNAPSHOT
2024-12-01 15:57:47 -08:00
Spottedleaf
6fdc3cb1df
Set version to 0.1.0-beta.10
v0.1.0-beta.10
2024-12-01 15:52:36 -08:00
Spottedleaf
04e2b976ac
Fix several off-by-one errors in view distance calculations
...
1. For NearbyPlayers, we need to be using the view distance, and
not the load distance (which is +1 of the view distance).
2. Correctly clamp tick distance to view distance. Since
load distance is +1 of view distance, we need to subtract
one from the load distance when clamping.
Additionally, add checks inside ViewDistances to ensure that
the inputs are in range to catch future errors.
2024-12-01 15:23:59 -08:00
Spottedleaf
bd938e6e35
Clamp simulation distance
...
Values above MAX_VIEW_DISTANCE do not make sense to configure,
as it is clamped to the load view distance.
2024-12-01 14:24:33 -08:00
Spottedleaf
3624d261f8
Adjust constant collision shape determination
...
Our previous hack did not actually catch every case. For now,
it will only assume a constant collision shape of EMPTY for
air blocks.
Fixes https://github.com/PaperMC/Paper/issues/11697
2024-12-01 13:33:31 -08:00
Spottedleaf
6c75d6935e
Force LazyEntityCollisionContext#getEntity() to delegate
...
By delegating when the entity is retrieved, we can correctly catch
cases where the collision method is inspecting some entity state.
2024-12-01 13:33:14 -08:00
Spottedleaf
e40c40613d
Only call config initialisers if reload succeeded
2024-12-01 13:33:01 -08:00
Jason Penilla
84e7106762
Disable immediate loading screen closure by default
2024-11-26 15:53:44 -07:00
Spottedleaf
0218cb5979
Move YamlConfig to own project
2024-11-25 09:39:41 -08:00
Jason Penilla
7d0d5a56dd
Back to 0.1.0-SNAPSHOT
2024-11-17 11:32:05 -07:00
Jason Penilla
4597f04a6d
0.1.0-beta.9
v0.1.0-beta.9
2024-11-17 10:56:53 -07:00
Jason Penilla
20764890a7
Update lithium, NeoForge, loom
2024-11-16 17:37:11 -07:00
Jason Penilla
f719abdb64
Update NeoForge lithium overrides
2024-11-16 17:35:43 -07:00
Jason Penilla
0dce47bba6
Apply FerriteCore config overrides automatically
...
New versions of FC added this mechanism
closes #66
2024-11-05 16:13:46 -07:00
Jason Penilla
47584ceee1
Use declaration order for state holder property iteration
...
Mostly an aesthetic change for serialization, should not have any impact on performance or correctness.
2024-10-27 18:32:42 -07:00
Jason Penilla
2fc858a683
Back to 0.1.0-SNAPSHOT
2024-10-26 11:05:51 -07:00
Jason Penilla
68ea18bc51
0.1.0-beta.8
v0.1.0-beta.8
2024-10-26 11:03:18 -07:00
Jason Penilla
9944946b29
Update Fabric API and call ServerChunkEvents.CHUNK_GENERATE
2024-10-26 09:54:34 -07:00
Jason Penilla
ec1120ed10
Back to 0.1.0-SNAPSHOT
2024-10-24 11:48:08 -07:00
Jason Penilla
8040c7a264
0.1.0-beta.7
v0.1.0-beta.7
2024-10-24 11:40:46 -07:00
Jason Penilla
a9e36795e5
fabric: fix crash when fabric-lifecycle-events-v1 not present
2024-10-23 18:32:06 -07:00
Jason Penilla
a70073ae3e
Setup issue templates ( #53 )
...
* Setup issue templates
* try to change order
2024-10-22 09:21:13 -07:00
Jason Penilla
6724814c02
Apply Lithium overrides on NeoForge ( #57 )
...
* Apply Lithium overrides on NeoForge
closes #56
* Update readme
* Sort overrides
2024-10-22 09:20:40 -07:00
Jason Penilla
f32a08738e
Adjust min/max section optimizations ( #55 )
...
* Change min/max section optimisations
* Correctly init dimension type
We need to initialise the field as early as possible in the constructor
to avoid problems.
Also, do not cache min/max section in EntityLookup. Note that mods
that implement worlds with variable heights will not work still,
as the entity slices expect a fixed height.
* Cache calculated height values
---------
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com >
2024-10-17 18:02:22 -07:00
Jason Penilla
56e48ed069
Back to 0.1.0-SNAPSHOT
2024-10-15 13:04:47 -07:00
Jason Penilla
9da99576a6
0.1.0-beta.6
v0.1.0-beta.6
2024-10-15 12:56:32 -07:00
Jason Penilla
dfbe1bcf8b
Fix Mixin application failure in production
...
Work around https://github.com/FabricMC/tiny-remapper/issues/137
2024-10-15 12:45:22 -07:00
Jason Penilla
ae29196221
Back to 0.1.0-SNAPSHOT
2024-10-14 19:45:01 -07:00
Jason Penilla
f1eb61cc51
0.1.0-beta.5
v0.1.0-beta.5
2024-10-14 19:17:38 -07:00
Jason Penilla
58c933938f
fabric: Call ServerChunkEvents.CHUNK_LOAD/CHUNK_UNLOAD, add and call FabricHooks.ON_EXPLOSION event ( #52 )
...
fixes #16
related to #45
2024-10-14 19:06:58 -07:00
Jason Penilla
1dc3cb5f14
Improve LeafProfiler output formatting ( #28 )
...
make it readable
2024-10-14 18:03:04 -07:00
Jason Penilla
2acfc6a68e
Add missing require = 3 to util_threading_detector PalettedContainer constructor injection, and simplify fast_palette PalettedContainer constructor injection.
2024-10-02 10:54:52 -07:00
Jason Penilla
c22538c364
Back to 0.1.0-SNAPSHOT
2024-09-30 19:22:12 -07:00
Jason Penilla
e244c60375
0.1.0-beta.4
v0.1.0-beta.4
2024-09-30 19:10:12 -07:00
Jason Penilla
65253d5199
Re-fix dev-time conflict with lithium height overrides
...
See cfa80c44 and 2acd5cc2
2024-09-30 19:00:00 -07:00
Jason Penilla
6e82b034b7
Fix typo in previous commit
...
Also for some reason the issue resolved by cfa80c44 seems to be back...
2024-09-30 18:52:01 -07:00
Jason Penilla
a7cd78e63b
Disable lithium mixin.util.entity_movement_tracking mixins, see #33
2024-09-30 18:43:25 -07:00
Jason Penilla
05ba7066d9
Add NeoForge/Mojang names for redirects in NaturalSpawnerMixin
2024-09-30 10:17:28 -07:00
Spottedleaf
340ac4e8f5
Fix incorrect fluid pushing velocity
...
Forgot to re-assign the flow vector variable with the scaled
flow.
2024-09-30 04:39:05 -07:00
Spottedleaf
a4770aca2b
Fix performance regression in Entity#updateFluidHeightAndDoFluidPushing
...
The upper bounds from Vanilla are exclusive, but we were treating
them as inclusive which changes behavior and increases the number
of blocks read.
2024-09-30 04:39:05 -07:00
Spottedleaf
a8d4ce526b
Optimise block/chunk reading in Entity#updateFluidHeightAndDoFluidPushing
...
Like other block reading code, a lot of time gets spent retrieving
the chunk and retrieving the section which we can avoid.
2024-09-30 04:39:05 -07:00
Spottedleaf
2acd5cc213
Optimise Level#isOutsideBuildHeight
...
We can cache the min/max build height to avoid the indirection
required to compute them.
2024-09-30 04:39:05 -07:00
Spottedleaf
07dce0ffe6
Change ShapesMixin#or to perform unoptimised intermediate joins
...
We can delay the shape optimisation to the final operation, which
should provide a perform boost for merging many shapes.
2024-09-30 04:39:05 -07:00
Spottedleaf
c2e2f0b9f2
Optimise countEntries for low size SimpleBitStorage
...
We can use a simple array lookup table by palette id when the
number of palette entries is low. This eliminates the need for
the map lookup on each entry.
2024-09-30 04:39:05 -07:00
Spottedleaf
1374ea34ee
Replace ticking block coordinate set with ShortList
...
We can store a position (ranging from 0-4095) into a short,
so we can use ShortList to cut the memory usage in half.
2024-09-30 04:39:05 -07:00
Spottedleaf
fef4872a3a
Do not calculate block counts on the client
...
It appears that this call is very expensive. We instead substitute
an exact check with setting the special colliding blocks to whether
the palette initially contains a special colliding block, and after
on block updating by whether any special colliding block was set.
2024-09-30 04:39:04 -07:00