embeddedt
65ab37b819
Fix reobfuscation issue
2025-07-13 14:31:58 -04:00
embeddedt
873e3bd676
Fix race condition when mods create tags on different threads
2025-07-12 22:22:58 -04:00
embeddedt
6b37051980
Fix faster_ingredients bypassing defensive copy of ItemValue
...
Kudos to @nutant233 for noticing this
2025-07-04 18:42:39 -04:00
embeddedt
cf5c81f7e2
Hotfix: disable ingredient_item_deduplication by default
2025-07-03 08:08:03 -04:00
embeddedt
9d280f51df
Remove tterrag maven
2025-07-01 20:48:02 -04:00
embeddedt
f26ed86973
Disable smart ingredient sync with CraftTweaker installed
...
Related: #570
2025-06-16 19:49:46 -04:00
embeddedt
38f1370d59
Do not register smart ingredient sync channel if option is off
...
Related: #570
2025-06-16 19:21:25 -04:00
embeddedt
213e0ceb9a
Fix incorrect kick logic
2025-06-05 22:07:09 -04:00
embeddedt
7688fc2b16
Implement Java 17-compatible DFU cache blaster
2025-06-05 21:35:21 -04:00
embeddedt
20b3d8bffa
Do not apply optimization to subclasses of ItemValue
2025-06-05 18:08:19 -04:00
embeddedt
2e0ec6ae9e
Add ingredient item value ItemStack deduplication
...
Inspired by AllTheLeaks, but done slightly differently to hopefully
be compatible with more mods
2025-06-04 22:53:28 -04:00
embeddedt
a170f072ff
Invalidate memoization for non-category creative tabs when categories are rebuilt
2025-06-02 19:15:20 -04:00
embeddedt
e7542afd1c
Disable mixin.perf.faster_ingredients with VMP installed
...
Related: #565
2025-06-01 15:24:29 -04:00
embeddedt
71b444288b
Remove nbt_memory_usage
...
This will be replaced by more targeted optimizations towards the
most common allocators of duplicate keys. The current implementation
forces every key to be interned which may be redundant in many cases
(e.g. when constants are given to the compound tag)
2025-05-30 22:20:51 -04:00
embeddedt
94271b866b
Add world join profiling
2025-05-30 21:35:52 -04:00
embeddedt
6e591f5ace
Add more sysprops
2025-05-30 21:23:51 -04:00
embeddedt
4802988bbb
Add sysprop to allow using async profiler for launch profiling
2025-05-30 21:18:22 -04:00
embeddedt
292b80cf37
Fix missing bitmask when compressing smaller datums into long
2025-05-19 15:19:46 -04:00
embeddedt
5048e74c79
Do not bypass Ingredient.TagValue#getItems during server resource reload
...
This breaks KubeJS/CraftTweaker's workarounds for tags not being
available during RecipeManager#apply (even though they become available
right after)
Related: #555
2025-05-19 14:55:50 -04:00
embeddedt
c3086e5249
Remove defensive copy of model location collection in replaceAll
...
The defensive copy shouldn't be necessary, as the set is effectively
immutable anyways
2025-05-19 12:37:32 -04:00
embeddedt
bb658319cb
Try to use a more optimal Set implementation for filtering
2025-05-19 12:17:50 -04:00
embeddedt
14f1552ad7
Use Guava immutable list to avoid extra internal copying
2025-05-19 11:59:44 -04:00
embeddedt
61c8cfdca6
Slight tweaks to ModelLocationBuilder
2025-05-19 11:30:13 -04:00
embeddedt
af526b9113
Include ModernFix itself in time calculations for dynamic resources
2025-05-19 11:02:07 -04:00
embeddedt
6df33005a7
Fix copy-and-paste mistake in compact unihex logic
2025-05-19 10:24:13 -04:00
embeddedt
e9cb602ab7
Add some universe filters
2025-05-18 22:42:56 -04:00
embeddedt
a13587e139
Fix presizing of model location set & use more efficient string generation logic
2025-05-18 21:55:51 -04:00
embeddedt
6979b56d8c
Merge branch 'unihex' into 1.20
2025-05-18 21:06:09 -04:00
embeddedt
3a2edf7ddd
Attempt to reduce overhead of splitting same path string many times
2025-05-18 21:05:12 -04:00
embeddedt
a643170426
Implement more accurate fix for MC-183518
...
The game now sleeps precisely till the next tick, rather than still
waking up periodically
Co-authored-by: HaHaWTH <102713261+HaHaWTH@users.noreply.github.com>
2025-05-18 19:10:11 -04:00
embeddedt
4964cccff9
Ensure files in assets/ are not counted as namespaces
2025-05-18 15:36:12 -04:00
embeddedt
82535da861
Replace mixin.feature.disable_unihex_font with mixin.perf.compress_unihex_font
...
The font still takes up some memory, but less than before
2025-05-15 22:11:58 -04:00
embeddedt
f70fb212f7
Update KubeJS maven to fix build failure
2025-05-15 21:39:43 -04:00
embeddedt
588b56530e
Support clearing model registry in dev for testing purposes
2025-05-15 20:22:29 -04:00
embeddedt
3ad4e2478e
Optimize MultiVariant.resolveParents
2025-05-15 20:21:34 -04:00
embeddedt
c118675369
Fix concurrency issues in vanilla RegistryOps.memoizeLookup
2025-05-15 18:53:47 -04:00
embeddedt
8b0622ff5c
Log when model universe is restricted
2025-05-14 22:19:10 -04:00
embeddedt
900e5786b6
Pre-size the top level model location set to reduce rehashing
2025-05-09 22:17:36 -04:00
embeddedt
2535174e00
Implement advanced caching of ingredient item stacks using soft references
...
This gives the GC control over when to evict the cache, which combines
the benefits of removing the cache entirely with the speed of keeping it
2025-05-03 14:34:48 -04:00
embeddedt
7398b48345
Patch CoFH Core to not rely on Ingredient.itemStacks
2025-05-02 17:27:56 -04:00
embeddedt
eed320b055
Optimize some methods in Ingredient and remove itemStacks caching
2025-05-01 19:10:18 -04:00
embeddedt
01d2582c44
Sync tag ingredients directly if ModernFix is installed on both sides
2025-05-01 17:14:19 -04:00
embeddedt
536eb03b50
Trigger classloading of Items when deferring blockstate cache rebuild
2025-05-01 15:21:08 -04:00
embeddedt
1b37c9da66
Remove obsolete OBJLoader patch
2025-04-29 18:33:50 -04:00
embeddedt
e253833b68
Use CHM's built-in set instead of newSetFromMap
2025-04-29 18:26:20 -04:00
embeddedt
ae729bcd15
Enable use of FML's unused TracingPrintStream for tracking mod messages on System.out
...
We implement this ourselves because we need it on 1.20.1 anyway,
it will eventually be implemented upstream in NeoForge, at
which point this feature will be removed:
https://github.com/neoforged/FancyModLoader/issues/277
2025-04-29 11:18:21 -04:00
embeddedt
9be6134073
Remove obsolete resource pack code
2025-04-28 18:55:23 -04:00
embeddedt
59e3b83d74
Default to showing the whole model registry to mods
...
This should fix many silent incompatibilities that existed with the
original opt-in approach. To my knowledge, there are no remaining
popular mods on 1.20 that forcefully load all models in this event
(by iterating over entrySet and calling getValue unconditionally)
so doing this should be safe. Additional logging is also added
to provide quick insight into what mod(s) have the slowest handling
of this event.
2025-04-28 10:59:49 -04:00
embeddedt
4bdddf1051
Attempt to improve parity/reliability of dynamic_entity_renderers
2025-04-27 20:29:21 -04:00
embeddedt
211e404687
Implement a very primitive datapack function profiler
2025-04-27 19:38:23 -04:00