新建2024-03-15
10.5.7.29

fb30c5f - Fix true dedication advancement
e553d4d - Fix removing modules disconnecting clients from servers
f55446c - Display what a bin is locked to in things like Jade
7603aae - Allow clearing text boxes by right-clicking them
8910190 - Make the gauge dropper transfer 250 mB by default instead of 256 mB to make it easier to transfer a bucket from one place to another
283053e - Actually fix empty locked bins not accepting items when double clicked with an empty hand
83c7032 - Fix certain cases where double-clicking to condense items into a stack wouldn't work properly in machines
164bb5a - Reorder QIO based advancements to not have them have a dep on polonium as they no longer require it to start the tree
2aa0e29 - Don't allow using a wrench to dismantle blocks that currently contain radioactive substances
cddc235 - Minor cleanup for a couple places we translate things
8eea470 - Fix capabilities not being invalidated when rotating a tile with a wrench
4f56533 - Fix missing chemical bar on the mekasuit when empty
6506162 - Don't directly pass keyPress or charType events to non-gui elements... Stops FTB Library from breaking enter handling in Mekanism text boxes
dba091e - Fix player momentum not persisting through teleporters in the same dimension
6d13eb0 - Remove clean from publish workflow, as theoretically it is always cleaned and will only contain the stuff we specifically want to cache. Hopefully this speeds up builds and doesn't break
f3ee85f - show percentage of jetpack fuel in HUD
f8fee14 - Add a per dashboard option to allow changing whether shift clicking items prioritizes open windows or the frequency (defaults to prioritizing the frequency) (#8027). Also fixes an issue with resizing the QIO dashboard when there are pinned crafting windows
4942528 - Always provide access to the inventory slots etc for multiblocks regardless of if they are formed or not to fix potential errors in the initial sync when opening a GUI
53dcfaf - Allow holding shift when using the QIO dashboard resize controls to maximize/minimize the dashboard
dae4b77 - use action bar for configuration card
89f227f - Link to wiki instead of main page given Aidan's site seems to be down
8a37da3 - Minor cleanup to LaserParticle
e94416f - Use vanilla's own render type for making the upgrades appear faded rather than a custom one
69e3334 - Use vanilla constant for max name length and doing an initial validation check of if a username is even valid
02d7f52 - Add a client side config for controlling whether JEI moves irrelevant items from the crafting inventory to the player's inventory or the frequency first (#8027), defaults to moving to the frequency
688802e - Make use of FluidStack#copyWithAmount
085c72a - Don't clamp the energy value of item containers that are dependent on other attachments (#8024)
1ec074e - Fix missing clearing a couple configuration types
c866e93 - Add a side tab for making it easier for players to change the recipe viewer reject target
33ba335 - New Crowdin updates (#8026)
f74513b - Bump version to 10.5.7

2024-03-11
10.5.6.28

3debe82 - Lead is cheap, let it muffle
87f63f9 - make side config gui show block names
7402f3f - give a slight forwards boost to regular jetpack mode, so the player can move faster than normal sprint speed
6867c97 - bump version

2024-03-11
10.5.5.27

65a4dcb - Fix there being no model/state for when a redstone adapter is set to a frequency but the level is not met (#8023). And slightly improve performance/flow of qio component tick code
ab62541 - Fix not updating redstone with new emitting logic when the emitting state changes
d5ca221 - Do our best job to set the active state of qio components on placement
b2dff95 - Make particle addition for things like jetpack happen on client tick instead of on render tick
22532d6 - Expand supported transporter colors to all 18 of our colors. Note: This will cause existing colored transporters and filters to change colors to the new indexing (though they should still line up)
874818f - Persist current connections and acceptors for transmitters when saving, to try and have initial sync be more up to date
2973740 - Fix teleport button not working in portable teleporters due to the stack it is being cached on client side getting overwritten
7cf83a6 - Allow holding shift while using jetpack in vector mode to make it behave as normal mode. (Makes pillaring easier/possible while in vector mode)
b6f4f38 - Disable hover mode when in creative flight
d07490b - Fix double right-clicking bins not inserting into empty locked bins
4e78213 - Fix fluid not being visible in tanks when there is not much stored
55ce0a4 - Fix balloons not being the proper distance from entity's that have had their size modified
aec153d - Slightly adjust clear all sides to also support clearing for different types, and to support incrementing on substance's sides at once
31e567c - Use polonium and plutonium pellet tags in places that were accidentally referencing the direct item
aa5641d - Add support for pinning GUI Windows to have them automatically open when reopening the GUI (https://github.com/mekanism/Mekanism-Feature-Requests/issues/571)
9211ac5 - Qio recipe adjustments (#8021)
cd8a383 - Only accept "cheap" ingot variants for the muffling upgrade
d359279 - New Crowdin updates (#8022)
2a25aa4 - Bump version to 10.5.5

2024-03-09
10.5.4.26

57ee884 - wrench items direct to inventory, only dropping when full
50e1964 - adjust muffling upgrades to only need 1, and allow refund of extras
83f223f - make the muffling upgrade cheaper - just slap some wool in there!
c6682b8 - bump version to 10.5.4

2024-03-09
10.5.3.25

e13923b - Replace some of our recipes that accept cobblestone with accepting cobblestone or items in vanilla's stone crafting materials tag
92cf26f - remove energy usage from configurator
3db4ec0 - simplify the configurator's recipe
11715dc - Add crusher recipe for turning obsidian to dust in preparation of removing the enricher recipe for it. And add a crusher recipe to convert blaze rods into dust and bones into bone meal
e250954 - Switch bin left click vs shift left click behavior to be in line with mods like storage drawers and functional storage
1402b10 - Include coloration in colored block's name component
d727b2e - Include personal storage inventory in emc processor's calculation of emc an item is worth
dc0d42d - Drop upgrades and modules when the item entity containing them is destroyed, and expose an API method so that addons can have their custom module container items drop installed modules on destruction
a1df051 - Add looking at support for viewing what is inside a placed cardboard box
0fdfe04 - Fix filters not remembering enabled status on block placement
379f88b - Allow double right-clicking to insert into bins even when done with an empty hand
2ed429e - Move transmitters over to using our block attribute system (hopefully improves #8018)
5c125a6 - Fix the QE's energy tab not updating while in the GUI
5df5d31 - Further adjust configurator recipe
ae784e7 - Fix personal chests and barrels losing their inventory when broken
00748b5 - Add a View Vector based Jetpack mode, fix scaling issue when accelerating an elytra, and allow installing multiple jetpack modules and increasing the thrust of the MekaSuit's jetpack (#7475)
ed78560 - Bump min Neo version to 20.4.196 to ensure that clients can properly understand all the data we send them when on a server
20e2e65 - Sync extra stack data to make sure the hotbar and portable teleporter energy update properly (#8020)
39882fc - Clear heat data when clearing configuration data of machines
bf26e1d - Try delaying tracking transmitters until first tick on servers to see if that fixes issues where the data isn't synced to the client. Hopefully this doesn't break anything
4bbb444 - New Crowdin updates (#8019)
f8881ec - Bump version to 10.5.3

2024-03-04
10.5.2.24

59f9b2d - Fire teleport events in other places we teleport entities (https://github.com/mekanism/Mekanism-Feature-Requests/issues/637)
5f6deb9 - Improve performance of updating entity radiation (especially when there is no radiation sources in the world)
c17cf16 - Cleanup flame tick logic and some places where we get the current server
5e03d45 - Fix disconnect on server when trying to send certain translations to the client. For example dictionary output
cb15244 - Hide the cape while wearing a jetpack or scuba tank as it clips a lot
eefbe03 - Fix checking of radiation when radius is a single chunk
55a93cf - Fix tasty paste advancement triggering with an empty canteen
79e8d6e - Fix digital miner not having the correct maxY set on initial placement
8deff87 - Fix auto ejecting from the digital miner directly into transporters not working
ba59ae2 - Fix accidentally breaking component rendering a couple commits ago
cfd5410 - Fix Quantum Entangloporter auto eject being broken
b8eddc1 - Don't allow unpacking blocks where they cannot survive. For example unpacking a torch on a chest
eef073e - New Crowdin updates (#8013)
8e0aaea - Bump version to 10.5.2

2024-03-02
10.5.1.23

401f215 - Manually specify loader and game version for modrinth as it isn't good at detecting it
de3a1de - Fix gauge droppers not exposing capabilities
1ec7c2d - Cache NG outputs in publish workflow, and remove no longer necessary custom clean targets
d3ea197 - Prep for upcoming extra method in IGenderArmor
9945aaf - Improve rotation speed of the wind generator item
c54b948 - Fix robit's repair screen rendering of the text box and error
269a597 - Fix how we set initial focus so that the objects can be properly unfocused (#8006), and switch to using mojang's system for handling which element is currently focused
b02dd97 - Allow JEI components to handle key presses and clicks (even though none of ours make use of that)
1a40a85 - Simplify JEI mouse click implementation
63a8bb5 - Use mojang's getRight and getBottom helpers in places
cc6445d - Bump deps and bump min Neo version to 20.4.184 (#7954)
becf60a - Make use of getExistingData for attachments
c9e6829 - Add support for localizing mod description and display name in mod list
5c37f92 - Do our best effort to not allow placing fluidlogged blocks with fluid in dimensions the fluid can't be placed (#8007)
53eb881 - Fix redstone control type not adjusting what the activation mode accepts on fission logic adapters. Removed disabled mode from being supported by the adapter, as the corresponding is to just not set it to activation mode
f385fc3 - Support persisting logic adapter settings and copying them with a configuration card
812e145 - Fix not properly tracking lazily added resolvers for invalidation
c8412f5 - Add support for muffling upgrades to Resistive Heaters (https://github.com/mekanism/Mekanism-Feature-Requests/issues/634)
1af0eb9 - List what mob type a spawner is for and what a decorated pot is decorated with when viewing cardboard box tooltips (https://github.com/mekanism/Mekanism-Feature-Requests/issues/633)
246efdb - Fix spelling of Whooshes (https://github.com/mekanism/Mekanism-Feature-Requests/issues/623), and commit missed files from previous commit
2a15e50 - Allow configuring MekaSuit UI Jitter via helmet options (https://github.com/mekanism/Mekanism-Feature-Requests/issues/587), and allow adjusting it and opacity via arrow keys
fe1c679 - Add support for inverting the QIO Redstone Adapter's output signal (https://github.com/mekanism/Mekanism-Feature-Requests/issues/606)
47aeca7 - Force reading to recognize that our lang file is UTF-8 by making the first value be a UTF-8 character
e9ea15f - Adjust how qio trigger lang entry is combined with comparator lang entry
677d5af - Fix positive min build heights (https://github.com/mekanism/Mekanism/commit/8bd636e438ef984ef6b853266fe3b5aabfa28734#r139202489)
ea2154f - Write Jekyll computer data with support for UTF-8 encoding
be6dd6d - Fix Gravitational Modulating Unit not persisting flight when disconnecting and reconnecting (#7985)
a3e0e1d - Sync the offhand item in item containers in case some of the state is dependent on the item (#7923)
0ef8269 - Ensure max stack size is respected when a transporter with items in it is destroyed (#7982)
a6edd88 - Don't bother saving the last color to items when breaking a QIO components as it is just used for seeing if the BE should sync to client
37b85b0 - Merge colored name handling fully into ItemBlockMekanism rather than having a second variant just for IColoredBlock
65ba14c - Allow blocks to stack when they have matching data, and add a single item recipe to clear any configuration data (side configs, sorting, etc. It does not clear things like items or security) https://github.com/mekanism/Mekanism-Feature-Requests/issues/546
69787db - Fix non-creative energy cubes rendering incorrectly in hand after placing in creative
d603edc - Make it so that energy tablets can stack (https://github.com/mekanism/Mekanism-Feature-Requests/issues/638)
855554a - Increase speed of the modification station, allow installing and removing up to a stack of modules at a time (https://github.com/mekanism/Mekanism-Feature-Requests/issues/639)
b525020 - New Crowdin updates (#8005)
5392c69 - Bump version to 10.5.1

2024-02-24
10.5.0.22

49e43d3 - gradle importable
7ed2b6e - neoforge renames
bbf77d8 - move AT names from comments [to be verified]
4f1ef00 - more renames
4c6a8fc - MC updates
a59dfee - make gradle clean run before build in gh action
8d39664 - remove reobf from gradle and some other commented bits
c5d1db4 - recipe builders
7001a04 - forge rename - configspec
2f6caee - MC updates
b09834d - plugin update
029d52c - the codec-ification begins
203d3a2 - chemical+stacks codec
d9f8b04 - restore compat with previous json
84707db - add codecs to SerializerHelper
58d59d5 - fromNetwork signature change
0a63fce - switch to neo version of withAlternative so the encoder can use the secondaries
114b19b - remove codec method from wrong interface
702dc6c - ingredient creator codecs
0eeb087 - check stack ingredient serialisers
8c60b1c - move FloatingLong codec into FL class
fb8454a - serializers
2e8c2cf - main module compilable
6e46d30 - remove unused json methods
18ac8e0 - undeprecate the serialize ingredient method
60deddb - fix serializer
7b8cbf7 - datagen MC updates
3c0e6a5 - unported mods datagen compile-only hacks
d10ec66 - mc updates
6a2e3e5 - NG update
299f11f - set loader/neo version/modid
819f297 - move chemical stack codecs so they dont classload the Stack classes too early
2a53d70 - comment out bus subscribe which will break things now
01452cf - fix forge mod id in jsons & update neo
120003c - neo updates
4dc4a96 - more neo mod ids
637ea3e - update datagen coremod
475dd9a - comment out lingering old mods in datagen impl and add modIdentifier to extraSourceSets
d65e73f - Fix errors in tests due to things class loading that don't exist in what classes JUnit loads
cb516d0 - Minor build.gradle cleanup and bump NF and NG version to fix multiple ATs not working
7872fcf - Fix datagen runtime errors
b4edf89 - Cleanup some datagen code by creating an AT file specific for datagen
93b2e97 - Don't create advancement files for recipes with no criteria
4ead4eb - Switch from TagKey.hashedCodec to TagKey.codec for fluid and chemical stack ingredients as the hashtag is redundant
70eef5a - Run datagen
2b1ec9a - Remove no longer necessary min version declarations
9845257 - manually replace forge modid with neo in the compat recipes
ffae97c - fix: itemstack codec missing Count being optional
6629d49 - fix: support the chemical type on the upper level rather than inside the input field on crystalizing recpies
09c5303 - fix: secondary chance validation was wrong way around
979b5b0 - Unify todo format and fix misc porting bugs
6c3c967 - optimize dependent field codec in Crystallizer serializer
62b1eb5 - move serializer specific methods out of the api classes
f049697 - document SerializerHelper and move Slurry Stack codec to be with the rest
c4f3cab - remove deprecated/redundant serialisation
90fe830 - remove some redundant code, move helpers to use the codecs
6d89e8f - fix count being wrong case (Count vs count)
9f7c731 - fix itemstack codec doing nbt in a different way
6f8babc - move network writing out of the recipe api into the serializers
5e89e7c - replace all the things with codecs in serializerhelper
098668a - simple unchecked cast fix
a4e7d5c - minor javadoc fix
cede10c - move basic recipe implementations to separate package, make main classes fully abstract
1c8ad09 - move the rest of the "basic" recipes
0680407 - make recipe types referenceable in the api, use them in recipe classes
13a0790 - chance output docs
48dc4b3 - use plain text group ids for recipes, pull up to super where possible
55fc3bc - move things into Basic recipe classes wherever possible
26024d6 - finalise moving all Basic versions of recipes to the api package
2cc289f - Support using Neo's Registry rewrite
1a529a3 - Refactor our wrapped registration for single layer wrapping to extend instead
21b8665 - Remove IEntityTypeProvider in favor of using holders and slightly reducing registry wrapping further
bf08942 - Remove a wrapper for loot function registration
bfde078 - Re-enable holder based ingredient creator methods
465fa85 - Remove a few more unneeded deferred register wrappers
e761560 - Slightly cleanup fluid registration
58eb08a - Cleanup chunk loaded check and fix packets not being properly handled
8906209 - Disable ProjectE datagen file to fix compile errors until ProjectE updates to 1.20.2+
7a64285 - fix robit skins
0223d22 - Update NeoForge and account for related code changes
62fe3c4 - Manually rename recipe condition key to account for renamed value
6108614 - Update NeoGradle and re-hook up yaml-ops in datagen
fd05eac - Fix forgetting to rename code constant and remove a couple paths
4bfe2c8 - Update deps and update CrT integration to compile against the 1.20.2 Forge CrT version
9adffe7 - Make use of mod constructor parameters
03e919a - Fix uv sprite access
52a15b6 - Update to NeoForge 1.20.2 RB and fix deprecations. Server configs redirection is broken for now
7f887b1 - Fix gameTests not being added to run configs
60b7932 - Fix gametests not running and switch to devtime only ATs rather than reflection
59ef9a1 - Refactor our use of capabilities to support Neo's rewrite of the system (#7925)

 - Adds support for non BE based block capabilities such as the composter (#6157)

 - Minor performance improvements to some bits of transmitter related code

 - No longer fires neighbor updates for cap invalidation as it is no longer necessary

 - Reworked security utils and split it into multiple classes to make it easier to interact with using newer systems

 - Made config and security caps fully support being applied to blocks rather than having BE specific implementation details

 - Fixed sorter position and face checking

 - Fixed WorldUtils#notifyLoadedNeighborsOfTileChange using the wrong state for the weak changes and secondary neighbor change check

 - Include ItemStack attachments in HashedItem's hashCode

 - Allow accessing transmitters by position for all types rather than just inventory networks

 - Expose energy caps on robits and switch the chargepad to charging robits via it
a3c1b79 - Update a couple dependencies and switch to building against neo 1.20.4 (compile errors have not been addressed yet)
577523a - Fix advancement triggers
121f6ea - Make API provided recipe builders compile
7688e9f - Fix compilation of main mods (datagen still doesn't compile)
bca7f93 - Switch criteria triggers to using the proper registry
c6dfe29 - Fixes crash while launching client
3a9c544 - Fix datagen compile errors
d44aab8 - Remove no longer used SerializerHelper methods
b46f430 - Fix SawmillRecipeSerializer not being able to serialize recipes without a secondary output
67414f2 - Fixed some copy-paste errors in the recipe serializer codecs
230d024 - Make all our recipe serializers return MapCodecCodecs so that the recipe dispatch codec can inline the recipe
2fc1b63 - Fix base lang provider including the modid twice in the provider name
79ce1bb - Run data generator
91c7fd1 - Port curios integration
c081944 - Remove unused interface
3e60175 - Rename some interface methods to overlap with vanilla methods to remove the need for manual implementation or bouncing
d85e40a - Make use of neo extension to cleanup GuiElement click processing
3c7f06a - Make a couple interfaces extend Predicate
8763499 - Fix nullability warnings for BE holders
bb006f7 - Update NeoForge and account for changes:
 - Mandatory field in mods.toml being deprecated in favor of type
 - Server configs ending up in normal config folder by default
 - Rerun datagen to update pack mcmeta's
 - Pass stack to customArrow
 - Update how we check if milk can cure an effect
 - Make MaxedModuleContainerItemPredicate's Codec a MapCodecCodec
934948e - Update datagen cache to account for data from merging 1.20.1 into 1.20.4 branch
036caeb - Update neo version to fix gametests not working
1c638f6 - Update gradle and NeoGradle
6e457af - Fix recursion
32692cf - Switch version to being a record to reduce boilerplate
51e6751 - Fix diversion transporter not visually disconnecting when a transporter it is connected to is removed
52bd386 - Update to support NeoForge's Network rewrite:
 - Split various packets that previously used an enum to determine behavior into more logical separate packets
 - Moved the batch security update packet to being a configuration packet so that it is sync'd to the client before the client finishes loading
 - Converted a large portion of our packets to records
 - Made transmitter network content packets use packet bundles instead of lots of optional fields
 - Switched lots of usages of Random to RandomSource to be more in line with vanilla functionality
 - Don't bother syncing position on spawn of balloons as it is already done by vanilla
 - Made FloatingLong#readFromBuffer return an immutable FloatingLong
 - Cache the client owner's name of frequencies so that the data is properly accessible in single player if a frequency is sent directly over (this means it should never show as null and properly use <???> when unknown)
 - Removed string, array, and nullable helpers for reading and writing to FBBs and replace with vanilla/neo counterparts
 - Use specific max string lengths in more places for reading and writing to FBBs
 - Switched some things (Frequencies and TransporterStacks) to always serializing for payloads as the network system no longer does so in single player
 - Fixed some cases where things were relying on implementation details and converting data during serialization (which no longer works in single player)
 - Keep track of frequency type in syncable data so that we don't have to send the type over the network as we already know what to expect it as
 - Made syncable lists use byte array data to ensure that new instances are always created and to simplify the networking logic for syncing lists
 - Added some TODOs about things that need to be further looked into to confirm that they behave as expected in single player
d70f5a8 - Update NeoGradle and re-enable parchment support
fbc2251 - Update deps and compile against jei for forge 1.20.2 and update parts to account for the RecipeHolder changes
97e6ed7 - Reformat code and optimize imports
feb0aa9 - Address various misc minor intellij inspections
f2246e9 - Switch to NeoForge withAlternative for MapCodecs and properly provide errors as DataResults instead of as exceptions
c490b36 - Use a broader range of accepted codec representations for deserializing nbt for items and fluids in recipes
96e81a8 - Use constants instead of magic numbers for personal storage blocks
b7da6ce - Simplify how we create the completable future for our CrT example provider
eee8df2 - Update deps and add support for newer BOP content and biofuel recipes for BOP content
7d51514 - Replace unnecessary WrappingMapCodec with proper usage of xmap
54c3c57 - Update deps and re-enable JEI integration and update to changes in NeoForge
51caf84 - Allow flame projectile to light candles
b7f6b3c - Update deps and bump min neo version and clean up code for adding layers
479b987 - Make use of DeferredRegister's entries rather than keeping our own lists of entries
ca2b563 - Compile against ProjectE's upcoming 1.20.4 API, and ensure we load after json things so that we can properly hook it in the constructor
da65c30 - Support checking player item cooldowns for vision enhancement, jetpacks, and grav unit mekanism/Mekanism-Feature-Requests#591
0466ecd - Misc cleanup by using math related constants and helpers from Mojang's Mth class
dad865d - Cleanup ATs to remove some unneeded ones and add a couple that are now necessary to keep mirroring vanilla code. Also fix how explosions are handled in bounding blocks and meltdowns
11d59bd - WIP on figuring out which parts of the code interact with TPS in preparation for properly supporting when the level's tickrate is changed
b51212c - Move module containers over to using attachments to allow keeping the stored modules in object form and add support for custom module containers via the API (mekanism/Mekanism-Feature-Requests#449)
57a7f3e - Move enchantment based modules to storing their enchantments as part of the module container instead of hijacking the NBT. Also fix inverted check in module installation
8de57c0 - Reduce direct usage of IModule#getContainerStack and introduce preferred alternatives
bfb41c1 - Remove try catch fallback from BlockBounding shape lookup as it should no longer be necessary
9944e9d - Move walkie-talkie data and configurator and disassembler mode storage to attachments. Note: Ignores legacy values
992402a - Move mode storage for electric bows, flamethrowers, free runners, jetpacks, and scuba tanks to attachments. Note: Ignores legacy values
c64a966 - Move fluid tank bucket mode storage to attachments. Note: Ignores legacy values
d22f6e2 - Update deps and make use of some newer Neo APIs
16c4bc0 - Move container storage for all types except items to attachments (#7989)
3a9bd69 - Move vibration frequencies to data map
df73118 - Make persisting disabled providers auto disable the corresponding providers if the mod isn't present
01afee2 - Move owner, security mode, frequency item, and color item to attachments from raw NBT
139c0bf - Move upgrades to being stored as an attachment on items
18e43f0 - Move formula storage to attachments
5f2367e - Continued work on moving item data from nbt to attachments, some of it loads legacy data some doesn't
607bf73 - Move storing cardboard box data to attachments, supports loading old data from items but not from placed boxes
13e6a96 - Replace Coord4D usage with GlobalPos. Does not load legacy robit homes or radiation sources
778a4f7 - Move QIO Drive Metadata to attachments
8ea79be - Move robit skin and name storage on items to attachments, does not load old values
638a7c0 - Move storing the personal storage id to attachments, can load legacy data, but removed support for loading legacy data from 1.19 and older
9ba72a9 - Cleanup how we load legacy item data
2449205 - Move configuration card data to attachments
9db37cf - Move item storage to attachments instead of using ISustainedInventory, and make rotary condensentrator's mode persist when broken
fd52b80 - Don't reposition the mouse for certain gui transitions
888b3d9 - Full support of attachments in places we only supported NBT previously, and use a builtin codec for ItemStacks rather than our own copy
c3d76c5 - Copy Laser Amplifier settings to and from stack when broken/placed
a15626d - Remove the need for ISustainedData by making it part of TileEntityMekanism and default to handling the redstone control logic
40c9016 - Handle side config and ejector as attachments on the item
2ed53a9 - Update deps and move parrot imitations over to using Neo's datamap rather than ATing the backing map
d6a8acf - Slightly cleanup handling of tile component serialization and copying to and from attachments
27f3321 - Move frequency components to being stored as attachments and prune out unnecessary data from what gets saved to the item
d54a42f - Cleanup logic relating to reading to/from stacks
9795858 - Switch to defining the charcoal block burn time via neo's BurnTime data map to allow pack devs to more easily override it
18afdb6 - Move MekaSuit damage absorption ratio to a data map from the config (#7997)
6aa73b8 - Add a few helper methods to boxed chemical stacks and chemical type
9694b5d - Add missing lang conversion for "Stabilisation" (#7999)
c8b5dd4 - Update neo and set more efficient attachment copiers for our attachment types
128472f - Rerun datagen
d746128 - Add a soul gliding unit to the mekasuit boots and give free runners Soul Speed I when on normal, so they can run free on soul sand
c470593 - Cleanup some stuff related to holiday handling making it so that holidays get detected when they day changes and updates the corresponding effects, as well as add support for randomizing the base robit skin based on the holiday
e2504c4 - Update deps and re-enable Jade in dev
cd367ea - Remove references to EU and IC2 as it doesn't seem like IC2 is likely to update any time soon, and just confuses users (mekanism/Mekanism-Feature-Requests#622)
9dc4221 - Properly support vanilla's new water and lava source conversion gamerules (mekanism/Mekanism-Feature-Requests#595)
a4da354 - Don't throw exceptions in attachment copy handlers
7a1112c - Fix GuiEntityPreview rendering
1d18b79 - Fix IDEA getting confused where to apply the annotation processor when building the project with Ctrl+F9
88ea391 - Fix riding offsets
aafa39f - Simplify handling of ingredients in some places
bdadd0e - Simplify loot functions by removing the unused conditionals, and sort the copy containers list
75ef2aa - Prep for attachment based ingredients, and loosen strictness on nbt matching
8bd636e - Fix wind generators speed and direction not behaving properly in respect to the new world height limits #7912
ea80093 - Switch a few static blocks to using Util#make
a4f3c21 - Rerun data after merge
28ac556 - Mark things as optional in our maven pom
8513ba9 - Update Neo version to stable
aa2fcfd - Update workflows to use latest versions of actions, and try to fix codeql analyzing minecraft itself
153b8ab - Add support for trusted frequencies (mekanism/Mekanism-Feature-Requests#125)
9da22af - New Crowdin updates (#8001)
367d98b - Disable TOP in dev as it seems to cause connection issues when attempting to join a server
b37c24e - Fix some inspection issues relating to logging and javadocs
119faee - Remove references to deprecated NonNullSupplier
5577e4b - Add a couple annotations related to null checks
70e6120 - Fix z-fighting with Embeddium (#7976)
e7d8d57 - Fix accidental emissive quad removal
be7d590 - Remove duplicate render background call causing background to be darker
41dc17b - Fix QIO Drive array leaking reference to current drive status in single player
f554030 - Make how we store some bits of data in NBT more compact
1b7a782 - Update to 1.20.4 CC:T (#8003)
495c7c2 - Remove unnecessary mod dependency version ranges
a540292 - Update deps and bump neo version to properly support attachment based ingredients
7d762a2 - Fix bounding blocks not being able to replace blocks like sculk veins (#7950)
eebf816 - Fix tests not being able to be run
dddab7b - Fix floating point issues relating to batched rendering #8004
fca1c43 - Fire advancement triggers from the farming unit so that there is a chance the wax off trigger can be checked #7954
5d7297b - New Crowdin updates (#8002)
165052c - Bump version to 10.5.0
ed7f114 - Let modrinth fail silently so as to not cause builds to fail when they fail to upload to modrinth given how many issues modrinth has been having with uploads lately

你已经到达了世界的尽头..
新建2024-02-21
10.4.6.20

f6a6ba9 - fix: prevent client crash with radiationParticleCount set to 0
1ac9561 - make a local var for random source
6bd7123 - adjust funding yaml
4b2537b - Fix stairs and slabs recipes in mekanism:sawing (#7936)
b029d0f - add warning tooltip to turbine dump button
12892f6 - Refactor salt disk feature to call vanilla placement method (#7968)
152f8de - New Crowdin updates (#7927)
c65a64b - Bump version to 10.4.6

2023-11-14
10.4.5.19

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

2023-11-13
10.4.4.18

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

2023-10-20
10.4.2.16

11275aa - un-break the configurator making bins active/inactive
f0670e9 - Update issue template to include 10.4.1
d32a82d - Make ItemRecipeData support personal storage items as outputs
60c691f - computers: compare help method data by reference to avoid Stack Overflow Error
dc4f9db - version bump

2023-10-17
10.4.1.15

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

2023-10-01
10.4.0.14

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

你已经到达了世界的尽头..
新建2023-07-15
10.3.9.13

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

2023-02-08
10.3.8.477

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

2023-02-03
10.3.7.476

c1e0f2b - Fix fission reactors with only one fuel assembly not accepting fissile fuel #7718
e22c6e9 - New translations en_us.json (French) (#7717)
61320b9 - Bump version to 10.3.7

2023-01-31
10.3.6.475

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

2022-10-23
10.3.5.473

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

2022-10-07
10.3.4.471

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

2022-08-27
10.3.3.470

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

你已经到达了世界的尽头..
新建2022-08-06
10.3.2.469

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


此版本支持 minecraft-1.19.1 ; minecraft-1.19.2

但不再支持 minecraft1.19

2022-07-28
10.3.1.468

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


此版本支持minecraft-1.19.1

2022-07-15
10.3.0.467

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

你已经到达了世界的尽头..
新建2022-07-15
10.2.5.465

16d8c6a - Fix induction cells exposing an energy capability #7552
a395daf - Bump version to 10.2.5

2022-06-15
10.2.4.464

f57d1cf - New Crowdin updates (#7506)
25312e9 - Fix recipe upgrades not transferring energy, fluids, chemicals, or upgrades #7508
53d34ff - Bump version to 10.2.4

2022-06-08
10.2.3.463

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

2022-05-30
10.2.2.462

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

2022-05-27
10.2.1.461

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

2022-04-11
10.2.0.459

0f375c2 - Initial port to 1.18.1 needs a few mods to be built manually and put in flatDir to compile and needs https://github.com/MinecraftForge/MinecraftForge/pull/8352 to get into game. Also has a good number of things that need fixing/testing
01ec3ec - Address a todo related to serialization
f5237c0 - Add extra validation to our tag generator to ensure we add harvest tool tags to all blocks that require the correct tool and go through and add them to blocks we hadn't done so
a0237cd - Use maven local to be able to use a custom forge build to load into game in dev, also only build against projecte's api instead of all of it
044cb48 - Merge IChemicalStackIngredient and ChemicalStackIngredient
1d3fb17 - Work on cleaning up some TODOs such as removing legacy name loading support from modules
4fd8e15 - Fix issues related to some changes in container syncing, and remove some workarounds we had for tracking ghost stacks as it simplifies the logic a lot and vanilla seems to have fixed the issues on their end
fbc25e0 - Perform a couple renames to methods/cleanup calls
6135c5e - Rework fluid logging property to be an enum property so that it can provide more information in F3
227d065 - Make use of some new java language features and fix some javadoc issues
cb2e664 - Fix the model for baby enderman, and make baby skeletons that freeze turn into baby strays
c9ba5cb - Cleanup the remaining TODOs in Mekanism Additions, improve the particle positioning for popping balloons, and add some elements to vanilla tags that make sense
57b7a1b - Work on TODOs in the API, and remove some side params from capabilities and instead have the side be gotten via returning a different capability implementation via getCapability
af8d59c - Fix server being unable to launch
c3ed5fb - Continued work on addressing various TODOs
eff44e6 - Fix crash when rendering of custom wire meshes due to adding data to the vertices in the wrong order, and fix mekasuit rendering having issues. Also fix radial menu sometimes not drawing the background
774baf4 - Make refined obsidian require diamond tools instead of iron tools as at some point vanilla made it, so you can't harvest obsidian with iron
3c20f40 - Improve handling of expanded height range
9af0e53 - Fix rendering and adding data to Jade and made it redirect the bounding block to the main block for purposes of getting the name. Also added support for viewing energy levels of robit's when looking at them for both Jade and TOP
146f57c - Fix JEI recipe click areas not working
c46c074 - Fix a variety of issues related to rendering and also remove some extraneous setShader calls as blit calls setShader for us
927ba12 - Convert nutritional paste to a fluid #7102, and also rename "Liquid Osmium" to just "Osmium", and make it so our buckets have fill and pickup sounds
038017e - Switch off of a custom forge version and also fix some things related to fluid pickup sounds
c887478 - Minor cleanup and make the robit repair screen use our text field rather than vanilla's directly so that there is less we have to implement and fix a couple related issues
0965fea - Reintegrate CraftTweaker support, JEITweaker support is still disabled
d14066f - Fix a couple minor CrT related outputs and expose data from our recipes to CraftTweaker and expose more methods on our ingredients as well
d7ce35f - Add support for mob effect tags to the dictionary
2f155d1 - Fix miner often resetting instantly after hitting start
94dd098 - Bump min forge version to 39.0.18 and remove copper ingots, ore, and blocks switching over to forge's tags and vanilla's items in recipes
096f3eb - Updated ore textures, added raw ores, raw storage blocks, and deepslate ores (credits to rid for the textures)
9c1a1b1 - Initial pass adding new ore processing recipes
2713e8a - Re-enable JEITweaker integration
8418e2d - Fix crash rendering items in the logistical transporter
0d8449b - Refactor how ores are configured and added to world gen to allow for multiple veins and even more configurability (default values have not been updated yet)
c4f1c68 - Update deps, bump min forge version to 39.0.57 and switch to CF versions for ilikewood related deps now that they are all updated and work properly together
21ecbf2 - Cleanup handling of removing blocks and tiles as setRemoved is now called for both removal and unloading, and permanent removal should happen from the block's onRemove method. Additionally:
 - Cleaned up handling some for placing bounding blocks to only need to be declared in one place instead of in an onPlace and setRemoved
 - Implement Clearable on turbine rotors so that using the set block command on them won't drop the rotors and call it for our build remove command
 - Revert some stuff related to how we fixed #7053 and rewrite it in a way that will work fine without creating memory leaks once https://github.com/MinecraftForge/MinecraftForge/pull/8417 gets merged
7d71e2e - Address and fix some TODOs related to 1.18, notably: fix mem leak for oredictionificators and also transition mekanism tool's materials over to using forge's tier sorting registry
5519470 - Optimize images
1a5965c - Modernize handling of personal chest lid
1ee94fb - Make gradle run tasks end gracefully and as "success"
27529db - Initial test of new ore gen distribution values
8af8a43 - Add support for giving custom names to machines #6371 (#7398)
7371abf - Expose getComparatorLevel of tiles that support comparators to computers (#7388)
6dd51cd - Update some of our AE2 compat recipes to work better with the changes AE2 has made in 1.18
11404b1 - Update deps, bump min forge and switch to proper cobblestone type tags, and fix height of personal chest gui being slightly taller than it needs to be
a18176b - Expose all of our computer methods to OpenComputers 2, add a bit more error handling to our annotation scanner and fix an accidental hard dep on CC for purposes of being able to scan the energy helper
280920b - Refactor our annotation processor to be slightly more generic, use json, and map the parameter names of our computer methods so that we can attempt to provide them to OC2 so that it can provide cleaner names when listing method signatures
82f2d27 - Expand our computer method mapper to be able to merge multiple param mappings so that if mods have their own file they can then be included, also adjust the mapper to be able to properly calculate signature name of inner classes so as to not have to adjust signatures at runtime before lookup. Also fix not generating parameter names for exposed computer methods in mekanism generators
030fb1d - Update a couple lang entries and make ore combining recipes require raw ore where applicable rather than dust
b9786e6 - Update to upcoming JEI API changes https://github.com/mezz/JustEnoughItems/pull/2701 and fix declaring rotary condensentrator outputs as an input and fix crystallizer category not rendering quite correctly
b842f73 - Adjust to some further changes in JEI and also transition some recipe representations that weren't lists to lists
3c4b1ae - Adjust to further changes in JEI and implement more methods in our ingredient helper so that JEI can try and guess at when our chemicals support any of a given tag
bce0e8e - Rework how we expose ingredients to the API to not expose implementation details and to add more validation to ingredient creation
8906d95 - Update deps and bump min versions of a few things
df7505c - Replace a lot of uses of pairs with more specific records to make it easier to keep track of what piece means what and also allow for primitives in places
5c39f43 - Rename pressurized tube config category to chemical from gas
f1903de - Fix our fake player returning the wrong position and block position due to how forge handles things
5ebfd54 - Add a little more validation to record construction in the API
ce1bb0b - Ensure we know the bounding block has received the coordinates before potentially querying the main pos that may be at the origin and not a loaded location
faa18ce - Adjust how we check if a chunk is loaded so that we don't always get true on the client side. Hopefully this doesn't break some of our uses in unexpected ways. Also only process update packet tiles on the client if the block is loaded which fixes logging when transmitters send an update before the client has finished receiving the chunk
54e2090 - Fix lighting in robit skin select gui and change how we draw tooltips to use absolute positions instead of relative due to the changes in tooltip rendering to ensure our tooltips get properly wrapped when overflowing the screen
1ad7e36 - Rename tile entity type tags in the dictionary to block entity type tags and change the tooltip for cardboard boxes to reflect tiles being called block entities in other places
5479ca6 - Deduplicate a lot of our cached recipe implementation code and refactor things to enable keeping track of errors with the recipe and hook displaying those errors up into our warning system. Also added basic support to our Annotation based SyncMapper for arrays of property data.
8291fda - Slightly refactor package structure for ingredients and inputs
d6a23ca - Draw gauge overlay in PRC JEI category even if there is no output gas
81da3e3 - Add extra validation when trying to set a tag or modid filter to validate that there are elements that would be matched. Also fix the rendering sometimes being wrong for modid stacks and potentially even material stacks. Also change filter failed messages to display for five seconds instead of just one second
4deb918 - Update and bump min forge version and transition over to a more proper way for how we hide some data from tooltips
95e091c - Rebalance default miner configs to cost more energy, and also adjust the energy cost calculations to properly take into account the max radius config, and also take into account the height range of the world the miner is in. Also add energy warnings to miners, pumps, plenishers, and vibrators (only can display with default configs for miners); and add output full warnings to pumps.
0302f18 - Fix issues with farming and shearing unit from porting and support other new axe actions
56ae20d - Update JEI and adjust setRecipe signatures to the newest version
b0d896d - Implement support for dropping contents of Mekanism's items if the item entity is destroyed and the destroyer has access or the security is on public. Not yet tested and requires https://github.com/MinecraftForge/MinecraftForge/pull/8473
82ea9b7 - Create a system to allow addons to define custom module model locations and model renderers. Move MekaSuit Solar Recharging Unit to Mekanism Generators and make use of this new system
54e8718 - Only create one instance of BlockEntityRenderers for ones that are shared between multiple block entity types
40e7b39 - Fix night vision module fog rendering. Might be a bit different but it is close enough
df56889 - Only sync carried stack when a gauge dropper is used instead of the entire inventory
71956f5 - Properly update how we mark tiles as needing saving and improve handling so that we don't mark them as needing to recheck for a comparator change if we know the thing that changed doesn't affect comparators. Also make the bio generator's comparator level be based on fluid instead of item
7c81f72 - Fix laser not rendering
fb45532 - Slightly rework some stuff related to cached recipes to fix improper calculation of not enough energy reduced rate and remove some unneeded checks in the rotary condensentrator
dda9a92 - Fix evap tower and SNA recipe processing max operations
71a3b86 - Fire different vanilla game events where appropriate
1f8ed69 - Use interaction results in a way that more closely mimics how vanilla uses them since the addition of consume
fc1ffe9 - Wrap floating longs as doubles for exposure to CC to simplify usage/defining and interacting
2aded37 - Bump min forge version to allow for our items when in item entity form to drop their contents if they are public or are destroyed by a player that can access them. Also entirely remove the energy cost for shearing blocks with the meka tool and make it so that checking if a module provides a tool action is more efficient if the module has other prechecks it needs to run as well
ae2cc96 - Fix issues from merge
a83854e - Fix some constant usage recipes occasionally resetting
bca8823 - Update gradle to 7.4 and update deps
ec98296 - Expose formula slot to automation via extra side config and allow automation to extract from it https://github.com/mekanism/Mekanism-Feature-Requests/issues/246
ab515bf - Expose max energy storage for the laser amplifier, tractor beam, and all basic generators to the config https://github.com/mekanism/Mekanism-Feature-Requests/issues/353. Also remove a few declarations of energy values in places they aren't actually used
9f01224 - Finish figuring out retrogen and make it so that we don't save a new world gen version to a chunk if we haven't gotten a chance to retrogen it yet
59645ee - Slightly adjust how we load the transmitter contents model
294afb1 - Set it up so if we ever need offset level events that the bounding block receives we can use them
3aa0eea - Make lasers respect ShieldBlockEvent and requite the blocker to be facing the laser to actually be able to block them
1e5ff6a - Rerun code formatter and optimize imports
b7d11ac - Address a few of IntelliJ's inspections
b4b7078 - Split GuiGraph into GuiLongGraph and GuiDoubleGraph to allow for more accurate numbers for the fission reactor when displaying historic temperatures #7408
31ac4ec - Increase chest open stat when opening personal chests and make piglins angry when a player opens a placed personal chest
d2834ba - Block 1.17/1.18 damage types for the MekaSuit and check all fall types instead of just the old fall one for things that prevent fall damage
51b5f4c - add new language mappings
e5f29df - indentation fix
9782b49 - Add a bunch of QoL/utility recipes for 1.17 and 1.18 content, and also allow the robit to walk on top of powder snow, and add the mekasuit to the freeze immune wearables tag
b8ce251 - Pass the entire tooltip flag now that it isn't stripped from the server
d902d1d - Don't add our gui elements as narratable so that the narrator doesn't just say indices. Eventually we will try and transition some of them over to actually being narrated correctly, but for now just disable it
3b3c6e6 - update lang values to always use explicit indexed substitutions and complain in datagen if they don't
18a42fd - Clamp wind generator config values (still likely to be adjusted before a release is made)
8e99c5c - remove Travis badge as it no longer works after migrating to paid
80aff4f - Apply max damage to vehicles when using the atomic disassembler or the meka tool (without consuming energy) so that they can break in one hit #7423. This uses a tag so that it can better be extended to support modded vehicles. Also take the base damage value config for the Meka-Tool into account in a more logical fashion when attack amplification units are installed
764947a - Support one hitting BOP and BYG boats as well and perform a bit of cleanup on our tag builder
5d6fb0e - Initial port to 1.18.2, building against https://github.com/MinecraftForge/MinecraftForge/pull/8495. Also made the following smaller changes:
 - Improved dictionary's right click detection of fluids and displaying their tags
 - Add support for display "attribute tags" if any mod decides to add them (all remaining vanilla registries don't make much sense in relation to items and the like for a way to look them up)
 Note: Datagen still needs to be run to fix a variety of recipes not working among other things but until more of the deps our datagen depends on update this is not possible
5be98b9 - Some small optimizations to tag contain logic for chemicals and replace a couple other tag contain checks to avoid calling deprecated methods
0c517bd - Slightly cleanup our Jade integration as given 1.18.2 was a breaking change we can update to their adjusted API without requiring disallowing any old versions from being used that would otherwise work
3970740 - Update to the new way of interacting with registries
7de225d - Update how we declare recipe types in JEI as they now have their own thing instead of just being purely resource location based
8c832d0 - Fix a couple missing checks for when multiple substances are stored and have overlapping tags
82a913a - Rerun datagen in 1.18.1 using paths and expected data for 1.18.2
ac3be3a - Add a Personal Barrel and make the Personal Chest not be able to be opened if there are blocks on top of it (same restrictions as vanilla chests, but it can still open in your inventory)
d8551af - Update to a couple changes made in ProjectE and update and bump min forge version to 40.0.18
e94dd96 - New Crowdin updates (#7420)
02870bd - Make transporter speed config comment clearer
ae391aa - Switch to grabbing ProjectE from cursemaven now that it is released. Closes #7430
a04ec89 - Work on update CrT to 1.18.2 and adjust for changes made in it. Also expose chemical attributes to CrT for more than just chemical creation and expose a variety of other methods on various classes. Also updated deps and fixed a few issues with datagen
2346f09 - Fix some of mekanism addition's recipes being in a different folder than intended
4f0c4f2 - Bump min forge version to 40.0.30, remove our IngredientWithout and switch to using forge's new DifferenceIngredient. Also cleanup a bit of logic relating to multi ingredients
7979b6b - Implement and add support for handling Recipe#isIncomplete
9ab52eb - Make it so free runners and mekasuit boots allow you to walk on powdered snow
73c46ad - Ensure ILikeWood has the proper configs loaded for given items given they adjusted how they register if items exist in 1.18.2
975cf15 - Fix being able to break blocks by putting the pigment mixer under them and unify and simplify logic for validation
7d89c1d - Add support for Wildfire's Female Gender Mod
50af70b - Perform a bit of minor cleanup
c2f7f57 - Drastically improve jetpack is on ground check #7436
82ce593 - Address a few more TODOs
53841fd - Slightly cleanup some logic in our holiday manager, and reword the config a bit and make it also control all easter eggs not just some.
287a84f - Bumps min forge version to 40.0.35 and switch how we register to vanilla registries to use deferred registers now that it is possible to register to vanilla registries using them
075ccc3 - Switch back to CraftTweaker's Maven
0fd3ff5 - Sanitize narrow non-breaking spaces as well to improve how MC renders our formatted numbers on some locales
6f52102 - Expose JEI ingredient helpers to the API https://github.com/mekanism/Mekanism-Feature-Requests/issues/366
34df19b - Fix not proxying Recipe#isIncomplete to our mek data recipes causing them to not work properly in the QIO, and also fix a few things using our special shaped recipe that can just use the normal shaped recipe
797168b - New Crowdin updates (#7427)
4657b50 - Add helper methods for inserting/extracting from QIO frequencies and support for simulating doing so. These will eventually be properly exposed to the API
0ba4aae - Update the oredictionificator's description to mention tags
9ec9ae8 - Update deps and disable alpha warning in preparation for release. Bump min forge version to 40.0.44 to fix balloon recoloring recipes and take advantage of some helper methods that were added to RegistryObjects
2a77523 - New Crowdin updates (#7443)
7ab3ae5 - Update JEI to 9.7.0.180 and fix references to deprecated API
436dbf2 - Bump version to 10.2.0

你已经到达了世界的尽头..
新建2022-01-01
1.16.5-10.1.1.456

cf02a45 - Update maven example version to 10.1
3955be5 - Fixed getCapacity computer methods for pipes, tubes, and cables to grab the capacities from the network (#7367)
eeba842 - Adjust how we add sawing recipes to CraftTweaker ot not be ambiguous and fix one of our typed expansions being for the wrong class
3fcbf11 - Make slots on windows (such as in the QIO crafting windows) able to support viewing recipes and usages via JEI
ff9665f - Fix issues with changing mode using the mode key for the locomotive boosting unit and excabation escalation unit when the maximum number of upgrades is not installed #7372
3f047ca - Sync environmental radiation level to client instead of just the scale so that the geiger unit can work properly on servers #7373
879f9b8 - New Crowdin updates (#7365)
24108d9 - Bump version to 10.1.1

你已经到达了世界的尽头..
新建2020-04-12
1.15.2-9.9.19.411

Warning: Mekanism is currently in alpha, and is not recommended for widespread use in modpacks. There are likely to be game breaking bugs, and updating from one alpha to the next may cause various mekanism blocks to disappear/void their contents. While we will try to not have this happen/keep it to a minimum make sure to make backups. You can read more about the alpha state of this project here.
49c88f0 - Work on attribute system for gases
c8b4973 - Improvements to chemical system
e3fcdc1 - Define CAV as nonnull, other minor improvements
b672fb0 - Start work on transitioning item and block models over to being created via data generators, buckets and tools module are done. Also slightly reorganize texture structure for mekanism tools
94bf266 - Fix Robit translation
1fb65a7 - Cleanup block loot table data generator code
b8a0ef8 - Continue work on moving various model files to being created via data generators
a85fc6d - Fixed integer-based emission target splits, some updates to gas attribute system
f4133fe - Increase base capacity/pull rate of tubes and pipes, fix fluid + gas gauge overflows, cleanup reactor
eee045e - Rebalance interaction between Fission Reactors, Boilers and Turbines A lot of more work is still necessary, but this will hopefully stop abuse of the system
a4b022e - Improve update delay calculations, improve balance of Thermal Evaporation Controller + Resistive Heater, fix Boilers accepting steam Also, doubled efficiency of steam in reactor to give it a further edge and doubled Turbine steam processing speed
2008669 - Fix reactor stats scaling, add a base conductivity value to the boiler, bump fuelwood heater generation
ac9ab07 - Incomplete refactoring of heat API Very incomplete, doesn't even compile- just wanted to get my current changes out. Should provide an idea of how the system will be implemented.
e14f0f1 - Some minor work on method signatures for the heat api
b56bb05 - Continued changes
df3bc25 - Slightly consolidate energy/fluid/infusion/gas tile management for better readibility
7c8da92 - Continued work
4d73458 - Continued work
ea33775 - More work
7f2cc4d - More work Reactor math sucks
13e149b - Continued work, fix a pretty serious issue with cache merging
39fdf64 - Fix some calculation issues
36f0f91 - Minor fixes, ready for testing
a63c4f0 - Work on cleaning up a few things related to the heat api rework
139c73b - Heat API fixes, better calculations for transmitter content scales (in cases where we're transferring very small amounts, #6045), fix mode change #6041 Unfortunately, as we de-register networks each time a transmitter is broken, it will appear as though the contents 'refresh' each time a transmitter is broken. This can be looked into more further
a11c2b6 - Fixed Thermodynamic Conductors We really don't need a proxied heat handler for the conductors, instead we wrap the capability around the tile
317c3f1 - Make Thermodynamic Conductors read/write
40097e4 - More work on cleaning up various calls
49008a5 - Fix some merge conflicts
20f0c44 - Fix Thermal Evaporation Controller, fix conductors not disconnecting from Quantum Entangloporter, fix persistence
88739f0 - Few more minor fixes
ddf85d3 - JavaDoc heat api, as well as some minor improvements
4fadfc9 - Base temperature system around 0 degrees Kelvin rather than ambient temp Also, debug work on Boiler.
54463fa - Fix superheating element active state, other various fixes Beginning to transition back to doubles
36dbf34 - Start transitioning to doubles
999061e - Actually finish heat transition
be8abf0 - Minor fixes, fix universal cable content render
6f43b62 - First pass at converting chemical amounts to be longs instead of ints in preparation for eventual changes to mass amounts of steam production - Various minor config fixes/adjustments, highly recommended to regenerate configs to ensure things work properly - Improve networking for various things by using varInt rather than int, as the locations we pass ints over networks they tend to be small - Partially rewrite ProjectE integration to better handle/fail gracefully if a recipe has a long amount of a chemical, and properly handle if multiple inputs are the same
3e55ff3 - Minor fixes
15f76ee - Fix some rebase errors
57915f3 - Convert dynamic network's capacity to longs. FluidNetwork still clamped to integer for now though. Also fix some potentially incorrect calculations for energy network scale at large network capacities
368f5a6 - Heat Generator fixes
e5c87a0 - Fix FloatingLong to string with decimal places, and add also allow for syncing just the decimal changing in the gui
b5ffebb - Fix heat simulation not taking heat capacity into account, fix Boiler client desync, fix Reactor heat management, fix simulation logic not taking heat capacity into account, adjust heat capacities and production rates for realism
3341511 - Make all chemical fluid variants be flagged as gaseous #6048
c12ecb2 - Update zh_tw.json to 9.9.18 (#6040)
1f7aa9d - Make Oredictionificator handle storage blocks (#6052)
e42fde8 - Update CTM mcmeta files to use the correct block registry names, and add to dev the dev version of CTM and update forge
06d5907 - Minor code cleanup
722249b - More properly handle the ability to have gas usage be a long
a1c555e - Cleanup/reorganize some config values, and add more config options for changing settings for gear in mekanism
a05dd1a - Improve Flamethrower heat logic
8d7cc8c - Improve the visual selection box of various things, and make some moving TERs have their selection boxes move with them
101cc74 - Bump version to 9.9.19                

2020-04-05
1.15.2-9.9.18.410

Warning: Mekanism is currently in alpha, and is not recommended for widespread use in modpacks. There are likely to be game breaking bugs, and updating from one alpha to the next may cause various mekanism blocks to disappear/void their contents. While we will try to not have this happen/keep it to a minimum make sure to make backups. You can read more about the alpha state of this project here.
d32dd87 - Fix QE voxel model, improve interactions with TransitRequest/TransitResponse to make code cleaner and prevent some unnecessary computation
90eaa7b - Allow Fluid Tanks to push overflow water to upper tanks even if auto-eject is enabled. Also, mild performance enhancement.
6f1b2e9 - Cache pathfinder score alongside path itself, further reducing computation
e463776 - Fix energy usage of free runners when stopping fall damage, and make it only reduce the damage by as much as it has energy for. Also add a hud display string to show how much energy is currently stored in the free runners being worn
d47e417 - Fix dynamic tanks and boilers voiding contents on load
6de9665 - Implement more advanced pathfinding caching, preventing single transmitter updates from flushing the game-wide cache This should lead to pretty substantial performance increases, especially in large servers
9294e3e - Rewrite how mode changing for items works internally, and change it so using the mode change key makes the mode go forwards, and holding shift (sneak) and using the mode change key makes it go back one mode (note: this is how it used to go forwards) #5833 - Moved atomic disassembler to using the mode change key rather than sneak right clicking - Added support for scrolling for all mode items that get used in your hand - Added a few more lang keys for when modes change, and changed a couple lang keys slightly to be more "unified" - Changed key bindings to set their "category" as the localization string for Mekanism rather than directly as Mekanism - Made mode change keys only get tracked when not in GUIs - Added changeable keybinds for showing machine descriptions #5158
4574219 - Change network unique id and multiblock unique id to actually being UUIDs this will cause most multiblocks to lose their data on initial load. Fixed turbines not quite working properly due to the accidental loss of the correct block
545145e - Fix setting energy values in GUIs #5996
d7166a4 - Cache the baked quads for transmitter contents, drastically improving the FPS #5127
1a344f2 - Start work on making networks sync to clients more accurately and not require the client to request an update from the network. - The contents of the network don't sync yet on first load - Various bugs need to be fixed about the visual connections of incompatible networks, though I believe this might have been broken earlier during the port from 1.12
053cb08 - Fix some invalid connections from rendering
21945d5 - Stop networks from having a specific client side tick, as they no longer need/use it
0ce1684 - Improve network auto disconnection
f917691 - Further improve the logic, by not allowing connecting to orphan transmitters if it can have incompatible networks. Instead once a network claims an orphan then it updates the connections
b1af021 - Improve how we invalidate the transmitter's model, hopefully should finally resolve #5922
dcdd2c3 - Use our own custom handling for drawing selection boxes of some of the more advanced ones. #5747 Eventually we may try to further improve it so it draws lines at angles and such, but for now this is a quick and easy way to massively improve the FPS
a27ae7e - Define a way to sync less information on non initial update packets. Use this to do the initial sync for what is in the contents of pressurized tubes, mechanical pipes, and universal cables
c0cb85e - Fixed Robit crafting, added tighter JEI integration to Robit & Formulaic Assemblicator
671b449 - Fixed multiblocks not sparkling when reforming, fix allowed frame blocks for multiblocks
91f69e5 - Fix CME (#6009)
2d4eaa1 - Fix various issues with rendering not updating properly when incompatible networks merge after becoming compatible, or if the network is empty, and the "type" that is passing through it changes Note: There are still some issues with the networks not properly merging/once unmerged again, visually are able to connect
1732b2b - Add some safety checking against zero capacity networks #6010
5b2c63c - Fix fallback for before configs load for pipe pull rate limit. #6011
d9a2e29 - Slightly improve logic for connecting pressurized tubes or mechanical pipes
9e85eff - Further optimize mark dirty of our tiles so that we can call them in a way that does not have to recheck the blockstate if we don't believe it has changed #5997
acf8dc3 - Fix not properly handling attempting to send large amounts of items at once
f0dc5e6 - Cleanup not properly handling input/output supported checks for entangloporter side configs, and also reduce amount of duplicate code needed for creating proxies for valves in multiblocks
51b7400 - Fix bio generator not actually needing fuel to produce power #6017 and improve its fluid scale calculation
13424b6 - Fix Coord4D constructor
88c2e33 - Work on moving gui interactions to a newer packet system
76ad73c - Fix heat network flow translation
1c3ae0f - Fix a couple lang issues, and make it so that the directions are localizable
b5b6af7 - create ja_jp.json (#6025)
e3cb07c - Adjust indentation to match other json files, and remove the old ja_jp.lang file now that it has been properly ported
4c17257 - Bump dev forge version and bump TOP version to directly make use of the new PacketBuffer params
91a5eb3 - Write backend for creating sounds.json files via data generators an move our sounds.json files over to being made via data generators. Also strip out the optional replace tag from tags when it is default, and strip out forge's new optional list from tags when there are none set
4ad99b3 - Cleanup our implementation of having all types of tags be able to be provided from a single class so as to make it more easily extensible
ca61a0d - Continue work on rewriting how we handle packets, and cleanup some constructor calls
89bc6ce - Continue work on rewriting how we handle packets
67785a7 - Move transporter syncing to its own packet rather than using PacketTileEntity
ee2571d - Continue work on rewriting our packet handling system
3bcf9bc - Rewrite handling of flamethrower, jetpack, and gas mask active state sync
fc20942 - Continue work on rewriting handling of packets
27e0ff4 - Cleanup implementation of security update packet
67fee8f - Make it easier for modules to register their own packet handlers and move generator's packet to being in its own packet handler
4fbc92d - Remove the need for TileNetworkList
5fba2b7 - Fix some issues with recipe upgrading #6019, and also improve performance of calculations so that we don't bother checking items that don't have any NBT. Also fix the majority of items ending up with an empty mekData tag, and fix jei subtype interpreter not working if one item supports multiple types of data
9243dcc - Split portable teleporter packet into a client to server packet and a server to client response packet
c6533a3 - Rewrite handling of gauge dropper and add support for handling infusion types in it #5821. Also make "durability bar" for storage items like gas display the color of the stored gas
0e50209 - Void excess energy for upgrade recipes, fixes not being able to craft a robit with filled energy tablets
87e98e2 - Bump version to 9.9.18

2020-03-14
1.15.2-9.9.16.408

Warning: Mekanism is currently in alpha, and is not recommended for widespread use in modpacks. There are likely to be game breaking bugs, and updating from one alpha to the next may cause various mekanism blocks to disappear/void their contents. While we will try to not have this happen/keep it to a minimum make sure to make backups. You can read more about the alpha state of this project here.
8cfe2a4 - Fix ore/resource harvest levels (#5942), fix Paxel harvest levels 
7923962 - Hopefully fix transmitter model issues (#5922), remove client-side markDirty() call We used to call markDirty() on the client as it would trigger an all-sides neighbor update which was necessary for some kind of multi-mod interaction. It's not relevant anymore though as far as I can tell, especially since we have an internal markDirty() impl which prevents such updates. 
c8476c1 - Fix harvest level changes 
7e9ff56 - Initial experimenting with using vanilla's sync/update packet system rather than our own 
8ff4379 - Move all NBT keys to strings. Some things got renamed so various misc things may be voided from Mekanism machines/blocks so I would recommend emptying things just to be on the safe side. In some cases it will just be machine configurations that get reset. Also changed how the chunk loader component saves chunk positions, so you may have to go and reload the chunks to get them to stay loaded again. Things with bounding blocks like digital miners, advanced solar generators, security desks may unbind the bounding block from the actual main block, so should probably be broken/picked up before updating 
b387c94 - Move JSON string key constants to constants to make it easier to prevent typos and if there are typos at least have them be consistent throughout serialization and deserialization. No current recipes should break as nothing has been renamed. 
006dbe6 - Only sync the energy scale to clients for energy cubes unless the gui is open 
03738bd - Fix Gas Generator sound, fix Gas Generator 'burn rate' readout (#5047
ce6aec5 - Start converting more tiles to syncing stuff via vanilla's packet system. Also fix the Bio generator processing stuff on both the client and the server instead of just the server 
1e3592b - Finish converting ITileComponents over to properly syncing their data 
7c0f0cd - Fix transmitters not checking bounds prior to placement, fix PRC GUI title 
17019a8 - Cleanup some code pertaining to inventory ejecting, ensuring we grab items based on what can be extracted rather than what is directly in the slot. #5938 
fc5e007 - Fix improper internal insertion restrictions for rotary condensentrator tanks #5940 
3ffb6c8 - Fixes pressurized tubes and mechanical pipes not being able to connect to quantum entangloporters #5950 
381eadd - Fix Fluidic Plenisher GUI, and fix tank insert/extract checks for the electric pump #5951 
8b990a4 - Fix pump & plenisher GUI scaling 
7d41e3f - Reinstate active state update delay (#5848), clean up active state mess A bunch of machines were making particle effects when they shouldn't have been, QE should not have an active state to begin with 
fb878c0 - Split onUpdate into two methods, onUpdateClient and onUpdateServer, to make the code more readable about what is happening on what side, and to note require as much indentation due to isRemote checks 
e6ac88d - Cleanup implementation/handling around isCapabilityDisabled, to only have to check it once rather than at each level of super, and to make it so manually calling it can be forgotten about. 
6371faa - Fix a potential issue with active state changes 
1951d1a - Update machine lighting on world load 
4c88139 - Work on moving transmitters to syncing their initial data via vanilla's update packet 
4f5822e - Work on moving the security desk to using vanilla's update packet and our container sync system. We still need to properly move over syncing the trusted players list 
e25085c - Create system for syncing lists as elements in containers 
1fc912d - Move evap controller and resistive heater over to vanilla update packets 
9527146 - Create a way to sync filter lists for containers - Cleanup some code pertaining to filters - Compare hashcode of list to check if it is dirty rather than comparing all the elements - Make HashList implement the List spec - Fixed error in loading frequencies 
0294ecf - Move fluid tank syncing to vanilla packet system, and cleanup implementation of lasers and move that stuff over to the new method of handling sync data 
757ed70 - Switch induction matrix over to using vanilla sync packets and the container sync system 
723c950 - Convert dynamic tank, and internal multiblocks to using vanilla update packets, and our container sync system. Also fix an NBT clash that accidentally introduced 
f0dea9f - Fix sparkling effect playing continuously 
c342a13 - Continue work on converting multiblock packet handling. Also start working on attempting to fix some of the packet spam that multiblocks have
437f2fa - Only sync fluid changes for rendering for the fluid tank, boiler water tank, and dynamic tank when the scale changes, rather than on every mb of difference. Also move the scale calculation to a util method to ensure that we render at least something if there is any contents 
7ebe623 - Use our own sync packet to avoid chunk rendering thrashing 
9bedc8b - Add support for showing how much time our TERs are taking in the debug pie chart for block entities 
324382d - Convert reactor over to using the new sync system, and fix the normal laser always firing the max amount of power even when it didn't have that much power stored 
c27ebf3 - Move syncing of formula to our container sync system, and fix a few different issues with rendering of specific gui pieces 
4c490e2 - Switch steam tanks for the turbine, reactor, and boiler to be gas tanks and use the gas variant of steam, rather than fluid tanks using "liquid steam" - Add in scale target for the steam rendering of the turbine and boiler so that we don't have to send an update packet every time the stored amount changes by a single mb - Fixed reactor active state - Fix reactor not actually using any inputs 
eb2d176 - Remove specific implementation of a few interfaces when the super class already implements them 
7facb95 - Only sync different gui information for multiblocks when the correct tab is being displayed 
361fbf9 - Always send the structure if the multiblock tile is rendering. It is a relatively small amount of extra data, removes the need for the client to send a data request, and we have also reduced a lot of multiblock packet spam already 
f79b42c - Remove no longer used baseBlock from Model3D, and improve the logic used for picking the direction to render the teleporter's portal in. No longer should have an edge case that causes it to sometimes render in the wrong direction 
382dc22 - Fix attempting to send packet initially on every block placement, and fix a few packets being sent before the data to send is set 
1736513 - Update dev version of forge + mappings, and switch back to the latest FG3, now that the fixes needed have been merged 
7e21519 - Fix a few bugs with the robit's repair screen #5964 
4799260 - Various improvements to text boxes in GUIs, and makes sure the text persists even if minecraft's window is resized 
4666b85 - Make less classes implement ITileNetwork, and fix sound for stepping on and off of chargepads 
efa7f88 - Move teleporter and quantum entangloporter syncing over to using the container sync system 
0e70296 - Fix a few minor issues with the reactor and its formed state 
83b4fff - Move registering our transmitter model loader even earlier. Should hopefully prevent #5881 and #5963 
349ff4c - Remove a couple cases we set the glow, as it did not seem to change anything, and move the configurable machine overlay to using the block highlight event to reduce the amount of calculations that have to happen if you have a lot of machines and are holding a configurator to ray trace and see if you are hovering that machine 
1c13d44 - Improve performance of rendering various TERs by batching calls made to the same render type at least within an individual TERs 
a66793a - Improve and fix a few bugs in the flame renderer 
6dcef43 - Improve accuracy of getRenderBoundingBox so that tiles can be properly culled when they are not in view, and add a full block render bounding box to transmitters so that they can render their contents even when they are barely on screen - Improve rendering logic of turbine rotors when not inside a formed turbine - Fixed turbine rotors sending update packets before the client has a tile for that position 
e940835 - Improve the render bounding boxes for multiblocks and the digital miner 
0b36c7a - Further cleanup of NBTConstants, and fix model loader causing issues in runData 
79b67de - Fix actually moving remaining items instead of just simulating the move, and thus duping the remaining items #5966 
aea149f - Do some basic cleanup to RenderResizableCuboid and remove a bunch of unused code 
bf6119d - Bump version to 9.9.16

你已经到达了世界的尽头..
新建2019-08-04
1.12.2-9.8.0.383

fdaaabb - Update gradle to 4.8.1

cb72dc7 - Update dependencies

cbd82f9 - Fix warnings for build.gradle

403cdaa - Reconnect pipes across chunks when the chunk loads. Fixes #5583 (#5584)

d9b58b5 - Code cleanup (#5582)

efbcdca - Fix unused enableFog GL call. Fixes #5579 compatibility with BetterFPS' Fast fog mode

31f3277 - A small deduplication of the OreDictManager (#5577)

bebcee0 - Move all references to energy conversion ratios to their own class rather than duplicating the logic across multiple classes

ba41475 - Partial fix for #5576. Stopped it from overflowing though at some point the EnergyNetwork should still be updated to having capacity be a double.

4fbd1d8 - Fix lang keys for dumping excess and dumping being backwards #5594

9ccdaa3 - Fix being able to break nether portals by hand #5590

50d15fb - The server has to be the side that tells the client to open the gui, fixes #5593

f887183 - Fix potential null pointer when using the result of TransporterStack#getSide

c2910fc - Fixes Oredictionificator Filter not initializing properly. #5597

9c76c68 - Fix using wrong side for getting capability

0f5ef4e - Make EnergyNetwork capacity be a double (#5589)

034340e - Cleanup Tools Module code (#5578)

8082d64 - Bump version to 9.8.1

2017-11-27
9.4.2.327

支持1.12.1,1.12.2

你已经到达了世界的尽头..
新建2017-09-05
9.3.5.206

支持1.11.2

你已经到达了世界的尽头..
新建未知时间
9.2.1.298

修复了关于线缆的部分Bug

未知时间
9.0.1.270
未知时间
8.1.7.252

增加一个多结构设施——聚变矩阵

未知时间
6.0.3.21
未知时间

Beta

你已经到达了世界的尽头..
新建未知时间
9.2.1.295

支持了1.10.2

你已经到达了世界的尽头..
新建未知时间
9.1.0.282

支持了1.9.4

你已经到达了世界的尽头..