e01e5df - remove the broken gui cache
f04adf7 - fix wrong itemstack constructor in computer helper
0be5c15 - remove unused record class
b7f1829 - increase mod version
8224c0b - New Crowdin updates (#7922)
[ci skip]
e145b90 - Extend Paxels from AxeItem to allow Axe enchantments (#7903)
22123d9 - tweak some paxel code
a03e410 - projectE deprecation
296c1de - [no-cl] make gradle output the CF file urls after upload
c380ea5 - [no-cl] fix CF/MR changelogs
d64eb59 - Remove Upgrade stack limits and add to tooltip instead
ab3a567 - [no-cl] run datagen
3962655 - Fix matrix stats heading using the wrong lang key
817a645 - Allow teleporter frames & steel blocks to be wrench dismantled
5dde47f - render item decorations in side config gui
d3c2080 - simplify the side/transporter config tooltips
7888bb8 - Upgrade gradle to 8.4 and use JetBrainsRuntime as our toolchain specification so that we can take advantage of DCEVM
ad8e146 - fix personal storage inventory crafting with contents on servers
609b030 - add a faster blitNineSlicedSized copy which uses a single buffer and caching to significantly improve Mekanism GUIs
06e4304 - Don't add the inventory id to the stack on the client side for recipe output as it will be a different id than actually gets added from the server
6531aec - New Crowdin updates (#7876)
[ci skip]
022e458 - update projecte to 1.20 api
faac6da - re-add projecte datagen and run datagen
33b6795 - bump mod version
631cb34 - fix GuiUtils crash and increase mod version
96ade9e - Update example maven version in readme to a 1.20 build
be15dbc - slime ball from clay + biomass
fa92141 - slime ball from clay + biomass
c369fb7 - remove redundant, more expensive crafting recipe
ea6fff0 - Improve electric pump GUI fluid display
244b531 - Move slime recipes out of the mossy subdirectory
2fcaa0b - fix filled personal storage crashing in recipe upgrade data
5642733 - [no-cl] enable proper changelog calculation
96ae891 - bump version to 10.4.1
e0cb325 - Initial port to 1.20.1 and remove material filters as materials no longer really exist. This means filters will not be able to read from save
9ca6bbb - Sort our Creative Tabs properly and give each sub mod its own creative tab
7ed7523 - Fix element focusing not proxying to child elements causing things like the QIO frequency select text box to not work
dcf8209 - Improve some hovered checks to take into account of a window is blocking the mouse
7987628 - Remove some of the hacks relating to pose stacks we did to get things rendering previously and make gui element rendering more consistent by using relative positions in more spots
f42b01a - Fix focus not being set properly for text elements in gui windows
21e27da - Address some TODOs and fix resizing window not persisting gui element data
4e366f4 - Convert our radiation overlay rendering to an actual gui overlay
a1198b4 - Fix mode change overlay going away too quickly and slightly modernize the impl and add support for the text background accessibility option
e73680f - Replace various uses of SizeUtils#size with ItemStack#copyWithCount
a74b258 - Mark radiation as bypassing armor and adjust our datagen tag builder to better support datagen registries. Also move our hazmat armor tag up one level
7fa2366 - Fix crash from accidentally attempting to lookup a texture for null
34c6a14 - Allow for our gui_text color atlas to change button text color
5876a54 - Fix allJar building by adding support for merging atlases
253f889 - Update deps and switch off of using a custom forge build
f295c15 - Fix item decorator rendering for amount of chemical stored in the mekasuit
95bd553 - Fix using the wrong Explosion BlockInteraction in a couple places due to mojang changing what the value we used to use means
209f442 - Remove unnecessary unicode escapes
adb0777 - Cleanup CrT stack creation
023dfbe - Don't try to clear cache for configs with invalidation listeners if we are unloading
fed694b - Minor restructuring of datagen registration to remove capturing lambdas
38fa1b6 - Update forge and add loot table names back to our datagen
46894eb - Explicit typing of numbers in shaders as some GL implementations are picky in regards to implicit casting #7756
de28e37 - New Crowdin updates (#7802)
1cee4ad - Fix damage type lang keys
48d316d - Make laser damage apply exhaustion again
36e984f - Implement a couple newer methods in our JEI chemical helpers and make gui elements use optionals instead of nulls for easier chaining with JEI methods
0216c22 - Update deps and make use of a few changes exposed in forge and account for changes made in APIs of some deps that have now updated to 1.20
b562d65 - Remove FluidRenderMap as FluidStacks ignore amount in hashCode and equals
1ca4df0 - Perform an initial data sync when new trackers are added to the container so that if they are at the default cached value they actually get sync'd #7809
bf68f47 - Simplify damage type advancement deserialization and fix having broken syncing of first element in previous commit
53fdc37 - Remove unnecessary curios register type as it is already added natively by curios
fde43d6 - Remove DistExecutor and just use direct dist checks
f196444 - Fix CraftTweaker add recipe actions
a81fd23 - Fix WTHIT integration
edf105b - Cleanup getting the registry name of elements in a few cases when wrapping in CC
2f4daf0 - Move shield textures to shield atlas
b85c75a - Don't add bounding blocks to the creative tab
eebc273 - Fix creative tab search box textures, lapis lazuli shield texture, and make the creative tabs properly respect our gui_text for the title
5e1104e - Remove some unused assets, so they don't get stitched to an atlas and remove some unneeded entries from the atlas files
6d40bb5 - Better match changes to damage types and make the inhalation purification unit/scuba mask not prevent thorns or sonic boom damage
578aef6 - Rework mekanism tools gear on mob spawn configs and functionality to more closely match vanilla behavior. This should be a noticeable decrease in quantity of mekanism armor spawned on mobs
04d67f7 - Add items to the appropriate and logical vanilla creative tabs as well
653261c - Account for data pack changes in 1.19.3 and 1.19.4
01e394b - Replace color overlay render logic with using GuiGraphics.fill and the guiOverlay render type
b4bc5a8 - Replace GuiUtils#drawSprite with the corresponding GuiGraphics method
4cc1570 - Optimize imports to remove any unused imports that cropped up during the initial port
7327726 - Fix some parts of our JEI overlays being rendered in the wrong position
3c0b01c - Fix some of our hover overlay draws not rendering as overlays
dc7a212 - Convert more direct RenderSystem calls to GuiGraphics calls where appropriate
105f1b6 - Add radial menu for blasting unit (#7812)
02ac97e - Updated GUI Icons
0608d72 - Fix blasting unit radial menu not being properly colored
6f22ba2 - Revised Heat Icon
eb3db2e - Bump min forge version to 47.0.45 to remove the need for manually specifying as much information for the creative tab sort ordering
0e61e83 - Add our own tag that inherits the is_overworld biome tag to make it easier for pack devs to configure which biomes our ores can spawn in without having to abuse the overworld tag or change all our ore features
f6cbda3 - Remove plastic from building blocks creative tab as vanilla does not duplicate blocks from colored to building
4eb4c15 - Cache the placed features that are used in retrogen
665549b - Factory Model & Texture Overhaul
WIP: Active textures not complete.
1f3d158 - Updated Factory Models
Fixed missing textures and altered the port texture placement. Also removed BBModel files.
99022d7 - Updated Crushing Factory
Fixed missing resource location.
e536fac - Update crowdin.yml
add ry_ua mapping
19e8e92 - Add compat recipes, tags, and similar for vanilla 1.20 features
4f63228 - Ensure entity is not null before checking item overrides for the HDPE elytra #7815
84b118f - Fix some blocks not being properly fluid loggable and update model syntax to properly mark things as emissive with the change in formatting forge did
d5d4069 - Switch to using forge's item layer model loader for purposes of tinting the portable qio dashboard's led
da84b73 - Set block shapes for factories
36318ea - Update digital_miner_screen_cmd.png
ae5499b - Updated Crushing Factory
f138290 - Update crushing factory block shape
055f21a - Rework factory models to make leds be lit and deduplicate some data between tiers
06b104d - Fix minor z-fighting for the infusing factory ports
4070f22 - Update crowdin.yml
add serbian (latin) mapping
0cd01d2 - Create gradle-publish.yml
27d97f1 - Remove unused factory textures so that they don't get stitched to the atlas
90a068a - Re-enable configuration for changing mekasuit damage absorb ratios
c6a1605 - Remove some unneeded render calls and fix a few bugs in rendering guis:
- Unsupported upgrades not showing as faded in the upgrade window
- GuiGraphs not checking mouse hover position properly
b8e966f - Make GuiGraphs sync their history when the screen size changes
f616625 - Apply color of radial selector directly to the buffer instead of setting it via the render system
8a0cf61 - Updated Factory Faces
6ce2263 - Allow farming unit to target blocks under things like tall grass again
1d5a75c - Minor cleanup to transmitter placement logic and list other types of chemicals in pressurized tube tooltip
090464f - Fix gui window blur rendering not rendering over items
5d77f5b - Remove no longer needed z shift
4f2dd46 - Remove static imports in BlockShapes
eb1e20a - update build github action
b0f9c22 - update build github action
d916f24 - update gradle actions task and add outputChangelog task
2708480 - Fix scrollable elements not behaving properly when windows are moved or the game is resized
cf04743 - Replace drawing of various objects with vanilla's blitNineSliced logic from GuiGraphics
68c05e6 - Remove various no longer necessary clear color calls
e4bf927 - Protect against potential null pointers by setting the fake player's server level to the overworld when not in use
e99a0ea - Update deps and bump min forge version to 47.1.1 to make use of blitNineSliced overloads
d3227de - Fix docs on a few FloatingLong methods being backwards in the description (in the return clause they were fine)
b7e1b33 - Only expose certain tool actions if the tool has enough power to perform said action
669802d - Point codeql at the 1.20 branch
fce28a4 - Adjust active particle effect for factories
e8826e8 - add changelog to artifacts upload
77934d3 - Bump min CrT version to ensure we can properly process damage done with it and also re-enable farmer's delight in datagen. Also adjusted a few sawing recipes
eb4af5f - Address some codeql inspections/warnings
ea4cfff - Make the nucleosynthesizing recipe cache lookup monitor have less unnecessary copies and override super methods directly
35a3584 - Cache list of supported energy capabilities to avoid querying if various conversions are enabled each time we get the enabled energy caps
597ecc3 - Directly use mojang's model baker impl instead of having a slightly modified copy of it
da7e376 - Improve map colors for some of our blocks
1c49e46 - Re-enable assembling compat with RecipeStages
fa05d67 - add verify option to grab runs that are visible in current log
d835b9b - add github release on build
b759b44 - adjust tag name to match the filename version
8de6fac - pull in github action
93145a2 - move props action above setup java as workaround, fix paths
be9e86b - relative paths everywhere
d7b96f4 - fix gradle props step references
3040ccc - switch to run_number and add missing env to build step
7fcdd51 - set tag to current commit not default branch
3f31b54 - re-enable publishing step
1e1c4ec - Ensure entity is not null before checking item overrides for the HDPE elytra #7815
cefeaae - Fix null pointer introduced by https://github.com/mekanism/Mekanism/commit/d737f103892e4eea61b1196ff21deda426407a56 (#7819)
27b0084 - Make our status overlay rendering respect left and right height of gui overlays
8778b05 - New Crowdin updates (#7807)
[ci skip]
9527f9e - Merge remote-tracking branch 'origin/1.19.x' into release/1.19.x
b109b72 - explicitly set token to env variable
71e9690 - fix maven upload
652bf1a - New Crowdin updates (#7808)
[ci skip]
0a38880 - Rework how multiblocks persist their inventory to behave more consistently. This is a breaking change in how things are saved and means any old multiblock contents will be lost/voided when upgrading to this. Additionally, this fixes hohlraum disappearing when the fusion reactor controller is broken and replaced #7594
e441aac - Breaking change, ensure mekanism's modid is prepended to our world save datas to ensure uniqueness. To transfer old frequency data, radiation, or qio data you will need to rename the data files to have "mekanism_" in front of them
79f4390 - Don't bother reading or writing substance types to the MultiblockCache when it has zero containers of that type
19a30fb - Rename some helper unchecked cast methods from getThis to self
279ab00 - Add support for creating chemicals via JsonThings (https://github.com/mekanism/Mekanism-Feature-Requests/issues/568)
cea7e49 - Fix a few positioning errors with gui windows
8554cc4 - Rewrite how custom robit skins are registered and make them a datapack registry so that they can be registered via datapacks rather than requiring a mod or CraftTweaker
04268b5 - Make some breaking changes to how various things in the API are accessed in order to take advantage of service loaders
8153527 - Update gradle to 8.2.1 and switch from using ForgeGradle and Forge to using NeoGradle and NeoForge
0fda5b4 - Use clearer constant names for left and right click handling
2ac7b48 - minor unchecked cast fix
5583b59 - Rename chemical builder method for tinting from color to tint, and allow JsonThings integration to support more syntax for representing colors
f491002 - Fix querying the block reach of players in creative
d6420cb - Exit early in places when there are no slots in a handler and remove redundant ItemHandler#isItemValid checks
c6c833f - Added fill/empty GUI icons
ae5d84a - Split Formulaic Assemblicator Fill/Empty Grid button into strictly specifying whether it is fill or empty based on which one it would do
bef5a38 - Don't allow logic adapters to power neighboring adapters #7641 and don't output a signal out the back of redstone adapters
7e83fce - Fix redstone adapter model not being lit and fix easter egg screens for digital miner
c5aa075 - Don't allow enchanting electric bows with flame #7832 and return that it is flame enchanted without actually making it enchanted
9fdb089 - Extract corner coloring of energy cube models to their own textures
6fc8754 - Make in code rendering of tiers use their own color map (https://github.com/mekanism/Mekanism-Feature-Requests/issues/367)
0071ff4 - Implement some epsilon related checks for heat so that fusion reactors don't occasionally just get marked as dirty all the time when inactive
8b207ba - List both Forge and NeoForge for now via CurseForgeGradle and Minotaur
a60cbbf - Fix slots being highlighted after clicking
2a262b1 - Fix QIO Crafting Window not matching special recipes #7780
7b52898 - fix all jar to do its merging at execution time instead of configuration time, make clean task clean everything but fg_cache
77f3060 - Deduplicate a little bit of bin extract recipe code and fix various voiding related bugs in the BinInsertRecipe (parts of #7646). Temporarily disable stacked input handling for bin insertions
4c4b760 - Updated dust item textures
37d1b27 - Updated alloy item textures
16cc31d - Updated control circuit item textures
714a949 - Updated enriched item textures
f9d6609 - Updated ingot and nugget item textures
e2a763a - Updated tier installer item textures
0e52f63 - Updated all of the other item textures...
Lots of these are still WIP so expect additional changes in the future.
390694c - Increased brightness of infuse type base texture
648009b - Updated cardboard box block model and textures
72c0cf0 - Fix HDPE elytra rendering in JEI using the broken variant
a3d8137 - Fix chemicals rendering without blend in JEI's ingredient list
61782bd - Added the missing cardboard box side texture
006dc5d - Fix cardboard boxes never using the empty state when placed
9170bd7 - Added lit redstone torch texture
c96fd7f - Updated dosimeter HUD icon texture
19a9100 - Revised the infused alloy item texture
4dc87eb - Revised lit redstone torch texture
fcfa710 - Remove the need for in code model variant for the QIO redstone adapter and fix shading and brightness on it
92379bc - New Crowdin updates (#7822)
2680a3a - Create a helper quad transformation for adjusting ambient occlusion and shading of quads
b1286ef - Updated energy cube core texture
d3694cf - Updated radioactive waste barrel textures and simplified the model
d7fc135 - Remove builtin energy and fluid rendering in WTHIT for Mekanism blocks as we handle it ourselves #7837
a961bcb - Persist misc data when baking and unbaking quads, pass the default state into rendering ISTERs, and remove unneeded manual end batch call for rendering balloons
dc3f155 - Updated fluid tank model and textures
9f13598 - Updated chemical tank textures
7982f01 - Remove HashedFluid as it does not serve any specific use anymore
8b3d265 - Update deps
6821999 - Fix transmitters not saving their shares properly when a chunk enters an in between state #7741
418bd9b - Fix some gaps in the fluid tank model
f41135d - remove au/gb english files from Crowdin
31314be - add datagen for australian/british english
2c4e968 - Generate computer methods at compile time with an annotation processor (#7829)
5cc8b14 - Slightly cleanup the au and gb language provider and ensure it is consistent regardless of who runs it
1e7da90 - Updated bin textures
d724110 - Updated chemical tank textures
086d31d - Updated chargepad model and textures
a8500cd - Updated energy cube textures
7a11489 - Updated transmitters (WIP)
Things are now more consistent as far as pixel density goes. Still need to make the more identifiable when in a straight line.
e063b30 - Updated ore dict...'thing' textures
6d5b782 - Model additions and changes
fc941c5 - Move CTM assets and update textures of various blocks
Includes new textures
ea4ee6d - Updated various block textures
edd3e2a - Removed alt textures
7e8affc - Updated item textures!
Some of these are still a heavy WIP!
8e08f02 - Model updates
2445aac - Remove unneeded override and fix what executor the robit sprite provider uses
77e356a - Fix formatting of some model jsons that got modified and revert changes to fluid tank base back to the fixed versions
23e4743 - Update chargepad shape
87168d8 - Update bin contents rendering to fit properly on the new model
e899764 - Update thermal_evaporation_block.json
2080ff9 - Make carbon's tint darker, so it is a bit easier to see in GUIs
5e53089 - unbreak the Cache writing
(cherry picked from commit 2871071c0117ffe8a92514b9592fe7ebfd4845ce)
694f79f - update caches
(cherry picked from commit cd140171011e21edaaaa079d0c526f99d79c09ac)
5e0266d - prevent the fake provider from writing, which only changes the timestamp
2d80b09 - AT ProviderCache so it's a little easier to understand PersistingDisabledProvidersProvider
694500f - enable DCEVM capabilities if a JBR environment is detected
ec852b6 - Move Personal Storage Item Inventory to World Saved Data (#7867)
- Instead of being on the itemstack, the inv is stored in world saved data, one file per owner uuid
- Stack only has the Security/owner info and an inv UUID
- Refactors ISustainedInventory
a little to avoid accidental misuse and slightly redundant varargs
- Removed some no longer needed fallbacks from loot generation
- Added ability for Inventory Attribute to specify a custom loot generation
- Old saved item inventories will be converted when they're opened or placed
- Item GUIs will now ensure that the hand that opened it still contains the item (#7855 though the dupe is resolved by the move to saved data)
53d62f2 - Pick alt variant of electrolytic core and remove some unused textures
aec9b46 - Updated and fixed Digital Miner model and textures
e2c5e3d - Computer methods help (#7857)
add help methods and documentation to computer methods
c4e0fef - Update deps and integrate properly with ilikewood for 1.20
85fe52b - update yamlops
89b23f6 - add parameters compiler option and re-run datagen
41ff9e0 - Remove redundant zero angle transforms and slightly adjust digital miner model and block shape
ac5cace - add parchment repo so that mappings can download when not mirrored
d4f8468 - replace PacketFlyingSync with vanilla onUpdateAbilities
aadef0a - gray->grey in non american english
32a0d7c - minor grammar fixes
59bbb36 - couple more americanisms
ebab104 - run datagen
a365ae0 - fix accidental removal of boolean inversion (#7858)
18f53e1 - Create base_bottom.png
For the chargepad, me thinks!
337093e - COLORS!
569f242 - COLORS! Again.
6894f2b - Update default coloring in BaseTier to accurately match the new colors for the tiers and use that color for the text as well
d83cdc9 - Update name of tiered blocks in block form to have the name be colored as well
99aee03 - Add missing since declaration and update diversion transporter MapColor
0ecf620 - Fix a couple models having missing textures
4d83c47 - change slightly obscure Tractor Beam reference
e5fac01 - Fully -> Completely
0c62ba5 - tweak some Advancement names/descriptions
25cdf0e - Rerun datagen
6bd1ace - Remove improper apostrophe
5530acc - Allow force extracting osmium from compressors #7861
c618ab0 - Updated transmitter textures to have a closer pixel density to world blocks
Includes opaque versions!
8ed6bb1 - Remove a couple unused textures and fix coloring for opaque transmitters
4acd100 - Fix not rendering diversion transporter overlay for opaque transmitters
f306a6e - Don't limit mipmapping
bbb6bd3 - Finish moving ctm textures so that they only get stitched with a ctm mod is present
cf5f8cc - Optimize textures
4fbb870 - Fix thermal evaporation controller active model
e35cfe7 - Revert raw lead item texture
35fd5b2 - Allow blocking sonic boom at a 75% reduction ratio #7872
9b0de99 - Added basic tier transmitter icons for item overlay
777e610 - add preview of what block is on which side in the side config guis
36b1972 - Update energy tablet texture (thanks rid)
abd618c - Make transmitter item models be cubes and add overlays to make it easier to tell small transmitters apart at a glance in GUIs
6fe0955 - New Crowdin updates (#7838)
ddc977d - Improve fusion reactor core rendering to not be at as extreme a speed
c0f9831 - force wrenches that don't return true in doesSneakBypassUse to still call a Mek block's onUse to enable dismantling
f5ea149 - Merge right click block events
cf263df - add no-reequip overrides to mekasuit armor and allow energised items to reequip when the slot changes
3ec1b55 - make logistical sorter only click at most every 5 seconds with randomness up to 15 seconds
1901475 - reduce volume of sorter sound event
fc9287c - obey sounds being disabled
a65271d - Skip firing sound event for sorter if fully muffled
d181979 - Improve reequip animation check for missed overrides
5743202 - Lower teleporter's light level so the emissive quads look better
0851023 - Glass to silica glass in recipes
8dfe721 - fix side buttons to get subblock hit vector correct-ish. Tested with AE2
b7bdf11 - Move various messages to the status bar
c1770e5 - Allow radioactive substances in rotary condensentrators if a recipe is added (https://github.com/mekanism/Mekanism-Feature-Requests/issues/583)
7cdb613 - Enable mass bin insert recipe support when FastWorkbench is installed as it fixes an event not firing on shift clicking
0b728eb - Updated teleporter and frame textures with new LED overlay
b92b6c2 - Remove unused textures
c12764f - New Crowdin updates (#7874)
3a80c61 - Bump version to 10.4.0
6c1b67f - Update deps and re-enable jei tweaker integration
6e78312 - Add "raw_materials" to default config of allowed oredictionificator filters (#7737)
f46383f - Adjust storage recipes to support targeted typing to avoid conflicts with other mods doing the same and allow for users to better pick the type of recipe they want https://github.com/mekanism/Mekanism-Feature-Requests/issues/525
4fbf99f - Improve how we declare repos for dependencies to make use of new FG features and gradle's exclusiveContent filtering
3ad2e3d - Adjust to deprecated changes to Modrinth's Minotaur plugin
2b53b79 - Bump min forge version to 43.2.8 and rotate the QE's core using model transforms instead of using a custom model
dbb8087 - Add precision sawmill compat recipes for Farmer's Delight meat cutting recipes
3ff3a27 - Fire an event when a player attempts to teleport using the Meka-Tool's Teleportation Unit https://github.com/mekanism/Mekanism-Feature-Requests/issues/517
62de8d5 - Make mB of Heavy Water per Water pumped configurable https://github.com/mekanism/Mekanism-Feature-Requests/issues/515
d14a10c - Fix not comparing selected output for oredictionificator filters https://github.com/mekanism/Mekanism/issues/7757
83cd145 - Add support for quick moving filters to the top or bottom of the list https://github.com/mekanism/Mekanism-Feature-Requests/issues/516
b0b9bec - Fix a hash collision between item and material filters causing some filter list changes to not be synced to client properly
0c64b6f - Partially factor in old fog color into vision enhancement fog color and also better take into account the existing fog when calculating distance new fog distance. This means for most things (like lava, powdered snow, water, and darkness/blindness) it no longer completely negates the effect
4f677d0 - Improve lighting of items travelling in transporters to respect block light
10bebd5 - Slightly increase light levels of heaters and a few generators so that nearby ice melts #7659
91ae6a2 - Improve click handling of gui elements:
- Unify right click handling by overriding how mouseClicked functions so that it passes the button used to onClick methods
- Made our buttons require always having a left click action and more consistently pass handling via it and hover handling rather than overriding the corresponding methods
- Allow for right-clicking: redstone control, laser amplifier, container edit mode, and security tabs to go to the previous option instead of having to cycle through via left-clicking a bunch
- Improve how we handle playing click and beep sounds and make enabling/disabling a filter use a beep
- Make use of GuiSlot's click handling in more places such as in filters to avoid having to have numerous overrides
- Use already calculated slot under mouse in places rather than iterating all slots (configurator slot hovering and dictionary shift clicking)
- Fix configurator slot hovering tooltip clipping improperly with gui windows
25f57f0 - Try to get the carried item directly from the screen's backing menu before falling back to getting it from the player's current menu
f92b48a - Make hud keybinding persist hud render state through game restarts #7765
2f242ba - Fix not validating if a filter is enabled when adding to enabled filters while loading from NBT #7769
a14d127 - Fix Digital Miner not properly collecting drops for things like double tall flowers #7762. This is done by special casing the vanilla blocks to only target the state that has drops (providing a more accurate to mine number in the GUI) and by listening to any new drops during breaking to ensure modded blocks also get properly handled. This has a side effect of also collecting chest contents when a chest is broken and collecting things like buttons that are on a block that was mined. Additionally, made the following small improvements:
- Improved insertion accuracy into the miner and other machines by first targeting slots with matching items instead of inserting into first empty
- Pass the fake player when calculating laser drops
- Collect indirect drops for the laser tractor beam as well, and also improve drop location of items that don't fit to better represent having been pulled
ce6841f - Prevent rendering from RenderTickEvent if the local game mode is null to avoid a race condition caused by querying configs after configs have unloaded due to the world continuing to render until it is done shutting down
03ce834 - Fix Nutritional Paste saturation multiplying by consumed amount twice (#7783)
c2c05ac - Add better support for DarkModeEverywhere 1.1.2+ by blacklisting some of our draw calls from it that cause things to render improperly
0bd0331 - Convert various maps and sets to being reference based implementations where appropriate
d737f10 - Allow storing radioactive substances and persisting them when radiation is disabled https://github.com/mekanism/Mekanism-Feature-Requests/issues/552
e8c7e31 - Update deps including updating to gradle 8.1.1 and ForgeGradle 6, and switching from CurseGradle to CurseForgeGradle
ce75d7c - Make interacting with chemical attributes slightly easier and add in better validation handling to ensure things that should have the attributes actually do
e74e598 - Cleanup some internals relating to our block attributes
6f55589 - Only speed up potion effects that can be cured with milk, and also add a mekanism:speed_up_blacklist mob effect tag blacklist to allow preventing specific effects from being sped up (https://github.com/mekanism/Mekanism-Feature-Requests/issues/554)
aab1965 - Fix a few issues in our GUIs relating to "oversized" stacks #7795
c2bfbd4 - Fix Fusion Reactor Logic Adapter Insufficient Fuel Mode not working when the injection rate is zero or when D-T Fuel is being fed directly into the reactor (#7793)
993a26a - Fix exposing the heat cap for conductors that are disabled with redstone (#7777). Also extend this fix to mechanical pipes, pressurized tubes, and universal cables even though they already just NO-OPd functionality
3fba9ac - Improve readability of some upgrade result implementations
eedad76 - Fix configurator empty mode ignoring stack size (#7798) and also only allow emptying creative bins if the player is in creative
17117eb - Prevent moving buffered transmitters due to dupe bugs when the network is not full
45e741b - Ignore null tags for data packets as at some point vanilla started allowing the tag to be null there
07cbcab - New Crowdin updates (#7735)
e03758f - Bump version to 10.3.9
46894eb - Explicit typing of numbers in shaders as some GL implementations are picky in regards to implicit casting #7756
de28e37 - New Crowdin updates (#7802)
3f31b54 - re-enable publishing step
1e1c4ec - Ensure entity is not null before checking item overrides for the HDPE elytra #7815
cefeaae - Fix null pointer introduced by https://github.com/mekanism/Mekanism/commit/d737f103892e4eea61b1196ff21deda426407a56 (#7819)
8778b05 - New Crowdin updates (#7807)
[ci skip]
9527f9e - Merge remote-tracking branch 'origin/1.19.x' into release/1.19.x
b109b72 - explicitly set token to env variable
71e9690 - fix maven upload
ca51923 - Fix digital miner crashing when trying to chunk load and mine in the chunk it is in
d7cba0f - Fix evaporation plant on the client not showing content in the input tank due to not knowing the height of the plant
dc55547 - Update CodeQL to include a timeout (#7720)
8111f1c - Fix the formulaic assemblicator's inventory flickering at times due to stock control organization causing more organizations to occur
1e8ddfe - Fix mode key being off by default on all installed units instead of just off by default for the elytra unit
86cfdbf - Fix being able to charge laser amplifiers and tractor beams in energy storage devices
2043134 - Fix fission computer setBurnRate method not giving clean error messages #7725
1940cc8 - Fix our generic get name helper for unknown registry type objects, and expose some methods to computers for the seismic vibrator to get information about vibrated chunks https://github.com/mekanism/Mekanism-Feature-Requests/issues/507
82fb896 - Wait until after the texture atlas has been fully stitched to clear our cached models
6742a67 - New Crowdin updates (#7724)
ee5707f - Bump version to 10.3.8
e27e3cf - Add CodeQL workflow for GitHub code scanning (#7678)
6b4d4ec - Update deps and bump min forge version to 43.1.61. Also perform a bit of minor cleanup to build files
a0d28ba - Address various IntelliJ inspections
10a4825 - Minor javadoc formatting fixes and fix a couple missing units in the radiation manager javadocs
5405bdc - Minor fixes relating to CodeQL's inspections
1f8e68e - Rerun code formatter
4d04f81 - Fix being able to extract lava from heat generators, and bio-fuel from bio generators with pipes
e0a2df2 - Make plastic glow blocks emissive (causes them to look very slightly brighter)
20a3430 - Fix copy paste error causing AE2 decoration compat recipes to conflict #7674
4a92a18 - Expose a few more primitive based util methods to FloatingLong and in place flooring/ceiling. Also reduce unnecessary object creation where possible in FloatingLong method implementation
50908e5 - Restructure the radiation command code a bit and add two subcommands one to add radiation to entities (addEntity) and one to partially reduce an entity's radiation level (reduce) https://github.com/mekanism/Mekanism-Feature-Requests/issues/488
4036fae - Enable left or right clicking the center dimensional stabilizer location to enable/disable all chunks at a target radius https://github.com/mekanism/Mekanism-Feature-Requests/issues/472
1fa222c - Properly hide builtin Jade energy bar for newer versions of Jade and improve checks related to showing tank contents for TOP
ec799d3 - Add support for disabling all types of filters and also clean up a bit of code related to interacting with the backing filter list (should provide some minor performance boosts in various cases)
1a89fb3 - Don't expose caps on various items if configs aren't loaded yet (pre-joining world) and use defaults for fillItemCategory config queries before the world is loaded #7670. Also switch creative energy cube default side config to setting nbt in the creative tab instead of changing on place, and improve how the logistical sorter calculates its initial facing to happen before actual placing instead of after
c9d8462 - Move EthyleneBurnTime config out of general mekanism config to generators config and split it into two configs ethyleneBurnTicks and ethyleneDensityMultiplier https://github.com/mekanism/Mekanism-Feature-Requests/issues/491
c2ea3e4 - Fix a few different machines showing that they are using energy when they are not actively doing so #7684. Also fix electric pumps not using energy as often as they are meant to
25459b3 - Expose a way to iterate internal stacks of a QIO Frequency to the API to allow for slightly better performance in some use cases
f575c89 - Fix a few bugs when transferring items into or out of the QIO dashboard when multiple packets get sent before the response is received #7647. Also improves transferring performance slightly
d229017 - Reduce processing of changes to QIO items when no player is viewing a dashboard
dc8bc7c - Update deps and add support for properly handling recipe stages' staged recipes in the QIO crafting windows. Also fix output of QIO crafting windows showing tooltip when a recipe is not accessible by a player
c2715d1 - Make the digital miner mine blocks in a chunk in reverse order so that it mines from top to bottom #7657 (makes it better handle blocks like gravel and sand)
8dc9dfd - Only apply the swim boost from the hydrostatic repulsor unit and use energy if the player is in any fluid. Also fix it providing a speed boost when there is no energy present
75a689f - Improve performance of multiblock ejection calculations by caching the side pieces auto eject to
fb120bc - Adjust a couple lang entries for clarity #7691 #7654
eeb17e7 - Fix edge case that could lead to forced retrogen causing crashes #7699
fb9f7bc - Improve performance of frequency component tick and performance of teleporter frame searching and teleportation validation. Also fix changing QIO drive array frequencies not properly supporting changing back to the original frequency
f011e5f - Fix not transferring security mode or owner in recipes
ffe6eb2 - Update jei and switch to new maven for it
e799c70 - Fix validation predicate being overly strict for rotary condensentrator fluid slots #7664
d2ffef3 - Update number of blades in a turbine if someone does unsupported things and removes or adds blades while the turbine is formed #7650
c0c34e9 - Fix respawning setting entity radiation to an invalid value #7680
110877f - Increase the max number of digits that can be typed in the fission reactor rate to ensure there is always room to include two decimal places of precision #7633
0b40f2d - Create a tag to determine what items are capable of having the mekasuit hud display. Replace alignHUDLeft client config with a reverseHUD config that also makes the MekaSuit compass and module icons switch sides as well to prevent overlapping.
2a93818 - Add configs for most of the tank capacities' in various multiblocks
aef7757 - Allow enabling/disabling the elytra unit with the mode switch key https://github.com/mekanism/Mekanism-Feature-Requests/issues/497
- Mode switch for elytra disabled by default (must be enabled in module tweaker)
- Does not support having the jetpack or grav unit support the mode switch key at the same time (though sneaking when flying with the elytra unit still works to exit flight without disabling the unit)
971f381 - Expose tank capacity for heat generator, bio generator, and gas-burning generator to the config. Also moved the bio generation config one level deeper, so it will need to be set again
5395775 - Address some CodeQL inspections
7db2626 - Fix various mek related things rendering through blindness and darkness effects
d5106ca - Expose a simple insert only IItemHandler capability on logistical transporters https://github.com/mekanism/Mekanism-Feature-Requests/issues/444
Note: If the side is manually set to none or push the capability will not be exposed
2966990 - Disable EU energy display at all times as we don't actually have IC2 integration setup because of it not being ported yet
4a6fc7d - Allow bins and the digital miner to auto eject to colored transporters by using that transporter's color
980fa94 - Work around ZC not being able to handle expansion based casts in optionals causing some of our CrT example scripts to fail #7714. Also move our example scripts into a mekanism subfolder for better organization
d67d714 - New Crowdin updates (#7653)
c8d9d80 - Bump version to 10.3.6
c613f1a - Update to support CrT 1.19 #7638, add back the now removed registry name helpers to our exposed CrT objects, and slightly adjust the path of a few recipe managers. Also fix a couple example scripts using a broader type when showing the method signature
9a1c155 - Update deps and bump min forge version to 43.1.43
b39ee22 - Fix Atomic Disassembler and Meka-Tool not taking attack speed into account #7643 and also expose their attack speeds to the config
99976ec - New Crowdin updates (#7632)
6093851 - Bump version to 10.3.5
9d03a8a - Don't merge multiblock caches if there is only one found cache #7601. Also address long standing todo related to dropping items that failed to merge and fix a couple issues with reject calculation
061a1d2 - Make lasers (including tractor beams) ignite TNT based blocks rather than breaking them https://github.com/mekanism/Mekanism-Feature-Requests/issues/441
7469aa8 - Improve performance of how we render cuboids in BERs for things like contents:
- Skip rendering faces that can't ever be visible by how the camera is positioned (still doesn't have any checks related to blocks in the world)
- When only rendering one face (or two parallel faces), short circuit the number of attempts it makes to draw things inbetween
- Only calculate view adjusted normals once
- Mark some faces of models that are never visible to not render (such as the bottom face or the three inner side faces of the bio generator)
- Make valve's only render to the fluid level instead of rendering all the way to the bottom regardless of fluid level
- Slightly improve bounds on fluid tank's content model so there are fewer gaps
- Improve bounds on mechanical pipe contents models and add a nicer model for partially filled vertical pipes
9ba1ebf - Simplify the code behind transforming and properly lighting the Robit's skin select window
12a76f5 - Switch some uses of packing/unpacking color over to using mojang's FastColor.ARGB32 and switch some of our vertex color calls over to using ints rather than floats to reduce a couple minor extra calculations that were taking place
2c15aee - Fix accidentally using the wrong color for the selection highlights in the last commit
670c8de - Remove some unneeded entries from various model files
82c9af5 - Ensure stock control map is initialized from the start for the formulaic assemblicator so if another tile ticks and inserts before the assemblicator first ticks, then it will respect the slot restrictions #7604
513a98a - Improve a lot of our json based models:
- Remove redundant rotations
- Remove redundant models and reference vanilla types where appropriate
- Remove some faces that never can be displayed and mark others as being able to be culled when a side of the block is covered
- Switched most of our port rendering on machines to being layered and using cutout to reduce z-fighting/texture glitches and allow for all the ports to properly appear as fullbright quads
- Made the industrial alarm's inactive model complete and use the same model for the item variant rather than using an ISBER
- Slightly simplify a few voxel shapes
d3f903a - Fix a few minor visual glitches from the previous commit related to cutout and seams on the ports, and also transfer a few missed ports
f5e8574 - Minor improvements to the drive array baked model and how uncullable faces are added
a8cd305 - Cull possible faces for fluidic plenisher and compact electrolytic separator model and 16xify it
4542220 - Fix copy paste errors causing a couple sides to cull under the wrong conditions
1bc70d4 - Converted Chemical Dissolution Chamber to new JSON format
c9cd7e5 - Added display settings for Chemical Dissolution Chamber model
9e94f10 - Converted Fluidic Plenisher model to new JSON format
1a373b4 - Changed CDC model particle texture
db386fb - Converted Rotary Condensentrator to new JSON format
f43651a - Converted Seismic Vibrator to new JSON format
c3290a6 - Removed unused textures from old models
1e95878 - Converted Solar Neutron Activator to new JSON format
Also removed old texture asset
ac80b4c - Minor Seismic Vibrator texture changes
5b9b756 - Converted Quantum Entangloporter to new JSON format
5d15290 - Minor Quantum Entangloporter texture update
8268adc - Added Laser Texture
c6d07f3 - Convert Energy Cubes to using a custom baked model and model data for the sides rather than using a BER (this improves performance a fair bit). Also switched rendering the cube part of the energy cube item and the tank portion of the fluid tank item over to rendering the baked model around the dynamic part instead of having a duplicate code variant for them. Also made a minor memory improvement by only storing a new instance of a transformed baked quad if the transformation actually occurs
e371d4f - Work on hooking up the CDC and SNA models that got converted to baked models and fix/improve some misc model related stuff
0e08423 - Simplify liquifier item model
72e2893 - Fix some z-fighting in the rotary condensentrator model due to 0 width uvs
87b47f6 - Hook up new seismic vibrator model
7740418 - Slightly simplify some model files
4de47dc - Restructure how transmitter baked models cache their baked quads to drastically reduce the max memory usage
6d18f0f - Update deps and bump min forge version to 43.1.24 and ensure ambient occlusion data is not lost when transforming quads
2101d4f - Fix calculating uv shift transform the wrong way causing lit energy cube leds to display strangely, also disable shade on various leds to make them look more like bulbs
1f1a7fa - WIP on optimizing QE model (removed unused faces, applied cull to various faces, and also apply emissivity to led ports
02ee558 - Hook up quantum entangloporter model and remove the large ports from the new model for the time being. Also removed the pipe from the new fluidic plenisher model for now (both of these may come back eventually)
c048515 - Fix unboxing of chests that were double chests not updating the state properly and becoming a single chest
e9f25fd - Fix a handful of issues related to energy conversions:
- Fixed potential loss or creation or power at very small (sub 1 FE) values
- Changed conversion rate configs to only allow one number that then is used as an inverse for converting the other direction rather than allowing potentially conflicting numbers. Also clamped these values to being between 0.0001, 10,000 to ensure they can be converted both directions
- Fix a couple minor issues in FloatingLong regarding missing short circuits and not always properly modifying the source object when it sometimes should
- Exposed configured energy conversion rates to the API
269f353 - Make the chargepad's back not be taken into account for entity collision https://github.com/mekanism/Mekanism-Feature-Requests/issues/455 (it is still taken into account for projectiles though)
41cf84c - Treat bubble columns as fluid in various checks #7609
2ac427f - Make QIO drive array show stored drives when in item form
d0ac6ce - Exclude Meka-Tool and MekaSuit from pick action when possible if they have any modules installed
eca215e - Fix cardboard boxes being able to dupe xp in some cases #7600
3f0556c - Switch to forge's relatively new auto register capability annotation to make it clearer when looking at classes in the API which ones are base types of capabilities
5ffaf15 - Allow right-clicking irradiated entities with a dosimeter to view their irradiation levels https://github.com/mekanism/Mekanism-Feature-Requests/issues/446
544959c - Fix dosimeter and geiger-counter units for the MekaSuit not properly updating for small values #7629 and reduce network sync frequency for large values to only happen as needed
e5c2bef - Replace usages of BufferedImage with NativeImage
b91f7bd - Minor performance improvement in converting to and from argb to abgr color packing
5414902 - Don't display all advancements to chat to prevent spam and only do so for the "bigger" things
21a5eea - Only trigger radiation damage advancements if the damage wasn't blocked, and add a couple more advancements related to damage/death. Also made it possible to earn death based advancements on hardcore using a totem of undying
e3d3597 - Update deps, and start using CC maven now that it is back up
10b0e23 - Shrink turbine and wind generator texture sizes
2ea0b90 - New Crowdin updates (#7599)
9041b40 - Bump version to 10.3.4
514dbf2 - Update maven example version to point to the 1.19.2 version of Mekanism
84fb60b - Update and re-enable AE2 in datagen now that it can launch properly in 1.19.2 and with other deps we load during datagen
9b29e96 - Fix broken UVs for part of MekaSuit helmet that got broken as part of V10.1
84553f2 - Improve performance when changing modes for module configs by only running the needed checks for the corresponding config items
cc97499 - Fix a few minor z-fighting issues with the MekaSuit and some modules, fix a couple mostly hidden faces being textured wrong causing coloring to slightly leak through, and fix a couple pieces not being replaced when they should be
2900461 - Make scroll wheel "quicker" when scrolling through large module config screens
cf49dc1 - Add a helper method to GuiUtils for rendering code that doesn't accept a pose stack with a given pose stack
82d1a6a - Allow gui windows to consume/prevent scrolling on lower layers
554a39c - Make use of shaders to add support for changing the color of the MekaSuit (https://github.com/mekanism/Mekanism-Feature-Requests/issues/72). Other changes made to systems used:
- Add in handling to the color picker window to support selecting alpha values
- Add a preprocessor paste handler to text boxes to allow pasting RGB(A) values separate by commas and spaces into the color picker rather than just commas
- Fix scroll amount resetting when changing window size for module config and text scroll lists
- Misc cleanup of GuiModuleScreen to make implementation of the color picker config type easier
83463ad - Fix jetpack mode slider in module tweaker going slightly past the bounds of the screen
b9e3ebd - Make it so free runners and armored free runners have another mode ("Safety") that protects against fall damage but does not provide a step boost https://github.com/mekanism/Mekanism-Feature-Requests/issues/425 (any free runners currently set to disabled will load as Safety)
be49d7d - Fix BasePacketHandler#sendToAll having issues in LAN #7577
4caefd9 - Update deps
45ff365 - Improved a bunch of misc things related to rendering:
- Created a system to better allow for batching custom render types in Block Entity Renders so that the SPS, industrial alarm (#7575), and energy cube core
- Update a couple custom render types to be closer to their vanilla counter parts
- Fix some minor z-fighting in the atomic disassembler's model and the industrial alarm's model
- Made the jetpack's wing blades (glass) use blur
- Improved how the Quantum Entangloporter model renders the overlay
- Fix the industrial alarm rendering the aura when inactive (#7575)
e3a7dd2 - Fix industrial alarm not activating when placed next to an active redstone signal
8e37a32 - Make the laser focus matrix require a pickaxe to break and make it, structural glass, and reactor glass all use the glass break sound
de5b01c - Added ItemDecorator for Mekasuit helmet / bodyarmor to display stored fluid/chemicals (#7584)
Bumped min forge version to 43.0.22
Co-authored-by: Sara Freimer sara@freimer.com
3515542 - Update deps, re-enable projecte in datagen and adjust a couple of things to make use of newer forge features
8fb73c8 - Bump min forge version to 43.1.1 and change capability reference to non-deprecated variant
e189f92 - Fix multiblocks and other block entity renders sometimes not rendering properly when somewhat off the screen
a6482df - Misc rendering improvements:
- Minor performance improvements by looking up cached models using computeIfAbsent rather than changing contains/get and put calls
- Made it easier to interact with Model3D and adjust values for them
- Fixed RenderData having different hashes based on position causing extra models to have to be cached when they are the same just positioned differently
- Cleaned up some duplicate code related to having TERs render models
- Improve how model data is handled for the QIO Redstone Adapter
- Allow Fluid Tank Item renderer to use the normal Fluid Tank's cached models
- Only mark QIO blocks as needing a model update if something about them changed
- Fix a minor amount of clipping when rendering teleporters in specific orientations
- Created a currently disabled system for rendering the fission control rod glow using baked models and custom model data rather than a TER to improve performance (currently disabled due to other rendering issues and transparency sorting)
102c86e - Make lasers use a builtin particle render type and draw back face manually rather than disabling cull
a8c8a0e - Fix fusion reactor not returning current production rate to computer integrations (#7585)
4b2a7e4 - Fix portable qio dashboard not updating color if frequency color was changed in another spot. Also make it so that other qio components display the color corresponding with their selected frequency when in item form
e7a9d45 - Make Fusion reactor stats take last actual injection rate into account #7591
743604d - Ensure we clamp the miner's min and max height to the level on placement #7589
fa5e242 - Fix not clearing all transmitter data properly when leaving a world #7592
c4ac163 - Fix gas burning generator not de-activating properly when burning ethylene #7579
aecd113 - Fix leds rendering as off on energy cubes set to input/output and fix sides not rendering on the item variant of energy cubes when they are set to input/output
9fe1050 - Fix some incorrect scaling math in fusion reactor after recent cleanup and also force end batches at a more proper time when not using fabulous for some custom render types in TERs so that they consistently render behind translucent objects
5e38407 - Simplify required calls for rendering tooltip text in the seismic reader and also make it render fluids in the reader
c838b08 - Make jetpack and grav unit give off vibrations when in use #7593 with a config option to disable the grav unit giving off vibrations. Grav unit vibrations have a larger detection radius when actively boosting
4e3cace - Allow configuring the explosion radius of meltdowns https://github.com/mekanism/Mekanism-Feature-Requests/issues/438
3196cf8 - Fix the remaining cases that allow for multiple controllers on fusion reactors and evap towers https://github.com/mekanism/Mekanism/issues/7595
a42e6b6 - Make teleportation energy cost cross dimensions take distance into account. Attempts to minimize the distance cost when teleporting between dimensions of different coordinate scales
7b7b2c6 - Add profiling support to our delayed translucent renders
00e662b - Make multiblock saving on content changing more consistent #7587, and only check for comparator updates when needed, and make the SPS able to provide a comparator signal based on the input tank
59e0690 - Add support for redstone control to the Quantum Entangloporter (disallowing auto ejecting when mode is not met) https://github.com/mekanism/Mekanism-Feature-Requests/issues/439
29a21fe - Bump min forge version to 43.1.3 and add individual permission nodes for our various commands
acfaafa - Display more info on heat tab for heaters, and display a heat tab on all the tabs of the fusion reactor (https://github.com/mekanism/Mekanism-Feature-Requests/issues/440). Also add a heat tab to the fission reactor stat's tab and fix the fusion reactor not syncing enough data on the stats tab
a711f81 - New Crowdin updates (#7572)
a572b1d - Rerun datagen to fix a couple issues referencing the wrong path
5f89894 - Bump version to 10.3.3
7198e02 - Fix deprecation warning related to BreakSpeed#getPos
7e00cd6 - Bump biomes o plenty dev dependency so that we can run our datagen again and added tooltips to back buttons that when hovered now display the word back
1685579 - Make use of mojang helpers for length in various classes to slightly clean up some code
ed6c106 - Fallback to default value for out of bounds module enum data rather than looping to a valid value
79ca8f8 - Allow ModuleEnumData to figure out the enum's class automatically
1d321ad - Rewrite parts of GuiModuleScreen to support there being more options than fit on the screen at once, and also fix spacing and positioning of text under enum sliders in the GuiModuleScreen
b9d7f69 - Refactor and rework various parts of the Radial menu system:
- Improve rendering performance
- Supports radial mode items in offhand just like the normal mode switch key already supported
- Added support non enum based radial modes
- Added support for multi-depth radials and backing up to a higher depth one
- Adjusted coloration slightly for speed related modes in the atomic disassembler
- Made scrolling in the radial menu native to the menu rather than done via events
- Moved textures that are used primarily for radials to a radial sub folder and renamed them slightly (transmission textures are still where they were before)
- Improved lang entries for atomic disassembler modes
- Added a client config option whiteRadialText to allow overriding coloring and displaying radial text as white for improved colorblind readability
- Added radials for the Meka-Tool's vein mining and Excavation Escalation units
- Allow Meka-Tool mode changes with scroll wheel to show on status bar
ad0379e - Optimize image files
25a67fa - Add validation to cardboard box blacklist config to ensure the values are modids and also make it use the define list helper
60a542a - Update deps and port to 1.19.2, and drop support for 1.19.0 and bump min forge version to 42.0.9. Added some initial game tests related to transmitters, and also make use of https://github.com/MinecraftForge/MinecraftForge/pull/8909 to mark transmitters as unloaded when the chunk they are in becomes inaccessible (#7428 and hopefully also #6356) (#7560)
f7ecec2 - Add our gear from Mekanism: Tools to the new armor and tools tags forge added
d84c6f2 - Use Mojang's Mth.clamp helpers in places we used a combo of math min and math max
b62d76a - Fix solar generators having a max output identical to the max generation rate rather than 2x the max generation rate (#7567) and improve how the max rate is set to reduce odds of errors in the future. Also make the hard max production bound for heat generators be configurable and use it for calculating the max output rate
5adf27e - Create some helper classes for storing constant values based on config values so that they only need to be recalculated when the config changes rather than every access
961e619 - Make Paxels for Mekanism based materials use tags so that they can be made with tools other mods add of the same type (for example steel paxels made from another mod's base tools)
2302678 - Update gradle wrapper to 7.5.1, and also update grgit to 5.0.0 now that the jenkins in theory is using java 11 instead of 8
618c168 - Only invalidate cached config values that have invalidation listeners if the config is loaded. Also commit missed file from updating gradle wrapper
625ebbd - Changed obsidianTNTBlastRadius config to a float instead of an int and also added ranges on a bunch of number based configs that previously didn't have any
7eaac76 - New Crowdin updates (#7562)
7225e81 - Rerun AE2 in datagen now that it has updated (but leave it disabled afterwards as it doesn't load on 1.19.2 yet and doesn't load with the latest version of jade
477c0f8 - Bump version to 10.3.2
fec4c6d - Update maven example version to a 1.19 build
19a5d53 - Fix issues with factories displaying wrong warnings at times on servers due to Map#of iteration order having been different on the client than the server
9baddb9 - Update mek radiation heal command to set to baseline instead of zero (#7559)
Also updates baseline radiation of the entity when joining to baseline from zero
21d9f8a - Update deps and bump min forge version to 41.0.113 and remove the custom mekanism:mekanism model loader in favor of using forge's patched in system for setting the light level of faces via models. Also re-enable base ILikeWood in datagen
c58fad8 - Set fluid render layers on main thread as it isn't thread safe anymore https://github.com/MinecraftForge/MinecraftForge/issues/8911
db466df - Fix radiation overlay not consistently displaying with the correct color #7558
3af4c07 - Re-enable datagenerators for ilikewood plugins and add support for mangrove blocks added by base ilikewood
d871267 - Add support for QIO Redstone Adapters to do fuzzy matching and ignore NBT when calculating the count (loosely related to #7561)
94fe7c6 - Fix invalid accessing of client configs from the server side preventing the QIO item viewer containers to not open in dev on a server
c4c9737 - Add a button to the QIO crafting windows to allow emptying the grid to the QIO storage/player's inventory
e381a56 - Update to support 1.19.1 (still supports 1.19 as well for now)
1fb7b8a - New Crowdin updates (#7554)
8045d0d - Bump version to 10.3.1
ccf0038 - Initial pass rewriting how the stored contents of QIO drives is done #6837. This is in preparation for 1.19 and does not support loading the data from old QIO drives
c678c4c - Remove stuff that was deprecated for removal and rename static capability helpers
e94d998 - Initial port to 1.19, it compiles but there are a few things that don't work correctly and the world doesn't load due to registry ordering issues
4d27966 - Fix a handful of issues, requires a custom forge build to actually get into game
1d5327d - Work on addressing various 1.19 related TODOs
a040492 - Make the majority of our registry id reading safer, and also make writing empty chemical stacks a bit more compact
7822e4a - Fix containers not being properly initialized
82b232e - Update forge so that the game can launch, update the dependencies that have updated, and rerun the datagenerator after writing a system to persist old caches
607bf9b - Re-enable biomes o plenty and byg datagen
595278d - Add recipes and tags relating to 1.19 and adjust dirt to clay recipe to have another step in between as dirt + water based on vanilla goes to mud
307dbc7 - Fix baby mobs mutating the experience reward when calculating what the reward is
984cca2 - Update baby stray's spawn restrictions to match the changes vanilla made to them
6fb2d39 - Fix a few issues and also datagen biome modifiers so that worldgen happens and baby mobs spawn
5d60f4b - Add motorized servo unit
6062309 - Update forge and deps, and re-enable some deps that have updated and add support for WTHIT now that jade has separated their api enough from hywla's
e9f75e7 - Datagenned Textures for existing pride Robit skins, also added more pride flags (#7512)
3fcebc3 - Switch from LogManager to Mojang's LogUtils
4b0d536 - Cleanup some things related to registry entry syncing
034e237 - Make getRegistryName helper final for our custom registry type objects
ef96387 - Minor cleanup and change the path of the visuals lang key and slightly generify the visuals too big one
c2c718e - Add an unlockable robit skin (#7517)
afb86f5 - Experiment and test using the structure modifier system and merge the baby spawn configs into the main additions' config now that things happens late enough to do so
03ceefc - Bump min forge version to 41.0.27 for use of structure modifiers and also update deps
0a7e42f - Only mark the tile's chunk dirty at most once per tick per tile while trying to save
6a6c421 - Add in some short circuit checks in FloatingLong for when interacting with zeros or in some cases ones
6df77e2 - Fix robit skin select sometimes selecting a different skin immediately as it is opened if the window overlaps where the button was clicked. Also slightly adjust baseplate of allay robit model to match
e272bba - Inline the remaining methods from spawn helper
1298e25 - Fix how evaporation multiblock cache's the solar capabilities in case an addon implements it and actually needs to fire invalidation and reduce duplicate neighbor updated checks
3d912ed - Bump min forge version to 41.0.28 and update to support the new fluid API
1b97f22 - Bump min forge version to 41.0.30 and make use of the new way to enchant stuff so that the mekasuit and the like behave better
67e51dc - New Crowdin updates (#7515)
4b48d0b - Improve how we calculate the input rate/last energy received for machines #7507
ca84255 - Ensure that mekanism's sub modules load after mekanism
b99b148 - Update deps and bump min forge version to 41.0.36 and fix both the jei integration and explicitly handle getOrDefault on config values where we call them earlier than the config is actually loaded due to vanilla needing values as we override the values later on, and the default is a reasonable enough value to give
ff44c4a - Remove unused faces that were causing warnings to be printed in the log for the robit allay skin
430ec27 - Skip looking for resource pack filters in datagen to remove lots of stacktraces from being printed
59c1cfd - Added advancements to Mekanism https://github.com/mekanism/Mekanism-Feature-Requests/issues/29 (#7470)
Co-authored-by: Sara Freimer sara@freimer.com
0a0c432 - Minor cleanup to a couple data generators and add a recipe for cobwebs to string https://github.com/mekanism/Mekanism-Feature-Requests/issues/402
9887a69 - Make lower case boolean representation translatable
7608877 - Add a vibration game event for the seismic vibrator when it is actively running
725c376 - Lower base pitch of the beep sound effect #7522 and slightly refactor our sound datagenerator code
dd0609f - Make chunks loaded by the dimensional stabilizer fully tick so that crops in them can grow for purposes of keeping it running when using ethylene. Requires https://github.com/MinecraftForge/MinecraftForge/pull/8775
008f584 - Update forge so that our datagen can actually run again, and fix the qio drive array recipe being the wrong type and not validating the personal storage is empty and switch the personal storage advancement to checking against the tag
1babf0f - Restructure parts of our build script to further reduce duplicate code and also add sourceSets for use by gameTests. Also add two missing colons
d49a3b4 - Update deps, re-enable datagen for bop, and also re-enable flux networks integration compiling against the 1.18 flux networks
f16065c - Fix intellij run configs not working, due to where they expect the targets, by removing an old setting that seems to still work fine without it
6a61646 - Migrate from javax annotations to jetbrains annotations and remove our own custom NonNull annotation as now that forge ships with jetbrains annotations available we are able to safely use those in the API
44e9d09 - Streamline a few save itemstack to nbt calls
c7cd6c6 - Allow locking bins by sneak right clicking their front with an empty hand (#7526)
a66c29d - Added a canSeeSun ComputerMethod for the SNA (#7532)
b9889e7 - Fix having forgotten to add the pigment mixer to the blacklist of immovable blocks #7529
9e09cc4 - Fix electric pump not being able to fill completely when pumping and converting water into heavy water #7531
f883b79 - Update deps and bump min forge version to 41.0.60
d7521b9 - Gracefully handle blocks that don't support rotating #7540
db240af - Fix not exposing the radioactive waste barrel to CC #7543 and expose personal barrels, chests, security desks, and industrial alarms to CC for purposes of which direction they are facing
5fec09f - Add QoL decay timers to Geiger Counters and Dosimeters (#7544)
cfb6fd0 - Adjust to breaking rendering changes in forge and bumping min forge version to 41.0.91. Also update to use new RenderLevelStageEvent and use it to fix bolt rendering in fabulous
21e2e5e - Make use of some validation helpers that got exposed in ResourceLocation
afdd692 - Use safer handling for preventing calling client side only methods via FluidUtils#getRGBDurabilityForDisplay
a7c59d9 - Add a few helper constants to reduce object creation in places where a single reference will do
2981ffd - Address usage of a few deprecated methods
a4ca990 - Bump min forge version to 41.0.94 and account for breaking changes
cea95b3 - Bump min forge version to 41.0.96 to fix some bugs and remove reflection uses in some places
212873c - New Crowdin updates (#7518)
612c599 - Update deps to allow for running datagen again
6615138 - Fix induction cells exposing an energy capability #7552
287ea65 - Make it so pumps have to go through the block under them initially rather than being able to magically just pull from the side without having connected first via the bottom
9c05813 - New Crowdin updates (#7550)
1527ee4 - Bump version to 10.3.0
b454a9a - Some further minor cleanup with switch statements and converting to expressions
f7cd147 - Synchronize transmitter shape cache to prevent random concurrent crashes #7499
df64d3c - Fix removed transmitters taking their share of the network away and fix redstone sensitivity on single length tubes releasing radiation
1bf5489 - Refactor and cleanup parts of the gradle buildscript to make more use of gradle's lazy configuration system
7f7b3b1 - Use a few gradle helper methods
6c514fa - Fix issues with launching into the world due to a capitalization issue
8164da7 - Update deps and bump min forge version to 40.1.27 and make use of forge's new pack specific format versions and switch those over to being declared in our gradle properties so that when vanilla changes pack format we only have to edit it in one place
e6427c3 - Adds comma to Hydrostatic Repulsor Unit description (#7501)
c73957e - Added a Dimensional Stabilizer (#7433)
Co-authored-by: Sara Freimer sara@freimer.com
38392ec - Make checking if a chemical is valid for a given validator easier
04a0530 - Bump min forge version to 40.1.36 to ensure forge's lighting pipeline is on by default
cc94a3e - Allow exclusive Modules to more accurately define what sorts of actions they are exclusive with (#7497)
6911c9b - Revert change to min forge version back to 40.1.27 due to the feature being reverted in a later forge build
b9bcd82 - Make factories persist sorting mode when broken #7505 and when upgraded via recipe. Also make fluid tanks persist their container edit mode
b0fea89 - Refactor backend of Jetpacks into an interface (#7493)
2b4f144 - Added fortune module (#7467)
57e3334 - Optimize image sizes
59159f1 - New Crowdin updates (#7495)
1e01609 - Bump version to 10.2.3
1a7e71f - Try to specify the exact version match for the Mekanism dependency of submodules, falling back to using just a dependency on Mekanism
9de61f7 - Just NO-OP our getCapability implementation if it is called before our entity has finished constructing #7490
b7caee2 - Improve overall item capability performance by keeping track of the capability cache on the top level instead of under each item capability helper, which also fixes persistent helpers adding to the same cache multiple times #7476
3ea3653 - Fix MekaSuit Helmet compass being off by one compared to F3 for values that are negative #7492
4862222 - Improve side calculation of blasting unit for blocks like slabs or snow
99dbfef - Allow specifying a position in the build command to build multiblocks at to more easily use the build command to get multiblocks right up against each other, and fix internal multiblocks thinking the structure is no longer valid if an external multiblock neighboring them changed state #7494
ced74dd - Fix equals and hashcode contract for a few records and also fix the memory leak in BlockTransmitter regarding the cached shapes. Key comparison broke in the port to 1.18 so each time the shape was queried it would increase the allocated memory. Also changed the key from a record to a packed short for better lookup performance and lower memory usage
7e56ce4 - Pack the transmitter key slightly tighter by fixing an off by one issue
d46e763 - New Crowdin updates (#7489)
9395a96 - Bump version to 10.2.2
b7917fb - Update example maven version to 1.18.2 and use a variable to specify java version so that we can easily mark it on curseforge as cursegradle doesn't support auto-detecting modern java versions
3f47601 - Fix config comment for discardChanceOnAirExposure
cf478e7 - Move energy and temperature display unit configs to common to prevent overwriting local changes when connecting to a server https://github.com/mekanism/Mekanism-Feature-Requests/issues/330 and deduplicate how many places we keep track of different energy types so that we just have one enum instead of three. Also disable showing energy types in the GUI if it is disabled or missing required mods (for example EU and IC2). Note: Due to the change of which file the display units are in any changes made to those two settings will need to be re-applied
84ccdd0 - Update deps and bump min forge version to 40.0.46 and adjust for changes to tool modified state so that we can properly support modded block hoeing interactions again
e5a6715 - Bump min forge version to 40.0.47 and add support to the nutritional liquifier for mods that have their foods give different amount of stats based on the stack data
d9ab250 - Refactor internals of security system and expose security and owner system to the API #6793. Also fixed/improved handling of the following issues related to the security system:
- Fixed being unable to select QIO frequencies if the security system is disabled #7416
- Removed the security desk keeping track of the owner given that is already done by the security frequency
- Made the security desk only expose being an owner object so that it is universally treated as private instead of requiring special casing
- Fixed security overrides not always being taken into consideration and also prevent them from being able to widen security access (for example from private to protected)
- Cleaned up a bit of hierarchy relating to block item classes and removed the need for a bunch of subclasses
- Improved accuracy of whether an item's contents should drop when destroyed without a player context
- Fixed opening a personal barrel as an item incrementing the chest open stat instead of the barrel open stat
- Improved handling of how the allowProtection config option is used
- Fixed owner name fallback attempts running only when there is a name found instead of only when there is no name found
- Improve security recipe merging logic for calculating most restrictive security mode
- Made computer security mode querying return the effective mode
- Properly kick people from gui's they no longer have access to if they got removed from someone's trusted list
- Made the security mode of the robit always be synced so there isn't a desync when it comes to the crafting and repair guis
39ce538 - Switch to using tags for some AE2 recipes to allow deepslate certus quartz ore to be processed (#7455)
b5ec215 - Fix ProjectE mappers never running due to forgetting to update recipe type comparisons after we adjusted how we register recipe types
a6e3756 - Update deps
e91bd25 - Expose a few methods relating to the QIO to the API
6b28677 - Add cauldron interactions for fluid tank items when in bucket mode and fix empty creative fluid tanks behaving strangely when used as a bucket
0d2e511 - Add fluorite gems tag to parent gems tag
9229d88 - Fix fission reactors occasionally instantly re-exploding and also not releasing radiation the first time around because it didn't "fully" meltdown. Also, slightly improve logic for calculating if mobs can spawn on structural and internal multiblocks when they are not formed as well as properly track all internal multiblock components and further improve error handling if blocks inside multiblocks change when the multiblock is already formed
52ef598 - Prevent creative bin items when being destroyed from dropping their contents
102a1b0 - Properly update remaining null capability checks to checking for if the capability is registered as appropriate as they never should be null anymore just potentially uninitialiazed, and immediately add the resolvers for item capabilities instead of lazily doing it after we are sure that the capabilities are registered. Also fix not having registered our owner and security capabilities
a49168d - Fix removing chunk tickets when unloading due to server stopping #7453
5636680 - Add a ProjectE NBT Processor to include any stored contents in the EMC calculation of various blocks and items. This does not allow learning said presets or the items inside, but does allow for ensuring you don't have to empty it fully just to get the EMC back out when burning it. Contents without an EMC value are considered at a value of zero EMC
41b108c - Fix spacing
a593be9 - Misc code cleanup
100d915 - Expose IHasTextComponent to crafttweaker
325278e - Use helpers for some common usages of reading and writing to packets
fb7867e - Update deps and bump min forge version to 40.1.5 and switch our step height adjustments over to using forge's new step height attribute
d6bd898 - Bump min forge version to 40.1.16 to ensure that 40.1.15 is not used as the step height attribute was temporarily reverted in it
2fc833c - Fix code style link in contributing guidelines
c152bcc - Fix radiation resetting when returning from the end and also fix a few issues on servers where the client environmental radiation doesn't get updated at the proper times
36affd0 - Allow jetpack to function when in curio slots if enabled by modpack dev https://github.com/mekanism/Mekanism-Feature-Requests/issues/284 (#7446)
00580b6 - Added gyroscopic stabilization unit (#7469)
5cf9f6e - Added "bulk" (raw storage block) ore processing recipes (#7468)
6320344 - Fix #7446 having broken the jetpack module in mekasuit
57b176b - Disable CTM in dev to avoid it randomly crashing and fix SPS death zone not taking up the entire inside and cleanup some AABB constructor calls
768fd66 - Cleanup some handling of ItemDataUtils allowing for better cleaning up of parts of the NBT data (#7478) and reduced duplicate code when reading tile data
19b6f97 - Fix floating cuboid in Atomic Disassembler model (#7479)
c305e31 - Fix a couple CMEs on server startup that FC was experiencing
55b46a3 - Update and bump min CrT version and add expansion helpers to game and mod for getting all of various registry types we add
c8752c0 - Fix lgtm analysis unable to run due to it only supporting up to java 14. Using gradle toolchains it still compiles using java 17 but we have to run gradle itself with a version lgtm supports
1b92aab - Armored Free Runners #5221 (#7434)
43f8e48 - Make MekaSuit armor value configurable https://github.com/mekanism/Mekanism-Feature-Requests/issues/372
7be2b66 - Added the Hydrostatic Repulsor Unit (#7477)
dca8122 - Don't show night vision particles for MekaSuit vision unit
9e01085 - Fix rendering of bundle contents and custom tooltip components that draw. Also improve the z levels that "popup" windows are drawn at when there are multiple of them to ensure we avoid any clipping between windows and fix popup windows with items leaving the items accessible after closing the window
6a55532 - Add some missing block properties from the port to 1.18 and proxy shapes better for bounding blocks
502e14e - Minor optimization to insert check to check if the target insertion is full before checking if it can stack as if it is full it doesn't matter if it can stack
ccbf684 - Fix a few machines ejecting their input when set to eject and input/output on a given side #7486
15e464a - Perform a little cleanup related to how upgrades are read and also optimize some logic regarding recipe upgrade data including fixing slots in upgrade window not properly merging or persisting when crafting the item into another one. Also fix a minor issue with shift clicking qio drives out of the drive array not properly saving/updating when in creative
c365ef3 - Added blasting unit (#7473)
5ceaacb - Cancel block break events if the player doing the breaking doesn't have access to the block
a435bd5 - Update deps and bump min forge version to 40.1.18 and switch to using plugin new plugin format now that forgegradle publishes plugin markers
759f091 - Provide the donation links in the readme via github's sponsor buttons
188d050 - Add support for automatically publishing to Modrinth https://github.com/mekanism/Mekanism-Feature-Requests/issues/348
1a19571 - New Crowdin updates (#7445)
3914c69 - Bump version to 10.2.1
8f34fef - Downgrade grgit to a version that can run on java 8 so that it can be run on our jenkins