Skip to content

GT5-Unofficial ​

2316 merged pull requests.

Needs action on an existing world:

  • [read before updating] #4970 PCB Factory upgrades are now separate sub-multiblocks that can be linked to a main PCB Factory using a data stick. This provides more flexible configuration and solves stability issues with the previous integrated design.
    Your PCB Factory keeps its shape and does not have to come down. A bio chamber or cooling tower that was working in 2.8.4 stays linked and goes on working. From now on new upgrades are built as their own multiblocks and linked with a data stick, so if you ever tear the old cooling tower down you will have to build the new standalone version to get overclocking back.
  • [rebuild required] #4982 Complete overhaul of High Temperature Gas-Cooled Reactor (HTGR): now provides alternative Europium and Americium fusion recipes, enables breeding of advanced materials, retiered to IV, and features dynamic fuel consumption and helium loss mechanics. Requires balancing during 2.8-2.9 development.
    You have to rebuild your old HTGR. The reactor is a completely new and much larger structure made from casings that did not exist in 2.8.4, so take the old one down and build the new one from the NEI preview when you get there. It now runs at IV instead of LuV, needs a helium loop that slowly leaks, and takes new TRISO fuel. Your old TRISO and BISO pebbles are not removed and can be centrifuged back down.
  • [world data] #4984 Complete worldgen system refactor: unified ore vein generation in GT, moved asteroid generation to Galacticraft, removed ore tile entities, improved NEI vein discoverability, and fixed bartworks vein information display. Requires coordinated release with dependent mods.
    GT and Bartworks ore blocks are converted in place by Postea as each chunk and each inventory loads, and GT++ ores are left exactly as they are. Do not dig out or remove ore blocks yourself. Chunks that already exist keep their veins; the new vein and asteroid layout appears in freshly generated terrain. Addon authors: the ore tile entities and ore APIs are gone, see gregtech.common.ores.
  • [read before updating] #5027 Implemented IItemSource and IItemSink interfaces on GT machines and ported item movement code to use the new ItemTransfer system; item pipes are non-functional pending a separate PR.
    Item pipes will not function until the follow-up PR implementing the new ItemTransfer behavior is merged; do not update to this version alone.
  • [items disappear] #5251 Removed deprecation from Assembler cable recipes and deleted the single-block cable coater machine. Cables can now be crafted in the Assembler without the deprecated warning.
    The Basic Cable Coater and Advanced Cable Coater I, II and III are unregistered with no replacement, so any you have placed or are holding disappear on first load.
  • [check your build] #5320 Completely ported Drone Centre to ModularUI2 and refactored sync logic to fix long-standing range issues. Drone Centre can now control machines at any distance and across dimensions by reworking network synchronization.
    Check your Drone Centres after updating: the links re-establish themselves and the old "out of range" bug is fixed, but any custom name you gave an individual drone connection is dropped and needs retyping.
  • [read before updating] #5595 Removes the duplicate imposter Zirconium material that has been deprecated for years. Only affects worlds older than 2.6 with stored imposter Zirconium items.
    This only matters if your world is very old. The deprecated duplicate Zirconium material is gone; it could not be obtained at all in 2.8.4, so only worlds carried over from several versions back can hold any. Those dusts and ingots become nameless unusable stacks rather than being cleanly removed. The real Zirconium is untouched.
  • [rebuild required] #5608 Algae Pond completely overhauled: tier system fixed, parallels reduced from 2 to 1, structure requirements clarified (75 sterile casings minimum, not 64), and recipes ported to RA2 with new NEI handler.
    The Algae Pond floor now needs at least 75 machine casings, up from 64, and that applies to the old controller you already have standing. The floor has only 80 usable positions and hatches do not count, so a pond with more than five hatches or buses unforms on load; take the extras out or rebuild it. Parallels also drop from 2 to 1. Both controllers are called Algae Farm in game.
  • [items disappear] #5646 Completed the removal of deprecated Tool Casting Machines that were marked for removal since version 2.8.
    Tool Casting Machines have been removed from the game; any placed instances will disappear on world load.
  • [items disappear] #5648 Completed the removal of the deprecated Slicing Machine that was marked for removal since version 2.8.
    Slicing Machines have been removed from the game; any placed instances will disappear on world load.
  • [items disappear] #5650 Completed the removal of single-amp wireless dynamos that were deprecated since version 2.8.
    Single-amp Wireless Dynamos have been removed from the game; any placed instances will disappear on world load.
  • [items disappear] #5651 Formally removed deprecated laser source and target hatches rather than just hiding them.
    The deprecated laser source and target hatches are removed from the game; any you have placed disappear on world load and any multiblock that used one will unform. Swap them for the current laser hatches before you update.
  • [world data] #5652 Integrated CropsNH mod functionality by removing IC2 fertilizer and liquid fertilizer references, along with obsolete UN fertilizers and the crop manager. Recipes and functionality have been migrated to CropsNH.
    Crop Harvestors and the EV and higher Crop Gene Extractors, Synthesizers and Seed Replicators are converted to their CropsNH equivalents in place as your save loads. The LV, MV and HV Crop Gene Extractors and Crop Gene Synthesizers are deleted - placed ones turn to air and stacks turn to stone, so break and scrap them before you update.
  • [recipes changed] #5665 Added 256A Dynamo Hatches for UV-UXV tiers to reduce the need for stacking multiple 64A hatches. Rebalanced energy and dynamo hatch fluids across all tiers (4A-256A) to use more appropriate tier-specific materials instead of Silver/Electrum/Tungsten.
    Multi-amp energy and dynamo hatch assembler recipes (4A, 16A and 64A, EV through UXV) now take tier-appropriate molten metals instead of Silver, Electrum and Tungsten. Re-scan or re-make your stored crafting patterns for these hatches before you queue any. The new 256A dynamo hatches are additive, UV through UXV.
  • [recipes changed] #5668 Moved the Forge Hammer space/time recipe from Forge Hammer to the Spinmatron's heavy mode for thematic consistency. Increased Spinmatron heavy mode power consumption by 16x to balance its power output.
    The Forge Hammer recipe that splits molten SpaceTime into Space and Time is gone. It moved to the Spinmatron (new in 2.9.0) in Heavy mode, which needs a T3+ structure and 16x the EU of the other modes. Any Forge Hammer line feeding SpaceTime stalls until you build one.
  • [recipes changed] #5669 Deprecated the wire extruder mold and removed its uses throughout GT5U. The kevlar spinneret recipe now uses a rod mold instead. Wire mold recipes in the extruder itself will be removed in a future PR.
    The Kevlar Spinneret assembler recipe now takes 16 Extruder Shape (Rod) instead of 16 Extruder Shape (Wire) - fix that pattern. The wire mold itself is not removed and remains usable in the Extruder; only the White Dwarf version can no longer be crafted.
  • [world data] #5771 Completely reworked CAL imprint and sliced circuit system to be NBT-independent and enum-based. Old imprints show deprecation warnings and auto-convert to new format when used; fixes CAL functionality issues.
    CAL imprints and sliced circuits are now NBT-independent; place an old item in a crafting grid to convert it to the new meta-id linked version, and re-do any AE2 patterns or autocrafting that produced or consumed the old NBT imprints, since the new ones are different item metas.
  • [read before updating] #5820 Removed the Poo Collector machine and all associated content.
    Poop line and Poo Collector machine removed; farms using this for agricultural chemistry or coal tar will need alternatives.
  • [items disappear] #5821 Removed the Pest Killer machine and all associated code.
    The Pest Killer no longer exists: placed machines disappear from an existing world.
  • [read before updating] #5833 Machine scanner output is now assembled from translation keys so the client can show it in the reader's own language, instead of being built into finished text on the server.
    OpenComputers programs that read a GregTech machine through an Adapter have to be rewritten. getSensorInformation() used to hand back finished, coloured text; it now hands back the untranslated keys the client turns into that text, so a line that read "Efficiency: 100 %" arrives as GT5U.multiblock.scanner.efficiency with its arguments appended after it. GregTech's own scanner and its metrics cover were taught to decode this, but the Computronics bridge passes the strings straight through. Two further traps for anything that indexes the array: a line is emitted only when it applies, so a stopped machine hands back fewer entries than a running one and every position after the gap moves, and numbers now arrive with thousands separators, switching to exponential notation above a trillion, which defeats tonumber(). Around 160 machines are affected, GregTech, TecTech, GT++, GoodGenerator, Bartworks, KubaTech, KekzTech and the Space Elevator among them.
  • [optional rebuild] #5875 Added a new structure for the Extreme Industrial Greenhouse multiblock. The greenhouse now has improved visual structure, auto-tilling of fertilized dirt, automatic water placement, and support for autoplace.
    Existing Extreme Industrial Greenhouses keep validating their old structure on their own; their stored NBT is tagged revision 1. If you break and re-place the controller it will accept nothing but the new structure, so rebuild before you move one. New builds get auto-tilling, auto-water and autoplace; old ones do not.
  • [optional rebuild] #5877 Restructured the Wire Mill multiblock with tiered speed bonuses. The new Wire Mill provides +50% speed scaling per tier up to 400% at MAX tier, improving late-game wire production efficiency.
    Existing Industrial Wiremills keep running as the Legacy controller at up to 300% pipe-tier speed. Convert the controller (shapeless, in NEI) and rebuild only if you want the new 400% cap and the roomier casing layout, and note that Nanochip recipes now require the new controller.
  • [optional rebuild] #5885 Refactored the Centrifuge multiblock with a new structure design by Ducked, deprecating the old controller while maintaining backward compatibility.
    Existing Industrial Centrifuges keep running as the Legacy controller. Convert to the new controller and rebuild only if you want the roomier hatch layout and the momentum mechanic; the Legacy controller goes away in the next major version.
  • [optional rebuild] #5888 Refactored the Industrial Packager (Amazon Warehouse) multiblock with a new structure design, improving tiering and performance bonuses.
    Existing Amazon Warehousing Depots keep running as the Legacy controller at their flat 600% speed. The new build scales from 100% to 800% with the item pipe casing tier, so a Tin-pipe build is slower than what you already have; use Black Plutonium pipes to come out ahead. Nanochip recipes now consume the new controller, so convert your spares.
  • [optional rebuild] #5893 Refactored the Mega Chemical Reactor with a new structure design offering more flexible hatch placement and improved gameplay balance.
    Existing Mega Chemical Reactors keep running as the Legacy controller. The new controller uses the identical block layout, so swapping the controller with the NEI shapeless recipe is enough; after that any hatch can sit on any Chemically Inert Machine Casing. Note the new one takes exactly one energy hatch, capped by your glass tier (laser hatches need UV glass or better).
  • [optional rebuild] #5908 Restructures the Industrial Electrolyzer multiblock with a new, improved design. Increases parallelization from 2 to 4 per tier to reduce machine spam. The old controller is deprecated with a -Legacy suffix while maintaining a conversion recipe for existing structures.
    Your Industrial Electrolyzer keeps running as the Legacy controller at its old 2 parallels per tier. Convert or craft the new controller only if you want the redesigned structure and 4 parallels per tier.
  • [optional rebuild] #5963 Overhauled the Industrial Mixer multiblock structure with improved casings, performance tuning, and a new structure design. The old version is deprecated but continues to work for backward compatibility.
    Your Industrial Mixing Machine keeps running as the Legacy controller. Convert or craft the new controller only if you want the item-pipe-casing speed scaling.
  • [optional rebuild] #6062 Integrated Ore Factory has been restructured with a new design from the contest, improved performance tuning, and added a control button. The old structure is deprecated as 'Legacy' and a conversion recipe is provided.
    Your Integrated Ore Factory keeps running as the Legacy controller. Craft the new controller, or convert the old one at a crafting table, only if you want the laser-capable structure.
  • [check your build] #6166 The Compact Cyclotron is being deprecated. The COMET controller recipe has been removed, and the machine now displays 'DEPRECATED' in red on its tooltip. New beam-crafting-based recipes replace the old cyclotron-dependent items; old recipes remain with TODOs for removal in version 2.10.
    Check your Compact Cyclotrons: they keep running and their recipes stay registered for this cycle, but the COMET controller can no longer be crafted, so plan the move to the Large Hadron Collider before 2.10.
  • [optional rebuild] #6171 The Industrial Thermal Centrifuge has been completely restructured with a new compact design from a community contest. The new version features tiered coils for speed/EU bonuses, tiered solenoids for parallel processing, and no longer requires maintenance. A legacy version is preserved for existing builds with a conversion recipe provided.
    Your Large Thermal Refinery keeps running as the Legacy controller. Convert the old controller or craft the new one only if you want the coil and solenoid bonuses.
  • [optional rebuild] #6176 The Froth Flotation Cell has been restructured with a new compact design from a community contest. The new version features improved efficiency through tiered elements and requires fewer materials. A legacy version is preserved for existing builds with a conversion recipe.
    Your existing Flotation Cell keeps working as the Legacy controller. Rebuild to the new structure only if you want it - the conversion recipe swaps the old controller for the new one.
  • [optional rebuild] #6182 The Molecular Transformer has been restructured with a new compact design from a community contest. The new version features improved efficiency and layout. A legacy version is preserved for existing builds with a conversion recipe.
    Existing Molecular Transformers keep running as the Legacy controller. Convert the controller and rebuild to the larger community design only if you want it; the Legacy controller goes away in the next major version.
  • [rebuild required] #6191 Fixed symmetry handling for 2-block tall flowers in the Mega Industrial Apiary, ensuring structural layout matches intended design.
    Rebuild the Mega Apiary: three symmetry fixes (#6153, #6183, #6191) changed its structure layout, and the shape in this release is the final one.
  • [optional rebuild] #6251 Refactored boiler multiblocks to use new structure definition with improved base class and casing dependency system. Deprecated old controllers in favor of new -Legacy suffix naming.
    Your existing Large Boilers keep working unchanged as the Legacy controllers. The crafting recipe now yields the new controller, and a shapeless recipe converts an old controller into the new one - rebuild only if you want the new design.
  • [optional rebuild] #6252 Refactored Naquadah Fuel Refinery to use new structure with improved mechanics and hatch placement logic. Deprecated old controller with -Legacy suffix.
    Existing Naquadah Fuel Refineries keep running as the Legacy controller with their old hatch placement. The new design lets hatches sit anywhere; convert the old controller with the NEI migration recipe and rebuild only if you want it. The Legacy controller goes away in the next major version.
  • [optional rebuild] #6257 Refactored Industrial Fishing Pond to use new structure definition with MTEExtendedPowerMultiBlockBase. Deprecated old controller with -Legacy suffix and adjusted water auto-placement.
    Your Zhuhai Fishing Port keeps running as the Legacy controller with its old shape. Craft or convert to the new controller only if you want the redesigned structure and the adjusted water auto-placement.
  • [recipes changed] #6263 Rebalanced RC Water Tank recipe to make it more valuable as the water pump has made it obsolete in late Steam Age and early LV. Steel and Stainless Steel stick requirements adjusted, and Assembler recipes added for completeness.
    You do not have to touch anything you built, and water tanks you have already placed go on working. The GT assembler recipes for the Railcraft water tank block are gone, so an AE2 pattern or an automated line feeding that assembler recipe stops producing until you point it at the new recipe.
  • [optional rebuild] #6271 Completely reworked Industrial Maceration Stack with a larger Tier 2 structure (compensated by 4x speed buff). Old controller renamed to Legacy suffix with a deprecation conversion recipe.
    Existing Maceration Stacks keep running as the Legacy controller, T2 upgrade included. Tier 1's shape is the same as before and Tier 2 is larger and four times faster; convert the old controller in a crafting table (the upgrade tier carries over) and rebuild only if you want the new T2.
  • [items disappear] #6301 GregTech's own material capsules have been removed: the per-material capsule and molten capsule items are no longer registered, and their GT recipes and NEI entries are gone. Forestry's wax and refractory capsules keep working and stay craftable, now at three wax each to match Magic Capsule cost.
    The four GT capsule and molten-capsule item types are unregistered with no replacement, so a GT-fluid-filled wax or refractory capsule you were holding disappears on first load. Almost nobody has these; they were hidden from NEI in 2.8.4. Forestry's own capsules keep working, you just cannot fill them with GT fluids.
  • [optional rebuild] #6310 Restructured Planetary Gas Siphon multiblock: renamed to MTEPlanetaryGasSiphon, reworked structure definition, added legacy support with conversion recipe, and improved tooltips.
    Your Planetary Gas Siphon keeps running as the Legacy controller and keeps processing its recipes. Convert or craft the new controller only if you want the larger structure and the coil speed bonus.
  • [optional rebuild] #6312 Restructured Universal Chemical Fuel Engine multiblock with new structure design. Internal mechanics unchanged; improved layout and buildability.
    Existing UCFE machines continue to work as Legacy version. Craft new UCFE controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6313 Restructured Pyrolyse Oven multiblock with new structure design. Internal mechanics preserved; improved layout and base class updated to MTEExtendedPowerMultiBlockBase.
    Existing Pyrolyse Oven machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6317 Restructured Advanced Implosion Compressor (Density²) with new structure design. Internal mechanics unchanged; improved layout and performance.
    Existing Advanced Implosion Compressor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6319 Restructured Boldarnator (Industrial Rock Breaker) multiblock with new structure design. Internal mechanics unchanged; improved layout and survivalmode buildability.
    Existing Boldarnator (Industrial Rock Breaker) machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6326 Restructured Industrial Extruder multiblock with new design. Increased parallels from 4 to 6 per tier to balance larger structure; improved hatch placement options.
    Existing Industrial Extruder machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6339 Refactors Electric Implosion Compressor with new structure design and improvements to hatch placement flexibility.
    Existing Electric Implosion Compressor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6340 Refactors Large Combustion Engine with improved structure and relaxed hatch placement restrictions.
    Existing Large Combustion Engine machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [recipes changed] #6342 Completely reworks Industrial Arc Furnace with three operating modes (Normal, Blast, Ore), new electrode system, and recipe adjustments. Plasma Arc Furnace is fully deprecated.
    Put a programmed circuit 1 in every arc furnace: the plain arc recipe no longer takes oxygen and will not run without it, and the gas and plasma variants need circuit 11 alongside their fluid. This hits single-block Arc Furnaces and both multiblocks; nothing is voided, the machine just idles until the circuit is there. Your existing Industrial Arc Furnace keeps forming as the deprecated Legacy controller; the new electrode-driven multiblock is a separate machine.
  • [optional rebuild] #6349 Refactors Extreme Combustion Engine with new structure design and extends MTEExtendedPowerMultiBlockBase.
    Existing Extreme Combustion Engine machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [items disappear] #6351 Reworks High-Temperature Gas-Cooled Reactor with new fuel system using meta items instead of NBT, and removes the multiblock floor requirement.
    Every TRISO and BISO fuel pebble is a separate item now. Pebbles made before this update are not converted and disappear on first load; craft them again.
  • [optional rebuild] #6356 Refactors Material Press into separate Industrial Bending Machine and Industrial Forming Press multiblocks with improved structures.
    Material Press split into Bending Machine and Forming Press. Existing machines work as Legacy versions. Craft new controllers or convert old controller via recipe.
  • [optional rebuild] #6359 Refactors Large Naquadah Reactor with new structure design and relaxed hatch placement restrictions.
    Existing Large Naquadah Reactor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6371 Refactored Industrial Washer and Industrial Chemical Bath multiblocks with new structure designs, maintainability improvements, and legacy versions preserved. No gameplay changes.
    Industrial Washer and Chemical Bath reworked. Existing machines work as Legacy versions. Craft new controllers or convert old controllers via recipe.
  • [optional rebuild] #6391 Completely restructured the Industrial Coke Oven multiblock with a new design, scalable from 1 to 16+ coil slices, 2% EU discount per coil tier, and 16 base parallels. The old structure is deprecated with a -Legacy suffix.
    Existing Industrial Coke Oven machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6471 The Steam Grinder structure has been redesigned with a visual update. Build cost increased slightly by 2 ingots.
    Your existing Steam Grinder keeps working - the 2.8.4 shape is still validated as a retained legacy structure. Rebuild to the new layout only if you want the new look (+2 ingots).
  • [optional rebuild] #6473 The Thermal Boiler structure has been reworked with a new design from a community contest. Build cost and dimensions updated, but no mechanics changed.
    Existing Thermal Boiler machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6478 The Cryogenic Freezer structure has been redesigned with updated visuals and improved performance. Max parallel processing increased from 8 to 16 due to higher cost; recipes adjusted and old GT++ recipe map removed.
    Existing Cryogenic Freezer machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6508 Restructured the Infinite Fluid Drilling Rig with a new compact design and improved bonuses. The machine now provides additional parallels per energy hatch tier and eliminates the need for pipes.
    Existing Infinite Fluid Drilling Rig machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6510 Restructured the Drone Centre with a new compact design using class-based casings and improved internal layout. Mechanics remain unchanged.
    Existing Drone Centre machine structure has changed. Rebuild multiblock with new structure or continue using existing structure.
  • [optional rebuild] #6511 Restructured the Tree Farm with improved block placement logic and new casing system. Grass autoplacing improves usability while maintaining all original mechanics.
    Existing Tree Grow Simulator machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • [optional rebuild] #6519 Restructured the Industrial 3D Copying Machine (Chisel) with new compact design and improved internal layout. Mechanics remain unchanged.
    Your existing Industrial 3D Copying Machine keeps working as the Legacy controller. The new 7x5x5 version is a separate machine; the old controller converts into it in a crafting table.
  • [optional rebuild] #6530 Industrial Sledgehammer and Forge Hammer structures have been redesigned with new textures and improved scaling mechanics, including updated performance bonuses and survival buildability.
    Rebuild the Industrial Sledgehammer/Forge Hammer with the new structure; the old -Legacy version is available for recipes.
  • [optional rebuild] #6533 Large Sifter structure has been redesigned with an improved layout, ported to the new extended power multiblock base class for consistency.
    Rebuild the Large Sifter with the new structure; the old -Legacy version is available for recipes.
  • [optional rebuild] #6545 Steam Squasher (steam compressor) structure has been redesigned with a new layout and improved visual appearance.
    Your existing Steam Squasher keeps working; the old shape is retained as a legacy structure. Rebuild to the new layout only if you want it.
  • [optional rebuild] #6546 Large Turbines have been restructured and ported to the new extended power multiblock base for consistency. All turbine variants (Steam, HP Steam, Gas, Plasma) and Supercritical Fluid Turbine received unified structure improvements.
    Rebuild all Large Turbines (Steam, HP Steam, Gas, Plasma) with the new structure; the old -Legacy versions are available for recipes.
  • [optional rebuild] #6548 Mega Blast Furnace has been restructured as ZPM tier with a new mechanic where the hearth heats up during operation, improving efficiency as it runs. New structure design from the contest with updated balancing.
    Your Mega Blast Furnace keeps running exactly as it is and is now registered as the Legacy controller. The ZPM-tier Exothermic Hearth with the hearth-heating mechanic is a separate new machine; craft it, or convert the old controller with the assembler recipe, only if you want it.
  • [rebuild required] #6557 Implements diagnostics system across all multiblocks, fixing Space Mining Module disconnection crashes and Superconductor splitter module input handling.
    Superconductor splitter modules now take a single input hatch: a module built with more than one no longer forms, so remove the extras and rebuild it.
  • [optional rebuild] #6562 Restructures XL Turbines to use a GUI-based turbine slot system instead of rotor assembly, implementing the community-designed structure by VorTex.
    Your existing XL Turbines keep running on the old structure with their Rotor Assembly hatches. If you want the new GUI turbine-slot version, convert the controller with the new recipe and rebuild to the new layout.
  • [read before updating] #6602 TecTech multiblock parameters were redesigned for ModularUI2, and the parametrizer card was ported to the new system.
    OpenComputers programs that drive a TecTech multiblock, including every Space Elevator module, have to be rewritten. The tt_machine component addressed a parameter by hatch and slot number in 2.8.4, through setParameters(hatch, slot, value) and getParameters(hatch, slot); a parameter carries a name now, so setParameter(name, value) writes one, and getParameters() takes no argument and hands back a table of them all. On the Space Miner the names are distance, parallel, cycle, cycleDistance, range and step, and the overdrive and mode settings it had in 2.8.4 are gone. Computronics 1.9.10 is what carries the new component, so both mods have to come from 2.9.0 together.
  • [optional rebuild] #6633 Restructured Industrial Cutting Factory with a new contest-winning design, improved textures, and energy hatch tier balancing based on sawblade tier. Old structure remains available as Legacy version.
    Your Industrial Cutting Factory keeps running as the Legacy controller with its old shape. The new contest structure is a separate controller whose energy hatch tier is capped by its sawblade tier; build or convert to it only if you want it.
  • [items disappear] #6691 Removed PTMEG (Polypropylene Terephthalate Methyl Glycol) and associated chemicals that were only used to craft it. This simplifies the material pool without breaking existing gameplay.
    PTMEG Elastomer, Polytetrahydrofuran, Tetrahydrofuran, Acidicised 1,4-Butanediol, Tungstophosphoric Acid, Toluene Diisocyanate and Toluene Tetramethyl Diisocyanate are all removed, with no recipe to convert them. Their dusts, ingots, plates, cells and placed blocks disappear on first load, turning into dirt or nameless stacks, and any of their fluids left in tanks or pipes is lost. ZPM and higher recipes no longer use PTMEG.
  • [optional rebuild] #6714 Complete structure rework of the Mega Vacuum Freezer (MVF) with new design, mechanics, and gameplay changes. The fridge now gradually cools down during operation, increasing speed multiplier up to 1.5x over about 5 minutes of continuous use. Old MVF controller is deprecated and renamed to 'Legacy' variant.
    Your Mega Vacuum Freezer keeps running exactly as it is and is already the Legacy controller. The new ZPM Endothermic Fridge is a separate controller; craft it, or convert the old one with the assembler recipe, only if you want it.
  • [items disappear] #6807 Removed White Metal from the game entirely. It had no practical uses and was considered bloat. Players with White Metal items will find them removed.
    White Metal is deleted. Any ingots, dusts, plates, springs, fine wire or foil you hold disappear on first load, and nothing converts them.
  • [optional rebuild] #6868 Reworked Mega Distillation Tower with a new structure design from a contest submission, significantly increasing its power and speed capabilities while maintaining lower EU efficiency than the Dangote distillery. Added new distillery recipe support.
    Existing Mega Distillation Towers keep running as the Legacy controller. The new one is a five-tier LuV/Naquadah machine (3 output hatches at T1 up to 11 at T5) that also runs distillery recipes. Convert the old controller in an assembler at LuV; the tier change means there is no crafting-table recipe.
  • [check your build] #6908 Windmill multiblock ported to ModularUI2 with major usability improvements. Wind conditions now show maintenance errors instead of silently failing, recipe progress displays correctly, and wind speed now affects parallels instead of recipe speed for more predictable behavior.
    Your windmill keeps its shape and stays formed. Check your build only for where it stands: wind speed now sets the parallel count instead of the recipe speed, and the machine stops with a maintenance error when the wind is non-existent or too strong, so a windmill in a very windy or dead-calm spot may sit idle where it used to run.
  • [recipes changed] #6963 Integrated Eye of Harmony recipes into BEC (EM2 integration), replacing some Dyson sphere materials with tier-appropriate equivalents. Material costs remain equivalent to existing EoH recipes overall.
    Every Eye of Harmony component recipe, the reinforced temporal and spatial casings, the infinite spacetime boundary casing and all tiers of the three field generators, has moved off the Research Station assembly line into the Bose-Einstein Condensate assembler. An existing assembly line for these parts finds no recipe, so build the BEC first.
  • [optional rebuild] #7013 Mega Oil Cracker received a structure rework with new casings, symmetrical layout, and improved scaling factor that provides better use of coils. The old structure is deprecated with a -Legacy suffix, and old recipes include a conversion recipe to the new controller.
    Existing Mega Oil Crackers keep running as the Legacy controller. The new symmetric build uses the new casings and rescales the coil bonus so coils above HSS-G are worth it. Convert the old controller in an assembler at LuV and rebuild only if you want it.
  • [check your build] #7025 Complete borosilicate glass system refactor: new rendering system uses standard block rendering instead of baked CTM, brand new textures for all tiers, and addition of a new UXV glass tier. RPP glass naming fixed, and neutronium+ glass is now fully transparent while normal-osmium retain dirty backgrounds.
    Every borosilicate block already placed, and every one sitting in a chest, is converted when the world loads, so none of it has to be crafted or put back by hand. Cosmic Neutronium glass becomes Infinity glass and old Infinity becomes Transcendent, which hands you a free tier of material. Coloured borosilicate is gone: those blocks come back as plain borosilicate. Two tier requirements did move, so check your build if you are past UMV. The multis that capped glass at UMV now want UXV glass for UXV energy hatches and lasers, and Exo-Foundry Containment Glass counts as UHV instead of UEV, so a UEV structure built from it stops forming.
  • [rebuild required] #7029 Fixed structural symmetry issues in BEC Storage, BEC Assembler, Assembly Complex, and Forge of Gods: added missing glass blocks, removed asymmetric archway, and aligned ring sections. Existing structures will unform and require rebuilding.
    Symmetry fixes unform your existing Antimatter Forge, Antimatter Generator and Forge of Gods rings - a few casings moved or changed type, so rebuild those sections against the new structure hologram. BEC Storage, the BEC Assembler and the Assembly Complex changed too, but those exist only in 2.9 dev worlds.
  • [check your build] #7299 Standardized multiblock construction tooltips across all machines: changed dimension format from (WxHxL) to (LxWxH), unified structure error order, standardized hatch/casing requirements, removed TecTech mentions, and added master channel descriptions.
    Check your existing Large Turbines, Large Chemical Reactor, Electric Compressor, Fusion Reactors, Industrial Arc Furnace, Spinmatron, DTPF, Accelerated Biological Coordinator and Eye of Harmony. Each of those now tests for hatches it never tested for, and one that is missing stops the structure forming until you add it.
  • [recipes changed] #7373 Reduced Shirabon processing times and removed direct crafting recipes for IV+ tier material components (foils, gears, etc.). Shirabon mass decreased from 294 to 128, EU consumption lowered to 60% of full recipe amplitude, and superdense plate recipes adjusted to compensate.
    Crafting table recipes for materials at tier IV and above are gone: plate from ingot, foil from plate, sticks, rings, screws, gears, small gears, rotors, dust to and from small and tiny dust, gem splitting and small pipes. Re-encode any autocrafting pattern that used a hammer, file, saw or wrench on those materials. Shirabon also processes about five times faster.
  • [recipes changed] #7428 Eternity and Magmatter nanites now cost more Universium nanites to craft, making them genuine late-game bottlenecks. Related recipes adjusted to compensate.
    Nothing you built has to come down. If you produce Eternity or MagMatter nanites, re-plan the cost: one Eternity nanite per run instead of four, using two Universium nanites, eight Eternity blocks and 64000 L of primordial matter each; MagMatter nanites now take four Universium nanites instead of one. Re-encode any autocrafting patterns for those two nanites, for the Nanite Framework and for the MHDCSM implosion recipe, which all changed inputs.
  • [rebuild required] #7468 Removes durability from photolithographic masks and replaces the focus input bus with a regular input bus on the Target Chamber, allowing masks to stack and work with stocking input buses. Recipe amounts are adjusted proportionally to account for mask durability removal.
    Your Target Chamber will not re-form until you rebuild one block: break the Focus Input Bus in the top centre casing and put a normal Input Bus there, so the machine has two. The Focus Input Bus is now unused. Masks no longer wear out and stack to 64, but a part-used mask matches no recipe after updating. Recipes are batched per mask now: one run takes a mask plus 100 target items, 75 for the Living Crystal Chip.
  • [recipes changed] #7569 Removed the ability to saw unstable ingots into nuggets, closing an exploit that bypassed the intended trade-off (1 diamond for full ingots vs 9 diamonds for nuggets). Unstable ingots must now be crafted as full ingots or properly converted to 9 nuggets.
    After updating, the crafting table recipe that turned one unstable ingot into 8 unstable nuggets with a saw is gone. If you had that recipe encoded in an autocrafting pattern, delete or re-encode it. An alloy smelter with a nugget mold splits one unstable ingot into 9 nuggets as before.
  • [check your build] #7576 Rebalanced the Mega Distillation Tower (MDT) and Dangote to give MDT a competitive use case. MDT is now faster at distillation and distillery recipes with higher overclocks, while Dangote remains superior for fewer overclocks. Also fixed two bugs affecting MDT performance.
    Dangote (the Advanced Distillation Tower) is about 14% slower in distillation-tower mode, a 3.5x speed bonus dropping to 3x. Check your Dangote lines: they keep running, just at reduced throughput.
  • [recipes changed] #7635 Dragonblood recipe balance adjusted: Mixer recipe duration increased 3x to 2100s, and DEFC coil tier requirement reduced from T3 to T2. This addresses balance issues introduced by recent Mixer changes.
    Nothing you built has to come down. The non-magic mixer route to molten dragonblood now takes 2100 seconds instead of 700, so an existing line produces a third as much per mixer; add mixers if you depend on it. The Draconic Evolution Fusion Crafter recipes for dragonblood now accept a tier 2 casing instead of tier 3, which only makes them easier.
  • [world data] #7919 Fixed a critical bug that could permanently corrupt the GregTech ore generation pattern file, which likely caused many unexplained oregen issues. Added a command to manually inspect and adjust the pattern if needed.
    Run /gt oregenpattern once after updating: it prints your world's ore vein pattern and where that value came from. If it says AXISSYMMETRICAL for a world made after July 2023, or that the pattern was guessed, fix it with /gt oregenpattern set EQUAL_SPACING confirm. Veins that already generated do not move, so do not regenerate chunks. Note that 2.8.4 misreads the upgraded file if you downgrade later.

New Features ​

  • #7948 Added raw value field display to MTEBasicMachine EU bar rendering and lang entry. - @cubefury
    • Added: raw EU bar values
  • #7945 Updated hatch count limit in MTEBECStorage from 20 to 21. - @Ruling-0
  • #7940 Added next nanite readout to MTEBECIONode and MTEBECIONodeGui with remaining tick calculation and lang entries. - @ReignOfFROZE
    • Added: next nanite readout, remaining ticks display
  • #7885 Added NEI search alias 'Debug' to ME output bus, ME output hatch, LV Muffler Hatch, and Auto Maintenance Hatches in LoaderMetaTileEntities and MachineLoader. - @UltraProdigy
    • Added: Debug NEI alias for ME output bus, Debug NEI alias for ME output hatch, Debug NEI alias for LV Muffler Hatch, Debug NEI alias for Auto Maintenance Hatches
  • #7877 Added VajraGui UI component and expanded ToolVajra to store selected speed in item NBT, cycle modes on keybind input, and display active speed in tooltips. Updated access transformer for GUI visibility. - @DreamYao520
    • Added: Vajra Speed Switch keybind, speed selection UI, speed mode display in tooltip
    • Closes GTNH#26460
  • #7860 Expanded MTESplitterModuleGui and NACRecipeMapBackend to support 16 slots, added color rule wildcard mode, implemented item renaming preservation, added custom name middle-click handler, added tier-based power scaling to MTEAssemblyMatrixModule. - @serenibyss
    • Added: 16-slot splitter item rules support, Wildcard color rule mode, Custom name middle-click binding, Real item support in splitter rules, Tier-based power scaling for Matrix module
  • #7853 Created INonConsumedItemDisplay and IPhysicalCircuitDisplay interfaces with shared helper methods. Extended MTEBasicMachine and MTEHatchSolidifier to scan input slots and report circuit/non-consumed items. Shortened display names by extracting parenthesised portions. - @Eldrinn-Elantey
    • Added: Physical circuit display in interface names, Non-consumed item detection for single blocks
  • #7852 Added configuration toggle in Client config class and conditional rendering in ItemMachines tooltip generation. - @Eldrinn-Elantey
    • Added: Client config option: Show Energy Capacity
  • #7843 Extended MTEIceCreamMachine with NBT-based roll tracking, coin consumption on craft, and output blocking logic. - @Ranzuu
    • Added: Ice cream crafting rolls (1-8 flavors)
  • #7840 Enhanced MTEBasicMachine WAILA generation with improved ColorUtils formatting, better text organization and GTUtility helper methods for display. - @evgengoldwar
    • Added: Improved machine WAILA formatting
  • #7836 Extended GTWaila and MTEBasicMachine to provide detailed slot and fluid state information, added ColorUtils formatting support and updated language strings for tooltip display. - @evgengoldwar
    • Added: Enhanced single machine WAILA display
  • #7834 Extended MTEDigitalChestBase unloading logic to support matter clusters alongside normal items. - @Pxx500
    • Added: Matter cluster unloading from superchests
  • #7827 Added ItemDysonSwarmParts with solar sail variant to ItemList enum. Added texture and localization entries for solar sails and nanofiber overlays. - @Auynonymous
    • Added: Solar Sail item, Fine-wire overlay for nanofibers
  • #7797 Extended MetaGeneratedItem02 ice cream initialization to apply potion effect payloads to each ice cream flavor, with configurable effect type, level, and duration. - @Ranzuu
    • Added: potion effects for 28+ ice cream flavors
  • #7785 MTEBoiler and MTEBoilerSolar: added GTWaila integration to display enhanced tooltip data. Added localization strings. - @evgengoldwar
    • Added: WAILA tooltip for boilers
  • #7772 GTLoggers, GTMod, GTLog, GTModHandler: new conditional logger that writes useless recipe removal attempts to UselessRecipeRemovals.log when -Dgt.recipe.remove_delayed.debug=true is enabled. - @boubou19
    • Added: debug logging for useless recipe removals
  • #7752 Added acid-base neutralization recipe in PlatinumSludgeRecipes: NaOH + HNO₃ → NaNO₃ + H₂O. - @Nana-Sakura
    • Added: Sodium hydroxide and nitric acid neutralization recipe
  • #7723 Extended GTRecipeBuilder with variant-aware recipe skipping logic. Added VariantNames enum and updated Mods enum to support variant detection. - @GDCloudstrike
    • Added: Recipe builder variant skip functionality, VariantNames enum, Variant detection in Mods enum
  • #7717 Added WAILA configuration options to Client config, extended GTWaila utility class, and updated MetaTileEntity WAILA integration. - @evgengoldwar
    • Added: WAILA settings in client configuration
  • #7708 Updated MTEWindmill structure validation to accept stained hardened clay (terracotta) variants alongside uncolored terracotta blocks. - @isadora-6th
    • Added: Stained hardened clay support in Windmill
    • Fixed: Early-game clay scarcity for Windmill structure
  • #7704 Added wooden sword and spike recipes to AssemblerRecipes loader, reorganized metal sword recipes to circuit 17, unified input layout. - @Angry3vilbot
    • Added: Wooden sword assembler recipe, Wooden spike assembler recipe
  • #7694 Added new larger nanite bus meta tile entity with corresponding ID, item list entry, loader, and language entry. Disabled for PCB factory. - @VortexSo4
    • Added: Larger nanite bus multiblock
  • #7676 Extracted hardcoded parentheses string to language file key in GTUtility.java. - @Ranzuu
    • Added: localized parentheses format key
  • #7663 Added three new Assembler recipes in AssemblerRecipes.java matching ExtraUtilities spike crafting recipes without hand tools. - @Angry3vilbot
    • Added: Assembler recipes for metal spikes
  • #7651 Added coloring support in BehaviourSprayColor.java and BehaviourSprayColorInfinite.java, created new ColoredBlockContainer interface in gregtech/api/util/, and extended MetaGeneratedItem01.java with new item behaviors. Dependency added for EnderStorage support. - @querns
    • Added: Ender Chest/Tank coloring with spray cans, Color segment copying with Infinite Spray Can, ColoredBlockContainer interface
  • #7623 Increased input hatch count in MTEMegaDistillationTower.java. - @chrombread
    • Added: additional input hatch slots
  • #7621 Updated MTELargeFusionComputer4.java, MTELargeFusionComputer5.java, and base MTELargeFusionComputer.java to allow tier-matched Transparent Glass casings. - @Yoshy2002
    • Added: Transparent Glass support for Mk4/Mk5 fusion reactors
  • #7619 Added "spass" nickname alias to TileEntityModuleAssembler.java. - @MLGfruitshoot
    • Added: "spass" nickname for Space Assembler
  • #7616 Updated AntimatterForge.java and AntimatterGenerator.java to accept Transparent Glass as a valid alternative casing. Dependency bump on BlockRenderer for additional glass channel support. - @Auynonymous
    • Added: Transparent Glass as SLAM casing option
  • #7611 Modified BlockMachines.java and MTEDigitalTankBase.java to reset fluid lock when shift-breaking an empty tank, while preserving the lock for tanks still containing fluid. - @Eldrinn-Elantey
    • Added: fluid lock reset on shift-break
  • #7606 Corrected fuel selection logic in MTELargeCombustionEngine and MTEExtremeCombustionEngine to properly fall back to alternate fuels. - @Eldrinn-Elantey
    • Fixed: Fuel fallback in combustion engines
  • #7598 Added jade autoclave recipe in MaterialsInit following existing pattern for other gem-only materials. - @fehling135
    • Added: Jade dust to gem autoclave recipe
  • #7596 Updated dependencies.gradle and refactored PowerfailLayerManager, PowerfailLocationWrapper, and PowerfailRenderStep to support JM6 Navigator API improvements and zoom-based scaling. - @Algent
    • Added: JourneyMap 6 support for power-failure markers
  • #7593 Added GTCreativeHatchSource helper and expanded MTEDebugStructureWriter with custom character and text display mappings for better debugging visualization. - @evgengoldwar
    • Added: DebugWriterHelper utility class, Block/tile entity character replacement system, Custom text display for debug structures
  • #7582 Extended GTNEIDefaultHandler prefix lookup logic to support GT++ material item variants alongside GT and BW materials. - @serenibyss
    • Added: GT++ material support in NEI familiar prefix lookup
  • #7578 Increased character limit in WirelessEnergyHatchGuiHelper laser GUI text fields from previous limit to 20. - @MLGfruitshoot
  • #7568 Modified ItemGTToolbox to track pick block location and return multiple tools as a list. Updated ToolboxPickBlockDecider and PickResults to handle tool cycling. Added wire cutters as valid tool type for AE2 blocks. - @querns
    • Added: tool cycling on repeated Pick Block, wire cutters for AE2 blocks
  • #7561 Added vanilla crafting method overrides to ItemGTToolbox to prevent toolbox consumption; added tooltip warning for special toolbox recipes indicating tool selection doesn't matter. - @querns
    • Added: Toolbox non-consumption in shaped/shapeless recipes, Toolbox recipe warning tooltip
  • #7552 Modified GlassTier.java to adjust UHV+ borosilicate properties; added EBF and chemical bath recipes for transparent/foggy conversion; added new borosilicate glass items to BorosilicateGlass API and ItemRegistry; added new CTM textures and language entries. - @Auynonymous
    • Added: Transparent borosilicate glass alternatives for UHV+, EBF recipes for fogging borosilicate glass, Chemical bath recipes for clearing borosilicate glass, Transparent borosilicate glass textures
  • #7549 Added MTEIceCreamMachine single-block machine with 415 lines of code; created 55 new ice cream item types in MetaGeneratedItem02; added IceCreamMachineRecipes with 109 lines defining recipe logic; registered new recipe map IceCreamMachineFrontend. - @Ranzuu
    • Added: Ice Cream Machine (new basic machine), 55 ice cream item variants, IceCreamMachine recipe map, Ice cream machine recipes and logic, Machine model and textures
  • #7546 Added IPhysicalCircuitDisplay interface implemented by MTEHatchInputBus and MTEHatchInputBusME; CommonBaseMetaTileEntity merges physical circuit numbers with ghost circuits; RecipeMap now exposes cached set of non-consumed input item IDs for buses to cross-reference. - @Eldrinn-Elantey
    • Added: IPhysicalCircuitDisplay interface, Physical circuit display in input bus AE2 interface names, Non-consumed item display for input buses, RecipeMap caching of non-consumed item IDs
  • #7544 Added 519 lines of fluid-input Electrolyzer recipes in ElectrolyzerRecipes.java; single gaseous byproducts use fluid output, multiple byproducts use the larger as fluid output with rest as capsules. - @Eldrinn-Elantey
    • Added: 48 fluid-input Electrolyzer recipes, Fluid output variants for capsule-only gases and liquids
  • #7538 Enhanced CameraViewportManager and related GUI panels with group tracking, energy display, and improved text contrast; added lang keys for group information. - @RealSilverMoon
    • Added: drone energy data to WAILA, group info display, CameraViewportManager group tracking
    • Closes GTNH#25998
  • #7526 Added separate burning drop maps in EntityDeathHandler and ItemsFoods for fire-killed mobs; falls back to default drop map if burning map is empty. - @wlhlm
    • Added: cooked meat drops from burning mobs, burning death drop maps
  • #7516 Added WAILA tooltip provider info to MTEUniversalChemicalFuelEngine; removed dead code and disabled Spotless formatting for a 2D array structure string. - @Sanduhr32
    • Added: WAILA info for UCFE
    • Removed: dead code
  • #7514 Added tooltip logic to MetaGeneratedItem01, Werkstoff, and BWMetaGeneratedItems; reused GT++ lang keys and config toggles (showHotIngotText, showRadioactiveText) and added new showToxicText config. Removed deprecated Materials.isRadioactive(). - @Eldrinn-Elantey
    • Added: toxic item tooltip, showToxicText config
    • Removed: Materials.isRadioactive() stub method
  • #7511 Added enableStackWatcher config to MachineStats and ISmartInputHatch; modified MTEHatchInputBusME and MTEHatchInputME to conditionally enable StackWatcher based on config. - @AnsonYeung
    • Added: enableStackWatcher config option
  • #7506 Added LevitationBehavior class and registered it in ArmorActionManager and MechArmorAugmentRegistries. - @Spaghetti-OberNub
    • Added: levitation mode, LevitationBehavior
  • #7490 Updated MTEFrothFlotationCell casing amount validation and increased maximum hatch slots to allow 5 required hatches plus 10 additional hatches. - @Yoshy2002
    • Fixed: Flotation Cell tooltip casing count
  • #7478 Added Quartz Glass and Vibrant Quartz Glass to GlassTier EV tier list. - @flamingowrangler2869
    • Added: AE2 Quartz Glass support for EV tier, Vibrant Quartz Glass support for EV tier
  • #7475 Modified BlockMachines to check silk touch enchantment when harvesting and preserve NBT data accordingly. - @AnsonYeung
    • Fixed: Vajra right-click opening GUIs
    • Closes GTNH#25709
  • #7472 Enhanced HatchElementBuilder to support autoplace for holoprojector by adding rotation-aware hatch placement logic; updated multiple multiblock controllers (Exothermic Hearth, Beam Multi, LINAC, Source Chamber, Synchrotron) to use holoprojector autoplace. - @MLGfruitshoot
    • Added: holoprojector hatch autoplace support
    • Fixed: Hologram Projector failing to build certain multiblocks
    • Closes GTNH#25760
  • #7464 Added GTDebugCommand class with ore-showroom subcommand and OreShowroom utility class to procedurally generate showroom structures using OreMixes data and stone types. Requires OP4/cheats enabled. - @Algent
    • Added: ore-showroom debug command, OreShowroom structure generator
  • #7457 Extended MTEIntegratedOreFactory voiding logic to include endstone dust in the stone dust voidable category. - @MLGfruitshoot
    • Added: Endstone dust voiding option in IOF
    • Closes GTNH#24877
  • #7456 Updated GTWaila and TTRenderGTProgressBar to display progress bar when machine is actively working even if work display is disabled. - @Emilgardis
  • #7454 Updated MTEFluidPipe shutter logic to account for cases where adjacent pipes have different fluid fill states (one full, one empty). - @Ghoose1
  • #7452 Added ARROW_6_WHITE_PRE texture to GTGuiTextures and updated MTEFilterGui and MTESpecialFilterBaseGui to use the texture instead of direct rectangle rendering. - @Ranzuu
    • Added: ARROW_6_WHITE_PRE texture asset
  • #7448 Added input filter toggle logic to MTEDigitalTankBase, allowing screwdriver+sneak combination to toggle item filtering (off by default). - @Eldrinn-Elantey
    • Added: Input item filter toggle for Digital Tanks
  • #7446 Implemented custom soulbound behavior in ArmorEventHandlers and SoulboundBehavior, added lifecycle hooks (onAugmentAdded/onAugmentRemoved) to IArmorBehavior interface, registered new augment in MechArmorAugmentRegistries. - @Spaghetti-OberNub
    • Added: Soulbound Augment item, SoulboundBehavior implementation, ArmorEventHandlers for death recovery logic, onAugmentAdded/onAugmentRemoved lifecycle methods
  • #7412 Enhanced MechArmorBase and ModelMechArmor with dynamic overlay coloring based on frame tier. Uses combined texture atlas at 64px offset to avoid additional texture binds. - @Spaghetti-OberNub
    • Added: dynamic armor overlay rendering
  • #7394 Added NEI search alias annotations to ItemAugment and MechArmorBase classes and added corresponding localization strings. - @FourIsTheNumber
    • Added: NEI search aliases for Mechanical Armor components
  • #7385 Removed rotation restriction in MTEElementalDuplicator. - @MLGfruitshoot
    • Removed: rotation lock restriction
  • #7380 Added NodeGCEnergyHandler and Galacticraft compatibility checks to GenerateNodeMapPower; removed unused GT→GC energy conversion code from GTGCCompat. - @FourIsTheNumber
    • Added: NodeGCEnergyHandler, GC machine compatibility
    • Removed: unused GT EU → GC GJ conversion code
  • #7356 AntimatterForge contained antimatter display now updates in real-time only when inactive, showing cycle-start value when active. - @1328116700
    • Fixed: antimatter value flickering in SSASS GUI
  • #7351 GTPowerfailTracker and SpaceProjectManager now check GTNH team memberships before falling back to space project teams. - @Sanduhr32
    • Fixed: powerfail notifications only showing to machine owner
    • Closes GTNH#25670
  • #7349 RecipeMaps now includes a duration validator for BHC-only recipes that caps them at 4500s and throws an error if exceeded. - @FourIsTheNumber
    • Added: BHC recipe duration validator
    • Fixed: potential BHC recipe duration crashes
  • #7344 CircuitPartsItem imprint board autoclave recipe modified to ensure guaranteed output. - @MLGfruitshoot
  • #7343 TextureSet now supports withStoneOreTextures() method with custom fallback container GTCustomAlphaFallbackBlockIconContainer for stone-specific ore variant textures. - @Algent
    • Added: per-stone-type ore texture overrides, withStoneOreTextures method, GTCustomAlphaFallbackBlockIconContainer
  • #7342 CoverRegistry now catches and handles cover deserialization failures gracefully, wiping only the failed cover rather than propagating the error. - @AnsonYeung
    • Added: graceful cover load failure handling
    • Fixed: cover NBT errors corrupting entire tile entity
  • #7339 CircuitPartsItem now includes a living mutated solder recipe for guaranteed imprint generation. - @MLGfruitshoot
    • Added: living mutated solder recipe, circuit imprint guarantee
    • Fixed: language file typos
  • #7328 Extended MTEQuantumForceTransformer to support animation toggle via screwdriver interaction using existing behavior patterns from other machines. - @UltraProdigy
    • Added: QFT animation toggle
  • #7307 Added getOreVariants() method to ModDimensionDef and supporting enums in DimensionDef, GTStones, StoneType, and OreMixes to catalog explorable ore types. Updated recipe loaders to use this new data. - @boubou19
    • Added: Ore variants API method, Ore cataloging in worldgen dimensions
    • Closes GTNH#24927
  • #7300 Added getter method for max glass tier in GlassTier class. - @AnsonYeung
    • Added: max glass tier API
  • #7298 Added Alumentum fuel option to RecipeMaps in Primitive Blast Furnace recipes. - @StellaCaerulea
    • Added: Alumentum as PBF fuel
  • #7292 Removed UMV/UXV CoAL and Convergence recipes from ComponentAssemblyLineMiscRecipes, added to BECRecipes. - @Ruling-0
    • Added: BEC recipes for UMV/UXV CoAL and Convergence
    • Removed: Assembly Line recipes for UMV/UXV CoAL and Convergence
  • #7291 Added alternative BEC recipes for God Forge ring blocks in new BECRecipes loader. Removed old Assembly Line recipes from ResearchStationAssemblyLine. Registered loader in GTMod. - @Ruling-0
    • Added: BEC recipes for God Forge components
    • Removed: Assembly Line recipes for God Forge ring blocks
  • #7284 Added MTEItemPipe#onLeftclick override that mirrors fluid pipe implementation: preserves mConnections, carries over transit items and routing state, drops overflow if new pipe has fewer slots, sends chat feedback, returns old pipe to inventory except in creative mode. - @feazy-andrei
    • Added: in-place item pipe swapping
  • #7281 Added compact CTM properties to all GT glass blocks. Created new textures for QFT glass, and updated Omnium Infinity and Quark Glass. Refactored quantum glass rendering to support backface CTM. - @Auynonymous
    • Added: Compact CTM support for all GT glass, New QFT glass textures, Overhauled Omnium Infinity and Quark Glass textures
    • Removed: Separate quantum glass renderers
  • #7280 Added shapeless recipe in RecipesMachinesMulti and added optional inputValidator hook to GTShapelessRecipe for NBT-based recipe rejection. - @UltraProdigy
    • Added: T2 Maceration Stack shapeless recipe, inputValidator hook for GTShapelessRecipe
  • #7250 Updated MTERadioHatch GUI color logic in MTERadioHatch to provide better visual feedback for item validity in the filled bar. - @mllfjn
    • Fixed: Radio Hatch displaying filled bar for invalid items
    • Closes GTNH#24748
  • #7245 Enhanced MTEMegaIndustrialApiary with automatic water placement logic during structure formation. - @Yoshy2002
    • Added: Auto water placement in Mega Industrial Apiary
  • #7241 Enhanced GasSiphonRecipes to compute and store EU/t values for each planet/depth. Updated GasSiphonRecipeHandler to display EU/t in NEI. Modified MTEPlanetaryGasSiphon and legacy variant tooltips to explain scaling. - @jude123412
    • Added: EU/t computation for each planet/depth combination, EU/t display line in NEI recipe page
  • #7239 Added glow(boolean) overload to ITextureBuilder interface. Updated GTBlockOre to use inline builder call. Implemented overload in GTTextureBuilder. - @leagris
    • Added: glow(boolean) overload in ITextureBuilder
  • #7235 Updated HatchElement enum to recognize Crib and Proxy as valid input hatch types. Modified MTEEnhancedMultiBlockBase and MTEMultiBlockBase structure check logic to accept these hatch types in input hatch positions. - @Yoshy2002
    • Added: Crib acceptance as input hatch, Proxy acceptance as input hatch
    • Fixed: Crib and Proxy not being accepted as input hatches
  • #7234 Enhanced FakeCuttingFrontend, FakeCuttingSpecialInfo, and GTNEIDefaultHandler to display recipe modifiers and requirements. Updated FakeCuttingRecipes to compute and show energy discounts. Added new ICF recipe catalyst support. - @TotallyNotOndre
    • Added: Cleanroom/LowGrav requirement display, Energy discount per fluid in NEI, ICF catalyst indicator, Overclock accounting in handlers
  • #7228 Added BlockReinforced class and BLOCK_REINFORCED_CONCRETE texture. Updated ItemList and Textures enums. Modified MTERecipeLoader and ChemicalBathRecipes to use the new block. PosteaTransformers updated for compatibility. - @LazyFlesh
    • Added: GT Reinforced Block with textures, ItemList entry for new block
  • #7225 Added glowing property to MaterialBuilder.java, updated material definitions in MaterialsInit.java and Materials.java, modified GTBlockOre.java rendering to apply glow effect. Added animated texture file. - @YannickMG
    • Added: glowing ore property, animated infused stone texture
  • #7219 Major refactor of DetravScannerGUI.java, added search bar, direction arrow rendering, scrollable map, coordinate display on hover. Added helper classes DetravOreMarker and DetravOreMarkerRenderer, updated ProspectingPacket and related UI classes. - @Algent
    • Added: search bar, direction arrow, coordinate tooltip, scrollable map, UI scaling
  • #7218 Added power button widget to MTEIndustrialApiary.java GUI. - @lc-1337
    • Added: power button in Industrial Apiary GUI
  • #7217 Extensive refactor of drone-related classes including EntityDrone.java, new CameraViewportManager and CameraViewportClientManager for camera control, new networking packets (PacketObserveMachine, PacketOpenRemoteMteGui), and DroneCentreGuiUtil updates. Fixed float precision loss in rotor animation by tracking ticks properly. - @RealSilverMoon
    • Added: drone observation mode, search bar in production panel, multi-grouping support, remote GUI access, camera viewport system
    • Fixed: drone model rendering for Tier 4, animation stuttering on long runtimes, layout overlapping, remote interface chunk loading, GUI closing
    • Closes GTNH#25554
  • #7212 Added BlockPad.java with bounce and sticky pad implementations, updated API enums, added textures and language entries. - @LazyFlesh
    • Added: bounce pad block, sticky pad block
    • Removed: IC2 bounce pad (deprecated)
  • #7210 Updated MTECompressedFluidHatch.java to accept toxic air alongside existing fluid types. - @philzin
    • Added: toxic air support in liquid air fluid hatch
  • #7203 Added isGTRenderer method to GregTechAPI.java to provide a stable way for mods like MatterManipulator to identify GT render blocks independent of the underlying renderer implementation. - @RealSilverMoon
    • Added: isGTRenderer API method
  • #7196 Implemented BlockFenceMetal.java and ItemFence.java with corresponding casing registration, recipes, and textures. Updated Lightning Rod and Industrial Chisel to use GT fence, and removed IC2 fence references from loaders. - @LazyFlesh
    • Added: GT Iron Fence block, GT Iron Fence casing, GT Iron Fence crafting recipes, GT Iron Fence item
    • Removed: IC2 iron fence loader entries
  • #7187 Added isAllowedToWork() status display to BaseMetaTileEntity debug information and corresponding lang entry. - @loenaaaa
    • Added: isAllowedToWork() status in tricorder debug output
  • #7186 Added GT Reinforced Glass block variant in BlockGlass1.java with corresponding casing registration, item list entry, and recipes in AssemblerRecipes and FluidSolidifierRecipes. Updated glass tier enum and removed IC2 glass references from several loaders. - @LazyFlesh
    • Added: GT Reinforced Glass block, GT Reinforced Glass casing, GT Reinforced Glass crafting recipes
    • Removed: IC2 reinforced glass loader references
  • #7175 Introduced ArmorAction and ArmorActionManager classes to register and manage armor features, added ArmorRadialMenu UI system with ArmorRadialMenuSession for state management, integrated keybind handling into ArmorAction, and refactored armor behavior classes to use the new system. - @Spaghetti-OberNub
    • Added: ArmorAction, ArmorActionManager, ArmorRadialMenu, ArmorRadialMenuSession, ArmorRadialUIFactory
    • Removed: old ArmorKeybinds class
  • #7166 Adapted CTM logic from GTCopiedBlockTextureRender into GTRenderedTexture to support automatic texture connection. - @tiffit
    • Added: CTM support for GTRenderedTexture
  • #7145 Added getWailaInfo() implementations to MTEElectricBlastFurnace, MTEExothermicHearth, MTEMegaBlastFurnaceLegacy, and MTEAdvEBF to display current heat/temperature. Added corresponding localization keys. - @FourIsTheNumber
    • Added: EBF heat display in WAILA
  • #7139 Updated GTNEIDefaultHandler and MTEBasicMachineBaseGui to filter NEI recipe queries by machine tier, preventing display of recipes exceeding the current tier level. - @TheYoingLad
    • Added: tier filtering for NEI recipe queries
  • #7124 Extended MTEItemStackHandler with slot-specific and stack-specific item limitation methods similar to PR #7116. Updated IMetaTileEntity interface, CommonMetaTileEntity, and MTEElectricAutoWorkbench to use the new API. - @TheYoingLad
    • Added: slot-specific item limits, stack-specific item limits
  • #7122 Added TerrasteelBehavior class implementing IManaDiscountArmor interface, added manaDiscount field to ArmorState, registered augment in MechArmorAugmentRegistries. - @Spaghetti-OberNub
    • Added: Terrasteel Enhancement Augment, Mana discount support in armor
  • #7116 Moved slot and stack validity logic from individual GUI slot implementations to MTE item handler isItemValidForSlot(), allowing GUI slots to inherit filtering automatically. - @TheYoingLad
    • Removed: Duplicate slot filtering in GUI classes
  • #7097 Added MTEHatchDebugDataAccess, registered in MachineLoader with new MetaTileEntity ID and item list entry. - @UltraProdigy
    • Added: Debug Data Access Hatch, Debug hatch item
  • #7096 Added output overflow crash logic back to MTEMultiBlockBase with a false positive fix. Requires PR #6941 to be merged first to avoid triggering on ME output bugs. - @hinyb
    • Added: Output overflow crash mechanism
    • Fixed: Empty output false positive
    • Migration: Fix any parallel calculation errors in your multiblock recipes before this PR is active, or machines using ME outputs will crash when output overflows.
  • #7095 Created MTEFusionComputerGui and refactored MTEFusionComputer to separate GUI logic from controller logic, enabling error and status message display. - @AnsonYeung
    • Added: Fusion Reactor ModularUI2 GUI, Troubleshooting messages in Fusion Reactor
    • Closes GTNH#25223
  • #7086 Added error widget to MTEBasicMachine and MTEBasicMachineBaseGui, updated GTGuiTextures and MTETieredMachineBlockBaseGui to support error display. - @TheYoingLad
    • Added: Error display widget for single-block machines
  • #7062 Introduced INonConsumedItemDisplay interface implemented by MTEBasicMachine; CommonBaseMetaTileEntity.getInterfaceNameSuffix() now appends non-consumed items using itemSlotsSuffixFormat config. Renamed cibManualSlotsSuffixFormat to itemSlotsSuffixFormat. - @Eldrinn-Elantey
    • Added: INonConsumedItemDisplay interface, Non-consumed item display in AE2 terminal names
  • #7060 Added crash-on-overflow logic to MTEMultiBlockBase with a new shutdown reason registered in ShutDownReasonRegistry. Lang strings added for the shutdown message. - @hinyb
    • Added: Shutdown reason for output overflow, Localized crash message
  • #7059 Added three new items to ItemDysonSwarmParts enum, registered in ItemList, added textures with animated metadata. - @flamingowrangler2869
    • Added: Corona-Resistant Drone Case, Hyperfine TrNq+ Radioisomer Pellet, Magnetically Shielded Femtocontroller
  • #7054 Created MTEBioLabGui using ModularUI2 framework, updated recipe map result count in BartWorksRecipeMaps, modified MTEBioLab for new GUI system, added new texture IDs and theme definitions. - @TheYoingLad
    • Added: MTEBioLabGui for ModularUI2
  • #7053 Created new MTEBetterJukeboxGui using ModularUI2, updated texture constants in GTGuiTextures, modified MTEBetterJukebox to support new GUI system. - @TheYoingLad
    • Added: MTEBetterJukeboxGui for ModularUI2, MachineModularSlot disc slot support
  • #7048 Extended GTGuiThemes with disabled button themes, updated GTWidgetThemes parser to support any WidgetTheme subclass, modified MTEBasicMachineBaseGui and multiblock base GUIs to use new theme system. - @TheYoingLad
    • Added: disabled button themes, disabled toggle button themes, auto-disabled output buttons
  • #7044 Implemented comprehensive network analysis system with GTPacketNetworkAnalyzer, PowerNetworkBuilder, GraphNode, and WorldOverlayRenderer for client-side visualization. Integrated with power network graph APIs. - @slprime
    • Added: Network Analyzer Tool, network visualization system, topology/critical/active/amperage/voltage display modes, severity color coding, network packet handlers
  • #7042 Added Strong Bronze Machine Casing recipe to RecipesMachinesCustom. - @LunaDziaba
    • Added: Assembler recipe for Strong Bronze Machine Casing
    • Fixed: Strong Bronze Machine Casing production bottleneck
    • Closes GTNH#25049
  • #7039 Added new movement augment behavior combining speed boost, jump boost, and step assist with 3x multiplier, integrated into MechArmorAugmentRegistries with ItemList reference. - @FourIsTheNumber
    • Added: Boots of the Traveler augment, tripled movement speed boost, step assist augment behavior
  • #7034 Implemented asteroid exclusion zone checking in chaos island generation, adds configurable radius parameter to DimensionDef and GalacticGregConfig, updates Draconic-Evolution dependency. - @Algent
    • Added: asteroid exclusion zone around chaos islands, configurable protection radius
  • #7030 MTETeslaTowerGui: Adjusted button and panel layout for improved UX; added localization string to lang file. - @Luca-Guettinger
    • Fixed: Tesla Tower power pass button and panel UX
  • #7029 BECStructureDefinitions: Fixed 2 missing glass blocks and removed archway. AssemblyComplexStructureString: Adjusted 2 ring sections. ForgeOfGodsRingsStructureString: Adjusted ring alignment. AntimatterStructures: Made related adjustments for consistency. - @Yoshy2002
    • Removed: Asymmetric archway from BEC Storage
    • Fixed: Structure symmetry issues, Missing glass blocks
    • Migration: Symmetry fixes unform your existing Antimatter Forge, Antimatter Generator and Forge of Gods rings - a few casings moved or changed type, so rebuild those sections against the new structure hologram. BEC Storage, the BEC Assembler and the Assembly Complex changed too, but those exist only in 2.9 dev worlds.
  • #7025 Removed RendererGlassBlock and BWBlocksGlass/2 classes; glass now uses standard rendering. Replaced baked CTM with mcpatcher compact CTM allowing full customization. Updated BorosilicateGlass API, rewrote glass registration in ItemRegistry. Modified glass recipes (FluidSolidifier, Pulverizer, removed ChemicalBath recipes). Updated legacy mega machine references. New tier structure with transparent neutronium+ and custom colors. - @Auynonymous
    • Added: UXV borosilicate glass tier, New glass textures for all tiers, Compact CTM support, Custom glass color system
    • Removed: RendererGlassBlock class, BWBlocksGlass and BWBlocksGlass2 classes, Chemical Bath glass recipes, Randlos textures, Material tinting for in-world glass
    • Fixed: RPP glass naming, Glass corner connections
    • Migration: Every borosilicate block already placed, and every one sitting in a chest, is converted when the world loads, so none of it has to be crafted or put back by hand. Cosmic Neutronium glass becomes Infinity glass and old Infinity becomes Transcendent, which hands you a free tier of material. Coloured borosilicate is gone: those blocks come back as plain borosilicate. Two tier requirements did move, so check your build if you are past UMV. The multis that capped glass at UMV now want UXV glass for UXV energy hatches and lasers, and Exo-Foundry Containment Glass counts as UHV instead of UEV, so a UEV structure built from it stops forming.
  • #7024 AugmentBuilder: Expanded texture storage to 4 slots for Helmet, Chestplate, Leggings, Boots. MechArmorAugmentRegistries: Updated augment definitions with per-piece textures. MechanicalArmorRenderer: Modified to respect piece-specific textures. - @Spaghetti-OberNub
    • Added: Per-piece texture slots for augments
  • #7022 Created new MTEHatchLoS class with 428 lines implementing line-of-sight detection logic. Added IHasWorldObjectAndCoords interface for coordinate tracking. Updated MTEBECMultiblockBase with new hatch support. Refactored MTEBECAssembler and MTEBECIONode with improved connector logic. Added new MTE ID registration and item list entry. - @RecursivePineapple
    • Added: Line-of-Sight Connector Hatch, IHasWorldObjectAndCoords interface, Tooltip documentation
  • #7019 Added ICasingTextureProvider interface; BlockMachines#getIcon returns background texture via provider. Updated relevant casing CTMs to connect by texture. SBRWorldContext: changed nextUp/nextDown calls to add/subtract LAYER_OFFSET for z-fighting fix. Dependency version bump included. - @tiffit
    • Added: ICasingTextureProvider interface, CTM support for BlockMachines
    • Fixed: Z-fighting issues with compact CTM
  • #7013 Created new MTEMegaOilCracker class replacing old structure; deprecated old controller as MTEMegaOilCrackerLegacy. Updated base class to MTEExtendedPowerMultiBlockBase, added new textures, implemented ISurvivalConstructable, removed maintenance hatch requirement, and converted hardcoded offsets/bonuses to variables. Recipe changes include conversion recipe in AssemblyLine. - @chrombread
    • Added: New Mega Oil Cracker structure, New controller textures and overlays, Conversion recipe for old to new controller
    • Removed: Maintenance hatch requirement
    • Migration: Existing Mega Oil Crackers keep running as the Legacy controller. The new symmetric build uses the new casings and rescales the coil bonus so coils above HSS-G are worth it. Convert the old controller in an assembler at LuV and rebuild only if you want it.
  • #7008 MTEElectrodeDetectorHatchGui and MTEElectrodeDetectorHatch: Added mode and multiplier information to tooltip display; MTEIndustrialArcFurnace and ArcFurnaceElectrode updated to reflect tooltip changes. - @Pxx500
    • Added: Electrode mode and multiplier display in surge tooltip
  • #6921 Added batch mode support to MTESolarFactory by enabling the SUPPORTS_BATCH_MODE capability flag. - @MLGfruitshoot
    • Added: Batch mode support for Solar Factory
  • #6917 Added tiered Pattern Provider entities (MTEHatchPatternProvider) with per-tier ItemList entries and MetaTileEntity IDs. Updated LoaderMetaTileEntities to register all tiers during machine loading. Large Molecular Assembler recipe updated to use new tier system. - @asquared31415
    • Added: Pattern Provider tiers (LV, MV, HV, EV, IV, LuV, ZPM, UV variants), Tier-specific MetaTileEntity IDs in MetaTileEntityIDs.java, Tier-specific ItemList entries in ItemList.java
    • Fixed: Pattern Provider tooltip accuracy
  • #6915 MTEAtmosphericReconditioner ported to MUI2 with new GUI class (MTEAtmosphericReconditionerGui), updated rotor durability logic in ItemBasicScrubberTurbine, and added LE mode handling for critically damaged rotors. - @TheYoingLad
    • Added: ModularUI2 GUI for Atmospheric Reconditioner, Soldering iron interaction support, LE mode output slot for damaged rotors
    • Fixed: Filter deletion when rotor durability too low, Rotor durability bug
  • #6909 Added output side selection buttons to MTEBasicMachineBaseGui with directional arrow textures (up, down, left, right) and a back-face texture. Buttons integrated into modular UI overlay system via new GTGuiTextures entries. - @FrostyFire1
    • Added: Output side selection buttons (up, down, left, right, back) in singleblock machine GUI, Arrow and back-face button textures, GUI texture definitions in GTGuiTextures
  • #6908 MTEWindmill refactored to use ModularUI2 with new MTEWindmillGui, wind validation moved to maintenance error system via ShutDownReasonRegistry, multiplier bonus calculation reworked, parallels now scale with wind speed while recipe speed remains static. Added new GUI textures and rotor error display. - @mhowell9
    • Added: Wind speed/strength validation with maintenance errors, Recipe progress display in ModularUI2 GUI, Windmill GUI with rotor status and wind indicators, GUI textures for wind display and missing rotor indicator
    • Fixed: Recipe progress not displaying, Wind condition feedback to player
    • Migration: Your windmill keeps its shape and stays formed. Check your build only for where it stands: wind speed now sets the parallel count instead of the recipe speed, and the machine stops with a maintenance error when the wind is non-existent or too strong, so a windmill in a very windy or dead-calm spot may sit idle where it used to run.
  • #6899 Migrated MTEHatchVoidBusGui to MUI2; removed legacy code and simplified FilterSlot by removing redundant deprecated methods. - @TheYoingLad
    • Added: MUI2 Void Bus GUI
    • Removed: Legacy Void Bus GUI code, Deprecated FilterSlot methods
  • #6892 Refactored BioObjectAdder to use enums (BioCultureEnum, BioDataEnum) instead of hard-coded indexing; simplified recipe matching logic and updated loaders to support flexible item ordering. - @Sanduhr32
    • Added: Any-order item insertion for BioLab, BioCultureEnum and BioDataEnum
    • Removed: Hard-coded culture/data item ordering
  • #6890 Migrated MTEHatchInputGui to MUI2; added fluid fill visualization to gauge in MTEHatchBaseGui; removed deprecated getMUI() overrides from various hatch implementations and cleaned up redundant code. - @TheYoingLad
    • Added: Dynamic fluid gauge fill display, MUI2 Input Hatch GUI
    • Removed: Legacy Input Hatch GUI code
  • #6881 Added Jackhammer to acceptable tools in MTEHatchMaintenance.java for hardhammer maintenance compatibility. - @UltraProdigy
    • Added: Jackhammer hardhammer maintenance support
    • Closes GTNH#24922
  • #6876 Integrated coil channel from StructureLib into MTELargeChemicalReactor to enable deterministic coil selection via projector; works with NEI. - @loenaaaa
    • Added: Coil channel support for Large Chemical Reactor
  • #6866 Added structure constraint definitions to MTEBeamMirror for 90° and 180° configurations, updated beam multibase and related classes to enforce proper alignment. - @Sanduhr32
    • Added: 90° and 180° beam mirror forced structures, Mirror structure validation
    • Removed: Flexible beam mirror orientations
  • #6857 Refactored MTEHatchCreativeData to function as an infinite wireless hatch compatible with multiblock structures, replacing screwdriver interaction with right-click activation. - @UltraProdigy
    • Added: Wireless multiblock-compatible hatch functionality
    • Removed: Standalone generator mode
  • #6851 Added wrench offhand detection in ItemMachines to set directional blocking on fluid pipe placement. - @mhowell9
    • Added: Directional pipe placement with offhand wrench
  • #6849 Converted MTEHatchSolidifier GUI to ModularUI2, added GhostMoldSlotWidget and GhostMoldSyncHandler for mold selection, removed legacy GTPacketSetMold network packet system. - @TheYoingLad
    • Added: MTEHatchSolidifierGui ModularUI2 implementation, GhostMoldSlotWidget, GhostMoldSyncHandler
    • Removed: GTPacketSetMold network packet, Legacy MTEHatchSolidifier GUI code
  • #6841 Refactored SettingsPanel and SettingsPanelBuilder to use Grid layout instead of fixed divider sizes. Moved BEC multi GUIs to separate classes. Added Parameter system compatibility. Depends on PR #6840. - @TheYoingLad
    • Added: Parameter system compatibility for settings, Separate GUI classes for BEC multiblocks
    • Removed: Fixed divider size requirement, HeaderSettingRow class
  • #6838 Updated ItemLabParts to apply italic formatting to Latin nomenclature text in item tooltips. - @iouter
  • #6820 Added dimension-specific height range overrides to OreMixes and WorldgenGTOreLayer. Changed WorldgenQuery dimensions field from Set<String> to single String. Updated Vein Stats NEI plugin to display height overrides with asterisk markers. - @tiffit
    • Added: Per-dimension ore vein height overrides, Dimension-specific spawn height configuration
    • Fixed: Twilight Forest ore vein generation rates
  • #6815 Added MTELargeHadronColliderGui calculator widgets and fixed beam energy calculation. Updated Particle enum boson weights and added .allowC2S() to GUI sync values for text field inputs. - @ham-corp
    • Added: LHC calculator widgets, Probability table display, Calculator button overlay texture
    • Fixed: LHC tooltip error, Beam energy calculation error, GUI client-to-server sync for LHC parameters
    • Closes GTNH#24901
  • #6813 Introduced RecipeMapBackend with recipe deduplication, backported TrieMap from GregTech-Modern for efficient lookup, added comprehensive recipe validation tests, and profiling infrastructure. Startup time reduced from 20min to 1:05min with deduplication, recipemap operations 2-4x faster. - @Pxx500
    • Added: RecipeMapBackend with deduplication, GTRecipeLookup system with TrieMap, Recipe validation tests (700+ LoC), RecipeMapBackendProfiler, Lookup ingredient classes for items and fluids
    • Fixed: Slow server startup with collision check JVM args, Inefficient recipe checking
    • Closes GTNH#24757
  • #6800 Added scanner info methods and WAILA info to MTEExothermicHearth and MTEEndothermicFridge. Fixed getMaxInputVoltage() call that should have been getMaxInputEu to correctly calculate total supplied voltage. Added subspace cooling WAILA display. - @Yoshy2002
    • Added: Scanner info to Exothermic Hearth, Scanner info to Endothermic Fridge, Subspace cooling WAILA info
    • Fixed: Hearth heat calculation using base voltage instead of total voltage, Recipe calculation issues in Hearth
    • Closes GTNH#24869, GTNH#24929
  • #6786 Restored checkMachines() implementations in MTEEndothermicFridge, MTEExothermicHearth, MTEIndustrialChisel, and MTEIndustrialCuttingMachine, porting them to the new structure system. - @Yoshy2002
    • Added: Structure validation logic in four multiblock machines
    • Fixed: Missing machine structure validation
  • #6781 Added GTStructureUtility.ofOreDictBlockMap(String) method to map OreDict entries to block-metas, and updated MTEMegaIndustrialApiary structure elements to use this method instead of hardcoded vanilla wood blocks. - @Eldrinn-Elantey
    • Added: GTStructureUtility.ofOreDictBlockMap OreDict mapping method, OreDict support for Mega Industrial Apiary wood elements
  • #6774 Replaced three-frame saw animation with a single rotating texture in MTEIndustrialCuttingMachine.java using GL clip plane rotation in rendering code. - @FourIsTheNumber
    • Added: Smooth saw blade rotation rendering
    • Removed: Discrete frame animations for saw
  • #6773 Updated MaterialsInit.java, CentrifugeRecipes.java, and MixerRecipes.java to replace Dilithium Dust requirements with Unstable Dust in Shijima-related recipes. - @Auynonymous
  • #6756 New BlockCasings14 entry for Naquadah Reinforced Distillation casing; texture and localization added. - @chrombread
    • Added: Naquadah Reinforced Distillation casing
  • #6754 ChiselBackend logic expanded; MTEHatchChiselBusGui refactored with improved layout and controls; MTEIndustrialChisel workflow optimized. - @Luca-Guettinger
  • #6749 New UniversiumMetaItemRenderer for MetaGeneratedItem03 with mask-based Universium shader; updated coil textures (LuV/ZPM/UV/UHV/UIV) with improved color accuracy and new Infinity renderer configuration option. - @jude123412
    • Added: UniversiumMetaItemRenderer, Accessibility config for Universium render, Infinity renderer for Transcendent Circuit Board
  • #6748 Connection logic runs on client during placement and syncs with server; BaseMetaPipeEntity and MTECable connection routines updated to use instant placement logic. - @tiffit
    • Fixed: Pipe connection delay
  • #6740 Added IHatchElement interface, HatchElement enum, and enhanced StructureChecker/PositionedStructureError to display expected block names; requires StructureLib PR #57. - @Luca-Guettinger
    • Added: IHatchElement interface, HatchElement enum, Expected block display in error messages, HatchElementBuilder
    • Fixed: Multiblock error diagnostics clarity
  • #6737 New TurbineRotorDumper and TurbineFuelDumper classes with shared DumperUtils; fuel model uses FuelGroup/FuelEntry structure supporting gas, plasma, and steam turbines. - @Eldrinn-Elantey
    • Added: TurbineRotorDumper, TurbineFuelDumper, DumperUtils, Turbine data dump menu items
  • #6735 Added new items to IDMetaItem03, expanded CondensateType enum with new condensate varieties, created EM2MetaMaterialRecipes loader with AAL and BEC recipes, and added Activated Netherite recipes in Godforge loader. - @Ruling-0
    • Added: 8 MetaMaterials, Activated Netherite fluid, Condensate animation handler, EM2 metamaterial recipes
  • #6731 Implemented FakeCuttingFrontend and fake recipe system to consolidate multiple cutting recipes with identical output into single displayable recipes. Updated RecipeMaps, processing loaders, and added new recipe handlers. - @TotallyNotOndre
    • Added: FakeCuttingFrontend, Fake recipe system for cutters
  • #6729 Refactored MTEBasicMachineWithRecipe to use ModularUI2 framework and abstracted recipe map GUI logic. Updated individual machine classes to use new GUI structure with de-privatized fields. - @C0bra5
    • Added: ModularUI2 support for basic machines
  • #6728 Updated MTENanoForge autoplace speed calculation to match Forge of the Gods logic. - @Angry3vilbot
  • #6727 Enhanced SubstituteFluidStack recipe support across multiple recipe loaders, updated Lead Lined Box to use OreDictItemStack, and refactored recipe ordering in crafting material and assembler loaders. - @TotallyNotOndre
    • Added: Additional substitute fluid recipes
  • #6724 Added prefix-based sync keys to parameter classes in TTMultiblockBaseGui and related parameter definitions to prevent sync conflicts. - @TheYoingLad
    • Added: Sync key prefixes for parameters
  • #6716 Added a recipe to BeamlineRecipeLoader that converts Unstable Dust to OMEGA particles in a source chamber, and updated Particle.java to support this conversion. - @Auynonymous
    • Added: Unstable Dust source chamber conversion recipe
  • #6703 Added minewood tree recipe to RecipeLoaderTreeFarm to enable Twilight Forest minewood growth via the tree farm multiblock. - @Quollveth
    • Added: minewood tree recipe
  • #6678 Modified MTELargeHadronColliderGui.java to reorganize the information panel layout and adjust language key formatting to better fit the UI. - @FrostyFire1
  • #6676 Migrated MTEHatchOutput and related classes to MUI2 framework, created MTEHatchOutputGui.java with enhanced fluid visualization, deprecated old IFluidLockable in favor of IFluidLockableMui2, and updated dependent classes (MTEHatchOutputME, MTEHatchVoid, etc.) to use new interfaces. - @TheYoingLad
    • Added: MTEHatchOutputGui.java with MUI2 UI implementation, IFluidLockableMui2 interface
    • Removed: IFluidLockable interface (deprecated in favor of MUI2 version), old ModularUI output hatch GUI code
  • #6672 Added dedicated top/bottom texture variants for firebox casings in BlockCasings3 and BlockCasings4, with texture definitions in the Textures enum and new PNG assets for each firebox tier. - @Auynonymous
    • Added: unique top and bottom textures for firebox casings (Bronze, Steel, Titanium, Tungstensteel)
    • Closes GTNH#24619
  • #6671 Added four new sawblade item variants with tier-specific renderers, updated MTEIndustrialCuttingMachine to support blade tier logic, added FormingPress recipes for each tier, and enhanced cutter visual model with tier-specific textures. - @Yoshy2002
    • Added: 4 sawblade tiers with tier-dependent rendering, sawblade recipes in Forming Press, tooltips for sawblades
  • #6669 Added tooltip text display to the manual slot UI widget in MTEHatchInputBusMEGui by adding language key and widget configuration. - @Ranzuu
    • Added: tooltip for manual slot in ME Input Bus GUI
  • #6663 Deleted pump token item definitions and removed all pump token recipe references from crafting systems. - @VortexSo4
    • Removed: Pump Tokens from ModItems, Pump Token texture assets, All pump token recipe references
  • #6661 Created SubstituteFluidStack class and enhanced GTRecipe/GTRecipeBuilder to support alternative fluid stacks with variable amounts; integrated into recipe backend for display and validation. - @TotallyNotOndre
    • Added: SubstituteFluidStack class for fluid alternatives, Recipe builder support for fluid substitutions
  • #6660 Removed or restricted fuel value checks in MTEGeothermalGenerator and MTERocketFuelGenerator; also fixed duplicate Pyrotheum and Cryotheum entries. - @Luca-Guettinger
    • Removed: Geothermal generator arbitrary burnable item support, Rocket Fuel generator arbitrary burnable item support, Duplicate Pyrotheum/Cryotheum material definitions
    • Fixed: Geothermal/Rocket generator accepting invalid fuels, Duplicate Pyrotheum and Cryotheum in NEI
  • #6655 Added new Materials, ItemList entries, recipe definitions in BHC and BeamCrafter loaders, fluid textures, and tooltip documentation for two new crafting materials. - @Ruling-0
    • Added: Pseudo Star material and item, Cosmic Solder (active and inactive) fluids, BHC recipe for Pseudo Star, BeamCrafter recipes for Cosmic Solder variants, Material-specific texture assets
  • #6652 Added SLOT_FLUID_DARK texture constant and updated hatch GUIs to use appropriate slot overlay types, preventing ME input hatches from falling back to generic dark slot appearance. - @Ranzuu
    • Added: SLOT_FLUID_DARK texture for fluid slot overlay, ModularUI2 slot overlay texture asset
    • Fixed: ME input hatch slot overlay color inconsistency
  • #6650 Modified checkMachine validation in MTEPCBFactory to expand allowed hatch positions by replacing character validation constraints. - @Rikka-Kitani
  • #6649 Created TextureBlockMaterial class for custom rendering, added material icons for CUSTOM variants, updated FluidDisplayStackRenderer and block/item rendering systems to use new texture system. - @Ruling-0
    • Added: TextureBlockMaterial custom renderer, Material-specific texture assets for CUSTOM variants, Fluid rendering support for special materials
  • #6639 Added new CompositeParameter class for parameter grouping. TTMultiblockBaseGui refactored to support dynamic tooltips and movable panels. ItemParametrizerMemoryCard updated with tooltip display. Space Pump and BEC machines now use CompositeParameter for cleaner UI. - @TheYoingLad
    • Added: CompositeParameter class, dynamic parameter tooltips, movable parameter panels
  • #6633 Added new MTEIndustrialCuttingMachine class using MTEExtendedPowerMultiBlockBase. Created new cutter casing with updated texture and recipe. Deprecated old structure as MTEIndustrialCuttingMachineLegacy with conversion recipe. Updated MetaTileEntityIDs, ItemList, and recipe loaders. - @Yoshy2002
    • Added: new Industrial Cutting Factory structure, new cutter casing texture and recipe, energy hatch tier limiting, Survival Mode buildability (ISurvivalConstructable)
    • Migration: Your Industrial Cutting Factory keeps running as the Legacy controller with its old shape. The new contest structure is a separate controller whose energy hatch tier is capped by its sawblade tier; build or convert to it only if you want it.
  • #6626 Added MTETypeFilterGui using MUI2 framework; updated MTETypeFilter with new GUI integration and enhanced data handling. - @TheYoingLad
    • Added: ModularUI2 interface for Type Filter
  • #6625 Added MTERecipeFilterGui using MUI2 framework; updated MTERecipeFilter with new GUI integration and enhanced data handling. - @TheYoingLad
    • Added: ModularUI2 interface for Recipe Filter
  • #6620 Added TileEntityModulePumpGui with MUI2 layout; updated TileEntityModuleAssembler and TileEntityModulePump with new GUI integration. Removed legacy TileEntityModuleMiner file. - @Luca-Guettinger
    • Added: ModularUI2 interface for Space Pump, hover tooltips for button values, Space Assembler MUI2 migration
    • Removed: TileEntityModuleMiner (legacy)
  • #6619 CoverGuiData and CoverUIFactory updated to support reactive cover positioning and title visibility toggles. All cover panels now use coversChildren() for dynamic sizing instead of fixed dimensions. - @tiffit
    • Added: reactive cover popup positioning, optional title text hiding for cover popups, dynamic GUI sizing with coversChildren()
    • Removed: hardcoded width/height for cover GUIs
    • Fixed: covers crashing when opening popup multiple times, sync value issues in cover GUIs
  • #6613 Ported MTESpecialFilter to MUI2 with new MTESpecialFilterBaseGui class; added related texture entries to GTGuiTextures; minimal changes to base class interface for MUI2 compatibility. - @TheYoingLad
    • Added: MTESpecialFilterBaseGui, filter slot textures
  • #6605 Replaced hardcoded tooltip strings in MBItemFrame with localization keys using GTUtility.translate(); added gtpp.tooltip.frame.* keys to miscutils lang files for en_US and ru_RU. - @Eldrinn-Elantey
    • Added: bee frame localization keys, live language switching support
    • Fixed: hardcoded bee frame tooltips
  • #6603 Added spawn chance calculation and tooltip display in PluginGT5VeinStat and ItemDimensionDisplay to show vein generation probability as a percentage. - @Connor-Colenso
    • Added: spawn chance tooltip for ore veins
  • #6602 Removed parameterMap from TTMultiBlockBase and changed IParametrized to return collection-based parameters; ported parametrizer card functionality from legacy system and updated TileEntityModuleMiner, MTETeslaTower, and related parameter classes. - @TheYoingLad
    • Added: parameter collection interface, parametrizer card MUI2 support
    • Removed: parameterMap from TTMultiBlockBase
    • Migration: OpenComputers programs that drive a TecTech multiblock, including every Space Elevator module, have to be rewritten. The tt_machine component addressed a parameter by hatch and slot number in 2.8.4, through setParameters(hatch, slot, value) and getParameters(hatch, slot); a parameter carries a name now, so setParameter(name, value) writes one, and getParameters() takes no argument and hands back a table of them all. On the Space Miner the names are distance, parallel, cycle, cycleDistance, range and step, and the overdrive and mode settings it had in 2.8.4 are gone. Computronics 1.9.10 is what carries the new component, so both mods have to come from 2.9.0 together.
  • #6601 Modified BioCulture name handling in ItemLabParts to read names from NBT when available, swapped display order of common and latin names, and added translatable lang keys for bio item names. - @iouter
    • Added: bio item localization keys, NBT-based name retrieval
    • Removed: direct NBT name loading from BioCultureLoader
    • Fixed: 'Unnamed' bio items, bio name translation
  • #6586 Enhanced GTInflectionManager to chain multiple replacement rules across nested JSON keys; added built-in rules for lowercase, uppercase, and capitalize transformations to OrePrefixes. - @iouter
    • Added: multi-level inflection rules, lowercase/uppercase/capitalize built-in rules, phrase key support for multi-word material names
  • #6538 Added StructureErrorHighlightRenderer client-side renderer for red block outlines, modified WrongBlockError to include a highlight button, added button handling in MTEMultiBlockBaseGui, added highlight button texture, and fixed duplicate structure check execution bug. - @Luca-Guettinger
    • Added: StructureErrorHighlightRenderer, highlight_block button texture
    • Fixed: Duplicate structure check causing incorrect coordinates, Block highlight for WrongBlockError
  • #6527 Ported MTETeleporter from old GUI system to MUI2, creating MTETeleporterGui and refactoring teleporter implementation to remove 58 lines of old GUI code while adding 45 lines of MUI2 controller code. - @TheYoingLad
    • Added: MTETeleporterGui class
  • #6522 Converted ItemCircuitProgrammer from the old GUI system to MUI2, adding new texture definitions in GTGuiTextures and implementing the GUI in a new CircuitProgrammerGui class. - @TheYoingLad
    • Added: CircuitProgrammerGui class, MUI2 texture definitions
  • #6516 Added GTWorkAreaRenderer, IWorkAreaProvider interface, and WorkAreaProviderRegistry. Integrated work area display into drilling plant GUIs with chunk status indicators. - @NeutronSelector
    • Added: work area visualization, GTWorkAreaRenderer, IWorkAreaProvider interface
    • Closes GTNH#24035
  • #6513 Changed Multi-Amp dynamo to extend MTEHatchDynamo, restricted to ≤4A. Deprecated Buffered Dynamo class with removal TODO. Added HV 4A dynamo recipe in TecTech assembler. - @Ruling-0
  • #6496 Ported IntegratedCircuitGui to MUI2 with updated SelectItemGuiBuilder, supporting both main and offhand circuit slots. - @TheYoingLad
    • Added: IntegratedCircuitGui MUI2 implementation
  • #6494 SprayColorInfiniteGui created as new MUI2 implementation; GTPacketInfiniteSpraycan and BehaviourSprayColorInfinite refactored for MUI2 compatibility. - @TheYoingLad
    • Added: SprayColorInfiniteGui (MUI2)
    • Removed: old Infinite Spray Can GUI code
  • #6485 BlockMachines break handler extended to drop covers and clear color data on shift-click. - @evgengoldwar
    • Added: shift-break cover drop and colorization clear
  • #6477 VolumetricFlaskGui created as new MUI2 implementation; ItemVolumetricFlask refactored to use MUI2 backend; VolumetricFlaskHelper and related components updated. - @TheYoingLad
    • Added: VolumetricFlaskGui (MUI2)
    • Removed: old ItemVolumetricFlask GUI code
  • #6465 Restored correct structure formatting in MTEDebugStructureWriter and added clipboard copy functionality via new GUI button and texture asset. - @VortexSo4
    • Added: Copy to clipboard button for structure writer
    • Fixed: Structure writer output display
  • #6458 Added language string and display logic in CauldronFrontend to show stack size flexibility in NEI recipe output. - @Luca-Guettinger
    • Added: NEI cauldron recipe stack size note
    • Closes GTNH#24348
  • #6448 Re-introduced cable connection logic in MTECable.java and updated MetaGeneratedTool to register the wire cutter's multi-cable behavior. Added configuration option and language strings. - @Yoshy2002
    • Added: Wire cutter multi-cable connection, Configuration for cable connection behavior
  • #6447 Added Planck Manifold to ItemList and MetaGeneratedItem03, registered it as a CircuitComponent (without calibration counting), and added language/texture files. - @GDCloudstrike
    • Added: Planck Manifold as a real, craftable item
  • #6442 Created MTESuperBufferGui and refactored MTESuperBuffer to use MUI2. Moved shared buffer logic to dedicated class. - @TheYoingLad
    • Added: MTESuperBufferGui
    • Removed: Duplicate buffer logic
  • #6441 Created MTEChestBufferGui and updated MTEChestBuffer to use MUI2. - @TheYoingLad
    • Added: MTEChestBufferGui
  • #6440 Created MTEItemDistributorGui and updated MTEItemDistributor to use MUI2. Added language entries for new config options. - @TheYoingLad
    • Added: MTEItemDistributorGui, Item Distributor UI configuration
    • Fixed: Item Distributor UI configuration missing
    • Closes GTNH#23806
  • #6439 Added createArrow() helper method and improved tooltip creation logic in MTEBufferBaseGui. Updated GTGuiTextures and MTETieredMachineBlockBaseGui. - @TheYoingLad
    • Added: Arrow creation helper
  • #6438 Created MTERegulatorGui class and refactored MTERegulator to use MUI2 instead of legacy GUI system. - @TheYoingLad
    • Added: MTERegulatorGui
  • #6437 Updated CommonBaseMetaTileEntity and MTEHatchCraftingInputME to format ghost circuit info using configurable patterns. Added config options in Gregtech.java. - @Eldrinn-Elantey
    • Added: Ghost Circuit Suffix Format config, CIB Manual Slots Suffix Format config
  • #6430 Added Hexanite and Planck-Scale Circuit components to Materials enum and MaterialsIDMap. Added CircuitComponent types, recipes in FusionReactorRecipes and FluidSolidifierRecipes, godforge integration, and language entries. - @Auynonymous
    • Added: Hexanite material, Planck-Scale Circuit NAC components, Coiled Thermal Superconductor, Planck-Scale Manifold
  • #6426 Created MTEBufferBaseGui and refactored MTEBuffer and MTEFilterBase to use MUI2. Added new GUI textures and base class methods. - @TheYoingLad
    • Added: MTEBufferBaseGui class, MUI2 buffer GUI framework
  • #6419 Created MTEHatchWirelessMultiGui and updated references in related multiblock machines and hatches. - @TheYoingLad
    • Added: MTEHatchWirelessMultiGui
  • #6416 Created MTEHatchWirelessComputationInputGui class and updated MTEHatchWirelessComputationInput to use MUI2 instead of legacy GUI system. - @TheYoingLad
    • Added: MTEHatchWirelessComputationInputGui
  • #6414 Removed shaped recipe registration loop in ProcessingLog and added single shapeless recipe in CraftingRecipeLoader to consolidate log variant handling. - @Algent
    • Added: Consolidated long wood stick shapeless recipe
    • Removed: Multiple shaped long wood stick recipes
  • #6413 Added WAILA data provider to MTEQuantumComputer to display current computation progress with localization. - @Alexdoru
    • Added: Computation display in Quantum Computer WAILA
  • #6399 Added capacity display logic to TooltipHelper and ItemMachines tooltip rendering with localization support. - @Alexdoru
    • Added: EU capacity information in machine tooltips
  • #6396 Added new circuit components and masks to ItemList, MetaGeneratedItem03, CircuitComponent, and MaskList with recipes in Godforge; removed multi-step attribute from infinity plasma. - @GDCloudstrike
    • Added: 5 new power IC tiers (UEV/UIV/UXV/OpV/MaxV), NAC components for new PICs, New lens and wafer, 2 new beamline masks with recipes
    • Removed: Multi-step attribute from infinity plasma
  • #6389 Added toggle widget and mode parsing to MTEHatchInputBusDebug and its GUI with new textures for the overlay button and info panel. - @loenaaaa
    • Added: Finite mode toggle for debug input bus, Info button for finite mode explanation, Finite mode button textures
  • #6386 Created new MTEHatchUncertaintyGui class with MUI2 implementation, refactored MTEHatchUncertainty to use new GUI, updated button texture assets and GTGuiTextures. - @TheYoingLad
    • Added: MTEHatchUncertaintyGui (MUI2 version), GUI button overlays
    • Removed: Old Hatch Uncertainty GUI code
  • #6377 Added batch mode support to MTEPlanetaryGasSiphon. - @Yoshy2002
    • Added: Batch mode support for Gas Siphon
  • #6368 Implemented IInterfaceNameProvider on CommonBaseMetaTileEntity with getInterfaceNameSuffix() delegating to ghost circuit configuration support. - @Eldrinn-Elantey
    • Added: IInterfaceNameProvider implementation
  • #6366 Added ItemList entries, IDMetaItem03 definitions, and AssemblerRecipes for UEV/UIV/UMV voltage coils with corresponding GTPP fine wire materials and textures. - @Auynonymous
    • Added: UEV voltage coil, UIV voltage coil, UMV voltage coil, Celestial Tungsten fine wire, Rhugnor fine wire, Dragonblood fine wire
  • #6358 Adds 8 block definitions to Casings.java and updates MTEAdvImplosionCompressor and MTENaquadahFuelRefinery to use Casings references instead of inline block lookups. - @Yoshy2002
    • Added: Block casing references
  • #6347 Increases Digester recipe map from 1 to 3 item input slots in LanthanidesRecipeMaps.java. Dependent on CropsNH PR #99. - @C0bra5
    • Added: Two extra Digester item slots
  • #6318 Added displayText theme to GTWidgetThemes and GTGuiThemes, updated multiple GUI classes to use the new theme for dynamic values and status displays. - @Ranzuu
    • Added: displayText widget theme, theme application across multiple GUIs
  • #6309 Migrated MTEHatchRack GUI to MUI2 with new textures and layout code; added GTGuiTextures entries and created MTEHatchRackGui class. - @TheYoingLad
    • Added: MTEHatchRackGui class, MUI2 textures for hatch rack, language entries for hatch rack
  • #6306 Added addTo() overload in GTRecipeBuilder accepting multiple recipemaps, updated PyrolyseRecipes to register recipes in multiple maps (Pyrolyse and ICO), removed legacy importPyroRecipe method. Replaced for-loop logic with oredict-based recipe registration. - @TotallyNotOndre
    • Added: GTRecipeBuilder.addTo(RecipeMap...) overload
    • Removed: AddGregtechRecipe.importPyroRecipe method, redundant recipe loaders
    • Fixed: ICO oredict recipe imports
  • #6305 Added toggle configuration in PowerGogglesConfigHandler, implemented visibility toggle logic in PowerGogglesKeybindHandler and SimplePowerGogglesRenderer, fixed rounding in power display calculation. - @Ranzuu
    • Added: power measurement toggle, toggle keybind
    • Fixed: power measurement rounding
    • Closes GTNH#24179
  • #6304 Removed circuit requirements from Fluid Heater recipes in multiple loaders (FluidHeater.java, PlatinumSludgeOverHaul.java, BauxiteRefineChain.java, FluidHeaterRecipes.java, RecipeLoaderGlueLine.java). Note: CoreMod recipes still need updating. - @KleinGrrmpf
    • Removed: circuit requirements from 6 Fluid Heater recipes
  • #6302 Enhanced MTEVoidMinerBaseGui with selected ore button styling, expanded ore tooltips with void status, changed ore search to hide unmatched ores using MUI2's wrap() method. No logic changes to void miner functionality. - @purebluez
    • Added: ore button styling, enhanced ore tooltips
  • #6300 Added description lines for Arc Furnaces in en_US.lang (2 lines modified). - @Eldrinn-Elantey
    • Added: Arc Furnace descriptions
  • #6294 Created CoverAdvancedWirelessController with CoverAdvancedWirelessControllerGui, added new ItemList entry and texture. Refactored CoverWirelessController to reduce duplication. Added new cover to IDMetaItem01 and MetaGeneratedItem01. Closes modpack issue #24059. - @KleinGrrmpf
    • Added: Advanced Wireless Machine Controller Cover, advanced wireless controller GUI, internal logic gate support
    • Closes GTNH#24059
  • #6291 Added ULV tier solar panel generator (MTESolarGenerator), created new ItemList entry and MetaTileEntity ID, registered shapeless conversion recipe in AssemblerRecipes, added loader in LoaderMetaTileEntities. Depends on NewHorizonsCoreMod PR #1682. - @thehoblit
    • Added: 1-Volt Solar Panel, ULV solar generator, shapeless conversion recipe
  • #6288 Migrated MTEMegaIndustrialApiary to MUI2 with new GUI implementation, added SlotLikeButtonWidget for improved slot handling, added NEI search support. Fixed input validation to prevent princess/queen confusion crash. Added UI textures and localization strings. - @Luca-Guettinger
    • Added: NEI search support in Mega Apiary, SlotLikeButtonWidget, ModularUI2 Mega Apiary GUI, inventory full warning texture
    • Removed: old GUI implementation
    • Fixed: crash when inserting princess instead of queen
    • Closes GTNH#23137
  • #6286 Added controllerPos field to multiblock machine implementations (VoidMiners, AntimatterForge, AntimatterGenerator, CoolantTower, CharcoalPit, DecayWarehouse, EntropicProcessor, NanoForge, PlasmaForge, SolarFactory, PCBFactory, and various steam machines). NAC, Black Hole, Fusion Computers, and Cyclotron omitted due to position complexity or deprecation. - @Yoshy2002
    • Added: controller position metadata for 20+ multiblocks
  • #6283 Ported MTEHatchSteamBusOutput from legacy UI to MUI2 (14 lines added, 9 removed). Requires prior merge of PR #6270. - @TheYoingLad
    • Added: ModularUI2 interface for MTEHatchSteamBusOutput
  • #6278 Added click handler to progress bar in LHCNEIHandler.java (7 additions). - @ham-corp
    • Added: Clickable progress bar for LHC recipe browsing
  • #6277 Created MTEHatchOutputMEGui.java with MUI2 implementation (83 additions); updated MTEHatchOutputME.java (15 additions, 7 removals); removed old GUI code from MTEHatchOutputMEBase.java (27 removals). Depends on PR #6275. - @TheYoingLad
    • Added: MTEHatchOutputMEGui.java with MUI2 implementation
    • Removed: Old GUI code from MTEHatchOutputMEBase.java (27 lines)
  • #6275 Created MTEHatchOutputBusMEGui.java with MUI2 implementation; updated MTEHatchOutputBusME.java (7 additions, 9 removals); added new localization keys. - @TheYoingLad
    • Added: MTEHatchOutputBusMEGui.java with MUI2 implementation
  • #6270 Created MTEHatchOutputBusGui.java with MUI2; added GUI registration to MTEHatchOutputBus, MTEHatchVoidBus, MTEHatchOutputBusME, MTESteamBusOutput, and MTESuperBusOutput classes. Removed old GUI code from MTEHatchOutputBusCompressed. - @TheYoingLad
    • Added: MTEHatchOutputBusGui.java with MUI2 implementation
    • Removed: Old GUI code from MTEHatchOutputBusCompressed (5 lines)
  • #6269 Created MTEHatchObjectHolderGui.java with MUI2; updated MTEHatchObjectHolder.java (12 additions, 40 removals); added new textures to GTGuiTextures.java and updated dependencies.gradle. - @TheYoingLad
    • Added: MTEHatchObjectHolderGui.java with MUI2 implementation, New GUI textures, New dependencies
    • Removed: Old GUI code (40 lines)
  • #6268 Added muffler toggle button to MTERadioHatchGui.java (32 additions, 13 removals). - @kx08
    • Added: Muffler button in radio hatch GUI
  • #6266 Created MTEHatchMultiInputGui.java with MUI2 implementation; updated MTEHatchMultiInput.java with GUI registration (20 additions, 19 removals). - @TheYoingLad
    • Added: MTEHatchMultiInputGui.java with MUI2 implementation
  • #6265 Replaced old GUI implementation with MUI2-based MTEHatchMaintenanceGui.java; added new textures to GTGuiTextures.java. Removed old GUI code from MTEHatchDroneDownLink.java. - @TheYoingLad
    • Added: MTEHatchMaintenanceGui.java with MUI2 implementation, New GUI textures
    • Removed: Old GUI code (55 lines), Russian localization entry
  • #6262 Fixed GTStructureUtility.ofAnyWater() to properly reject flowing water when allowFlowing=false; added GTUtility method to identify replaceable water/air blocks; updated water auto-placement in multiple multiblocks to use new validation. - @Yoshy2002
    • Added: utility method for water/air block replacement detection
    • Fixed: multiblock formation with flowing water despite allowFlowing=false, water auto-placement edge cases with flowing water
  • #6256 Modified recipe registration to always include pollution devices; added disabled-state tooltips to muffler hatches, pollution cleaner/scrubber/detector, and air recycler via TooltipHelper.java. - @UltraProdigy
    • Added: disabled-state tooltip system for pollution devices
    • Fixed: quest completion blockers for pollution devices when pollution disabled
  • #6246 Widened input fields in MTEHatchEnergyDebugGui and updated tooltip to display actual max amperage value. - @TheYoingLad
  • #6240 Implemented autoplacement mechanics adapted from Greenhouse into MTEFrothFlotationCell and MTEPurificationUnitClarifier, with code modifications to handle non-square shapes. - @Yoshy2002
    • Added: auto water placement for Clarifier, auto water placement for Flotation Cell
  • #6235 Enabled ModularUI2 rendering for MTEBasicGenerator and created MTEBasicGeneratorBaseGui with MUI2 implementation. - @TheYoingLad
    • Added: MTEBasicGeneratorBaseGui ModularUI2 implementation
  • #6234 Created MTEHatchInputMEGui and MTEHatchInputMESlotAdapter using ModularUI2, refactored MTEHatchInputME to remove legacy GUI code and use MUI2 rendering. - @TheYoingLad
    • Added: MTEHatchInputMEGui ModularUI2 implementation, MTEHatchInputMESlotAdapter for MUI2
    • Removed: Legacy GUI code from MTEHatchInputME, GTGuiTextures texture reference
  • #6230 Created MTETieredTankGui using ModularUI2 framework and updated MTETieredTank to enable MUI2 rendering. - @TheYoingLad
    • Added: MTETieredTankGui ModularUI2 implementation
  • #6212 Added IFluidLockableMui2 interface, FluidLockSlotWidget, MTEDigitalTankBaseGui MUI2 implementation; updated MTEDigitalTankBase and supporting GUI texture/text IDs. - @TheYoingLad
    • Added: IFluidLockableMui2 interface, FluidLockSlotWidget, MUI2 Digital Tank GUI, language keys
  • #6203 Modified EnderDragonDeathHandler to use GTUtility.translate for localization and added range/dimension checks before sending message. - @Nikolay-Sitnikov
    • Added: dragon death message localization key
  • #6195 Created LHCNEIHandler, LargeHadronColliderFrontend, and LargeHadronColliderRecipes classes; added four progress bar textures and recipe map entry for LHC in RecipeMaps.java. - @ham-corp
    • Added: LHC recipes to NEI, LHC recipe handler, module-specific progress bars, LHC language key
  • #6174 Ported MTELinkedInputBus to MUI2, replacing old IOIH GUI code with new MTELinkedInputBusGui using ModularUI2 components. - @TheYoingLad
    • Added: ModularUI2 port of MTELinkedInputBus GUI
    • Removed: old IOIH-based GUI
  • #6168 Added reverse recipe mode to MTEHatchCraftingInputSlave and MTEHatchCraftingInputME, toggled by screwdriver, with WAILA display and chat feedback. - @khaskelbergTAU
    • Added: reverse recipe mode for crafting input proxies, screwdriver toggle, chat message on toggle
  • #6162 Enhanced GTLog with formatted explosion logging containing timestamps, dimension, coordinates, machine name, and owner. Updated explosion calls across BaseMetaTileEntity, MTEFluidPipe, MTEMultiBlockBase, and other explosion sites. - @konradmoesch
    • Added: timestamp formatting in explosion logs, owner and block type details to logs, GTLog utility class
  • #6158 Added mode icons to GTGuiTextures, replaced numeric mode constants with enum in MTEIntegratedOreFactory, enabled maintenance hatch placement. - @VortexSo4
    • Added: maintenance hatch placement support, mode icons for IOF GUI
  • #6157 Replaced old MTEHatchInputBusMEGui implementation with MUI2-based GUI using new GTGuiTextures, adapter pattern, and StockingSlot components. - @TheYoingLad
    • Added: MTEHatchInputBusMEGui MUI2 implementation, MTEHatchInputBusMESlotAdapter, StockingSlot component, MUI2 GUI textures
    • Removed: old ModularUI ME Input Bus implementation
  • #6149 Extended pick block handler API with a third return state to allow tool deselection suggestions. Added ForceDeselectAction, MaintenanceHatchAction, and PickResults classes. Optimized tool counting with better performance. - @querns
    • Added: tool deselection suggestion on maintenance hatch, ForceDeselectAction class, PickResults class
  • #6142 Implemented alpha-blended cover support via AE2 panels in GTCopiedCTMBlockTexture. Fixed bugs in alpha-blended pass 1 texture display, cable facade placement restrictions, and meta-value handling. Added layer offset to prevent z-fighting. - @leagris
    • Added: alpha-blended cover rendering support
    • Fixed: alpha-blended pass 1 texture display, cable facade multi-meta placement, cover facade texture restrictions
  • #6120 Added multiple new multiblock machines, condensate mechanics system with CondensateType enum, factory routing framework (FactoryPath, FactoryRoutes, GraphRouteTracker), Nanite tier system, new comparison operators, casings, and related infrastructure across ~20 files. - @RecursivePineapple
    • Added: Bose-Einstein Condensate multiblock system, CondensateType enum, NaniteTier system, factory routing framework, multiple new multiblocks and hatches, OpenComputers drivers support
    • Migration: Significant new crafting system; craft BEC multiblock controllers and integrate into automation. Addon authors: new CondensateType, NaniteTier, FactoryPath/FactoryRoutes APIs added; existing AAL setups should migrate to BEC for future content.
  • #6117 Added MTELargeNeutralizationEngine multiblock, MTEToxicResidueSensor hatch, new casings, materials (Francium, Chlorosulfonic acid), and related recipes. Refactored acid recipe registration and added item stack simulation utility to MTEMultiblockBase. - @loenaaaa
    • Added: Large Neutralization Engine multiblock, Toxic Residue Sensor hatch, Francium material, Chlorosulfonic acid, Potassium Hydroxide (GT version), Barite production recipe, LNE casings and textures
    • Migration: New multiblock added; craft LNE controller and build structure. Addon authors: new materials and API methods added; see api/metatileentity/implementations/MTEMultiBlockBase for utility method.
  • #6104 Added ToolboxSlot ban list configuration, integrated into GTProxy and GTPostLoad. Pocket Multitool and variants are blacklisted by default. Updated Assembler recipe to use oredict dyes. - @querns
    • Added: toolbox item ban list configuration, pocket multitool ban
    • Fixed: pocket multitool mode-switching exploit risk
  • #6103 Added Assembler recipe entry for UHV Energy Distributor in AssemblerRecipes. - @Yoshy2002
    • Added: UHV Energy Distributor Assembler recipe
    • Closes GTNH#23865
  • #6090 Added toggle flags to MTETieredMachineBlockBaseGui to enable/disable power and muffler button widgets independently. - @TheYoingLad
    • Added: power and muffler button disable toggles
  • #6081 Added fluorophlogopite plate recipes in gtnhlanth RecipeLoader.java to provide alternative crafting paths for mica-dependent casings. - @LooseEthics
    • Added: Fluorophlogopite plate recipes
  • #6055 Added OreDictItemStack class, extended GTRecipe to support oredict input matching, and updated recipe loaders to enable oredict item inputs alongside traditional item stacks. - @Caedis
    • Added: OreDictItemStack class, oredict item input support in recipes
  • #6029 Updated MTEBasicBatteryBuffer to use ModularUI2 GUI system for consistent visual styling across battery storage hatches. - @TheYoingLad
    • Added: ModularUI2 battery buffer GUI
  • #6022 Implemented MTEMagicalMaintenanceHatch at IV tier with Thaumcraft Vis integration. Added MetaTileEntity registration, ItemList entries, texture overlays, and language files. Positioned as alternative to Auto Maintenance Hatch for magic-aligned progression. - @jude123412
    • Added: Vis-Regulated Maintenance Hatch, IV-tier magical maintenance automation
  • #6013 Expanded PowerGogglesConfigHandler with 5 new color configuration options and manual mode settings. Updated PowerGogglesGuiOverlay and SimplePowerGogglesRenderer to apply configurations. - @Ranzuu
    • Added: chart background color customization, chart border color customization, measurement tab color customization, min/max value text color customization, manual indicator color customization, manual mode min/max defaults, power bar toggle option, 24 new language entries
  • #6010 Added NANOCHIP_FIREWALL_PROJECTION_CASING texture variant and updated BlockCasings12 to use new texture assets. - @seventh-june
    • Added: firewall projection casing textures (final), firewall projection casing top texture
  • #6002 Updated MTEExoFoundry tooltip text and corrected Heliocast reinforcement module color in lang file. - @chrombread
    • Added: 1 new language entry for UIV+ requirement clarification
  • #5997 Enhanced ChemicalFormulaFilter to normalize chemical formulas before comparison, improving consistency of NEI search results. - @slprime
    • Added: formula normalization logic
  • #5996 Extended MTENanochipAssemblyComplex and all NAC module classes with structured tooltip methods showing component counts and descriptions. - @UltraProdigy
    • Added: structure quantity displays in tooltips, 6 new language entries for tooltip formatting
  • #5994 Added overlay texture sets OVERLAY_VACUUM_HATCH_INPUT and OVERLAY_VACUUM_HATCH_OUTPUT to Textures enum and updated MTEHatchVacuumConveyorInput/Output classes to use them. - @Auynonymous
    • Added: OVERLAY_VACUUM_HATCH_INPUT textures, OVERLAY_VACUUM_HATCH_OUTPUT textures, input/output pipe port overlay textures
    • Removed: texture code from base MTEHatchVacuumConveyor class
  • #5992 Updated MTEIndustrialChisel to handle ArchitectureCraft blocks with proper material ratio calculations. Added dependency on ArchitectureCraft mod. - @dragongod100
    • Added: ArchitectureCraft block compatibility
  • #5984 Rewrote ISmartInputHatch detection logic in MTEHatchInputBusME and MTEHatchInputME to correctly compare old and new slot configurations without always triggering, and removed ineffective recipe-start timing for expedited rechecks. - @zyf051520
    • Fixed: false positives in smart input hatch change detection, ineffective recipe-start optimization
  • #5978 Updated MTEHatchPatternProvider and InputBusInventoryProxy to use localization keys for hatch name display, added localization entry to lang file. - @Ranzuu
    • Added: Pattern Provider Hatch localization key
  • #5956 Added renaming behavior to BehaviourWireCutter and ToolWireCutter, enabling interface renaming for AE components in MTEHatchCraftingInputME. - @kx08
    • Added: AE part renaming via wirecutter
    • Closes GTNH#23516
  • #5951 Added setSynced(false) to dynamicString widgets in MTEDigitalTankBase, MTEHatchOutput, and MTEHatchVoid to ensure client-side localization for empty fluid labels. - @Eldrinn-Elantey
    • Fixed: multiplayer localization for empty fluids
  • #5949 Replaced GTUtility.trans with StatCollector localization in MTEDigitalTankBase, moved message strings to lang files for EN_US, RU_RU, and ZH_CN. - @Eldrinn-Elantey
    • Added: localization strings
    • Removed: GTUtility.trans dependency
  • #5948 Added void protection methods to MTEIndustrialCentrifuge that were lost during the structure rework when inheritance from GTPPMultiblockBase changed. - @purebluez
    • Added: void protection support
    • Fixed: industrial centrifuge item loss
    • Closes GTNH#23590
  • #5946 Added EN_US lang entries and updated GUI text keys in MTEBoardProcessorModuleGui, MTENanochipAssemblyModuleBaseGui, and MTEEtchingArrayModule. - @Ranzuu
    • Added: localization strings
  • #5939 Added EN_US lang entries for NAC strings, updated MTENanochipAssemblyComplexGui and related files to display ME drive info, replaced custom arrow icon with MUI2 icon resource. - @Ranzuu
    • Added: localization strings, ME drive overlay display
    • Fixed: localization key revert
  • #5935 Unlocked rotation in MTEExtremeEntityCrusher, rewrote EntityRenderer to rotate render calls correctly for all orientations, fixed mob entity rotation conflicts, and adjusted bounding boxes for proper lighting. - @Ruling-0
    • Added: EEC rotation support
    • Fixed: EEC rendering in non-default rotations, mob animation speedup with multiple EECs
  • #5928 Doubles the sound radius multiplier in MTEEnhancedMultiBlockBase for multiblocks meeting size criteria, and replaces MTEMegaBlastFurnace.ogg audio asset. - @IX-git
  • #5927 Modifies MTEDieselEngine tooltip formatting to improve layout and readability. - @Eldrinn-Elantey
  • #5909 Modifies MTEPlasmaForge to include discount information in WAILA display and adds language strings for en_US and ru_RU localization. - @mamiemru
    • Added: Discount display in Plasma Forge WAILA tooltip
  • #5906 Adds new item through ItemList enum, ToolboxSlot enum for slot management, IItemBehaviour interface extension, new GUI factory (ToolboxSelectGuiFactory), network packet (GTPacketToolboxEvent), and modifications to MetaBaseItem and MetaGeneratedTool to support tool storage and battery integration. - @querns
    • Added: Field Engineer's Toolbox item, Tool storage system with 7 dedicated slots, Battery slot for toolbox, ToolboxSelectGuiFactory GUI, GTPacketToolboxEvent network packet, ToolboxSlot enum for slot definitions, IPickBlockHandler interface
  • #5904 Added IBlockWithClientMeta support to BlockCasings4 for glow effects; created MCPatcher CTM texture files for fusion casings; relocated exofoundryglass CTM textures from minecraft/mcpatcher to gregtech/mcpatcher. - @chrombread
    • Added: MCPatcher CTM support for Fusion Casings 1 and 2, Connected texture files for fusion casings, IBlockWithClientMeta integration
    • Removed: Fusion Casing texture hardcodes, Old exofoundryglass texture location
  • #5899 Modified MTEMultiFurnace hatch placement rules to accept maintenance hatch on top layer; replaced two ofChain references with buildHatchAdder. - @flamingowrangler2869
  • #5893 Created new MTEMegaChemicalReactor with MTEExtendedPowerMultiBlockBase; allowed hatches to be placed anywhere with single energy hatch limit; deprecated old controller; improved tooltip and recipe conversion. - @chrombread
    • Added: MTEMegaChemicalReactor new structure, Flexible hatch placement, New controller textures
    • Removed: Old Mega Chemical Reactor recipes
    • Fixed: Mega Chemical Reactor survival mode buildability
    • Migration: Existing Mega Chemical Reactors keep running as the Legacy controller. The new controller uses the identical block layout, so swapping the controller with the NEI shapeless recipe is enough; after that any hatch can sit on any Chemically Inert Machine Casing. Note the new one takes exactly one energy hatch, capped by your glass tier (laser hatches need UV glass or better).
  • #5891 Added formatted text and localized key names to MTEMiner and MTEPump tooltips; added Russian translations for new tooltip text. - @Eldrinn-Elantey
    • Added: Colored text formatting in tooltips, Localized key labels for Miner and Pump
  • #5890 Added client config flags in Client.java and integrated them into CosmicNeutroniumRenderer, GlitchEffectRenderer, and InfinityRenderer to conditionally apply effects. - @GDCloudstrike
    • Added: Config options for item renderer effects, Infinity effect toggle, Cosmic Neutronium effect toggle, Six-Phased Copper effect toggle
  • #5880 Introduced ContributorList helper class in MultiblockTooltipBuilder to manage distinct author and structure author lists for multiblock tooltips. - @kuba6000
    • Added: ContributorList helper class, Structure author attribution in tooltips
  • #5875 Added new EIG structure designed by HydroCN with backwards compatibility for old structures. Updates MTEExtremeIndustrialGreenhouse.java (+201 lines) to support both old and new structure validation, auto-tilling/watering on completion, and autoplace. Added sterile casing textures for CTM. Updated Casings.java to register new casing. - @kuba6000
    • Added: New EIG structure, Auto-tilling and water placement on structure completion, Autoplace support, Sterile casing CTM textures
    • Migration: Existing Extreme Industrial Greenhouses keep validating their old structure on their own; their stored NBT is tagged revision 1. If you break and re-place the controller it will accept nothing but the new structure, so rebuild before you move one. New builds get auto-tilling, auto-water and autoplace; old ones do not.
  • #5870 Added 11 lines to ChemicalRecipes.java: 2 Diluted HCl (HCl)(H2O) + 3 NaOH → 2 NaCl + 2 H2O recipe. - @LazyFlesh
    • Added: Diluted hydrochloric acid neutralization recipe
  • #5869 Added MTEVoidMinerBaseGui.java (222 lines) with searchable ore filter UI, whitelist/blacklist toggle, and Data Stick serialization. Updated MTEVoidMinerBase.java to support both input bus filtering and UI filtering with OR logic. Added localization strings. - @purebluez
    • Added: Ore voiding configuration UI, Ore search functionality, Data Stick compatibility for ore config
  • #5868 Added 57 lines to ChemicalRecipes.java with three undilution recipe paths: SO3 route, Sulfur+Oxygen route, and SO2+Oxygen route. All at 10s EV (~200k EU), cheaper than distillation (72k MV). Includes 9x batch recipes. - @LazyFlesh
    • Added: Diluted sulfuric acid undilution recipes (3 variants with 9x batches)
  • #5864 Added Calcium Chloride fluid electrolysis recipes to ElectrolyzerRecipes.java (28 lines added, 19 removed). New recipes accept fluid input and produce solid outputs, paralleling existing solid-input electrolysis recipes. - @LazyFlesh
    • Added: Calcium Chloride fluid electrolysis recipes
  • #5860 Added ChunkAPI integration with new ClientMetaTracker system (IClientMetaTracker, ClientMetaTrackerRegistry, GTCoilTrackerAccess). Added support for IBlockWithClientMeta in BlockCasings5 and updated GTCoilTracker. Updates dependencies and GTMod initialization. REQUIRES: DAXXL update, removal of NEID, addition of latest ChunkAPI/EID/FalsePatternLib versions. DO NOT MERGE until dependencies ready or will break dailies. - @Cardinalstars
    • Added: ChunkAPI integration, ClientMetaTracker system
    • Removed: IBlockWithClientMeta old implementation
    • Migration: ChunkAPI integration added; dependency updates required (NEID must be removed, ChunkAPI, EID, and FalsePatternLib must be updated to newest versions).
  • #5857 Added 8 lines to RecipeLoader2.java to register a new dust-to-fluid recipe for Lithium Chloride with matching EUT/tier as ingot path. - @LazyFlesh
    • Added: Lithium Chloride dust-to-fluid recipe
  • #5842 Modified MTETransformer, MTEWetTransformer, and MTETransformerHiAmp to accept extra input amperage with appropriate percentages. Localized amperage capacity display in tooltips and WAILA that updates dynamically. - @LazyFlesh
    • Added: Extra amperage acceptance to transformers, Localized transformer amperage capacity strings
  • #5835 Redesigned MTEPurificationPlantGui to display controllers horizontally with status icons, added PurificationUnitStatus indicators, implemented sorting by controller grade, moved detailed information to tooltips, and added language key support for status strings. - @VortexSo4
    • Added: Status indicator icons for purification units, Horizontal controller display layout, Unit idle status indicator, Controller sorting by grade, Language keys for status strings
  • #5828 Enhanced TileEntitySpaceElevator to implement shared computation distribution to child modules; added fluid input capability to TileEntityModuleMiner for plasma consumption. - @VortexSo4
    • Added: Shared computation system for mining modules, Plasma fluid input support, Item usage tracking
  • #5823 ChemicalRecipes expanded with two additional LCR recipes using Quicklime and Calcite as catalysts in place of Calcium, maintaining identical chemical outputs. - @LazyFlesh
    • Added: Quicklime catalyst recipe for Acetic Acid → Acetone, Calcite catalyst recipe for Acetic Acid → Acetone
    • Fixed: LCR recipe conflict reduction with catalyst alternatives
  • #5818 Added HatchElement.TecTechDynamo option to HatchElement enum; MTEMultiBlockBase updated with corresponding hatch detection logic for easy opt-in. - @loenaaaa
    • Added: HatchElement.TecTechDynamo support, Multiblock TecTech dynamo hatch handling
  • #5811 New MTEDrawerFramer class implements framing automation in three tiers. Added machine type, texture overlays, recipes, and UI components. Integrated with AssemblerRecipes for crafting the machines. - @maybemattie
    • Added: MTEDrawerFramer machine (LV/MV/HV), Drawer Framer texture overlays, Drawer Framer recipes and localization
  • #5809 BehaviourSoftMallet and ToolSoftMallet enhanced with mode cycling; BaseMetaTileEntity updated to support mode-aware soft mallet behavior. Localization strings added. - @UltraProdigy
    • Added: Soft Mallet cycle modes (Toggle/On/Off), Localization for mallet modes
  • #5785 Created CoverEnergyWirelessDebug class and associated textures. Added ItemList entry and MetaGeneratedItem01 icon definition. - @UltraProdigy
    • Added: Wireless Energy Debug Cover, Debug cover item icon texture
  • #5783 Added right-click handler to MTECokeOven to detect fluid containers and automatically fill them from stored creosote. - @loenaaaa
    • Added: Coke oven right-click creosote extraction
    • Closes GTNH#23347
  • #5773 Localized 'Running perfectly' string in GTLanguageManager. Added optional lang keys gt.interact.desc.mb.ItemTextLine and gt.interact.desc.mb.FluidTextLine to MTEMultiBlockBaseGui with fallback to default formatting. - @Ranzuu
    • Added: Localized 'Running perfectly' GUI text, Optional resource pack color override for item progress text, Optional resource pack color override for fluid progress text
  • #5763 Consolidated cannerRecipes and fluidCannerRecipes into a single recipe map, removed fluid canning machine support from MTEMultiCanner (removed multi-mode logic from TurboCan Pro), and updated recipe loaders. Requires core mod and quest system updates. - @FourIsTheNumber
    • Removed: Fluid Canning Machine recipes, Fluid Canning Machine multi-mode logic, FluidCannerRecipes loader
    • Migration: Fluid Canning Machine is deprecated; merge your fluid canning recipes into the regular Canner and remove multi-mode logic from TurboCan Pro.
  • #5757 Implemented ChemicalFormulaFilter in NEIGTConfig with pattern matching for material chemical formulas from GT5U, Bartworks, and GT++ mods. - @WayneYam
    • Added: NEI chemical formula search filter, = search prefix
    • Closes GTNH#23060
  • #5749 Updated GTGuiTextures with new maintenance status icons and modified MTEMultiBlockBaseGui to display hoverable wrench textures based on maintenance issue count. - @chrombread
    • Added: maintenance status icons (green/yellow/red wrenches)
  • #5744 Updated MTEMultiBlockBase GUI tooltip logic and adjusted dependency versions to improve tooltip rendering. - @evgengoldwar
    • Added: enhanced tooltip information
  • #5735 Added inputChance, fluidInputChance, and fluidOutputChance fields to recipe processing logic, renamed the existing chance field to outputChance, and adjusted valid probability range from 1-10000 to 0-10000 (where 0 = non-consumable). Parallel processing continues to use actual input quantities rather than minimums. - @ABKQPO
    • Added: inputChance field, fluidInputChance field, fluidOutputChance field
  • #5729 Created new MTEHatchCraftingInputMEGui class with MUI2 components, updated the tile entity to use the new GUI, and added texture definitions to GTGuiTextures. - @Kogepan229
    • Added: MUI2 crafting input ME hatch GUI, GUI texture resources
  • #5710 Added recipe counter field and increment logic to multiblock base classes and specific implementations across multiple machine types. - @StaffiX
    • Added: Recipe counter display for multiblocks
  • #5706 Added dedicated MACHINE_CASING_BOTMIUM texture and updated texture references in GregtechMetaSpecialMachineCasings and GregtechAlgaeContent. - @Auynonymous
    • Added: Botmium casing unique texture
  • #5700 Added stack size validation to BehaviourSprayColorInfinite matching BehaviourSprayColor tooltip logic. - @UltraProdigy
    • Fixed: Infinite Spray Can usability warning
    • Closes GTNH#23037
  • #5699 Updated HatchElementBuilder default configuration and GTStructureChannels to exclude hologram-placed hatches, with lang file updates. - @Pxx500
  • #5697 Updated WAILA info methods across hatch and machine classes to use localized text via GTLanguageManager instead of hardcoded strings. - @Discreater
    • Added: Localized WAILA text display
  • #5695 Added new channel to GTStructureChannels and configured MTEComponentAssemblyLine to use it. Updated CAL casing texture references and lang file. - @ABKQPO
    • Added: Component Assembly Line casing channel
  • #5694 Implemented MTEHatchInputBusCompressed, MTEHatchOutputBusCompressed with custom GUIs and PhantomSingleSlotItemStackHandler for slot visualization. Updated OutputBusType enum and ItemList registry. - @RecursivePineapple
    • Added: Compressed input bus, Compressed output bus, Quantum input bus, Quantum output bus, PhantomSingleSlotItemStackHandler
  • #5688 Added MTEHatchPatternProvider hatch with dedicated GUI and pattern inventory proxy. Refactored LMA to support pattern display via AE2 interface terminal. Old input busses still work but don't show patterns. - @asquared31415
    • Added: Pattern Provider input bus, Pattern display in interface terminal, MTEHatchPatternProviderGui, PatternSlot widget, InputBusInventoryProxy
    • Removed: MTEHatchCraftingInputMEGui
    • Fixed: LMA pattern visibility
  • #5678 Moved milling ball loading to ProcessingLogic in IsaMill. Added prepareCatalyst() method to ChemicalPlant that is called during both normal and cached recipe path processing. - @zyf051520
    • Added: CRIB support for milling balls, CRIB support for catalysts, prepareCatalyst() method in ChemicalPlant
    • Fixed: ChemicalPlant catalyst recipes with CRIB
  • #5677 Added ScannerHandlerRegistry, IGTScannerHandler interface, and GTScannerResult class. Refactored MTEScanner to use handler-based recipe processing instead of hard-coded logic. Updated Research Station GUI and fixed Modular UI2 integration. - @C0bra5
    • Added: ScannerHandlerRegistry, IGTScannerHandler interface, GTScannerResult class, Research Station GUI improvements
    • Removed: Hard-coded scanner recipe logic
    • Fixed: Scanner single-block extensibility
    • Migration: Scanner recipe logic refactored; addon mods should update to use new IGTScannerHandler and GTScannerResult APIs.
  • #5665 Added new 256A hatch variants with corresponding texture overlays and recipes. Refactored fluid requirements in assembler recipes for multi-amp hatches across EV-UXV tiers. - @UltraProdigy
    • Added: 256A Dynamo Hatches (UV-UXV tiers), Overlay textures for 256A dynamo hatches, Hatch registry entries, Assembler recipes for new hatches
    • Migration: Multi-amp energy and dynamo hatch assembler recipes (4A, 16A and 64A, EV through UXV) now take tier-appropriate molten metals instead of Silver, Electrum and Tungsten. Re-scan or re-make your stored crafting patterns for these hatches before you queue any. The new 256A dynamo hatches are additive, UV through UXV.
  • #5656 Updated GlassTier to classify Glass as HV and modified MTESteamWasher to accept all glass variants. - @Yoshy2002
    • Added: Glass as HV-tier material, All glass types as valid Steam Washer input
    • Fixed: Steam Washer structure incompleteness
    • Closes GTNH#22605
  • #5645 Added an alternative recipe in RecipesMachinesMulti to accept forming press as a substitute. - @LazyFlesh
    • Added: Forming press alternative recipe for press controller
  • #5612 Updated ToolLoader recipes, added new tool classes (ToolFileHV/LV, ToolWireCutterHV/LV, ToolJackhammerLV/HV/MV), updated MetaGeneratedTool01 and IDMetaTool01 to support new tools, modified TreeFarm render for compatibility. - @UltraProdigy
    • Added: LV-HV Wire Cutter tools, LV-HV Electric File tools, LV-HV Jackhammer tools, Radox Polymer tool recipes, Jackhammer crafting recipes, Soldering iron battery options (Sodium, etc.)
    • Removed: GT++ Angle Grinder recipes (deprecated), GT++ Automatic Snips recipes (deprecated), Wirecutters missing texture issue
    • Fixed: Wirecutters texture display, Soldering iron battery variety, Tool material consistency
    • Closes GTNH#23038
  • #5611 Added toggle logic to CoverTabButton to close open tab when button is clicked a second time. - @danyadev
    • Added: Cover tab toggle-close functionality
  • #5607 Updated ProcessingWire recipe to enable superconductor wires as P2P GT EU mode conduits. - @Worive
    • Added: Superconductor P2P GT EU mode support
  • #5597 Created TileEntityModuleMinerGui with extensive parameter display, filter panel with mineable ore highlighting, calculator logic, and asteroid targeting system. Updated SpaceMiningRecipes and AsteroidData. Added Parameter base class extensions. - @FrostyFire1
    • Added: TileEntityModuleMinerGui (ModularUI2), In-game space mining calculator, Asteroid information panel, Targeting optimizer, Mineable ore filter highlighting, AsteroidData expansion, TileEntityModuleBaseGui
  • #5589 Refactored MTEHatchOutputME and MTEHatchOutputBusME into a new modular structure with base class, filter system (item/fluid), and cache/check mode logic. Added VoidProtectionHelper integration and AECacheCounter utility. - @hinyb
    • Added: Cache Mode and Check Mode for output devices, Blacklist filtering for Output Hatch, Void Cell support, MEFilterBase, MEFilterItem, MEFilterFluid classes, AECacheCounter utility, OutputBusType enum extension
    • Fixed: Crash when using ME Fluid Void Cell in Output Hatch, Dangote Distillus crashes
    • Closes GTNH#21974, GTNH#22135
  • #5571 Expanded MTEBioVat.addInformation() tooltip output with additional details about stored data and machine state. - @Spicierspace153
    • Added: expanded tooltip information for Bacterial Vat
  • #5567 Implemented sided overlay rendering for screwdriver use on MTEBuffer, MTEItemDistributor and related buffer machines, added configuration tooltip display via MTEBuffer.addInformation() and WAILA hooks. - @grimly
    • Added: screwdriver overlay for buffer machines, configuration visibility in tooltips, configuration visibility in WAILA
  • #5557 Added BOILER_SOLAR_CALCIFIED texture and overlay rendering logic in MTEBoilerSolar and MTEBoilerSolarSteel to display when calcification reduces steam output. - @serenibyss
    • Added: calcification overlay texture, calcification visual indicator
  • #5542 Enhanced CauldronFrontend recipe map display logic and GTPostLoad recipe initialization to provide richer recipe visualization in NEI. - @evgengoldwar
    • Added: improved NEI Cauldron recipe display
  • #5540 Added IV Acid Generator with custom efficiency parameter passed to constructor in MTEAcidGenerator. Refactored efficiency logic to accept constructor argument. Removed solid steel casing texture layer for IV tier to align with other IV singleblocks. - @loenaaaa
    • Added: IV Acid Generator, custom efficiency constructor parameter
    • Closes GTNH#22876
  • #5539 Added CauldronFrontend recipe display class, registered CauldronFrontend in RecipeMaps, created cauldron NEI configuration, and added localization strings. - @evgengoldwar
    • Added: cauldron recipe frontend, cauldron NEI support
  • #5526 Added GTPacket-based cape networking (GTPacketBroadcastCapes, GTPacketListCapes, GTPacketSetCape), new client-side cape handler (GTCapesClientHandler), and server-side cape loader. Removed legacy client-only cape event handler. - @glowredman
    • Added: cape networking packets, GTCapesClientHandler, GTCapeCommand, server-side cape loader
    • Removed: legacy client-side cape event handler and loader
  • #5516 Added Dirt Path and Farmland to the allowed top-layer block list in MTECharcoalPit, restricted to top layer only due to non-full-height block characteristics. - @ModularityEnjoyer
    • Added: Dirt Path and Farmland as permitted top-layer blocks
  • #5513 Added new beamline recipe in BeamlineRecipeLoader for raw advanced crystal chip production. - @lonei-G
    • Added: Beamline recipe for raw advanced crystal chip using CeLuAG
    • Closes GTNH#22749
  • #5496 Added RandomBounbles entry to the Mods enum in gregtech.api.enums.Mods. - @Ethryan
    • Added: RandomBounbles mod enum entry
  • #5478 Ported MTEBasicMachineWithRecipe and related classes to MUI2, added BasicUIProperties and BasicUIPropertiesBuilder, migrated 500+ texture entries to GTGuiTextures, added power button widget support. - @chrombread
    • Added: MUI2 basic machine UI, power button widget, BasicUIProperties builder, GUI textures for standard machines
  • #5413 Extended GTRecipeBuilder with iCircuit() method and padding in input methods to allow iCircuit calls at any point in recipe builder chain without ordering constraints. - @UltraProdigy
    • Added: iCircuit() method in GTRecipeBuilder
  • #5411 Added GTGuiTheme and GTGuiThemes classes, updated Dyes enum with RGB values, modified CommonMetaTileEntity to support theme application. - @chrombread
    • Added: GTGuiTheme class, GTGuiThemes class, theme colorization support
  • #5402 Added button widget and corresponding toggle state to MTEHatchCraftingInputME, with localization strings for en_US and ru_RU. - @ABKQPO
    • Added: show on Interface Terminal button, toggle state for terminal display
  • #5389 Modified MaterialGenerator to generate rod recipes during material registration phase instead of relying on post-init generation, covering generateNuclearMaterial and generateNuclearDusts methods. - @CN132DAS
    • Added: Rod crafting recipes for radioactive materials
    • Fixed: Craftability of radioactive rods
    • Closes GTNH#22061
  • #5387 Added sheetmetal block definitions to Werkstoff system with corresponding textures, ore prefix, and material references in BWGTMaterialReference and related loaders. - @RecursivePineapple
    • Added: Sheetmetal blocks, Sheetmetal block textures, Sheetmetal ore prefix
    • Removed: Deprecated NonNullWrappedHashMap and NonNullWrappedHashSet utilities
  • #5338 Updated lang file entry to change NEI tab from "PBF" to "BBF" for Primitive Blast Furnace recipes. - @UltraProdigy
  • #5322 Created Space Hazard in the hazard system (Hazard.java, HazardProtection.java, HazardProtectionTooltip.java) for Four's armor augment. - @RecursivePineapple
    • Added: Space Hazard type, Space hazard protection tooltip
  • #5306 Extended MetaGeneratedItem01 cover registration to include UIV-MAX conveyor and pump items with 2x scaling per tier following established tier progression. - @GDCloudstrike
    • Added: UIV-MAX conveyors as covers, UIV-MAX pumps as covers
  • #5304 Added batch mode configuration to MTEOilDrillInfinite with default batch size of 128 ticks (6.4 seconds), modified MTEOilDrillBase to support batch parameters. - @Spicierspace153
    • Added: Batch mode to Infinite Fluid Drills
    • Closes GTNH#22405
  • #5303 Added machine mode toggle GUI widgets to MTEMultiBlockBaseGui base class, created mode button textures, added mode status display to Research Station (MTEResearchStation), upgraded Research Station to full MUI2 implementation with 90+ lines of GUI code. - @FourIsTheNumber
    • Added: Machine mode toggle buttons to multiblock GUIs, Running mode text display, Mode button textures for arc furnace, distillation, mass fabrication, plasma, recycling, research, and scanner modes, MUI2 Research Station implementation
  • #5297 Added mod detection for Nuclear Horizons in Mods.java; updated FissionFuelLoader and CentrifugeRecipes to conditionally disable conflicting recipes based on Nuclear Horizons presence. - @RecursivePineapple
    • Added: Nuclear Horizons mod detection
  • #5289 Added Small Dust Schematic recipe via DustLoader, new item metadata in MetaGeneratedItem01, and corresponding item list entry. Recipes registered in ProcessingDust and RecipeGenDustGeneration loaders. - @loenaaaa
    • Added: Small Dust Schematic item, Packager recipe to convert dusts to small dusts, texture asset for schematic
  • #5270 Added MTEChamberCentrifuge.ogg sound file and registered it in SoundResource.java and sounds.json; integrated sound playback in MTEChamberCentrifuge.java. - @chrombread
    • Added: Spinmatron sound effects
  • #5260 New MTEHatchInputDebug class with modular UI; ItemList, MetaTileEntityIDs, and Textures updated; MTEMultiBlockBase enhanced with hatch validation. - @chrombread
    • Added: Debug input hatch, Debug hatch texture, Debug hatch GUI
  • #5259 New MTEHatchInputBusDebug class with modular UI; ItemList, MetaTileEntityIDs, and Textures updated; GhostCircuitSlotWidget enhanced. - @chrombread
    • Added: Debug input bus hatch, Debug bus texture, Debug bus GUI
  • #5258 Dependency versions bumped; MTEHatchNonConsumableBase, MTEHatchCraftingInputME, MTEHatchOutputBusME, MTEHatchOutputME, MTEDigitalChestBase, MEItemInventoryHandler, and MTEHatchTFFT refactored to match AE2 API changes. - @lc-1337
  • #5256 GTThaumcraftCompat lang strings moved from code to lang files; 29 English and 19 Chinese translations added. - @koolkrafter5
    • Added: GT Thaumcraft aspect hints
    • Removed: Thaumcraft compat lang keys from Java
  • #5250 MTEChamberCentrifuge enhanced with turbine hatch placement logic, shift-click handling, and automatic rotation based on structure preview. - @chrombread
    • Added: Turbine hatch survival autobuild placement, Turbine shift-click interaction, Automatic turbine rotation
  • #5238 Ported MTETeslaTower to MUI2; added MTETeslaTowerGui with LineChartWidget and TeslaNodeData sync handlers; refactored parameter system in TTMultiblockBase and added IParametrized interface; updated ITeslaConnectable and related classes; added UI textures and themes. - @FrostyFire1
    • Added: Tesla Tower MUI2 GUI, load visualization chart, amperage minimap, parameter editing panel
  • #5234 Updated ItemAugmentCore and MechArmorBase to synchronize charge levels; modified MechArmorAugmentRegistries and MTEModificationTable charging logic. - @dagger8243
    • Added: synchronized armor/core charging
  • #5230 Added MTECokeOven multiblock and supporting infrastructure: GTValues enum entries, ItemList items, MetaTileEntityIDs, textures, hatch implementation (MTEHatchCokeOven), GUI (MTECokeOvenGUI), recipe map, casings, and ModularUI2 theme/texture additions. - @Vlamonster
    • Added: GT Coke Oven multiblock, Coke Oven hatch, Coke Oven GUI, Coke Oven recipe map
  • #5213 Modified MTEHatch, MTEHatchInputBus, MTEHatchOutputBus, MTELinkedInputBus, and MTEHatchCraftingInputME to implement tier-dependent inventory sizes. Disabled Super Bus recipes via GregtechCustomHatches. - @evgengoldwar
    • Added: Tier-dependent bus inventory sizing
    • Removed: Super Bus crafting
  • #5210 Extended MaterialBuilder with lore text capability. Updated Werkstoff, Materials, and MetaGeneratedItem classes to support and display separate lore text independent of chemical formula tooltips. - @VortexSo4
    • Added: Material lore text system
  • #5204 Added GTSoundLoop position control mechanism via ISoundPosition interface with LinearSound/CircularSound/StaticSound implementations. Updated MTEMultiBlockBase and MTEEnhancedMultiBlockBase to position sounds at structure centers with dynamic volume scaling. - @RecursivePineapple
    • Added: Sound position control system, CircularSound class, LinearSound class, StaticSound class, ISoundPosition interface
    • Fixed: Sound positioning in multiblocks, Sporadic sound stopping
  • #5199 Refactored MTEMultiBlockBase to move progress increment into a separate overridable method, enabling per-multiblock progress customization. - @RecursivePineapple
    • Added: Custom progress increment hook method
  • #5195 Modified MTEHatchOutputBusME to recognize inverted partitioned cells and invert the filtering logic from whitelist to blacklist mode. - @AbdoDayem
    • Added: Inverted cell blacklist support
  • #5194 Introduced render rotation helper method in GTUtility and refactored MTEIndustrialLaserEngraver and TileEntityLaser to use it instead of manual rotation handling. - @chrombread
    • Added: Render rotation helper method
    • Fixed: Laser render orientation in edge cases
  • #5190 Refactored MTEPCBFactory into separate classes: new MTEPCBFactory for main multiblock, MTEPCBUpgradeBase abstract class, MTEPCBBioChamber and MTEPCBCoolingTower as sub-multis using data stick linking. Registered in LoaderMetaTileEntities and AssemblyLine recipes. - @Dream-Master
    • Added: PCB Factory sub-multiblock architecture, PCB upgrade linking system, Bio chamber and cooling tower sub-multis
    • Removed: Old monolithic PCB Factory implementation (1388 lines)
    • Fixed: CycleButtonWidget texture getter not set in PCB Factory
    • Closes GTNH#20776
  • #5189 Added hasWailaAdvancedBody() and getWailaAdvancedBody() methods to IGregtechWailaProvider interface, implemented in BaseMetaTileEntity and BaseMetaPipeEntity, added ME output device configurations in GregtechWailaDataProvider. - @Worive
    • Added: WAILA advanced body API methods, Hotkey configuration for ME devices
    • Closes GTNH#18491
  • #5186 Complete rework of cape system: moved cape loading and management to common code (GTCapesLoader), added new network packets (GTPacketSetCape, GTPacketListCapes, GTPacketBroadcastCapes), new GTCapeCommand for client/server communication, config persistence in Client config. - @glowredman
    • Added: Multi-cape ownership system, Cape selection command, Cape validation and broadcasting
    • Removed: Old client-side cape system (GTCapesClientHandler moved to common, GTCapesEventHandler and old GTCapesLoader removed)
  • #5175 New MTEDebugTank class in storage module, registered in LoaderMetaTileEntities, added to ItemList and MetaTileEntityIDs enums with lang entry. - @FourIsTheNumber
    • Added: Debug fluid tank meta tile entity
  • #5172 New ItemChaosLocator and ChaosLocatorGui classes with MUI2 implementation, updated PacketTeleportPlayer network packet, added corresponding textures and GUI themes. - @GDCloudstrike
    • Added: Chaos Locator item, Chaos Locator GUI, Teleport to Chaos Islands functionality
  • #5165 Introduced CircularGaugeDrawable and gauge theme support to MTESteamMultiBaseGui, integrated pressure widget into all steam multiblock GUIs. - @FrostyFire1
    • Added: Animated steam gauge display, Circular gauge drawable component, Gauge theme support
  • #5164 Extended MTESteamMultiBase and all steam multiblock implementations with theme support in ModularUI2 GUI framework. - @FrostyFire1
    • Added: ModularUI2 themes for steam multiblocks
  • #5162 Added /gt cleanroom_bypass command with permission checks in GTCommand, integrated FakeCleanroom into recipe validation in MTEBasicMachine. - @UltraProdigy
    • Added: Cleanroom/LowGrav bypass command
  • #5154 Extended IMTERenderer with bounding box customization capability in BaseMetaTileEntity and renderer interface. - @chrombread
    • Added: Bounding box customization for MTERenderer
  • #5153 Introduced UnificationOreAdapter, BlockPosMap, ChunkMap, and GTMockWorld for generic ore detection. Added non-GT ore prospecting via new ore adapter interface, enabling Electric Prospector to scan for Minecraft and modded ores. - @RecursivePineapple
    • Added: Non-GT ore adapter system, Ancient debris material, Per-chunk and per-block data maps, Mock world for ore drop simulation
  • #5135 Adds LHC multiblock implementation with associated GUI, recipe map, textures, and particle material definitions. New beam output system with dedicated hatch classes (MTEHatchAdvancedOutputBeam) for downstream multiblock integration. - @ham-corp
    • Added: Large Hadron Collider multiblock, Particle beam output system, Elementary particles (standard model), Baryons and mesons, Beam crafter multis (planned)
    • Removed: Compact Cyclotron (COMET)
  • #5123 Added IParametrized interface for parameter-aware multiblocks, created TTMultiblockBaseGui, added GUI textures and theme definitions, parametrized MTEMultiBlockBaseGui to support inheritance without redundant field declarations. - @FrostyFire1
    • Added: IParametrized interface, TTMultiblockBaseGui class, GUI textures and theme definitions, Parameter button overlays
  • #5111 Removed 34 lines of custom tooltip rendering from MTEDigitalTankBase, now using waila's fancy fluid tooltip renderer (requires waila PR #43). - @SuperSoupr
    • Removed: Custom tooltip rendering in MTEDigitalTankBase
  • #5101 Added enableMui2() calls to multiblock classes that use default MTEMultiBlockBaseGui behavior, including those with machine mode switches. - @FrostyFire1
    • Added: MUI2 support for 20+ multiblocks
  • #5100 Added startup notification text to MTEMultiBlockBaseGui and localization for MUI2 multiblocks during initialization. - @FrostyFire1
    • Added: Startup text display, Startup period localization
  • #5099 Added MTEHatchCustomFluidBaseDebug class extending MTEHatchCustomFluidBase with GUI support for steam testing. Registered in MetaTileEntityIDs and GregtechCustomHatches. - @chrombread
    • Added: Debug steam hatch, MTEHatchCustomFluidBaseDebug base class, Debug overlay texture
  • #5096 Added MTEHatchEnergyDebug class with custom GUI (MTEHatchEnergyDebugGui), debugEnergyPresent flag, and support for multi-amp laser power testing. Registered in MetaTileEntityIDs and LoaderMetaTileEntities. - @chrombread
    • Added: Debug energy hatch, Debug energy hatch GUI, debugEnergyPresent flag
  • #5094 Added boron trioxide recipe in RecipeLoader for lanth module. - @Nockyx
    • Added: Boron trioxide recipe from pure boron
    • Closes GTNH#22003
  • #5092 Extended GTUtility with per-tick calculation and added localization string for MUI2 recipe displays. - @Nockyx
    • Added: Per-tick production display in recipe hover, Localization entry for per-tick label
    • Fixed: Missing per-tick information on recipe display
    • Closes GTNH#22011
  • #5089 Added ResizableItemDisplayWidget, ItemDisplayKey, and display helper methods to MTEMultiBlockBaseGui and GTUtility. Enables DynamicWidget usage for recipe visualization. - @chrombread
    • Added: Recipe display widgets for MUI2, Stack merging logic, ItemDisplayKey and ResizableItemDisplayWidget
  • #5054 Added TTRenderGTProgressBar renderer and GTWaila integration with configuration options in Client settings and preload initialization. - @SuperSoupr
    • Added: WAILA-style progress bar rendering, Progress bar configuration options
  • #5048 Introduced HarvestTool enum and applied it to MTECable, MTEFluidPipe, MTEFrame, MTEItemPipe, MTEMultiBlockBase, MTETieredMachineBlock, and pipes in related addons for proper mining behavior. - @Vlamonster
    • Added: HarvestTool enum, Mineable behavior to MTEs
  • #5047 Added Autoclave recipe: 3 Olivine Dust + Distilled Water → 2 Asbestos Dust + Magnetite Dust + 1000L Hydrogen Gas. - @Sunrunner37
    • Added: Autoclave asbestos recipe
    • Fixed: Asbestos availability in non-worldgen modes
    • Closes GTNH#21908
  • #5042 Added configuration variables to MTEMultiBlockBase and MTEMultiBlockBaseGui to control corner column element visibility. - @chrombread
    • Added: Corner column toggle variables
  • #5036 Added 5 methods to MTEHatchInputBus and MTEHatchInputBusME: removeResource, removeAllResource, findResource, hasResource (two overloads). These work with standard buses and stockers but not cribs. - @VortexSo4
    • Added: removeResource method, removeAllResource method, findResource method, hasResource method (two overloads)
  • #5030 Enhanced EUOverclockDescriber and GTUtility tier colors to include color codes and underlines in NEI display strings. - @chrombread
    • Added: Color support in NEI tier display
  • #5023 Switched GTGuis.USE_MUI2 flag to true, activating MUI2 implementations for covers and single-block entities with MUI2 support. - @FrostyFire1
  • #5017 Created MTEHatchExtrusion class, shape/mold packet synchronization, GUI widget support, and tier-based recipe registrations; added new MetaTileEntity IDs and textures. - @VortexSo4
    • Added: Extruder buses (MTEHatchExtrusion), GTPacketSetShape for shape synchronization, GhostShapeSlotWidget and GhostShapeSyncHandler
  • #5011 Added GTPacketSetMold for client-server synchronization; modified MTEHatchSolidifier to support phantom mold selection UI. - @VortexSo4
    • Added: Phantom mold selection in solidifier hatches, GTPacketSetMold networking
  • #5009 Added VENDINGMACHINE enum entry to gregtech/api/enums/Mods.java to register the Vending Machine mod in GT's mod compatibility system. - @cubefury
    • Added: Vending Machine mod ID
  • #5008 Added PowerGogglesCommand with config and chart subcommands, introduced DelayedGuiDisplayTicker for UI scheduling, and modified event handlers to reposition display alongside the hotbar. - @FrostyFire1
    • Added: PowerGogglesCommand, DelayedGuiDisplayTicker, Command interface for power goggles
    • Closes GTNH#21672
  • #5005 MTEMultiBlockBase::supportsRecipeLocking() now defaults to true. Multiple multiblock classes updated to use machineMode instead of separate mode flags. This improves recipe cache clearing and UI consistency. - @54M44R
    • Added: Recipe locking support across multiblocks
    • Removed: MTEMegaChemicalReactorLegacy recipe locking
  • #4999 Extended pollution system with new mixins for furnace types (MixinTileEntityBlastFurnacePollution, MixinTileEntitySmokerPollution, MixinFurnaceLogicPollution, MixinNetherrackFurnacePollution). Updated PollutionHelper and PollutionTooltip to handle additional furnace types. - @wlhlm
    • Added: Pollution output for four furnace types
    • Closes GTNH#21774
  • #4993 Removed orientation restrictions in MTEIntegratedOreFactory to allow upside-down placement. - @Bjdufre1
    • Added: Upside-down IOF orientation support
    • Removed: IOF orientation restriction
    • Closes GTNH#21693
  • #4987 Updated KubaTechGTMultiBlockBase to call createMuffleButton() in UI initialization, and added the same call to MTEMegaIndustrialApiary's addUIWidgets() method. - @lynxx131
    • Added: Sound muffling widget support in Mega Apiary
  • #4986 Added MTEActiveTransformerGui with power averaging widgets to measure per-transformer throughput; implemented custom averaging algorithm to track power flow without excessive memory overhead; extended BaseMetaTileEntity and TTMultiblockBase to support widget additions. - @Dream-Master
    • Added: Active Transformer power throughput UI, Power averaging display widget
  • #4985 Modified MTEHatchOutputBusME and MTEHatchOutputME to check cell capacity restrictions and enforce configured limits on hatch storage volume. - @Dream-Master
    • Added: Storage cell capacity restriction support for ME hatches
  • #4982 Replaced legacy HTGR implementation with new reactor featuring dynamic pellet-based mechanics: fuel conversion at 0.1415% per operation, helium loss at 0.05% per operation, power scaling 0.2-8A IV based on coolant level, operation duration 100-1000s scaled by pellet count, maintenance affecting conversion rate. Added new breeding recipes, removed old static recipes, retiered to IV. - @Pxx500
    • Added: HTGR breeding system, Europium alternate recipe, Americium alternate recipe, Helium management, Dynamic power scaling, Maintenance-based balancing
    • Removed: Old HTGR vein processing recipes, Legacy HTGR formulas
    • Migration: You have to rebuild your old HTGR. The reactor is a completely new and much larger structure made from casings that did not exist in 2.8.4, so take the old one down and build the new one from the NEI preview when you get there. It now runs at IV instead of LuV, needs a helium loop that slowly leaks, and takes new TRISO fuel. Your old TRISO and BISO pebbles are not removed and can be centrifuged back down.
  • #4974 Introduced client metadata tracking system (ClientMetaTrackerRegistry, IClientMetaTracker, GTCoilTrackerAccess) and cross-mod integration in ClientMetaManager to handle extended meta values for coils and blocks when using ChunkAPI. - @Cleptomania
    • Added: ChunkAPI compatibility layer, ClientMetaTrackerRegistry, GTCoilTrackerAccess
  • #4973 Added screwdriver mode switch handler to MTESteamFurnaceMulti to enable mode cycling on right-click with screwdriver. - @chrombread
    • Added: Screwdriver mode switching for Steam Hearth
  • #4970 Refactored PCB Factory into modular architecture: moved monolithic MTEPCBFactory to pcb/ package as separate MTEPCBFactory, MTEPCBBioChamber, MTEPCBCoolingTower, and MTEPCBUpgradeBase classes; added data stick linking mechanism and new meta tile entity IDs. - @guid118
    • Added: PCB sub-multiblock framework, PCB Bio Chamber, PCB Cooling Tower, Data stick linking for PCB upgrades
    • Removed: Original monolithic MTEPCBFactory
    • Migration: Your PCB Factory keeps its shape and does not have to come down. A bio chamber or cooling tower that was working in 2.8.4 stays linked and goes on working. From now on new upgrades are built as their own multiblocks and linked with a data stick, so if you ever tear the old cooling tower down you will have to build the new standalone version to get overclocking back.
  • #4799 New multiblock MTESteamHearth added to gregtech with dual recipe map backends (EFRBlastingBackend, EFRSmokingBackend) accessible through mode-switching. Adds compileOnlyApi dependency on EFR fork. Also fixes steam multiblock casing texture bug on server start. - @chrombread
    • Added: Steam Hearth multiblock machine, Blast Furnace recipe mode for metals, Smoker recipe mode for food items, EFR backend recipe map integrations
    • Fixed: Steam multiblock casing texture corruption on server load
  • #4627 Introduces MTEModularSolidifier multiblock with recipe map integration, modular UI2 rendering, new sound resources, texture definitions, and tiered coil systems. Extends existing multiblock infrastructure (MTEMultiBlockBase) with new ItemList entries, texture IDs, and recipe map registration in RecipeMaps. - @chrombread
    • Added: Modular Solidifier multiblock machine, Modular UI2 texture definitions and themes, Sound resources for Solidifier operation, Tiered coil and solidifier block variants, Recipe map for Solidifier processing
  • #4617 Added Backhand support via OffhandToolFunctionalityHandler and new IItemBehaviour interface. Mouse event handling in GTMouseEventHandler now reads from player keybindings instead of hardcoded button IDs. Spray packet (GTPacketInfiniteSpraycan) expanded to handle offhand placement and color picking. - @querns
    • Added: Offhand support for Infinite Spray Can, Middle-click color picking in either hand, Automatic spray on block placement when offhanded, Keybinding-aware mouse event handling, IItemBehaviour interface for item click behaviors, OffhandToolFunctionalityHandler for offhand item logic
  • #4581 Refactored MTEMultiBlockBaseGui to return Flow from createPanelGap instead of IWidget, relocated mode switch UI positioning, added hoverable status indicators using new shutdown reason enums (ReasonOutOfFluid, ReasonOutOfItem, etc.), and registered corresponding texture icons in GTGuiTextures. - @chrombread
    • Added: Shutdown reason status indicators (out of fluid, out of item, manual shutdown, missing tools), Hoverable UI elements for machine status, New texture icons for shutdown states
  • #4511 MTEHatchCraftingInputME and MTEHatchCraftingInputSlave now persist proxy connection state, likely via NBT serialization in save/load methods, allowing buses to restore their cached proxy references on world reload. - @AbdielKavash
    • Added: proxy connection persistence in ME Crafting Input buses
  • #4481 Added cable connection logic to MTECable with directional and multi-cable support. Wire cutter tool now triggers cable attachment via shift-right-click interaction. New configuration and language strings added for the feature. - @AbdielKavash
    • Added: Multi-cable connection mode for wire cutters, Directional cable attachment (shift-right-click per direction), Non-directional cable attachment (shift-right-click center)
  • #4464 Added UI widgets to MTEActiveTransformer to track and display power throughput using a simple averaging algorithm. Modified MTEMultiBlockBase and TTMultiblockBase rendering paths to accommodate the new display, and added language strings for the UI labels. - @RecursivePineapple
    • Added: Active Transformer throughput display widget, Power flow averaging algorithm, UI language strings for throughput indicators
  • #4452 Modified MTEHatchOutputBusME and MTEHatchOutputME to check the installed AE cell's capacity restriction (if set) and apply it to the hatch's available capacity. Handles unconfigured hatches, pre-configured hatches with storage components, and cells with 0 capacity. - @RecursivePineapple
    • Added: cell capacity restriction enforcement in ME output hatches, cell capacity restriction enforcement in ME output busses
    • Fixed: ME output hatches ignoring storage cell capacity limits
  • #4378 Introduced MTEChamberCentrifuge and MTEChamberCentrifugeGui. Scales tier-by-tier with configurable parallels based on lubricant and optional secondary fluid (25% bonus). Gated to milestone materials. - @chrombread
    • Added: Chamber Centrifuge multiblock, New casings, Centrifuge recipe metadata
  • #4065 Introduced ItemAugment hierarchy, ArmorContext system, ArmorEventHandlers, and modular armor item classes. Cores range from Energy Core (HV) to Singularity Core (UHV); frames provide Protection/Movement/Utility/Prismatic slots. - @FourIsTheNumber
    • Added: Modular armor system, Augment framework, Armor event handlers, New armor items and cores
  • #2903 Introduced NAC multiblock structure, module system, custom factory logistics framework (IFactoryElement, IFactoryGrid, IFactoryNetwork), new casings, textures, and sound resources. Multiblocks scale from UEV tier onward. - @NotAPenguin0
    • Added: Nanochip Assembly Complex multiblock, Factory logistics API, Module system, New casings and textures
    • Migration: Existing CAL and AAL circuit production setups will need to be upgraded to use the new Nanochip Assembly Complex for lategame recipes.

New Content ​

  • #7934 Extended GTFoodStat to support configurable explosion strength, added ice cream recipe to IceCreamMachineRecipes with new item in IDMetaItem02 and textures. - @Ranzuu
    • Added: explosive ice cream item, configurable food explosion strength, ice cream recipe
  • #7925 Added 27 new PNG texture files for augment items in the gregtech textures directory. - @Spaghetti-OberNub
    • Added: 27 new augment item textures
  • #7896 Added Trophy Ice Cream item to ItemList, IDMetaItem02, and MetaGeneratedItem02 with corresponding texture and lang entry. - @Ranzuu
    • Added: Trophy Ice Cream item, Trophy Ice Cream texture
  • #7873 Updated droneCase.png texture file and removed animation metadata (.mcmeta) that was no longer appropriate. - @Auynonymous
    • Removed: Dyson Drone Case animation metadata
  • #7815 Extended ItemList and MetaGeneratedItem02 with new ice cream enum entries, added corresponding textures, recipes, and lang entries. Renamed ice cream enums to Food_IceCream_ prefix. - @Ranzuu
    • Added: 16 new ice cream flavors with textures and effects, new lang entries for ice creams
  • #7674 Modified texture assets for soft mallet and maintenance icons. - @DylanTaylor1
  • #7665 Added three new assembler recipes to AssemblerRecipes.java for vanilla sword crafting, enabling non-hand-tool production paths. - @Angry3vilbot
    • Added: assembler recipes for vanilla swords
  • #7661 Replaced and added animated circuit texture files in src/main/resources/assets/gregtech/textures/items/gt.metaitem.03/, including new .mcmeta animation metadata files. - @ZaykieT
    • Added: Animated circuit textures, Animation metadata files
  • #7443 Replaced texture file for Quantum Eye item (gt.metaitem.01/724.png) with new artwork. - @Graymare
  • #7416 Extended BlockTintedIndustrialGlass with all 16 dye colors, added ItemList entries, texture resources, CTM files, and lang strings for each variant. - @Auynonymous
    • Added: 16 industrial tinted glass color variants
  • #7347 Updated textures for Industrial Apiary upgrade items (metaitem.03 IDs 199-217). - @jude123412
  • #7330 Extended RecipeGenDustGeneration to generate packing recipes for GT++ tiny dust items. - @MLGfruitshoot
    • Added: Packager recipes for GT++ tiny dusts
  • #7318 Added explicit color definitions to LoaderGTBlockFluid for ammonia, argon, carbon dioxide, helium, hydrogen, liquid nitrogen, liquid oxygen, and methane; added corresponding texture files with metadata; removed duplicate color definitions from MaterialsInit. - @boubou19
    • Added: Explicit fluid color definitions, Fluid texture assets with metadata
    • Removed: Duplicate color registration
    • Fixed: Autogenerated fluid colors
  • #7286 Added CTM texture properties and variant images for coils (awakened, cupronickel, etc.) in assets/gregtech/mcpatcher/ctm/coils/. Updated textures for QFT and Speeding Pipe. - @Auynonymous
    • Added: CTM support for coils and solenoids, new Hypogen coil textures, new QFT coil texture, new Speeding Pipe texture
  • #7276 Added texture and animation metadata files for superdense plates following GTPP material naming conventions. - @Ruling-0
    • Added: Superdense plate textures for Astral Titanium, Celestial Tungsten, Chromatic Glass, Texture animation metadata
    • Fixed: Missing GTPP superdense plate textures
  • #7128 Updated texture asset files for Industrial Apiary upgrades from 32x32 to 16x16 resolution and added corresponding texture registration in GTUITextures. - @jude123412
    • Added: 16x16 Industrial Apiary upgrade textures
    • Removed: 32x32 upgrade textures
  • #7118 Added Amalgatite to Materials enum and MaterialsInit, created gem textures, added Autoclave and recipe loader support for Amalgatite processing (Autoclave, Chemical Reactor, Plasma Forge). - @Auynonymous
    • Added: Amalgatite material, Chipped/Flawed/Flawless/Exquisite Amalgatite variants, Gem processing recipes, Autoclave gem seed recipes
  • #7020 Added new texture assets for all mechanical armor frame types (Light, Medium, Heavy, Adaptive, Bulwark, Morphic, Nimble, Lightning, Infinity) and Modification Table (top, side, bottom). Updated Textures enum and MechArmorAugmentRegistries texture mappings. - @FourIsTheNumber
    • Added: New frame and Modification Table textures
  • #7016 Updated CTM configuration in nine purification unit classes (Clarifier, Degasser, Flocculation, Ozonation, pH Adjustment, Plasma Heater, UV Treatment, Baryonic Perfection, and main Plant) with new texture definitions and properties. - @seventh-june
    • Added: Waterline CTM textures and configuration
  • #6995 Added CTM texture files and properties configuration for laser containment casings. - @FourIsTheNumber
    • Added: CTM texture tiles for laser containment casings
  • #6990 Added texture asset file gt.augmentmilkinfusion.png. - @Spaghetti-OberNub
    • Added: Milk infusion augment texture
  • #6983 Replaced jetpack augment texture file (gt.augmentjetpack.png). - @FourIsTheNumber
  • #6959 Added recipe definitions in BECRecipes.java, created new decorative frame block in BlockDecorativeFrame.java, and integrated metamaterials from PR #6735 into casing recipes across assembler and forming press machines. - @Ruling-0
    • Added: BEC casing recipes, BlockDecorativeFrame class, BEC material item definitions
  • #6929 Added two new recipes to MTEIndustrialRockBreaker for Nether Leaves (60/30/10% drops) and End Leaves (90/10% drops) with 10% leave consumption. - @jude123412
    • Added: Thaumic Bases Nether/End Leaf processing recipes
  • #6918 Updated GTGuiTextures texture definitions and MTEBasicMachineBaseGui to use new side selection arrow textures (up/down/left/right) and a new selection background texture, replacing the previous pensib texture. - @FrostyFire1
    • Added: new side selection arrow textures (up, down, left, right), new side selection background texture
  • #6873 Added washer recipe entries in GregtechSimpleWasher.java for GT++ impure dust materials. - @MLGfruitshoot
    • Added: Simple washer recipes for GT++ impure dusts
  • #6752 Updated MetaItem 03 coil texture files for UV (148.png) and UIV (260.png) tiers. - @jude123412
  • #6742 Added Conflict & Peace casings, Conduit and Transformative Coil blocks with Chromatic Glass render sync; updated BEC structure definitions and MTEBECGenerator, MTEBECStorage, MTEBECAssembler, MTEBECDiode, MTEBECIONode textures. - @Auynonymous
    • Added: Conflict and Peace casings, Conduit block, Transformative Coil block
  • #6575 Registered block textures and models for Hexanite, Churitsu, and Shijima. Added Fluid Solidifier recipes to convert unformed ingots into blocks over netherite blocks. - @Auynonymous
    • Added: Hexanite block, Churitsu block, Shijima block, Block textures, Fluid Solidifier recipes
  • #6550 Registered Shijima and Churitsu materials in Materials.java and MaterialsIDMap.java. Added EBF, Centrifuge, and Mixer recipes for crafting these alloys from various white/gray materials with exact timing matching Tairitsu. - @Auynonymous
    • Added: Shijima material and recipes, Churitsu material and recipes, Technetium processing recipes
  • #6524 Added tooltip hint to MetaGeneratedItem01 and localization strings for GT5U.tooltip.flour.cauldron in en_US.lang and ru_RU.lang. - @Eldrinn-Elantey
    • Added: Flour cauldron tooltip
  • #6488 ItemList, IDMetaItem03, and MetaGeneratedItem03 extended with new circuit board tiers; 35 new texture assets added; language file updated. - @jude123412
    • Added: Exotic Circuit Board, Cosmic Circuit Board, Transcendent Circuit Board, IC2 circuit replacements, circuit board textures
  • #6345 Adds 11-line Assembler recipe to AssemblerRecipes.java using Circuit 1 to avoid conflicts with Clean Stainless Steel Casing recipes. - @KleinGrrmpf
    • Added: Forming Core Assembler recipe
  • #6334 New block casing added to BlockCasings12, registered in Casings.java and ItemList. Includes CTM textures and language strings. Recipe added to MTERecipeLoader. - @Yoshy2002
    • Added: Forming Core block, CTM textures for forming core
  • #6290 Added new Hypogen texture assets (coil, block, foil, frameGt, etc.), updated Dragonblood material to use Hypogen textures. Extended GTPPMTECable to support custom texture sets. Updated BaseItemCell and BaseItemPlasmaCell to support custom textures. - @Auynonymous
    • Added: Hypogen custom texture set, support for custom textures in GT++ wires/cables/cells, Dragonblood texture alignment
  • #6241 Updated texture assets and casing block definitions in GregtechMetaCasingBlocksPipeGearbox and TexturesGtBlock to use unique textures instead of duplicates, and corrected Europium casing material color. - @seventh-june
    • Added: new unique textures for multiple casings
    • Removed: duplicate texture usage
    • Fixed: Europium casing color alignment with material
  • #6187 Added Apatite output to Phosphorous Asteroid and created new Space Ore Asteroid entry in SpaceMiningRecipes with lang keys. - @flamingowrangler2869
    • Added: Apatite to Phosphorous Asteroid, Space Ore Asteroid
  • #6097 Added 72 new PNG texture files for various mold variants across item registries. - @seventh-june
    • Added: mold item textures (72 variants)
  • #5896 Added Fluxed Electrum material to MaterialsInit with custom TextureSet; created animated texture files for items, blocks, and coils with .mcmeta animation metadata. - @Auynonymous
    • Added: Fluxed Electrum material set, Animated item textures, Animated block textures, Animated coil textures, Animated fluid texture
  • #5362 Updated COKE_OVEN_CASING, COKE_OVEN_OVERLAY_ACTIVE, and COKE_OVEN_OVERLAY_INACTIVE texture assets. - @Vlamonster
  • #5249 SpaceMiningRecipes extended with nether asteroid definition; lang file updated. - @EnderProyects
    • Added: Nether ore asteroid
  • #5069 Added MTELatex multiblock class, new material ESC in chemical recipes, new cableRecipes recipemap, wire casing rubber discounts (6.25% per tier), and Rubber Singularity integration (8→16 parallels, +25% discount). - @3ricbae
    • Added: LATEX cable coating multiblock, Elastic Supercomposite Rubber material, cableRecipes recipemap, Rubber Singularity compatibility
    • Migration: Craft the new LATEX multiblock machine and route cables through it to coat cables IV and above; old IV+ cable recipes remain available via Assembler for LV-EV.
  • #4782 Added five new bee definitions (Manasteel, Elven, Terrasteel, Gaia, M-M-M) in GTBeeDefinition and GTBranchDefinition with corresponding comb types and MetaItems. Each bee has specific breeding requirements and base production blocks defined in ItemComb and related enums. - @3ricbae
    • Added: Manasteel bee (bred from Steel + Alfheim), Elven bee (Elven Portal trade), Terrasteel bee (bred from Elven + Shadow Metal), Gaia bee (bred from Terrasteel + Naquadah, blink lifespan), M-M-M bee (bred from Manasteel + Machinist, blinding speed)
  • #4669 Tool texture definitions have been refactored from hardcoded Textures enum entries into TextureSet-based implementations. Individual tool classes (ToolBranchCutter, ToolButcheryKnife, etc.) updated to use the new TextureSet system. TextureSet enum extended with new material-specific texture definitions. - @jude123412
    • Added: custom texture sets for multiple tool materials, texture support for melodic alloy and crystalline pink slime plates
    • Removed: legacy texture entries from Textures enum
    • Fixed: White Dwarf Star tool texture rendering, melodic alloy and crystalline pink slime plate texture visibility
    • Closes GTNH#18346, GTNH#19323

Changes ​

  • #7809 Cleaned up BECMetaMaterialRecipes by removing unused metamaterial Advanced Assembly Line recipes. - @Ruling-0
    • Removed: BEC metamaterial AAL recipes
  • #7788 MTEMultiBlockBase restores overridden getInfoData() removed in PR #5833. ProcessingLogic, OverclockCalculator, and ParallelHelper updated to support tracking maximum recipe tier separately from power tier. - @Nana-Sakura
    • Added: maximum recipe tier tracking in tricorder
    • Fixed: tricorder showing incorrect power input
  • #7769 MTEHatchCraftingInputME now sends the hatch name to WAILA as separate parts (base name with circuit numbers, then one line per item) instead of a pre-joined string, allowing WAILA to wrap text naturally. - @Eldrinn-Elantey
  • #7765 Modified MTEIndustrialElectromagneticSeparator tooltip generation for consistency with recent multiblock UI changes. - @MLGfruitshoot
  • #7747 Added ComparisonWithAnalog enum and analog mode support to MTEHatchCondensateDetector. Fixed lang keys for condensate types. Enhanced MTEHatchIONodeController and line-of-sight rendering. Added DisableableTextFieldWidget for UI mode switching. - @RecursivePineapple
    • Added: Analog redstone output mode for Nanite Detector, ComparisonWithAnalog comparison mode enum, DisableableTextFieldWidget for settings, Visual beam indicator for LoS hatch during crafting
    • Fixed: Condensate abbreviated name lang keys
  • #7738 Added WAILA input/output display to MTEDiode using transformer keys and voltage tier config, disabled canFill() for fluid handling. - @Eldrinn-Elantey
    • Added: WAILA input/output display for Diodes
    • Fixed: Unintended fluid tank on Diodes
  • #7735 Enabled shift-click handling in CoverChestGui for Item Holder covers, matching behavior of other container interfaces. - @Ranzuu
    • Added: Shift-click priority for Item Holder covers
  • #7728 Updated MTEExtremeEntityCrusher, MTEMassSolidifier, and MTEIndustrialCuttingMachine to use getTierForStructure for energy hatch tier validation, enabling Debug Energy Hatch support. - @Angry3vilbot
    • Added: Debug Energy Hatch support for EEC and Mass Solidifier, Debug Energy Hatch support for Industrial Cutting Factory with lower-tier sawblades
  • #7700 Updated PNG textures for soldering iron (icon, handle, tool head, material icons, overlays) and screwdriver icon. - @DylanTaylor1
    • Fixed: Soldering iron visual inconsistency, Screwdriver icon text height
  • #7690 Updated Shijima casing assembly recipe in ResearchStationAssemblyLine.java to use bolt instead of screw in second slot. - @fehling135
  • #7657 Updated fluid unit display in tank info lines across multiple files (MTEYottaFluidTank.java, MTEHatchOutput.java, MTEHatchOutputMEBase.java, MTEQuantumTank.java, MTESuperTank.java) to use GTNHLib fluid unit configuration. - @Eldrinn-Elantey
    • Fixed: Hardcoded liter display ignoring config
  • #7599 Updated TTMultiblockBase and related hatch classes to implement event-based recipe checks like MTEMultiBlockBase, added missing input watchers to special hatches. - @Azusfin
  • #7590 Updated TargetChamberFrontend to conditionally hide Voltage line when amperage equals 1, moving tier information to Usage line. - @Eldrinn-Elantey
  • #7577 Modified MTEHatchCraftingInputME to suppress generated name suffixes when a custom name is set, while preserving them for unnamed hatches. - @DreamYao520
  • #7558 Added mandatory bus blacklisting in HatchElement enum and IHatchElement interface; reorganized beam multiblock lists into BeamMultiBase; removed legacy blacklisting code from BWUtil and MTEMultiBlockBase; updated multiple machine classes to inherit BeamMultiBase. - @Sanduhr32
    • Added: Mandatory input bus classification system, BeamMultiBase common configuration
    • Removed: Legacy bus blacklisting code in BWUtil, Duplicated beam-related lists in MTEMultiBlockBase
    • Fixed: NEI preview clutter from optional input buses
  • #7550 Added skipDescription flag to MTEBECAssembler, MTEBECDiode, MTEBECGenerator, MTEBECIONode, and MTEBECStorage. - @AnsonYeung
  • #7533 Reverted EHE steam tooltip changes that were redundant. - @Sanduhr32
  • #7523 Removed output hatch configuration from MTESourceChamber. - @Sanduhr32
    • Removed: fluid output hatch from Source Chamber
  • #7513 Removed error logging from MTEMultiBlockBase output overflow handling. - @AnsonYeung
    • Removed: overflow error message
  • #7510 Modified ArmorEventHandlers fall damage handler to cancel the fall damage sound event. - @Spaghetti-OberNub
  • #7508 Enhanced MTEMultiBlockBase WAILA info to display parallel override; removed redundant parallel info methods from MTEIntegratedOreFactory, MTEIndustrialFishingPond, MTEBlackHoleCompressor, and other machines. - @Sanduhr32
    • Added: parallel override WAILA display
    • Removed: duplicate parallel info from 5 machines
  • #7500 Refactored GUI coloring logic in GTGuiTheme, GTWidgetThemes, and CommonMetaTileEntity to replace full-GUI tinting with a small color swatch widget. Respects coloredGUI config option. - @Eldrinn-Elantey
    • Added: color swatch widget
    • Removed: full-GUI tinting behavior
    • Closes GTNH#23125
  • #7493 Modified lang file entries in assets/kubatech/lang/en_US.lang. - @Pxx500
  • #7476 Updated localization strings in en_US.lang and ru_RU.lang for heat and coil recipe parameters. - @Eldrinn-Elantey
  • #7430 Added AO support detection to ISBRWorldContext and SBRWorldContext. GTRenderedTexture now skips custom lighting when Angelica AO is active, with exception for glow textures that temporarily restore lighting. - @tiffit
    • Added: Angelica Celeritas AO detection, conditional lighting skip
    • Fixed: ore lighting with Angelica
    • Closes GTNH#24177
  • #7423 Modified MTERadioHatchGui to trigger sound only on GUI open and shortened audio file loop from 10s to ~3s. Removed unused sound trigger code from MTERadioHatch. - @loenaaaa
    • Removed: constant sound triggering logic
    • Closes GTNH#24747
  • #7405 Modified GTWorldgenerator to expose a single getOregenPattern() method that returns the currently-active pattern, eliminating the need for mods to choose between client and server variants. - @Algent
    • Added: getOregenPattern() method
  • #7383 Restructured MTEMultiBlockBaseGui recipe output layout to display rates on a separate line from product names, removing character limit restrictions. - @SKProCH
    • Fixed: output name truncation issue
    • Closes GTNH#19945
  • #7376 Updated language file en_US.lang to swap stocking hatch tooltip terminology. - @combusterf
  • #7375 Modified RecipeMaps to inject Circuit 1 requirement into gem upgrade variants of auto-generated EIC recipes. - @DreamYao520
    • Added: Circuit 1 requirement for generated gem recipes
  • #7371 Updated God Forge battery charge storage, NBT persistence, GUI synchronization, and battery config input to use long type in ForgeOfGodsData, MTEForgeOfGods, SyncValues, and BatteryConfigPanel. - @DreamYao520
    • Added: Long.MAX_VALUE input validation
    • Fixed: God Forge battery overflow
    • Migration: Load your world after updating; God Forge battery configurations above Integer.MAX_VALUE will now work correctly instead of overflowing.
  • #7313 Updated tier in MTEHatchCondensateDetector, MTEHatchIONodeController, MTEHatchNaniteDetector, and MachineLoader from UEV to UIV. - @Ruling-0
  • #7306 Modified MTEIndustrialCuttingMachine to align blade rotation to 90° when it has sufficient spin, and added decimal precision to rotation speed calculations. - @tiffit
  • #7265 Removed mandatory input hatch structure check from TileEntityModuleMiner. - @DylanTaylor1
    • Removed: Mandatory input hatch requirement
  • #7185 Replaced interval-based recipe check loops in MTEMultiBlockBase with event listeners on hatch content changes (IHatchWatcher interface), data access changes, and output drain events across MTEHatchMultiInput, MTEHatchOutput, MTEHatchOutputBus, and dependent multiblock implementations. - @ReignOfFROZE
    • Added: IHatchWatcher event interface, event-driven recipe trigger system, immediate hatch update notifications
    • Removed: interval-based recipe check loop, stocking hatch trigger configuration GUI elements
    • Migration: Remove recipe check interval and trigger configurations from stocking buses and hatches; they now use event-driven checks. Any addon code polling recipe checks on a fixed interval must be refactored.
  • #7160 Extended CondensateType enum to include QGP and Phonon Medium condensates, and updated base condensate definitions. - @Ruling-0
    • Added: QGP condensate, Phonon Medium condensate
  • #7091 Modified LargeBoilerFuelBackend, LargeBoilerFuelFrontend, and MTELargeBoilerGui to filter incompatible fuels, display fluid inputs as actual fluids, add water consumption tracking, and simplify lava bucket handling. - @Miklebe
    • Added: Water consumption widget, Fuel type tooltips
    • Removed: Hemp seed oil from Large Boiler fuels, Lin seed oil from Large Boiler fuels
  • #7089 Removed output overflow crash logic from MTEMultiBlockBase and cleaned up ShutDownReasonRegistry and language strings that were added in PR #7060. - @AnsonYeung
    • Removed: Output overflow crash mechanism, Overflow shutdown reason
    • Closes GTNH#25231
  • #7083 Doubled waterline radius constant in MTEPurificationPlant. - @cubefury
  • #7076 Added CTM (Connected Texture Mod) support with new texture files and .properties configurations for multiple casings. Updated Textures.java and BlockCasings10 enum to reference new CTM textures. - @seventh-june
    • Added: CTM texture files for Autoclave, Compressor, Cleanroom, HTGR, Solar Panels, CTM configuration files (.properties)
  • #7066 Moved hardcoded strings from BaseMetaTileEntity, BaseMetaPipeEntity, and CommonBaseMetaTileEntity to GT5U.scanner.debug.* lang keys. Added comprehensive Russian translations for all GT5U.scanner.* section headers and debug info. - @Eldrinn-Elantey
    • Added: GT5U.scanner.debug.* localization keys, Russian translations for all scanner keys
    • Fixed: Scanner localization
  • #7065 Moved progress string generation from server-side StringSyncValue to client-side via IKey.dynamic(), leveraging already-synced mProgresstime/mMaxProgresstime. Added Russian lang keys for GT5U.multiblock., GT5U.multiblock.scanner., and GT5U.gui.text.shutdown_reason.*. - @Eldrinn-Elantey
    • Added: Russian translations for multiblock GUI, Russian translations for scanner keys, Russian translations for shutdown reason keys, Client-side progress string computation
    • Fixed: Multiblock GUI localization
  • #7057 Updated AugmentBuilder to scan core list for minimum tier and set rarity automatically, reorganized MechArmorAugmentRegistries with Aquatic Jets moved to leggings. - @FourIsTheNumber
    • Fixed: inconsistent augment rarity
  • #7052 Modified MTEBasicMachine default configuration to enable input from output-side faces. - @LeoCav46
  • #7006 Changed default recipe deduplication setting in GTRecipeBuilder from disabled to enabled, reducing visible recipe duplicates until a new MaterialBuilder is available. - @Pxx500
    • Fixed: Duplicate recipes visibility
    • Closes GTNH#17933
  • #6964 Updated MTEHatchChiselBusGui.java to fix slot display logic and realigned slot positioning, corrected tooltip in MTEHatchChiselBus.java. - @TheYoingLad
    • Fixed: incorrect Chisel Bus slot tooltip, slot alignment in GUI
  • #6954 Replaced BlockRenderer-based drone rendering with IMTERenderer; updated drone model/textures and added level-based texture switching and bobbing animation in MTEDroneCentre. - @tiffit
    • Added: Level-based drone textures, Drone bobbing animation, New drone OBJ model
    • Removed: Old drone BlockRenderer, Old drone model files, DroneRender legacy code
  • #6953 Refactored MTEBasicMachineBronze to use ModularUI2; updated texture and GUI theme definitions across multiple classes. - @TheYoingLad
    • Added: Power button for bronze machines
  • #6939 Refactored logo rendering to use GTGuiThemes for consistent texture sourcing; removed manual logo overrides from hatch GUIs. - @TheYoingLad
    • Added: Logo texture in GTGuiTextures
    • Removed: Manual logo overrides in multiple hatch GUIs
  • #6933 Created MTEAutoChiselGui using ModularUI2 framework and updated MTEAutoChisel to use new GUI. - @TheYoingLad
    • Added: ModularUI2 Auto Chisel GUI
  • #6931 Updated language string for side selection tooltip in en_US.lang. - @Ranzuu
  • #6888 Renamed hatch/pipe components (Beamline -> Beam), updated tooltips in LINAC/Source Chamber/Synchrotron/Target Chamber with corrected coolant temps and consistent formatting, and migrated hard-coded language strings to translateToLocal. - @DylanTaylor1
    • Fixed: Beamline tooltip typos and outdated values
  • #6887 Updated dependencies.gradle for MUI2 bump and migrated all setNumbers* calls to new MUI2 API across energy/fluid cover GUIs; set alt-scroll value to 16 as middle ground; removed redundant MathUtils calls. - @Miklebe
    • Added: Alt+scroll field adjustment support
    • Removed: Deprecated MUI2 methods
    • Fixed: Text field editing/navigation keys support
    • Closes GTNH#20187
  • #6877 Various cosmetic and informational updates to multiblock GUIs and lang files (UCFE, Algae Pond, Large Naquadah Reactor, Naquadah Fuel Refinery, Universal Chemical Fuel Engine). - @Yoshy2002
    • Removed: Top edges from Algae Farm
  • #6795 Updated tooltip strings in 40+ multiblock machine classes to follow unified capitalization and formatting rules. - @Yoshy2002
    • Fixed: Inconsistent capitalization in tooltips, Plural block counts in structure descriptions
  • #6782 Removed Distillery machine type from MTEMegaDistillTower and MTEAdvDistillationTower tooltips, and changed tooltip label in MTEDistillationTower from 'Distillation Tower' to 'DT'. - @NotKaizul
  • #6757 Added allowC2S() flags to ~40 sync value/handler classes (ValueSyncHandler, EnumSyncValue, ShortSyncValue, etc.) across cover GUIs and multiblock interfaces. - @TheYoingLad
    • Fixed: ModularUI2 security packet validation compatibility
  • #6714 Migrated MTEMegaVacuumFreezerLegacy to use MTEExtendedPowerMultiBlockBase, introduced new MTEEndothermicFridge controller with new structure definition, added dynamic cooling mechanic that modifies speed bonus based on cooldown state, updated recipes and casing requirements, added new BlockCasings14 variant, and new GUI (MTEEndothermicFridgeGui) for new controller. - @chrombread
    • Added: MTEEndothermicFridge controller, MTEEndothermicFridgeGui, new MVF structure design, dynamic cooling mechanic, BlockCasings14 variant, new textures and UI elements
    • Removed: old MVF structure code, old MVF recipes, assembler recipes (moved to new controller)
    • Migration: Your Mega Vacuum Freezer keeps running exactly as it is and is already the Legacy controller. The new ZPM Endothermic Fridge is a separate controller; craft it, or convert the old one with the assembler recipe, only if you want it.
  • #6695 Added localization keys to MTESpinmatronGui and added corresponding translations to en_US.lang. Removed override of GTWidgetThemes color settings which conflicted with theme configuration. - @Ranzuu
    • Added: Spinmatron localization keys
    • Removed: GTWidgetThemes color override
    • Fixed: Spinmatron GUI text display
  • #6681 Modified TextureSet.java to fallback to NONE textureset if texture not found, updated GTCustomBlockIconContainer and GTTextureSetBlockIconContainer with fallback logic, removed duplicate PNG files matching NONE set, and cleaned up Textures.java enum entries. ~3300 duplicate texture files removed. - @tiffit
    • Added: texture fallback system in TextureSet, GTTextureSetBlockIconContainer and GTTextureSetItemIconContainer with fallback logic
    • Removed: ~3300 duplicate texture files, old icon container implementations
  • #6679 Updated MTEHatchInputBusMEGui and MTEHatchInputMEGui to use AE2 waila keys (DeviceOnline/DeviceOffline) with EnumChatFormatting instead of colored language keys for better resource pack compatibility. - @Ranzuu
  • #6677 Relocated MTETurbineHousingGui to proper directory structure, replaced hardcoded text color with theme-based color, removed deprecated align() method calls in tank GUI classes. - @TheYoingLad
    • Removed: deprecated align() method calls
  • #6622 Minor adjustments to Cover and CoverBaseGui reactive popup logic (4 lines removed, 1 added). - @tiffit
  • #6591 Updated Unicode font pages (00, 20, 22, 30, 9f, e9, ff) and glyph_sizes.bin to fix full-width punctuation rendering and add missing glyphs for CJK localization, based on CFPA fullwidth punctuation fix package. - @PinkYuDeer
    • Added: full-width punctuation glyphs, special character glyphs for CJK, unicode font page updates
    • Fixed: full-width punctuation rendering, character cutoff in CJK text
  • #6559 Modified glass validation logic in MTEIndustrialMacerator and MTEIndustrialRockBreaker to accept all glass variants instead of a limited set. - @Yoshy2002
    • Fixed: Glass type restrictions
  • #6558 Updated supportFlags in MTEIndustrialFishingPond, MTETreeFarm, and MTEIndustrialMacerator to re-enable Void Protection and Batch Mode support. - @tiffit
    • Fixed: Multiblock feature support flags
  • #6554 Adjusted GUI layout spacing in MTEMultiBlockBaseGui to eliminate unnecessary padding. - @AnsonYeung
    • Fixed: SSASS GUI layout spacing
  • #6545 Updated MTESteamCompressor with new structure definition and layout. - @VortexSo4
    • Migration: Your existing Steam Squasher keeps working; the old shape is retained as a legacy structure. Rebuild to the new layout only if you want it.
  • #6537 Refactored PluginGT5VeinStat, PluginGT5SmallOreStat, and PluginGT5UndergroundFluid with improved layout, added PluginGT5OreBase superclass, enhanced DimensionHelper and GT5OreLayerHelper for better dimension handling, and updated NEI display logic. - @tiffit
    • Added: PluginGT5OreBase class, enhanced dimension/ore helper methods
    • Removed: PluginGT5Base class, GT5OreSmallHelper class
  • #6517 Standardized tooltip generation in IControllerWithOptionalFeatures and MTEMultiBlockBaseGui. Added tooltip helper in GTUtility. - @hanben02
  • #6495 Modified GTPacketUpdateItem to account for backhand item synchronization in modular UI contexts. - @TheYoingLad
  • #6471 MTESteamMacerator and MTESteamMultiBlockBase refactored to update structure appearance and casing placement. - @VortexSo4
    • Migration: Your existing Steam Grinder keeps working - the 2.8.4 shape is still validated as a retained legacy structure. Rebuild to the new layout only if you want the new look (+2 ingots).
  • #6434 Deleted old texture file no longer referenced in codebase. - @Ranzuu
    • Removed: Unused brain icon texture
  • #6423 Updated textures, casings, and tooltip helpers across multiple multiblock machines (Ore Washing Plant, Chemical Bath, Electric Implosion Compressor, Combustion Engines). Added TooltipHelper.formatEUt() utility method. - @Yoshy2002
    • Added: Grisium texture, EU/t tooltip helper
    • Fixed: EIC showing only 1 piston tier, PGS tooltip crashes, Advanced Implosion Compressor casing tier
  • #6394 Modified GTRecipeBuilder to throw exceptions on null oredict inputs and removed broken recipes from Pulverizer that referenced missing oredict entries. - @Alexdoru
    • Removed: Broken pulverizer recipes with null oredict inputs
    • Fixed: Recipe validation for oredict inputs
  • #6351 Moves HTGR fuels from NBT-based storage to meta items (TRISOFuel, BurnedTRISOFuel, etc.) with configurable properties. Fuel generation formula changed to Base×(Multiplier^Exponent) with processing time 1/(Exponent²). Removes floor block from multiblock structure. - @Pxx500
    • Added: TRISO fuel meta items, Burned TRISO fuel item, Incomplete BISO/TRISO fuel items, TRISO mixture item, Fuel property system
    • Removed: HTGR floor block, NBT-based fuel storage
    • Migration: Every TRISO and BISO fuel pebble is a separate item now. Pebbles made before this update are not converted and disappear on first load; craft them again.
  • #6342 Refactored multiblock with three distinct modes: normal arc furnace recipes, blast furnace recipes at 64x cost, and ore smelting mode. Introduces electrode items that determine machine statistics. Arc ignition takes 6 seconds before recipe processing. GTRecipeConstants.UniversalArcFurnace dropped the oxygen fluid input for .circuit(1) at 1.25x duration, and every gas and plasma variant now carries .circuit(11) alongside its fluid, which covers the whole auto-generated arc/recycling recipe set. The old controller is re-registered as MTEIndustrialArcFurnaceLegacy on its 2.8.4 metatileentity id, so standing multiblocks keep forming; the electrode requirement belongs to the new kubatech multiblock only. Plasma mode is gone from the legacy controller and plasmaArcFurnaceRecipes is unreferenced - the plasma variants were folded into arcFurnaceRecipes. Removed the 3-amp requirement. - @kuba6000
    • Added: Three-mode operation system, Electrode items, Arc ignition mechanism, Ore smelting mode
    • Removed: Plasma Arc Furnace, Direct iron-to-wrought-iron arcing, 3-amp power requirement
    • Migration: Put a programmed circuit 1 in every arc furnace: the plain arc recipe no longer takes oxygen and will not run without it, and the gas and plasma variants need circuit 11 alongside their fluid. This hits single-block Arc Furnaces and both multiblocks; nothing is voided, the machine just idles until the circuit is there. Your existing Industrial Arc Furnace keeps forming as the deprecated Legacy controller; the new electrode-driven multiblock is a separate machine.
  • #6320 Added hatch requirement and casing count information to tooltip in TileEntityPlanetaryGasSiphon and language file. - @loenaaaa
    • Added: hatch restriction documentation in tooltip, casing count specification
  • #6137 Added Beryllium rod recipe to BeamlineRecipeLoader for Neutron production, providing an alternative to expensive Californium dust route. - @ham-corp
    • Added: Beryllium rod to Neutrons recipe in Source Chamber
  • #6133 Modified MTEIndustrialChisel default mode logic to advance through chisel group based on input block instead of always returning first block. - @LooseEthics
  • #6126 Removed IC2 Iron Furnace recipe registrations; changed craftingIronFurnace ore dictionary references to craftingBlastFurnace across recipe loaders. - @UltraProdigy
    • Removed: IC2 Iron Furnace recipe registrations
  • #6124 Added MTEBeamCrafterGui with improved terminal UI, added particle texture files, removed duplicate language entries, and updated Beamcrafter implementation. - @ham-corp
    • Added: Beamcrafter terminal GUI, particle textures (alpha, electron, neutron, photon, positron, proton)
    • Removed: duplicate gtnhlanth language entries
    • Fixed: Beamcrafter NEI recipe cropping, broken particle textures
  • #6123 Added default getMachineModeKey method to IControllerWithOptionalFeatures; refactored item behaviors, machine code, and utilities to use GTLanguageManager methods; removed unused GTLanguageManager method. - @Discreater
    • Added: default getMachineModeKey in IControllerWithOptionalFeatures
    • Removed: GTLanguageManager.getDefaultChatMessage (unused)
  • #6122 Changed visibility of recipe debug flag accessors in GTRecipeBuilder from package-private to public. - @boubou19
  • #6113 Added material and block type description fields to tooltip generation in MTEHatchCraftingInputME, MTEHatchCraftingInputSlave, MTEHatchInputBusME, MTEHatchInputME, and MaterialsInit. - @PantACRO4life
    • Added: material and block type descriptions in hatch tooltips
  • #6111 Trimmed tooltip generation in MTEHatchInputBusME and MTEHatchInputME to display more concisely. - @Alexdoru
    • Fixed: excessive tooltip length
  • #6096 Updated language files (en_US, ru_RU, zh_CN) to clarify that wireless capacity limits only apply to withdrawal direction. - @Sanduhr32
    • Fixed: wireless capacity tooltip accuracy
  • #6088 Removed hardcoded item lists from processing recipe loaders (Beans, Crafting, Crop, Dye, Food, Log, Sand, Saplings, Stone, Wax, Canning) and replaced with ore dictionary references; added complementary recipes in postload modules. - @Caedis
    • Added: Ore dictionary-based processing recipes
    • Removed: Hardcoded item lists in processing loaders
  • #6086 Refactored MetaGeneratedItem02.java to rename plank covers with wood-type prefixes and register ore dictionary entries. - @Caedis
    • Added: Ore dictionary entries for plank covers
  • #6085 Refactored ItemMachines.java to use String.format() for tooltip spacing instead of hardcoded spaces; updated language file entries. - @ChromaPIE
  • #6084 Updated cover tab texture dimensions and size constants in CoverTabButton.java and GTBaseGuiBuilder.java; regenerated tab textures at new resolution. - @Ranzuu
  • #6082 Added IHideTooltipEnergyInfo interface and tooltip utility in GTUtility.java; updated multi-amp hatch classes to display standardized energy tooltip format. - @Alexdoru
    • Added: Multi-amp hatch tooltip standardization
  • #6070 Changed fluorite material state from ORE to SOLID in MaterialsFluorides.java to allow color application, since ORE state forces null color. - @koolkrafter5
  • #6063 Updated MTEHatchOutputMEBase to refresh cell array on cache toggle, add WAILA data provider, and handle item transfer on cache disable. - @lc-1337
    • Added: WAILA support for ME cell inventory
    • Fixed: ME output cell array not updating on cache toggle
  • #6043 Updated Spinel material color in MaterialsInit.java and replaced the texture in BLOCK_FOOLSRUBY.png. - @Auynonymous
    • Fixed: Spinel and ruby visual confusion
  • #6033 Enhanced BacterialVatFrontend and BioVatNEIHandler to display more detailed recipe and operational information. - @SST-03
    • Added: Enhanced NEI display for Bacterial Vat
    • Closes GTNH#23705
  • #5918 Flattens Fluxed Electrum material set to use main texture for blocks and items while retaining overlay definitions, enabling pipe/cable pass1 rendering. - @Auynonymous
    • Fixed: Pipe and cable pass1 rendering for Fluxed Electrum
  • #5908 Replaces MTEIndustrialElectrolyzer with new structure-based implementation using MTEExtendedPowerMultiBlockBase and Casings class, deprecates old controller to MTEIndustrialElectrolyzerLegacy, adds conversion recipe in MTERecipeLoader, and adjusts parallelism and machine bonuses to variables. - @VortexSo4
    • Added: New MTEIndustrialElectrolyzer structure with improved design, Conversion recipe from old to new controller
    • Removed: Maintenance hatch requirement
    • Fixed: ISurvivalConstructable implementation, Structure dimension accuracy in tooltips
    • Migration: Your Industrial Electrolyzer keeps running as the Legacy controller at its old 2 parallels per tier. Convert or craft the new controller only if you want the redesigned structure and 4 parallels per tier.
  • #5847 Fixed wireless computation visualization in WAILA for data input hatches, improved MTEHatchWirelessComputationInput logic for consistency, removed QC wireless mode toggle, and added localization for computation display instead of string concatenation. - @VortexSo4
    • Added: Localization for computation display
    • Removed: Wireless computation toggle mode
    • Fixed: Wireless computation visualization, Wireless data input WAILA display
  • #5841 Refactored EOH and GORGE rendering to use dynamically generated spheres instead of static OBJ files, improved orbit smoothing, added transparency fixes, and prevented animation updates during pause. Removed large OBJ model files and simplified rendering code. - @Connor-Colenso
    • Added: SphereVBOCache for dynamic sphere generation, EOHRenderingUtils enhancements
    • Removed: Static OBJ model files (Space.obj, Star.obj), EOHItemRenderer class
    • Fixed: Planetary orbit jitter, Transparency rendering defects
  • #5831 Standardized tooltip coloring across basic machines and cables by adding yellow for voltage, aqua for amperage, and amperage units. Added static helper functions to TooltipHelper for consistent formatting. Removed EU capacity display and updated ItemMachines and MTECable. - @Ruling-0
    • Added: Static helper functions in TooltipHelper for standardized coloring, Amperage unit to tooltips
    • Removed: Machine capacity from tooltips
  • #5830 Applied EnumChatFormatting color codes to MTEPump tooltip strings for EU/operation, seconds-per-bucket, and maximum pumping area parameters. - @Eldrinn-Elantey
    • Added: Color formatting to pump tooltips
  • #5817 New Client config class with tooltip display flags; MetaBaseItem, MetaGeneratedItem, and various item classes updated to respect tooltip config settings. - @evgengoldwar
    • Added: Tooltip configuration options in Client config
  • #5813 PluginGT5UndergroundFluid tooltip formatting updated to use localized number formatting; language file strings reorganized for consistency. - @Ranzuu
  • #5745 Updated tooltip string in MTEIndustrialChisel to be more specific and searchable. - @boubou19
  • #5716 Modified GasSiphonRecipeHandler to apply localization formatting to numeric values in the display string. - @Ranzuu
  • #5711 Modified SpacePumpModuleRecipeHandler to apply localization to numeric values within the planet type display string. - @Ranzuu
  • #5698 Updated chemical formula values in MaterialsInit for Galgadorian to match refined recipe composition. - @UltraProdigy
    • Fixed: Galgadorian formula accuracy
    • Closes GTNH#22730
  • #5687 Updated material color value in MaterialsInit for Palladium to improve visual distinction. - @UltraProdigy
    • Fixed: Palladium visibility
  • #5676 Added new MTEMassSolidifier class with fixed parallel count and simpler configuration. Marked MTEFluidShaper as deprecated. Added new casing textures and updated machine registration. - @chrombread
    • Added: Mass Solidifier multiblock machine, Mass Solidifier casing textures, Mass Solidifier overlay textures
  • #5669 Marked wire mold and WDM mold as deprecated in ItemList and generated item classes. Removed wire mold from extrusion hatch and recipe loaders. Updated kevlar spinneret to use rod mold. - @chrombread
    • Added: Deprecation markers for wire mold
    • Removed: Wire mold from extrusion hatch, Wire mold from fluid solidifier recipes, Wire mold availability in GT5U
    • Migration: The Kevlar Spinneret assembler recipe now takes 16 Extruder Shape (Rod) instead of 16 Extruder Shape (Wire) - fix that pattern. The wire mold itself is not removed and remains usable in the Extruder; only the White Dwarf version can no longer be crafted.
  • #5635 Adjusted widget positioning in MTEHatchInputBusGui to add gap between player and hatch inventories. - @VortexSo4
    • Fixed: Input bus GUI spacing
  • #5617 Removed static text and language keys from MultiblockTooltipBuilder and language files. - @danyadev
    • Removed: 'Structure is too complex!' tooltip line
  • #5616 Removed automatic connection logic from input re-enable in MTEFluidPipe. - @danyadev
    • Fixed: Unintended pipe connections to fluid sources
  • #5600 Updated WerkstoffLoader to apply question marks consistently across all unresolved portions of platline material chemical formulas. - @chochem
  • #5588 Added or clarified language strings in en_US.lang files and frontend classes for Kubatech mob handlers, TecTech Godforge, Plasma, and Research Station UIs. - @Ranzuu
    • Added: localization strings for specialized frontends
  • #5587 Modified MTESteamMultiBase to call superclass texture methods instead of overriding them, and updated all Steam multiblock children to remove duplicated texture code. Added glow texture variants for steam furnace. - @chrombread
    • Added: glow texture overlays for steam multiblocks
    • Removed: texture override code from steam multiblock children
    • Fixed: steam multiblock texture inheritance
  • #5576 Updated powerfail.png texture assets with improved graphics. - @Ranzuu
  • #5495 Consolidated basic and bulk recipe variants into one optimized recipe with rounded input values in ChemicalRecipes. - @chochem
    • Removed: Tiny dust variant recipe, 9x variant recipe
    • Fixed: Toluene ratio consistency in recipe
  • #5447 Updated Vajra texture and crafting recipe ingredients (ruby lenses → amethyst, electrum plates → silver) in CraftingRecipes.java. - @envoidia
  • #5429 Modified MTEChemicalPlant hatch placement validation to accept hatches on all eligible casing faces. - @Flakxo
    • Removed: Bottom-only placement restriction for hatches
  • #5416 Rebalanced audio assets (28+ sound files) including EBF, alloy smelter, distillery, centrifuge, and other multiblock sounds. - @chochem
    • Fixed: excessive EBF volume, overtuned machine sounds
  • #5415 Replaced CoverRedstoneReceiverInternal with new CoverWirelessController, added MUI2-based GUI (CoverWirelessControllerGui), updated ItemList references and recipes, added new texture assets. - @Vlamonster
    • Added: CoverWirelessController, CoverWirelessControllerGui, wireless controller texture
    • Removed: CoverRedstoneReceiverInternal
    • Closes GTNH#19628
  • #5412 Replaced multiple texture files for spacetime items, blocks, pipes, and foils with versions that tile correctly without seams. - @Auynonymous
    • Fixed: spacetime texture looping
  • #5407 Updated HTGRLoader recipe configuration to restrict centrifuge recipes to multiblock mode and corrected NBT matching logic. - @kuba6000
    • Fixed: NBT matching on recipe conversion, GUI item overflow
  • #5394 Updated BLOCK_ROSEGOLD texture and color value in MaterialsInit to better represent rose gold visually. - @seventh-june
  • #5390 Restored ULV hiding logic in GTUtility that was accidentally removed. - @cubefury
    • Fixed: ULV tier hiding
  • #5388 Enhanced GTItemSink and digital chest implementation to filter irrelevant slots and pull from output slots, with interface additions to IMetaTileEntity and MTEBasicMachine. - @RecursivePineapple
    • Added: Slot filtering for item pushing, Digital chest output pulling
  • #5301 Modified tooltip text in tile entity GUI descriptions for MTEIntegratedOreFactory, MTEExtremeHeatExchanger, and MTENeutronActivator. - @SST-03
    • Fixed: Incorrect glass type tooltip for multiblock machines
    • Closes GTNH#22458
  • #5295 Updated UEV metaitem texture assets to remove infinity shader artifacts. - @GDCloudstrike
    • Fixed: UEV part texture visual noise
  • #5282 Enhanced error logging in CommonBaseMetaTileEntity.java to include tile entity identification and additional context for failed tick operations. - @Glease
  • #5280 Updated tooltips in Crop Harvester, World Accelerator, Monster Repellent, Oil Drilling Rig, and Concrete Backfiller to use appropriate terminology (range vs radius vs working area). - @LunarLambda
    • Fixed: tooltip wording consistency
  • #5268 Updated LV color constant in GTValues.java. - @UltraProdigy
  • #5264 BlockOverlayRenderer refactored to apply overlay colors to block outlines and render them on a consistent shader buffer, fixing gbuffer selection issues. - @Brabb3l
    • Fixed: Shader gbuffer rendering for block outlines
  • #5253 GTValues tier color constant updated from black to dark green. - @UltraProdigy
  • #5218 Removed 'Macerator/Pulverizer' MachineType enum value and updated MTEIndustrialMacerator and loader references to use 'Macerator'; removed language entries. - @UltraProdigy
    • Removed: 'Macerator/Pulverizer' machine type
    • Fixed: macerator type inconsistency across tiers
  • #5217 Added screwdriver right-click mode-switch handler to MTESteamWasher, fixed tooltip to show correct machine type, and updated WAILA tooltip code for real-time mode display. - @UltraProdigy
    • Added: screwdriver mode-switch capability for Steam Purifier, real-time WAILA updates
    • Fixed: Steam Purifier tooltip accuracy, WAILA client desync on mode change
  • #5184 Reverted compressed texture variants to higher-quality originals for affected fluid and block textures, deleted 700+ unused materialicon texture files from custom folders. - @GDCloudstrike
    • Removed: Unused materialicon textures (arrowhead, axe head, sense head, etc.)
    • Fixed: Texture compression visual noise on rainbow textures
  • #5151 Added chemistry sound effect to GregtechDehydrator and bath sound effect to GregtechSimpleWasher registration. - @PlayfulPiano
    • Added: Chemistry SFX to Dehydrator, Bath SFX to Simple Washer
  • #5143 Updated English language file entries for power goggle keybind labels. - @FrostyFire1
  • #5133 Added new SubTag for nugget transmutation, added TCAspects definitions, and updated MaterialsInit to properly handle cluster material generation for Witching Gadgets integration. - @RecursivePineapple
    • Added: Nugget transmutation SubTag, TCAspects definitions
    • Removed: Duplicate and invalid nugget recipes
    • Fixed: Witching Gadgets material generation logic
  • #5087 Added new TextureSet for materials, updated MaterialsInit texture assignments, improved Pyrotheum/Cryotheum fluid rendering in FluidUtils, removed Blaze tool registration. - @jude123412
    • Added: new texture sets for materials
    • Removed: Blaze tool recipes and NEI entries
  • #5080 Updated cover GUI classes to use ModularUI2 label handling instead of ModularUI v1. - @Ranzuu
  • #5070 Added harvest level configuration to BlockCasings4 and MTEBrickedBlastFurnace to allow iron pickaxe harvesting. - @Vlamonster
  • #5067 Removed position parameter from MTEChamberCentrifugeGui UI construction. - @chrombread
  • #5064 Added right-click handling to MetaGeneratedItem01 for washing, and modified washed item behavior to cancel velocity and teleport items above the cauldron for immediate pickup. - @querns
    • Added: Right-click washing for entire stacks
    • Fixed: Item spray from cauldron washing, Pickup delay for washed items
  • #5053 Split string labels from tooltip text in 5 cover UI factories (Robot Arm, Conveyor Module, Ender Fluid Link, Fluid Regulator, Electric Pump) and added localization entries. - @Ranzuu
    • Added: Separate localization strings for 5 covers
  • #4967 Changed trash can component in Void Hatch assembly recipe from item to fluid trash can in AssemblerRecipes.java. - @UltraProdigy
    • Fixed: Void Hatch recipe inconsistency
  • #4961 Added Integrated Circuit component to Prismatic Naquadah ABS recipe in NetheriteRecipes.java. - @UltraProdigy
    • Added: Integrated Circuit requirement for Prismatic Naquadah recipe
  • #4946 MTEIndustrialBrewery machine name updated to include BBB abbreviation. - @DylanTaylor1
    • Added: Big Barrel Brewery abbreviation
  • #4939 Removed minimum tier requirement from non-energy hatches in MTEFusionComputer. Compact Fusion already had this behavior; this change unifies the two reactors' hatch tier logic. - @DylanTaylor1
    • Removed: Minimum tier restriction on Fusion Reactor input/output hatches
  • #4925 Added TooltipHelper and TooltipTier utilities for unified tooltip generation. Updated tooltip methods in all MTEMega* classes to use consistent formatting and structure. Updated lang file entries. - @Tyronadre
    • Added: TooltipHelper tooltip generation utility, TooltipTier tooltip tier formatting
    • Fixed: Inconsistent megastructure tooltip formats, MABS description inaccuracy
    • Closes GTNH#21162
  • #4416 Created MTEHatchPHSensorGuiBuilder and updated MTEHatchPHSensor to support MUI2. Implementation mirrors Neutron Sensor pattern. - @Nockyx
    • Added: MUI2 pH Sensor GUI
  • #4380 Created MTEHeatSensorGuiBuilder and updated MTEHeatSensor to support MUI2 alongside legacy MUI1. UI supports integer temperature thresholds with scrolling precision. - @purebluez
    • Added: MUI2 Heat Sensor GUI

Balance ​

  • #7916 Re-enabled silk touch for the Ore Drilling Plant in MTEOreDrillingPlantBase to eliminate the stacking of fortune and drilling plant bonuses. - @Nana-Sakura
    • Fixed: Overpowered ore drilling output
  • #7911 Modified RecipeLoaderChemicalSkips.java to swap output from indium to rhenium for specific QFT recipe. - @fehling135
  • #7903 Changed power scaling nerf cutoff constant from 5000 to 15000 Rate in MTELargeHadronCollider. - @ham-corp
  • #7891 Changed BHC ingredient requirement in spacetime generator recipes in BECRecipes. - @Ruling-0
  • #7878 Deleted broken BEC recipe variants from BECRecipes and BECMetaMaterialRecipes that diverged in condensates. Updated CondensateType enum to clean up unused entries. - @Ruling-0
    • Removed: alternate BEC recipes with mismatched condensates
    • Fixed: BEC recipe validation
  • #7871 Updated Godforge.java recipe tier downgrades and time doubling, modified GodforgeMath.java OC factor calculation to scale with heat, increased MTEAssemblyMatrixModule base parallel. - @GDCloudstrike
  • #7842 Updated JetpackStats, JetpackBehavior, and InertiaCancelingBehavior to increase climb speed cap and improve hover handling. Added new augment items and registration in MechArmorAugmentRegistries. - @telemenar
    • Added: Vectored Jetpack augment
    • Removed: JetpackPerfectHoverBehavior class
  • #7824 Updated CondensateType enum, BEC recipe times, and EU costs in BECMetaMaterialRecipes and BECRecipes. Enhanced MTEBECDiode to accept multiple filters configured through input hatch. - @Ruling-0
    • Added: Multi-filter support in Maxwell Gate, Filter configuration via input hatch
  • #7819 Updated MechArmorAugmentRegistries to restrict Terrasteel augment to chestpiece tier 2, modified TerrasteelBehavior discount calculation, fixed lang entry formatting. - @Spaghetti-OberNub
    • Fixed: Terrasteel augment tooltip format error
  • #7812 Adjusted fuel values in HTGRLoader for Glowstone and Uranium isotopes. - @Pxx500
  • #7808 Modified TecTech Assembler recipes for UEV and UIV 4A/16A/64A Energy Hatches and Dynamo Hatches in tectech/loader/recipe/Assembler.java. - @Nana-Sakura
  • #7751 Increased raw silicon EBF recipe duration from a lower value to 20 seconds in BlastFurnaceRecipes to balance energy input/output. - @Nana-Sakura
    • Fixed: Raw silicon EBF net energy gain
  • #7749 Modified BECStructureDefinition to restrict valid hatch placement positions in assembler rings from all EM casings to first 6 per ring on all 4 sides. Provides 72 total hatch slots while preventing wallsharing. - @Auynonymous
    • Fixed: Nanite hatch wallsharing exploit
    • Migration: Relocate hatch placements on BEC assemblers to the first 6 EM casings on each ring (where sponges were); reconfigure existing hatches to comply with new restrictions.
  • #7741 Increased recipe durations in BECRecipes for EOH parts to approximately 1024A AAL equivalent times based on nanite calculations. - @Ruling-0
  • #7737 Reduced naquadah coil tier in BECRecipes and ResearchStationAssemblyLine recipe definitions. - @Ruling-0
  • #7732 Updated ComponentAssemblyLineLoader and ResearchStationAssemblyLine to replace Nuclear Stars with Pseudo Stars (16:1 ratio) in UXV parts recipes. - @UltraProdigy
  • #7689 Modified BECRecipes.java and BECMetaMaterialRecipes.java to reduce lens scaling and change resonance chamber heat sources. Updated resonance chamber texture to white. - @Auynonymous
    • Added: singularity mod dependencies for testing
  • #7635 Modified DEFCRecipes.java to adjust DEFC recipe coil tier requirements (T3→T2), and increased Mixer recipe duration to 2100s to rebalance throughput against the overpowered Mixer. - @UltraProdigy
    • Migration: Nothing you built has to come down. The non-magic mixer route to molten dragonblood now takes 2100 seconds instead of 700, so an existing line produces a third as much per mixer; add mixers if you depend on it. The Draconic Evolution Fusion Crafter recipes for dragonblood now accept a tier 2 casing instead of tier 3, which only makes them easier.
  • #7620 Updated AssemblerRecipes.java and lang files to rename the cell and change recipe from 4 double chrome plates to 4 double RPP plates. - @Auynonymous
  • #7618 Added alternate recipe in AutoclaveRecipes.java using Infinity Plasma to craft nuclear stars directly from Nether Stars at tier 7. - @GDCloudstrike
    • Added: Tier 7 alternate nuclear star recipe
  • #7576 Adjusted speed bonus multipliers in MTEMegaDistillationTower and MTEAdvDistillationTower. Fixed MDT auto-place crash and speed bonus bug that was actually slowing the machine down rather than speeding it up. - @chrombread
    • Fixed: MDT auto-place crash, MDT speed bonus bug inverting speed
    • Migration: Dangote (the Advanced Distillation Tower) is about 14% slower in distillation-tower mode, a 3.5x speed bonus dropping to 3x. Check your Dangote lines: they keep running, just at reduced throughput.
  • #7569 Added material check in ProcessingNugget autogen code to prevent sawing unstable ingots. Consistent with existing material-specific exceptions in autogen recipes. - @FourIsTheNumber
    • Removed: unstable ingot sawing recipe
    • Migration: After updating, the crafting table recipe that turned one unstable ingot into 8 unstable nuggets with a saw is gone. If you had that recipe encoded in an autocrafting pattern, delete or re-encode it. An alloy smelter with a nugget mold splits one unstable ingot into 9 nuggets as before.
  • #7545 Modified MTEIndustrialArcFurnace to adjust electrode damage thresholds and EU scaling logic; updated ArcFurnaceElectrode with new EU modifier and startup penalty values; renamed UI labels in lang file. - @Pxx500
    • Removed: Output voiding above 90% electrode damage, Calculated 64A hatch count from electrode tooltip
  • #7502 Updated Pulverizer recipe tier values to match solidification tier (e.g., HV for titanium glass, EV for tungstensteel glass). - @Auynonymous
  • #7468 Removed mask durability mechanic from ItemPhotolithographicMask and MaskList; replaced focus input bus requirement with regular input bus in MTETargetChamber; multiplied BeamlineRecipeLoader recipe quantities by original mask durability values; removed TargetChamberFrontend duplicate handler. - @error1number404
    • Removed: photolithographic mask durability, TargetChamberFrontend class, mask duration multiplier constants
    • Migration: Your Target Chamber will not re-form until you rebuild one block: break the Focus Input Bus in the top centre casing and put a normal Input Bus there, so the machine has two. The Focus Input Bus is now unused. Masks no longer wear out and stack to 64, but a part-used mask matches no recipe after updating. Recipes are batched per mask now: one run takes a mask plus 100 target items, 75 for the Living Crystal Chip.
  • #7465 Modified AcidRecipes loader to change FrOH recipe EU/t and duration values in the acid chain. - @loenaaaa
  • #7433 Modified OverclockCalculator and MTEAdvAssLine to support sub-1-tick overclocking. Added comprehensive unit tests for overclock scenarios. - @1328116700
    • Added: sub-1-tick overclock support, overclock unit tests
    • Migration: Advanced Assembly Line can now overclock below 1 tick; recalibrate parallel counts and production chains relying on the old 72,000 executions/hour ceiling.
  • #7428 Updated NaniteChain recipes: Eternity increased from 0 to 2 Universium nanites, Magmatter from 1 to 4. Adjusted BEC, MHDCSM, Forming Press, and Plasma Forge recipe costs accordingly. - @Ruling-0
    • Migration: Nothing you built has to come down. If you produce Eternity or MagMatter nanites, re-plan the cost: one Eternity nanite per run instead of four, using two Universium nanites, eight Eternity blocks and 64000 L of primordial matter each; MagMatter nanites now take four Universium nanites instead of one. Re-encode any autocrafting patterns for those two nanites, for the Nanite Framework and for the MHDCSM implosion recipe, which all changed inputs.
  • #7420 Updated ItemCasingsFoundry module descriptions, FoundryData recipe logic, and FoundryModule to implement random scaling for HR bonus. Adjusted GUI and lang strings. - @chrombread
    • Added: random Heliocast Reinforcement scaling system
    • Removed: deterministic HR bonus
    • Migration: Universal Collapser now works without Heliocast Reinforcement; existing setup efficiency and Superstable Core behavior changes to random rolling from 3+ modules instead of deterministic stacking.
  • #7373 Updated material and recipe loaders across Bartworks and Gregtech to reduce Shirabon mass, EU consumption, and crafting table recipes for high-tier components; adjusted EOH superdense plate quantities accordingly. - @Ruling-0
    • Removed: crafting table recipes for IV+ components
    • Migration: Crafting table recipes for materials at tier IV and above are gone: plate from ingot, foil from plate, sticks, rings, screws, gears, small gears, rotors, dust to and from small and tiny dust, gem splitting and small pipes. Re-encode any autocrafting pattern that used a hammer, file, saw or wrench on those materials. Shirabon also processes about five times faster.
  • #7370 Added Chemical Reactor recipe to ChemicalRecipes: 4× Indium Comb + 293L UU-Matter → 4× Purified Indium Ore at UHV voltage, 20 second duration. - @lekior
    • Added: Indium Comb UU-Matter recipe
  • #7346 MTEIndustrialAlloySmelter minimum casing requirements reduced. - @Auynonymous
  • #7331 Changed ULV input hatch recipe material requirements in MTERecipeLoader from 1 ingot to 8 ingots to match output hatch recipe. - @LazyFlesh
    • Fixed: ULV hatch recipe balance
  • #7316 Added ArmorPartBuilder for augment building; modified ArmorActionManager, JetpackBehavior, JumpBoostBehavior, SpeedBoostBehavior to implement new tier-based calculations; added three new augment items to ItemList and MechArmorAugmentRegistries with corresponding textures and language entries. - @Spaghetti-OberNub
    • Added: Apprentice Striders augment, Archmage Striders augment, Eldritch Striders augment, ArmorPartBuilder class
    • Migration: Reapply armor augments to achieve desired movement speeds and abilities; previous configurations no longer produce the same effects.
  • #7293 Removed BEC material infrastructure classes, updated gate recipes and material definitions. Removed BECMaterial, BECMaterialIds, BECMaterialList and related texture/icon classes. Modified ItemList and Materials to handle gate changes. - @Ruling-0
    • Removed: BECMaterial framework, BECPartOrePrefix, BECResourceHotswapper, BECTextureSet, IndexedIcon, ItemBECMaterialPart
  • #7290 Modified TileEntityModuleAssembler and TileEntityModuleBase to increase processing speeds. Updated lang keys in en_US. - @Ruling-0
  • #7289 Changed conversion ratio in ElectricImplosionCompressorRecipes from 1.125 to 1.0. - @Ruling-0
  • #7270 Added momentum system to MTEIndustrialCentrifuge with speed and parallel bonuses scaling up to 100% over 50 seconds of continuous operation, decaying 100% over 12.5 seconds idle. - @koolkrafter5
    • Added: Momentum mechanic for Industrial Centrifuge, Momentum display in WAILA and tricorder
  • #7260 Removed sensor and circuit requirements from Extrusion Hatch recipe and updated MTEHatchExtrusionGui to match standard input bus layout. - @UltraProdigy
    • Removed: Sensor component from Extrusion Hatch recipe, Circuit component from Extrusion Hatch recipe
    • Fixed: Extrusion Hatch recipe cost imbalance, GUI mismatch with standard input buses
    • Closes GTNH#25493
  • #7237 Updated rate scaling threshold in MTELargeHadronCollider from 2000 to 5000. Updated tooltips in en_US.lang and ru_RU.lang to reflect the new threshold. - @ham-corp
  • #7222 Updated maceration EU values in DustLoader.java to account for voltage-tier scaling. - @Auynonymous
  • #7209 Updated ItemComb.java bauxite recipe to use HV tier and HF acid instead of MV tier and HCL. - @C0bra5
  • #7198 Refactored protection value calculations in ItemAugmentFrame.java, MechArmorAugmentRegistries.java, and FrameBuilder.java to use percentage-based damage reduction. Updated lang strings to show percentages. - @FourIsTheNumber
  • #7119 Lowered casing count in MTEIndustrialDehydrator to support Amalgatite vacuum furnace recipes without requiring workarounds. - @Auynonymous
  • #7082 Modified FoundryData hatch limits and efficiency values; updated FoundryModule overclock factors; renamed 'TDS' to 'UC' (Universal Collapser) in code. - @chrombread
  • #7074 Added autogenerated Superdense Plates to Werkstoff system for materials with Dense Plates (BW) and selected late-game materials (GTPP). Adjusted recipe voltage requirements for ~15 Bartworks materials (Rhodium, Ruthenium, HDCS, etc.) from LV/MV to EV/IV/LuV/ZPM/UV tiers. - @Auynonymous
    • Added: Bartworks Superdense Plate variants, GT++ Superdense Plate variants, Black Hole Compressor recipes for highest-tier Superdense Plates
  • #7038 Modified MTEMassFabricator to implement scaling scrap generation rate by voltage tier and added new UUA synthesis recipes in GregtechIndustrialMassFabricator. - @GDCloudstrike
    • Added: UUA synthesis recipes from scrap/scrapbox, scaling scrap generation by voltage tier
    • Fixed: UUA late-game viability
  • #7009 MechArmorAugmentRegistries: Adjusted augment type classifications and piece restrictions to improve tinkerability and build variety. - @FourIsTheNumber
  • #6986 Modified HazmatBehavior and SpaceSuitBehavior to check protection across the full armor set rather than per-piece, and updated lang entries. - @FourIsTheNumber
  • #6975 Modified MTEBasicMachine.java and MTEBasicMachineWithRecipe.java to apply a 3x power multiplier to single-block arc furnaces, added new machine definitions in LoaderMetaTileEntities.java, and updated recipe generators. - @Pxx500
    • Added: singleblock arc furnace machines, power multiplier application
    • Fixed: singleblock arc furnace power parity
  • #6974 Modified MTEBlackHoleCompressor.java to allow unlimited parallels on recipes that don't require a black hole and have stability < 20, standardized recipe metadata calls to use static imports, and fixed incorrect metadata declarations in GTRecipeConstants.java. - @Ruling-0
    • Fixed: BHC parallel cap behavior, recipe metadata accuracy
  • #6971 Modified MTEAdvDistillationTower.java to calculate distillery mode parallels using structure height and voltage tier (2 parallels per 3 layers × voltage tier) instead of fixed 8 × voltage tier. - @EdenExecutive
  • #6963 Rewrote BEC recipe definitions in BECRecipes.java (+256 lines), updated TranscendentPlasmaMixerRecipes.java, modified Godforge.java and ResearchStationAssemblyLine.java to integrate metamaterials, added BEC condensate texture overlays, and updated animation rendering in CondensateAnimationTickHandler.java. - @Ruling-0
    • Added: BEC-integrated EoH recipes, BEC condensate texture overlays
    • Migration: Every Eye of Harmony component recipe, the reinforced temporal and spatial casings, the infinite spacetime boundary casing and all tiers of the three field generators, has moved off the Research Station assembly line into the Bose-Einstein Condensate assembler. An existing assembly line for these parts finds no recipe, so build the BEC first.
  • #6957 Modified MTELargeNeutralizationEngine.java to abstract the multiplier bounds as static constants and changed the tooltip formatting from dash to comma. - @loenaaaa
    • Added: static constants for residue multiplier bounds
    • Fixed: LNE residue growth volatility
  • #6930 Changed rate scaling formula above 2000 EU/t from exponential to square-root based; updated GUI tooltips and scaling calculations in MTELargeHadronCollider. - @ham-corp
  • #6926 Increased durability value in MBFrameType for mutagenic frame type. - @LazyFlesh
  • #6916 Modified EntityStaballoyConstruct to cap looting at level 3 and apply a 50% drop chance per looting level, shifting average yield from ~1 ingot/kill (no looting) to ~3 ingots/kill (looting IV). - @boubou19
    • Added: Looting enchantment support (capped at level III) for Staballoy Construct
  • #6882 Modified MCR recipe in AssemblyLineRecipes.java and removed old recipe definition from MTERecipeLoader.java. - @Auynonymous
    • Removed: Old Mega Chemical Reactor recipe
  • #6868 Rewrote MTEMegaDistillationTower to use new structure design, added distillery recipe map support, implemented ISurvivalConstructable, replaced hardcoded bonuses with variables, added texture assets, updated legacy controller with -Legacy suffix. - @chrombread
    • Added: MTEMegaDistillationTower new controller, Distillery recipe support, Structure design from contest, New texture assets, Survival constructable implementation
    • Removed: Maintenance hatch requirement, Hardcoded performance values
    • Migration: Existing Mega Distillation Towers keep running as the Legacy controller. The new one is a five-tier LuV/Naquadah machine (3 output hatches at T1 up to 11 at T5) that also runs distillery recipes. Convert the old controller in an assembler at LuV; the tier change means there is no crafting-table recipe.
  • #6835 Removed recipe entry from MaterialsInit that was out of sync with corresponding mixer recipe (coordinated with coremod PR #1776). - @LazyFlesh
    • Removed: Misaligned centrifuge recipe
  • #6834 Updated MTERecipeLoader HV Lathe recipe diamond ingredient from Industrial to Exquisite variant. - @NotKaizul
  • #6765 Changed Hypogen material voltage tier to UEV and EOH materials to UXV in MaterialsInit.java and MaterialsElements.java. Adjusted fluid solidification recipes in RecipeGenFluids.java. - @chrombread
  • #6682 Added new recipes to BeamlineRecipeLoader and BeamCrafterRecipes for UHV items (lapotron chip engravings, tesseract variants, plutonium fuel), added new photomask texture asset for engraved lapotron chips, and updated MaskList enum. - @ham-corp
    • Added: UHV beam recipes for lapotron chips, tesseracts, and plutonium fuel, new engraved lapotron chip photomask
  • #6662 Modified Higgs weight constant, proton beam multiplier, and beam scaling calculation in MTELargeHadronCollider and related recipe loaders. - @ham-corp
  • #6570 Added alternative EBF recipes for Chlorosulfonic Acid chain downtiering. Modified toxic slurry recipe duration. Shortened LNE controller assembly recipe duration and EU cost. Changed robot arm depletion from all to one per cycle. Updated tooltip formatting for consistency. - @loenaaaa
    • Added: Alternative Chlorosulfonic Acid recipes, Toxic Air processing recipe
    • Fixed: Chlorosulfonic Acid progression difficulty, LNE recipe consistency
  • #6548 Created new MTEExothermicHearth (formerly MBF), ported to MTEExtendedPowerMultiBlockBase as ZPM-tiered machine, added hearth heating mechanic and MTEExothermicHearthGui, added multiple new casings (BlockCasings12, BlockCasings14), deprecated old MTEMegaBlastFurnaceLegacy, updated recipes including Assembly Line integration. - @chrombread
    • Added: MTEExothermicHearth class, MTEExothermicHearthGui, new casings in BlockCasings12/14, heating mechanic, Assembly Line recipes
    • Migration: Your Mega Blast Furnace keeps running exactly as it is and is now registered as the Legacy controller. The ZPM-tier Exothermic Hearth with the hearth-heating mechanic is a separate new machine; craft it, or convert the old controller with the assembler recipe, only if you want it.
  • #6514 Updated Cryotheum recipes in mixer and centrifuge, adjusted Thaumcraft aspects and chemical formula to reflect lapis substitution. - @loenaaaa
  • #6512 Updated MTENanoForge casing material from Europium to Iridium. - @seventh-june
  • #6487 BeamCrafterRecipes ATLAS casing cost values updated (2-line change). - @ham-corp
  • #6474 ComponentAssemblyLineLoader, NaniteChain, MachineRecipes, ResearchStationAssemblyLine, and MTEHatchRack updated; wireless hatch recipes restructured with additional Planck circuit requirements and adjusted tier requirements. - @GDCloudstrike
    • Added: Planck circuit requirement to UXV recipes, quantum computer integration
  • #6449 Updated recipe timing in ChemicalRecipes for titanium tetrachloride EBF processing to reduce its competitiveness relative to rutile-based routes. - @UltraProdigy
  • #6428 Updated NaniteChain, ResearchableAssemblyLine, and ResearchStationAssemblyLine recipes to use new power IC tiers and adjusted coolant quantities. - @GDCloudstrike
  • #6411 Modified MTELatex hatch validation to accept multiple laser hatches without multiamp limitation, maintaining singularity gate. - @UltraProdigy
    • Removed: Single hatch limit for LATEX, Multiamp-only restriction for LATEX
  • #6404 Updated Godforge recipes to add bromine plasma processing path. - @EnderProyects
    • Added: Bromine to bromine plasma recipe
  • #6385 Updated RecipeLoader and tectech recipes to substitute new voltage coil tiers in high-tier energy hatch and accelerator recipes. - @Auynonymous
  • #6376 Increased output slot count for HV and higher tier Chemical Bath singleblock definitions in LoaderMetaTileEntities. - @Nana-Sakura
  • #6354 Updates RecipesGeneral.java to reduce Magic Feather voltage requirement from EV to HV, affecting Elytra craftability timing. - @UltraProdigy
  • #6346 Reduces recipe duration in ElectricImplosionCompressorRecipes.java by 4x to account for increased EIC multiblock size. - @Ruling-0
  • #6336 EntityStaballoyConstruct loot table modified to remove block and plate drops. - @seventh-june
    • Removed: Block drops from Staballoy Construct, Plate drops from Staballoy Construct
  • #6284 Changed ALICE casing count in LHCStructureString from 380 to 158 to balance with other LHC casings (140-160 range). - @ham-corp
  • #6263 Modified AssemblerRecipes.java to remove old recipes (62 lines deleted) and adjust Water Tank recipe costs in recipe loader; requires NewHorizonsCoreMod#1676. - @Dream-Master
    • Added: Adjusted assembler recipes for Water Tank production
    • Removed: Old assembler recipes (62 lines)
    • Fixed: Issue #24094: Water Tank obsolescence
    • Migration: You do not have to touch anything you built, and water tanks you have already placed go on working. The GT assembler recipes for the Railcraft water tank block are gone, so an AE2 pattern or an automated line feeding that assembler recipe stops producing until you point it at the new recipe.
    • Closes GTNH#24094
  • #6258 Modified ChemicalRecipes.java recipe durations for diluted acid undilution recipes, reducing from 96,000 EU / 3 buckets (32k per bucket) to 8k per bucket while keeping HV tier. - @LazyFlesh
  • #6254 Modified Assembler recipe times in tectech/loader/recipe/Assembler.java: reduced 4A, 16A, 64A, and 256A amperage fluid recipe durations by 75%. - @UltraProdigy
  • #6244 Modified fuel burn values in AdditionalRecipes.java: Hydrofluoric (40→60), Phosphoric (36→66), Hypochlorous (30→56), Hydrochloric (28→52), Nitric (24→72), Sulfuric (18→28), Diluted HCl (14→26), Acetic (11→21), Diluted Sulfuric (9→14). - @loenaaaa
  • #6236 Updated molten redstone fuel value in AdditionalRecipes from 10,000 to 40,000 EU per 1,000L. - @bumbleBee945
  • #6233 Increased Incoloy-903 recipe duration in RecipesGregTech to maintain energy balance after downtiering to EV. - @LazyFlesh
  • #6232 Changed Incoloy-903 alloy tier from IV to EV in RecipesGregTech. - @LazyFlesh
  • #6211 Updated coolant throughput values in RecipeLoader2.java. - @Pxx500
  • #6164 Added strontium output to the prismatic acid QFT recipe in RecipeLoaderChemicalSkips. - @GDCloudstrike
    • Added: strontium output to Prismatic Acid QFT recipe
  • #6144 Updated structure definitions in MTEBeamCrafter, MTEBeamMirror, MTEBeamSplitter, and MTEBeamStabilizer to use shielded accelerator casings instead of collider casings (which require UV sensors). Added grate casings for aesthetics. - @ham-corp
    • Added: grate casings to structure definitions
    • Removed: collider casing requirement from beamcrafting multis
    • Migration: Rebuild beamcrafting multiblock structures to use shielded accelerator casings instead of collider casings; LHC remains unchanged.
  • #6095 Changed recipe tier and reduced EU/t in ArtificialMicaLine recipe registration. - @LazyFlesh
  • #5930 Redesigns MTESteamMixer structure, adds new ItemList entries for new casings, updates GTValues with new casing definitions, and provides backward compatibility with the old structure. - @JL2210
    • Added: New Steam Blender structure design, New Steam Blender casing definitions in GTValues
  • #5925 Modifies the MV Field Generator recipe in ComponentAssemblyLineLoader. - @UltraProdigy
  • #5921 Modifies ArtificialMicaLine recipe parameters to correct the cost/benefit ratio. - @Pxx500
    • Fixed: Mica Line exploitation loop costing less than water electrolysis
  • #5889 Adjusted upgrade unlock order and pricing in ForgeOfGodsUpgrade and Godforge recipe loader; modified GodforgeMath tier calculations. - @GDCloudstrike
  • #5825 Moved turbine shaft recipe from crafting table to Assembler machine recipe in RecipesMachinesCustom.java, maintaining material costs but requiring appropriate tier machinery. - @UltraProdigy
    • Added: Assembler recipe for turbine shaft
    • Removed: Workbench crafting recipe for turbine shaft
  • #5807 RecipeLoader recipe definitions modified to adjust Neutron Accelerator tier requirements and remove cable components from recipes. - @UltraProdigy
    • Removed: Cable inputs from Neutron Accelerator recipes
    • Fixed: Recipe conflicts in Neutron Accelerator processing
  • #5730 Updated AssemblyLine recipe loader to modify PCB factory module ingredient costs and remove duplicate coolant requirements. - @chrombread
  • #5724 Updated NetheriteRecipes loader to decrease honeycomb input from 32 to 8 per recipe. - @chrombread
  • #5707 Added shifted superfluid to the cutting machine recipe map and integrated it into block, log, plank, plate, stick, and stone processing chains via recipe loaders. - @chrombread
    • Added: Shifted superfluid support for cutting machine recipes
    • Closes GTNH#22805
  • #5702 Updated cooling efficiency multipliers in MTEMegaVacuumFreezer to increase output by 100x. - @chrombread
  • #5690 Updated chemical reactor recipe configuration in ChemicalRecipes to use circuit 6 for dinitrogen tetroxide synthesis. - @loenaaaa
  • #5684 Updated glass tier restriction in MTEMassSolidifier from UMV to UEV. - @chrombread
  • #5668 Relocated recipe from ForgeHammerRecipes to MTEChamberCentrifuge heavy mode handler. Adjusted power consumption multiplier in centrifuge implementation. - @chrombread
    • Added: Forge hammer space/time recipe in Spinmatron heavy mode
    • Removed: Forge hammer space/time recipe from Forge Hammer
    • Migration: The Forge Hammer recipe that splits molten SpaceTime into Space and Time is gone. It moved to the Spinmatron (new in 2.9.0) in Heavy mode, which needs a T3+ structure and 16x the EU of the other modes. Any Forge Hammer line feeding SpaceTime stalls until you build one.
  • #5647 Removed shaped crafting table recipes for IV+ GT++ materials by updating RecipeGenShapedCrafting and GregtechConduits. - @GDCloudstrike
    • Removed: Crafting table recipes for IV+ GT++ material parts
  • #5643 Removed Hydroxide from MaterialMisc, updated dependent recipes in nuclear materials and LV/MV Prospector Scanner to use Salt Water instead. - @UltraProdigy
    • Removed: Hydroxide material
  • #5636 Updated Thorium-232 Tetrafluoride recipe to 4x scale without small dusts; changed Chemical Plant recipe duration from 300s to 100s and adjusted byproduct yields. - @GirixK
  • #5630 Added Soul Infused Medium material definition to Materials enum and MaterialsIDMap. - @EnderProyects
    • Added: Soul Infused Medium material
  • #5604 Updated addDefaultPolymerizationRecipes to output 144-unit multiples and substitute air/oxygen cells for basic material cells in fluid inputs. - @GirixK
  • #5538 Updated CoverFluidRegulator and MetaGeneratedItem01 conveyor speed scaling and tooltips from 2x to 4x multiplier for LuV+, increased MAX conveyor capacity. - @chrombread
  • #5537 Added 'size per stack' parameter to CoverConveyor using Pineapple's item transfer system, adjusted LV conveyor configuration, updated tooltips to reflect new behavior. - @chrombread
    • Added: size per stack conveyor parameter
  • #5529 Adjusted output multiplier in RecipeLoaderMilling for Netherrack Froth recipe. - @UltraProdigy
  • #5522 Adjusted recipe costs in MTERecipeLoader and AssemblerRecipes for black plutonium and mining neutronium casings. - @boubou19
  • #5510 Reverted casing output counts in MTERecipeLoader and AssemblerRecipes to standardize casing crafting costs. - @FourIsTheNumber
    • Fixed: Inconsistent casing cost ratios
  • #5437 Updated WiremillRecipes spacetime wire recipe duration to improve throughput parity with other wire production methods. - @chrombread
  • #5371 Increased inventory size in MTEBusInputFocus and updated its UI implementation in MTEBusInputFocusGui to accommodate the larger slot count. - @chrombread
    • Added: 256-slot inventory support for catalyst housing
  • #5364 Refactored nefarious fuel registration from recipe-based to universal materials builder; removed nefarious oil from SemiFluidFuelHandler due to 512k fuel value exceeding 576k cell capacity. - @Miklebe
    • Added: Nefarious fuels registration in materials builder
    • Removed: Nefarious oil semifluid engine support
  • #5314 Added eta meson to the RecipeLoaderChemicalSkips recipe loader for QFT Synchrotron catalyst support. - @mamiemru
    • Added: Eta meson QFT Synchrotron catalyst
  • #5305 Reduced recipe chain length in NaniteChain loader by simplifying intermediate steps. - @GDCloudstrike
  • #5269 Added six new fluid-to-EU recipes in AdditionalRecipes.java loader (hexafluorosilic: 350 EU/L, industrial hydrofluoric: 320, phthalic: 270, naphthenic: 250, industrial hydrochloric: 224, propionic: 150). - @loenaaaa
    • Added: six acid recipes
  • #5251 MTELatex deprecation notice removed; deleted single-block cable coater entries from ItemList and LoaderMetaTileEntities; removed deprecation tooltip from ProcessingWire. - @chrombread
    • Removed: Single-block cable coater machine, Deprecation lang keys, Cable deprecation tooltip
    • Migration: The Basic Cable Coater and Advanced Cable Coater I, II and III are unregistered with no replacement, so any you have placed or are holding disappear on first load.
  • #5246 RecipeLoaderMilling adjusted netherrack-to-netherite ratio by reducing output volume 8×. - @Glease
  • #5227 Adjusted ChemicalRecipes methane recipe yields. - @Pxx500
  • #5220 Changed CompressorRecipes recipe mapping to restore industrial diamond recipe to multiblock-only implosion compressor. - @chochem
    • Fixed: industrial diamond restricted to intended multiblock machine
  • #5171 Adjusted LargeBoilerFuelBackend burn times and efficiency, added mEfficiencyDecrease variable to MTELargeBoilerBase for gradual efficiency decay. New MUI2 GUI widget MTELargeBoilerGui added to display steam production metrics. - @Miklebe
    • Added: Efficiency loss mechanic (mEfficiencyDecrease), Steam production GUI display
  • #5168 Removed parallel reduction penalty in MTEChamberCentrifuge speed mode logic and cleaned up 'mMode' notation. - @chrombread
    • Removed: Parallel reduction in speed mode, mMode notation
  • #5167 Removed assembler recipe and increased extruder recipe efficiency in BioRecipes.java for wood pellet production. - @chochem
    • Removed: Wood pellet assembler recipe
    • Fixed: Inconsistent wood pellet recipe availability
    • Closes GTNH#22123
  • #5139 Modified FusionReactorRecipes and HTGRLoader with new sunnarium breeding recipe, alternative paths for actinides, and parametrized circuit configuration in mixer. - @Pxx500
    • Added: Sunnarium breeding recipe to HTGR
  • #5038 Modified RecipeLoader to normalize molten metal beamline recipe outputs to ingot-equivalent quantities. - @UltraProdigy
  • #4949 MTEMegaAlloyBlastSmelter glass requirement increased to UMV tier. validateRecipe now includes check for UMV+ glass compatibility in all recipes. - @chrombread
    • Added: UMV+ glass validation in MABS recipe checks
  • #4924 EyeOfHarmonyRecipe output weights recalibrated to include full ore byproduct chains. WerkstoffLoader material processing adjusted to generate appropriate output distributions. - @SST-03
    • Fixed: Eye of Harmony not outputting all ore byproducts
    • Closes GTNH#21443
  • #4923 MTEHatchInputBus and MTEHatchOutputBus inventory sizes increased for tiers EV+. Super Bus recipes disabled with deprecation markers. ME Crafting bus also adjusted. GUI remains within diamond chest size limits. - @evgengoldwar
    • Added: Increased bus inventory capacity for HV+ tiers
    • Removed: Super Bus crafting recipes

Bug Fixes ​

  • #7952 Added T4 structure requirements to MTESpinmatron tooltip. - @Angry3vilbot
    • Fixed: Missing T4 structure info in Spinmatron tooltip
    • Closes GTNH#26628
  • #7950 Fixed AntimatterRenderer and shader references in TileAntimatter, AntimatterRenderBlock, BlockRenderer, and related shader files; removed stale transparent texture references. - @boubou19
    • Removed: transparent texture references
    • Fixed: SSASS visual corruption
  • #7947 Fixed ConcurrentModificationException in PosteaTransformers lambda that iterates BioLabParts NBT by avoiding concurrent modification during HashMap traversal. - @boubou19
    • Fixed: ConcurrentModificationException in quest profile loading
  • #7943 Added documentation comment to MTEEyeOfHarmony.java explaining pity behavior is intentional. - @Worive
  • #7942 Updated steam singleblock lang entry to match multiblock steam usage format. - @Armisael5
    • Fixed: steam usage tooltip consistency
    • Closes GTNH#26565
  • #7941 Fixed non-constant expression in initialization error in gorgeBeam.vert.330.glsl shader. - @Algent
    • Fixed: shader compilation
  • #7938 Modified BlockReinforced.java to set proper tool types and mining speeds for reinforced block metas, and added structure update calls for casings. - @Armisael5
    • Fixed: reinforced casing harvestability, structure validation on block break
    • Closes GTNH#26592
  • #7933 Corrected block placement in MTENanochipAssemblyComplex structure string on layers 20 and 34. - @Auynonymous
    • Fixed: Missing blocks in NAC structure
  • #7930 Corrected filtering logic in SplitterRule to treat an empty item filter list as a wildcard (accepting all items) rather than rejecting all items. - @serenibyss
    • Fixed: Splitter rule item filter behavior
  • #7923 Modified MTEActiveTransformer to use accumulated transferBuffer value for display instead of single-tick samples, then reset the buffer for next cycle. - @Jesse-njx
    • Fixed: Active Transformer power display accuracy
  • #7920 Corrected null checks in MTELargeHadronColliderGui to allow calculator operations even when no recipe is active. - @ham-corp
    • Fixed: LHC calculator giving wrong values without active recipe
    • Closes GTNH#26440
  • #7919 Rewrote oregen pattern loading/saving logic in GTWorldgenerator and GTPacketSendOregenPattern to use enum names instead of ordinals, preventing corruption. Added GTPacketRequestOregenPattern and associated tests. Updated default pattern and improved validation. - @Algent
    • Added: GTPacketRequestOregenPattern class, oregen pattern command, pattern validation tests
    • Fixed: GregTech_OregenPattern.dat corruption
    • Migration: Run /gt oregenpattern once after updating: it prints your world's ore vein pattern and where that value came from. If it says AXISSYMMETRICAL for a world made after July 2023, or that the pattern was guessed, fix it with /gt oregenpattern set EQUAL_SPACING confirm. Veins that already generated do not move, so do not regenerate chunks. Note that 2.8.4 misreads the upgraded file if you downgrade later.
  • #7913 Corrected item slot index logic in MTESplitterModuleGui to allow access to the full range of 16 slots. - @serenibyss
    • Fixed: Item slot indices in splitter rules
  • #7912 Partial revert of PR #7892 to restore fuel registry entries in GGMaterial. - @UltraProdigy
    • Added: Naquadah fuel registrations
    • Fixed: Naquadah fuels being deleted from existing worlds
    • Migration: No action needed; this PR restores fluids to prevent their loss from existing worlds after a previous change deleted them.
  • #7909 Corrected the block adder sequence in MTEIndustrialArcFurnace to match the expected order for custom adder logic, similar to fixes applied to other multiblocks. - @AnsonYeung
    • Fixed: IAF structure formation
  • #7908 Updated hatch autoplace limit in MTEEndothermicFridge to align with standard late-game multiblock configuration. - @UltraProdigy
    • Fixed: inconsistent hatch placement rules
  • #7907 Updated GenerateNodeMap to treat cable connections without adjacent tiles as endpoints during power node generation. - @DreamYao520
    • Fixed: solar panel covers on cable endpoints
    • Closes GTNH#26547
  • #7906 Fixed parallel count calculation in MTEBECIONode to properly handle tier-skipping scenarios. Corrected unlinked error message. - @Armisael5
    • Fixed: BEC IONode tier-skip parallel issue, error message linking
  • #7905 Fixed item name lookup in MTENanochipAssemblyModuleBase to handle renamed items gracefully. - @serenibyss
    • Fixed: NAC module crash with renamed items
  • #7901 Corrected recipe parameters in AssemblerRecipes for energy distributor tier variants. - @Armisael5
    • Fixed: energy distributor assembler recipe consistency
    • Closes GTNH#26546
  • #7894 Updated GTRendererBlock cache capture logic to skip nested inventory captures that are incomplete or invalid. - @boubou19
    • Fixed: invisible textures on block sides
  • #7884 Modified MTEHatchInputBusDebug to prevent inventory drops on block break. - @chrombread
    • Fixed: debug bus inventory spillage on break
  • #7881 Fixed lossy floating-point computation of world age in EOHRenderingUtils and EOHTileEntitySR causing animation frame skipping. - @Armisael5
    • Fixed: EOH animation stuttering
  • #7876 Changed hatch category filter in AntimatterGenerator.java from broad ExoticDynamo to specific laser source hatches only. - @DreamYao520
    • Fixed: SLAM accepting unintended dynamo hatch types, Wireless dynamo capacity bypass exploit
  • #7875 Modified MTETransformer.java WAILA tooltip to check if input and output EU tiers are identical before displaying step-up/step-down information. - @Angry3vilbot
    • Fixed: Misleading Step Up/Step Down text in WAILA
    • Closes GTNH#26497
  • #7870 Removed output hatch mention from tooltip text in MTESourceChamber.java. - @Angry3vilbot
    • Removed: Output hatch requirement text
    • Fixed: Misleading Source Chamber documentation
    • Closes GTNH#26474
  • #7867 Corrected chromium output ratio in AcidRecipes.java fracking line recipe. - @Nana-Sakura
    • Fixed: Chromium net gain in fracking cycle
  • #7865 Corrected material definitions in CraftingRecipes.java, CraftingRecipeLoader.java, AssemblerRecipes.java, RecipesMachinesTiered.java, and Assembler.java across multiple machine tiers. - @Auynonymous
    • Fixed: LUV BioLab chrome usage, UEV BioLab bedrockium usage, UEV/UIV Buck Converter materials, RPP Machine Casing framebox material, LUV AutoBench chrome usage
  • #7863 Changed electrode recipe registration in ArcFurnaceLoader.java to use normal compressor recipe map. Updated GTRecipeConstants.java javadoc with compression tier information. - @Ruling-0
    • Added: Compression tier javadoc in GTRecipeConstants
    • Fixed: Electrode recipe map categorization
  • #7859 Modified MTEAssemblyLine.java to check and honor the gt_hatch parameter when placing energy hatches, preventing automatic placement of 16 regardless of configuration. - @MLGfruitshoot
    • Fixed: Assembly Line ignoring gt_hatch parameter for energy hatches
    • Closes GTNH#26482
  • #7857 Changed suffix methods to return IChatComponent instead of pre-localized strings. Suffix construction moved to client-side via ChatComponentGhostCircuitSuffix and ChatComponentNonConsumedItemsSuffix classes. Requires AE2 PR #1545 for signature compatibility. - @Eldrinn-Elantey
    • Added: ChatComponentGhostCircuitSuffix class, ChatComponentNonConsumedItemsSuffix class
    • Fixed: Server locale forcing on dedicated servers for interface suffixes
  • #7854 Moved WAILA cache list localization from server-side NBT storage to client-side resolution using stack NBT. Unresolvable entries are skipped during client display. - @Eldrinn-Elantey
    • Fixed: Server locale forcing on dedicated servers
  • #7846 Corrected BECMetaMaterialRecipes T0 metamaterial recipe definitions that were broken by PR #7809. - @Ruling-0
    • Fixed: BEC Crude End of the Horizon parts uncraftable
    • Closes GTNH#26454
  • #7841 Extended AE2Compat class to include these non-consumed items in the ME Interface ignored items configuration. - @YamiKami-Sama
    • Fixed: Blood orbs and TF trophies blocked by ME Interface blocking mode
  • #7839 Corrected CCInputConsumer fluid consumption logic to properly drain fluid across multiple input hatches. - @AnsonYeung
  • #7838 Corrected recipe removal logic in GTModHandler to ensure consistent handling between buffered and unbuffered recipe removal passes. - @boubou19
    • Fixed: Fluid cell housing recipes uncraftable with pre-made housing
    • Closes GTNH#26405
  • #7832 Modified ToolboxUtil to check soldering iron's own battery instead of only toolbox battery. Moved toolbox slot textures to correct folder and added UITexture conversion logic in GTGuiTextures. - @querns
    • Added: toolbox slot texture files
    • Fixed: soldering iron toolbox functionality, broken tool animation textures
    • Closes GTNH#25721
  • #7831 Updated ME Stocking hatch fluid processing in TileEntityModuleMiner to scan fluids within parent recipe loop instead of reporting cached value. - @vermz99
    • Added: Plasma tier sorting in Space Elevator
    • Fixed: Shared plasma hatch fluid visibility in Mining Module
    • Closes GTNH#26423
  • #7828 Modified CoverBaseGui to include cover side in panel name, allowing the UI system to recognize and track distinct cover instances separately. - @mcmlevi
    • Fixed: Crash when opening multiple same-type covers simultaneously
    • Closes GTNH#26219
  • #7822 Modified BaseTileEntity.getTE() to force rechecking tile entity state on chunk load, preventing stale null states when blocks are loaded. - @Caedis
    • Fixed: Advanced Solar Boiler losing water inventory after restart, Pipe connections losing state across chunk borders
    • Closes GTNH#18520
  • #7820 Deleted an erroneous autogen recipe for Chainmail Boots in CraftingRecipeLoader and added explicit handling in ArcFurnaceRecipes, FluidExtractorRecipes, and Pulverizer to prevent regeneration. - @UltraProdigy
    • Removed: Chainmail Boots Alloy Smelter recipe
    • Fixed: Unintended Chainmail Boots Alloy Smelter recipe
  • #7818 Added assembled status check in MTENanochipAssemblyComplex power distribution loop to prevent energy loss to unformed modules. - @Eldrinn-Elantey
    • Fixed: NAC power drain into unformed modules
  • #7813 Modified MTEExtendedPowerMultiBlockBase to properly clear mEUt flag, preventing stale NBT data from causing incorrect power generation display. - @AnsonYeung
    • Fixed: WAILA power generation display for DTPF and other machines
  • #7811 Corrected GMI item references in GTModHandler and ScannerHandlerLoader to reference correct mod items instead of non-existent registry entries. - @boubou19
    • Fixed: null getModItem calls for Galacticcraft Mars items
  • #7810 Refactored MTEBoardProcessorModule to compute fillPercentage dynamically from underlying fields instead of maintaining stale cached values. - @AnsonYeung
    • Fixed: Board Processor fill percentage on server restart
  • #7807 Updated MTERecipeLoader transformer recipes to use cable component for UV and UHV normal transformers. - @Nana-Sakura
    • Fixed: UV-UHV transformers using wire instead of cable
  • #7805 Added new circuit 2 lubricant recipe to DistilleryRecipes for processing Oil in Distillation Tower. - @Angry3vilbot
    • Added: Distillation Tower Oil to Lubricant recipe
    • Fixed: missing Distillation Tower Oil to Lubricant recipe
    • Closes GTNH#23493, GTNH#26379
  • #7804 Corrected SimplePowerGogglesRenderer LSC power calculation and display logic. - @mattiasploesch-cpu
    • Fixed: Power Goggles LSC charge percentage display, Power Goggles LSC status information
    • Closes GTNH#21787, GTNH#26382
  • #7803 Updated two recipe loader files to use cable component instead of wire in UV machine hull assembly recipes. - @Nana-Sakura
    • Fixed: UV machine hull using wire instead of cable
  • #7801 Updated MTEExothermicHearth tooltip casing count constant from 860 to 864. - @metalcupcake5
    • Fixed: incorrect Exothermic Hearth casing requirement display
  • #7800 Added null check guard before accessing processingLogic field in MTEMultiBlockBase. - @Nana-Sakura
    • Fixed: processingLogic NullPointerException
  • #7794 BaseMetaTileEntity: snapshot tile entity reference during explosion event processing to prevent null pointer exceptions. - @Caedis
    • Fixed: explosion NPE
  • #7792 MTEHighTempGasCooledReactor: fixed drain() calls to use the correct ME Input Hatch override method instead of falling back to unimplemented parent drain(int, boolean). - @Nana-Sakura
    • Fixed: HTGR NPE with ME Input Hatch
  • #7791 MTEBoardProcessorModule: implements WAILA data methods to properly display item quantities. - @AnsonYeung
    • Fixed: board processor WAILA/WDMla display
  • #7787 WirelessComputationPacket: changed tick comparison from < to != so double-buffer rotation is re-armed when server tick counter resets (MinecraftServer.getTickCounter() restarts from 0 on IntegratedServer rebuild). - @noitacude013
    • Fixed: wireless computation deadlock after server restart
  • #7783 Gorge modules (MTEBaseModule, MTEMoltenModule, MTESmeltingModule, MTEPlasmaModule, MTEExoticModule): improved power validation using actual overclock calculator to get true EU/t. Added POWER_LOSS event emission if voiding occurs during power failure. - @AnsonYeung
    • Added: power failure notification fallback
    • Fixed: Gorge incorrect EU/t calculation
  • #7781 BaseMetaPipeEntity: updated soft mallet tooltip message to indicate it only toggles specific covers. Added localization strings. - @H3stur
  • #7778 ArmorEventHandlers: landing gear fall damage check now uses player.fallDistance instead of event distance to match Minecraft's internal fall damage calculation. - @Angry3vilbot
    • Fixed: landing gear low fall damage absorption
    • Closes GTNH#26309
  • #7777 ToolVajra: reworked onItemUse handling to account for Forge and Minecraft's event handling quirks, continuing from PR #7204. - @AnsonYeung
  • #7775 MobHandlerLoader: EEC now checks if an item is actually damaged after applying random damage, rather than skipping all damageable item types unconditionally. - @Angry3vilbot
    • Fixed: EEC voiding undamaged damageable items
    • Closes GTNH#26266
  • #7774 MTETargetChamber: restores float cast in progress time calculation introduced in PR #7753. - @Worive
    • Fixed: target chamber progress time calculation
  • #7771 MTEHatchSolidifier: ghost mold and configuration circuit slots are now excluded from valid slot checks, matching the behavior of the Extrusion Hatch. - @Eldrinn-Elantey
    • Fixed: Solidifier Hatch ghost mold dupe
  • #7770 MTEMultiBlockBase: DynamicTextWidget changed to regular TextWidget.dynamicString since the widget logic computes text client-side; underlying data (mOutputItems) are already synced separately. - @AnsonYeung
    • Fixed: Neutron Activator text disappearance in recipe UI
    • Closes GTNH#26267
  • #7768 Corrected MTEFusionComputer fluid display state to clear after recipe completion. - @AnsonYeung
    • Fixed: Fusion Reactor stuck on crafts
    • Closes GTNH#26238
  • #7767 Replaced recursive DFS with iterative BFS in ConnectedBlocksChecker to avoid StackOverflowError on large structures like L.E.S.U. - @Nana-Sakura
    • Removed: Recursive DFS traversal
    • Fixed: Crash on large multiblock structure validation
    • Closes GTNH#26284
  • #7762 Corrected Werkstoff freezer recipe duration calculation to use mass-based heat capacity instead of proton sum, resulting in realistic recipes (e.g., zirconium freezing now takes proper time rather than 1 tick). - @Nana-Sakura
    • Fixed: Unrealistic freezer recipe durations
  • #7758 Corrected recipe output merging and fixed material formulas in MaterialsOres and RecipeGenOre for GT++ electrolyser recipes. - @Nana-Sakura
    • Fixed: Duplicate oxygen output in electrolyser recipes
    • Closes GTNH#26198
  • #7755 Corrected WAILA data provider in AntimatterGenerator to display proper information for SLAM multiblock. - @AnsonYeung
    • Fixed: SLAM WAILA display
  • #7753 Modified MTETargetChamber to add per-tick beam validation during recipe progress, ensuring beam remains present and matches recipe requirements throughout crafting. - @error1number404
    • Added: Continuous beam validation during crafting
    • Fixed: Target Chamber only validating beam at recipe start
    • Closes GTNH#26254
  • #7750 Added minimum voltage constraint to dense plate recipe generation in RecipeGenPlates to ensure all dense plate recipes require at least MV-tier bender. - @UltraProdigy
    • Fixed: LV dense plate bender recipes for GT++ materials
  • #7745 Updated WerkstoffLoader to properly define mass for ruthenium tetroxide so autogenerated solidifier recipe reflects correct stoichiometry and duration. - @Nana-Sakura
    • Fixed: RuO4 solidifier recipe output and duration
  • #7742 Implemented IDataCopyable interface for MTENeutronSensor to preserve NBT data during Matter Manipulator copy operations. - @chazzybearr
    • Fixed: Neutron Sensor settings lost when copying with Matter Manipulator
    • Closes GTNH#25212
  • #7736 Updated MTEBeamCrafter structure tooltip information. - @Nana-Sakura
    • Fixed: Incorrect Collider Casing reference in Beam Crafter tooltip
  • #7734 Added legacy NBT loading support in CoverWirelessController to handle old Internal Redstone Receiver cover format introduced in PR #5415, with added unit tests for data migration. - @Worive
    • Added: Legacy cover NBT compatibility, CoverWirelessControllerTest unit tests
    • Fixed: Wireless controller cover loading from 2.8
    • Closes GTNH#26246
  • #7733 Updated rendering classes (DetravOreMarkerRenderer, GTPowerfailRenderer, StructureErrorHighlightRenderer, TetherLineRenderer, MTEDebugStructureWriter, EOHTileEntitySR) to use renderViewEntity instead of player entity for camera calculations. - @Caedis
    • Fixed: Freecam compatibility in renderers
  • #7729 Corrected MTESteamMultiBlockBase.depleteInput to iterate through input slots properly instead of always checking slot 0, preventing NPE on empty initial slots. - @czqwq
    • Fixed: depleteInput null pointer exception, Incorrect slot iteration in steam multiblocks
  • #7726 Aligned validateRecipe and onRecipeStart to use consistent energy start values in MTEPlasmaModule and MTEForgeOfGods, preventing speed bonus overflow. - @AnsonYeung
    • Fixed: Speed bonus infinity initialization bug, Item voiding in God Forge Plasma Module
  • #7725 Replaced 8 bronze pipe casing blocks with strong bronze casing blocks in MTEMegaDistillationTower multiblock structure validation. - @UltraProdigy
    • Fixed: Incorrect casing placement on MDT
    • Migration: Replace 8 bronze pipe casings on MDT with strong bronze casings to match the corrected structure.
  • #7724 Added network syncers for speed toggle and all four upgrade slots in MTEIndustrialApiary to refresh client-side tooltip display. - @chazzybearr
    • Fixed: Industrial Apiary tooltip update on upgrade changes
    • Closes GTNH#25573
  • #7722 Modified AntimatterGenerator to reduce recipe check frequency from per-tick to every 5 seconds and fixed WAILA tooltip rendering. - @AnsonYeung
    • Fixed: SLAM instant recipe check performance, SLAM WAILA tooltip
  • #7721 Refactored QuantumDataPacket, MTENetworkSwitch, MTENetworkSwitchAdv, and MTEQuantumComputer to adopt Static QoS behavior, removing reliance on globally synced server tick counter and improving restart safety. - @AnsonYeung
    • Fixed: Weighted QoS computation bugs, Quantum Computer computation errors, Restart safety issues
  • #7719 Fixed half-mode amperage calculation and display in MTEWetTransformer and MTETransformerHiAmp, updated en_US and ru_RU language files. - @chazzybearr
    • Fixed: Incorrect half-mode amperage display
    • Closes GTNH#22225
  • #7718 Removed premature return in MTEIndustrialCokeOven survival construction that incorrectly signaled completion after base structure formation. Allows completion loop to check all configured slices. - @DreamYao520
    • Removed: Premature completion return
    • Fixed: Projector stopping after first slice in multi-slice structure
    • Closes GTNH#26195
  • #7716 Fixed panel state management in ExoticInputsListPanel and MTEExoticModule to prevent crashes on repeated opens. - @serenibyss
    • Fixed: Crash on re-opening Godforge exotic inputs panel
  • #7715 Fixed laser mode power calculation in MTEDebugPowerGenerator. - @AnsonYeung
    • Fixed: 80% power loss in debug generator laser mode
    • Closes GTNH#26231
  • #7714 Added onBaseTEDestroyed callback invocation in BlockFrameBox breaking logic to properly clean up cover state data. - @Angry3vilbot
    • Fixed: Wireless redstone channel persisting after block removal
    • Closes GTNH#26236
  • #7705 Added circuit 1 requirement to all assembler spike recipes in AssemblerRecipes. - @Angry3vilbot
    • Fixed: Missing circuit 1 in spike recipes
  • #7703 Added validation in GTUtil, BehaviourSoftMallet, and BehaviourWrench to prevent invalid double chest rotations. - @Glease
    • Added: Double chest rotation validation
    • Fixed: Double chest texture overlapping on rotation, Soft mallet visual-only rotation
    • Closes GTNH#20397, GTNH#24947
  • #7699 Replaced singletonSlotGroup with separate input/output slot groups in MTEMachineWithFluidScreenBaseGui, mirroring fix from PR #7693. - @RealSilverMoon
    • Fixed: Shift-click contamination between input and output item slots
  • #7696 Modified MTEMegaIndustrialApiary bee generation to return false for invalid bee items, preventing isValid flag from being set to true and item decrement until validation passes. - @Angry3vilbot
    • Fixed: Crash and queen deletion when inserting invalid bee
    • Closes GTNH#26207
  • #7695 Added explicit nanite clamping logic to MTEBECAssembler and updated tooltip to document the maximum nanite capacity. - @RecursivePineapple
    • Added: Nanite clamping tooltip
    • Fixed: Nanite overflow handling with larger hatch
  • #7693 Changed output slot group in MTEBasicMachineBaseGui from singletonSlotGroup to a dedicated output slot group to prevent shift-click items from entering input slots. - @AnsonYeung
    • Fixed: Shift-click output placing items into input slots
    • Closes GTNH#26204
  • #7692 Added validation check to prevent Stocking Input Hatch from being attached to MTEEyeOfHarmony, and added corresponding tooltip. - @AnsonYeung
    • Added: Validation check for input hatch attachment on Eye of Harmony
    • Fixed: Input hatch attachment violation on Eye of Harmony
  • #7691 Moved beam crafter controller recipe from ResearchStationAssemblyLine to AssemblyLine to change the research requirement gate from Research Station to Scanner. - @Nana-Sakura
    • Fixed: Unintended progression gating of dependent machines to UV tier
  • #7687 Removed inaccurate tooltip line from advanced-assembly-line.md in English and Russian language files. - @fehling135
    • Removed: 'Does not overclock beyond 1 tick' text from AAL tooltips
    • Fixed: outdated tooltip information
  • #7685 Added size check in MTEHatchInputBus.java to only compact busses with 2+ slots, preventing array operations on empty inventories. - @RecursivePineapple
    • Fixed: CRIB proxy AIOOBE crash
  • #7684 Added NBT serialization for isOutputLocked flag in MTEHatchNonConsumableBase.java. - @fehling135
    • Fixed: nanite hatch lock state loss
    • Closes GTNH#26187
  • #7683 Added power consumption halt logic to MTEOreDrillingPlantBase.java when idle. - @fehling135
  • #7680 Enhanced GTStructureUtility.java and added GlassTier.java utility to resolve and display the actual glass type in error messages. - @AnsonYeung
    • Added: GlassTier utility class
    • Fixed: incorrect glass type display in messages
  • #7678 Added client disconnect event handlers in GTClient.java and vacuum factory grid classes to properly unload client-side data structures, preventing memory leaks on dedicated server disconnects. - @boubou19
    • Added: client disconnect handlers
    • Fixed: NAC and BEC client world leaks
  • #7677 Added missing localization key for computation_loss icon tooltip in MTEMultiBlockBaseGui.java. - @Ranzuu
    • Added: computation loss tooltip key
    • Fixed: space mining module error text display
    • Closes GTNH#26182
  • #7671 Reverted PR #7204 by removing offhand block replacement logic from BlockMachines.java and ToolVajra.java. - @AnsonYeung
    • Removed: Vajra offhand block replacement
    • Fixed: offhand block replacement regression
  • #7666 Adjusted input range validation in PowerGogglesGuiOverlay.java to accept values beyond Integer.MAX_VALUE. - @Pxx500
    • Fixed: graph scale input range cap
    • Closes GTNH#25702
  • #7656 Set ignoreCollision() flag in RecipeMaps.java and added collision ignore directives to LHC recipes in LargeHadronColliderRecipes.java. - @AnsonYeung
    • Fixed: NAC assembler collision checker false failures
    • Closes GTNH#25586
  • #7655 Added explicit structure check trigger from main structure formation in MTENanochipAssemblyComplex.java instead of relying on delayed onPostTick callbacks. - @AnsonYeung
    • Fixed: NAC recipe start with stale hatches on structure formation
    • Closes GTNH#25592
  • #7654 Modified MTEHatchCraftingInputSlave.java onBlockActivated to return true on client side, preventing default item/block placement behavior. - @AnsonYeung
    • Fixed: Block placement on Crafting Input Proxy right-click
  • #7653 Added explicit TE data packet sync in ItemMachines.java placeBlockAt method to prevent Forge's delayed block update from momentarily showing .name block state before description packets arrive. - @AnsonYeung
    • Fixed: Placement showing invalid .name block visually
    • Closes GTNH#23861
  • #7647 Added config change listener in MTEHatchCondensateDetector.java to trigger BEC hatch updates on config modifications, preventing stale state in MTEBECStorage.java. - @AnsonYeung
    • Fixed: BEC hatch not updating on config change
  • #7644 Corrected rotation calculation in MTESpinmatron.java using ExtendedFacing to properly respect multiblock controller flip and rotation. - @AnsonYeung
    • Fixed: Spinmatron auto-rotation for left and right sides
  • #7642 Separated shared lang keys in MTELapotronicSuperCapacitorGui.java and added distinct keys to en_US.lang for GUI vs scanner display. - @Ranzuu
    • Added: Scanner-specific language keys
    • Fixed: GUI vs scanner localization consistency
  • #7641 Modified GTUtility.java processFormatStacks to drop trailing format codes when popping the stack at line end, preventing invisible codes like §7§7 from appearing after formatted sections. - @Eldrinn-Elantey
    • Fixed: Trailing format codes in markdown tooltips, ChromaticTooltips divider recognition
  • #7639 Added proper fluid retrieval method in MTEMultiBlockBase.java and updated MTEBoardProcessorModule.java to use correct storage input method that doesn't artificially limit ME input to 1L. - @AnsonYeung
    • Fixed: NAC Immersion Device fluid drain rate limitation
    • Closes GTNH#25590
  • #7637 Added null-safety check in MTEPipeLaserMirror.java to prevent NPE when retrieving connections. - @Azusfin
    • Fixed: Laser Vacuum Mirror null side connection crash
  • #7636 Updated casing amount display in MTEBECAssembler.java, MTEBECDiode.java, and MTEBECIONode.java tooltip methods. - @Azusfin
    • Fixed: Inaccurate BEC casing amount tooltips
  • #7626 Removed chat spam logging from MTELINAC.construct() in gtnhlanth, which is now called on the client by BlockRenderer to determine length. - @AnsonYeung
    • Removed: LINAC chat spam messages
    • Fixed: LINAC chat spam on launch
  • #7625 Changed persistent hash calculation in TTRecipeAdder.java from clamped to naive casting to ensure correct hash values. - @Azusfin
    • Fixed: Assembly Line recipe persistent hash
  • #7624 Removed equals and hashCode method overrides from GTRecipe.java to revert to Object's default implementation, which is more efficient and correct since recipes should compare by identity. - @AnsonYeung
    • Removed: GTRecipe equals and hashCode overrides
    • Fixed: potential GTRecipe hash collision
  • #7622 Reordered validation logic in MTEAssemblyLine.java to perform item/fluid matching checks before power checks, improving error reporting. - @Azusfin
    • Fixed: Assembly Line error message accuracy
    • Closes GTNH#26119
  • #7615 Removed incorrect selectedBackground styling from MTEBaseModuleGui.java that was causing unwanted background rendering behavior. - @AnsonYeung
    • Removed: selectedBackground styling
    • Fixed: gorge button appearance
  • #7614 Replaced double/float calculations with BigDecimal in LargeBoilerFuelBackend.java, MTELargeBoilerGui.java, and MTELargeBoilerBase.java to ensure consistency between recipe calculations and UI display. - @Miklebe
    • Added: log calculation bonus for solid fuels
    • Fixed: Large Boiler math imprecision between NEI and reality
  • #7612 Modified ToolboxSlot.java to check if a candidate ItemStack is an electric tool and temporarily charge it by 1 EU before performing tool type comparisons, bypassing the safety check that blocks fully uncharged tools. - @querns
    • Fixed: toolbox rejecting uncharged electric tools
  • #7610 Added null guard check in StoneType.java to prevent NPE when resolving ore prefixes without a valid stone type. - @Algent
    • Fixed: Ore Finder Wand NullPointerException crash
    • Closes GTNH#26122
  • #7605 Updated GTMod load order to use before:computronics instead of after:gregtech to avoid circular dependency with Computronics GT6 compatibility. - @felixfour
    • Fixed: Mod loading dependency conflict with Computronics patch
  • #7604 Added output-side watcher notifiers to ExtremeHeatExchanger, HeatExchanger, AdvHeatExchanger, HighTempGasCooledReactor, and TTMultiblockBase. - @Azusfin
    • Fixed: Missing output watchers on multiple multiblock hatches
  • #7602 Updated MTEMachineWithFluidScreenBaseGui to always use real tank capacity for fluid gauge calculations regardless of void mode state. - @YannickMG
    • Fixed: Fluid gauge showing wrong capacity in void mode
  • #7601 Added PanelSyncManager syncing to MTEHighTempGasCooledReactorGui to network server-side state values (fill level, fuel properties, helium/water consumption) to client. - @Eldrinn-Elantey
    • Fixed: HTGR GUI showing zero for all resource levels, Client-server state desynchronization on HTGR
    • Closes GTNH#25737
  • #7597 Updated MTEMegaIndustrialApiary onRemoval logic to properly output stored queens before removal completes, matching Extreme Industrial Greenhouse behavior. - @Angry3vilbot
    • Fixed: Mega Apiary voiding queens on controller destruction
    • Closes GTNH#26060
  • #7595 Refactored switch pattern matching in GTRecipeBuilder to avoid jvmDowngrader compiler issue. - @Sanduhr32
    • Fixed: jvmDowngrader switch pattern matching bug
  • #7594 Added smart input adders and watcher notifiers to multiple hatch and multiblock classes including ExtremeHeatExchanger, PCBFactory, QuantumForceTransformer, DataInput, Uncertainty, and others. - @Azusfin
    • Fixed: Missing input watchers on special hatches
  • #7592 Added recipe check scheduling in MTERadioHatch when sievert changes in MTEBioVat. - @Azusfin
    • Fixed: Radio hatch not triggering recipe check on sievert change
  • #7588 Changed int type coercion to Math.max in MTETreeFarm and MTETreeFarmLegacy to ensure minimum stack size of 1 instead of rounding down to 0. - @Angry3vilbot
    • Fixed: Forestry sapling fruit stack size rounded to zero
    • Closes GTNH#25772
  • #7585 Added GTCreativeHatchSource class and updated HatchElementBuilder and MTENanoForge to handle null player in hatch autoplace logic. - @AnsonYeung
    • Added: GTCreativeHatchSource utility class
    • Fixed: Nano Forge NEI preview crash on servers, Creative hatch placement with gt_hatch=1 flag
    • Closes GTNH#26074
  • #7584 Added null/0-value edge check in ReplicatorBackend recipe validation to prevent currentParallel from becoming 0 when UUM input is missing or invalid. - @Nana-Sakura
    • Fixed: Replicator with ME input hatch reporting false recipe success, Internal error from zero parallel recipes
  • #7581 Removed overcomplicated tint logic in BaseItemIngotHot that was preventing proper color rendering. - @serenibyss
    • Removed: unnecessary tint override code in BaseItemIngotHot
    • Fixed: GT++ hot ingot tint rendering
  • #7579 Corrected dimension calculation in MTEIndustrialThermalCentrifuge tooltip. - @UltraProdigy
    • Fixed: Large Thermal Refinery tooltip footprint display
    • Closes GTNH#26080
  • #7575 Replaced non-reversible Math.round() rounding logic with Math.ceil((amount + 0.5) / multiplier) - 1 in MTELatex to correctly handle recipe lookups across fluid amount boundaries. - @UltraProdigy
    • Fixed: long to int narrowing issue, recipe lookup boundary edge cases
    • Closes GTNH#26067
  • #7573 Adjusted recipe window height in RecipeMaps for DTPF (Distillation Tower Plasma Fractionation) after adding a recipe status line. - @Eldrinn-Elantey
    • Fixed: recipe window truncation
  • #7572 Modified MTECircuitAssemblyLine to properly display voltage error in assembler mode. - @Azusfin
    • Fixed: misleading error message in CAL assembler mode
  • #7570 Fixed race condition in MTEHatchOutputMEBase where ME output couldn't fulfill requests within 1 tick. Updated MTEHatchOutputBusME and MTEHatchOutputME to allow check mode without a cell present. - @hinyb
    • Fixed: ME output can't accept items in 1 tick, check mode requiring cell
  • #7567 Added @SkipGenerateDescription annotation to GTPPMTECable.java, omitted from prior work in PR#5261. - @Eldrinn-Elantey
    • Fixed: missing annotation causing auto-generated descriptions
  • #7566 Updated outdated lang key references and added 7 missing language entries in en_US.lang. Affected machines: Air Filter, Diesel/Extreme Diesel Engines, Large Turbine, Transcendent Plasma Mixer, and Purification Plant. - @Yoshy2002
    • Added: 7 missing lang entries
    • Fixed: language key references missed in PR#7106
    • Closes GTNH#26048
  • #7565 Corrected base amount constants in BeamlineRecipeLoader for two CeLUAG recipes (24→2400, 36→3600). Reordered methods in MaskList for consistency with argument order. - @DylanTaylor1
    • Fixed: incorrectly scaled CeLUAG recipe costs from PR#7468
    • Migration: Corrected a CeLUAG cost that was only ever wrong in 2.9 daily builds; measured per gem the cost is identical to 2.8.4.
  • #7562 Added item ordering validation to MTECircuitAssemblyLine matching the ordering requirement logic of the Assembly Line. - @Sanduhr32
    • Fixed: Circuit Assembly Line accepting out-of-order items
    • Closes GTNH#25974
  • #7560 Corrected durations.json keys to match the actual ResourceLocation identifiers used by Minecraft for vanilla music records. - @Eldrinn-Elantey
    • Fixed: Vanilla music discs looping instead of playing once, Duration lookup mismatch for vanilla records
  • #7557 Modified MTEPurificationPlant to update last working tick after cycle completion instead of relying on unreliable powerSwitchSyncer. - @Sanduhr32
    • Fixed: Incorrect shutdown timer display on multiblock machines
    • Closes GTNH#25857
  • #7556 Moved tooltip attachment from outer 9x9 wrapper widget to inner 7x7 colored fill widget in CommonWidgets. - @Eldrinn-Elantey
    • Fixed: Color swatch tooltip only appearing on border
  • #7555 Removed unnecessary AssemblyLineUtils.saveRecipe() method that was creating unbounded NBT copies; modified ALRecipeDataPacket to handle serialization without the problematic utility; updated MTEAdvAssLine and hatch input/output classes; added functional test for the fix. - @mitchej123
    • Added: ALRecipeDataPacketTest functional test
    • Removed: AssemblyLineUtils.saveRecipe() method causing NBT explosion
    • Fixed: Out-of-memory crash from Assembly Line recipe NBT data explosion, Infinite NBT growth when saving/loading wireless recipes
  • #7554 Modified MilestonePanel to fix progress bar visual updates; enhanced SyncValue and SyncValues to properly sync client-to-server UI changes for Godforge GUI. - @serenibyss
    • Fixed: Godforge milestone progression display, Godforge UI client-server synchronization
    • Closes GTNH#24080
  • #7548 Added null check in MTEExtremeHeatExchanger to prevent repeated access attempts to the exploded input hatch. - @Angry3vilbot
    • Fixed: Extreme Heat Exchanger null pointer exception spam when input hatch explodes, Controller repeatedly trying to explode already-destroyed hatch
    • Closes GTNH#25964
  • #7547 Modified FuelSpecialValueFormatter.java to fix formatting logic. - @Sanduhr32
    • Fixed: Fuel value formatter display bug
  • #7543 Modified CoverEUMeter to sync max energy value from server; updated CoverEUMeterGui to use the synced value instead of client-side calculation. - @daxsc
    • Fixed: Energy detector cover on Fusion Reactors not accepting threshold input
    • Closes GTNH#26020
  • #7542 Added matchesHatch() hook to IHatchElement to allow custom hatch matching beyond class-based isInstance checks; overridden in both Cryo and Pyrotheum Hatch implementations; updated GTStructureUtility to use the new matching logic. - @Yoshy2002
    • Added: matchesHatch() hook to IHatchElement interface
    • Fixed: Structure preview corruption for Volcanus and Cryo machines, Hatch confusion in holographic projector
  • #7541 Added null check in MTENeutronActivator before calling isActive() and onPostTick() methods. - @MLGfruitshoot
    • Fixed: Neutron Activator crash due to null pointer exception
    • Closes GTNH#25896
  • #7540 Moved Pyrotheum Heating Hatch to HatchElement enum alongside Cryo Hatch; updated MTEMultiBlockBase to recognize both hatches in holo projector validation; updated recipe reference in MTEAdvEBF. - @Yoshy2002
    • Fixed: Holo projector false errors when building Cryogenic Freezer, Cryo hatch recognition in structure preview
    • Closes GTNH#26017
  • #7536 Enhanced FuelSpecialValueFormatter to account for cell capacity in Acid Generator recipe calculations. - @Sanduhr32
    • Fixed: Acid Generator Redstone EU value mismatch
    • Closes GTNH#25861
  • #7535 Removed redundant recipe entry from BenderRecipes. - @mllfjn
    • Removed: redundant Dense Tairitsu Plate recipe
    • Closes GTNH#25607
  • #7532 Removed buggy filter override in MTEHatchSteamBusOutput that was preventing proper filtering. - @mllfjn
    • Removed: broken filter override
    • Fixed: Steam output bus filtering
    • Closes GTNH#25548
  • #7531 Updated IGregTechDeviceInformation interface and CheckRecipeResultRegistry; improved beamline hatch and target chamber scanner info display; fixed array type conversion bug. - @Sanduhr32
    • Added: beamline scanner info clarity
    • Fixed: toComponent ArrayStoreException, beamline scanner info
    • Closes GTNH#25910
  • #7530 Corrected tooltip method calls in MTEManualTrafo and MTELargerTurbineBaseLegacy. - @UltraProdigy
  • #7529 Corrected cell capacity awareness in DustLoader recipe generation for hot ingot vacuum freezer recipes. - @mllfjn
    • Fixed: BartWorks hot ingot vacuum freezer recipe amperage
    • Closes GTNH#25784
  • #7527 Fixed chunkRadiusButton configuration in MTEOreDrillingPlantBaseGui. - @mllfjn
    • Fixed: Ore Drilling Plant chunk radius button
    • Closes GTNH#25771
  • #7524 Fixed hatch leak in MTEHatchCokeOven and MTECokeOven by correcting hatch registration and containment logic. - @RealSilverMoon
  • #7521 Exposed custom info methods in CoverMetricsTransmitter and ItemSensorCard that were broken in PR #5833. - @Yoshy2002
    • Fixed: control panel custom info display
  • #7517 Migrated lang keys for recipe completion display in MTEMultiBlockBase and MTEPCBFactory that were missed in PR #7106. - @Yoshy2002
    • Fixed: scanner recipe count display, multiblock recipe finished display
    • Closes GTNH#25799
  • #7515 Corrected lang key spelling in GTCLSCompat.java. - @Ranzuu
  • #7512 Removed output hatch from structure preview configuration in MTEPreciseAssembler. - @Ableytner
    • Removed: output hatch from preview
  • #7509 Modified MTEHatchInputME to permit 0L extraction requests instead of failing them. - @AnsonYeung
    • Fixed: Spinmatron unable to accept fluids through Stocking Input Hatch
    • Closes GTNH#25972
  • #7504 Added GUI open check in SpeedBoostBehavior and refactored JetpackBehavior to check for open GUIs before processing flight input. - @Spaghetti-OberNub
    • Removed: GuiHelper class
    • Fixed: armor flight activating in fullscreen UIs
    • Closes GTNH#26252
  • #7499 Added startupCheck handling to MTEBlackHoleCompressor and MTEBlackHoleUtility to prevent state changes during initialization. - @AnsonYeung
    • Fixed: BHC/utility hatch state changes on restart
  • #7498 Added schematic recipe fallback to MTEIndustrialPackager to match single-block Packager behavior while preserving registered recipe priority and parallel processing. - @DreamYao520
    • Added: schematic recipe fallback for Amazon Packager
    • Fixed: Amazon Packager unable to process schematic recipes
    • Closes GTNH#25578
  • #7497 Removed deprecated MetaTileEntity IDs from ruin machine pool configurations in bartworks Configuration.java. - @DreamYao520
    • Removed: deprecated Fluid Canner IDs, deprecated Plasma Arc Furnace IDs
    • Fixed: Ross 128 b ruins generating deprecated machines
    • Closes GTNH#25697
  • #7495 Removed cover permission checks from getTankInfo() in BaseMetaTileEntity; fluid transfer permission is already enforced in fill/drain methods, so the gate was unnecessary. - @Eldrinn-Elantey
    • Fixed: fluid pipe disconnecting when cover blocks fluid
  • #7492 Added casing count validation to MTEBECMultiblockBase to enforce minimum casing requirements. - @Azusfin
    • Fixed: BEC unable to validate casing count
  • #7491 Added watchers to stocking input fluid hatches in MTEMegaOilCrackerLegacy, MTEMegaOilCracker, and MTEOilCracker to trigger recipe checks on fluid input changes. - @Yoshy2002
    • Fixed: cracker multis not detecting fluid inputs from ME
  • #7488 Added watcher to data stick hatch in MTEAdvAssLine; fixed wireless data hatch to trigger recipe checks on input changes in MTEHatchWirelessDataItemsInput. - @Azusfin
    • Fixed: AAL not auto-detecting data sticks, wireless data hatch not triggering checks
  • #7487 Corrected BioDataEnum entry for plasmid cells to display accurate recipe information in NEI. - @UltraProdigy
    • Fixed: NEI showing wrong BioLab plasmid recipes
  • #7486 Added watcher to input fluid hatch in MTECircuitAssemblyLine to trigger event-based recipe checks on fluid input changes. - @Azusfin
    • Fixed: CAL not auto-detecting fluid inputs
    • Closes GTNH#25843
  • #7485 Moved Cerium and Samarium cauldron output remapping registration in RecipeLoader from load-complete to an earlier stage to sync with NEI recipe generation timing in GTMod. - @DreamYao520
    • Fixed: NEI cauldron recipe display mismatch for Cerium and Samarium
    • Closes GTNH#25927
  • #7484 Modified BaseItemDustUnique to respect per-material override keys for dust naming. - @Eldrinn-Elantey
    • Fixed: per-material oreprefix overrides ignored for unique dusts
  • #7479 Modified MTELatex to lazy-load singularity item reference and deduplicate singularity validation logic to prevent NPE when the item hasn't been loaded yet. - @koolkrafter5
    • Fixed: LATEX machine NPE on load
  • #7470 Changed MTEWirelessCharger to pass actual mTier instead of Integer.MAX_VALUE to manager.charge(), respecting IC2 charging tier checks. - @zaru-noodles
    • Fixed: Wireless Charger bypassing tier requirements
    • Closes GTNH#22101
  • #7469 Updated GTRecipeBuilder, GTRecipeConstants, and TTRecipeAdder to use 48-bit computation values instead of short; fixed ResearchStationFrontend and TecTechRecipeMaps to use correct machine tier instead of assline voltage. - @Sanduhr32
    • Fixed: Research Station using wrong voltage tier, computation value overflow limitation
    • Closes GTNH#25810
  • #7467 Changed priority input validation in MTEHatchOutputBusMEGui and MTEHatchOutputMEGui to permit negative values. - @hinyb
    • Fixed: ME output hatches now accept negative priority values
    • Closes GTNH#25913
  • #7466 Added missing watcher to beam input in MTEBeamMultiBase to ensure recipe checks are triggered on input changes. - @Azusfin
    • Fixed: LHC turns off after server restart
    • Closes GTNH#25912
  • #7463 Updated HeatingCoilSpecialValueFormatter to wrap or abbreviate heat capacity text, and added localization entries for proper display. - @Eldrinn-Elantey
    • Fixed: NEI heat capacity text overflow
    • Closes GTNH#25905
  • #7460 Modified TTRenderGTProgressBar width parameter for improved layout consistency. - @slprime
  • #7458 Added null-checks for team owner in GTPowerfailTracker.removePowerfailEvents() and removed problematic GTPacketClearPowerfail packet handling. - @AnsonYeung
    • Removed: GTPacketClearPowerfail packet implementation
    • Fixed: NullPointerException in powerfail tracker when owner is null
  • #7455 Increased BEC Storage max hatch amount from previous value to 20 and adjusted minimum casing count to 324 to support the expanded hatch capacity. - @Azusfin
    • Fixed: BEC Containment Field disassembling on server restart, Insufficient hatch slots for condensate detection
    • Migration: BEC Storage max hatches increased to 20; check existing builds to ensure they remain within limits or redesign to use up to 19 condensate detector hatches.
    • Closes GTNH#25884
  • #7449 Replaced server-side StatCollector.translateToLocal() calls with client-side ChatComponentTranslation in multiple machines. Fixed MTEIntegratedOreFactory to pass translation keys instead of pre-translated strings. Added missing localization keys for MTEIndustrialArcFurnace and MTEEyeOfHarmony. - @Eldrinn-Elantey
    • Added: Localization keys for Industrial Arc Furnace modes, Localization keys for Eye of Harmony animation toggle
    • Fixed: Chat messages locked to server language on dedicated servers, MTEIntegratedOreFactory incorrect translation key passing
  • #7444 Added proper key cleanup in AECacheCounter to handle machines with random/variable outputs, not just fixed outputs. - @hinyb
    • Fixed: Memory leak in ME output system
  • #7442 Updated GTPPMultiBlockBase and MTENuclearReactor to accept 4A tier dynamo hatches and removed acceptance of deprecated buffered dynamo hatch validation. - @Sanduhr32
    • Fixed: LFTR unable to assemble with current dynamo hatch tiers, F-1A Rocket Engine assembly failure with 4A IV Dynamo hatch
    • Closes GTNH#25464, GTNH#25876
  • #7441 Updated language file entries for Sugar Coke, Cactus Coke, Sugar Charcoal, and Cactus Charcoal block names (including compressed variants). - @Angry3vilbot
    • Fixed: Missing 'Block of' prefix in item names
    • Closes GTNH#21800
  • #7439 Replaced jvmdg's Pair with fastutils Pair implementation in filter GUI classes (MTEFilterGui, buffer and special filter base GUIs). - @tiffit
    • Fixed: NoClassDefFoundError from missing jvmdg Pair
  • #7437 Synchronized watcher lists between parent MTEHatch and child classes, and temporarily enable ticking in Stocking Bus during GUI slot updates to allow inventory change detection. - @Azusfin
    • Fixed: Stocking input bus manual slot not triggering recipe check, CRIB inventory slot update recipe check, Parent/child watcher notification issue
    • Closes GTNH#25872
  • #7436 Added null-checks in IMetaTileEntity, CommonBaseMetaTileEntity, and related classes to prevent crashes when metaTileEntity is null after a full resync on invalid tile entities. - @AnsonYeung
    • Fixed: Crash from packets received on unloaded tile entities
  • #7432 Modified MTELatex recipe matching to divide found fluid amounts by LATEX multiplier, adjusting fluid quantities to match recipe expectations before validation. - @koolkrafter5
  • #7431 Modified ProcessingWire to standardize all LATEX circuit recipes to c24 instead of mixed c1 and c24. Removed obsolete comments about recipes to be removed. - @koolkrafter5
    • Removed: recipe obsolescence comments
    • Fixed: circuit recipe consistency
  • #7429 Added exponential speed penalty calculation in MTEBECIONode for mismatched nanite tiers. Changed IO nodes to pull nanite tier from assembler instead of push model. Added newline to IO info and WAILA points-per-second display. - @RecursivePineapple
    • Added: speed penalty for nanite tier mismatch, WAILA points/second display
    • Removed: assembler nanite push to nodes
    • Fixed: IO node nanite initialization on world load
    • Migration: Providing nanites above the recipe tier now incurs exponential speed penalties; use matching nanite tiers or lower for optimal BEC performance.
  • #7427 Modified MTEBioVat and PosteaTransformers to strip extra NBT tags from lab parts, keeping only Name and cloning recipe data during item creation. - @Sanduhr32
    • Fixed: lab part NBT corruption
  • #7418 Modified MTEHatchFluidGenerator to call notifyAllOnline() after modifying inventory rather than before, ensuring multiblock structure is checked with updated state. - @ReignOfFROZE
    • Fixed: air intake hatch multiblock notification
  • #7415 Added missing filter setter to MTEHatchVoidBus aligned with the same fix applied in PR #7387. - @toenailsin
    • Fixed: void bus filter configuration
  • #7414 Added inventory stack limit constraint to MTEHatchPatternProvider and MTEHatchCraftingInputME getInventoryStackLimit() methods. - @hinyb
  • #7411 Added config change listeners to MTEHatchInputBusME and MTEHatchInputME that trigger recipe validation without requiring a block update. - @AnsonYeung
    • Fixed: recipe validation on config change
  • #7410 Updated Particle enum constants: changed superscript character from \u207B to \u207A and corrected boson classification in comment. - @xicoa
    • Fixed: W boson charge notation, boson classification comment
  • #7407 Modified MTEIndustrialArcFurnace to check item and fluid output availability during standby before processing, returning an output-full error if needed. - @DreamYao520
    • Fixed: Arc Furnace infinite start-stop cycle with unavailable outputs
    • Closes GTNH#25816
  • #7406 Updated MTEFluidPipe and MTEItemPipe to use translatable chat components and removed duplicate message logic. Added English and Russian translations. - @Eldrinn-Elantey
    • Fixed: untranslated and duplicated pipe swap messages
  • #7403 Corrected remainingAmount subtraction in FluidEjectionHelper to properly exit the fair scheduling loop. - @Azusfin
    • Fixed: infinite loop in fluid ejection
  • #7402 Added save/load serialization of channel data to MTEHatchSplitterRedstone. - @Quaerere-Git
    • Fixed: NAC redstone hatch channel reset on reload
    • Closes GTNH#24657
  • #7401 Updated fluid name from 'Bio Ethanol' to 'Ethanol' in LoaderGTBlockFluid and lang files. - @iouter
    • Fixed: mismatched ethanol naming with Forestry
  • #7399 Replaced direct air block references with proper block state checks in MTETreeFarm structure. - @koolkrafter5
    • Fixed: air block references in Tree Farm structure
  • #7398 Removed macerator recipe right-click handling from GTNEIMacerationStackConversion. - @koolkrafter5
    • Removed: macerator recipe right-click handler
  • #7397 Removed progressBar, TransferRect, and slot spreading overrides from LanthanidesRecipeMaps, and corrected Source Chamber item output count from 4 to 1. Deleted TargetChamberFrontend overrides. - @Ranzuu
    • Removed: TargetChamberFrontend.java overrides
    • Fixed: Target Chamber and Source Chamber NEI page layout
    • Closes GTNH#25012
  • #7396 Corrected width/height parameter order in MTEIndustrialCompressor tooltip. - @NotKaizul
    • Fixed: Large Electric Compressor tooltip dimensions
    • Closes GTNH#25790
  • #7395 Modified BlockSheetMetal to call updateBlock on neighboring machines, allowing multiblock structures to update when composition changes. - @FourIsTheNumber
    • Fixed: machines not checking structure when sheetmetal changes
    • Closes GTNH#25789
  • #7393 Reverted inappropriate temperature initialization behavior from #4686 and added realistic melting points for organic chemicals and exotic fluids in MaterialBuilder and Materials. - @Nana-Sakura
    • Fixed: 0K temperature for molten fluids
    • Closes GTNH#24362
  • #7392 Added configureWatchers calls to MTEHatchInputBusME and MTEHatchInputME update sources that were missing them after #7185. - @ReignOfFROZE
    • Fixed: ME buses/hatches not updating on network content changes
  • #7391 Made BWMetaGeneratedOres post OreInteractEvent like GTBlockOre does. This event is required by the Visual Prospecting mod to trigger vein discovery. - @Algent
    • Fixed: Visual Prospecting not working on Bartworks ore
    • Closes GTNH#25778
  • #7390 Modified MTEIndustrialApiary temperature calculation to include height dependency in the logic. - @vnesterovskyi
    • Fixed: industrial apiary temperature dependency on height
  • #7389 Fixed FluidEjectionHelper fair scheduling loop that incorrectly dumped the same fluid to multiple slots when remainingAmount exceeded Integer.MAX_VALUE. - @hinyb
    • Fixed: fair fluid ejection with large amounts
  • #7387 Added isItemValidForPhantomSlot override to MTERecipeFilter and MTETypeFilter. The method was required after #7116 changed the slot validation logic. - @toenailsin
    • Fixed: phantom slot in recipe and type filters
  • #7386 Re-added six disabled button texture PNG files in src/main/resources/assets/gregtech/textures/gui/overlay_button/ that were deleted but still referenced by MUI1 in GTUITextures. - @mllfjn
    • Added: batch_mode_off_disabled.png, batch_mode_on_disabled.png, input_separation_off_disabled.png, input_separation_on_disabled.png, recipe_locked_disabled.png, recipe_unlocked_disabled.png
    • Fixed: AAL GUI buttons missing texture
    • Closes GTNH#25701
  • #7382 Disabled fluorite auto-gen flag in RecipeGenOre. - @MLGfruitshoot
  • #7381 Fixed typo in network lifecycle methods; added network to network set on join; moved route invalidation to tracker; added divide-by-zero prevention; improved network state updates; added factory network and BEC routing tests. - @RecursivePineapple
    • Added: unit tests for factory networks and BEC routing, network ID to BEC scanner info
    • Removed: unused Dijkstra code
    • Fixed: BEC condensate injection bug, network lifecycle method typo
  • #7378 Added side check in DroneConnection to prevent off-thread tile entity lookups from the client thread. - @RealSilverMoon
    • Fixed: client-side log spam from getTileEntity
  • #7377 Removed incorrect theme initialization from MTEBoiler base class; added correct theme setup to MTEBoilerBronze. - @TheYoingLad
    • Added: theme setup in MTEBoilerBronze
    • Removed: incorrect theme code from MTEBoiler
    • Fixed: boiler GUI theme
  • #7372 Modified MTEExoticModule to iterate through all available oredicts for dust-to-plasma conversion, ensuring it matches valid plasma types rather than failing on duplicate oredict entries. - @Azusfin
    • Fixed: Exoticizer plasma detection for multi-oredict items
    • Closes GTNH#25904
  • #7368 Added block icon definition to BlockDarkWorldSludgeFluid for proper rendering in item/fluid preview systems. - @zaru-noodles
    • Added: block icon for sludge
    • Fixed: mixer crash on chum recipe
    • Closes GTNH#25688
  • #7367 Modified BECRecipes to use single hexanite gear + small gear instead of double hexanite gear in time dilation recipes. - @Ruling-0
    • Fixed: Tipler/Galli recipe conflict
  • #7366 Added coil reset logic to MTEMegaOilCrackerLegacy, MTEMegaOilCracker, and MTEDigester structure validation. - @Yoshy2002
    • Fixed: coil reset on structure check
  • #7362 Updated TTMultiblockBase to use the same utility function for NBT item serialization as MTEMultiblockBase, ensuring items are correctly persisted regardless of stack size. - @Azusfin
    • Fixed: BEC item voiding on restart
  • #7355 MTELargeNaquadahReactor structure array adjusted to include missing symmetrical block. - @Sanduhr32
    • Fixed: missing block in LNR symmetry
  • #7350 TTRenderGTProgressBar clamps progress ratio and MTEPump caps mProgresstime increment to prevent overflow. - @zaru-noodles
    • Fixed: client hang with full pump buffer
    • Closes GTNH#25641
  • #7348 MTEMultiBlockBase WAILA data provider now ensures translation keys are decoded before transmission on dedicated servers. - @Eldrinn-Elantey
    • Fixed: untranslated item and fluid names in WAILA on servers
  • #7345 MTEHatchInputME fluid supply logic adjusted for server startup conditions. - @lc-1337
    • Fixed: possible fluid stocking failure on world startup
  • #7340 AntimatterForgeGui formatting adjusted to remove unwanted scientific notation in number displays. - @1328116700
    • Fixed: scientific notation display in SSASS/SLAM GUIs
    • Closes GTNH#25589
  • #7337 RecipeMaps now includes a clickable progress bar handler for cutting machines. - @TotallyNotOndre
    • Added: fake NEI handler for progress bar clicks
    • Fixed: progress bar not responding to clicks in cutting machines
  • #7336 Added contentsChanged flag updates in MTEBECStorage shutdown procedures to notify hatches of storage state changes. - @RecursivePineapple
    • Fixed: hatches not updating when BEC storage shuts down
  • #7335 CoverMetricsTransmitter now decodes the getInfoData format before storing, matching CoverSensorCard behavior introduced in PR #7111. - @Eldrinn-Elantey
    • Fixed: raw translation keys shown in Advanced Sensor Cards with Metrics Transmitter
  • #7333 Modified GTStructureUtility to cap glass tier to maximum available glass based on stack size instead of always using borosilicate glass for large stacks. - @AnsonYeung
    • Fixed: projector defaulting to borosilicate glass for large stack sizes
    • Migration: Only affects which glass a projector or the survival autobuilder picks while placing a new multiblock when no glass channel is set. A large held stack now means the highest glass tier. Explicit glass channel settings behave as before.
  • #7332 Modified MTEVoidMinerBase to provide detailed failure reasons and updated language strings with specific shutdown messages for intended void mining failures. - @Algent
    • Added: Detailed Void Miner failure messages
    • Fixed: Asteroid dimension mining failure clarity
    • Closes GTNH#25647
  • #7329 Added validation in CondensateType requiring multiples of half-unit amounts; updated recipes in BECMetaMaterialRecipes and BECRecipes to use varied materials (Netherite, Proto-Halkonite, etc.) by tier; improved nanite length exception reporting in TecTechRecipeMaps. - @Ruling-0
    • Added: Condensate unit validation, Tier-specific recipe component diversity
    • Fixed: BEC recipe conflicts, Excess condensate generation
  • #7326 Fixed EnumCycleSettingRow GUI sync; updated MTEBECIONode to accept multi-amp hatches and respect min-parallel constraints; corrected BEC Assembler and IO Node tooltip text. - @AnsonYeung
    • Removed: BEC Assembler tooltip section
    • Fixed: IO Node crash on multi-amp, Outdated BEC documentation
  • #7324 Updated ForestryMC dependency version and modified MechArmorBase to use the new interface signature from ForestryMC PR #125. - @FourIsTheNumber
    • Fixed: Build-breaking interface incompatibility
  • #7322 Modified EnumCycleSettingRow to fix GUI parameter handling on servers; added copyToClient() methods to all parameter classes (IntegerParameter, LongParameter, DoubleParameter, BooleanParameter, EnumParameter, StringParameter, FluidParameter, CompositeParameter) and refactored SettingsPanelParameterCompat to delegate to this new interface. - @Corexis
    • Added: copyToClient() method on Parameter classes
    • Fixed: Server-side parameter GUI crash, Space Elevator Pump GUI interaction
    • Closes GTNH#25621
  • #7310 Restructured IOutputBusTransaction and IOutputHatchTransaction into new IOutputTransaction interface; fixed void protection logic in MTEHatchOutputBusME and MTEHatchOutputME; corrected parallel capacity calculations in FluidEjectionHelper and ItemEjectionHelper; reverted lastInputTick to prevent cascading output loops. - @hinyb
    • Added: IOutputTransaction interface
    • Removed: lastInputTick optimization
    • Fixed: Void protection bypass, Infinite output loops, Dynamic capacity parallel calculation
    • Closes GTNH#25740
  • #7308 Modified MTEBeamCrafter to set EU/t discount to 0% during calculation, then apply the correct EU/t at recipe end to fix 1-tick recipe power accounting. - @AnsonYeung
    • Fixed: 1-tick recipe power consumption
  • #7305 Modified MaterialGenerator and RecipesGregTech to add missing byproducts and recipes. Removed RecipeGenFluorite custom class and updated RecipeGenOre to handle fluorite with standard processing. - @MLGfruitshoot
    • Added: byproducts for GT++ raw ore and ore blocks, missing GT++ ore chain recipes
    • Removed: RecipeGenFluorite custom recipe class
    • Fixed: GT++ ore processing
  • #7304 Added Client-to-Server sync flag for NAC delete button in MTEHatchVacuumConveyorGui. - @AnsonYeung
    • Fixed: NAC delete button sync issue
  • #7303 Refactored MTEBeamCrafter to use ProcessingLogic instead of custom logic, enabling CRIB support and future void protection. - @AnsonYeung
    • Added: CRIB support for Beam Crafter
  • #7302 Modified MTEIndustrialArcFurnace arc furnace logic. - @Pxx500
    • Fixed: arc furnace
  • #7301 Added max tier placement logic back to GlassTier with explanatory comment. - @Ruling-0
    • Fixed: glass tier max placement
  • #7297 Fixed MTEYOTTAHatch.canAccept() to return correct result for locked fluids in Sticky Mode, preventing AE network fluid routing from breaking. - @ChromicRedBrick
    • Fixed: YOT hatch blocking external AE fluid insertion in Sticky Mode
    • Closes GTNH#21268
  • #7296 Updated OVERLAY_WIRELESS_ACTIVITYDETECTOR.png texture. - @KleinGrrmpf
    • Fixed: Wireless Activity Detector overlay missing pixels
  • #7288 Modified RecipeMapFrontend and BECAssemblyFrontend to display correct nanite tier with teal color and add line break for Max Nanite Tier. Updated lang keys in en_US and ru_RU. - @Ruling-0
    • Fixed: BEC tooltip nanite tier display, BEC tooltip overflow
  • #7287 Added new MacerationStackConversionRecipe class and GTNEIMacerationStackConversion NEI handler. Modified MTEIndustrialMacerator conversion logic to preserve upgrade chip NBT. Registered via GTProxy. - @koolkrafter5
    • Added: MacerationStackConversionRecipe class, GTNEIMacerationStackConversion NEI handler, lang keys for stack conversion tooltip
    • Removed: old inline conversion recipes from MTERecipeLoader
    • Fixed: maceration stack upgrade chip loss on conversion
  • #7283 Added text decoding in MTEHighTempGasCooledReactorGui before displaying reactor info text in the terminal widget. - @Eldrinn-Elantey
    • Fixed: HTGR GUI showing raw translation keys instead of decoded text
  • #7274 Removed special case in drain() method that prevented ME hatch fluid consumption. Multiblocks now use drain(amount=0) to peek at hatch contents without corrupting recipe state. - @AnsonYeung
    • Removed: ME hatch special case in MTEMultiBlockBase.drain()
    • Fixed: Endothermic Fridge not consuming fluids, Potential ME hatch content consumption failures
    • Closes GTNH#25363
  • #7273 Added NBT serialization for magnetic stabilization fluid and passive power consumption in AntimatterForge to persist state across server restarts. - @Sprite104
    • Fixed: SSASS power drain reset on server restart, Antimatter Forge passive power consumption calculation error after restart
    • Closes GTNH#20591, GTNH#23534
  • #7272 Corrected arithmetic overflow handling in MTEHatchCraftingInputME pattern insertion logic. - @lc-1337
    • Fixed: Math error when inserting pattern beyond int max
  • #7271 Removed reference to Explosion Hazard Blocks from MTEImplosionCompressor tooltip. - @Yoshy2002
    • Removed: Explosion Hazard Block mention from tooltip
    • Fixed: Misleading Implosion Compressor structure tooltip
    • Closes GTNH#25410
  • #7268 Improved stone type resolution in StoneType and OreManager to correctly handle dimensions with multiple stone variants. - @Algent
    • Fixed: Ores not generating in Seth dimension
    • Closes GTNH#24680
  • #7267 Updated AE2Compat to exclude WoodGlass and Quantum Anomaly from AE2's blocking list. - @boubou19
    • Fixed: WoodGlass and Quantum Anomaly blocked by AE2 compatibility
  • #7266 Added MENetworkCellArrayUpdate event dispatch in MTEHatchOutputMEBase on state change to ensure network notification. - @hinyb
    • Fixed: ME Output Bus in Cache Mode invisible to network after server restart
    • Closes GTNH#25516
  • #7262 Changed SO Fuel Cell (MK1 and MK2) structure definition back to use reinforced glass. - @LazyFlesh
    • Fixed: Unintended structure material change
    • Migration: The material change this reverts existed only between two 2.9 daily builds one day apart. A 2.8.4 SO Fuel Cell was built from IC2 Reinforced Glass, which Postea converts to GT Reinforced Glass on world load, so the machine keeps validating.
  • #7259 Fixed numeric constant in MTELargeNaquadahReactor tooltip text. - @JustACasualDay
    • Fixed: Incorrect block amount in structure tooltip
    • Closes GTNH#25498
  • #7256 Fixed null pointer and state management in BaseMetaTileEntity and MTEMultiBlockBase when clearing power failure state during block destruction. - @AnsonYeung
    • Fixed: Server crash when destroying multiblock controller, Crash when breaking vending machine block
    • Closes GTNH#25490, GTNH#25501
  • #7255 Added ShutdownReason clear logic in BaseMetaTileEntity.enableWorking() to reset shutdown state when a machine resumes from idle. - @mllfjn
    • Fixed: Machine controller cover shutdown information not updating
    • Closes GTNH#25368
  • #7254 Updated MTEMultiBlockBaseGui to show CurrentRecipeInfoString even when recipe results are empty. Improved Predicates condition logic for result checking. - @mllfjn
    • Fixed: Missing duration display when recipe has no results
    • Closes GTNH#25374
  • #7246 Reordered fluidOutputSync after maxProgressTime in MTEMultiBlockBaseGui to ensure proper synchronization timing. - @mllfjn
    • Fixed: Fluid amounts displaying as infinity
    • Closes GTNH#25021
  • #7243 Updated tooltip strings in en_US.lang for Foundry machine to match recent balance changes. - @chrombread
    • Fixed: Outdated foundry tooltips
  • #7242 Updated EIGSeedBucket to filter out outputs with oredict tag 'listAllSeed' from drop table. - @JesseSprinkle
    • Fixed: Extreme Industrial Greenhouse outputting seeds
  • #7240 Updated MTENanoForge structure validation to skip maintenance hatch requirement for T4 tier while keeping it for lower tiers. Reduced minimum casing count to 2780. - @DylanTaylor1
    • Fixed: T4 Nanoforge incorrectly requiring maintenance hatch
  • #7238 Updated MTEPurificationUnitFlocculation and MTEMegaIndustrialApiary water placement logic (minimal diff suggests water block state or placement timing fix). - @Yoshy2002
    • Fixed: Water placement in purification and apiary multiblocks
  • #7233 Updated OreMixes height range values for Toxic Everglades ores to align with surface level at approximately Y60 instead of values exceeding that. - @Algent
    • Fixed: Ore vein placement density in Toxic Everglades
  • #7232 Removed pollution configuration from PollutionConfig and disabled pollution in MTEThermalBoilerLegacy. Completes earlier PRs (#6855, #7197) that removed muffler hatch requirement and tooltip references. - @DylanTaylor1
    • Removed: Pollution configuration entries for Thermal Boiler, Pollution output from MTEThermalBoilerLegacy
    • Fixed: Thermal Boiler still requiring pollution handling
    • Closes GTNH#25572
  • #7231 Removed identity comparison (==) in BaseMetaTileEntity and MTEMultiBlockBase that failed when shutdown reasons were loaded from NBT. Delegate to existing powerfail tracker checks which handle missing events gracefully. - @AnsonYeung
    • Removed: Unnecessary singleton check for powerfail event
    • Fixed: Powerfail events not clearing properly after NBT load
  • #7229 Fixed ArcFurnaceContext startup power accounting. Added 'machine tier' optional argument to ResultInsufficientStartupPower for better error reporting. Updated MTEIndustrialArcFurnace with corrected startup logic. Enhanced electrode tooltip generation in ArcFurnaceElectrode loader. - @Pxx500
    • Added: Machine tier parameter to power failure reporting, Startup amperage display in electrode tooltips, Hatch count estimation in error messages
    • Fixed: Silent Arc Furnace startup failures, Power calculation not accounting for amps-per-parallel
  • #7224 Updated RecipeMaps.java to allow 6 item outputs for chemical bath recipes. - @Auynonymous
    • Fixed: chemical bath visual display (#25456)
    • Closes GTNH#25456
  • #7223 Added small gear recipes to RecipeGenExtruder.java and RecipeGenFluids.java using standard timing and EU patterns. - @Auynonymous
    • Added: small gear fluid solidifier recipes, small gear extruder recipes
    • Fixed: missing GT++ small gear recipes
  • #7221 Changed GL_ALPHA to GL_ALPHA_TEST in GTPowerfailRenderer.java. - @AnsonYeung
    • Fixed: GL error log spam during power fail rendering
  • #7216 Corrected additional multiblock hint text and added hatch tooltips in MTEBioVat, MTECircuitAssemblyLine, MTEVoidMiners, and multiple other multiblock classes. - @Yoshy2002
    • Added: hatch tooltips
    • Fixed: multiblock hint text
  • #7215 Cached resolved CachedOreVein (layer + placement seed) in GTWorldgenerator.java and WorldgenGTOreLayer.java to ensure all chunks in an ore seed use the same placement parameters, preventing geometry drift. - @Kogepan229
    • Fixed: ore vein geometry inconsistency (#24689, #24690)
    • Migration: Forward-only worldgen fix. A vein that was half generated in 2.8.4 may not line up perfectly with the half generated after the update, which is cosmetic.
    • Closes GTNH#24689, GTNH#24690
  • #7207 Added suffix system support to frameGt OrePrefixes, updated BlockFrameBox.java, and added missing language entries for condensates. - @Ruling-0
    • Added: language entries for condensates
    • Fixed: frame box and condensate display names
  • #7206 Corrected input blocking logic in GTItemSink.java. - @AnsonYeung
    • Fixed: input blocking in conveyor covers (#24642)
    • Closes GTNH#24642
  • #7205 Corrected hint text in multiblock machine classes (MTECircuitAssemblyLine, MTEFuelRefineFactoryLegacy, MTESupercriticalFluidTurbineLegacy, and others). - @Yoshy2002
    • Fixed: multiblock hint text
  • #7204 Rewrote ToolVajra.java logic to redirect right-click to left-click actions, unifying permission checks. Added BlockMachines.java support to prevent temporary block reappearance after breaking. - @AnsonYeung
    • Fixed: Vajra hotswap broken (#25198), Vajra breaking GT blocks without GUI
    • Closes GTNH#25198
  • #7199 Rewrote slot mapping logic in MTEElectricAutoWorkbench.java for Circle mode to use positional grid instead of compact item listing, fixed recipe preview regeneration, and corrected benchContent() accumulator indexing. - @DerekChan65535
    • Fixed: Auto Workbench Circle mode shaped recipe matching, Auto Workbench recipe preview staleness, Auto Workbench material mis-counting
  • #7195 Fixed formatNumber() call in EyeOfHarmonyFrontend.java to respect numerical notation setting instead of always defaulting to exponential. - @DylanTaylor1
    • Fixed: Eye of Harmony numerical notation display
  • #7194 Added GTRecipe.rollOutput() method to handle random output chance rolls and applied it in MTEBasicMachineBronze and related steam machines. - @tiffit
    • Added: rollOutput() method in GTRecipe for output chance handling
    • Fixed: Steam Extractor 100% output chance on cropsNH recipe
    • Closes GTNH#25402
  • #7192 Added active augment validation in ArmorState.java to prevent stuck behaviors when augments are removed mid-session. - @FourIsTheNumber
    • Fixed: stuck mechanical armor behaviors after augment removal
  • #7191 Fixed augment state check in MechArmorBase.java to verify active status rather than presence when handling hotkey toggles. - @FourIsTheNumber
    • Fixed: mechanical armor goggles hotkey toggle
  • #7190 Changed hatch texture references in MTEDigester.java from tungsteel firebox to robust tungsteel casing material. - @koolkrafter5
    • Fixed: Digester hatch visual appearance
  • #7184 Moved Materials.Air initialization from early phase to loadDegree2Compounds() in MaterialsInit.java to execute after noble gases are initialized, preventing null references in air's material components. - @tiffit
    • Fixed: air chemical formula null component
    • Closes GTNH#25389
  • #7183 Added string sanitization in IGregTechDeviceInformation.getInfoData() to escape percent signs that would cause String.format() to fail. - @AnsonYeung
    • Fixed: Debug Scanner crash with LCE locale format string
    • Closes GTNH#25390
  • #7181 Modified ArmorEventHandlers.java to avoid conflicting step height assignments between Modular Armor and EnderIO boots. - @wlhlm
    • Fixed: EnderIO Dark Boots step assist with Modular Armor
    • Closes GTNH#25354
  • #7180 Added GT++ frameboxes to the machine block registry and implemented break/place event triggers in BlockBaseModular.java to match behavior of standard casings. - @FourIsTheNumber
    • Added: machine block registry entries for GT++ frameboxes
    • Fixed: Industrial Centrifuge structure validation with GT++ frameboxes
    • Closes GTNH#25384
  • #7177 Corrected structure preview block configuration in MTELargeChemicalReactor. - @AnsonYeung
    • Fixed: LCR preview missing blocks
    • Closes GTNH#25245
  • #7176 Corrected armor piece index comparison in MechArmorBase jetpack rendering logic. - @FourIsTheNumber
    • Fixed: jetpack rendering
  • #7170 Corrected input/output order in DustLoader mixer recipe generation. - @AnsonYeung
    • Fixed: swapped mixer inputs and outputs
  • #7168 Added bounds checking in FluidEjectionHelper and OutputHatchWrapper, and fixed recipeCheck parameter passing to ME hatches in MTEMultiBlockBase. - @AnsonYeung
    • Fixed: output count array index crash, ME hatch production halt
  • #7165 Added intermediate cast to regular TileEntity before casting to GregTech tile entity in ItemMachines offhand wrench logic. - @mhowell9
    • Fixed: fluid pipe wrench crash
  • #7164 Added chili powder macerator recipe back to the Pulverizer recipe loader. - @Algent
    • Added: chili powder macerator recipe
    • Fixed: missing macerator recipe
    • Closes GTNH#25318
  • #7163 Changed wood material reference in RecipesMachinesCustom from an outdated entry to plankWood. - @tiffit
    • Fixed: wood ore dictionary mismatch
    • Closes GTNH#25319
  • #7162 Added null check in CellLoader recipe generation to prevent null ItemStack output. - @tiffit
    • Fixed: null ItemStack crash in cell loader
  • #7159 Disabled enchantability flag in MechArmorBase. Augments remain the intended method for adding special properties to mechanical armor. - @Spaghetti-OberNub
    • Fixed: armor piece glow visual bug
    • Closes GTNH#25329
  • #7158 Replaced client-only isBadEffect() call with server-compatible gt5u$isBadEffect() method in MilkInfusionBehavior, matching the pattern used in PlayerSleepEventHandler. - @Spaghetti-OberNub
    • Fixed: mechanical armor Night Vision crash
    • Closes GTNH#25337
  • #7155 Corrected item acceptance logic in MTEHatchCraftingInputME's manual slot handling. - @TheYoingLad
    • Fixed: crib manual slot input
  • #7154 Changed cable swap matching logic in MTECable to compare against the actual cable instance rather than its spec. - @AnsonYeung
    • Fixed: Shift-click cable replacement
    • Closes GTNH#25306
  • #7152 Corrected modulus calculation in RecipeMapBackend cacheMap to properly handle negative indices and prevent array access errors. - @AnsonYeung
    • Fixed: recipe map cache modulus calculation
    • Closes GTNH#25302
  • #7151 Updated MechArmorBase to use the new ForestryMC API method for apiarist protection, allowing each armor slot to check its own behavior independently instead of all slots checking leggings. - @FourIsTheNumber
    • Fixed: Apiarist augment not functioning on non-legging armor
  • #7150 Changed pollution reduction message formatting to use encode() to preserve the translation key and percentage value as a single unit, preventing double-translation that crashed on the '%' character. - @MassAnarchyy
    • Fixed: portable scanner translation crash on muffled multiblocks
    • Closes GTNH#25324
  • #7146 Replaced direct mTier checks in multiblock structure validation with calls to getTierForStructure() method, which properly handles debug and glass tier calculation. - @FourIsTheNumber
    • Fixed: debug hatch and glass tier validation
  • #7143 Created a new dedicated logger in GTInflectionManager instead of referencing the static logger from GTMod, preventing class initialization that interferes with mixin application order. - @zyf051520
    • Fixed: early GTMod class loading in mixins
  • #7137 Modified MTEEnhancedMultiBlockBase to always treat proxy connections as supporting fluid input, eliminating startup timing issues where proxy connections weren't ready when the multiblock structure check occurred. - @AnsonYeung
    • Fixed: compact fusion unforming on world restart
    • Closes GTNH#25275
  • #7136 Added tile update notification to MTECable when cable swapping occurs, ensuring all clients receive the block change packet. - @AnsonYeung
    • Fixed: cable swap visual desync in multiplayer
    • Closes GTNH#25208
  • #7133 Modified LoaderGTOreDictionary to prevent saving stone with wildcard metadata as the canonical item, ensuring only stone with meta 0 (which has the complete ore dictionary entry set) is used for unification. - @AnsonYeung
    • Fixed: ore dictionary unification for compressed stone
    • Closes GTNH#25151
  • #7132 Added phantom slot support flag and fixes to MTEItemStackHandler, MetaTileEntity, and affected machine GUIs (MTEElectricAutoWorkbench, MTERegulator, MTEFilter, MTEAutoChisel) to properly handle phantom slots and prevent duplication. - @TheYoingLad
    • Fixed: phantom slot duping, phantom slot interaction
  • #7131 Removed faulty metadata update logic in readBlockFromPacket() that incorrectly applied chunk-relative coordinates (x % 16, z % 16) to world-space operations. The client now relies on the server's authoritative metadata propagation. - @AnsonYeung
    • Removed: incorrect block metadata update on client
    • Fixed: random metadata overwrites in ClientMetaManager
  • #7127 Updated MTETransformer, MTEWetTransformer, and MTETransformerHiAmp to provide correct voltage and amperage values in WAILA display logic, accounting for player-facing direction. - @AnsonYeung
    • Fixed: transformer WAILA showing incorrect voltage and amperage values
    • Closes GTNH#25127
  • #7120 Added voltage requirement check in MTEScanner before allowing AssemblyLine recipe acceptance, matching the pattern used in the original code before PR #5677. - @AnsonYeung
    • Fixed: Self-clocking Scanner regression
    • Closes GTNH#25077
  • #7115 Updated tooltip text in MTEIndustrialMixer controller to match actual in-game casing name. - @Steelux8
    • Fixed: Mixer casing name consistency
  • #7103 Corrected progress bar widget theme registration class in GTWidgetThemes and ProgressbarWidgetTheme to use correct class references. - @TheYoingLad
    • Fixed: Resource pack heat bar override compatibility
  • #7101 Removed GTUtility.longToInt() clamping and changed FluidParallelData.perParallel from int to long to preserve full precision of large fluid outputs. - @Marsietiss
    • Fixed: Fluid output overflow voiding
  • #7100 Marked space miner recipes as collision-ignorant in IG_RecipeAdder so duplicate input recipes are not removed by the collision checker. - @AnsonYeung
  • #7088 Changed KnockbackResistBehavior to use the non-UUID constructor instead of passing a UUID, allowing random UUID generation to avoid the crash. - @FourIsTheNumber
    • Fixed: Mechanical Armor knockback resistance crash
    • Closes GTNH#25221
  • #7087 Restored mEUt assignment from lEUt in ExtendedPowerMultiBase so that doRandomMaintenanceDamage() in MTEMultiBlockBase correctly calculates damage using mEUt. - @Yoshy2002
    • Fixed: Turbine blade durability loss
  • #7085 Adjusted MTEHatchExtrusionGui and MTEHatchExtrusion to enforce proper slot limits matching standard input bus behavior plus the extra ghost slot. - @TheYoingLad
    • Fixed: Extrusion Hatch slot behavior
    • Closes GTNH#25190
  • #7084 Corrected fluid output handling in MTEDistillationTower and MTEMegaDistillationTower by fixing OutputHatchWrapper and VoidProtectionHelper logic; cleaned up MTEMultiBlockBase's IVoidable output handling. - @hinyb
    • Removed: MockIVoidableMachine test mock
    • Fixed: Distillation Tower fluid output without void fluids
    • Closes GTNH#25206
  • #7081 Removed hunger config option and player tick hunger event handling from GTProxy and GregTech config; cleaned up onPlayerTickEventServer method. - @koolkrafter5
    • Removed: Unused hunger drain config, Hunger manipulation code
    • Fixed: Food bar AFK drain
    • Closes GTNH#25078
  • #7080 Re-added Plantball recipe registration in ProcessingCrop loader and integrated it back into LoaderOreProcessing preload. - @UltraProdigy
    • Added: Plantball crafting recipes
    • Fixed: Missing Plantball recipes
    • Closes GTNH#25171
  • #7079 Updated ArcFurnaceElectrode and lang files to use correct Power/Speed notation for overclock factor. - @Pxx500
    • Fixed: Overclock notation consistency
  • #7078 Modified ClientProxy to check isModLoaded('angelica') before applying Angelica-specific animation workaround; disabled Angelica as a runtime dependency in dependencies.gradle. - @Ruling-0
    • Removed: Angelica runtime dependency
    • Fixed: Accidental Angelica hard dependency
  • #7070 Corrected ClientMetaManager serialization to ensure matching read/write amounts on client and server. Fixed optional blockList.size() writing and meta serialization to prevent data offset corruption with multiple trackers or ghost blocks. - @AnsonYeung
    • Fixed: Tracker serialization data corruption, Ghost block serialization issues
  • #7068 Unified redstone output signal access to a single private method that only calls issueBlockUpdate when the strong output status actually changes, eliminating conditional spam in setOutputRedstoneSignal. - @AnsonYeung
    • Fixed: Redstone signal block update spam
  • #7064 Modified GTUtility to detect and prevent mutual block update loops between COFH water and GT tile entities. - @AnsonYeung
    • Fixed: Multiblock formation with COFH water and covers, Block update spam loop
    • Closes GTNH#25192
  • #7061 Added null-safety checks in IColoredTileEntity and MetaTileEntity to prevent NPE in tile entity operations. - @YannickMG
    • Fixed: NPE during gameplay
  • #7056 Corrected hatch count and type requirements in MTESpargeTower and MTENuclearReactor, updated English language file with corrected requirement text. - @Luca-Guettinger
    • Fixed: Sparge Tower construction requirement, Nuclear Reactor construction requirement
  • #7055 Removed GTCopiedBlockTextureRender compact mode logic, updated multiple CTM property files to use compact_expanded mode instead. - @tiffit
    • Removed: compact CTM mode checks, GTCopiedBlockTextureRender z-fighting workaround
    • Fixed: CTM z-fighting workaround
  • #7051 Switched MTEBeamMirror from simple facing to extended facing logic for proper directional output handling. - @Sanduhr32
    • Fixed: downward-facing beam mirror output rotation
  • #7050 Removed forced full-block hitbox in toolbox implementation, added check to prevent grid drawing on MetaPipeEntity when no tool is equipped. - @querns
    • Removed: forced full-block hitbox
    • Fixed: hitbox blocking tool usage on hatches, unnecessary grid rendering on pipes
    • Closes GTNH#25149
  • #7046 Corrected two entries in gregtech language files for stemcells and biocells tooltip text. - @Shadowsoftime99
    • Fixed: stemcells tooltip typo, biocells tooltip typo
    • Closes GTNH#25143
  • #7041 Replaced IBlockOnWalkOver with new IUpdatePlayerMovement interface, rewrote BlockConcretes movement handler in GTClient to match Chisel's implementation, removed problematic movement logic from GTProxy. - @YannickMG
    • Added: IUpdatePlayerMovement interface
    • Removed: IBlockOnWalkOver interface, buggy constant speedup behavior
    • Fixed: concrete constant speedup bug, inability to stand still on light concrete
    • Closes GTNH#17008, GTNH#24958
  • #7036 Re-added End Asteroids config flag to Worldgen.java and related enums, restoring the ability to toggle end asteroid generation in WorldGeneration.cfg. - @LazyFlesh
    • Added: end asteroids configuration flag
    • Fixed: missing end asteroids config option
  • #7033 Re-enabled OreInteractEvent firing in GTBlockOre for left-click interactions, fixing a regression from VisualProspecting PR #65. - @Algent
    • Fixed: OreInteractEvent not firing on ore left-click, Visual Prospecting prospecting requirement
    • Closes GTNH#25136
  • #7032 MetaGeneratedItem03: Removed the generic 'chip' oredict entry from all 24 chip items while preserving their specific oredicts. - @Eldrinn-Elantey
    • Removed: Generic 'chip' oredict from circuit chips
    • Fixed: AE2 pattern substitution incorrectly swapping chip types
  • #7031 GTCopiedBlockTextureRender and SBRWorldContext: Added conditional z-fighting fix that only applies layer offset adjustments during compact CTM rendering. Split boolean logic to track CTM state creation and cleanup. - @tiffit
    • Fixed: Z-fighting with non-compact CTM rendering
  • #7018 MTEBoilerGui: Added muffler button UI component to the boiler GUI. - @Keter01
    • Added: Muffler button for all steam boilers
    • Fixed: Missing muffler button on Solar Boiler and other steam boilers
    • Closes GTNH#24377
  • #7007 MTEIndustrialCokeOven: Fixed an issue where the first slice's coordinate check was overwriting base structure blocks, causing all subsequent slices to fail validation due to lack of valid hatch spots. - @Yoshy2002
    • Fixed: Hatches breaking subsequent slices when placed at specific positions
    • Closes GTNH#24879
  • #7005 Added validation or deduplication logic to GTRecipeRegistrator to prevent conflicting autogen arc furnace recipes. - @Pxx500
    • Fixed: Autogen arc furnace conflicts
  • #7004 Fixed asteroid spawn logic corrupted by mutable cache in HEEIslandScanner, corrected height validation overwrite in GTWorldgenerator, fixed swapped min/max and sign variables in worldgen code, added spotless-off annotations to WorldgenStone, corrected coordinate type usage and seed progression in WorldgenStone, and integrated fastutil. - @Algent
    • Added: Spotless-off annotations in WorldgenStone
    • Fixed: Asteroids spawning on HEE islands, Height validation logic, Coordinate type and seed progression in WorldgenStone
    • Migration: Existing asteroids and terrain already spawned in chunks remain unchanged; only new worldgen is affected.
  • #7002 Corrected tier value in MechArmorAugmentRegistries for a forcefield augment. - @FourIsTheNumber
    • Fixed: Forcefield augment tier
  • #7000 Added missing protectsAgainst() override to SpaceSuitBehavior in IArmorBehavior. GalaxySpace checks protection via this method on each armor piece; without the override, the augment had no effect. - @Eldrinn-Elantey
    • Fixed: Spacesuit augment not protecting against atmospheric pressure
    • Closes GTNH#25082
  • #6999 Removed fragile player name-based ownership detection from readFromNbt across 7 ME-related hatch classes. Unified initialization to occur only during placement via ItemMachines, following AENetworkProxy's documented behavior for setPlayerId. - @AnsonYeung
    • Removed: Player name-based ownership detection from readFromNbt
    • Fixed: ME output bus proxy being set to -1 when using /nick
    • Closes GTNH#25065
  • #6992 Updated MechArmorAugmentRegistries to require Living Core instead of Nano Core for Energy Grid Defense augment. - @Spaghetti-OberNub
    • Fixed: Energy Grid Defense core tier requirement
  • #6991 Changed MDT scan in AssemblyLineRecipes from Dangote tier to DT to avoid conflicts with Flotation Cell multiblock detection. - @chrombread
    • Fixed: Distillation tower scan conflict with flotation cell
    • Closes GTNH#25072
  • #6988 Removed '(tiered)' qualifier from glass requirement in MTEIndustrialMixer tooltip to accurately reflect that UIV+ glass is needed for multi-amp energy hatches. - @LunaDziaba
    • Fixed: Inaccurate tooltip text in Industrial Mixing Machine
    • Closes GTNH#25068
  • #6985 Changed MTEEndothermicFridge cooling boost from speed boost to perfect overclock to support subtick precision, aligning with the deprecated MVF implementation. - @chrombread
    • Fixed: Endothermic Fridge overclock behavior at high voltages
  • #6977 Modified MTEBasicMachineBaseGui.java to exclude the storage slot from shift-click fallback destinations. - @AnsonYeung
    • Fixed: storage slot accepting shift-click items
    • Closes GTNH#25004
  • #6976 Corrected comparison operator in WorldgenQuery.java from <= 0 to < 0 in weighted random selection loop, fixing the logic that prevents the final vein from being reached. - @Tuxprogrammer
    • Fixed: worldgen last vein selection probability
  • #6973 Fixed spelling in en_US.lang for gregtech, kubatech, and miscutils language files. - @Yoshy2002
    • Fixed: Tungstensteel spelling error
  • #6968 Modified MechArmorBase.java to delegate HoloGlasses rendering to bauble items when the helmet lacks a HoloInventory augment, fixing the priority check that previously blocked bauble detection. - @Eldrinn-Elantey
    • Fixed: mechanic helmet blocking bauble HoloInventory glasses
  • #6967 Updated GTRecipeRegistrator.java to filter out duplicate input/output recipes during arc furnace recipe generation. - @Pxx500
    • Fixed: same input/output arc furnace recipes
    • Closes GTNH#25045
  • #6966 Added null-safety checks in GTDummyWorld.java to handle tile entity access safely. - @tiffit
    • Fixed: crash when accessing TileEntity in GTDummyWorld
    • Closes GTNH#23998
  • #6965 Updated tooltip text in MTETankTFFT.java to reflect the single Multi I/O Hatch limitation. - @jude123412
  • #6961 Adjusted background position constants in NEIGTConfig.java, EyeOfHarmonyFrontend.java, and TecTechRecipeMaps.java. - @slprime
    • Fixed: recipe display background alignment
  • #6960 Renamed texture files for ichorium tool heads to match correct tool types. - @KwazziAus
    • Fixed: ichorium tool texture swap
  • #6956 Added texture registration calls to BlockEOHRender.java and BlockForgeOfGods.java following the same fix pattern as PR #6948. - @tiffit
    • Fixed: TT block renderer missing textures
  • #6952 Fixed mParallel initialization in MTELargeEssentiaSmeltery. - @Krakenrek
    • Fixed: LES parallel count calculation
    • Migration: The zero-parallel bug existed only in 2.9 daily builds; the Large Essentia Smeltery worked in 2.8.4 and works now.
    • Closes GTNH#25020
  • #6951 Fixed ore mode logic in MTEIndustrialArcFurnace. - @kuba6000
    • Fixed: Arc furnace ore mode
  • #6950 Fixed text rendering bounds in PositionedStructureError. - @Luca-Guettinger
    • Fixed: Structure error text clipping for long names
  • #6948 Added texture assignment logic to BlockRenderer for proper block face rendering. - @tiffit
    • Fixed: Missing textures in block renderer
  • #6947 Added ProxiedMteGui class and updated proxy buffer access logic to work without client-side MTE; covers intentionally disabled on proxies. - @AnsonYeung
    • Added: ProxiedMteGui, proxy GUI support
    • Fixed: Proxy GUI not opening when MTE not client-loaded
    • Closes GTNH#23564
  • #6942 Updated laser hatch validation in MTEIndustrialArcFurnace to only allow specific hatch types. - @Pxx500
    • Fixed: Arc furnace configuration validation
  • #6941 Separated recipe check logic from actual output logic in multiblock output systems; refactored IVoidable, output helper classes, and ME hatch implementations to allow proper overflow handling. - @hinyb
    • Added: IOutputBusTransaction, IOutputHatchTransaction interfaces
    • Fixed: Output hatch priority not respected, Voiding during output
    • Migration: Fusion reactor output hatches now respect priority correctly; existing output setups may need hatch priority re-ordered to restore intended behavior.
    • Closes GTNH#25183
  • #6940 Fixed amperage update logic in MTELapotronicSuperCapacitor to prevent explosion during hatch configuration changes. - @Sanduhr32
    • Fixed: LSC exploding on hatch amperage change
    • Migration: Existing Lapotronic Super Capacitors will no longer explode when adjusting laser target voltage in the GUI; machines resume normal operation.
    • Closes GTNH#25031
  • #6934 Extended MaterialBuilder and GTRecipeRegistrator to support dual-path recycling recipes for copper; updated copper material and ore processing definitions. - @Pxx500
    • Added: Oxygen-assisted copper to annealed copper recipe
    • Fixed: Annealed copper recipe missing oxygen
  • #6928 Removed lastRecipe caching in MTEBeamCrafter to enable dynamic recipe switching via hatch priority; disabled CRIB support. - @ham-corp
    • Removed: CRIB support in Beamcrafter structure
    • Fixed: Hatch color priority on beamcrafter
    • Closes GTNH#24780
  • #6927 Reverted changes to BaseMetaTileEntity.java from PR #6779 to restore original PR #6751 functionality. - @Sanduhr32
    • Fixed: BaseMetaTileEntity behavior
  • #6925 Introduced a 'standard hazards' set in the hazard system that excludes space hazards. Updated HazardProtection and affected mixin implementations (IC2 nano/hazmat, Advanced Solar Panels helmet) to use this set for tooltip display, separating tooltip presentation from actual hazard protection logic. - @FourIsTheNumber
    • Added: Standard hazards set for hazard protection tooltips
    • Removed: HazardProtectionTooltip class (refactored into hazard system)
    • Fixed: Nano/hazmat suits incorrectly showing space suit protection in tooltips
  • #6924 Modified MTEExothermicHearth to allow unlimited tier skipping behavior in multiblock recipe processing. - @Yoshy2002
    • Fixed: Exothermic Hearth unable to perform unlimited tier skips
  • #6923 Added missing block entries to the GTStructureUtility NEI preview handler for Gorge module multiblocks, ensuring all constituent blocks are properly rendered in the recipe preview. - @Yoshy2002
    • Fixed: Gorge module multiblock preview missing blocks in NEI
    • Closes GTNH#25010
  • #6922 Moved distilled water caching from static initialization to lazy load in GTUtility, resetting water checks before each machine validation to prevent edge cases. Refactored multiple multi-block tile entities to use auto-place water logic. NEI preview support improved with water display, pending StructureLib#63 for complete functionality. - @Yoshy2002
    • Added: Lazy-loading distilled water cache, Auto-place water for Flocculation Unit and Purification Plant
    • Removed: Static early caching of distilled water
    • Fixed: Existing Chembath and Ore Washing Plant not detecting distilled water, NEI preview of wash plant, clarifier, and flocculation unit to show water
    • Migration: The distilled-water detection bug existed only in 2.9 daily builds. These multiblocks now also fill their own water pool.
    • Closes GTNH#25042
  • #6914 MTEEnergyInfuser.isItemStackFullyCharged() now checks receiveEnergy() return value instead of comparing stored energy to max capacity, matching the logic in Draconic Evolution's TileEnergyInfuser.canExtractItem(). This correctly identifies transformed (damage=2) draconium items as fully charged since their receiveEnergy() immediately returns 0. - @czqwq
    • Fixed: Energy Infuser infinite loop on charged draconium blocks, Energy Infuser output routing for fully charged items
  • #6912 Changed PCB factory casing validation in MTEPCBFactory to only enforce minimum casing requirements for T3, preventing over-restrictive checks on lower tiers. - @Yoshy2002
    • Fixed: PCB factory tier validation
  • #6911 Fixed crash in MTEIndustrialChiselLegacy multiblock when used with Stocking Input Bus. The fix involves a small adjustment (5 lines added, 4 removed) to the machine's tile entity class. - @AnsonYeung
    • Fixed: Crash when using Stocking Input Bus with Legacy Chisel Multiblock
    • Closes GTNH#24892
  • #6905 Swapped hint block coordinates in MTEMegaDistillationTower so tooltip hints now align with actual placed block positions; added screwdriver interaction support for mode switching. - @chrombread
    • Added: screwdriver right-click mode switching
    • Fixed: tooltip hint coordinates misaligned with in-world layout
  • #6901 Added cleanup logic in CoverRedstoneTransmitterExternal/Internal and CoverAdvancedRedstoneTransmitterBase to remove frequency entries from the wireless map when covers are broken or frequency is changed via GUI. Updated GUI handlers to trigger proper unregistration before applying new frequencies. - @FrostyFire1
    • Added: Frequency cleanup on cover removal, Frequency cleanup on GUI frequency change
    • Fixed: Broken redstone transmitter covers leaving orphaned frequency mappings, Wireless redstone frequency not cleaned up on GUI reconfiguration
  • #6900 Fixed setFrontFacing triggering getProxy before the owner field was initialized in ItemMachines. This prevented proper owner assignment for ME input/output bus variants, breaking ME network integration. - @AnsonYeung
    • Fixed: ME output bus stuck items when security terminal present, ME input/output bus retrieval from subnetworks, storage bus integration issues, ME output bus on output subnets with NBT player value -1
    • Closes GTNH#24924, GTNH#24925, GTNH#24931, GTNH#24973
  • #6898 Added ore dictionary support in GTRecipe and updated RecipeGenMultisUsingFluidInsteadOfCells to properly handle oredict inputs; fixed fluid-based recipe generation to resolve items through ore dictionary. - @tiffit
    • Added: OreDict support for fluid recipe multis
    • Fixed: Ore dictionary inputs not working in Centrifuge/Electrolyzer/Mixer
  • #6891 Removed redundant augment.getTooltip() call in ItemAugment#addAdditionalToolTips, as GTGenericItem already adds the tooltip string in its constructor. - @Eldrinn-Elantey
    • Removed: Redundant tooltip display call
    • Fixed: Augment tooltip description appearing twice
  • #6889 Removed conflicting energy display logic in MTEExtendedPowerMultiBlockBase.java that was being overridden; restored proper energy display in MTEMultiBlockBase.java. - @evgengoldwar
    • Removed: Conflicting energy display suppression
    • Fixed: Energy display hidden when multi-amp or laser hatches installed
  • #6880 Removed final modifier from connectedTex field in BWBlocksGlass.java and BWBlocksGlass2.java to allow CTM to override; also removed unused connected variable from BlockCasings8.java. - @ABKQPO
    • Removed: Unused connected variable
    • Fixed: Java 21 crash with CTM override on connection fields
  • #6878 Changed MTEMultiBlockBaseGui to use the local baseMetaTileEntity field instead of multiblock.getBaseMetaTileEntity(), which returns null when the controller is broken, causing a NullPointerException. - @tiffit
    • Fixed: Crash when breaking multiblock with GUI open
  • #6875 Fixed NBT saving/loading of the 'outputColor' tag in MTENanochipAssemblyModuleBase; when server restarts, outputColor was resetting to -1, causing addOutputAtomic to fail finding the hatch and stopping the machine. - @czqwq
    • Fixed: NAC module outputColor NBT tag not persisting across server restart
  • #6870 Added a synced canUseWireless value to MTELapotronicSuperCapacitor that disables wireless toggle and rebalance buttons in MTELapotronicSuperCapacitorGui when no UHV+ capacitors are present, plus server-side guard in rebalance(). - @Luca-Guettinger
    • Fixed: LSC wireless mode and manual rebalance usable without UHV+ capacitors
    • Closes GTNH#24950
  • #6867 Added null-safety checks in CoverEnderFluidLinkGui to prevent crashes during GUI initialization on server. - @Luca-Guettinger
    • Fixed: Ender fluid link cover crash on open
    • Closes GTNH#24951
  • #6859 Added map corruption checks and defensive initialization in GhostCircuitSyncHandler, GhostCircuitSlotWidget, GhostShapeSlotWidget, and GhostShapeSyncHandler to prevent NPE during sync handler setup. - @Luca-Guettinger
    • Fixed: NPE crash when opening singleblock GUIs
  • #6856 Reverted changes from PR#6798 in MTEThermalBoiler and MTEThermalBoilerLegacy to restore working boiler behavior, as later changes in PR#6836 made the new logic incompatible. - @Yoshy2002
    • Fixed: Thermal Boiler functionality
  • #6854 Corrected hatch requirement definitions in MTEIndustrialFishingPond to include both input and output hatches in NEI display. - @Yoshy2002
    • Fixed: NEI display of Industrial Fishing Pond hatches
  • #6853 Adjusted HatchElementBuilder ordering to ensure hatches are rendered and placed before casings in multiblock previews and survival construction. - @AnsonYeung
    • Fixed: Multiblock preview hatch visibility, Survival autobuild hatch placement
  • #6845 Changed icon material lookup to use the materials field consistently with other code in BlockSheetMetal class. - @tiffit
    • Fixed: Incorrect material reference in sheetmetal icon display
  • #6843 Changed SpaceTime.getFluid() to SpaceTime.getMolten() in BeamCrafterRecipes to provide the correct molten fluid instance to the recipe. - @tiffit
    • Fixed: Null fluid in PseudoStar recipe
  • #6839 Introduced getLocalNameKey() on IMetaTileEntity to separate language keys from translated names. Fixed all tile entities returning null or pre-translated strings from getInventoryName(). Updated ScannerHelper and CoverWirelessController to translate at display site. - @Luca-Guettinger
    • Added: getLocalNameKey() method on IMetaTileEntity, Meta ID display in scanner output, Proper lang key methods for all standalone tile entities
    • Removed: FIXME comment
    • Fixed: Scanner display for pipe entities, Wireless controller cover name display, Tile entity inventory name null values
  • #6836 Fixed fluid deduplication logic in GTRecipe parallel calculation that was incorrectly filtering out required fluid catalysts. - @AnsonYeung
    • Fixed: Spacetime recipe catalyst requirement with convergence
    • Closes GTNH#24912
  • #6833 Added null check for slot configuration in MTEHatchInputME before attempting to access its properties. - @lc-1337
    • Fixed: NullPointerException on MTEHatchInputME with missing slot config
    • Closes GTNH#24338
  • #6828 Added .allowC2S() to IntSyncValue fields in beam machine GUIs: playerTargetBeamRate (Beam Stabilizer), playerTargetBeamEnergyeV and playerTargetAccelerationCycles (LHC stats panel), and related beam output hatch sync values. - @czqwq
    • Fixed: Beam Stabilizer text input configuration, LHC beam energy and acceleration cycle configuration, GUI sync security exceptions
  • #6826 Updated VoidMinerUtility and DimensionHelper to query dimension-specific stone type outputs instead of hardcoding overworld defaults. Now correctly outputs for Galacticraft/GalaxySpace/AmunRa planets. - @jude123412
    • Fixed: Void Miner dimension-specific stone variants, Ore Voiding Selection dimension handling
    • Closes GTNH#21921
  • #6824 Removed redundant primary ore addition in OreMixes.setLocalizedName() since the primary ore is already included in the base vein name. - @tiffit
    • Fixed: Duplicate ore names in vein descriptions
  • #6822 Added call to GTProxy to invoke toolbox block breaking event handler; removed unneeded @SubscribeEvent annotations from ItemGTToolbox since the class was never registered with Forge EventBus. - @querns
    • Removed: Unused @SubscribeEvent annotations from ItemGTToolbox
    • Fixed: IC2 block drops when broken with toolbox wrench, Reactor chamber voiding
    • Closes GTNH#25091
  • #6821 Corrected SyncValues and MTEPlasmaModule getter/setter method names to properly override and separate debug accessors. - @TheYoingLad
    • Fixed: Plasma Fabricator debug setter override logic
  • #6819 Removed Dragon Blood material from MaterialsElements animation registration, allowing Hypogen's custom animation to take precedence. - @Ruling-0
    • Fixed: Dragon Blood animation conflict with Hypogen
  • #6818 Modified MTEMultiBlockBase.doCheckRecipe() to build an input items list containing the controller slot before calling processingLogic.process() when no input buses are present, matching the existing per-bus logic. - @dipo33
    • Fixed: Controller slot circuits ignored in ~60 multiblocks without input buses
    • Closes GTNH#24304
  • #6816 Added casing block texture entry in GregtechMetaCasingBlocks6 to resolve texture reference from PR #6328. - @AnsonYeung
    • Fixed: Missing energy hatch texture on Compact Fusion 5
  • #6814 Modified CommonMetaTileEntity, MTEAirFilterBase, MTEExoFoundry, and MTEForgeOfGods to fix hatch counting and diagnostics display logic. Removed incorrect air filter bus requirements. - @Luca-Guettinger
    • Removed: Extraneous lang entry
    • Fixed: Air Filter diagnostics with no hatches, Exo Foundry module hatch reporting
  • #6811 Updated NightVisionBehavior.onKeyPressed() to use context.toggleBehavior() instead of directly calling getArmorState().toggle(), ensuring markDirty() is called for proper save behavior. - @Eldrinn-Elantey
    • Fixed: Night Vision state not being saved on toggle
  • #6810 Replaced runtime animation calculations in gtPlusPlus materials with standard interpolated texture animations. Updated TextureSet and CondensateType enums, added MCMeta animation files, and removed AnimatedBlockTextureHandler and related runtime animation code. - @Ruling-0
    • Added: Baked animated texture files for three materials, MCMeta animation metadata files
    • Removed: AnimatedBlockTextureHandler, Runtime animation calculations, BlockBaseModular custom animation logic, TextureBlockMaterial, BaseItemComponent animation code
    • Fixed: Animation synchronization issues, Performance overhead from runtime animations
  • #6809 Updated tooltip strings in MTEDroneCentre to include deprecation notice. - @Luca-Guettinger
    • Added: Deprecation tooltip to legacy Drone Centre
    • Fixed: Missing deprecation indicator on legacy Drone Centre
  • #6805 Added debug mode and creative checks to MTELapotronicSuperCapacitorGui, MTESpinmatronGui, and related sync classes. Fixed capitalization in MTELapotronicSuperCapacitor class name. - @TheYoingLad
    • Added: Debug mode checks in GUI setters, Creative mode checks
    • Fixed: MUI2 c2s sync issues, Class name inconsistency
  • #6803 Refactored MTEMegaIndustrialApiary to aggregate bee list by species and production speed, paginate at 36 entries/page, strip unnecessary NBT, and merge recipe outputs. Fixed power switch SecurityException from MUI2 c2s restrictions and optimized onStorageContentChanged and buildAggregatedBeeList hotpaths. - @Luca-Guettinger
    • Added: Bee data aggregation, Pagination system for bees
    • Fixed: Client crash with thousands of bees, Server lag with large bee counts, C17PacketCustomPayload overflow, Power switch SecurityException, C2S error when turning off running machine
    • Closes GTNH#19233, GTNH#21461, GTNH#21549, GTNH#22492
  • #6801 Updated MTEBlackHoleCompressor stability checks to consistently treat 0 as unstable across all display and logic layers. - @UltraProdigy
    • Fixed: Inconsistent stability state interpretation
  • #6799 Removed an invalid required input constraint from MTEMassFabricator. - @Yoshy2002
    • Removed: Required input from Mass Fabricator
    • Fixed: Invalid input requirement in Mass Fabricator
  • #6798 Fixed water consumption logic in MTEThermalBoiler and MTEThermalBoilerLegacy. The issue was caused by PR #6661's recipe system changes which broke the zero-amount water slot workaround used for parallel calculation. - @Yoshy2002
    • Fixed: Thermal Boiler not consuming water, Parallel calculation returning 0
    • Closes GTNH#24858
  • #6797 Removed a problematic validation check in MTEExtremeEntityCrusher. - @Luca-Guettinger
    • Removed: Invalid structure check in Extreme Entity Crusher
    • Fixed: Bad structure check in Extreme Entity Crusher
  • #6794 Fixed FluidDisplayStackRenderer to properly render GT++ fluids. - @Luca-Guettinger
    • Fixed: GT++ fluid rendering
  • #6793 Corrected logic in MTEBlackHoleCompressor to properly void items when space-time is in the hatch with an unstable black hole. - @Luca-Guettinger
    • Fixed: Items not being voided with unstable black hole
  • #6790 Updated GTStructureUtility and BlockSheetMetal to properly handle sheetmetal texture rendering in particles and structure hints. - @tiffit
    • Fixed: Missing sheetmetal particle textures, Sheetmetal blocks not appearing in structure hints
  • #6789 Updated StructureLib dependency and related API calls in StructureChecker, GTStructureUtility, and HatchElementBuilder to use the cleaned-up API from StructureLib PR #60. - @Luca-Guettinger
  • #6785 Updated MTEEndothermicFridge and MTEExothermicHearth structure tooltip strings to reflect correct block compositions. - @chrombread
    • Fixed: Incorrect structure information in machine tooltips
  • #6784 Removed incorrect check in MTEEtchingArrayModule.java validation logic. - @Luca-Guettinger
    • Removed: Incorrect validation check
    • Fixed: NAC Module etching array validation
  • #6783 Added missing structure validation check to MTEFluidShaper.java checkMachine method. - @Luca-Guettinger
    • Fixed: Missing checkMachine validation in legacy FluidShaper
  • #6780 Corrected diagnostic output strings in HatchElementBuilder.java and MTESteamMultiBlockBase.java. - @Luca-Guettinger
    • Fixed: Diagnostic message errors
  • #6779 Reverted PR #6751 in BaseMetaTileEntity.java and related classes. Restores full face rechecking logic for blocks that dynamically change EU facing configurations. - @AnsonYeung
    • Fixed: Transformer mode-switching EU acceptance, Dynamic EU facing reconfiguration
    • Closes GTNH#24844
  • #6775 Removed incorrect volume override in GTSoundLoop.java that was setting targetVolume to 0.0625f instead of allowing the default value of 1.0f. - @tiffit
    • Removed: Incorrect VOLUME_RAMP override
    • Fixed: Machine sound volume
  • #6772 Changed ToolboxUtil.java to use MetaGeneratedTool#doDamage instead of doDamageToItem, which was applying an incorrect 200x durability multiplier. - @querns
    • Fixed: Excessive toolbox durability use on gates
    • Closes GTNH#24610
  • #6771 Added exception handling in ForgeHooksMixin to account for toolbox containers when adjusting block hardness based on tool stats and wrench mode. - @querns
    • Fixed: Wrench precise mode in toolbox
    • Closes GTNH#24827
  • #6770 Restored proper color handling in FluidDisplayStackRenderer.java after regression introduced by PR #6649's custom GTPP renderer implementation. - @Luca-Guettinger
    • Fixed: Broken fluid display colors
    • Closes GTNH#24824
  • #6767 Fixed minimum casing count validation in MTEExoFoundry.java and updated the corresponding language file entry. - @Luca-Guettinger
    • Fixed: Exo-Foundry casing validation
  • #6764 Updated MTEDroneCentre.java renderer logic to account for the new structure layout where certain positions that were previously air are now filled with blocks. - @Yoshy2002
    • Fixed: Drone Centre structure rendering
  • #6763 Modified MTEIntegratedOreFactory.java to add two iridium sheetmetal blocks to the structure. - @Sanduhr32
    • Fixed: Missing IOF structure blocks
  • #6762 Updated MTEDroneCentre.java to add the missing steel frame block in layer 2 of the multiblock structure. - @PLASMAchicken
    • Fixed: Missing steel frame in Drone Centre
    • Closes GTNH#24819
  • #6760 Modified ForgeOfGodsStructureString.java to fix the structure pattern for the second layer of the Forge of Gods multiblock machine. - @Sanduhr32
    • Fixed: Forge of Gods layer asymmetry
  • #6755 Removed FluidRecipe registration that was unused after AE2FluidCraft-Rework PR #434 removed the recipe type entirely; NotEnoughEnergistics provides equivalent functionality. - @Kogepan229
    • Removed: FluidRecipe registrations from GTClient
    • Fixed: Unused recipe map references
  • #6753 MTENetworkSwitchAdv structure definition corrected by removing incomplete/incorrect maintenance element entry. - @czqwq
    • Removed: QOS maintenance element (erroneous definition)
    • Fixed: Network Switch Advanced maintenance requirement
  • #6750 ItemMachines.placeBlockAt() now sets block rotation earlier to prevent default orientation from being applied first. - @AnsonYeung
    • Fixed: Maintenance hatch rotation on placement
  • #6746 Second pass of depleteInput now uses type-specific drain instead of generic drain-by-amount in CommonMetaTileEntity, MTEMultiBlockBase, and related input hatches. - @Caedis
  • #6745 Applied material color renderers to BaseItemCell and BaseItemPlasmaCell. - @GDCloudstrike
    • Fixed: GT++ cell material color display
  • #6744 MaterialBuilder and MaterialsInit restored mining level assignments for affected ore materials. - @tiffit
    • Fixed: Ore mining level requirements
    • Closes GTNH#23769
  • #6738 MTEHatchOutput.canStoreFluid() now checks locked fluid outside the isFluidLocked() conditional; FluidLockSlotWidget updated to properly reflect locking state. - @Angry3vilbot
    • Fixed: Output hatch fluid locking in default mode
    • Closes GTNH#24739
  • #6736 GTLanguageManager now properly handles tooltip generation for machines with duplicate names via ItemMachines tooltip override logic. - @iouter
    • Fixed: Machine tooltips with language file present, Deprecation status display for duplicate-named machines
    • Closes GTNH#24756
  • #6730 Corrected LoaderGTBlockFluid to register fieryblood fluid with cellMolten prefix and fixed OrePrefixes.cellMolten check to use proper prefix. - @Eldrinn-Elantey
    • Fixed: FierySteel cell language key
  • #6726 Modified MTELargeHadronCollider to roll RNG for blacklisted particles and void them instead of skipping the roll entirely. - @ham-corp
    • Fixed: LHC blacklist particle generation
  • #6725 Corrected block placement logic in MTEExoFoundry and updated FoundryFakeModuleCostLoader to reflect correct symmetry. - @Auynonymous
    • Fixed: Exo-Foundry structure symmetry
  • #6722 Fixed stack limit enforcement in MTEBasicBatteryBuffer that was broken during ModularUI2 port. - @TheYoingLad
    • Fixed: Battery Buffer slot stacking
  • #6721 Converted steam gauge rendering from unsynced value to theme element in MTESteamMultiBlockBaseGui and related classes, removing hardcoded gauge logic from individual steam machines. - @YannickMG
    • Added: Steam gauge theme element
    • Removed: Hardcoded gauge parameters from steam machine classes
    • Fixed: Steam gauge theme synchronization
  • #6720 Updated MTEIndustrialArcFurnace to properly handle muffler controller interaction, fix sound position, and remove coil tier restrictions. - @kuba6000
    • Fixed: Arc Furnace muffling, Arc Furnace sound positioning, Arc Furnace coil tier restriction
  • #6719 Moved mMetaTileEntity field back to BaseMetaTileEntity from CommonBaseMetaTileEntity to restore correct class hierarchy. - @AnsonYeung
    • Fixed: mMetaTileEntity field placement
  • #6718 Refactored texture icon processing to handle GT++ textures independently of GT's textures by adjusting load order logic in Textures.java and texture container classes. - @tiffit
    • Fixed: GT++ texture rendering in CoreMod dev environment
  • #6712 Added missing null check in CoverWirelessControllerGui to handle redstone button click without crashing. - @Luca-Guettinger
    • Fixed: Wireless Machine Controller redstone button crash
    • Closes GTNH#24738
  • #6711 Replaced direct field references with getMetaTileEntity() calls in CommonBaseMetaTileEntity to avoid NPEs from PR #6028 changes. - @Caedis
    • Fixed: null pointer exceptions from field references
  • #6710 Fixed tooltip generation in MTEIndustrialArcFurnace. - @Pxx500
    • Fixed: Arc Furnace tooltip
  • #6709 Reordered hatch discovery checks in TTMultiblockBase to prefer laser hatch detection over multi-amp/normal energy hatches, ensuring Active Transformer correctly identifies and uses compatible hatches. - @Sanduhr32
    • Fixed: Active Transformer hatch classification
    • Closes GTNH#24731
  • #6708 Added missing sync handler registration in TTMultiblockBaseGui and TileEntityModuleMiner for cycleDistance parameter. - @Luca-Guettinger
    • Fixed: Space Miner GUI crash
  • #6707 Added band-aid fix in TTMultiblockBaseGui and CompositeParameter to prevent GUI crash. Full solution will involve rewriting BEC to use the parameter system. - @TheYoingLad
    • Fixed: BEC GUI crash
  • #6706 Corrected parameter assignment order in TileEntityModuleMiner to match intended function signature. - @TheYoingLad
    • Fixed: Space Miner parameter mixup
  • #6705 Refactored dynamic naming logic in MetaBaseItem and MetaGeneratedItem to show current color in brackets as a suffix rather than replacing the entire name. Removed unused IItemBehaviour interface code related to dynamic naming. - @TheYoingLad
    • Removed: IItemBehaviour interface (unused dynamic name methods)
    • Fixed: Infinite Spray Can name changing issue
    • Closes GTNH#24716
  • #6702 Updated recipe definitions in RecipeLoader2 and MTERecipeLoader to reference new Large Turbine controllers instead of outdated ones. - @Yoshy2002
    • Fixed: Large Turbine recipe controller assignments
  • #6701 Re-added base textures and _OVERLAY variants for FIERY, NUCLEAR, and CUSTOM materials (crystallinepinkslime, rhugnor, vibrant, DIAMOND) that were removed by a deduplication script that failed to check overlay compatibility requirements. - @tiffit
    • Added: Material texture files (base and overlay variants)
    • Fixed: missing material textures
  • #6698 Corrected NBT serialization/deserialization logic in MTEHatchOutput to properly save and restore hatch state. - @TheYoingLad
    • Fixed: output hatch NBT save/load
  • #6697 Corrected casing count and naming in MTEPCBFactory tooltip to match the actual Cooling Tower requirements and align with Cooling Tower controller documentation. - @Angry3vilbot
    • Fixed: PCB Factory cooling tower casing count, casing name consistency
    • Closes GTNH#23958
  • #6696 Modified client data packet sending in CommonBaseMetaTileEntity to only include description when front face is valid, preventing server from overwriting the correct client-side face with UNKNOWN value. - @tiffit
    • Fixed: Machine front face flickering on placement
    • Closes GTNH#24664
  • #6690 Modified CoverAdvancedRedstoneTransmitterBaseGui, CoverBaseGui, and CoverIOBaseGui to check if running on dedicated server and hardcode a font width value of 100 instead of calling client-only IKey.renderer.getMaxWidth(). - @tiffit
    • Added: server-side checks in cover GUI classes
    • Fixed: dedicated server crash when interacting with GT covers
    • Closes GTNH#24713
  • #6687 Updated BaseItemComponent, BaseItemIngotHot, BlockBaseModular and other GT++ base classes to use IIconContainer interface instead of hardcoded texture paths, enabling proper texture fallback to NONE set like GT materials. - @tiffit
    • Added: IIconContainer implementation in GT++ item/block base classes
    • Removed: hardcoded texture paths in BaseItemCell, BaseItemPlasmaCell
    • Fixed: GT++ textures broken by PR #6681 texture deduplication
  • #6686 Split GT++ Material initialization into two phases: construction (property computation only) and deferred registration (fluid/cell creation), gated by a static flag opened during ModItems.runMaterialGenerator() in preInit. Demonstrated with MTEFrothFlotationCell structure as static final. - @Luca-Guettinger
    • Added: deferred material registration phase gating
    • Fixed: GT++ cells being overwritten by GT cells during startup
  • #6685 Fixed incorrect key in parametrizer card implementation for mining modules, added NBT-based filter copying capability to ItemParametrizerMemoryCard and TileEntityModuleMinerGui, and added language keys for the feature. - @Krepyn
    • Added: parametrizer card ability to copy mining module filters
    • Fixed: parametrizer card not working with mining modules due to wrong key
  • #6684 Modified FlaskRenderer.java to properly restore GL state (alpha, blend, depth, color) after rendering to prevent state leakage to subsequent item renders. - @NeutronSelector
    • Fixed: Volumetric Flask rendering causing offhand item opacity issues
    • Closes GTNH#23127
  • #6683 Added per-tick transaction tracking in MTEHatchOutputBusMEBase to prevent multiple transactions in the same tick from voiding items, moved markDirty() call to storePartial() for consistency, and optimized store logic. - @hinyb
    • Added: per-tick transaction tracking in ME Output Bus
    • Fixed: ME Output Bus voiding items with multiple transactions per tick, Eye of Harmony buffer overflow issue
    • Closes GTNH#24652
  • #6675 Modified OverclockCalculator.java to prevent unsafe type casting that was corrupting power calculation logic when multiple hatch configurations are present. - @Nana-Sakura
    • Fixed: LEC power overconsumption with UV dual hatches
    • Closes GTNH#24686
  • #6670 Modified RenderForgeOfGods to re-bind the VBO before draw calls, preventing GL state corruption that occurred under specific conditions involving God Forge and matter manipulator interactions. - @Luca-Guettinger
    • Fixed: crash when using Forge of Gods with matter manipulator in copy mode
  • #6666 Overrode getMinimumStoredEU() in MTESolarGenerator to return 0 for tier 0, allowing the 1-volt panel to export when its storage exceeds 0 instead of the inherited 512 EU threshold. - @Junyan721113
    • Fixed: 1-Volt Solar Panel EU export blockage
  • #6664 Added null safety checks for owner UUID field in MTEHatchInputBusME and MTEHatchInputME before dereferencing. - @Luca-Guettinger
    • Fixed: NPE spam in ME hatch logging when UUID is null
  • #6659 Corrected offhand item reference in GTPacketUpdateItem to properly handle both main hand and offhand item updates. - @TheYoingLad
    • Fixed: Circuit programming broken after prior changes
    • Closes GTNH#24641
  • #6658 Corrected block placement coordinates in MTEExoFoundry checkMachine validation logic. - @Auynonymous
    • Fixed: Exo Foundry block misplacement
  • #6651 Moved cauldron remap initialization to occur before post-initialization to ensure NEI displays use the correct processed outputs, preventing race conditions with GoodGenerator recipe loading. - @loenaaaa
    • Fixed: Naquadah cauldron recipe NEI display showing wrong outputs
    • Closes GTNH#24493
  • #6646 Added issueTextureUpdate() call in MTEHatchCokeOven when mode is updated via screwdriver interaction. - @tiffit
    • Fixed: Coke Oven Hatch texture update lag
    • Closes GTNH#24621
  • #6645 Fixed NPE in GraphRouteTracker and BEC classes, corrected EU/t calculation for max field strength, reset min/default field strength from 0 to 1, fixed containment field off-state behavior, and corrected observation array nanite detection order dependency. - @RecursivePineapple
    • Fixed: NPE when breaking BEC conduits, NPE in GraphRouteTracker, BEC EU/t consumption overflow for max field strength, BEC invalid default field strength values, Containment field operating when disabled, Observation array nanite detection after reordering
  • #6644 Changed stocking hatch ownership verification from EntityPlayer.getDisplayName() to player UUID in MTEHatchInputBusME and MTEHatchInputME. - @Lyfts
    • Fixed: Stocking hatches not pulling items/fluids after player name change
    • Closes GTNH#24237
  • #6643 Corrected stack detection logic in RecipeMapFrontend and SpargeTowerFrontend to properly identify which item is being examined for tooltip display. - @slprime
    • Fixed: Tooltip display for recipe maps showing incorrect stack information
  • #6642 Removed fuel value validation logic in MTESemiFluidGenerator that was incorrectly allowing any burnable item to be used as fuel input. - @Luca-Guettinger
    • Removed: Semi-Fluid Generator fuel acceptance for arbitrary burnable items
    • Fixed: Semi-Fluid Generator rejecting invalid fuel items
  • #6641 IToolStats, MetaGeneratedTool, GTTool, ToolSaw, and DetravToolElectricProspectorBase: added water placement prevention and proper durability consumption when ice blocks are broken with saws. - @DarkShadow44
    • Added: water placement prevention for saw tools
    • Removed: chainsaw special ice-breaking logic (replaced with generic tool logic)
    • Fixed: infinite water/ice generation from saws, saw durability cost on ice breaking
    • Closes GTNH#24424
  • #6640 CraftingRecipes: updated MV rock cutter recipe to use oredict instead of specific item references. - @Algent
    • Fixed: MV Rock Cutter crafting recipe
    • Closes GTNH#24103
  • #6637 Casings: shifted BEC casing texture indices after adding texture page 17. BlockCasingsBEC and Textures updated to match. - @RecursivePineapple
    • Fixed: BEC casing texture misalignment
  • #6636 MTEIndustrialExtruder: changed input validation from mInputBusses to use crib-inclusive checks consistent with other multiblocks. - @Yoshy2002
    • Fixed: Industrial Extruder not forming with only cribs
  • #6632 OrePrefixes: added missing ore processing configuration for Callisto ice ore. - @tiffit
    • Fixed: Callisto ice ore processing
    • Migration: Regenerate Callisto ice ore deposits or manually rebuild ore processing recipes.
  • #6631 OrePrefixes: added missing ore processing configuration for plutonium and titanium ore types. - @tiffit
    • Fixed: plutonium ore processing, titanium ore processing
    • Migration: Regenerate plutonium and titanium ore deposits or manually rebuild ore processing recipes.
    • Closes GTNH#24516
  • #6630 MTEHatchOutputME: corrected overflow logic to use isAllowed() check instead of canStore() for proper fluid handling in no-voiding mode. - @hinyb
    • Fixed: ME Output Hatch voiding fluids in no-voiding mode, fluid voiding with multiple overflow outputs
    • Closes GTNH#24384, GTNH#24617
  • #6629 TileEntityModulePumpGui: corrected button offset calculation during scroll operations. - @Luca-Guettinger
    • Fixed: Space Pump button offset after scrolling
  • #6627 GTRendererBlock, GTRendererCasing, and SBRWorldContext: corrected useInventoryTint flag reset logic to ensure the default true state is properly maintained after rendering. - @tiffit
    • Fixed: useInventoryTint flag not resetting properly, grass block color rendering in hand
    • Closes GTNH#24132
  • #6624 MTETreeFarm and MTETreeFarmLegacy: fixed sapling type filtering logic. ForestryTreeHandler refactored to prevent double-registration. RecipeLoaderTreeFarm simplified to avoid duplicate recipe population. - @Yoshy2002
    • Removed: legacy duplicate recipe loading
    • Fixed: trees farms not recognizing all saplings, NEI showing duplicate tree farm recipes
  • #6621 MTEIndustrialApiary: one-line fix to correct secondary bee effect acceleration logic. - @thehoblit
    • Fixed: Industrial Apiary accelerated secondary bee effect
  • #6617 MTEExtremeCombustionEngine: efficiency variable no longer persists across world reloads (likely by resetting on load), and efficiency capping logic was added to prevent values exceeding 100%. - @Yoshy2002
    • Fixed: efficiency persisting across reloads, efficiency exceeding 100%
    • Closes GTNH#24576
  • #6616 Fixed solenoid detection in MTEIndustrialForgeHammer by replacing erroneous -1 sentinel value with proper null check, aligning with internal validation logic. - @Yoshy2002
    • Fixed: forgehammer solenoid detection
    • Closes GTNH#24599
  • #6615 Fixed method name typo 'setMatrixElemet' and modified update logic in MTEHatchUncertainty to recalculate immediately on position changes instead of using 16-second refresh interval. - @czqwq
    • Fixed: MatrixElemet typo, 16-second matrix refresh delay
  • #6611 Fixed energy variable usage in MTELargeBoilerBase and MTEPlanetaryGasSiphon where lEUt (loss) was incorrectly used instead of mEUt (output); cleaned up unnecessary changes in MTELargeTurbineBase. - @Ruling-0
    • Fixed: energy mismatch in boiler, energy mismatch in planetary gas siphon
  • #6607 Modified RecipeLoaderGenericChem to ensure crafted milling ball outputs include proper NBT specification tags matching the intended material specification. - @czqwq
    • Fixed: milling ball NBT consistency, missing NBT specs on crafted balls
  • #6593 Modified MTELargeHadronCollider to roll particle ID per output hatch instead of once for all hatches, and to only roll particles compatible with active modules; added 'Machine is off' message for portable scanner. - @ham-corp
    • Added: 'Machine is off' message in portable scanner
    • Fixed: LHC particle output rolling, module-incompatible particle generation
    • Closes GTNH#24039
  • #6592 Modified GTCopiedBlockTextureRender to disable CTM rendering in inventory mode and fall back to default IIcon, allowing CTM blocks to use non-CTM inventory textures. - @Ruling-0
    • Fixed: CTM block inventory rendering, BEC casing inventory appearance
  • #6590 Added server-compatible GUI state checks to JetpackBehavior and CreativeFlightBehavior; added fall damage immunity to creative flight module and registered new MilkInfusionBehavior in MechArmorAugmentRegistries. - @Spaghetti-OberNub
    • Added: fall damage immunity to creative flight, MilkInfusionBehavior, GUI state checking for jetpack
    • Fixed: jetpack movement in GUI, fall damage during creative descent
  • #6588 Fixed MTEMegaChemicalReactor to validate exotic energy hatch tier against the hatch glass tier, aligning with behavior used in MABS (Multi-Ampere Beam System). - @chrombread
    • Fixed: exotic hatch tier constraint in MCR
  • #6584 Fixed client-side code path in RedstoneSnifferGui that was attempting to access client-only resources on server, likely involving GUI state or rendering calls. - @Yoshy2002
    • Fixed: Redstone Sniffer server crash
    • Closes GTNH#24528
  • #6583 Modified ore spawning logic in GTWorldgen and WorldgenGTOreLayer to check if ores were actually placed before finalizing vein generation; retries placement if validation fails. - @arisado
    • Fixed: ore veins spawning below y-level with no actual blocks, empty vein generation in Twilight Forest
    • Closes GTNH#23727
  • #6582 Fixed NullPointerException in SingleRecipeCheck when handling recipe-locked machines with chance-based recipe outputs during chunk serialization. - @Yoshy2002
    • Fixed: NPE on chunk save with chanced output recipes
    • Closes GTNH#24545
  • #6579 Removed hardcoded color assignments from tank slot rendering in MTEBasicTankBaseGui and MTEDigitalTankBaseGui, added texture entries to GTGuiTextures for fluid and item tank slots, and added corresponding PNG texture assets. - @Ranzuu
    • Added: fluid tank slot texture, item tank slot texture, theme-aware rendering for tank slots
    • Fixed: invisible tank slot graphics, hardcoded tank slot colors
  • #6573 Fixed type casting issue in MTESteamMultiBlockBase when handling void buses, ensuring proper class type validation. - @tiffit
    • Fixed: Void bus ClassCastException on steam multiblocks
    • Closes GTNH#24526
  • #6571 Added fuelMaxEnergy tracking to MTEBoiler to capture peak energy per burn cycle instead of using hardcoded divisor. Fixed float quantization desync in progress widget. Updated heat bar tooltip to display actual temperature in Celsius. Implemented NBT fallback for save compatibility. - @Eldrinn-Elantey
    • Added: fuelMaxEnergy tracking, Temperature display in heat tooltip
    • Fixed: Boiler fuel indicator accuracy, Progress widget desync, Heat bar visual feedback
  • #6569 Added MUI2 theme widget configuration to MTEDigitalTankBaseGui default display. - @Ranzuu
    • Fixed: Digital tank GUI theme consistency
  • #6567 Added validation to prevent sortStacks from creating items in MTEFilterBase. Modified MTEBuffer and GTUtility to add safety checks preventing item generation during stack sorting. - @Worive
  • #6566 Corrected StructureErrorHighlightRenderer to not call EntityPlayerMP methods on the server. Adjusted method calls in MTEMultiBlockBaseGui to use appropriate side-safe alternatives. - @czqwq
    • Fixed: Client-server method call crash
  • #6564 Added bounds checking in TileEntityModuleMinerGui calculator to prevent array index out of bounds exception when drone selection is empty. - @TheYoingLad
    • Fixed: Space Miner calculator array out of bounds crash
  • #6561 Reverted GUI changes in elevator module classes (Assembler, Miner, Pump) to restore missing functionality. Adjusted TileEntityModuleBase and TTMultiblockBase. - @TheYoingLad
    • Fixed: Space elevator module GUI buttons
    • Closes GTNH#24393
  • #6556 Added input beam validation check to Collider mode (matching Accelerator mode), added NBT persistence for beam stabilizer target rate, and reduced Top Quark catalyst recipe cost from 8x to 1x. - @ham-corp
    • Added: Input validation for LHC Collider mode, Beam stabilizer target rate persistence
    • Fixed: Input beam change during LHC operation, Beam stabilizer settings loss, Top Quark catalyst production imbalance
  • #6553 Modified MTEHatchMaintenance to allow manual insertion of HV circuits and updated the corresponding GUI in MTEHatchMaintenanceGui to handle the interaction correctly. - @tiffit
    • Fixed: HV circuit insertion into auto-maintenance hatch
    • Closes GTNH#24415
  • #6552 Moved Potassium Hydroxide recipe definitions from CoreMod to GregTech's ChemicalRecipes loader. Updated gtnhlanth RecipeLoader to reference the GregTech material instead. - @loenaaaa
    • Added: GregTech Potassium Hydroxide recipes
    • Removed: CoreMod Potassium Hydroxide recipes
    • Fixed: Material system unification for Potassium Hydroxide
  • #6547 Modified MTEElectricImplosionCompressor to accept energy hatches above UMV tier. - @Yoshy2002
    • Fixed: Energy hatch tier acceptance in EIC
    • Closes GTNH#24460
  • #6544 Modified MTEDigitalChestBase to validate item equality before importing, adding proper item comparison checks in the import logic. - @tiffit
  • #6543 Modified MTEHighTempGasCooledReactor rendered casing configuration. - @OTPANNIEXD
    • Fixed: HTGR rendered casing appearance
  • #6542 Modified GTLog to clear the log message buffer when logging is disabled, preventing unbounded list accumulation. - @Alexdoru
    • Fixed: Log message buffer memory leak (~2 MB)
  • #6541 Modified MTEFluidPipe to prevent fluid loss during pipe type changes. - @Nana-Sakura
    • Fixed: Fluid loss during pipe type changes
    • Closes GTNH#24454
  • #6540 Modified RunnableCableUpdate and RunnableMachineUpdate to call blockExists() before accessing block data, preventing repeated loadChunk() calls and associated disk I/O on stale chunk snapshots. - @Luca-Guettinger
    • Fixed: Off-thread chunk loading causing excessive disk I/O and OOM
  • #6525 Modified MTEBasicMachineWithRecipe to properly wire hasInputFluidSlot and hasOutputFluidSlot flags based on machine configuration rather than always showing both, preventing duplicate fluid display in WAILA. - @danyadev
    • Fixed: WAILA fluid duplication for single-slot machines, Steam content visibility in WAILA
    • Closes GTNH#23580
  • #6523 Modified SBRWorldContext and related SBR classes to properly manage world references, removing strong references in ISBRWorldContext and adding cleanup in render implementations. - @Alexdoru
    • Removed: ISBRWorldContext interface
    • Fixed: Memory leak caused by retained world references in SBR rendering
  • #6521 Swapped texture files for Bio Circuit Board items (metaitems 106 and 107). - @jude123412
    • Fixed: texture assignment
  • #6518 Added Max Circuit Wrap recipe in ComponentAssemblyLineMiscRecipes and simplified circuit wrap recipe generation logic. - @GDCloudstrike
    • Added: Max Circuit Wrap recipe
    • Fixed: missing Max Circuit Wrap recipe
  • #6509 Modified MTEBeamCrafter voltage check to account for hatch amperage, and added per-tick EU consumption. - @ham-corp
    • Fixed: G8 catalyst crafting, EU consumption
  • #6507 Fixed theme name in GTGuiThemes. - @Ranzuu
    • Fixed: theme name
  • #6505 Modified MTEMultiBlockBase.depleteInput() to aggregate fluid across multiple hatches before depletion, preventing explosion detection false positives. - @54M44R
    • Fixed: multiple input hatch explosion detection, fluid hatch aggregation
    • Closes GTNH#19308
  • #6499 Added OrePrefixes assignments to all StoneTypes that were using default prefix, preventing overrides in GTOreDictUnificator. - @tiffit
    • Added: OrePrefixes for new StoneTypes
    • Fixed: overworld ore smelting, NEI macerator display, ore dictionary unification
  • #6492 GTBlockOre null-check added for stoneTypes array elements before access. - @tiffit
    • Fixed: GTBlockOre null pointer crash with disabled ore variants
  • #6489 MTEHatchCraftingInputME now overrides getSupportedStackTypes() to return both ITEM_STACK_TYPE and FLUID_STACK_TYPE when supportFluids is true. - @Eldrinn-Elantey
    • Fixed: Crafting Input Buffer fluid pattern highlighting
  • #6486 BaseTileEntity, MTEBufferBaseGui, and MTEHatchSolidifier tooltip delay parameters set to 0. - @ROBERT-PARKOURCIVILIZATIONGOD
    • Fixed: tooltip timing inconsistency
    • Closes GTNH#24332
  • #6484 MTESteamMultiBlockBase now overrides supportsVoidProtection() to return true after inheritance change removed GTPPMultiBlockBase as parent. - @jamiehu427
    • Fixed: Steam Multis void protection toggle
    • Closes GTNH#24376
  • #6482 MetaGeneratedItem01 casing category adjusted; GTPostLoad cauldron recipe set corrected. - @Luca-Guettinger
    • Fixed: Cauldron NEI missing purified dusts, crushed ores, and wheat
    • Closes GTNH#24357
  • #6481 AssemblerRecipes recipe definition adjusted (2-line change). - @UltraProdigy
    • Fixed: Forming Core recipe conflict
    • Closes GTNH#24383
  • #6480 MTESteamCentrifuge texture update logic corrected (1-line change). - @VortexSo4
    • Fixed: Steam Separator texture update on steel variant
    • Closes GTNH#24213
  • #6472 HighTemperatureGasCooledReactorRecipeMapFrontend GUI removed; HTGRLoader recipe processing corrected to apply chances and filter zero-return materials. - @6C-C6
    • Removed: HTGR custom recycle recipe GUI
    • Fixed: HTGR recycle output chances not being respected, HTGR NEI display showing zero-return materials, HTGR NEI chance label positioning
  • #6469 Removed faulty onRightClick logic from MTECokeOven that was improperly handling bucket interactions. - @ROBERT-PARKOURCIVILIZATIONGOD
    • Removed: Coke Oven right-click handler
    • Fixed: Coke Oven creosote spillage on bucket click
    • Closes GTNH#24329
  • #6464 Corrected power generation calculations in MTEExtremeCombustionEngine to produce valid EU output. - @tiffit
    • Fixed: ECE EU generation, Power scanner negative output display
  • #6463 Adjusted platinum sludge processing recipe parameters in PlatinumSludgeOverHaul to restore balance between dust and tiny dust routes. - @Nana-Sakura
    • Fixed: Platinum production tiny dust route balance
    • Closes GTNH#24371
  • #6462 Enhanced MTELargeMolecularAssembler channel loss handler to refresh pattern cache when channel status changes. - @Kogepan229
    • Fixed: LMA pattern updates on channel loss
  • #6461 Corrected EU generation parameters in MTELargeCombustionEngine to properly calculate and output power. - @tiffit
    • Fixed: Large Combustion Engine EU generation
    • Closes GTNH#24354
  • #6460 Added minimum casing limit check in MTEAdvDistillationTower to validate structure integrity before forming. - @Nana-Sakura
    • Fixed: Dangote multiblock structure validation
  • #6453 Updated language strings in MaterialsInit and GregtechConduits for void metal material and pipe naming. - @iouter
    • Fixed: Void Metal Pipe missing name display
  • #6452 Enhanced SingleRecipeCheck to differentiate between non-consumables with/without ore dictionary variants and items not part of the recipe, storing them in the recipe cache. - @54M44R
    • Fixed: Recipe locking being bypassed via non-consumable removal
    • Closes GTNH#17868
  • #6451 Corrected numeric values in CircuitComponent eternity foil generation recipe. - @Auynonymous
    • Fixed: Eternity foil infinite generation exploit
  • #6446 Updated hint number from 2 to 3 in MTEDistillationTower to match actual multiblock structure rules where energy hatches are not permitted at that position. - @ham-corp
    • Fixed: Distillation Tower structure hint text
  • #6443 Re-enabled coal tar output in PyrolyseRecipes and removed orphaned recipe definitions from PyrolyseOven.java and RecipeLoader.java. Consolidated recipe logic into a dedicated handler. - @TotallyNotOndre
    • Removed: Dead pyrolysis recipe code
    • Fixed: Coal tar missing from ICO byproducts
  • #6436 Added discount parameter to MTEMassSolidifier recipe handling. - @54M44R
    • Fixed: Mass Solidifier missing discount
  • #6427 Removed unnecessary entity copy retention in MobEECRecipe, preventing world leak. - @Alexdoru
    • Removed: Entity copy retention
    • Fixed: MobHandlerLoader world memory leak
  • #6420 Refactored ProcessingPlank to properly handle wildcard plank iteration and avoid creating bogus recipe entries. - @Luca-Guettinger
    • Fixed: Wildcard plank iteration creating incorrect Oak Slab recipes
    • Closes GTNH#24154
  • #6418 Added setMaxSinkSlotStackSize integration in MTERegulator and pre-transfer validation in MTEBuffer to enforce stack size limits in the new ItemTransfer API. - @Luca-Guettinger
    • Fixed: Regulator not respecting phantom slot stack size, Chest Buffer ignoring target stack size
    • Closes GTNH#24175, GTNH#24629
  • #6417 Adjusted alignment and tooltip visibility in StatisticsPanel for the Godforge multiblock. - @GDCloudstrike
    • Fixed: Godforge statistics panel header alignment, Godforge statistics tooltip display
  • #6415 Changed a single-line condition in MTEIndustrialChemicalBath structure validation logic. - @czqwq
    • Fixed: Industrial Chemical Bath structure validation
  • #6408 Added hatch type check in MTEIndustrialCentrifuge and MTEIndustrialCentrifugeLegacy to reject heavy mode recipe attempts. - @chrombread
    • Fixed: Heavy mode recipe execution restriction on regular centrifuge
  • #6405 Improved ToolVajra.onItemUse with better synchronization logic to handle both regular block destruction and shift-click tile entity interactions. - @czqwq
    • Fixed: Vajra ghost block desync with proper shift-click support
  • #6403 Reverted changes to ToolVajra.onItemUse due to regression with tile entity drops and shift-click state synchronization. - @Alexdoru
  • #6402 Modified ToolVajra.onItemUse to return true so that the C08PacketPlayerBlockPlacement packet is sent to the server, keeping the block state synchronized. - @czqwq
    • Fixed: Vajra ghost block desynchronization
  • #6398 Added guard in MTEHatchDataItemsInput and MTEHatchWirelessDataItemsInput to prevent GUI from opening for hatches with empty inventory. - @ABKQPO
    • Fixed: Unnecessary GUI access for zero-slot reception connectors
  • #6395 Corrected integer overflow in ParallelHelper processingLogic when handling the 16x power increase of heavy mode. - @GDCloudstrike
    • Fixed: Integer overflow in Spinmatron heavy mode processing logic
  • #6393 Corrected recipe output in AssemblerRecipes to charge the proper EU cost for iron bars crafting. - @TotallyNotOndre
    • Fixed: Iron bars assembler recipe cost
  • #6392 Added hatch validation logic to MTEIndustrialMixer to limit multiamp hatches to 1 and prevent coexistence with other energy hatches. - @Yoshy2002
    • Fixed: Industrial Mixer multiamp hatch restriction enforcement
  • #6388 Removed an overzealous sanity check in ItemGTToolbox that assumed all toolboxes had NBT data; optimizations in #6335 exposed this assumption. - @querns
    • Removed: NBT sanity check in toolbox inventory opening
    • Fixed: Crash when opening toolbox with no NBT data
  • #6382 Corrected text string in MTEChestBuffer description. - @Alexdoru
    • Fixed: Chest Buffer description wording
  • #6379 Corrected texture index mapping in BlockCasings9 for Primitive Wooden Casing. - @slprime
    • Fixed: Primitive Wooden Casing texture display
  • #6374 Corrected casing reference in MTEPlanetaryGasSiphon structure definition. - @Yoshy2002
    • Fixed: Siphon structure using incorrect rebolted casing
  • #6365 Fixed getUpdateData() encoding in MTEPreciseAssembler by adding a +4 offset to casingTier, mapping values -3 to 3 into the safe range 1-7 to prevent texture lookup failures from the bitmasking operation in client synchronization. - @czqwq
    • Fixed: Transparent controller texture with Imprecise casings, Never-formed state texture corruption
  • #6361 Added missing background texture/styling element to MTEVoidMinerBaseGui button panel in ModularUI2. - @TheYoingLad
    • Fixed: Missing button backgrounds in void miner filter panel
  • #6357 Corrects background rendering for hovered buttons and slots in multiblock GUIs. Fixes chemical reactor fluid slot overlay drawing order. Updates ModularUI2 dependency to latest version. - @TheYoingLad
    • Fixed: Hovered button/slot background rendering, Chemical reactor fluid slot overlay
  • #6352 Fixes MTEHatchInputDebug null check for fluid drain operations. Some multis use an alternate drain method that can return null; now properly checks before accessing the drained fluid amount. - @kuba6000
    • Fixed: NullPointerException in HTGR on debug input hatch usage
  • #6333 Added null check and error message in ItemDroneRemoteInterface, added language entry for error notification. - @TheYoingLad
    • Added: error message for broken drone link
    • Fixed: Drone Remote Interface NPE crash
  • #6332 Unified behavior logic in BaseMetaTileEntity for hammer and jackhammer tools. - @UltraProdigy
    • Fixed: inconsistent tool behavior
  • #6331 Corrected shape slot logic in MTEHatchExtrusionGui and MTEHatchExtrusion to properly display ghost shapes without consuming actual shapes, added safety check in GTUtility. - @TheYoingLad
    • Added: shape validation utility
    • Fixed: extrusion bus ghost shape bug
    • Closes GTNH#24034
  • #6330 Modified FissionFuelLoader to restrict recipes to multiblock-only and added single-block centrifuge recipe variants, established pattern for other multis in GTRecipeConstants. - @UltraProdigy
    • Added: single-block centrifuge fuel rod recipes, recipe filtering pattern
    • Removed: duplicate centrifuge outputs
    • Fixed: fuel rod double-processing bug
  • #6324 Added null check in MTEHatchCokeOven.getAccessibleSlotsFromSide to prevent NPE. - @Vlamonster
    • Fixed: NPE in getAccessibleSlotsFromSide
  • #6321 Updated ModularUI2 dependency, fixed widget sync issues in PatternSlot, ToolboxInventoryGui, and other GUI classes, removed unnecessary state management. - @TheYoingLad
    • Removed: duplicate state management
    • Fixed: single-block machine GUI interaction
    • Closes GTNH#24201
  • #6316 Added fallback logic in ToolboxSelectGuiFactory to search hotbar for a toolbox when simultaneous scroll and middle-click causes slot desynchronization. - @querns
    • Added: hotbar toolbox fallback logic
    • Fixed: toolbox GUI desync with sensitive scrollwheels
  • #6315 Corrected label assignments in CoverAdvancedRedstoneTransmitterBase, RowHelper, and related GUI classes. - @kuba6000
    • Fixed: inverted direction labels in covers
  • #6311 Fixed incorrect dimension information in MTEOilDrillBase tooltip. - @Yoshy2002
    • Fixed: Oil Drill tooltip accuracy
  • #6307 Changed autoplace value in MTENanochipAssemblyComplex from 25 to 500. - @chrombread
    • Fixed: Nanochip Assembly Complex autoplace rate
  • #6296 Fixed memory leak in GTChunkManager.java (added 11 lines, removed 3) and GTProxy.java (added 2 lines) related to chunk tracking and pollution tracking. Prevents unbounded growth of internal caches. - @Alexdoru
    • Fixed: chunk manager memory leak, pollution system memory leak
  • #6295 Fixed amp calculation in MTEFuelRefineFactory, removed unused explodesOnComponentBreak method. - @Alexdoru
    • Removed: explodesOnComponentBreak method
    • Fixed: fuel refinery amp consumption
  • #6293 Changed MaterialsAlloy.ofFrame from private static final to lazy-loaded in MTEFrothFlotationCell to prevent registration issues. Restored GT++ cell registry behavior. - @Yoshy2002
    • Fixed: GT++ cell registration
  • #6287 Corrected output bus count description in MTEPlasmaForge.java (1 line changed). - @JMan-Zx
    • Fixed: Plasma Forge output bus count description
  • #6285 Corrected typos in MTECleanroom.java, MaterialsInit.java, and MTEIndustrialSifter.java (3 files, 4 lines changed). - @Yoshy2002
    • Fixed: typos
  • #6279 Moved filter message generation to MEFilterBase.java base class and updated localization keys in en_US.lang; simplified MTEHatchOutputMEBase.java logic (6 additions, 12 removals). - @hinyb
    • Added: Centralized filter update message logic in MEFilterBase.java
    • Removed: Redundant message code from MEFilterFluid.java and MEFilterItem.java
  • #6276 Corrected filter update messages in MTEHatchOutputMEBase.java, MEFilterItem.java, and MEFilterFluid.java (2-line changes each). - @TheYoingLad
    • Fixed: Incorrect chat message on ME filter updates, Duplicate message sending
  • #6274 Added 6 missing fluid localization entries to en_US.lang (7 additions, 1 removal). - @iouter
    • Added: Missing fluid localization keys
    • Fixed: Missing fluid translation entries
  • #6273 Corrected max tier overclock calculation in MTETreeFarm.java (1 line changed). - @Nana-Sakura
    • Fixed: Issue #24135: TGS consuming MAX+1 power with UXV dual hatches
    • Closes GTNH#24135
  • #6272 Changed waterAmount, lubricantAmount, parallelFromFluids, parallelFromItems from int to long in MTEIntegratedOreFactory.checkProcessing() and chemicalWash(); updated drain logic to handle multiple hatches and large fluid amounts (61 additions, 14 removals). - @luoyangyuli2001
    • Fixed: Integer overflow causing negative parallel counts, Incorrect fluid consumption
  • #6267 Added glass tier check to MTEMegaBlastFurnace.java energy hatch validation logic (6 additions, 2 removals). - @khaskelbergTAU
    • Added: Glass tier limitation check for energy hatches
    • Fixed: Issue #24123: Mega EBF energy hatch not limited by glass
    • Closes GTNH#24123
  • #6261 Corrected maintenance hatch repair logic in MTEHatchCreativeMaintenance for wall-shared configurations during matter manipulator copying. - @AnsonYeung
    • Fixed: wall-shared auto-taping maintenance hatch repair on copy
  • #6260 Modified Werkstoff.java and WerkstoffLoader.java to prevent fluids from defaulting to 1123K when temperature is not properly set. - @Nana-Sakura
    • Fixed: bartworks fluid temperature defaults
    • Closes GTNH#24112
  • #6253 Corrected typo in LoaderMetaTileEntities.java registration for UV Chem Reactor. - @UltraProdigy
    • Fixed: typo in UV Chem Reactor registration
  • #6245 Updated EyeOfHarmonyRecipe and EyeOfHarmonyRecipeStorage to include all outputs from void miners; added dimension support for Ross128b(a) and Everglades in DimensionDef; refactored RecipeGenOre.java to consolidate ore generation logic. - @SST-03
    • Added: Ross128b(a) and Everglades EoH recipe support
    • Removed: duplicate ore generation code
    • Fixed: DD Eye output parity with void miners, Netherrack dust output on Everglades
    • Closes GTNH#19935, GTNH#20962
  • #6239 Reworked MTEBeamCrafter to buffer particles and consume from that buffer rather than checking inputs each tick. Fixed NPE on recipes with probability, clamped progress contribution, removed particle ID checks from recipe logic, and added input/fluid/beam scaling with parallels. Recipes adjusted with minor noble gas additions and EU cost unchanged. - @ham-corp
    • Added: particle buffer system, NBT save/load for beamcrafter, parallels for inputs, fluids, beams, GUI and tooltip updates
    • Removed: particle ID checks from recipe validation
    • Fixed: NPE on probability recipes, major bug where input was read every tick instead of once
    • Migration: Existing Beamcrafter recipes with probability will require recrafting; particle input rates and recipe timings have changed.
  • #6238 Corrected localization text in gregtech en_US.lang for input hatch ME autopull. - @Eldrinn-Elantey
    • Fixed: Input hatch ME autopull description text
  • #6237 Corrected localization key spelling in gtnhintergalactic en_US.lang. - @Eldrinn-Elantey
    • Fixed: Mining Drone MK-XII name typo
  • #6231 Updated MetaBaseItem, MetaGeneratedItem, MTEHatchInput, MTEHatchMultiInput, ItemMachines, and related classes to properly handle tooltip localization keys; appended damage values as fallback for tooltip keys when new and old machines share the same name. - @iouter
    • Added: Damage-based tooltip key fallback system, MTEHatchMultiInput tooltip support
    • Removed: Obsolete tooltip references from MTEHatchInput
    • Fixed: Missing machine tooltips, Incorrect hatch tooltip localization
  • #6228 Enhanced GTUtility and MTEDigitalTankBase to prevent fluid duplication during fill/drain operations; also refactored some methods during debugging. - @danyadev
  • #6227 Added proper fill/drain interface implementation to GT++ tank implementations, updated ItemMachines and MTEDigitalTankBase, and added interface methods to IFluidContainerItemMetaTile. - @Kogepan229
    • Added: Fill/drain interface methods to IFluidContainerItemMetaTile
    • Fixed: Fill/drain for GT++ tanks
  • #6224 Deleted redundant dust-to-block compression recipes for granite that were overridden by dust-to-plate recipes, which already handle the same recipe path. - @UltraProdigy
    • Removed: Granite dust-to-block compression recipes
    • Fixed: Recipe path conflicts for granite compression
  • #6222 Corrected a compilation issue in the Froth Flotation Cell multi-block machine. - @Alexdoru
    • Fixed: Build compilation error
  • #6221 Removed 94 unused localization keys from gregtech en_US.lang that were orphaned during PR #6206. - @Eldrinn-Elantey
    • Removed: 94 unused localization keys
    • Fixed: Stale localization entries
  • #6219 Corrected FluidGT6 definition for GTPP Plasma fluid naming. - @iouter
    • Fixed: Plasma fluid display name in GTPP
  • #6217 Removed duplicate localization keys from bartworks, goodgenerator, and gregtech language files. - @iouter
    • Removed: Redundant tooltip entries
    • Fixed: Duplicate localization keys
  • #6214 Changed MaterialsAlloy to reference GregTech's TungstenCarbide directly instead of creating a new material with a modified DefaultLocalName, which was causing component nullification. - @iouter
    • Fixed: Null components in Tungsten Carbide GTPP
  • #6213 Adjusted UUM recipe generation durations and updated initial static value to 3200 in MachineStats and MTEMassfabricator. - @loenaaaa
    • Fixed: inconsistent Mass Fabricator durations
    • Closes GTNH#23956
  • #6210 Corrected constructor method name across multiple files referencing Industrial Thermal Centrifuge. - @Yoshy2002
  • #6209 Corrected output count in TTRecipeAdder.java for Research Station recipes. - @UltraProdigy
    • Fixed: Research Station output count
  • #6208 Disabled autogen flag for Molten Magnetic Fluid in MaterialsInit.java and LoaderGTBlockFluid.java. - @UltraProdigy
    • Fixed: unwanted fluid autogeneration
  • #6205 Added getLocalizedName override in GTFluid.java to attempt StatCollector translation of fluid unlocalized names with fallback. - @Eldrinn-Elantey
    • Added: fluid name localization override
    • Fixed: fluid localization support
  • #6198 Corrected canFillFluid/canAcceptFluid method calls, replaced tryFillAE with dumpFluid, added storage contents exposure in getInfoData and getWailaAdvancedBody across output ME hatch classes. - @hinyb
    • Added: storage info exposure
    • Removed: obsolete tryFillAE method
    • Fixed: fluid acceptance checks, recipe start conditions, Distillation Tower voiding
    • Closes GTNH#24032, GTNH#24052
  • #6197 Added super.addInformation call to preserve base tooltip, replaced StatCollector translation calls with GTUtility.translate in ItemGTToolbox.java. - @Eldrinn-Elantey
    • Removed: unused StatCollector import
    • Fixed: missing base tooltip content, inconsistent localization
  • #6194 Removed vestigial hardcoded lens filter in GTRecipeConstants.java that was preventing ore dictionary lens variants. - @LooseEthics
    • Removed: hardcoded lens filter
    • Fixed: Naq Wafer lens compatibility
    • Closes GTNH#23897
  • #6193 Restricted lastInputTick update to storePartial method, corrected canFillFluid/canAcceptFluid call sites, moved markDirty to addToCache in MTEHatchOutputMEBase. - @hinyb
    • Fixed: lastInputTick timing, fluid check reversal, cache data persistence
    • Closes GTNH#24011
  • #6192 Added defensive null checks, inventory scanning fallback for moved toolboxes, removed unused code, and fixed MUI2 console warning in toolbox-related classes. - @querns
    • Added: inventory scan fallback for relocated toolbox
    • Removed: unused code
    • Fixed: item duplication/voiding with hotbar keys, NPE during operation and rendering, MUI2 radial menu warning
    • Closes GTNH#24003
  • #6191 Adjusted symmetry check in MTEMegaIndustrialApiary.java for tall flower blocks. - @Sanduhr32
    • Fixed: flower block symmetry validation
    • Migration: Rebuild the Mega Apiary: three symmetry fixes (#6153, #6183, #6191) changed its structure layout, and the shape in this release is the final one.
  • #6186 Added laser hatch compatibility text to MTEPlasmaForge tooltip. - @ham-corp
    • Added: laser hatch compatibility note to DTPF tooltip
    • Closes GTNH#23987
  • #6185 Corrected success rate calculation and beam input validation in MTEBeamCrafter to check correct hatch positions and apply proper recipe success conditions. - @ham-corp
    • Fixed: Beam Crafter 100% success rate exploit, incorrect beam input handling
    • Closes GTNH#24005
  • #6183 Corrected one character in MTEMegaIndustrialApiary structure definition. - @Sanduhr32
    • Fixed: structure symmetry typo in Mega Industrial Apiary
  • #6181 Re-added Thermal Centrifuge recipes in RecipesMachinesMulti and fixed tooltip method call in MTEIndustrialThermalCentrifugeLegacy. - @Yoshy2002
    • Fixed: missing Thermal Centrifuge recipes, incorrect tooltip method
  • #6180 Removed obsolete catalyst items and duplicate language keys from miscutils lang files. - @UltraProdigy
    • Removed: deprecated QFT catalyst lang entries, duplicate key
    • Fixed: dead items appearing in NEI
  • #6179 Fixed 3 spelling errors in MTEUniversalChemicalFuelEngine tooltip. - @Ranzuu
    • Fixed: spelling errors in UCFE tooltip
    • Closes GTNH#23916
  • #6172 Modified beam-crafting recipes for LHC T3 and T4 modules in BeamCrafterRecipes. - @ham-corp
    • Fixed: unintended expensive materials in LHC module recipes
  • #6165 Corrected power calculation in MTEIntegratedOreFactory to handle multiple hatches properly. - @VortexSo4
    • Fixed: power calculation with multiple hatches in IOF
  • #6156 Updated MTEIntegratedOreFactory to properly apply recipe time values and removed batch mode logic that was interfering with recipe duration. - @Alexdoru
    • Removed: batch mode from IOF
    • Fixed: IOF not respecting recipe time
  • #6155 Updated scanner info display across MTEBioVat, blast furnaces, antimatter forges/generators, and transformers. Removed MegaMultiBlockBase scanning logic and consolidated GUI implementations. - @evgengoldwar
    • Removed: redundant MegaMultiBlockBase scanning code
    • Fixed: scanner info display
  • #6154 Updated RecipeGenRecycling to use vVoltageMultiplier from material tier instead of fixed values for fluid extractor recipe generation. - @Eldrinn-Elantey
    • Fixed: incorrect mid-tier recycling recipes
    • Closes GTNH#23965
  • #6153 Changed single parameter in MTEMegaIndustrialApiary structure definition to enforce symmetry. - @Sanduhr32
    • Fixed: asymmetric Mega Apiary structure
  • #6143 Added energy permission check (line 146) in GenerateNodeMap to prevent cable energy connections through covers that block energy transfer. - @couref
    • Fixed: cables bypassing energy-blocking covers
    • Closes GTNH#23931
  • #6140 Simplified batch mode logic in MTEOilDrillInfinite, removed hacks, added fluid quantity checks for disabled voiding mode, and aligned tooltip behavior with other multis. - @boubou19
    • Added: fluid quantity checks for batched fluids
    • Removed: batch mode indicator from tooltip, unused batch mode code in oil drill variants
    • Fixed: batch mode not respecting voiding settings
  • #6138 Added null checks for key input handlers on server side; removed client-only KeyboardUtils method and replaced with server-safe implementations. - @DarkShadow44
    • Removed: client-only KeyboardUtils class
    • Fixed: Personal Healing Nanobooster and other GT++ server crashes
    • Closes GTNH#23902
  • #6135 Corrected recipe definition in CentrifugeRecipes from incorrect input to proper oil cell recipe. - @czqwq
    • Fixed: centrifuge oil cell recipe
  • #6134 Corrected language key and format string handling in MTEMultiBlockBase status display; updated language files with proper formatting for parameterized strings. - @evgengoldwar
    • Fixed: translated format strings rendering incorrectly, Cleanroom Controller status display
    • Closes GTNH#23615, GTNH#23943
  • #6131 Added rounding to EntityRenderer vector calculations to prevent float precision issues from producing non-orthogonal axes. - @Ruling-0
    • Fixed: EEC rotation bug from floating-point precision
  • #6130 Increased priority of GT5U mouse event handler so GT pick block event fires before AE2 ME Pick Block event, allowing Toolbox and spray can handlers to execute. - @querns
    • Fixed: Toolbox and spray can clobbering from AE2 ME Pick Block handler
  • #6129 Added dimension tracking to GTPowerfailRenderer; added null UUID checks in packet handlers; corrected OpenGL state setup for alert rendering. - @RecursivePineapple
    • Fixed: powerfail server crashes on invalid UUIDs, powerfail notifications in wrong dimension, alert rendering blending issues
    • Closes GTNH#22547
  • #6128 Implemented simulatedSink method in AEInventoryItemIO to satisfy AE2 integration interface requirements from GTNHLib PR#241. - @hiroscho
    • Added: simulatedSink implementation in AEInventoryItemIO
    • Fixed: missing AE2 interface implementation
  • #6127 Refactored AveragePerTickCounter calculation logic to properly compute average values for incomplete ticks, fixing OpenComputers getSensorInformation() function results on GT machines. - @hinyb
    • Fixed: OpenComputer sensor information returning wrong values
    • Closes GTNH#23081
  • #6125 Corrected EntityRenderer GL matrix mode call; changed invalid GL_MODELVIEW_MATRIX flag to proper GL_MODELVIEW constant to prevent incorrect entity rotation. - @Ruling-0
    • Fixed: EEC entity renderer rotation from incorrect GL matrix mode
  • #6116 Fixed color channel offset calculation in MTEHatch and related input hatch implementations; refactored color channel display logic from MTEHatchInput and MTEHatchInputBus into MTEHatch base class. - @Alexdoru
    • Removed: redundant color channel logic from input hatch subclasses
    • Fixed: WAILA flickering and incorrect color channel display on input hatches
  • #6115 Removed delay configuration from MTEBasicMachineWithRecipeBaseGui for fluid hatch tooltips. - @chrombread
    • Removed: tooltip delay from fluid I/O slots
    • Fixed: fluid slot tooltip showing after unintended delay
    • Closes GTNH#23893
  • #6112 Corrected OrePrefixes enum to properly classify three plastic materials and updated corresponding lang file. - @Alexdoru
    • Fixed: plastic material tooltip form labels
  • #6109 Reverted ItemVolumetricFlaskGui to legacy implementation and restored full ItemVolumetricFlask logic (removed MUI2 UI code, restored 69 lines of original handling). - @chrombread
    • Removed: MUI2 Volumetric Flask GUI (95 lines)
    • Fixed: volumetric flask server/niche case issues
  • #6107 Corrected language key spacing in ItemHealingDevice and lang files (en_US, ru_RU) to place spaces between keys rather than at start. - @Yoshy2002
    • Fixed: tooltip text formatting
  • #6106 Corrected shutdown reason localization key in ShutDownReasonRegistry and corresponding language file entry. - @Yoshy2002
    • Fixed: shutdown reason spelling and localization
    • Closes GTNH#23904
  • #6102 Added Muffler Hatch check in MTEImplosionCompressor.checkMachine(). - @Spaghetti-OberNub
    • Fixed: Implosion Compressor structure check for Muffler Hatch
    • Closes GTNH#23685
  • #6101 Added sneak check to BehaviourWireCutter to prevent unintended cell format parsing when interacting with ME storage devices. - @UltraProdigy
    • Fixed: Wirecutter cell format parsing on ME Chests and Drives
  • #6099 Disabled shift transfer on item_inv group slot in MTETieredMachineBlockBaseGui. - @Caedis
    • Fixed: shift transfer exploit on inventory slot
  • #6094 Modified checkRatio in MTEDissolutionTank to iterate over all input FluidStacks instead of assuming exactly 2, and flipped division logic to avoid int truncation errors. - @LooseEthics
    • Fixed: Dissolution Tank multi-hatch input parsing, fluid ratio calculation precision
    • Closes GTNH#22482
  • #6093 Removed duplicate recipe registration in ProcessingDust by consolidating to NewHorizonsCoreMod. - @UltraProdigy
    • Removed: duplicate stone plate compression recipe
    • Fixed: duplicate recipe registration
  • #6092 Single-line fix in MTEPurificationUnitDegasser output calculation logic. - @SST-03
    • Fixed: Purification Unit Degasser excess Grade 7 Water output
    • Closes GTNH#23827
  • #6091 Corrected recipe check logic in CommonWidgets circuit slot widget (2-line change). - @chrombread
    • Fixed: circuit slot recipe check
  • #6089 Moved Chronic Singularity recipe loading from postload to a later phase in ResearchStationAssemblyLine.java and removed unnecessary SGCraft load requirement. - @UltraProdigy
    • Removed: SGCraft dependency
    • Fixed: Stargate Plate recipe
    • Closes GTNH#23815
  • #6087 Added validation in GTRecipeBuilder.java to warn if ore dictionary keys resolve to empty item lists. - @Caedis
    • Fixed: Ore dictionary validation
  • #6083 Updated MTEOreDrillingPlantBase.java to display correct chunk and block range in the MBM tooltip. - @UltraProdigy
    • Fixed: MBM working area tooltip
  • #6071 Replaced GT mod's isClient() with ModularUI2's client detection method in MTEBasicMachineWithRecipeBaseGui.java, which was incorrectly returning true on servers. - @chrombread
    • Fixed: Fluid slot recipe requests on server
  • #6069 Updated MTEResearchStation.java and en_US.lang to include previously undocumented hatches in the structure tooltip. - @C0bra5
    • Added: Hatch documentation in tooltip
    • Fixed: Research Station structure tooltip completeness
  • #6068 Fixed chest cover UI state handling in CoverChestGui.java to properly reset state between cover interactions on multi-cover blocks. - @glektarssza
    • Fixed: Chest cover multi-attachment interaction
  • #6058 Replaced onSlotChanged override with proper change listeners in MTEBasicMachineWithRecipeBaseGui for fluid and circuit slot updates. - @Caedis
    • Fixed: single-block fluid and circuit slots responding sporadically
    • Closes GTNH#23749
  • #6057 Made sync value nullable in MTEResearchStationGui to handle cases where it may not be initialized. - @SST-03
    • Fixed: Research Station GUI crash after Daily 399
    • Closes GTNH#23725
  • #6056 Updated MTESolarTower to accept projector multiblock variant and corrected tier display logic in recipe handler. - @riggzh
    • Fixed: Solar Tower cannot use projector build, Solar Tower NEI only showing tier 1
  • #6054 Updated NBT deserialization in MTEHatchOutputBusME and MTEHatchOutputME to properly load cached data. - @lc-1337
    • Fixed: ME output machines not loading cache from NBT
  • #6053 Re-added distilled water input handling in MTEAlgaePondBase. - @GDCloudstrike
    • Fixed: Algae Pond distilled water support regression
  • #6051 Updated status check in MTEPurificationPlant to evaluate both idle and active states, as online state was split after PR #5835. - @Yoshy2002
    • Fixed: Waterline recipes running only every other cycle
    • Closes GTNH#23736
  • #6049 Corrected coil light rendering in MTEIndustrialMolecularTransformer. - @NeutronSelector
    • Fixed: Molecular Transformer coil light rendering
    • Closes GTNH#23713
  • #6048 Added change listeners to all machine slots (item I/O, fluid I/O, circuit, special) in MTEBasicMachineWithRecipeBaseGui to trigger recipe validation. - @chrombread
    • Added: slot change listeners for recipe checks
    • Fixed: recipe checks not triggering on slot changes in ModularUI2
  • #6046 Corrected button logic in MTELapotronicSuperCapacitorgui to properly handle rebalancing. - @kx08
    • Fixed: LSC rebalance button non-functional
    • Closes GTNH#23181
  • #6045 Corrected status check in MTEPurificationPlant to use the correct state constant, allowing recipes to run when conditions are met. - @Spicierspace153
    • Fixed: Waterline machine not turning on to run recipes
    • Closes GTNH#23726
  • #6040 Modified GTPowerfailRenderer to keep rendering at close distances (changed distance check logic). - @Alexdoru
    • Fixed: powerfail renderer not displaying when player is close to machine
  • #6036 Replaced MACHINE_CASING_GEARBOX_TITANIUM.png texture file. - @seventh-june
  • #6031 Corrected item reference in MixerRecipes for cropsNH weed extractor. - @C0bra5
    • Fixed: cropsNH weed extractor item reference typo
  • #6027 Adjusted MTEMassSolidifier NEI priority to list LV fluid solidifier variant first in recipe display. - @chrombread
  • #6026 Added missing source orb to fake recipe for data orb duplication in GTPostLoad. - @C0bra5
    • Fixed: Data orb duplication recipe
  • #6024 Modified MTENeutronActivator to limit chunk checks up to current height when machine is already formed, preventing StructureLib from returning true on unloaded chunks and causing infinite loops. - @Worive
    • Fixed: Neutron Activator server hang
    • Closes GTNH#23032
  • #6021 Corrected hatch orientations in preview, added slider for essentia filter tier, and fixed preview bug where tier 3 and 4 built the multiblock with incorrect length. Essentia output hatch could not be added due to StructureLib limitations. - @TheYoingLad
    • Added: Essentia filter tier slider
    • Fixed: LES preview tier 3/4 length bug
    • Closes GTNH#17962
  • #6020 Corrected MaskList CPU mask uses value from 10 to 100, making Beamline production output more balanced relative to HILE. - @UltraProdigy
  • #6017 Corrected random number generation in TileEntityModuleMiner from nextInt(x) [0, x-1] to proper [1, x] range calculation for output chances. - @SST-03
    • Fixed: incorrect chance calculation bug, Clay and Cheese inaccessible from Space Elevator
    • Closes GTNH#23509
  • #6015 Changed tier label in LoaderMetaTileEntities and GregtechEnergyBuffer from MAX to UHV. - @UltraProdigy
    • Fixed: incorrect MAX tier label
  • #6014 Added data persistence to MTEHatchOutputMEBase to prevent stored item loss during server restarts. - @lc-1337
    • Fixed: ME Output Bus/Hatch content voiding on restart
    • Closes GTNH#23631
  • #6009 Updated MTEIndustrialElectrolyzer build-block tooltip text to reflect current structure specification. - @seventh-june
    • Fixed: incorrect build-block tooltip
    • Closes GTNH#23668
  • #6007 Corrected pixel data in redstone_on.png GUI overlay texture. - @Yoshy2002
    • Fixed: redstone_on texture pixel errors
  • #6003 Adjusted MTEOpticalOrganizerModule structure definition by 1 character to fix asymmetry. - @Yoshy2002
    • Fixed: Optical Organizer asymmetric structure
  • #5999 Adjusted MTEHatchInputBusME UI layout by 5 pixels and changed tier display from MAX to EV in tooltip. - @chrombread
    • Fixed: UI alignment in Stocking Bus, incorrect tier label
  • #5998 Corrected MTEExtremeIndustrialGreenhouse and EIGIC2Bucket classes to properly handle IC2 mode initialization and operation. - @kuba6000
    • Fixed: IC2 mode in new EIG structure
  • #5993 Fixed logic in MTENanochipAssemblyComplex laser drain routine to check module charge state before draining. - @NotAPenguin0
    • Fixed: NAC laser always fully draining
  • #5989 Added necessary overrides for singleRecipeLocking, batchMode, voidProtection, and inputSeparation in MTEIndustrialPackager and MTEIndustrialWireMill. - @VortexSo4
    • Added: multiblock method overrides for feature control
    • Fixed: missing overrides in refactored structure rework multis
  • #5985 Fixed ConcurrentModificationException in MTENanochipAssemblyComplex by using Iterator API instead of Map.remove during iteration. - @NotAPenguin0
    • Fixed: ConcurrentModificationException during multi-pattern conversion
  • #5983 Fixed crash in MTESpargeTower by correcting structure validation logic. - @seventh-june
    • Fixed: Sparge Tower crash
  • #5981 Updated MTEForgeOfGods and GodforgeMath to cap fuel factors to prevent integer overflow, fixed FuelConfigPanel layout issues causing icon cutoff and text overflow. - @GDCloudstrike
    • Fixed: Godforge fuel overflow from large consumption factors, fuel config panel visual cutoff issues
    • Closes GTNH#23518
  • #5980 Modified MTENanochipAssemblyModuleBase to use separate simulated and actual ParallelHelper objects: one for determining EU/t cost without consuming items, and one for actual recipe execution. - @chrombread
    • Fixed: item voiding when NAC modules lack sufficient power
  • #5979 Added crash prevention in MTELargeMolecularAssembler when interacting with Pattern Provider, added temporary OVERLAY_HATCH_PATTERN_PROVIDER texture and updated MTEHatchPatternProvider with localization. - @asquared31415
    • Added: Pattern Provider Hatch placeholder texture, crash prevention for LMA/Pattern Provider interaction
    • Fixed: crash in Interface Terminal with Pattern Provider
  • #5977 Updated ParallelHelper insufficientVoltage to display recipe.mEUt (raw cost) instead of tRecipeEUt (discounted cost) to match internal voltage validation logic. - @youkoaona
    • Fixed: misleading voltage requirement display in error messages
  • #5975 Updated MTEIndustrialElectrolyzer structure validation to properly accept input hatches and perform muffler requirement checks. - @chrombread
    • Fixed: input hatches rejected by Industrial Electrolyzer, missing muffler validation
  • #5973 Lowered harvest level requirement in BlockFrameBox to iron/bronze level. - @noah-cope-dev
    • Fixed: Wooden frame boxes requiring steel-tier tools to harvest
    • Closes GTNH#20105
  • #5970 Refactored MTESplitterModule to iterate directly over input stacks instead of using a Map-based collection that was combining identical items from different sources, preventing item duplication and crashes. - @NotAPenguin0
    • Fixed: item duplication in splitter module with multi-colored inputs, crashes from map-based item collection
  • #5969 Updated tooltip text in MTEThermalBoiler and ThermalBoilerFrontend to mention filter requirement. - @noah-cope-dev
    • Fixed: Missing filter requirement mention in tooltip
    • Closes GTNH#23488
  • #5967 Corrected recipe in RecipesMachinesMulti to use correct Eglin steel form for Sturdy Printer Casing crafting. - @UltraProdigy
    • Fixed: Impossible Eglin steel recipe requirement
  • #5962 Fixed IndexOutOfBoundsException in MTEElectricImplosionCompressor.resetPiston by preventing negative index access to immutable list. - @Alexdoru
    • Fixed: Index out of bounds exception in Electric Implosion Compressor piston reset
  • #5961 Modified MTENanochipAssemblyModuleBase to separate recipe validation (simulated) from recipe execution (consumed), and optimized autoplace budget calculation. - @NotAPenguin0
    • Fixed: Items consumed during recipe check instead of after execution, autoplace budget causing excessive right-click requirement
  • #5960 Fixed NPE in GTShapelessRecipe.matches by caching the result of getStackInSlot(i) in a local variable, preventing null reference issues when slot contents change between calls during onCraftMatrixChanged events. - @noah-cope-dev
    • Fixed: Null pointer exception in NEI autocrafting with Tinkers Construct crafting stations
    • Closes GTNH#23618
  • #5959 Corrected activity flag logic in MTEBasicMachine to mark machine as active for single-tick recipes instead of skipping the active state. - @Sinerum
    • Fixed: single-block 1-tick recipe activity display
    • Closes GTNH#23594
  • #5955 Moved isTalkModeActive state from MTENanochipAssemblyComplex to MTENanochipAssemblyComplexGui, making it per-player per-session instead of synced across all players. - @purebluez
    • Fixed: multiplayer talk mode desync
  • #5954 Removed incorrect override of hasMaintenance() from MTENanochipAssemblyModuleBase; the correct method getDefaultHasMaintenance() was already being overridden. - @FourIsTheNumber
    • Removed: incorrect hasMaintenance override
    • Fixed: NAC module operation, progressTime increment, output updates
  • #5944 Added tier-skipping enablement in MTEMegaChemicalReactor after it was unintentionally lost during refactoring from the base class. - @chrombread
    • Fixed: MCR tier-skipping
  • #5943 Modified MTENeutroniumCompressor to permit input hatch placement, enabling processing of fluid singularities. - @UltraProdigy
    • Fixed: neutronium compressor input support
  • #5942 Modified MTEHatchEnergyTunnelGui to trigger structure check when the amp limit changes on a non-running machine, ensuring multiblock validates new power constraints. - @TheYoingLad
  • #5940 Removed the energy hatch limit restriction in MTEMegaChemicalReactor, allowing up to 8 energy hatches as originally intended. - @chrombread
    • Removed: energy hatch limit restriction
    • Fixed: MCR energy hatch limitation
  • #5934 Corrected the lastInputTick == tickCounter check in MTEHatchOutputMEBase to only validate when actually inserting items, preventing false overflow triggers. - @hinyb
    • Fixed: ME output hatch overflow protection, cell filter update on swap
  • #5932 Corrected GUI text widget synchronization in multiple drone centre GUI files, refactored ProductionRecord class to simplify storage logic, and added StatsBundle for tracking. Changes fix desync issues affecting drone operations. - @RealSilverMoon
    • Added: StatsBundle class
    • Fixed: drone centre GUI display, production record handling
  • #5929 Fixes overlay texture application in MTEEyeOfHarmony from 1024 to 1024 + 16 + 12, and migrates TecTech BA0 casings to Casings.java. - @chrombread
    • Added: TecTech BA0 casings to Casings.java
    • Fixed: Eye of Harmony hatch overlay texture rendering
  • #5926 Adds a return statement in MTEVoidMinerBase.onLeftClick() to prevent unintended NBT data modification when not using a data stick. - @purebluez
    • Fixed: Void Miner accidental NBT data overwriting on left-click
  • #5920 Adds type validation in MTEHatchCraftingInputME to detect and reject patterns containing unsupported types. - @Kogepan229
    • Fixed: Unsupported pattern type handling in ME Crafting Input Hatch
  • #5919 Adds pattern craftability check in MTELargeMolecularAssembler before processing. - @Kogepan229
    • Fixed: LMA crash loop when processing unsupported patterns
    • Closes GTNH#23543
  • #5917 Reverts all Fluxed Electrum texture files from main texture back to overlay-based rendering. - @Auynonymous
    • Fixed: Fluxed Electrum texture regression introduced in #5913
  • #5916 Adds input validation to CoverFluidRegulatorGui to filter the number input field to only accept numbers, preventing null evaluation results. - @chrombread
    • Fixed: Fluid Regulator GUI crash on invalid number input
    • Closes GTNH#23554
  • #5907 Updates RecipeGenRecycling to apply GT-style duration/EU logic for macerator recycling, adds RECYCLE metadata support for Arc Furnace, applies correct Fluid Extractor EU/t calculation, and adjusts recycle log voltage output to computed power usage. - @Eldrinn-Elantey
    • Added: maceratorRecycling recipe category, Arc Furnace recycling generation with RECYCLE metadata, GT-style Fluid Extractor EU/t calculation
    • Fixed: GT++ recycling recipe alignment with GregTech standards, Fluid Extractor power calculation accuracy
  • #5879 Removed erroneous drawNEIOverlayForOutput call from drawFluidOverlay method in BacterialVatFrontend. - @ABKQPO
    • Removed: Incorrect NEI overlay call
    • Fixed: NEI overlay display in Bacterial Vat UI
  • #5878 Added null check for event subscription metadata in GTClient initialization to prevent NPE in FML's ASMEventHandler when registering event listeners. - @Alexdoru
    • Fixed: Event subscription NPE crash on client load
  • #5876 Fixed operator in TooltipHelper.java: changed >= to > in MAX tier check so only tiers strictly greater than MAX display the error string. - @Ruling-0
    • Fixed: MAX tier tooltip incorrectly showing error
  • #5874 Added survival build cost implementation to MTEImplosionCompressor.java (+10 lines) and MTEVacuumFreezer.java (+10 lines), which was missed when implementing PR #5812. - @VortexSo4
    • Fixed: Missing survival build implementation in two multiblocks
  • #5872 Changed HatchElement in AntimatterGenerator.java from ExoticEnergy to ExoticDynamo. This hatch should be a laser source (Dynamo) not a laser target (Energy). - @harrynull
    • Fixed: SLAM incorrect hatch element type
  • #5871 Fixed logic error in MetaBaseItem.java where formula visibility check used '||' preventing other tooltips from displaying. Added 15 new Client config options for granular tooltip control. Updated ItemFluidDisplay and related tooltip rendering. - @evgengoldwar
    • Added: 15 new tooltip configuration options
    • Fixed: Hiding formula also hiding other tooltips
  • #5867 Updated MaterialsInjector.java to remove reliance on deprecated configProps and configIDs fields; now uses the newer TinkersGregworks implementation. Reduces config version requirements. - @danyadev
    • Removed: configProps and configIDs references
    • Fixed: Server crash with outdated TinkersGregworks.cfg
  • #5861 Re-added GTPacketSetConfigurationCircuit and GTPacketSetMold packets that were removed in PR #5683, but now only used in MUI1 contexts. CRIB and Solidifier Hatch (MUI1) require these packets for sync; Extrusion Hatch (MUI2) does not. Updated BaseTileEntity and MTEHatchSolidifier to send packets appropriately. - @zyf051520
    • Added: GTPacketSetConfigurationCircuit, GTPacketSetMold
    • Fixed: Ghost circuits selection menu broken in singleblock machines
    • Closes GTNH#23432
  • #5858 Removed deprecated ModularUI2 method calls across 20+ GUI files and fixed phantom item slot synchronization. Updated dependencies.gradle and reverted parts of PR #5683 to restore packet-based sync for MUI1 contexts (CRIB, Solidifier Hatch, etc.). Also renamed MTECokeOvenGui for consistency. - @chrombread
    • Fixed: Cannot open certain interfaces in latest daily, Phantom item slot issues
    • Closes GTNH#23466
  • #5855 Fixed NPE in MTECokeOven by correcting a null check or reference (single line change in src/main/java/gregtech/common/tileentities/machines/multi/MTECokeOven.java). - @RealSilverMoon
    • Fixed: NPE in Coke Oven logging
  • #5854 Modified GTItemStack.hashCode() to use stable item identifiers instead of remappable item IDs. Converted GTHashSet to actual HashSet implementation, removing workaround code that was doing expensive map recalculation on world load/unload. - @danyadev
    • Removed: Unstable item ID-based hashCode, GTHashSet custom implementation with remapping workaround, ItemStack map recalculation logic
    • Fixed: GTItemStack hashCode stability after item ID remapping, Cover registration issues in old worlds, ItemStack-keyed map lookups after world reload
    • Closes GTNH#23462
  • #5851 Updated BlockSheetMetal to use renderpass code copied from ore blocks that properly handle alpha overlays, and removed renderAsNormalBlock setting which was unnecessary and caused redstone issues. - @RecursivePineapple
    • Removed: renderAsNormalBlock setting from sheet metal
    • Fixed: Alpha overlay rendering for sheet metal, Redstone conductance behavior on sheet metal
  • #5843 Removed 'Minimum' label from MTEIndustrialCokeOven heat casing count description. - @UltraProdigy
    • Removed: 'Minimum' label from ICO heat casing requirement
    • Fixed: Industrial Coke Oven tooltip text
    • Closes GTNH#23445
  • #5832 Extracted black hole close logic into a dedicated method in MTEBlackHoleCompressor that correctly resets the spacetime cost and triggers render scale updates, eliminating previous duplicated logic. - @FourIsTheNumber
    • Removed: Duplicated black hole close logic
    • Fixed: Spacetime cost not resetting on natural black hole closure
    • Closes GTNH#23438
  • #5816 ToolScrewdriver texture coordinates or icon references adjusted to display correct screwdriver appearance. - @jude123412
    • Fixed: Screwdriver texture rendering across all tiers
  • #5814 Removed unused GTRecipe.optimizeRecipe() calls from multiple recipe loaders and utility classes; cleaned up RecipeMap and GTRecipe API. - @StaffiX
    • Removed: GTRecipe.optimizeRecipe() calls
    • Fixed: Recipe optimizer conflicts in recipe loading
  • #5801 MTEHatchInputBusME decrStackSize() method now correctly handles slot 1 extraction when recipe processing shifts slot indices. - @serenibyss
    • Fixed: Stocking bus not draining from slot 1 during recipe processing
  • #5796 BlockDimensionDisplay now checks the fixBottomFaceUV mixin option from HodgePodge and conditionally flips UV coordinates on the bottom face. Texture files for dimension display blocks were also reoriented to match. - @leagris
    • Fixed: Flipped bottom face textures on dimension displays
  • #5795 Corrected spelling errors in ItemAlgaeBase, goodgenerator lang file, gregtech lang file, and miscutils lang file. - @Yoshy2002
    • Fixed: Typos in mod language strings
  • #5794 Adjusted RecipeMaps cauldron recipe tab configuration for proper NEI alignment. - @Ranzuu
    • Fixed: Cauldron recipe tab NEI layout
    • Closes GTNH#23369
  • #5791 Updated PurificationUnitLaserFrontend recipe map configuration and uvtreatment.png progress bar texture. - @Ranzuu
    • Fixed: High Energy Laser Treatment NEI page alignment
    • Closes GTNH#23370
  • #5789 Added null-check in MTECokeOven right-click creosote extraction to prevent NullPointerException when no creosote is available. - @loenaaaa
    • Fixed: NullPointerException from empty coke oven extraction
  • #5787 Moved GL overlay rendering logic from GuiContainerRotorBlock to texture asset GUIPrimitiveKUBox.png. - @Ranzuu
    • Removed: GL overlay code from GuiContainerRotorBlock
  • #5784 Changed GTUtility method calls to use older commons-lang3 API compatible with thermos environments. - @Florexiz
    • Fixed: Thermos server crash from commons-lang3 incompatibility
  • #5782 Added recipe counter update to MTEAdvAssLine batch processing. - @StaffiX
    • Fixed: Advanced Assembly Line batch mode recipe counter
  • #5779 Added null-safety improvements in TileEntityHeatedWaterPump and added utility method to GTUtility for safer operations. - @Taskeren
    • Added: Null-safety utility method in GTUtility
    • Fixed: Crash in TileEntityHeatedWaterPump
  • #5778 Corrected efficiency persistence in MTEDieselEngine and MTELargeSemifluidGenerator by preserving efficiency state during NBT serialization. Updated tooltips for consistency. - @Yoshy2002
    • Fixed: Large Combustion Engine efficiency reset on world reload, Large Semifluid Generator efficiency reset on world reload
    • Closes GTNH#20271
  • #5777 Set canning machine meta tile entities to use fluid handler configuration in LoaderMetaTileEntities. - @FourIsTheNumber
    • Fixed: Canning machine fluid handling
  • #5771 Replaced NBT-based imprint identification with CircuitImprint enum tied to meta-IDs. Created migration recipe (DeprecatedPartsMigrationRecipe) to convert old items. Refactored CALImprintRecipe, CircuitImprintLoader, and added CircuitPartsItem to handle new system. - @boubou19
    • Added: CircuitImprint enum, CircuitPartsItem meta item implementation, DeprecatedPartsMigrationRecipe for old imprint conversion, id_imprint NBT field in CAL
    • Removed: BWMetaItems circuit generation (328 lines), CircuitData class, CircuitImprintLoader legacy implementation (275 lines)
    • Fixed: CAL imprint migration from old NBT format, CAL functionality in daily builds
    • Migration: CAL imprints and sliced circuits are now NBT-independent; place an old item in a crafting grid to convert it to the new meta-id linked version, and re-do any AE2 patterns or autocrafting that produced or consumed the old NBT imprints, since the new ones are different item metas.
    • Closes GTNH#23396
  • #5767 Added neighbor update calls in MetaTileEntity rotation handler to refresh laser/data pipe connections. - @kx08
    • Fixed: Laser hatch pipe connection persistence after rotation, Data hatch pipe connection persistence after rotation
    • Closes GTNH#20301
  • #5766 Added neighbor update notification in ToolVajra right-click block break handler. - @michaeldoylecs
    • Fixed: Vajra not notifying neighbors on right-click block break
  • #5760 Updated BlockMachines redstone connection logic to recognize pipe covers as valid redstone connectors. - @Engineer12798
    • Fixed: redstone not connecting to pipe covers
  • #5759 Corrected GTMusicSystem and MTEBetterJukebox disc resource name handling to properly replicate vanilla record logic without double-prepending. - @eigenraven
  • #5758 Removed unnecessary string prepending in MTEBetterJukebox that was breaking modded music disc resource lookups. - @eigenraven
    • Fixed: modded music disc support in jukebox
  • #5756 Corrected recipe definitions in ThaumcraftRecipes to request the correct item count (1 instead of 2) for infusion recipes. - @UltraProdigy
    • Fixed: incorrect item count in Thaumcraft recipes
  • #5754 Extended MTEAdvEBF tooltip to include discount information similar to other discount-based machines. - @UltraProdigy
    • Added: discount info to Volcani tooltip
    • Fixed: missing discount tooltip on Advanced EBF
  • #5753 Corrected rotation logic in TileEntityDysonSwarm and TileEntityPlanetaryGasSiphon texture handling to properly apply rotation transformations. - @serenibyss
    • Fixed: textures not rotating properly on Dyson and gas siphon
  • #5746 Modified TileEntityHeatedWaterPump to allow container extraction and updated GTUtility slot management logic to handle mixed stackable/non-stackable items correctly. - @Taskeren
    • Fixed: buckets eaten by Stirling water pump
    • Closes GTNH#23282
  • #5743 Modified IGregtechWailaProvider interface and GregtechBlockWailaDataProvider to properly differentiate between coil types, including glowing variants, and return the correct recipe metadata. - @danyadev
    • Fixed: incorrect coil recipe shown on glowing coils
  • #5733 Fixed GTNEIDefaultHandler padding in recipe display rendering. - @slprime
    • Fixed: Recipe handler display alignment
  • #5725 Added missing conflict resolution in ProcessingStone for basalt plate cutting recipe. - @UltraProdigy
    • Fixed: Basalt plate cutting recipe conflict
  • #5715 Fixed recipe loader in gtPlusPlus to re-enable 128 and 512 parallel graphene production recipes. - @UltraProdigy
    • Fixed: Missing EV and IV graphene recipes
    • Closes GTNH#23205
  • #5713 Fixed counter accumulation logic in MTEAdvAssLine and world reload persistence in MTEMultiBlockBase parallel tracking. - @StaffiX
    • Fixed: AAL only counting last recipe, Parallel count resetting on world reload
  • #5712 Updated foundry fake module cost loader to display correct hatch requirement for hypercooler recipes. - @chrombread
    • Fixed: Hypercooler recipe showing wrong required component
  • #5708 Added null checks or conditionals for Galacticraft availability in TileEntityDysonSwarm to handle missing optional dependency gracefully. - @UltraProdigy
    • Fixed: Dyson controller crash in dev environment without Galacticraft
    • Closes GTNH#23173
  • #5705 Updated FoundryModule enum display names and localization to match casing terminology and pairing bonus references. - @chrombread
    • Fixed: Module name consistency
  • #5701 Added dispenser block to NEI preview list in MTEWindmill while keeping hologram as clay-only for auto-placement. - @UltraProdigy
    • Added: Dispenser to Windmill NEI preview
    • Fixed: Windmill NEI preview
    • Closes GTNH#22956
  • #5693 Added hatch validity filtering in MTELargerTurbineBase.getInfoData to prevent null pointer exceptions from invalid hatches. - @ABKQPO
    • Fixed: Larger Turbine crash on panel query
  • #5691 Updated tier label from 3 to 4 in MTEHatchInputBusME, MTEHatchOutputBusME, and MTEHatchOutputBusME tooltip methods. - @chrombread
    • Fixed: ME bus tier information
  • #5689 Added fluid extraction recipes for furnace-smeltable GT++ dusts in RecipeGenRecycling, excluding materials requiring ABS/EBF. - @UltraProdigy
    • Added: Fluid extraction recipes for GT++ alloy dusts
    • Fixed: GT++ dust recycling
    • Closes GTNH#24202
  • #5686 Removed redundant input hatch tier validation in MTEAlgaePondBase following PR #5608 recipe changes. - @UltraProdigy
    • Removed: Algae Pond input hatch tier check
    • Fixed: Algae Pond hatch logic
  • #5680 Added input separation toggle flag and configuration option to MTEExoFoundry. - @chrombread
    • Added: Input separation toggle option
    • Fixed: Input separation configurability
  • #5679 Removed inefficient per-slot validation loop and replaced with field-based tracking. Simplified mask acceptance logic while maintaining single-type population in usage slots. Reduced inventory capacity and fixed MTEHatchExtrusion slot numbering bug. - @RecursivePineapple
    • Removed: Exponential slot scanning in focus bus
    • Fixed: Focus input bus performance, MTEHatchExtrusion slot numbering
  • #5671 Added null-safety check in MachineRecipes.java when accessing Galacticraft integration. - @danyadev
    • Fixed: Crash when NHCoreMod loaded without Galacticraft
  • #5663 Corrected recipe parameters in ChemicalRecipes.java that were altered during PR #4279. - @chochem
    • Fixed: Styrene butadiene recipe
  • #5659 Updated the rocket pollution mixin to apply pollution only once per second rather than every game tick. - @wlhlm
    • Fixed: Rocket pollution multiplied by 20
    • Closes GTNH#23141
  • #5657 Removed legacy tinting code from GTMetaItemX32 that was incorrectly applying colors to Lithium, Cadmium, and Sodium batteries. - @serenibyss
    • Removed: Legacy material tinting logic
    • Fixed: Incorrect battery item tints
  • #5655 Added Promethium Plasma to MaterialsInit without requiring a cell container. - @chochem
    • Added: Promethium Plasma (no-cell variant)
    • Fixed: Missing Promethium Plasma variant
    • Closes GTNH#23107
  • #5654 Disabled chemical formula generation for aqua regia in WerkstoffLoader. - @chochem
    • Removed: Aqua regia chemical formula
    • Fixed: Incorrect aqua regia chemical composition
  • #5653 Modified tooltip text in MTEIndustrialLaserEngraver to reference all upper-tier laser sources. - @Yoshy2002
    • Fixed: Inaccurate tooltip information
    • Closes GTNH#21168
  • #5644 Corrected a single-line recipe definition in RecipesMachinesMulti. - @Ableytner
    • Fixed: Steam hatch recipe
  • #5642 Updated DetravCreativeTab to include missing localization and changed the creative tab icon. - @Worive
    • Added: Tab localization for Detrav Scanner
    • Fixed: Incorrect tab name in creative tab
    • Closes GTNH#21351
  • #5639 Added a new method to GTBlockOre to enable fortune application for all ore variants, not just small ores, allowing the Bound Pickaxe and other tools to properly apply fortune. - @Miklebe
    • Added: Fortune compatibility method for all GT ores
    • Fixed: Fortune enchantment not working on regular GT ores
  • #5638 Moved ore registration from post-init to a pre-init phase in RecipesRareEarthProcessing and GTPPEverglades to avoid timing conflicts during world loading. - @chrombread
    • Fixed: Crash from ore definition in post-init
  • #5637 Created MultiblockRockBreakerFrontend NEI handler, added recipe map to GTPPRecipeMaps, updated NEI config and language files. - @Faotik
    • Added: Boldarnator dedicated NEI page, MultiblockRockBreakerFrontend handler
    • Removed: Inline Boldarnator recipe display logic
    • Fixed: Boldarnator circuit requirements display
    • Closes GTNH#22199
  • #5633 Updated item references in RecipesGregTech, RecipesMachines, RecipesMachinesMulti, and GregtechItemList; removed unused interface IGregtechItemContainer. - @serenibyss
    • Removed: IGregtechItemContainer interface
    • Fixed: GT++ multiblock controller recipes
    • Closes GTNH#23105
  • #5632 Changed pump item references in RecipesMachinesTiered tank recipes from oil pumps to electric pumps. - @chochem
    • Fixed: Tank recipe pump requirements
  • #5631 Updated steam gauge calculation in MTEBasicMachine to account for the 2:1 compression ratio used internally for steam storage. - @chochem
    • Fixed: Steam gauge displaying incorrect values
    • Closes GTNH#23102
  • #5629 Fixed tag operation in MaterialsInit from addTag to removeTag to prevent duplicate Netherite molten variant. - @chochem
    • Removed: Molten Netherite material
    • Fixed: Netherite tag registration
  • #5620 Added flower blacklist to EIGFlowerBucket class. - @C0bra5
    • Fixed: Botania flower exploitation in EIG
  • #5619 Added null check to prevent crash in MTEHatchCraftingInputME highlight function. - @Kogepan229
    • Fixed: Interface Terminal crib highlight crash
    • Closes GTNH#22536
  • #5615 Added proper validation checks in MetaGeneratedItemX32, MetaGeneratedItem99, and GTMetaItemX32 to prevent unintended material lookups using modulo arithmetic without ID range validation. - @danyadev
    • Fixed: Material flavor text appearing on wrong items
  • #5614 Changed color rendering constant in MTEPreciseAssembler. - @chrombread
    • Fixed: Precise Assembler tooltip color
  • #5613 Fixed tooltip size reference in MTELatex to use correct BBB size constant. - @chrombread
    • Fixed: Latex multiblock tooltip display
  • #5610 Fixed turbine texture orientation in MTEAirFilterBase across all 3 tiers. - @GDCloudstrike
    • Fixed: Electric Air Filter turbine texture visibility
  • #5608 Rewrote MTEAlgaePondBase with new tier initialization and water detection. Created RecipeLoaderAlgaePond for RA2 recipe integration. Added CasingTier enum, AlgaePondFrontend recipe map, and GTStructureUtility methods. Updated GTRecipeConstants. - @boubou19
    • Added: AlgaePondFrontend recipe map, RecipeLoaderAlgaePond, CasingTier enum, GTStructureUtility tier checking methods, Algae pond NEI handler, Tier information in scanner display
    • Removed: Recipe duration buffs/nerfs
    • Fixed: Algae pond hatch tier mismatches, Sterile casing requirement display, Algae pond texture in world
    • Migration: The Algae Pond floor now needs at least 75 machine casings, up from 64, and that applies to the old controller you already have standing. The floor has only 80 usable positions and hatches do not count, so a pond with more than five hatches or buses unforms on load; take the extras out or rebuild it. Parallels also drop from 2 to 1. Both controllers are called Algae Farm in game.
    • Closes GTNH#21644
  • #5606 Removed gate preventing redstone conduction in BlockCasings5 heating coil blocks. - @danyadev
    • Removed: Redstone conduction block in BlockCasings5
    • Fixed: Heating coils redstone conduction, Multiblock redstone control via coil blocks
    • Closes GTNH#20455, GTNH#21742
  • #5602 Moved tryConsumeDrillingFluid call outside iterator loop in MTEOreDrillingPlantBase to consume fluid once per layer, not per block. - @Spicierspace153
    • Fixed: Ore Drilling Plant excessive drilling fluid consumption
  • #5599 Added IDualInputHatchWithPattern interface and mode tracking to MTEHatchCraftingInputME and MTEHatchCraftingInputSlave. Updated ProcessingLogic to handle recipe cache invalidation on mode changes. - @zyf051520
    • Added: IDualInputHatchWithPattern interface
    • Fixed: Multi-mode multiblock crash with CRIB, Recipe cache corruption on mode switch
  • #5594 Added TextureSet entries, updated FluidUtils texture lookup, and added PNG assets for hypogen block and fluid textures including animation metadata. - @serenibyss
    • Added: Hypogen block textures (block1-6, frameGt variants), Molten hypogen fluid texture, Plasma hypogen fluid texture
    • Fixed: Molten hypogen missing texture, Hypogen block texture display
    • Closes GTNH#22967
  • #5592 Removed local SimpleItemIO implementation and integrated gtnhlib version. Updated MTEDigitalChestBase and MTEInfiniteItemHolder to use the external library implementation. - @hiroscho
    • Removed: Local SimpleItemIO implementation
    • Fixed: Quantum chest simulatedSink behavior
  • #5586 Corrected recipe parameter in AssemblyLine.java for Stargate recipe that was being incorrectly modified by EFR integration. - @serenibyss
    • Fixed: excessive infusion cost gating Stargate recipe
  • #5585 Added power state reset logic in MTEPurificationPlant after power failure to prevent unintended overconsumption. - @kx08
    • Fixed: Waterline excessive power usage after powerfail
    • Closes GTNH#22951
  • #5575 Bumped dependency version in dependencies.gradle. - @UltraProdigy
    • Fixed: structure preview issues
  • #5574 Changed default NBT flag handling in MTEHatchCraftingInputME to default Show Pattern to enabled when NBT is absent. - @ABKQPO
    • Fixed: AE cribs hidden by default in interface terminal
    • Closes GTNH#23034
  • #5572 Adjusted background layer rendering order in GTNEIDefaultHandler by 1 position. - @slprime
    • Fixed: NEI background positioning
  • #5569 Modified MTEHatchInputDebug drain logic to apply filtering constraints when removing fluids, preventing inappropriate fluid extraction. - @chrombread
    • Fixed: debug hatch not respecting filtered fluid stacks
  • #5566 Applied same material stats definition and duplicate mass removal for Tantalum Hafnium Carbide as PR #5565 to the 2.8 maintenance branch. - @UltraProdigy
    • Removed: duplicate mass value
    • Fixed: unbalanced Tantalum Hafnium Carbide tool properties in 2.8.4
  • #5565 Defined material stats for Tantalum Hafnium Carbide in WerkstoffLoader.java that were previously missing, and removed duplicate mass configuration entries. - @UltraProdigy
    • Removed: duplicate mass value
    • Fixed: unbalanced Tantalum Hafnium Carbide tool properties
  • #5564 Changed hardcoded incorrect chemical formula strings in WerkstoffLoader.java to use '?' placeholders for materials with unknown or overly complicated compositions, reverting broken formulas from PR #4156. - @chochem
    • Fixed: incorrect chembalance calculations for platinum-line materials
  • #5563 Added server-side check in MTEPurificationUnitBase to only send water level message on server, preventing duplicate chat output. - @Spicierspace153
    • Fixed: water line data stick duplicate chat messages
  • #5562 Corrected material tint application in TextureSet rendering logic, removed redundant custom texture/color handling in GT++ item classes, fixed material icon set definitions for materials missing outline textures, cleaned up GT++ iconset definitions. - @serenibyss
    • Removed: dead GT++ custom texture code
    • Fixed: material overlay tint application, missing outline textures for Hypogen and Nuclear materials
  • #5555 Added server-side check in GTStructureUtility.hint() to prevent calling hint on frame blocks on dedicated servers. - @chochem
    • Fixed: side check crash when hint called on frame blocks
  • #5549 Corrected logic error in GTPostLoad cauldron recipe initialization that was causing dailies to crash. - @chochem
    • Fixed: Cauldron NEI recipe crash
  • #5543 Refactored block/tile entity rendering pipeline; removed separate BlockDrone, BlockNanoForgeRenderer, BlockWormholeRender classes and consolidated to unified renderer; fixed frustum culling for drone rendering and frame-rate independent laser positioning; improved blade rotation smoothness. - @YamiKami-Sama
    • Removed: BlockDrone class, BlockNanoForgeRenderer class, BlockWormholeRender class
    • Fixed: HIL laser acceleration with high FPS, HIL laser disappearance at close range, drone rendering outside camera frustum, blade rotation smoothness
  • #5541 Added tooltip binding to heat bar widget in MTEBoilerGui to display heat level information to players. - @Spicierspace153
    • Added: heat bar tooltip
    • Fixed: steam machine heat bar usability
  • #5536 Corrected tooltip math calculations in LINAC, Source Chamber, Synchrotron, and Target Chamber beamline components. - @Ruling-0
  • #5532 Changed executor service to lazy on-demand initialization in RunnableMachineUpdate instead of eager initialization during FMLServerStartingEvent, preventing race condition with Galacticraft. - @DarkShadow44
    • Fixed: Galacticraft startup crash
  • #5531 Corrected progress calculation in WerkstoffLoader and simplified CLSCompat material loading progress logic. - @DarkShadow44
    • Fixed: Werkstoff loading progress display
  • #5528 Applied same single-character fix as #5527 to 2.8.x version. - @UltraProdigy
    • Fixed: Industrial Arc Furnace WAILA mode display
  • #5527 Corrected single character in MTEIndustrialArcFurnace affecting WAILA tooltip rendering. - @UltraProdigy
    • Fixed: Industrial Arc Furnace WAILA mode display
  • #5524 Applied same achievement text string corrections as #5523 to the 2.8.x version. - @chochem
    • Fixed: achievement text localization
  • #5523 Corrected 11 achievement text entries in en_US.lang following up from prior localization PRs. - @chochem
    • Fixed: achievement text localization
  • #5521 Added missing item consumption logic in MTEResearchStation to handle holder destruction. - @ABKQPO
    • Fixed: Research Station item consumption on holder destruction
  • #5518 Removed secondary material definition for rubber in OrePrefixes, preventing cables from yielding rubber when macerated. - @UltraProdigy
    • Removed: rubber cable maceration secondary output
    • Fixed: rubber duplication exploit
  • #5517 Cleaned up GTCapesLoader by removing unused names method and correcting UUID regex pattern. - @glowredman
    • Removed: Unused names method
    • Fixed: UUID regex validation
  • #5514 Corrected tooltip text in MTEMultiSolidifier describing parallel recipe execution. - @StaffiX
    • Fixed: Incorrect parallel description in Fluid Shaper tooltip
  • #5512 Cherry-picked revert of PR #5308 in NetheriteRecipes to maintain version 2.8 behavior. - @UltraProdigy
  • #5509 Updated bee definition in GTBeeDefinition to rename a duplicate bee entry without breaking world compatibility. - @SST-03
    • Fixed: Duplicate Essentia Bee entries
    • Closes GTNH#22746
  • #5507 Corrected logic in MTEDigitalChestBase to prevent NPE introduced by PR #5500. - @Caedis
    • Fixed: NPE in Digital Chest base
  • #5504 Changed default shape check flag to false in MTEElectricImplosionCompressor to prevent premature structure validation. - @ABKQPO
    • Fixed: Block duplication in Electric Implosion Compressor
  • #5503 Added maintenance enable check in MTELargerTurbineBase.doRandomMaintenanceDamage() override before applying maintenance issues. - @NovanOfLowat
    • Fixed: Unfixable maintenance issues with maintenance disabled
    • Closes GTNH#22642
  • #5501 Refactored fluid handling logic in MTEChamberCentrifuge stocking hatch to eliminate duplication vulnerability. - @chrombread
    • Fixed: Fluid duplication with spinmatron/centrifuge
  • #5500 Bug fixes in MetaTileEntity.java, MTEDigitalChestBase.java, and CoverTeslaCoil.java addressing various edge cases and logic errors. - @Glease
    • Fixed: Multiple MetaTileEntity edge cases, Digital Chest issues, Tesla Coil cover problems
  • #5497 Enhanced GTAchievements to dynamically compute column count, added 278 missing English language entries, and added debug logging for missing localization keys. - @boubou19
    • Added: Achievement localization entries for en_US, Debug logging for missing achievement names
    • Fixed: Unlocalised achievement entries, Off-screen achievements in grid
  • #5493 Modified getCraftingResult methods in GTShapedRecipe and GTShapelessRecipe to check if a crafting component is a tool before using its charge level. - @captainjolt
    • Fixed: Electronic items inheriting charge from tools used in crafting
    • Closes GTNH#22348
  • #5488 Changed ~60 recipe instances in ToolLoader to use small aluminium gears instead of titanium gears for MV tier screwdrivers. - @UltraProdigy
    • Fixed: MV screwdriver using wrong gear material
    • Closes GTNH#22745
  • #5485 Updated Assembler recipe in tectech loader to use 4 lenses for consistency across 4k target hatch recipes. - @UltraProdigy
    • Fixed: 4k target hatch laser ingredient count inconsistency
    • Closes GTNH#22742
  • #5483 Added mining hardness property to BlockCactusCharcoal, BlockCactusCoke, BlockSugarCharcoal, and BlockSugarCoke classes, copying values from Railcraft's BlockCube. - @DarkShadow44
    • Fixed: Instant-break behavior of cactus and sugar fuel blocks
  • #5482 Updated GTNHLib dependency and added CustomGlyphs tracking for glyph replacements (new glyph and original) for use with Angelica's custom font rendering. - @DeathFuel
    • Added: glyph replacement tracking
  • #5477 Added guard in GTRecipeMapUtil.convertCellToFluid() to skip processing when no cells need conversion, preventing duplicate circuit consumption in UniversalChemical builder flow. - @UltraProdigy
    • Fixed: duplicate circuit in LCR recipes
  • #5475 Updated tooltip string in MTEChemicalPlant.java to reflect catalyst housing position line from PR #5429. - @Flakxo
    • Fixed: Chemical Plant catalyst housing description
  • #5473 Switched from instance-based pattern caching to ItemStackMap-based caching in MTELargeMolecularAssembler, since ItemStack instances were not stable for comparison. - @Kogepan229
  • #5467 Fixed integer overflow in OverclockCalculator.calculateMultiplierUnderOneTick() when multiplying large powers of 2 that exceed 31 bits. Now properly handles calculations that would previously overflow to 0 and break parallel machine logic. - @Sopel97
    • Fixed: Helioflare power forge internal error, overclock multiplication overflow
    • Closes GTNH#22375
  • #5465 Added number bounds validation to text input fields in CoverItemMeterGui.java and CoverWirelessItemDetectorGui.java. - @chrombread
    • Added: number bounds validation
    • Fixed: item detector text field crashes
  • #5462 Bumped MUI2 dependency version in dependencies.gradle to include trace size persistence fix. - @chrombread
    • Fixed: PCB trace size persistence
    • Closes GTNH#22706
  • #5459 Added proper @Mixin remapping annotations to 8 pollution-related mixins across multiple mods (BiomesOPlenty, EFR, IC2, Natura, Railcraft, Thaumcraft, TiC) to ensure correct class resolution at runtime. - @ah-OOG-ah
    • Added: Mixin remapping annotations
    • Fixed: Mixin runtime failures
  • #5458 Refactored MTETurboCharger to call parent Charger implementation instead of duplicating code, fixing the missing counter++ increment that prevented WAILA energy display. - @PLASMAchicken
    • Removed: duplicate code in turbocharger
    • Fixed: Turbocharger WAILA stored energy display
    • Closes GTNH#22701
  • #5456 Corrected metadata value in RecipesGregTech.java for sulfuric apatite mix recipe to enable LCR processing. - @chochem
    • Fixed: Sulfuric apatite mix LCR recipe
    • Closes GTNH#22696
  • #5453 Changed IKey.renderer.getFontHeight() to always return standard MC height (9) in GTBaseGuiBuilder.java to avoid state-dependent font height calculations. - @chrombread
    • Fixed: MUI2 title widget layout
  • #5452 Corrected name display logic in ItemAirFilter.java to differentiate between filter tiers. - @6C-C6
    • Fixed: Air filter T2 display name
  • #5451 Removed cell prefix entry in MaterialsInit.java, aligning with New Horizons Core Mod PR #1476. - @chrombread
    • Removed: cell prefix for Radox polymer
    • Fixed: Radox polymer display name
  • #5450 Corrected aspect assignment in OrePrefixes.java following prefix refactoring changes. - @chochem
    • Fixed: Aspect prefix configuration
  • #5449 Added conditional in GTRenderedTexture to skip bottom face UV workaround when Hodgepodge FixesConfig.fixBottomFaceUV is true. - @leagris
    • Fixed: Bottom face UV rendering compatibility
  • #5445 Added radio hatch presence check in MTEBioVat for Sievert-based recipes to prevent execution without required equipment. - @StaffiX
    • Fixed: Bacterial Vat running Sievert recipes without Radio Hatch
    • Closes GTNH#22652
  • #5444 Added exclusions in MaterialsInit to prevent recycling and fluid extraction for Proto and Exotic Halkonite. - @chrombread
    • Removed: Proto Halkonite recycling recipes, Exotic Halkonite recycling recipes
    • Fixed: Proto and Exotic Halkonite recycling
  • #5441 Set Data Stick stack size to 0 in Assembly Line recipe in GTRecipe and related recipe classes to mark as non-consumed. - @Kogepan229
    • Fixed: Data Stick consumption in Assembly Line
  • #5430 Fixed recipe parameters in RecipesMachines.java for Industrial Coke Oven. - @StaffiX
    • Fixed: Industrial Coke Oven recipe output
  • #5428 Removed PowerFail event trigger from soft mallet interaction in BaseMetaTileEntity. - @CN132DAS
    • Removed: PowerFail event on soft mallet right-click
    • Fixed: Soft mallet causing power loss
  • #5425 Enhanced MTEDigitalChestBase to properly handle excess items extracted by conveyors, allowing them to fall through to the internal inventory instead of being lost. - @RecursivePineapple
    • Fixed: Superchest item loss with conveyor extraction
  • #5420 Added long cast in MTELESU.java power calculation to prevent integer overflow when handling large energy values with maximum casing configuration. - @OmdaCZ
    • Fixed: L.E.S.U. power overflow with 107 casings
  • #5419 Added missing initialization and null checks in Godforge loader and ForgeOfGodsUpgrade to prevent crashes during mod loading. - @serenibyss
    • Fixed: pack-load crash after MUI2 port
  • #5418 Updated tooltip strings in AntimatterForge and AntimatterGenerator for accuracy. - @DylanTaylor1
    • Fixed: SLAM cycle time documentation, tooltip grammar
  • #5405 Added null/state checks in MTEHatchInputBusME and MTEHatchInputME to prevent crashes during world load when stocking operations occur. - @lc-1337
    • Fixed: crash on world load with ME stocking
  • #5404 Corrected single-line parameter in MTEUniversalChemicalFuelEngine. - @chrombread
    • Fixed: casing limit constraint
  • #5400 Modified scroll behavior in GhostCircuitSlotWidget to invert direction, aligning with MUI1 circuit slot behavior and removing deprecated method. - @chrombread
    • Removed: old TODO comments
    • Fixed: scrolling inversion for circuit slot
  • #5399 Added null check in MTEHatchCraftingInputME.getItemsForHoloGlasses() to handle cases where ICraftingPatternDetails is null, preventing NPE when calling getCondensedOutputs(). - @Alexdoru
    • Fixed: NPE crash with holo glasses and invalid patterns
  • #5393 Added input validation in RecipeGenMaterialProcessing to filter out recycling recipes with insufficient input materials. - @chochem
    • Fixed: Infinite Indalloy 140 recycling exploit
    • Closes GTNH#22580
  • #5385 Updated RecipesMachines to use GT Coke Oven Controller in Industrial Coke Oven recipe, following up on PR #1442. - @Vlamonster
  • #5384 Re-enabled achievement triggers in GTAchievements on item pickup events. - @Florexiz
    • Added: Achievement triggers on item pickup
    • Fixed: Unobtainable GT achievements
    • Closes GTNH#18712
  • #5379 Modified MTERecipeLoader and AssemblerRecipes to align solar boiler recycling recipes with PR #4717 recipe updates. - @chochem
    • Fixed: Solar boiler recipe consistency
  • #5378 Restored cleanup handler call in GTClient for RenderOverlay that was missing from the original implementation, preventing memory leaks and render corruption. - @Glease
    • Fixed: Render overlay cleanup
  • #5377 Added null check in MTEPCBFactory overclock validation to handle missing cooling tower gracefully. - @guid118
    • Fixed: PCB Factory crash without cooling tower
    • Closes GTNH#22556
  • #5376 Fixed gas reading logic in CellLoader and DustLoader to properly retrieve gas outputs instead of incorrectly calling getGas(0). - @UltraProdigy
    • Fixed: Bartworks electrolysis gas outputs
  • #5375 Second part of singleblock blocking mode fix. Added null checks in GTItemSink and CommonMetaTileEntity to handle ItemIO lifecycle after machine destruction. - @RecursivePineapple
    • Fixed: Crash when replacing input buses, NPE for orphaned ItemIO objects
    • Closes GTNH#22560
  • #5372 Added server-side packet to MTEHatchInputBus to synchronize item sorting and restacking behavior with clients. - @Spicierspace153
    • Added: Server packet for input bus sorting synchronization
    • Fixed: Input buses sorting mode
  • #5370 Added drain prevention to MTEHatchCokeOven and MTECokeOven controller logic. - @Vlamonster
    • Fixed: Coke Oven controller fluid drainage
  • #5369 Modified MTECokeOven to prevent unintended re-enabling and added structure validation warning display. - @Vlamonster
    • Added: Structure warning display for Coke Oven
    • Fixed: Coke Oven re-enabling every 20 ticks
  • #5368 Corrected item insertion logic in MTEBusInputFocus (5 line changes). - @RecursivePineapple
    • Fixed: Focus input bus item insertion
  • #5363 Corrected NBT persistence logic in ItemVolumetricFlaskGui to maintain data during inventory drag operations. - @chrombread
    • Fixed: Item NBT not persisting during drag
  • #5356 Enhanced tooltip text and layout in MTEHighTempGasCooledReactor (7 line changes). - @Pxx500
    • Fixed: HTGR tooltip display
  • #5355 Adjusted recipe info widget layout dimensions and spacing in MTEMultiBlockBaseGui. - @chrombread
    • Fixed: MUI2 recipe info widget layout
  • #5352 Corrected time display calculations in MTELapotronicSuperCapacitorgui and corresponding tile entity to use 5 ticks instead of 300 ticks. - @Spicierspace153
    • Fixed: MUI LSC time display
  • #5350 Added anonymous class override in MTEHatchSteamBusInput to correct slot grid dimensions from 1×1 to 2×2. - @chrombread
    • Added: Correct slot grid dimensions for steam input bus
    • Fixed: Steam input bus slot count
  • #5349 Disabled ModularUI2 rendering for MTEHatchInputBusME until proper MUI2 UI is implemented; reverts to ModularUI1 fallback. - @Spicierspace153
    • Fixed: Stocking bus UI not showing
    • Closes GTNH#22522
  • #5348 Removed custom formula override for diatomite in MaterialsInit, allowing the universal compound formula fix to apply correctly. - @chochem
    • Removed: Custom diatomite formula workaround
    • Fixed: Diatomite chemical formula
  • #5346 Corrected orientation of bolt texture files for crystalline, darksteel, energetic, melodic, spacetime, stellar, and vibrant materials and overlays. - @ABKQPO
  • #5342 Corrected output mode logic in MTEHighTempGasCooledReactor multiblock implementation (4 line changes). - @kuba6000
    • Fixed: HTGR output mode
  • #5340 Reverts MTEIndustrialLaserEngraver change from PR #5339. - @UltraProdigy
    • Removed: Energy hatch limit display from HILE tooltip
  • #5339 Added missing energy hatch limit display to MTEIndustrialLaserEngraver tooltip configuration. - @UltraProdigy
    • Added: Energy hatch limit display to HILE tooltip
    • Fixed: Missing energy hatch limit info in HILE TT
  • #5337 Modified PanelGap height constant in MTEMultiBlockBaseGui to restore visual consistency with MUI1 styling. - @SST-03
    • Fixed: MUI2 visual spacing parity with MUI1
  • #5331 Added player inventory binding check in MTEMultiBlockBaseGui and MTEMultiBlockBase to prevent null reference errors. - @chrombread
    • Fixed: Player inventory binding in MTEBaseGui
  • #5329 Modified CoverBaseGui.java to handle upstream API changes. - @chrombread
    • Fixed: Cover GUI crash from upstream
  • #5326 Fixed language file entry in en_US.lang. - @arch1t3cht
    • Fixed: Spelling in miscutils lang file
  • #5324 Corrected MTEHatchInputDebug drain method to return exact ItemStack instead of imprecise result. - @chrombread
    • Fixed: Debug hatch drain stack precision
  • #5315 Modified PlatinumSludgeOverHaul.java to prevent Bartworks from incorrectly overriding HTGR recipe logic. - @Pxx500
    • Fixed: Bartworks HTGR recipe override
  • #5312 Updated GTUITextures.java to point to the correct renamed UITexture after a refactoring in a Norway PR. - @chrombread
    • Fixed: Dangling texture reference
  • #5311 Added conduit compatibility logic to MTEHatchTFFT to properly handle EnderIO liquid conduit connections, mirroring the connection handling in AbstractLiquidConduit. - @zyf051520
    • Added: Conduit connection compatibility for T.F.F.T hatch
    • Fixed: EnderIO conduit connection to T.F.F.T hatch
  • #5308 Reverted NetheriteRecipes to restore the strontium-positive recipe balance. - @Nockyx
    • Fixed: Strontium recipe balance
  • #5307 Modified GTBlockOre and BlockStonesAbstract to respect stone hardness and sound properties; added generation biome checks to StoneType to prevent ice ore in overworld. - @RecursivePineapple
    • Fixed: Ice ore generating in overworld, Marble ore being instantly breakable, Ore blocks using wrong sound effects
    • Closes GTNH#22012, GTNH#22461
  • #5302 Adjusted power draw logic in MTEDecayWarehouse, increased decay multiplier in IsotopeDecayFrontend and DecayableRecipe, updated recipe tooltips. - @RecursivePineapple
    • Fixed: Decay Warehouse power failure under I/O load, Excessively slow isotope decay rates
    • Closes GTNH#21412, GTNH#22070
  • #5294 Removed or adjusted duplicate recipe definition in RecipeLoaderAgriculturalChem. - @chochem
    • Removed: Conflicting raw animal waste recipe
    • Fixed: Recipe conflict for raw animal waste
  • #5292 Removed duplicate recipe definitions from MaterialsInit and Pulverizer loaders; adjusted MixerRecipes to eliminate overlapping recipe inputs. - @chochem
    • Removed: Conflicting recipe entries in MaterialsInit, Duplicate Pulverizer recipes
    • Fixed: Recipe conflict for solid super fuel, Recipe conflict for endium ore, Recipe conflict for endereye dust, Recipe conflict for cryotheum, Recipe conflict for pyrotheum, Recipe conflict for realgar
  • #5284 Refactored MTEOilDrillBase.java to operate on virtual chunk coordinates rather than loading real Chunk objects, preparing for Hodgepodge PR #615. - @Glease
    • Fixed: chunk loading compatibility
  • #5279 Updated GlassTier.java to include missing fused quartz tiering entries that were lost in PR #4032. - @chochem
    • Fixed: fused quartz glass tier classification
    • Closes GTNH#22406
  • #5278 Removed recipes creating Electrolyzed Water Cell and added recipe compensating for the lost EU output from the removed decomposition step in ElectrolyzerRecipes.java. - @UltraProdigy
    • Removed: Electrolyzed Water Cell recipes
    • Fixed: water electrolysis flow
  • #5267 Updated tier formula call in MTEHatchElementalDataOrbHolder.java; tier 7 was returning an out-of-range index after formula changes. - @chrombread
    • Fixed: index out of bounds error
  • #5266 Changed density of magnetic iron, steel, and neodymium from 51/50 back to 1.0 in MaterialsInit.java, which was causing recipe time calculations to be ~2% slower than intended. - @loenaaaa
    • Fixed: magnetic metal recipe timing
    • Closes GTNH#22384
  • #5263 Removed 2-line change from MTEIndustrialArcFurnace checkMachine logic. - @Glease
    • Fixed: Arc furnace structure check regression
  • #5262 BlastFurnaceRecipes extended with two new recipes: one for raw/block ore using calcite/quicklime, one for dust using carbon. - @loenaaaa
    • Added: EBF garnierite ore recipe, EBF garnierite dust recipe
    • Fixed: Garnierite EBF processing
    • Closes GTNH#22359
  • #5255 MTEPCBFactory checkMachine logic refined to prevent T3 from appearing in hints/creative build for lower tiers. - @BlueWeabo
    • Fixed: PCB Factory tier hint visibility, PCB Factory creative build tier selection
  • #5243 BlockCasings12 now sets the correct harvest level for coke oven bricks; lang file updated to localize recipe category. - @chochem
    • Fixed: Coke oven brick harvest level, Recipe category language key
  • #5241 Corrected NBT handling order in ItemPowerGoggles linking/unlinking code to preserve enchantment tags before network sync. - @serenibyss
    • Fixed: Power Goggles enchantment loss on link/unlink
    • Closes GTNH#22156
  • #5240 Refactored MTEIndustrialApiary to move blockExists check into flowercoords null-check for safer chunk validation. - @serenibyss
    • Fixed: Industrial Apiary server rejoin crash
    • Closes GTNH#22149
  • #5239 Corrected preview texture or rendering offset in MTECokeOven GUI class. - @chrombread
    • Fixed: Coke Oven preview display
  • #5237 Added coil channel handling and/or hologram projector tooltips to EBF, Multi Smelter, Oil Cracker, DTPF, Pyrolyse Oven, HIP Compressor, Multi Alloy Smelter, Utupu-Tanuri, Vulcanus, Digester, Mega Oil Cracker, and Mega Alloy Blast Smelter. - @serenibyss
    • Added: coil channel support for hologram projectors, machine tooltips
    • Fixed: hologram projector channel missing on multiple machines
    • Closes GTNH#22320
  • #5235 Replaced super bus references with regular input busses in RecipesMachines chisel recipes due to super bus deprecation in PR #5213. - @VortexSo4
    • Fixed: chisel recipe compatibility with deprecation
  • #5229 Corrected MTEMultiBlockBase batch mode flag initialization logic regressed in PR #4673. - @VortexSo4
    • Fixed: batch mode incorrectly enabled on incompatible machines
  • #5228 Added format string in GTUtility for seconds-per-item display in MUI2 recipe widget. - @chrombread
    • Fixed: recipe info decimal formatting
  • #5221 Fixed MTEScanner tier-check logic that had not been functioning since PR #3761. - @chochem
    • Fixed: Scanner attempting recipes above its tier
    • Closes GTNH#22315
  • #5216 Corrected pulverizer recipe registration in Pulverizer.java postload recipes. - @chochem
    • Fixed: marble and marble cobblestone macerating into dust
    • Closes GTNH#22172
  • #5215 Updated MTEHighTempGasCooledReactor tooltip generation and added fill level display to the GUI; added corresponding language string. - @Pxx500
    • Fixed: HTGR tooltip display, HTGR fill information visibility
  • #5214 Modified MTELargeEssentiaSmeltery to append scan info instead of blindly replacing, handling variable-length arrays from parent class. - @Glease
    • Fixed: LES info scan crash
  • #5212 Added structure validation checks in MTEIndustrialArcFurnace to enforce hatch placement rules and minimum casing requirements. - @Glease
    • Fixed: Large Arc Furnace structure validation logic
  • #5211 Modified ItemDisplayKey and MTEMultiBlockBaseGui to properly compare NBT data when determining correct recipe outputs. - @FrostyFire1
    • Fixed: Recipe output item display accuracy
  • #5209 Added side check in GTStructureUtility to prevent calling client-sided methods on server-side code when processing frame hints. - @combusterf
    • Fixed: NoSuchMethodError crash with Botanic Horizons wrench on multis
    • Closes GTNH#22132
  • #5205 Corrected BacterialVatFrontend recipe display values. - @chochem
    • Fixed: Bacterial Vat recipe NEI page display
    • Closes GTNH#22232
  • #5203 Modified GTUtility to correctly format and display recipe widget text in the ModularUI base GUI. - @chrombread
    • Fixed: Single recipe widget text display
  • #5201 Replaced client-sided IKey methods with GTUtility.translate() in MTEHatchEnergyDebugGui for server-safe operation. - @chrombread
    • Fixed: Server crash on debug energy hatch UI
  • #5200 Modified CoverFluidRegulatorGui to avoid using IKey.lang inside IKey.dynamic string suppliers on server-side code. - @FrostyFire1
    • Fixed: Server crash on Fluid Regulator UI open
    • Closes GTNH#22274
  • #5198 Added missing OrePrefixes configuration to enable gem-to-dust macerator recipes. - @chochem
    • Fixed: Gem dust macerator recipe availability
    • Closes GTNH#22251
  • #5196 Modified GTUtility.translate() to check if varargs were provided before passing to translateToLocalFormatted(), preventing empty array format errors. - @ChromaPIE
    • Fixed: Format error display in translated text
  • #5193 Replaced foreach loop with new HashSet in GlobalMetricsCoverDatabase to prevent concurrent modification exceptions when destroying multiblocks. - @Worive
    • Fixed: ConcurrentModificationException crash on machine destruction
    • Closes GTNH#19367
  • #5192 Corrected OrePrefixes.java configuration to prevent crashes related to the #5121 refactor. - @chochem
    • Fixed: Game startup crash from OrePrefixes refactor
  • #5191 Corrected rotor definition in OrePrefixes.java following the refactor from enum to class implementation (#5121). - @Vlamonster
    • Fixed: Rotor OrePrefixBuilder configuration
  • #5185 Removed lit furnace oredict registration from LoaderGTOreDictionary to prevent recipe cycling and useless recycling recipe generation. - @chochem
    • Removed: Lit furnace ore dictionary entry
    • Fixed: Lit furnace interfering with steam alloy furnace recipe
  • #5181 Corrected recipe in ChemicalRecipes.java to use consistent 9x ratios for both items and fluids, reordered integrated circuit placement, and reorganized recipe order for better NEI display. - @UltraProdigy
    • Fixed: Inconsistent fluid quantity in chemical recipe
  • #5180 Updated en_US.lang localization string for power_overflow message to be more descriptive. - @SST-03
    • Fixed: Unclear power overflow message
    • Closes GTNH#22211
  • #5178 Re-implemented custom fluid tooltip renderer in MTEDigitalTankBase because voiding mode tanks exceed integer capacity limits and cannot use the standard WAILA renderer. - @SuperSoupr
    • Added: Custom fluid tooltip implementation
    • Fixed: Fluid tooltip rendering for digital tanks with voiding
  • #5177 Fixed tooltip strings in MTEChamberCentrifuge to display correct information about machine capabilities. - @SST-03
    • Fixed: Wrong tooltips in centrifuge GUI
  • #5176 Changed MTEAdvAssLine overclock logic to apply regular overclock only when not at 1-tick-per-slice, then apply laser overclock if still not at 1-tick, preventing double-stacking of overclock penalties. - @SST-03
  • #5174 Modified MTEMultiBlockBaseGui to manually reset shutdown reason to NONE on MUI2 end to prevent stale state display. - @FrostyFire1
    • Fixed: Incorrect shutdown reason displayed in GUI
  • #5173 Fixed exception handling in GTPacketClearPowerfail network packet to prevent ClassNotFound errors. - @chrombread
    • Fixed: ClassNotFoundException on power loss in dev environment
  • #5170 Corrected format string in NeedMaintainanceUIFactory.java to properly handle localization translation methods. - @FrostyFire1
    • Fixed: Format error in maintenance cover UI
  • #5169 Fixed lang key entries in en_US.lang and ru_RU.lang for maintenance cover display text. - @FrostyFire1
    • Fixed: Maintenance cover lang key references
  • #5166 Modified MTEAdvancedBoilerBase to return empty/full buckets after fuel consumption. - @DarkShadow44
    • Fixed: Fuel bucket consumption without return
  • #5160 Cleaned and refactored CircuitImprintLoader, switched to RA2 recipe API for circuit cutting. - @chochem
    • Fixed: Circuit cutting recipe functionality
    • Closes GTNH#22153
  • #5155 Refactored GTPacketSound to use double xyz coordinates instead of int x/z and short y. Updated all callers to sendSoundToPlayers to use doubles and add 0.5 offset for block-centered positioning. - @Kynake
    • Fixed: Sound spatial positioning for machines and entities
  • #5149 Moved Liquid Air material classification in MaterialsInit to correct recipe category. - @chochem
    • Fixed: Noble gas centrifuge recipe output
    • Closes GTNH#22130
  • #5148 Refactored GTSoundLoop and SoundLoopAnyBlock to use dedicated int fields for sound tile coordinates instead of casting float positions, eliminating truncation errors and precision loss with distance. - @leagris
    • Added: Dedicated int coordinate fields for sound positioning
    • Fixed: Sound loop playback at negative coordinates, Sound loop precision loss at large distances, Sound loop lookup failures at extreme coordinates
  • #5140 Corrected sound position calculation in GTSoundLoop to use block-centered coordinates instead of corner-aligned. - @leagris
    • Fixed: Block-centered sound emission
  • #5138 Corrects language file entry for crushed BW ore display name. - @chochem
    • Fixed: BartWorks crushed ore tooltip accuracy
    • Closes GTNH#22114
  • #5137 Extended integrated circuit restrictions to IV Field Generator in ComponentAssemblyLineLoader, reassigning circuit discriminator from [0] to [8] to mitigate recipe collision. - @UltraProdigy
    • Added: IV integrated circuit support in COAL
    • Fixed: IV Field Generator recipe conflicts in COAL
  • #5136 Dependency version bump in dependencies.gradle to resolve ModularUI2 stability issue. - @FrostyFire1
    • Fixed: Multiblock GUI crashes on open
  • #5134 Corrected state migration logic in CoverEnderFluidLink to properly preserve import/export configuration during GUI framework transition. - @FrostyFire1
    • Fixed: Import/export mode inversion during MUI1 to MUI2 migration
    • Migration: The inverted import/export state affected only people who had already loaded a 2.9 daily build in October 2025. Coming from 2.8.4 the conversion runs with the corrected code and covers keep their direction.
    • Closes GTNH#22099
  • #5132 Updated tooltip strings in MTEElectricImplosionCompressor and MTEImplosionCompressor to reference the correct casing block name. - @PLASMAchicken
    • Fixed: Incorrect casing block reference in tooltip
    • Closes GTNH#21646
  • #5131 Simplified CoverChest to use single item stack handler instead of redundant dual handlers; fixed GUI layout in CoverChestGui and base cover GUI initialization. - @FrostyFire1
    • Removed: Redundant second item stack handler
    • Fixed: Extruder shapes disappearing from item holder, Item duplication/disappearing issues
    • Closes GTNH#22091
  • #5129 Fixed MTEHatchInputBusME click handling to properly process circuit changes after refactoring in PR #4487. - @Miklebe
    • Fixed: Circuit changes not responding to mouse clicks
  • #5128 Corrected FluidUtils texture path handling for Industrial Strength Hydrofluoric Acid, Sulfurous Acid, Sulfuric Apatite Mix, Industrial Strength Hydrogen Chloride, Sulfuric Lithium Mix, and Lithium Hydroxide. - @jude123412
    • Fixed: Broken GT++ fluid textures
  • #5127 Modified MultiblockTooltipBuilder to support separate dynamic tooltips for absolute vs. additional speed values; updated tooltip calls in Autoclave and Industrial Alloy Smelter. - @chochem
    • Added: Separate absolute and additional speed tooltip methods
    • Fixed: Incorrect Pyro and ChemPlant speed tooltip display
  • #5125 Modified gradle.properties JVM memory setting to reduce OOM failures during GHA compilation. - @boubou19
    • Fixed: OOM errors in GHA builds
  • #5122 Added null checks in MTEMultiBlockBaseGui to prevent NPE when output items or fluids are null. - @FrostyFire1
    • Fixed: Crashes from null output items/fluids
  • #5117 Fixed tooltip value in MTEAdvDistillationTower from 85% to 15% EU usage. - @UltraProdigy
    • Fixed: Incorrect 85% EU tooltip display
    • Closes GTNH#22057
  • #5116 Added material validation in OrePrefixes, improved ore prospecting in GTBlockOre/GTItemOre, fixed unificator error handling, added setHasOre to MaterialGenerator, and fixed NEI plugin crash handling in ore layer helper. - @RecursivePineapple
    • Added: Ore prospecting on block harvest, Material validation for part generation
    • Fixed: Deep Dark void miner invalid ore generation, Crashes from null materials in ore generation
    • Closes GTNH#22009
  • #5115 Corrected PollutionConfig array length by adding missing EV/IV tier entries that were previously absent and causing array index errors. - @chochem
    • Added: Missing EV/IV pollution configuration entries
    • Fixed: Incomplete diesel pollution config preventing feature from functioning
  • #5113 Modified MTEElectricImplosionCompressor to handle config changes that toggle the piston feature, providing a fallback for block recovery. - @SST-03
    • Fixed: Block loss when disabling EIC piston config
  • #5112 Moved Prismarine material configuration and added SubTag fixes to prevent nulls in recipe addition; removed invalid dust/gem generation with id -1 from MaterialsInit. - @chochem
    • Removed: Invalid Prismarine dust and gem generation
    • Fixed: Crash from null values in recipe addition
  • #5098 Corrected material name string in MaterialsInit. - @JustACasualDay
    • Fixed: Nether Semifluid name spelling
    • Closes GTNH#22027
  • #5090 Added PNG texture assets for glowstone cell and nanite item icons with overlays and animation metadata. - @jude123412
    • Added: Glowstone cell and nanite textures
    • Fixed: Missing glowstone nanite and cell textures
  • #5086 Added bounds checking in GTBlockOre.getMaterial() and GTDataUtils to validate metadata is within legal range (0-127), returns null for illegal values. - @RecursivePineapple
    • Fixed: ArrayIndexOutOfBoundsException on ore blocks with illegal meta
  • #5082 Re-added annealed copper recipe registration in MaterialsInit. - @chochem
    • Fixed: annealed copper Arc Furnace recipe
    • Closes GTNH#21982
  • #5081 Added zero/negative amount check in FluidCannerBackend to prevent outputting empty fluid stacks. - @chochem
    • Fixed: Fluid Canner zero-amount output
  • #5078 Added exclusion flag in MaterialsInit to prevent recycling recipe generation for netherite. - @chrombread
    • Removed: netherite recycle recipes
    • Fixed: netherite recipe generation
  • #5076 Added OptionalBoolean utility, updated ore drilling logic, fixed GTPPOreAdapter material checks, added Everglades planet textures, corrected NEI language strings. - @RecursivePineapple
    • Added: OptionalBoolean utility class, Everglades planet textures
    • Fixed: MBM mining invalid ore, ice ore dust blacklist, GT++ adapter material handling, NEI planet labels
  • #5075 Changed KeyProvider to use string-based language keys instead of IKey objects, updated all cover GUI implementations to use IKey.lang() for client-side key conversion. - @chrombread
    • Fixed: server-side IKey access crash in covers
  • #5074 Added null/type safety checks in MetaGeneratedItem01 cauldron cleaning logic. - @querns
    • Fixed: crash on cauldron cleaning
  • #5073 Re-added carbon ore item registration in MaterialsInit. - @chochem
    • Added: carbon ore items
    • Fixed: error spam from missing carbon ore items
  • #5072 Added missing texture configuration for Fusion Casings MK III/IV in GregtechMetaCasingBlocks3 and GregtechMetaCasingBlocks6. - @ABKQPO
    • Fixed: Fusion Casing texture connections
    • Closes GTNH#19579
  • #5071 Added .addOrePrefixBlacklist(OrePrefixes.dust) to MaterialBuilder, updated MaterialsInit and ProcessingIceOre to prevent dust generation, removed ICE_ORE tag definitions. - @Miklebe
    • Added: ore prefix blacklist mechanism
    • Removed: ICE_ORE tag definitions, ice ore dust generation
    • Fixed: ice ore duplicate dust recipes
    • Closes GTNH#21971
  • #5068 Added conditional check in GTBaseGuiBuilder to validate muffler button applicability before creation. - @VortexSo4
    • Fixed: muffler buttons crashing world on GUI open
  • #5062 Added ICE_ORE material definitions to MaterialsInit to support the ore refactor system. - @Miklebe
    • Added: ICE_ORE material support
    • Fixed: ICE_ORE material missing from new Material Builder
  • #5060 Corrected FluidCannerBackend to properly handle Klein bottle capacity updates across multiple canning runs. - @Bjdufre1
    • Fixed: Klein bottle stuck capacity in TurboCan Pro
    • Closes GTNH#20404
  • #5057 Fixed rod weight constants in RadioHatchMaterialLoader that were broken in PR #3728. - @chochem
    • Fixed: Radio Hatch long rod mass values
    • Closes GTNH#21274
  • #5052 Corrected tooltip text in MTEBlackHoleCompressor. - @GTNH-Afx237v7
    • Fixed: Black Hole Compressor tooltip grammar
  • #5051 Corrected multiblock validation and description text in MTEVoidMiners, MTEHIPCompressor, and MTEElementalDuplicator. - @DylanTaylor1
    • Fixed: Elemental Duplicator limitation wording, HIP Compressor height value, Void Miner input bus optionality
  • #5050 Modified GTPacketClearPowerfail and PowerfailLayerManager to properly remove powerfail entries from the wrappers hashmap when powerfails are deleted. - @SuperSoupr
    • Fixed: Powerfail persistence after deletion in JourneyMap
    • Closes GTNH#21536
  • #5049 Implemented toLong method in PowerfailLocationWrapper to include full block coordinates instead of only chunk coordinates, enabling JourneyMap to distinguish multiple powerfails in the same chunk. - @SuperSoupr
    • Fixed: Multiple powerfails in same chunk on JourneyMap
  • #5045 Corrected texture file alpha channel encoding for itemAlkalusDisk.png. - @ABKQPO
    • Fixed: AlkalusDisk texture transparency
  • #5040 Added rendering fix to MTEMultiBlockBaseGui for proper title bar display with maintenance hoverables. - @FrostyFire1
    • Fixed: MUI2 title bar rendering with maintenance hoverable
  • #5039 Reduced packet size in IControllerWithOptionalFeatures and MTEMultiBlockBase GUI code by removing unnecessary data transmission. - @chrombread
    • Removed: Oversized packet payload
    • Fixed: Server-client desync crash on MUI1 multiblocks
  • #5035 Updated tooltip description in MTEIndustrialDehydrator to reflect static parallel configuration. - @chrombread
    • Fixed: Vacuum Furnace parallel tooltip
  • #5033 Modified MTEMultiBlockBaseGui muffler button positioning and refactored the method signature to support more custom UI implementations. - @chrombread
  • #5032 Extended MTEMultiBlockBaseGui to include cover tab functionality and corrected type casting in GTBaseGuiBuilder. - @FrostyFire1
    • Added: Cover tab in MUI2 multiblock GUIs
    • Fixed: Cover opening crash on single-block MUI2 GUIs
  • #5031 Modified MTEMultiBlockBaseGui to preserve shutdown duration state when initializing the GUI. - @FrostyFire1
    • Fixed: Shutdown duration reset on GUI open
  • #5025 Changed ItemParallelData priority queue to sort by remaining parallels per item instead of absolute item count, preventing stalls in high-parallel recipes. - @RecursivePineapple
    • Fixed: Item ejection with high parallels
  • #5024 Removed redundant MaxParallel configuration display code from MTEAutoCrafter GUI. - @Eldrinn-Elantey
    • Removed: Duplicate MaxParallel GUI code
    • Fixed: Auto Crafter GUI duplicate display
  • #5020 Modified MTEHatchOutputBusME to continue with the next item stack on partial injection, aligning behavior with MTEHatchOutputME's fluid handling. - @hiroscho
    • Fixed: ME Output Bus item stalling
  • #5018 Corrected bracket placement in FluidCannerBackend recipe logic to properly handle volumetric flask emptying. - @couref
    • Fixed: Fluid Canner volumetric flask emptying
    • Closes GTNH#21865
  • #5015 Corrected overclock calculation logic in OverclockCalculator to properly apply the correction multiplier. - @Vlamonster
    • Fixed: Overclock calculator behavior mismatch
    • Closes GTNH#21657
  • #5014 Adjusted assembler recipe tier for the 64A UHV Dynamo Hatch in TecTech's CoverLoader. - @UltraProdigy
    • Fixed: Dynamo hatch recipe consistency
  • #5007 Modified SimplePowerGogglesRenderer to check the configuration value before rendering timed difference displays. - @FrostyFire1
    • Fixed: Power Goggles configuration not respected
  • #5006 Added null check for worldObj in BaseTileEntity.markDirty() before attempting chunk marking, preventing NullPointerException during loadNBTData(). - @SKProCH
    • Fixed: Crash during chunk marking in loadNBTData
  • #5004 Corrected recipe registration in GTRecipeRegistrator and ProcessingDust for Ichorium recycling. Cleaned up related quartz block comments. - @chochem
    • Fixed: Ichorium Block smelting yield
    • Closes GTNH#19870
  • #5002 Updated CircuitImprintLoader to register imprint recipes in the cutter recipe map, completing migration from the deprecated slicer recipe system. - @VortexSo4
    • Fixed: Circuit imprint recipe registration in cutter
  • #4998 Modified FormingPressBackend recipe processing to verify the recipe is truly a coin-making recipe before applying coin mold NBT timestamp to the output. - @zyf051520
    • Fixed: Forming Press unintended NBT stamping on non-coin recipes
  • #4996 Corrected PowerfailLayerManager icon removal logic to properly respond to JourneyMap deletion requests. Partial fix-multiple power fails per chunk still require clearing via UI or command. - @Bjdufre1
    • Fixed: JourneyMap power fail icon deletion
    • Closes GTNH#21536
  • #4994 Modified BlockOverlayRenderer to calculate line width relative to window resolution by incorporating the render target height into the GL11.glLineWidth() calculation. - @Kynake
    • Fixed: Line thickness scaling on high-resolution displays
  • #4991 Added pollution emission override functionality to MTELargeEssentiaSmeltery to prevent inevitable power failures caused by muffler system incompatibility and flux gas generation. - @kopatych3348
    • Added: Pollution output bypass for Large Essentia Smeltery
    • Fixed: Large Essentia Smeltery power failures with pollution enabled, Excessive pollution and taint generation
    • Closes GTNH#18214, GTNH#21556
  • #4990 Modified EIGSeedBucket to correctly handle seed types and prevent incompatible seed insertion that was causing crashes. - @TheYoingLad
    • Fixed: Crash when inserting Flesh Root seeds into EIG
    • Closes GTNH#21414
  • #4979 Updated maintenance hatch check in MTEHatchMaintenance to properly handle fake players used by Dynamism Tablet, restoring pre-rewrite behavior. - @sisyphussy
    • Fixed: Dynamism Tablet not performing maintenance
  • #4978 Updated MTEVoidMinerBase and MTEVoidMiners to remove mining pipe references from tooltip, made input hatch optional in structure check, and refactored batch mode to use single variable instead of repeated calls. - @chrombread
    • Removed: Mining pipe references from Void Miner input section
    • Fixed: Void Miner tooltip accuracy, Void Miner input hatch optionality, Void Miner fluid drain rate in batch mode
  • #4976 Partial revert of input bus validation in MTEFusionComputer to allow Crib hatches alongside standard input buses. - @chrombread
    • Fixed: Crib hatches not allowed in regular Fusion Reactor
  • #4975 Modified MTELargeFusionComputer structure check to allow Crib (cribu) hatch type alongside other valid input hatches. - @serenibyss
    • Fixed: Crib hatches not allowed in Compact Fusion Reactor
    • Closes GTNH#21706
  • #4972 Added defensive checks in ItemEjectionHelper to prevent div-by-zero, and fixed MTEAdvAssLine to copy ejected item stacks since AAL doesn't expect output stack references to be modified by addOutputAtomic(). - @RecursivePineapple
    • Added: Stack copying in AAL output handling
    • Fixed: Advanced Assembly Line ArithmeticException on division by zero
    • Closes GTNH#21692
  • #4971 Added cleanup of Pollution handler reference on world unload event to prevent stale references being reused across login cycles. - @DarkShadow44
    • Fixed: Pollution handler memory leak on world unload
  • #4966 Corrected container field assignments in ContainerFishTrap.java and ContainerPestKiller.java to properly initialize slot references. - @Bjdufre1
    • Fixed: Cannot open GT++ Fish Catcher and Pest Killer interfaces
    • Closes GTNH#21633
  • #4964 Fixed connection validation logic in MTEHatchDroneDownLink.java and related multiblock base classes (MTETeslaTower, TTMultiblockBase, MTEPreciseAssembler, MTELapotronicSuperCapacitor) to properly check connectivity before allowing placement. - @guid118
    • Removed: Ability to place blocks against unconnected downlink hatches
    • Fixed: Drone Downlink Hatches not connecting on certain multiblocks
    • Closes GTNH#21143
  • #4957 Corrected recipe requirements in NetheriteRecipes.java and SpacePumpingRecipes.java that were throwing errors when accessing fluid metadata. - @chochem
    • Fixed: Dev environment error spam from fluid lookups
  • #4956 Disabled auto-output flag in MTEHatchSteamBusOutput to match intended hatch behavior and prevent uncontrolled item ejection. - @sisyphussy
    • Fixed: Steam output hatches auto-outputting in multiblocks
  • #4955 MTEMoltenModule, MTEPlasmaModule, and MTESmeltingModule now use BigInteger for EU/t × duration calculations to prevent Long.MAX_VALUE overflow. - @52871299hzy
    • Fixed: Godforge module energy overflow with long durations
  • #4951 ChemicalRecipes polymerization recipe calculation corrected. - @chochem
    • Fixed: Polymerization recipe calculation error
  • #4947 OrePrefixes placeholder stack limit changed from 1 to standard stack limit. - @Glease
    • Fixed: VeinMiner item drop count with placeholder ores
  • #4945 MTELargeBoiler now checks for efficiency increase eligibility on liquid fuel recipes via additional else-if condition in onRunningTick, matching behavior for solid fuels. - @Miklebe
    • Fixed: Large Boiler not gaining efficiency with liquid fuels
    • Closes GTNH#21550
  • #4944 Hot Netherite Ingot material disabled in Materials enum. - @chochem
    • Removed: Hot Netherite Ingot material
    • Fixed: Textured hot netherite ingot with no use
  • #4942 MTECharcoalPit now checks for BlockLog subclasses instead of relying on OreDictionary lookups, avoiding unnecessary oredict pokes. - @Glease
    • Fixed: Stripped logs not accepted in Charcoal Pit Igniter, Log block variant support
    • Closes GTNH#21533
  • #4941 MTECable null check moved before property access to prevent NullPointerException. - @chochem
    • Fixed: Cable NullPointerException crash
  • #4935 MTELapotronicSuperCapacitor hologram placement logic now correctly maps capacitor channel configuration to the appropriate capacitor tier. Tooltip correspondence fixed. - @TheYoingLad
    • Fixed: LSC capacitor channel tooltip mismatch, Hologram placing wrong capacitor tier
  • #4922 BlockMachines.onNeighborChange now checks tile entity existence before processing neighbor updates, preventing infinite recursion when many adjacent machines trigger creation chains during chunk loading. Impact is minimal since cached tile data is empty during initial load anyway. - @RecursivePineapple
    • Fixed: StackOverflowException on chunk load with many machines
  • #4879 MTEHatchTFFT and MTETankTFFT now properly notify AE2 of fluid inventory changes via getFluidInventory() updates and clear phantom data on tank destruction. Removed @Optional.Interface annotations no longer needed since kekztech is ported to GT5u. - @zyf051520
    • Removed: Unnecessary @Optional.Interface decorators
    • Fixed: AE2 not detecting TFFT input hatch fluid changes, TFFT Tank phantom fluids persisting in AE2 after destruction
  • #4550 Modified MTEMultiBlockBaseGui title rendering logic to implement line wrapping behavior for long machine names. The change adds workaround logic to detect when title text exceeds display bounds and forces newline insertion. - @chrombread
    • Fixed: multiblock GUI titles not wrapping to new lines
  • #4441 Added null-safety check in GTStructureUtility to handle unknown dimension rotations when previewing multiblock structures. - @RecursivePineapple
    • Fixed: Issue #20031: crash on decay warehouse Y rotation preview
    • Closes GTNH#20031

Performance ​

  • #7936 Refactored ejection helpers and output hatches to batch fluid insertions via IOutputTransaction, reducing transaction overhead in MTEHatchOutput, MTEHatchOutputBus, and ME output implementations. - @hinyb
  • #7931 Consolidated multiple full-storage checks per bee input into a single check per cycle in MTEMegaIndustrialApiary. - @Armisael5
    • Fixed: Mega Apiary input mode lag
  • #7929 Modified GTRecipeLookupBranch to inline entries for branches with 1-2 items and only allocate HashMap when 3+ entries are needed. Changed LinkedHashMap to HashMap since insertion order was not being used. - @boubou19
  • #7922 Refactored resource string handling to delay concatenation of domain, colon, and path until needed, instead of splitting the concatenated string back into components. Adjusted callsites throughout gregtech, bartworks, and goodgenerator modules. - @boubou19
  • #7883 Added model batching for GT inventory models and implemented render cache in MTEBasicMachine and MTEBasicGenerator. Updated GTRendererBlock and GTRenderedTexture rendering pipeline. - @boubou19
    • Added: render cache in MTEBasicMachine, render cache in MTEBasicGenerator
  • #7872 Added BoundedTextureCache for texture caching, optimized texture lookups in block icon containers (GTCustomBlockIconContainer, GTTextureSetBlockIconContainer, etc.), and improved render caching in various metatile entity classes. - @boubou19
    • Added: BoundedTextureCache class
    • Fixed: Excessive memory allocations during NEI block rendering
  • #7866 Reverted sorting logic in MTEHatchInputBus.java to skip sorting if the contents haven't changed, relying on existing instant recipe check flag. Restored flag initialization in MTEElectrodeHatch.java. - @AnsonYeung
    • Fixed: Excessive NBT hashing performance cost during sorting
  • #7821 Replaced NBTTagCompound serialization with ByteBuf for hatch network sync in IMetaTileEntity and related classes. Partial revert of #5372 to avoid syncing inventory contents unnecessarily. - @AnsonYeung
  • #7806 Modified GTModHandler to build ordered snapshot of crafting-grid-compatible recipes and reuse across metadata variants, filtering by shape or ingredient count. Converted GalaxySpace capes from URL-based to hardcoded textures in GTCapesLoader. Optimized ProcessingLog and ProcessingPlank. - @boubou19
    • Added: hardcoded cape textures
    • Fixed: GalaxySpace cape URL failure
  • #7798 Added buffering to ProcessingLog, removed unnecessary collision checks in recipe processing, optimized Materials initialization, improved GTRecipeRegistrator and RecipeChangeAudit performance. Modified Werkstoff and WerkstoffLoader cell/dust loader loops for efficiency. - @boubou19
    • Added: buffering in ProcessingLog
    • Removed: PlayerAttackEventHandler from gtPlusPlus
  • #7789 GTThaumcraftCompat: check ThaumcraftApi.exists() first and directly register GT aspects if tag doesn't exist, skipping unnecessary tag lookup logic. - @boubou19
  • #7786 GTMod and GTModHandler: implement second buffering pass for delayed recipe removals. Buffering continues through GT5U's load complete phase, then stops either at GT5U load complete or when NewHorizonsCoreMod signals completion. - @boubou19
    • Added: second pass recipe buffering
  • #7779 ProcessingPipe: deduplicates pipe recipe registration that was occurring multiple times per material (5x for 163 materials, 3x for 15 materials). - @boubou19
  • #7773 Multiple recipe loaders: skip removal attempts for recipes that don't exist before attempting to add recipes. Based on analysis from the debug log of PR #7772, eliminates ~682 duplicate recipe operations. - @boubou19
    • Added: parse_useless_recipe_removals.py tool
  • #7764 Added early termination in NodeGTBaseMetaTile power consumer traversal to skip full consumers and stop iterating when amp budget is exhausted. Fixed edge case where RF receivers could exceed allocated amp budget. - @Algent
    • Fixed: Power network traversal performance on loaded maps, RF receiver overage edge case
  • #7756 Eliminated global recipe map scans in NaquadahReworkRecipeLoader. Created NaquadahRecipeOutputs and NaquadahRecipePatches to generate and patch recipes directly rather than scanning all recipes. - @boubou19
    • Added: NaquadahRecipeOutputs recipe generation class, NaquadahRecipePatches recipe patching class
    • Removed: NaquadahReworkRecipeLoader global scan loop
    • Fixed: Server startup recipe loading performance
  • #7748 Eliminated global recipe map scans in GTNHLanthanides RecipeLoader. Created LanthanidesRecipeOutputs to generate cerium recipes directly instead of scanning and modifying existing recipes. - @boubou19
    • Added: LanthanidesRecipeOutputs recipe generation class
    • Removed: RecipeLoader global scan loop
    • Fixed: Server startup recipe loading performance
  • #7743 Replaced global recipe map scans in PlatinumSludgeOverhaul with direct recipe generation and patching in dedicated loader classes (PlatinumSludgeOutputs, PlatinumSludgeRecipes). Requires coordinated PRs in Binnie, CropsNH, and NewHorizonsCoreMod. - @boubou19
    • Added: PlatinumSludgeOutputs recipe generation class, PlatinumSludgeRecipes targeted recipe class
    • Removed: Global recipe map scan loop
    • Fixed: Server startup recipe loading performance
  • #7739 Cached Enum.values() calls across multiple files including CondensateType, TextureSet, ToolboxSlot, and various item/armor enums to reduce repeated array allocations. - @boubou19
    • Added: Enum values caching
  • #7698 Replaced GL matrix stack with JOML matrix building, implemented 330 core shaders via ShaderRecipe, converted renderers to VAO/mesh-based rendering, moved lazy-init to boot/resource-reload, minimized gl state pushes, and fixed Space Elevator NBT read. Affected renderers: Antimatter, Blackhole, Drone, NanoForge, Wormhole. - @mitchej123
    • Added: Core-profile shader rendering path, MeshBuilder utility, ShaderRecipe system, FrameMatrices utility, CoreMesh and LegacyMesh abstractions
    • Fixed: Rendering performance bottleneck on first frames, Space Elevator time wait NBT field
  • #7682 Removed randomized packet-based syncing in favor of standard TE synchronization, eliminating idle packet traffic. Removed non-tickable status from laser vacuum pipes and integrated activeness state into normal TE updates. - @AnsonYeung
    • Added: VacuumConveyorPipeClientStateManager
    • Removed: PipeActivity packet system, random sync delays
  • #7664 Optimized object allocation patterns in SimplePowerGogglesRenderer.java rendering code, reducing garbage collection pressure during goggle HUD rendering. - @boubou19
    • Fixed: Excessive allocations during power goggle rendering
  • #7603 Modified default StackWatcher value in MachineStats to match modpack configuration. - @AnsonYeung
  • #7563 Added needsClientTick() mechanism to skip client ticking where possible, cached getBaseMetaTileEntity() comparisons, and removed redundant hasValidMetaTileEntity() checks. Affected BaseMetaTileEntity, CommonBaseMetaTileEntity, BaseMetaPipeEntity, and their implementations. - @mitchej123
    • Added: needsClientTick() opt-out mechanism
    • Fixed: excessive client-side tick overhead
  • #7409 MTEWirelessEnergy converted to non-tickable by offloading state checks to a manager that only updates when needed. Removes continuous BaseMetaTileEntity.updateEntity calls. - @AnsonYeung
    • Added: WirelessEnergyHatchManager
  • #7182 Eliminated unnecessary full array allocations and swapped proxy active checks to execute before more expensive cache checks in MTEExtendedPowerMultiBlockBase, MTEMultiBlockBase, ExoticEnergyInputHelper, and MTEHatchOutputMEBase. - @AnsonYeung
  • #7015 GTRecipeBuilder: Reverted recipe deduplication flag to disabled state. - @boubou19
  • #6895 Added conditional check in setMufflers to only update muffler arrays if the muffler state actually changed, avoiding expensive array traversals and cache misses. - @AnsonYeung
  • #6893 Changed shouldCheckRecipeThisTick to use lazy notification from crafting input bus/buffer instead of iterating all proxy hatches every tick; replaced pull-based updates with push-based notifications, reducing function call frequency from every tick to only during pattern push. - @AnsonYeung
    • Added: IHatchWatcher interface for hatch notifications
  • #6864 Removed gas recipe variants from arc furnace recycling recipes in GTRecipeConstants, reducing recipe map size. - @kuba6000
    • Removed: Gas recipe variants in arc furnace recycling
  • #6829 Refactored compactInventory() to minimize object allocations during inventory item shuffling and consolidation. - @boubou19
  • #6751 BaseMetaTileEntity: inlined getEUCapacity() to eliminate redundant canAccessData() calls; MTEBasicTank added early exit for empty input slots; MTEHatchInputBus only updates when inventory changed. - @czqwq
  • #6734 Implemented RingBuffer utility class and updated MTETeslaTower to use it for histogram tracking instead of LinkedList. - @Sanduhr32
    • Added: RingBuffer utility class
  • #6704 Updated rendering code in BlackholeRenderer, NanoForgeRenderer, MTEExoFoundry, and RenderSpaceElevatorCable to use optimized Wavefront model handling, reducing draw call overhead. - @sisyphussy
  • #6680 Refactored RecipeGenMultisUsingFluidInsteadOfCells by extracting lambda comparators to final fields, replaced Object.clone() with Arrays.copyOf(), optimized equals() method with early exits, and improved HashMap operations in RecipeHashStrat.java. - @danyadev
  • #6674 Refactored PlatinumSludgeOverHaul.java to eliminate copy-pasted code patterns, cache method results in variables, and reorganize call order; similar cleanup in BWUtil.java. Load time reduced by ~63%. - @danyadev
  • #6491 GTModHandler.removeRecipeByOutputDelayed() refactored with buffering for non-default option calls via NHCoreMod. - @danyadev
    • Fixed: removeRecipeByOutputDelayed performance
  • #6476 Recipe loaders throughout the codebase buffered and optimized; WorkstoffLoaders (CrushedLoader, DustLoader, etc.) and recipe modules parallelized where possible. - @danyadev
    • Fixed: recipe loading performance
  • #6468 Refactored GTModHandler.removeFurnaceSmelting to leverage MixinFurnaceRecipes from Hodgepodge, eliminating inefficient iteration over the entire furnace recipe map. - @danyadev
  • #6378 Refactored GTModHandler, GTOreDictUnificator, and GTRecipeRegistrator to eliminate streaming overhead and parallization issues, replacing lambda-heavy code with direct iteration. - @danyadev
  • #6370 Refactored removeRecipe code in GTModHandler to eliminate redundant stream creation and reduce isStackValid call overhead during bulk removals. - @danyadev
  • #6066 Refactored MetaGeneratedItemRenderer to pack numeric values into long primitives instead of using boxed wrapper objects during rendering. - @Alexdoru
  • #6047 Added static cached array of OutputBusType values to avoid repeated array allocations; updated CircuitImprint, MainMod, CircuitPartsItem, CircuitWraps, ItemEjectionHelper, GTNEIImprintHandler, and LedStatus to use the cached values. - @Alexdoru
    • Added: OutputBusType values cache
  • #6038 Optimized ItemList, VoidingMode, BaseMetaTileEntity, CoverControlsWork, MetaGeneratedItemRenderer, and other core systems. Moved item renderer registration to client-side only. Multiple micro-optimizations for map operations and rendering lookups. - @Alexdoru
  • #5900 Disabled ticking for Auto-Taping Maintenance Hatch, Stocking Input Bus/Hatch (ME non-advanced), and Muffler hatches in their implementations; added cover detection to re-enable ticking when needed. Improved tile entity data sync timing in BaseMetaTileEntity. - @AnsonYeung
    • Added: Dynamic ticking enable/disable for hatches based on cover state, Immediate client sync on tile load
    • Fixed: Missing hatch textures on world join, Unnecessary hatch ticking overhead
  • #5882 Refactored fillStacksIntoFirstSlots logic in MTELinkedInputBus and MTEHatchInputBus to use a more efficient algorithm, moving core logic to GTUtility. - @danyadev
    • Added: Optimized fillStacksIntoFirstSlots in GTUtility
  • #5844 Added guard condition in GTMod to skip FMLModIdMappingEvent handler when remappedIds list is empty, eliminating unnecessary 100ms+ processing on world exit. - @danyadev
  • #5765 Removed alignment queries from MTEEnhancedMultiBlockBase, MTEHatchMaintenance, MTEBrickedBlastFurnace, and TTMultiblockBase; alignment data is now sent proactively. - @mitchej123
    • Removed: Alignment query calls from MTEBrickedBlastFurnace, Alignment query calls from TTMultiblockBase
  • #5764 Made hasValidMetaTileEntity final for JIT optimization, used direct field access in getRenderBoundingBox instead of method calls, and ensured proper back-reference initialization for pipes and cables. - @mitchej123
  • #5535 Consolidated item renderer code, replaced cosmic shader with universium shader, removed deprecated markNeedsAnimationUpdate calls, optimized glPush/Pop matrix usage across CosmicNeutronium, Glitch, Infinity, Rainbow, and other special item renderers. - @sisyphussy
    • Removed: deprecated markNeedsAnimationUpdate, redundant renderer classes, unnecessary matrix operations
  • #5520 Replaced large texture atlas entries in BlockLargeHexPlate with smaller consolidated textures, reducing texture memory usage while maintaining visual fidelity. - @sisyphussy
    • Removed: 14 large 512×512 texture variants
  • #5480 Modified MTEHatch to only send network updates when hatch state actually changes, reducing packet overhead from thousands per second to 10-20 per second on typical bases. - @Glease
    • Fixed: excessive network updates
  • #5466 Changed GTOreDictUnificator.get(aStack) to get_nocopy(aStack) in recipe removal code paths, and improved code readability with variable renaming and bracing in GTModHandler and GTOreDictUnificator. - @Alexdoru
    • Fixed: unnecessary ItemStack allocation
  • #5398 Made getBaseMetaTileEntity() final in IMetaTileEntity interface and MetaPipeEntity implementation to enable JIT inlining. - @Alexdoru
  • #5392 Deleted unused IC2 recipe removal code from BartWorks startup sequence. - @boubou19
    • Removed: IC2 recipe removal code
  • #5225 RecipeMapBackend now uses arrays for faster lookups and XOR hashing instead of addition to prevent CLT-induced collisions in hash distribution. - @Vlamonster
  • #4592 Removed multithreaded background structure checking in RunnableMachineUpdate and consolidated per-world structure check requests into a single check per tick, eliminating the mutex contention and race conditions that could cause checks to be delayed or skipped. - @dvdmandt
    • Fixed: Structure checks may be delayed or never run when queued concurrently

Removals ​

  • #7258 Removed 44 lines of deprecated plasma arc furnace recipe definitions from MTERecipeLoader. - @zaru-noodles
    • Removed: Plasma arc furnace crafting recipes
    • Fixed: Deprecated machine still available for crafting
    • Migration: Plasma arc furnace recipes can no longer be used; find alternative processing routes.
    • Closes GTNH#25488
  • #7063 Deleted 191 lines of material RGB shifting animation code from GTClient that was manipulating argb values every client tick. - @FourIsTheNumber
    • Removed: RGB shifting animation system
    • Fixed: Material color glitches
  • #6807 Removed White Metal material definition from MaterialsElements, removed item definitions from ModItems, removed language entries from en_US, ru_RU, and zh_CN localization files, and removed Platinum Sludge overhaul integration. - @UltraProdigy
    • Removed: White Metal material, White Metal items, White Metal language entries, Platinum Sludge White Metal integration
    • Migration: White Metal is deleted. Any ingots, dusts, plates, springs, fine wire or foil you hold disappear on first load, and nothing converts them.
  • #6691 Removed PTMEG material and related chemical recipes from WerkstoffMaterialPool and RecipeLoader, added logic to PosteaTransformers to handle removal. Materials are easily restorable via targeted revert if needed. - @YannickMG
    • Removed: PTMEG material, PTMEG-only chemical recipes, PTMEG crafting chains
    • Migration: PTMEG Elastomer, Polytetrahydrofuran, Tetrahydrofuran, Acidicised 1,4-Butanediol, Tungstophosphoric Acid, Toluene Diisocyanate and Toluene Tetramethyl Diisocyanate are all removed, with no recipe to convert them. Their dusts, ingots, plates, cells and placed blocks disappear on first load, turning into dirt or nameless stacks, and any of their fluids left in tanks or pipes is lost. ZPM and higher recipes no longer use PTMEG.
  • #6301 Removed capsule entries from BWMetaGeneratedItems, Werkstoff, WerkstoffLoader, and removed BWGTMetaItems and related recipe loaders (CellLoader, MoltenCellLoader). Kept capsule items for Forestry compatibility. Adjusted Extruder recipes accordingly. - @UltraProdigy
    • Removed: GT capsule integration, capsule meta items, capsule recipe loaders
    • Migration: The four GT capsule and molten-capsule item types are unregistered with no replacement, so a GT-fluid-filled wax or refractory capsule you were holding disappears on first load. Almost nobody has these; they were hidden from NEI in 2.8.4. Forestry's own capsules keep working, you just cannot fill them with GT fluids.
  • #5824 Deleted AlgaeDefinition, AlgaeUtils, IAlgalItem, ItemAlgaeBase classes and removed algae item registration from ModItems and GregtechItemList, along with associated language strings. - @evgengoldwar
    • Removed: Algae item definitions and utilities, AlgaeDefinition class, AlgaeUtils class, IAlgalItem interface, ItemAlgaeBase class, Algae language strings
  • #5821 Deleted BlockPestKiller, TileEntityPestKiller, ContainerPestKiller, GUIPestKiller, and InventoryPestKiller classes along with recipe registrations. - @evgengoldwar
    • Removed: Pest Killer block, machine, GUI, and container, Pest Killer inventory and recipes
    • Migration: The Pest Killer no longer exists: placed machines disappear from an existing world.
  • #5820 Deleted BlockPooCollector, TileEntityPooCollector, TileEntityAdvPooCollector, BTF_FluidTank, and related recipe and fluid definitions. - @evgengoldwar
    • Removed: Poo Collector blocks and machines, Poo Collector recipes and fluids, Agricultural chemistry and coal tar recipes related to poo collection
    • Migration: Poop line and Poo Collector machine removed; farms using this for agricultural chemistry or coal tar will need alternatives.
  • #5819 Deleted BlockProjectTable, ContainerProjectTable, GUIProjectTable, TileEntityProjectTable, InventoryProjectMain/Output classes and their registrations. - @evgengoldwar
    • Removed: Project Table block, container, GUI, and tile entity, Project Table inventory classes, Project Table recipes
  • #5718 Removed WDM molds from ItemList, MetaGeneratedItem03, fluid solidifier recipes, and associated textures. Removed AE2 compatibility reference. - @chrombread
    • Removed: WDM extrusion molds (items 729-738+), Fluid solidifier recipes for WDM, AE2 WDM compat
    • Migration: The White Dwarf Matter extrusion molds are removed. They had no use in 2.8.4, so almost nobody made any; if you did, three of them (Plate, Rod and Bolt) become Exotic, Cosmic and Transcendent Circuit Boards because their item ids were reused, and the rest become nameless unusable stacks.
  • #5651 Removed laser hatch implementations and registry entries from TecTech's MachineLoader and CustomItemList. - @UltraProdigy
    • Removed: Deprecated laser source and target hatches
    • Migration: The deprecated laser source and target hatches are removed from the game; any you have placed disappear on world load and any multiblock that used one will unform. Swap them for the current laser hatches before you update.
  • #5650 Removed wireless dynamo implementations for various tiers from MetaTileEntityIDs and LoaderMetaTileEntities. - @UltraProdigy
    • Removed: Single-amp wireless dynamos
    • Migration: Single-amp Wireless Dynamos have been removed from the game; any placed instances will disappear on world load.
  • #5648 Removed Slicing Machine meta tile entity, recipe map, GUI textures, and all associated registrations and localizations. - @UltraProdigy
    • Removed: Slicing Machine, Slicing recipe map
    • Migration: Slicing Machines have been removed from the game; any placed instances will disappear on world load.
  • #5646 Removed Tool Casting Machine implementation, recipe maps, and localization entries from GigaGramFab and related registries. - @UltraProdigy
    • Removed: Tool Casting Machines, GGFab recipe maps for tool casting
    • Migration: Tool Casting Machines have been removed from the game; any placed instances will disappear on world load.
  • #5595 Removed duplicate Zirconium registration from WerkstoffMaterialPool. - @UltraProdigy
    • Removed: Duplicate Zirconium material registry entry
    • Fixed: Duplicate Zirconium material pollution
    • Migration: This only matters if your world is very old. The deprecated duplicate Zirconium material is gone; it could not be obtained at all in 2.8.4, so only worlds carried over from several versions back can hold any. Those dusts and ingots become nameless unusable stacks rather than being cleanly removed. The real Zirconium is untouched.
  • #5481 Removed LPF manual book registration from BookHandler.java and ItemBaseBook.java. - @ABKQPO
    • Removed: LPF manual book
  • #5091 Removed MaterialsInit entry for liquid air plasma. - @chrombread
    • Removed: Liquid air plasma material

Internal / Refactor ​

  • #7921 Migrated Component Assembly Line, Coolant Tower, and Large Essentia Smeltery tooltip definitions from inline strings to markdown files with shared lang keys. Updated frame box logic to use OrePrefixes.frameGt. - @Eldrinn-Elantey
    • Added: Markdown tooltip files for three multiblocks, 12 new shared lang keys
    • Fixed: Tungstencarbide spelling
  • #7904 Removed GTCLSCompat, CLSCompat, and related BetterLoadingScreen hacks. Updated GTProxy and material loaders to use FML progress API instead. - @danyadev
    • Removed: GTCLSCompat class, CLSCompat class, BetterLoadingScreen dependency
  • #7858 Ported hardcoded tooltip strings to markdown files for EN and RU locales. Moved structure layer descriptions to lang keys. Precise Assembler split into two markdown files due to addStaticSpeedInfo placement. - @Eldrinn-Elantey
    • Added: Markdown tooltip files for four multiblock machines (EN, RU)
    • Removed: Lang key entries for Extreme Heat Exchanger info (now inlined in markdown)
    • Fixed: Wrong hot coolant and hot solar salt output rates, Untranslated plasma and throttle lines
  • #7855 Moved 49 lines of hardcoded tooltip text to markdown loader with translations for English, Russian, and Chinese. Replaced manual fluid name strings with registry lookups in AntimatterForge.java and AntimatterGenerator.java. - @Eldrinn-Elantey
    • Added: Markdown tooltip files for Antimatter Forge and Generator (EN, RU, ZH), Fluid registry-backed stabilization lists
    • Removed: Hardcoded tooltip strings in machine classes
    • Fixed: Fluid name mismatches in stabilization lists
  • #7847 Ported tooltip text to markdown files per tier (mk1-mk5), removed hardcoded text from Java classes, and updated structure layer initialization to use block registry names instead of literals. - @Eldrinn-Elantey
    • Removed: createParallelText method from base class
  • #7795 Refactored tooltip generation in MTEActiveTransformer, MTEDataBank, MTEEnergyInfuser, MTEMicrowave, MTENetworkSwitch, MTENetworkSwitchAdv, and MTEQuantumComputer to use markdown files in assets/gregtech/lang/en_US/tooltip/ and localized translations from lang files, replacing inline string literals. - @Eldrinn-Elantey
    • Added: markdown tooltip files for seven TecTech multiblocks, new lang keys for structure layers
  • #7744 Moved tooltips from Java string concatenation to separate markdown files in src/main/resources/assets/gregtech/lang/en_US/tooltip/. Each tier gets its own markdown file to preserve color codes and sentence structure rather than using variable substitution. - @Eldrinn-Elantey
    • Added: Markdown tooltip files for Space Elevator (7 files), Markdown tooltip files for assembler, miner, and pump modules (9 files)
    • Removed: Inline English tooltip strings
  • #7727 Restructured WAILA logic across MTEMultiBlockBase, MTEExtendedPowerMultiBlockBase, and subclasses to use a more convenient method pattern and prevent tooltips on incomplete structures. - @evgengoldwar
  • #7681 Converted tooltip strings to markdown files for five Lanthanides multiblocks (Dissolution Tank, LINAC, Source Chamber, Synchrotron, Target Chamber). Reused shared language keys and corrected Russian translations that had drifted from English sources. - @Eldrinn-Elantey
    • Added: markdown tooltip files for Lanthanides multiblocks
    • Removed: hardcoded tooltip strings, duplicate language definitions
    • Fixed: drifted Russian translations
  • #7667 Converted hardcoded tooltip strings to markdown files and StatCollector localization keys across eight TecTech multiblocks (Eye of Harmony, Research Station, Tesla Tower, Forge of Gods, and modules). Fixed Forge of Gods block list to correctly resolve Stellar Energy Siphon Casing. - @Eldrinn-Elantey
    • Added: markdown tooltip files for TecTech multiblocks, localization keys for structure text
    • Removed: hardcoded tooltip strings, orphaned language keys
    • Fixed: Forge of Gods block list inaccuracy
  • #7660 Converted hardcoded Java tooltip builders to markdown files in src/main/resources/assets/gregtech/lang/*/tooltip/, removed corresponding unused lang keys from en_US.lang and ru_RU.lang. - @Eldrinn-Elantey
    • Added: Markdown tooltip files for 4 KekzTech multiblocks
    • Removed: Unused language keys
  • #7649 Multiple refactoring commits: removed dead code (e.g., BWMultipleTileEntityContainer), cleaned up imports, added CI workflow for forbidden sysout checks, and simplified various class implementations. - @boubou19
    • Added: Test workflow for forbidden sysout
    • Removed: Dead code and unused classes
  • #7634 Converted string-based tooltip formatting to markdown files in lang directories for DEFC, Extreme Entity Crusher, Extreme Industrial Greenhouse, and Mega Apiary multiblocks. Moved mode-specific descriptions to dedicated markdown files. - @Eldrinn-Elantey
    • Added: markdown tooltip files for 4 KubaTech multiblocks
    • Removed: inline Java tooltip strings
  • #7629 Converted string-based tooltip formatting to markdown files in lang directories for Dyson Swarm, Planetary Gas Siphon, Digester, and Advanced Assembly Line. Removed addFormattedString() calls and hardcoded casing labels from Java source. - @Eldrinn-Elantey
    • Added: markdown tooltip files for 4 multiblocks
    • Removed: inline Java tooltip strings
    • Fixed: hardcoded casing labels, broken formatting markers in Dyson Swarm
  • #7591 Refactored TargetChamberFrontend to use recipe map's actual amperage value and fixed computeVoltageForEURate to divide by amperage correctly. - @Eldrinn-Elantey
    • Removed: Hardcoded AMPERAGE constant
    • Fixed: computeVoltageForEURate not dividing by amperage
  • #7583 Implemented getPart() method override in gtPlusPlus/core/material/Material.java for IOreMaterial interface compatibility. - @serenibyss
    • Added: IOreMaterial#getPart override
    • Migration: GT++ material consumers using IOreMaterial#getPart must verify their code still works.
  • #7539 Removed GTUtility.translate() and translateMultiline() wrappers; added Collection overload to GTSplit and updated all callers to use GTSplit directly. - @Eldrinn-Elantey
    • Added: Collection overload to GTSplit
    • Removed: GTUtility.translate(), GTUtility.translateMultiline()
  • #7507 Refactored method signatures across ~200 files using IntelliJ's Change Signature feature to restore WxHxL parameter order while keeping tooltips in LxWxH format. - @AnsonYeung
  • #7425 Replaced GTUtility.translate() calls with StatCollector.translateToLocal/translateToLocalFormatted across ~130 files. GTUtility.translate kept as deprecated wrapper for addon compatibility. - @Eldrinn-Elantey
    • Added: deprecated GTUtility.translate wrapper
  • #7365 Systematic rename of hungarian notation prefixes to standard camelCase throughout gtPlusPlus and related modules. - @MLGfruitshoot
  • #7359 Changed ScannerHelper field visibility from private to public for external mod access. - @C0bra5
  • #7327 Refactored ~60 multi-block machines to use cleaner texture retrieval; added IIconTexture interface and updated GTRenderedTexture and block rendering to support CTM compatibility; updated dependencies to 4.0.3. - @tiffit
    • Added: IIconTexture interface, CTM support for GTRenderedTexture
  • #7314 Created new MaterialIconRegistry with TextureType and IconType enums to replace dual parallel arrays in TextureSet. Updated texture references across 50+ files including tools, cables, and texture linkers to use the new registry pattern. - @jude123412
    • Added: MaterialIconRegistry class, Ore texture support
    • Removed: Parallel array structure
    • Fixed: Void entry alignment issues
  • #7312 Changed MTEHatchSolidifier.solidifierMolds from a final array to a modifiable ArrayList, updated GhostMoldSlotWidget and GhostMoldSyncHandler to work with the new structure. - @loenaaaa
  • #7299 Updated tooltips in 50+ multiblock entity classes to use consistent formatting: checkHasEnergyHatch → checkHasMaintenanceHatch → checkHasMufflerHatch → checkHasInputBus → checkHasInputHatch → checkHasOutputBus → checkHasOutputHatch. Changed dimension ordering in all tooltip strings. - @DylanTaylor1
    • Added: master channel mentions in tooltips
    • Removed: TecTech-specific terminology
    • Migration: Check your existing Large Turbines, Large Chemical Reactor, Electric Compressor, Fusion Reactors, Industrial Arc Furnace, Spinmatron, DTPF, Accelerated Biological Coordinator and Eye of Harmony. Each of those now tests for hatches it never tested for, and one that is missing stops the structure forming until you add it.
  • #7295 Deleted BECRecipeLoader class and its registration from GTMod. - @Ruling-0
    • Removed: BECRecipeLoader
  • #7227 Migrated recipe map definitions and frontend classes from GT++ into gregtech API, updated imports and references across affected modules. - @Yoshy2002
  • #7202 Simplified MechArmorBase.java by removing fallthrough checks that are no longer needed after HoloInventory PR #62. - @FourIsTheNumber
    • Removed: fallthrough checks
  • #7193 Replaced NBT iteration with ArmorState API call in MechArmorBase.java hologram rendering method. - @FourIsTheNumber
  • #7172 Renamed input to werkstoffX and mixed outputs to itemComponents and fluidComponents in CellLoader and DustLoader. - @Ruling-0
  • #7167 Moved filtering logic from GUI classes to CellInventoryHandler, enabling reusable filtering logic with support for fuzzy matching and ore dict. Removed hardcoded punctuation from messages. - @hinyb
    • Removed: separate MEFilter classes
  • #7156 Moved repetitive getTexture() logic to Textures.BlockIcons.createTextureWithCasing, introduced ICasingTextureProvider interface for CTM support, and applied changes across BartWorks and GoodGenerator multiblocks. - @tiffit
    • Added: ICasingTextureProvider interface, createTextureWithCasing utility, optional glow overlays
  • #7149 Updated MTEMultiBlockBase and GTUtility to use translated strings for progress/details display instead of hardcoded English text. Fixed optional localization implementation and migrated boiler GUI text to language files. - @Ranzuu
    • Added: multiblock progress/details localization entries
    • Removed: hardcoded progress/details strings
  • #7148 Updated all generator classes (Combustion, Gas Turbine, Steam Turbine, Naquadah Reactor, Plasma, Magic converters, Solar, Lightning Rod) to use GTUtility.translate() with @SkipGenerateDescription and added en_US.lang and ru_RU.lang entries. Added getTooltipLines() hook to MTEBasicGenerator. - @Eldrinn-Elantey
    • Added: language file entries for all generators
    • Removed: hardcoded generator names and tooltips
  • #7135 Changed MTERocketFuelGeneratorBase inheritance hierarchy from MTEBasicTank to MTEBasicGenerator, removing ~220 lines of duplicated method implementations and enabling the new MUI2 GUI framework. - @TheYoingLad
    • Removed: duplicated methods from MTEBasicGenerator
  • #7045 Removed RecipeMapBackendProfiler class, simplified RecipeMapBackend lookup logic, fixed GTRecipeLookupBuilderTest warnings, updated RecipeMapBackendLookupTest. - @AnsonYeung
    • Removed: RecipeMapBackendProfiler class, built-in profiling system
    • Fixed: test build warnings
  • #7023 AugmentBuilder: Added supplier-based texture storage for delayed loading. MechArmorAugmentRegistries: Added texture supplier fields. Removed texture definitions from all behavior classes (CreativeFlightBehavior, ForceFieldBehavior, GogglesOfRevealingBehavior, HoloInventoryBehavior, JetpackBehavior, NightVisionBehavior, WaterBreathingBehavior, IArmorBehavior). Updated MechanicalArmorRenderer to use augment textures. - @Spaghetti-OberNub
    • Removed: Texture definitions from behavior classes
  • #6998 Ported fluidEjectionHelper from itemEjectionHelper into OutputHatchType, IOutputHatch, IOutputHatchTransaction, and MTEHatchOutput interfaces/classes. Updated 10+ machines to use the new helper. Added fastutil optimization to WorldgenStone. - @hinyb
    • Added: FluidEjectionHelper abstraction, OutputHatchType enum, IOutputHatch interface, IOutputHatchTransaction interface
  • #6994 Migrated KubaTechGTMultiBlockBase from MUI1 to MUI2 across 5 machines: DEFusionCrafter, Extreme Industrial Greenhouse, Extreme Entity Crusher, and updated Industrial Arc Furnace and Mega Industrial Apiary with minimal changes. Added 3 new GUI classes. Improved diagnostic display names and added fuel info clearing logic. - @Luca-Guettinger
    • Added: Three new KubaTech MUI2 GUI classes, Fuel info clearing on formation
    • Removed: EIGDynamicInventory class, KubaTechGTMultiBlockBase MUI1 GUI code
    • Fixed: Crash with Extreme Industrial Greenhouse/Apiary from rapid GUI interaction
    • Closes GTNH#16484
  • #6987 Migrated MTEDrillerBase class hierarchy from MUI1 to MUI2, creating 4 new dedicated GUI classes (MTEDrillerBaseGui, MTEOilDrillBaseGui, MTEOreDrillingPlantBaseGui, MTEConcreteBackfillerBaseGui). Removed MUI1 GUI code from machine classes. Updated MTEDeepEarthHeatingPump to use new GUI. Added tooltip line for drilling fluid requirement. - @Luca-Guettinger
    • Added: Four new MUI2 GUI classes for driller machines, Drilling fluid requirement tooltip
    • Removed: MUI1 GUI code from driller machine classes
    • Fixed: Ore Drilling Plant broken lang entry
    • Closes GTNH#25120
  • #6932 Added type parameter to MTEBasicMachineBaseGui and updated all subclass references in single-block machine implementations. - @TheYoingLad
  • #6907 Migrated MTESolarGenerator GUI implementation from legacy UI system to MUI2 by extracting UI logic into dedicated MTESolarGeneratorGui class. Reduced generator tile entity code by 63 lines (88→25) while preserving behavior. - @TheYoingLad
    • Added: MTESolarGeneratorGui class with MUI2 widget definitions
  • #6902 Extracted hardcoded tooltip string generation from MTELargeNeutralizationEngine (~237 lines removed from Java) and moved it to the en_US.lang localization file (~15 lines added), using language file placeholders for dynamic values. - @loenaaaa
    • Added: tooltip keys in en_US.lang
    • Removed: hardcoded tooltip code from MTELargeNeutralizationEngine
  • #6848 Consolidated GhostCircuitSyncHandler and GhostShapeSyncHandler into shared backend logic, removing duplicate code from CommonWidgets and MTEHatchExtrusionGui. - @TheYoingLad
    • Added: Unified ghost slot sync handler infrastructure
    • Removed: Duplicate ghost circuit code in CommonWidgets, MTEHatchExtrusionGui ghost circuit logic
  • #6802 Removed issueClientUpdate() in favor of issueTileUpdate() and introduced scheduleTexturePacket() for non-ticking entities. Consolidated network update logic, improved frame box meta handling, and optimized packet transmission. - @AnsonYeung
    • Added: scheduleTexturePacket() method
    • Removed: issueClientUpdate() method, ITemporaryTE interface, GTPacketCreateTE, GTPacketTileEntity
    • Fixed: Redundant network sync calls, Frame box visibility handling
  • #6758 Removed IMetaTileEntity rotation API methods and simplified rotation setup in MTEBasicMachine and CommonBaseMetaTileEntity. Changed rotation logic from tick-based correction to initial-placement setup. - @AnsonYeung
    • Removed: Rotation API methods from IMetaTileEntity, Rotation per-tick adjustments
  • #6739 Moved ~228 lines of CommonWidgets from gregtech.api.gui.widgets to gregtech.api.modularui2.common; refactored MTETieredMachineBlockBaseGui and ~40 subclasses to use shared widget factories instead of inline definitions. - @TheYoingLad
    • Added: CommonWidgets (ModularUI2), CommonButtons (ModularUI2)
    • Removed: CommonWidgets from api.gui.widgets
  • #6733 Refactored FluidUtils wildcard fluid lookup functions to reduce variable allocations and early-exit once a valid fluid is found. - @C0bra5
  • #6723 Removed generic checking leftovers and improved generic interface design across multiple files including Werkstoff, materials, and utility classes. Also refactored WorldSpawnedEventBuilder significantly. - @Nikolay-Sitnikov
    • Removed: Legacy generic checking code
  • #6713 Removed all unused anti-element enum entries, converted Tiberium from enum extension to static declaration, and removed unused fields from Element enum. Also cleaned up EnumUtils references. - @Nikolay-Sitnikov
    • Removed: anti-element enum entries, unused Element fields, EnumUtils anti-element utilities
  • #6693 Dyes enum now stores RGB packed colors instead of RGBA. This change aligns with standard ARGB format used elsewhere in Minecraft and eliminates unnecessary alpha channel data from dye definitions. - @Nikolay-Sitnikov
  • #6647 Removed ExternalMaterials class and updated all references to use direct static material imports; renamed internal material constant for better semantics. - @Nikolay-Sitnikov
    • Removed: ExternalMaterials utility class
  • #6628 Removed hardcoded GUI dimension methods from multiple cover GUI files as they are now handled by the reactive sizing system. - @tiffit
    • Removed: getGUIWidth() method, getGUIHeight() method
  • #6585 Added helper functions to BooleanParameter, DoubleParameter, and IntegerParameter base classes; replaced duplicated logic in TileEntityModuleMiner and MTETeslaTower with calls to these helpers. - @TheYoingLad
    • Added: parameter class helper functions
  • #6562 Migrated XL Turbines to MTEExtendedPowerMultiBlockBase. Added new turbine classes (Steam, HPSteam, SCSTEam, Gas, Plasma). Created MTEXLTurbineGui for internal turbine management. Maintained legacy classes with deprecation for recipe conversion. - @Yoshy2002
    • Added: MTEXLTurbineBase class, MTEXLTurbineGas, HPSteam, SCSteam, Plasma variants, MTEXLTurbineGui, Conversion recipes
    • Fixed: XL Turbine structure design
    • Migration: Your existing XL Turbines keep running on the old structure with their Rotor Assembly hatches. If you want the new GUI turbine-slot version, convert the controller with the new recipe and rebuild to the new layout.
  • #6557 Applied checkMachine() API changes across 60+ multiblock implementations. Fixed Space Mining Module data retrieval on disconnection, restricted Superconductor splitter to single input hatch, and updated all structure checking to use new error reporting system. - @AnsonYeung
    • Added: Diagnostics implementation across multiblocks
    • Fixed: Space Mining Module disconnection crash, Superconductor splitter multiple input hatch bug
    • Migration: Superconductor splitter modules now take a single input hatch: a module built with more than one no longer forms, so remove the extras and rebuild it.
  • #6555 Replaced boolean return value in checkMachine() with void return and List&lt;StructureError> parameter. Modified MTEMultiBlockBase and MTEEnhancedMultiBlockBase to enforce error reporting. Added SimpleStructureError and MissingOutputHatchDT error classes. - @AnsonYeung
    • Added: SimpleStructureError class, MissingOutputHatchDT error class, Void-returning checkMachine() variant, StructureError enforcement
    • Fixed: Silent structure check failures
    • Migration: Update all multiblock checkMachine() implementations to accept List<StructureError> parameter and populate it instead of returning boolean.
  • #6546 Created new MTELargeTurbineBase and specific turbine classes (MTELargeTurbineGas, MTELargeTurbineHPSteam, MTELargeTurbinePlasma, MTELargeTurbineSteam) based on MTEExtendedPowerMultiBlockBase, deprecated old implementations as Legacy variants, unified air-in-front configuration, updated casing references. - @Yoshy2002
    • Added: MTELargeTurbineBase, MTELargeTurbineGas, MTELargeTurbineHPSteam, MTELargeTurbinePlasma, MTELargeTurbineSteam
    • Migration: Rebuild all Large Turbines (Steam, HP Steam, Gas, Plasma) with the new structure; the old -Legacy versions are available for recipes.
  • #6534 Created new MTEAlgaePond class based on MTEExtendedPowerMultiBlockBase with new structure, tier now scales with highest energy hatch tier (capped by glass tier, UMV glass unlocks all), added CTM texture support for algae casing, deprecated old controller as MTEAlgaePondBaseLegacy, updated recipes and registration. - @Yoshy2002
    • Added: MTEAlgaePond class, new algae casing with CTM textures, ItemList and Textures entries
    • Migration: Told with the Algae Pond overhaul (#5608). Both the old and the new controller are called Algae Farm in game. The new one takes exactly one energy hatch at 0.9x its tier voltage, and that hatch, capped by your glass tier, sets the production tier instead of the casing tier.
  • #6533 Created new MTEIndustrialSifter class based on MTEExtendedPowerMultiBlockBase with updated structure definition, deprecated old controller as MTEIndustrialSifterLegacy, and updated recipe definitions and achievement handler. - @Yoshy2002
    • Added: MTEIndustrialSifter class
    • Migration: Rebuild the Large Sifter with the new structure; the old -Legacy version is available for recipes.
  • #6532 Replaced monolithic StructureError enum with StructureErrorId and created modular error classes (MissingHatch, TooFewCasings, WrongBlockError, etc.) in api/structure/error/ package, registered in StructureErrorRegistry, and integrated StructureErrorAdapter for MUI2 rendering. - @AnsonYeung
    • Added: StructureErrorId enum, StructureErrorRegistry, MissingHatch, MissingStructureWrapperCasings, SingletonStructureError, TooFewCasings, TooManyHatch, WrongBlockError, StructureError base class, StructureErrorAdapter
    • Removed: StructureError enum, StructureErrorSyncer widget
  • #6530 Created new MTEIndustrialForgeHammer class based on MTEExtendedPowerMultiBlockBase with new structure definition, deprecated old controller as MTEIndustrialForgeHammerLegacy, replaced anvil-scaling with solenoid-scaling (6× per tier instead of 8×), and updated recipe definitions. - @Yoshy2002
    • Added: MTEIndustrialForgeHammer class, FORGE_CASING texture
    • Migration: Rebuild the Industrial Sledgehammer/Forge Hammer with the new structure; the old -Legacy version is available for recipes.
  • #6519 Created new MTEIndustrialChisel controller and ChiselBackend recipe map alongside legacy variant. Updated texture and recipe definitions. - @Yoshy2002
    • Added: MTEIndustrialChisel, ChiselBackend recipe map, new structure
    • Migration: Your existing Industrial 3D Copying Machine keeps working as the Legacy controller. The new 7x5x5 version is a separate machine; the old controller converts into it in a crafting table.
  • #6511 Refactored MTETreeFarm to use MTEExtendedPowerMultiBlockBase, casing classes, and added grass/log autoplacing. Created legacy controller variant. - @Yoshy2002
    • Added: MTETreeFarmLegacy, autoplacing for dirt/grass and logs
    • Migration: Existing Tree Grow Simulator machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6510 Refactored MTEDroneCentre controller to use new structure design with casing classes. Updated production panel UI and recipe definitions. - @Yoshy2002
    • Migration: Existing Drone Centre machine structure has changed. Rebuild multiblock with new structure or continue using existing structure.
  • #6508 Added MTEOilDrillInfinite new controller class alongside legacy controller. Refactored base driller classes to support new structure with tiered glass and parallel calculations. - @Yoshy2002
    • Added: MTEOilDrillInfinite, new structure definition
    • Migration: Existing Infinite Fluid Drilling Rig machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6506 Removed DISMANTABLE bit usage throughout recipes and tool loaders, replacing BITSD references with BITS across multiple modules. - @danyadev
    • Removed: BITSD field references
  • #6497 Refactored EntityStaballoyConstruct drop handling, replacing manual logic with a cleaner loop implementation. - @UltraProdigy
  • #6478 MTECryogenicFreezer added with new structure inheriting MTEExtendedPowerMultiBlockBase; MTEIndustrialVacuumFreezerLegacy deprecated; HatchElement and MTEMultiBlockBase extended with cryo hatch support; new CTM casings and textures added; old GTplusplus vacuum freezer recipe map removed. - @Yoshy2002
    • Added: MTECryogenicFreezer, cryo hatch element, new cryogenic casing textures with CTM
    • Removed: GT++ vacuum freezer recipe map, Cryogenic Freezer maintenance hatch requirement
    • Migration: Existing Cryogenic Freezer machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6473 MTEThermalBoiler added with new structure inheriting MTEExtendedPowerMultiBlockBase; old MTEThermalBoilerLegacy kept for deprecation; recipes and achievements updated; structure offsets and machine bonuses refactored to use variables. - @Yoshy2002
    • Added: MTEThermalBoiler, new Thermal Boiler structure definition
    • Removed: Thermal Boiler maintenance hatch requirement
    • Migration: Existing Thermal Boiler machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6456 Created MTEFilterGui using MUI2 framework and refactored MTEFilter.java to remove legacy GUI code, reducing complexity from 55 lines to modernized MUI2 implementation. - @TheYoingLad
    • Added: MTEFilterGui MUI2 implementation
    • Removed: Legacy GUI code from MTEFilter
  • #6444 Added MUI2 GUI base class MTEFilterBaseGui.java and updated MTEFilterBase to extend it. Added supporting texture definitions to GTGuiTextures. - @TheYoingLad
    • Added: MTEFilterBaseGui MUI2 implementation
  • #6432 Relocated createChargerSlot() from MTEBasicMachineWithRecipeBaseGui to parent class MTETieredMachineBlockBaseGui. Changed createTooltip() visibility to protected. - @TheYoingLad
  • #6412 Replaced deprecated MUI2 methods (Row/Column, alignX/Y, sizeRel) with modern equivalents (Flow.row/column, horizontalCenter, full/fullHeight/fullWidth) across ~100 GUI classes. - @TheYoingLad
    • Removed: Deprecated MUI2 API calls
  • #6391 Created new MTEIndustrialCokeOven class using MTEExtendedPowerMultiBlockBase with structure definition, deprecated old controller, added recipes and conversions between old/new versions. - @Yoshy2002
    • Added: New Industrial Coke Oven with scalable coil slices, 2% EU discount per coil tier, 16 base parallels, Unlimited coil slices with eternal coils
    • Removed: Maintenance hatch requirement
    • Migration: Existing Industrial Coke Oven machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6384 Added supplier functions to ProcessingLogic for EU and speed modifiers, refactored multiple multiblocks to use suppliers in createProcessingLogic instead of overriding setupProcessingLogic. - @Ruling-0
    • Added: EU modifier supplier, Speed modifier supplier
  • #6371 Created new MTEOreWashingPlant and MTEIndustrialChemicalBath classes with updated structure definitions, switched base class to MTEExtendedPowerMultiBlockBase, deprecated legacy controllers, updated texture assets. - @Yoshy2002
    • Added: MTEOreWashingPlant (new structure), MTEIndustrialChemicalBath (new structure), ISurvivalConstructable support
    • Removed: Maintenance hatch requirement
    • Migration: Industrial Washer and Chemical Bath reworked. Existing machines work as Legacy versions. Craft new controllers or convert old controllers via recipe.
  • #6359 Creates new MTELargeNaquadahReactor class with redesigned structure. Legacy controller retained as MTEMultiNqGeneratorLegacy. Removes maintenance hatch requirement and relaxes placement to allow hatches on any casing. Adds new Naquadah Reactor Casing block with textures and CTM support. - @Yoshy2002
    • Added: Large Naquadah Reactor new structure class, Naquadah Reactor Casing block, CTM textures for reactor casing
    • Removed: Maintenance hatch requirement
    • Migration: Existing Large Naquadah Reactor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6356 Creates two new multiblock classes (MTEIndustrialBendingMachine and MTEIndustrialFormingPress) to replace unified Material Press. Increases parallels from 4 to 6 per tier due to larger structure and reduced wall shareability. Adds Casings entries and conversion recipes. - @Yoshy2002
    • Added: Industrial Bending Machine class, Industrial Forming Press class, Two shaped conversion recipes
    • Removed: Unified Material Press
    • Migration: Material Press split into Bending Machine and Forming Press. Existing machines work as Legacy versions. Craft new controllers or convert old controller via recipe.
  • #6349 Creates new MTEExtremeCombustionEngine class extending MTEExtendedPowerMultiBlockBase for cleaner structure handling. Legacy controller retained as MTEExtremeDieselEngineLegacy. Maintenance hatch requirement removed and structure offsets hardcoded to variables. - @Yoshy2002
    • Added: Extreme Combustion Engine new structure class
    • Removed: Maintenance hatch requirement
    • Migration: Existing Extreme Combustion Engine machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6341 Removes ITexturedBlock, RunnableWithInfo, BTF_Inventory, BlockPos, ItemStackData interfaces and classes from gtPlusPlus. Removes 183 unused textures from GTUITextures. Removes various unused block base classes and renderers. PR verified to work in full pack. - @Alexdoru
    • Removed: ITexturedBlock interface, RunnableWithInfo interface, BTF_Inventory class, BlockPos class, ItemStackData class, unused UI textures, multiple unused block and renderer classes
  • #6340 Creates new MTELargeCombustionEngine class with updated structure design. Legacy controller retained as MTEDieselEngineLegacy. Allows Muffler and Maintenance hatches on any Titanium Casing while maintaining Input Hatch restrictions. Internal mechanics unchanged. - @Yoshy2002
    • Added: Large Combustion Engine new structure class
    • Migration: Existing Large Combustion Engine machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6339 Creates new MTEElectricImplosionCompressor class extending MTEExtendedPowerMultiBlockBase. Legacy controller retained as MTEElectricImplosionCompressorLegacy. New structure reduces containment blocks from 27 to 24 and removes maintenance hatch requirement. Adds Casings entries and conversion recipes. - @Yoshy2002
    • Added: Electric Implosion Compressor new structure class, Casing definitions
    • Removed: Piston animation, Maintenance hatch requirement
    • Migration: Existing Electric Implosion Compressor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6338 Removes gtPlusPlus.api.objects.Logger class (151 lines) and its usages across multiple files. Cleans up FishPondRecipes, SemiFluidFuelHandler, GTCorePlugin, and other files that referenced the custom logger. - @Alexdoru
    • Removed: GtPlusPlus Logger class, BlockPos.java, ShapedRecipe.java, multiple other unused GtPlusPlus utility files
  • #6335 Updates multiple item and tile entity classes to use ItemStackNBT helpers instead of direct NBT access. Bumps ItemStackNBT dependency version. Reduces boilerplate and error-prone code in NBT handling. - @Alexdoru
  • #6326 Created new MTEIndustrialExtruder controller, deprecated legacy version, increased parallel multipliers, expanded hatch placement to Stainless Steel and Pressure Containment casings. - @Yoshy2002
    • Added: new MTEIndustrialExtruder controller, structure rework
    • Fixed: ISurvivalConstructable implementation
    • Migration: Existing Industrial Extruder machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6319 Created new MTEIndustrialRockBreaker controller with reworked structure, deprecated MTEIndustrialRockBreakerLegacy, added conversion recipe, refactored bonuses into variables. - @Yoshy2002
    • Added: new MTEIndustrialRockBreaker controller, structure rework
    • Fixed: ISurvivalConstructable implementation
    • Migration: Existing Boldarnator (Industrial Rock Breaker) machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6317 Created new MTEAdvImplosionCompressor controller with reworked structure, deprecated legacy version, added conversion recipe, refactored machine bonuses into variables. - @Yoshy2002
    • Added: new MTEAdvImplosionCompressor controller, structure rework
    • Fixed: ISurvivalConstructable implementation
    • Migration: Existing Advanced Implosion Compressor machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6313 Created new MTEPyrolyseOven controller with improved structure, deprecated old MTEPyrolyseOvenLegacy, refactored into extended power base class, added conversion recipes. - @Yoshy2002
    • Added: new MTEPyrolyseOven controller, MTEPyrolyseOvenLegacy deprecation
    • Removed: maintenance hatch requirement
    • Fixed: ISurvivalConstructable implementation
    • Migration: Existing Pyrolyse Oven machines continue to work as Legacy version. Craft new controller for new structure, or convert old controller via recipe.
  • #6312 Created new MTEUniversalChemicalFuelEngine controller with reworked structure, deprecated old controller with -Legacy suffix, added conversion recipe in MTERecipeLoader, improved structure offsets and bonus variables. - @Yoshy2002
    • Added: new MTEUniversalChemicalFuelEngine controller, structure rework
    • Fixed: ISurvivalConstructable implementation
    • Migration: Existing UCFE machines continue to work as Legacy version. Craft new UCFE controller for new structure, or convert old controller via recipe.
  • #6310 Created new MTEPlanetaryGasSiphon controller with improved structure validation, deprecated old TileEntityPlanetaryGasSiphonLegacy, refactored structure offsets and machine bonuses into variables, added conversion recipe in MTERecipeLoader. - @Yoshy2002
    • Added: new MTEPlanetaryGasSiphon controller, structure rework, conversion recipe
    • Removed: maintenance hatch requirement
    • Fixed: ISurvivalConstructable implementation
    • Migration: Your Planetary Gas Siphon keeps running as the Legacy controller and keeps processing its recipes. Convert or craft the new controller only if you want the larger structure and the coil speed bonus.
  • #6297 Created NEITemplateContext to replace 7-parameter createNEITemplate calls, added prepareRecipe method to RecipeMapFrontend for pre-cache recipe processing, set Catalyst as default icon, removed LHCNEIHandler hack in favor of badge functionality. Updated all recipe handlers (AssemblyLine, Foundry, Purification, BeamCrafter, LargeHadronCollider, etc.). - @slprime
    • Added: NEITemplateContext, prepareRecipe method, NEI badge support for NC/Chance
    • Removed: LHCNEIHandler (dynamic progressbar hack)
  • #6292 Added material entries in Materials.java and MaterialsInit.java, added fluid block loaders in LoaderGTBlockFluid.java, created fluid texture assets with animations. Removed obsolete lang keys from Russian and Chinese translations. Depends on NewHorizonsCoreMod PR #1684. - @Nikolay-Sitnikov
    • Added: Pollution, NaK, Enriched Bacterial Sludge, Fermented Bacterial Sludge materials, fluid textures with animations
    • Removed: unused fluid lang keys
    • Fixed: misnamed PNG file
  • #6282 Updated multiple basic machine classes to use gt.blockmachines.basicmachine.* localization keys; modified MTEBasicMachineWithRecipe.java, GTLanguageManager.java, and MachineType.java; added comprehensive entries to en_US.lang. - @Eldrinn-Elantey
    • Added: Localization keys for basic machines in en_US.lang
  • #6280 Deleted INIT_PHASE enum and mod ID constants from GTplusplus.java (46 lines removed); removed deprecated base class code from GTPPMultiBlockBase.java (15 lines removed). - @Alexdoru
    • Removed: INIT_PHASE enum, Hardcoded mod ID references
  • #6271 Created new MTEIndustrialMacerator.java class (465 additions) with new structure; legacy controller moved to GTplusplus with renamed suffix; added conversion recipe; updated tier and registration in LoaderMetaTileEntities.java. - @Yoshy2002
    • Added: New MTEIndustrialMacerator.java with expanded structure, Conversion recipe for legacy controller
    • Migration: Existing Maceration Stacks keep running as the Legacy controller, T2 upgrade included. Tier 1's shape is the same as before and Tier 2 is larger and four times faster; convert the old controller in a crafting table (the upgrade tier carries over) and rebuild only if you want the new T2.
  • #6257 Created new MTEIndustrialFishingPond with refactored structure; changed base class to MTEExtendedPowerMultiBlockBase; adjusted water auto-placement for new structure; added achievement handler updates and legacy controller reference. - @Yoshy2002
    • Added: new MTEIndustrialFishingPond structure, aquatic casing textures
    • Migration: Your Zhuhai Fishing Port keeps running as the Legacy controller with its old shape. Craft or convert to the new controller only if you want the redesigned structure and the adjusted water auto-placement.
  • #6252 Created new MTENaquadahFuelRefinery with updated structure from GT Odyssey; changed hatch placement requirements (no longer adjacent to field restriction glass); added conversion recipe for old to new controller. - @Yoshy2002
    • Added: MTENaquadahFuelRefinery with new structure, conversion recipe for old controller
    • Removed: field restriction glass adjacency requirement
    • Migration: Existing Naquadah Fuel Refineries keep running as the Legacy controller with their old hatch placement. The new design lets hatches sit anywhere; convert the old controller with the NEI migration recipe and rebuild only if you want it. The Legacy controller goes away in the next major version.
  • #6251 Created MTELargeBoilerBase using Casings class instead of separate fields; added -Legacy suffix to old controllers (MTELargeBoilerBronzeLegacy, etc.); migrated recipes and conversion recipes from old to new controllers. - @VortexSo4
    • Added: MTELargeBoilerBase with new structure, Legacy variants of boiler controllers
    • Migration: Your existing Large Boilers keep working unchanged as the Legacy controllers. The crafting recipe now yields the new controller, and a shapeless recipe converts an old controller into the new one - rebuild only if you want the new design.
  • #6250 Created MTEDebugStructureWriterGui class using MUI2 and refactored MTEDebugStructureWriter to use the new GUI. - @TheYoingLad
    • Added: MTEDebugStructureWriterGui MUI2 implementation
  • #6249 Created MTEDebugPowerGeneratorGui class using MUI2 and refactored MTEDebugPowerGenerator to use the new GUI. - @TheYoingLad
    • Added: MTEDebugPowerGeneratorGui MUI2 implementation
  • #6248 Created MTEDebugPollutorGui class using MUI2 and refactored MTEDebugPollutor to use the new GUI. - @TheYoingLad
    • Added: MTEDebugPollutorGui MUI2 implementation
  • #6247 Created new MTEBuckConverterGui class using MUI2 and refactored MTEBuckConverter to use the new GUI, updating localization strings. - @TheYoingLad
    • Added: MTEBuckConverterGui MUI2 implementation
  • #6216 Made SBRInventoryContext and SBRWorldContext constructors private, added public static create() factory methods returning interface types, promoted setup() to interface, and fixed SBRContextHolder to hold interface-typed fields instead of concrete implementations. - @leagris
    • Added: Static create() factory methods on SBRInventoryContext and SBRWorldContext, setup() method to ISBRInventoryContext and ISBRWorldContext
    • Removed: Shadowed LIGHTNESS constant in SBRInventoryContext, Direct constructor access from outside SBR context classes
    • Fixed: Javadoc references to abstract base class instead of interface
    • Migration: Mods bundling GT5 API classes directly must update to depend on GT5 as a provided dependency and use the new static factory methods.
  • #6182 Created new MTEIndustrialMolecularTransformer extending MTEExtendedPowerMultiBlockBase; deprecated old controller to MTEIndustrialMolecularTransformerLegacy; added conversion recipe and updated loader registrations. - @Yoshy2002
    • Added: new structure for Molecular Transformer, ISurvivalConstructable support, conversion recipe
    • Migration: Existing Molecular Transformers keep running as the Legacy controller. Convert the controller and rebuild to the larger community design only if you want it; the Legacy controller goes away in the next major version.
  • #6178 Ported MTEBasicTank to MUI2 with new MTEBasicTankBaseGui; updated base classes (MTEBasicGenerator, MTEBasicHull, MTEHatch) with useMui2 flags; removed old GUI flags from related classes; updated GTGuiTextures. - @TheYoingLad
    • Added: ModularUI2 port of MTEBasicTank GUI
    • Removed: old GUI flags from boilers and teleporter
  • #6176 Created new MTEFrothFlotationCell extending MTEExtendedPowerMultiBlockBase; deprecated old controller to MTEFrothFlotationCellLegacy; added conversion recipe and updated loader registrations. - @Yoshy2002
    • Added: new structure for Froth Flotation Cell, ISurvivalConstructable support, conversion recipe
    • Migration: Your existing Flotation Cell keeps working as the Legacy controller. Rebuild to the new structure only if you want it - the conversion recipe swaps the old controller for the new one.
  • #6175 Set useMui2=true in MTETieredMachineBlock and false in direct inheritors with GUIs; added logo and adjusted margins in base GUI classes. - @TheYoingLad
    • Added: ModularUI2 support flags, logo in GUIs, margin standardization
  • #6171 Created new MTEIndustrialThermalCentrifuge extending MTEExtendedPowerMultiBlockBase with tiered coils and solenoids; deprecated legacy version to MTEIndustrialThermalCentrifugeLegacy; added conversion recipe and updated loader registrations. - @Yoshy2002
    • Added: new compact structure for Industrial Thermal Centrifuge, tiered coil bonuses, tiered solenoid parallels, ISurvivalConstructable support, conversion recipe
    • Removed: maintenance hatch requirement
    • Migration: Your Large Thermal Refinery keeps running as the Legacy controller. Convert the old controller or craft the new one only if you want the coil and solenoid bonuses.
  • #6160 Renamed MTESteamMultiBase → MTESteamMultiBlockBase, changed superclass from GTPPMBB to ExtendedPowerMBB, consolidated getCasingTextureId logic into isHighPressure method, moved updateHatchTexture to base class. - @VortexSo4
    • Added: isHighPressure method to base class, updateHatchTexture in base class
    • Migration: Addon developers using steam multiblocks should update to call the new MTESteamMultiBlockBase; existing steam multis are refactored but mechanics unchanged.
  • #6152 Pre-computed constant clamping results in CuttingRecipes and reduced unnecessary dynamic computations. Cleaned up recipe loading logic. - @boubou19
  • #6151 Updated MTELargeHadronCollider, MTELINAC, MTESourceChamber, MTESynchrotron, and MTETargetChamber to reference shielded accelerator casings from Casings enum instead of hardcoded values. - @ham-corp
    • Added: shielded accelerator casing enum entries
  • #6150 Added @Override annotations to methods and fixed inheritance chains across 40+ files in bartworks, detrav, galacticgreg, and tectech modules. - @Alexdoru
    • Fixed: inheritance issues
  • #6148 Converted MTEDrillerBase to use enums for configuration values, replaced wrapper key inner class with bit-packed integers in Int2ObjectOpenHashMap for improved memory efficiency. - @Alexdoru
    • Removed: wrapper key inner class
  • #6147 Deleted duplicate MTETooltipMultiBlockBaseEM class from goodgenerator and updated 9+ machines to use the canonical MTETooltipMultiBlockBase from gregtech API. - @Alexdoru
    • Removed: duplicate MTETooltipMultiBlockBaseEM class
  • #6139 Moved repeated batch mode toggle implementations into a parent class to eliminate copy-paste code across multiblock tile entities. - @Alexdoru
    • Removed: duplicate batch mode toggle implementations
  • #6075 Added GTUtility.translateMultiline() to split translated strings by literal \n characters; replaced numbered key pattern (key.0, key.1) with single-key approach in ItemArmorTinFoilHat.java. - @Eldrinn-Elantey
    • Added: translateMultiline() utility method
  • #6065 Replaced hash implementation in EnderLinkTag, EnderLinkTank, and TeslaCoverConnection with better hashing strategy. - @Alexdoru
  • #6064 Modified MetaGeneratedItem, MetaBaseItem, and GTGenericItem to store localization keys and resolve display names/tooltips at runtime using GTUtility.translate; updated all MetaGeneratedItem subclasses and en_US.lang with new entries. - @Eldrinn-Elantey
    • Added: localization key storage for MetaGeneratedItem
  • #6062 Refactored MTEIntegratedOreFactory to use MTEExtendedPowerMultiBlockBase, new structure definition, casing classes, and variable-based bonuses; created MTEIntegratedOreFactoryLegacy for backward compatibility; updated recipe loader with conversion recipe. - @VortexSo4
    • Added: new Integrated Ore Factory structure, conversion recipe from legacy to new
    • Removed: Integrated Ore Factory maintenance hatch requirement
    • Migration: Your Integrated Ore Factory keeps running as the Legacy controller. Craft the new controller, or convert the old one at a crafting table, only if you want the laser-capable structure.
  • #6032 Updated MTEWirelessCharger tooltip rendering and language files (en_US, ru_RU) for better maintainability. - @Eldrinn-Elantey
  • #6028 Split updateEntityProfiled into targeted sub-methods across BaseMetaTileEntity, BaseMetaPipeEntity, and CommonBaseMetaTileEntity to enable more granular performance analysis. Mostly code reorganization with minor implementation changes. - @TechLord22
  • #6018 FluidText and fluidRateText now delegate color formatting to coloredText instead of manually concatenating L_COLOR and EnumChatFormatting.GRAY, centralizing color logic in TooltipHelper. - @Eldrinn-Elantey
  • #6005 Refactored MTECropHarvestor to use GTUtility.translate for localization and TooltipHelper for formatting. Updated Gregtech4Content and language files. - @Eldrinn-Elantey
    • Added: 17 new language entries for Crop Manager UI, 17 Russian language entries
    • Removed: 1 miscutils lang entry
  • #5966 Added gt.utility.translate method to GTLanguageManager and TooltipHelper, refactored BlockCasings and related classes to use centralized localization instead of inline translation calls. - @Eldrinn-Elantey
    • Added: gt.utility.translate localization helper, GTLanguageManager localization support
  • #5963 Reworked MTEIndustrialMixer to use MTEExtendedPowerMultiBlockBase, introduced new MIXING_CASING block type, updated structure definition with new casings/structure validation, updated recipes from legacy to new controller with conversion recipe support. - @VortexSo4
    • Added: new Industrial Mixer casing (MIXING_CASING), new MTEIndustrialMixer class with updated structure, conversion recipe from legacy to new Industrial Mixer, ISurvivalConstructable implementation
    • Fixed: maintenance hatch requirement, structure offset handling
    • Migration: Your Industrial Mixing Machine keeps running as the Legacy controller. Convert or craft the new controller only if you want the item-pipe-casing speed scaling.
  • #5957 Removed ProcessingLogic cache reset logic, made dualInvWithPatternToRecipeCache a WeakMap for automatic cleanup, and removed custom equals/hashCode from PatternSlot to use reference identity (which is correct since ItemStack does not override equals). - @zyf051520
    • Removed: ProcessingLogic cache reset calls, PatternSlot custom equals/hashCode
  • #5952 Created MTEBasicMachineWithRecipeBuilder to handle machine construction with fluid slot tracking, removing complex initialization code from MTEBasicMachineWithRecipe and simplifying LoaderMetaTileEntities. - @danyadev
    • Added: MTEBasicMachineWithRecipeBuilder class, fluid slot tracking flags
    • Removed: old builder logic
  • #5897 Ported all BlockCasings classes to use the Casings enum with IBlockWithMetadata support; added casing registration callbacks to each block class. Changes are untested in production multis. - @chrombread
    • Added: Comprehensive Casings enum definitions, Casing registration system
    • Migration: Addon developers can now use the new Casings enum system for multiblock definitions; existing multis continue to work unchanged.
  • #5888 Migrated MTEIndustrialPackager to use Casings enum and MTEExtendedPowerMultiBlockBase; created new structure; marked old controller as Legacy; integrated item pipe casings as a tiered element with speed bonuses. - @VortexSo4
    • Added: MTEIndustrialPackager new structure, Item pipe casing tier support, Structure author attribution
    • Fixed: Industrial Packager survival mode buildability
    • Migration: Existing Amazon Warehousing Depots keep running as the Legacy controller at their flat 600% speed. The new build scales from 100% to 800% with the item pipe casing tier, so a Tin-pipe build is slower than what you already have; use Black Plutonium pipes to come out ahead. Nanochip recipes now consume the new controller, so convert your spares.
  • #5885 Migrated MTEIndustrialCentrifuge to use Casings enum and MTEExtendedPowerMultiBlockBase; created new structure class; marked old controller as Legacy; added structure author attribution and conversion recipes. - @VortexSo4
    • Added: MTEIndustrialCentrifuge new structure, New Centrifuge casing tier, Structure author support, Conversion recipes
    • Fixed: Centrifuge survival mode buildability
    • Migration: Existing Industrial Centrifuges keep running as the Legacy controller. Convert to the new controller and rebuild only if you want the roomier hatch layout and the momentum mechanic; the Legacy controller goes away in the next major version.
  • #5877 Added new MTEIndustrialWireMillModern.java extending MTEExtendedPowerMultiBlockBase with tiered speed boost (50% base, +50% per tier to 400% max). Registered in LoaderMetaTileEntities with new MetaTileEntityID. Added ItemPipeCasings utility helper to GTStructureUtility. Deprecated old MTEIndustrialWireMillLegacy. Updated recipes in gtPlusPlus RecipesMachinesMulti. Old code path preserved for backwards compatibility. - @VortexSo4
    • Added: MTEIndustrialWireMillModern class with tiered speed bonuses, ItemPipeCasings utility, New Wire Mill casing
    • Migration: Existing Industrial Wiremills keep running as the Legacy controller at up to 300% pipe-tier speed. Convert the controller (shapeless, in NEI) and rebuild only if you want the new 400% cap and the roomier casing layout, and note that Nanochip recipes now require the new controller.
  • #5859 Removed duplicate FluidContainerRegistry, replaced calls to GTUtility fluid registry methods with ForgeContainerRegistry equivalents. Retained only fluidToContainersMap and getContainersFromFluid since Forge registry lacks inverse mapping. Changes span GTUtility, GTMod, GTProxy, and recipe systems. - @danyadev
    • Removed: FluidContainerRegistry duplicate implementation
  • #5853 Moved ME output hatches to dedicated outputme package, enhanced MTEHatchOutputMEBase with exposed provider API methods, updated import paths across multiple multi-block implementations and cover modules. - @hinyb
    • Added: Provider API exposure in ME output base class
    • Removed: Duplicate ME output hatch classes from old location
  • #5849 Removed ItemStack map remapping logic from GTMod and GregTechAPI that was executed on world enter/leave events, deleted sOreToCobble map and getCobbleForOre() method from GTOreDictUnificator, and removed associated unused code from CoverRegistry and RecipeMapBackend. - @danyadev
    • Removed: World load/unload ItemStack remapping, sOreToCobble map, getCobbleForOre() method, Associated remapping-related code
  • #5848 Eliminated explicit addFluidContainerData() calls throughout the codebase, keeping only the FluidContainerRegisterEvent subscription which automatically handles all fluid registrations. Also removed unused runMoltenUnificationEnforcement() method and decimalFormatters field. - @danyadev
    • Removed: Unnecessary addFluidContainerData() calls, runMoltenUnificationEnforcement() method, decimalFormatters field, getDecimalFormat() method
  • #5833 Moved scanner output logic from GTUtilities to new ScannerHelper class with ScannerConfig configuration. Added IGregTechDeviceInformation interface to standardize multiblock scanner data. Removed scanner logic from MTEExtendedPowerMultiBlockBase and updated MTEMultiBlockBase to use unified scanner interface. - @evgengoldwar
    • Added: ScannerHelper class, ScannerConfig configuration class, IGregTechDeviceInformation interface
    • Removed: Scanner logic from GTUtilities, Scanner code from MTEExtendedPowerMultiBlockBase
    • Migration: OpenComputers programs that read a GregTech machine through an Adapter have to be rewritten. getSensorInformation() used to hand back finished, coloured text; it now hands back the untranslated keys the client turns into that text, so a line that read "Efficiency: 100 %" arrives as GT5U.multiblock.scanner.efficiency with its arguments appended after it. GregTech's own scanner and its metrics cover were taught to decode this, but the Computronics bridge passes the strings straight through. Two further traps for anything that indexes the array: a line is emitted only when it applies, so a stopped machine hands back fewer entries than a running one and every position after the gap moves, and numbers now arrive with thousands separators, switching to exponential notation above a trillion, which defeats tonumber(). Around 160 machines are affected, GregTech, TecTech, GT++, GoodGenerator, Bartworks, KubaTech, KekzTech and the Space Elevator among them.
  • #5812 MTECubicMultiBlockBase deleted; MTEImplosionCompressor and MTEVacuumFreezer rewritten to extend standard multiblock bases instead, reducing code duplication. - @VortexSo4
    • Removed: MTECubicMultiBlockBase class
  • #5781 Replaced redundant empty icons and rendering error textures with atlas-internal references. Added optional resource system allowing BlockIcon and ItemIcon to fall back to vanilla transparent texture. Modified PrefixTextureLinker, Textures enum, and various tile entity texture declarations. - @leagris
    • Added: Optional texture resource system, Fallback to vanilla transparent texture for missing optional icons
    • Removed: GTMod hardcoded empty icon registration, Duplicate rendering error textures
  • #5752 Updated dependency versions and replaced all formatNumber call sites with new method implementation, maintaining backward compatibility. - @Connor-Colenso
  • #5751 Updated class names, constants, resource files, and GUI code to use Spinmatron naming convention throughout the codebase. - @chrombread
  • #5747 Replaced String[] arrays in DimensionHelper with LinkedHashMap<String, DimRecord>, providing structured access to dimension metadata (fullName, internalName, trimmedName, abbr, tierKey) while preserving CSV and UI ordering. - @ABKQPO
    • Added: DimRecord class
  • #5731 Removed ZPMRubberChanges class and updated recipe loader implementations in TecTech to avoid reflection-based recipe modifications. - @Nikolay-Sitnikov
    • Removed: ZPMRubberChanges reflection utility
  • #5727 Extracted heat sensing logic into IHeatProducer interface, fixed redstone emitter to respect face orientation, added GTPacketClientMTERendererData for client render syncing, and expanded IMTERenderer capabilities. - @YamiKami-Sama
    • Added: IHeatProducer interface, GTPacketClientMTERendererData network packet, Render distance configuration
    • Fixed: Heat Sensor emitting redstone on all faces
  • #5683 Deleted GTPacketSetConfigurationCircuit, GTPacketSetMold, and GTPacketSetShape packet classes. Replaced packet-based sync with MUI2 syncer widgets. Fixed hatch slot mapping in MTEHatchExtrusion. - @zyf051520
    • Added: MUI2 ghost sync handler support
    • Removed: GTPacketSetConfigurationCircuit, GTPacketSetMold, GTPacketSetShape, Custom GT packet sync logic
    • Fixed: MTEHatchExtrusion slot numbering
  • #5675 Removed ArmourLoader.java, BaseArmour, and BaseArmourHelm classes. Moved tin foil hat initialization to WearableLoader and unified armor hierarchy to use BaseItemWearable. - @Spicierspace153
    • Removed: ArmourLoader class, BaseArmour class, BaseArmourHelm class
  • #5673 Deleted RecipeUtils.java entirely. Migrated shaped recipe creation logic to GTModHandler and individual recipe handlers. Updated all references throughout GT5U. - @serenibyss
    • Added: Shaped recipe methods in GTModHandler
    • Removed: GT++ RecipeUtils class
  • #5672 Migrated utility methods from GT++ ItemUtils/FluidUtils to GTModHandler.java and recipe-specific implementations across multiple recipe loader classes. - @serenibyss
    • Added: Standard methods in GTModHandler
    • Removed: Duplicate utility methods from GT++ classes
  • #5658 Moved item definitions to GregtechItemList, moved fluid definitions to GTPPFluids, removed Bio and Breakthrough circuits, removed BaseItemTCShard and GTPPIntegratedCircuitItem classes, updated MissingMappingsHandler. - @serenibyss
    • Removed: Unused Bio and Breakthrough circuits, TConstruct shard items, Integrated circuit items
    • Fixed: Missing mappings warning for Hydroxide cell
  • #5652 Removed IC2_Fertilizer material references and replaced with CropsNH versions, removed GTBaseCrop and crop manager, replaced secondary output references with getModItem calls. WorldData references for old crop manager will be auto-migrated by CropsNH. - @C0bra5
    • Removed: IC2 Fertilizer item list entry, Liquid fertilizer, UN Fertilizers, Crop Manager, GT5u Crop API (GTBaseCrop)
    • Migration: Crop Harvestors and the EV and higher Crop Gene Extractors, Synthesizers and Seed Replicators are converted to their CropsNH equivalents in place as your save loads. The LV, MV and HV Crop Gene Extractors and Crop Gene Synthesizers are deleted - placed ones turn to air and stacks turn to stone, so break and scrap them before you update.
  • #5634 Added Steam Fuser and related bus recipes to RecipesMachinesMulti. - @danyadev
    • Added: Steam Fuser recipes
  • #5627 Updated multiple recipe loader classes to use direct recipe addition instead of CI class methods, then deleted CI class. - @serenibyss
    • Removed: CI utility class
  • #5626 Moved recipe logic out of CI class into RecipesGregTech, RecipesMachinesCustom, and RecipesMachinesMulti; further reduced CI class size. - @serenibyss
    • Removed: CI class dependencies
  • #5625 Simplified block localization logic, removed unnecessary fields in favor of BlockType enum usage, cleaned up old code patterns. - @Spicierspace153
    • Removed: String-based localization hacks, Unused fields
  • #5623 Removed unused overloads, temporary variables, and deprecated color customization logic; changed generate() to void return type. - @Spicierspace153
    • Removed: Deprecated generate overloads, Unused temp variables, Custom color logic in generateOreMaterial
  • #5621 Split RecipesMachines into four specialized classes (RecipesMachinesCustom, RecipesMachinesMulti, RecipesMachinesTiered, RecipesMachines), removed CI and RecipeUtils utility classes, and fixed cover recipe to use dynamic tier casings instead of universal Multi-Use Casings. - @serenibyss
    • Added: RecipesMachinesCustom class, RecipesMachinesMulti class, RecipesMachinesTiered class
    • Removed: CI class helper methods, RecipeUtils class methods
    • Fixed: Tiered machine cover recipe ingredient requirements
  • #5591 Rewrote MTEHatchElementalDataOrbHolder GUI to use ModularUI2 instead of legacy UI system. Created new MTEHatchElementalDataOrbHolderGui class. - @Spicierspace153
    • Added: MTEHatchElementalDataOrbHolderGui (ModularUI2)
  • #5561 Removed unused MUI1 GUI code fragments from multiple tile entities including MTERadioHatch, AntimatterGenerator, MTEMicrowaveEnergyTransmitter, MTENanoForge, and purification units. - @serenibyss
    • Removed: legacy MUI1 code
  • #5560 Removed unused methods and code fragments from MTEBoiler, MTEBoilerLava, MTEBoilerSolar, and MTEAdvancedBoilerBase. - @serenibyss
    • Removed: dead boiler GUI code
  • #5553 Updated string literals and language file references (en_US, ru_RU) replacing 'dot' terminology with 'hint', and rewrote StructureWrapperTooltipBuilder hint formatting. - @UltraProdigy
  • #5552 Refactored ~180 dot() method calls to hint() across multi-block tile entities and structure utilities to align with updated StructureLib terminology. - @UltraProdigy
  • #5534 Split ITextureBuilder into GTTextureBuilder and GTBlockTextureBuilder, removed allowAlpha parameter, deprecated stdOrient, consolidated texture building logic across render classes. - @sisyphussy
    • Added: GTBlockTextureBuilder
    • Removed: allowAlpha parameter, stdOrient usage
  • #5519 Removed yamcl dependency from dependencies.gradle and replaced YamCORE wrapper calls with direct Minecraft/Forge/Forge Message API usage across TecTech modules. - @Nikolay-Sitnikov
    • Removed: yamcl dependency, YamCORE wrapper classes
  • #5511 Migrated item renderer implementations in BartWorks and GregTech to use refactored rendering utilities from GTNHLib, updated dependencies.gradle. - @FourIsTheNumber
  • #5468 Refactored ItemStackData to avoid unnecessary empty NBT compound creation in GTPlus. - @Alexdoru
  • #5461 Extracted title widget code from GTBaseGuiBuilder.java to CommonWidgets.java to enable reuse across different UI contexts. - @serenibyss
    • Added: title widget in CommonWidgets
    • Removed: title widget from GTBaseGuiBuilder
  • #5440 Split Dyes enum to distinguish Machine Metal from Gui Metal, updated IColoredTileEntity and related classes to use separate color values. - @ABKQPO
    • Added: Gui Metal color unit, Client config entry for Gui Metal
    • Fixed: Machine texture coloring
  • #5424 Moved MTEElectricAutoWorkbenchGui to MUI2, simplified tile entity code by removing legacy GUI references, added MUI2 textures. - @serenibyss
    • Added: MTEElectricAutoWorkbenchGui MUI2 implementation
    • Removed: Legacy GUI code from MTEElectricAutoWorkbench
  • #5423 Added MUI2 GUI classes for Godforge modules (Base, Exotic, Molten, Plasma, Smelting), refactored hypervisor system, introduced SyncValue and SyncActions data structures, updated Panels and Statistics configurations. - @serenibyss
    • Added: Godforge MUI2 UI implementations, SyncValue and SyncActions classes, GTGuiTextures for Godforge
  • #5414 Replaced legacy GUI with MUI2-based MTEForgeOfGodsGui, implemented complex sync systems for panels, upgrades, colors, and statistics. Added data classes for handling state: ColorData, Fuels, Milestones, SyncActions, SyncValues, StarColors, Panels, etc. - @serenibyss
    • Added: MTEForgeOfGodsGui (MUI2 implementation), ColorData, Fuels, Milestones, StarColors, Statistics, SyncActions, SyncValues, UpgradeColor, panel classes
    • Fixed: fuel amount integer overflow, escape key navigation in upgrade GUI
    • Migration: Godforge converted to MUI2; existing forge state and upgrade configurations should be verified after update, particularly on dedicated servers.
    • Closes GTNH#17615, GTNH#18530
  • #5410 Eliminated runtime circuit recipe generation in CircuitImprintLoader, moved static recipes to NHCore, added new CircuitWraps class for item references, updated loaders and recipe systems. - @boubou19
    • Added: CircuitWraps class for static item references, static recipe references in gregtech.api.enums.ItemList
    • Removed: CircuitPartLoader class, dynamic recipe patching on server startup
    • Fixed: recipe generation timing and structure
    • Migration: Circuit imprint generation now happens at server start; addon mods should use NewHorizonsCoreMod PR #1472 for static circuit recipes instead of dynamic patching.
  • #5409 Modified MTEMultiBlockBase and MTEMultiBlockBaseGui to add left corner widget column and adjust muffle button rendering order. - @serenibyss
    • Added: left corner column for terminal widgets
  • #5406 Simplified casting logic in RadioHatchMaterialLoader by removing redundant type conversions. - @boubou19
  • #5401 Replaced NBT-based behavior storage with dynamic ArmorState system using BehaviorName identifiers. Created builders (ArmorPartBuilder, AugmentBuilder, CoreBuilder, FrameBuilder) and new context/state classes for cleaner armor handling. Behaviors now merge when identical, simplifying stacking logic. - @RecursivePineapple
    • Added: ArmorState, ArmorContext, ArmorPartBuilder, AugmentBuilder, CoreBuilder, FrameBuilder, BehaviorName concept, stackable augments
    • Removed: permanent NBT behavior storage
    • Fixed: behavior stacking simplification
    • Migration: Modular armor NBT format changed; existing armor items lose persisted behaviors and must be re-equipped with frames, cores, and augments to restore functionality.
  • #5391 Removed redundant iteration code in StaticRecipeChangeLoaders.unificationRecipeEnforcer. Load time reduced from ~400ms to ~4ms. - @boubou19
    • Removed: Redundant recipe map iterations
  • #5380 Removed duplicated and dead code in BridgeMaterialsLoader while preserving logic. WerkstoffLoader.runGTItemDataRegistrator now completes in ~11.5ms instead of ~52.7ms. - @boubou19
    • Removed: Duplicate code, Dead code paths
  • #5360 Removed deprecation markers from bucket fluid unit in GTRecipeBuilder to reflect actual usage patterns. - @chochem
    • Removed: Bucket fluid unit deprecation
  • #5328 Extracted common widgets (muffler button, power switch button, circuit slot, panel close button) into CommonWidgets.java. Removed these from GTBaseGuiBuilder and integrated into multiblock and singleblock base GUIs. - @chrombread
    • Added: CommonWidgets class with reusable components
    • Removed: Muffler button and other widget definitions from GTBaseGuiBuilder
  • #5320 Refactored Drone Centre GUI to use MUI2, replaced vision-based sync with a new connection-key sync system, added drone grouping, frequency support, and cross-dimension connectivity. Created new sync handlers (DroneConnectionListSyncHandler, ProductionStatsSyncHandler) and widget classes. - @RealSilverMoon
    • Added: MUI2 Drone Centre GUI, Drone connection key system, Frequency/channel support, Cross-dimension drone control, Production stats sync handler
    • Fixed: Drone Centre out-of-range errors, Line-of-sight sync limitation, Server disconnect on button press
    • Migration: Check your Drone Centres after updating: the links re-establish themselves and the old "out of range" bug is fixed, but any custom name you gave an individual drone connection is dropped and needs retyping.
    • Closes GTNH#16362, GTNH#19029, GTNH#19181, GTNH#19872, GTNH#21563
  • #5318 Ported MTEHatchInputBus and related classes to use MUI2 API. Disabled useMui2 flag on some subclasses and removed deprecated MTEHatchInputBusGui. - @chrombread
    • Added: MUI2 input bus support
    • Removed: MTEHatchInputBusGui (legacy MUI1)
  • #5317 Created MTEHatchBaseGui.java and refactored multiple hatch GUI classes to extend it. Deprecated position methods on IConfigurationCircuitSupport interface as they are no longer needed. - @chrombread
    • Added: MTEHatchBaseGui base class
  • #5281 Created ForgeOfGodsData.java to centralize shared data between MTEForgeOfGods and related classes; moved fields from MTE and GodforgeMath into this new class. - @serenibyss
    • Added: ForgeOfGodsData.java
  • #5277 Created MTELargeFluidExtractorGui.java for MUI2 and refactored MTELargeFluidExtractor.java to use new GUI. - @chrombread
    • Added: MTELargeFluidExtractorGui.java
  • #5276 Created MTETranscendentPlasmaMixerGui.java for MUI2 and updated MTETranscendentPlasmaMixer.java to use new GUI. - @chrombread
    • Added: MTETranscendentPlasmaMixerGui.java
  • #5275 Created MTEPurificationUnitBaseGui.java for MUI2 and updated MTEPurificationUnitBase.java to use new GUI. - @chrombread
    • Added: MTEPurificationUnitBaseGui.java
  • #5274 Ported MTEPreciseAssembler to MUI2, replaced custom machine mode system with shared MTEMultiblock base implementation, and updated GTGuiTextures. - @chrombread
  • #5273 Created MTEPlasmaForgeGui.java for MUI2, added safe_void button textures to GTGuiTextures, and updated MTEPlasmaForge.java to use new GUI. - @chrombread
    • Added: MTEPlasmaForgeGui.java, safe_void button textures
  • #5272 Created MTENanoForgeGui.java for MUI2, added information_symbol and information_bubble textures to GTGuiTextures, and refactored MTENanoForge.java to use new GUI. - @chrombread
    • Added: MTENanoForgeGui.java, information symbol texture, information bubble texture
  • #5271 Migrated MTEPCBFactory and related GUI code to MUI2; refactored panel gap handling into left/right row layout, updated tooltip system, and modified multiblock GUI base class for panel gap overrides. - @chrombread
    • Added: MTEPCBFactoryGui.java
  • #5261 Refactored Material getters (getDefaultLocalName, getLocalizedNameKey, getLocalizedName); removed mLocalizedName caching; standardized GT++ material names to use GT keys; chemical formulas made private; localized lore texts. - @iouter
    • Removed: mLocalizedName variable, mChemicalFormula public access
  • #5252 Modified ME hatch implementations and DigitalChestBase to update to new AE2 APIs; testing refactor not intended for merge. - @Dream-Master
  • #5232 Refactored flavor text formatting in GTGenericItem, GTMetaItem, and GTMetaItemX32 item classes. - @Dream-Master
  • #5207 Added .circuit(x) method to recipe builders that internally uses GTUtility.getIntegratedCircuit(). Refactored all recipe definitions across bartworks and GT5 to use this new method instead of manual GTUtility calls for integrated circuits. - @UltraProdigy
    • Added: .circuit() recipe builder method
    • Fixed: Integrated circuit ordering consistency
  • #5161 Systematically renamed Materials enum entries across 80+ files, updating all recipe loaders, crafting chains, and references. Requires corresponding NewHorizonsCoreMod update (PR #1432). - @Vlamonster
    • Migration: Update NewHorizonsCoreMod to PR #1432; all material references in code and configs must use new names (e.g. Helium3, Diesel, Polyethylene, SuperconductorMVBase, etc.).
  • #5156 Reorganized Material and MaterialsInit entries related to liquid air material definition. - @Vlamonster
  • #5121 Refactored OrePrefixes from enum to class implementing OrePrefixBuilder; updated all references across BartWorks and GT material systems; requires corresponding NewHorizonsCoreMod update. - @Vlamonster
    • Added: OrePrefixBuilder interface and implementation
    • Migration: Addon mods referencing OrePrefixes enum must update to use the new OrePrefixBuilder class.
  • #5118 Moved 91 lines of OrePrefixes definitions from OrePrefixes enum to MaterialBuilder, updated MaterialsInit accordingly, and removed deprecated lens SubTag handling. - @Vlamonster
    • Removed: OrePrefixes enum definitions, Obsolete lens SubTag condition
  • #5114 Cleaned up Materials enum, MaterialsIDMap, and material processing loaders by removing 43 non-existent material definitions; resolved one id conflict and freed up id space. - @chochem
    • Removed: 43 unused material definitions across multiple files
    • Fixed: Material id conflict
  • #5110 Created new MaterialsIDMap.java with 799 lines of material ID definitions; moved Greywacke material; simplified MaterialBuilder. Consolidated 779 lines from MaterialsInit. - @Vlamonster
    • Added: MaterialsIDMap.java for centralized ID management
    • Removed: MaterialBuilder hardcoded ID logic
    • Fixed: Greywacke ID conflict with ComplexityCatalyst
  • #5109 Created new directory structure and moved/updated imports across 100+ files including MTERadioHatch, MTENeutronSensor, and all cover UI implementations. Establishes standard location for future MUI2 UI development. - @chrombread
    • Added: Standardized gregtech/common/gui/modularui directory structure
  • #5108 Moved 385 lines of GTNH material definitions into Materials.java and MaterialsInit.java; updated imports in NetheriteRecipes and RecipeLoaderChemicalSkips. - @Vlamonster
    • Removed: MaterialsGTNH.java file, Duplicate entries in MaterialsInit
    • Migration: Mods depending on MaterialsGTNH must update to use Materials and MaterialsInit instead.
  • #5107 Moved 65+ files with material import updates; consolidated MaterialsUEVPlus into Materials.java and MaterialsInit.java. Requires coordinated update to NewHorizonsCoreMod PR #1422. - @Vlamonster
    • Removed: MaterialsUEVPlus.java file, Duplicate Protomatter and Antimatter definitions
    • Migration: Mods depending on MaterialsUEVPlus must update to use Materials and MaterialsInit instead.
  • #5106 Added getMachineModeIcons() method to MTEMultiBlockBaseGui; removed 7 custom GUI classes that only overrode this method; updated 7 multiblock classes to use base implementation. - @FrostyFire1
    • Added: getMachineModeIcons() method in MTEMultiBlockBaseGui
    • Removed: 7 custom GUI classes (MTEDeepEarthHeatingPumpGui, MTEIndustrialElectromagneticSeparatorGui, MTEMultiCannerGui, etc.)
  • #5105 Moved 134 lines of material definitions from MaterialsOreAlum.java into Materials.java and MaterialsInit.java; updated imports in dependent chain and recipe classes. - @Vlamonster
    • Removed: MaterialsOreAlum.java file
  • #5085 Removed deprecated materials (e.g. LV/MV/HV tier variants) from Materials enum and updated all recipe loaders and crafting handlers. - @Vlamonster
    • Removed: deprecated tier materials
    • Migration: Addon mods using deprecated tier materials must update to use current material definitions; NewHorizonsCoreMod and Electro-Magic-Tools have been updated.
  • #5084 Moved all MaterialsKevlar definitions (785 lines) into Materials and MaterialsInit, removed MaterialsKevlar.java class file. - @Vlamonster
    • Removed: MaterialsKevlar class
    • Migration: Mods depending on MaterialsKevlar must update to use Materials and MaterialsInit instead.
  • #5083 Moved all MaterialsBotania definitions into Materials and MaterialsInit, removed MaterialsBotania.java class file. - @Vlamonster
    • Removed: MaterialsBotania class
    • Migration: Mods depending on MaterialsBotania must update to use Materials and MaterialsInit instead.
  • #5065 Removed code duplication by making MTEMultiBlockBaseGui extend GTBaseGuiBuilder; fixed power panel positioning to use relative coordinates. - @FrostyFire1
    • Removed: Duplicate GUI setup code
    • Fixed: Power panel positioning calculation
  • #5027 Added GTItemSink, SimpleItemIO, and GTItemTransfer; refactored MTEBasicMachine, MTEBuffer, MTEHatchOutputBus, CoverArm, and related classes to use ItemTransfer instead of legacy item handling; depends on GTNHLib#167. - @RecursivePineapple
    • Added: IItemSource and IItemSink interface implementations, GTItemSink and SimpleItemIO classes, GTItemTransfer wrapper class, ItemStackSizeCalculator interface
    • Migration: Item pipes will not function until the follow-up PR implementing the new ItemTransfer behavior is merged; do not update to this version alone.
  • #5010 Moved CoverEnderFluidLink away from CoverLegacyData inheritance; consolidated cover registration and UI factory logic. - @FrostyFire1
  • #4992 Migrated CoverArm from CoverLegacyData to new data serialization pattern. Modified ArmUIFactory accordingly. Maintains backward compatibility with existing save data. - @FrostyFire1
  • #4984 Consolidated ore worldgen from multiple mods into central GT system, migrated gt++ and bartworks veins to Oremixes, replaced ore tile entity system with standard GT ISBRH renderer, removed bartworks NEI ore handler, improved ore processing recipe discovery via vein data integration. - @Dream-Master
    • Added: Unified ore worldgen system, Oremix-based vein registration, Improved vein NEI discovery
    • Removed: Ore tile entities, Bartworks custom NEI ore handler, VoidMinerDropAdder, BWBlockOreRenderer
    • Fixed: Bartworks vein NEI display, Ore vein discoverability
    • Migration: GT and Bartworks ore blocks are converted in place by Postea as each chunk and each inventory loads, and GT++ ores are left exactly as they are. Do not dig out or remove ore blocks yourself. Chunks that already exist keep their veins; the new vein and asteroid layout appears in freshly generated terrain. Addon authors: the ore tile entities and ore APIs are gone, see gregtech.common.ores.
  • #4983 Moved rendering code from PowerGogglesHudHandler to new PowerGogglesRenderer and SimplePowerGogglesRenderer classes; extracted utility methods to PowerGogglesUtil; simplified HUD handler to only control visibility state. - @Dream-Master
    • Added: PowerGogglesRenderer, SimplePowerGogglesRenderer, PowerGogglesUtil
  • #4804 PowerGogglesHudHandler now only controls HUD render timing; rendering logic moved to PowerGogglesRenderer with appropriate method breakdown. Related packet handlers simplified. - @FrostyFire1
    • Added: PowerGogglesRenderer main rendering class, SimplePowerGogglesRenderer specialized renderer, PowerGogglesUtil utility methods
  • #4769 Marked Slicer machines as deprecated, consolidated recipe handling in cutting machines to work with both recipe maps, removed unnecessary UI code from MTEIndustrialCuttingMachine, and removed SlicerRecipes loader. Added second slot to LV cutter for future recipe map consolidation. - @VortexSo4
    • Added: second slot to LV Cutting Machine
    • Removed: SlicerRecipes recipe loader, MTEIndustrialCuttingMachineGui UI code
  • #4686 MaterialBuilder class was expanded with a fluent builder API. Materials.java and related material enum files were rewritten to use MaterialBuilder instead of direct constructor invocations. The refactor reduces boilerplate in material definitions across multiple files (MaterialsGTNH, MaterialsBotania, MaterialsKevlar, etc.) while maintaining the same runtime behavior. - @Vlamonster
    • Added: MaterialBuilder fluent API methods, Material builder pattern usage throughout materials initialization
    • Removed: EnchantmentEnderDamage.java, EnchantmentRadioactivity.java, Direct material constructor calls throughout material definitions
  • #4671 Introduced IOutputBus and IOutputBusTransaction interfaces to abstract output bus operations. Created ItemEjectionHelper to centralize item ejection logic, replacing direct NBT manipulation in MTEMultiBlockBase.getStoredOutputs(). Updated all multis and busses to use the new transaction-based API instead of custom ejection code. - @RecursivePineapple
    • Added: IOutputBus interface for output bus abstraction, IOutputBusTransaction interface for in-progress item insertions, ItemEjectionHelper for centralized item ejection handling, OutputBusType enum
    • Removed: MTEMultiBlockBase.getStoredOutputs void protection mechanism
  • #4595 Replaced inline alignment limit overrides in multiblock classes (MTEHeatExchanger, MTELargeTurbine, MTEDistillationTower, etc.) with preset IAlignmentLimits constants from StructureLib. Cleaned up redundant method overrides and removed explicit rotation restrictions. All changes are backwards-compatible; previously valid multiblock placements remain valid. - @AbdielKavash
    • Added: North→South rotation for NOT_UPSIDE_DOWN multiblocks, rotation/flip capability for Large Turbines
    • Removed: unnecessary rotation restriction overrides, redundant getAlignmentLimits() methods in MTELargeTurbine and other multiblocks
    • Fixed: Large Heat Exchanger rotation to north→south direction (closes #14206)
    • Closes GTNH#14206
  • #4571 Ported ~40 cover GUI classes from the old UI system to ModularUI2 by updating inheritance and imports. Added new texture definitions to GTGuiTextures and modified base Cover and CoverGui classes to support the new framework. - @chrombread
    • Added: ModularUI2 texture definitions for cover GUIs
  • #4561 Migrated AntimatterGenerator tile entity and GUI logic to use ModularUI2 components. Added Kekztech wireless mode textures to GtGuiTextures for future use. Changed createPanelGap to return Flow instead of IWidget to better support overrides in MUI2. - @chrombread
    • Added: MUI2 GUI implementation for Antimatter Generator, MUI2 GUI implementation for S.L.A.M., Kekztech wireless mode textures to GtGuiTextures
  • #4551 AntimatterForge tile entity was updated to integrate with MUI2, and a new AntimatterForgeGui class was created to handle the MUI2-based GUI implementation, replacing the previous MUI1 approach. - @chrombread
    • Added: AntimatterForgeGui class with MUI2 GUI implementation
  • #4548 Added CoverFluidLimiter and CoverFluidLimiterGui classes to use MUI2's widget system instead of MUI1. GUI structure and behaviour replicate the stable 2.7.3 MUI1 implementation. - @chrombread
    • Added: CoverFluidLimiter class, CoverFluidLimiterGui class
  • #4487 Replaced unmaintainable config code with a slot-based system in MTEHatchInputME and MTEHatchInputBusME. Removed AE operations from getStackInSlot, changed NBT format with migration code via GTDataUtils, restructured bus inventory (slots 0-15 for items, 16-17 for ghost circuit + manual), and added fluid draining outside recipe checks. - @RecursivePineapple
    • Added: Slot-based configuration system for hatches, NBT migration code for old hatch formats, Fluid draining outside recipe checks, Structure check trigger when expedite recipe check toggled
    • Removed: Legacy config code in stocking hatches, Unnecessary AE operations from getStackInSlot, Tooltip warning for expedite recipe check
    • Fixed: Stocking hatch and bus performance bottleneck
    • Migration: Stocking hatch and bus NBT format has changed; old configurations will migrate automatically but verify your AE integration remains stable after updating.
  • #3662 Removed BartWorks ore renderer and NEI handler, migrated veins to Oremixes, replaced ore tiles with standard GT ISBRH, refactored ore processors, optimized asteroid generation, and added ore processing recipe discovery in NEI. - @RecursivePineapple
    • Added: Oremix-based vein system
    • Removed: Ore tiles, BartWorks ore renderer, BartWorks NEI handler, Void miner API
    • Fixed: Ore discoverability, Asteroid generation performance
    • Migration: Same worldgen refactor as #4984, re-done with a clean branch. #4984 is the one that shipped; see its entry.

Documentation ​

  • #7574 Updated README.md to credit the original artist of the spacetime texture after obtaining permission to use it. - @FourIsTheNumber
    • Added: spacetime texture artist credit
  • #7093 Synced ru_RU.lang file with ParaTranz translations. - @Eldrinn-Elantey
  • #7027 GTAchievements and language file: Added 128 new achievement localization strings. - @boubou19
    • Added: Achievement localization entries
  • #7003 Corrected color codes in gtnhlanth lang entries to properly display beamline tooltip equations in white. - @DylanTaylor1
    • Fixed: Color code typos in beamline tooltips
  • #7001 Recolored text in LHC tooltip lang entries to use consistent color codes with other beam multiblock machines. - @ham-corp
  • #6982 Added subchannel documentation strings to multiblock tooltip methods across 15+ machines (MTEAdvAssLine, MTEExtremeHeatExchanger, MTEAlgaePond, etc.) and changed one terminology reference from 'height' to 'length' in TFFT. - @DylanTaylor1
  • #6100 Added 15 lines of JavaDoc to GTUtility.translate() method. - @Eldrinn-Elantey
    • Added: GTUtility.translate() JavaDoc
  • #6042 Added documentation entry to Textures.java for CropsNH casing page. - @C0bra5
    • Added: documentation for CropsNH casing page
  • #5845 Updated ResourcePacks_Guide.md documentation to document metal color matching behavior and resource pack override compatibility. - @Ranzuu

Chores ​

  • #7897 Updated coil heat tooltip formatting in BlockCasings5 and lang files to use ':' separator and red color code. - @Connor-Colenso
  • #7892 Moved multiblock controller names from GregTech.lang config to asset lang files across multiple mods, preserving existing translations. Affected classes include GGMaterial, GregtechWirelessChargers, and MTENuclearReactor. - @Eldrinn-Elantey
    • Added: multiblock names in lang files
    • Removed: GTLanguageManager registrations
  • #7886 Added utility method to OreMixes class for accessing OrePrefixes. - @boubou19
    • Added: helper method in OreMixes
  • #7880 Consolidated four separate GitHub Actions workflows (test-forbidden-getmoditems, test-forbidden-ismodloaded, test-forbidden-sysout, test-scala-presence) into test-forbidden-usage.yml. Added BCE reference to Mods.java for CoreMod usage. - @UltraProdigy
    • Added: test-forbidden-usage.yml, combined violation checking
    • Removed: test-forbidden-getmoditems.yml, test-forbidden-ismodloaded.yml, test-forbidden-sysout.yml, test-scala-presence.yml
  • #7874 Deleted ItemBlueprint class, removed blueprint recipe registration, removed item registry entries, and removed all localization strings. - @MLGfruitshoot
    • Removed: ItemBlueprint class, Blueprint recipe, Blueprint item registry entries, Blueprint localization strings
  • #7868 Toggled Angelica runtime flag in dependencies.gradle back to disabled to prevent unintended runtime inclusion. - @Ruling-0
  • #7864 Bumped Horizon-QA version in dependencies.gradle. - @Worive
  • #7862 Corrected spelling error in MaterialsInit.java material definition. - @UltraProdigy
    • Fixed: Phosphorus typo
  • #7851 Deleted unused item definitions from ModItems, removed associated blocks and textures, and cleaned up related references. - @MLGfruitshoot
    • Removed: GT++ gearboxes, GT++ pipes, GT++ catalysts, GT++ research papers
  • #7817 Fixed GTRecipe condition check and IG_RecipeAdder debug output that were generating false error logs. - @boubou19
    • Fixed: false error messages in logs
  • #7763 Replaced custom GTLog wrapper and string concatenation with SLF4J parametrized calls using centralized loggers (GT_FML_LOGGER, GT_ORE_DICT_LOGGER, GT_EXPLOSION_LOGGER, etc.). Added GT_Loggers class for logger centralization and conditional logger support. - @boubou19
    • Added: GT_Loggers centralized logger class, Conditional logger factory method
    • Removed: GTLog wrapper class, DebugLog class, String concatenation in log calls
  • #7731 Modified MetaGeneratedTool to cap mining speed presentation to 2 decimal places in tooltip display. - @Connor-Colenso
  • #7730 Reformatted DetravMetaGeneratedTool01 tooltip layout and updated Scanner language files for visual consistency. - @Connor-Colenso
  • #7697 Modified GitHub Actions workflow files for label testing refresh and test triggers. - @label-sync-bot-gtnh
  • #7686 Updated SteamGaugeWidget.java to apply locale-specific number formatting to gauge values. - @Connor-Colenso
  • #7669 Added workflow files for label testing in .github/workflows/. - @label-sync-bot-gtnh
    • Added: label test workflows
  • #7668 Deleted .github/workflows/labels.yml. - @UltraProdigy
    • Removed: labels workflow
  • #7645 Deleted unused sound files from src/main/resources/assets/gregtech/sounds/ that have been superseded by properly registered machine sound events. - @Algent
    • Removed: 12 orphaned sound files
  • #7633 Corrected tooltip text in MTETargetChamber.java to accurately reflect the new input bus requirement. - @DylanTaylor1
    • Fixed: Target Chamber input bus tooltip
  • #7632 Added stronger validation checks across multiple addon modules to prevent accessing game registry queries for GT5U-registered blocks. Enhanced CI workflow test-forbidden-getmoditems.yml to enforce this pattern. - @boubou19
  • #7608 Documentation comments added to GTNHMod.java explaining gregtech_nh modid usage patterns for maintainers. - @felixfour
  • #7600 Updated MTEAdvDistillationTower tooltip to remove incorrect parallel and size constraints documentation. - @Nana-Sakura
    • Removed: Outdated size and parallel constraints description
    • Closes GTNH#26096
  • #7580 Corrected typo in MTEIndustrialMacerator tooltip text. - @metalcupcake5
  • #7564 Updated dependencies.gradle and reformatted EBF multiblock JSON files (valid.json, missing_coils.json) to match new HQA format. Depends on DreamAssemblerXXL#296. - @Worive
  • #7534 Corrected item display names in lang file; registration names remain unchanged. - @UltraProdigy
  • #7528 Updated EHE steam tooltip text in lang file with correct coolant throughput values. - @Sanduhr32
  • #7522 Updated EHE tooltip text in lang file to match the machine's new capabilities from PR #6211. - @DylanTaylor1
  • #7519 Moved createTooltip() strings from Java code to lang files for LSC, SO Fuel Cell Mk1/Mk2, TFFT, DEFC, EEC, EIG, and Mega Apiary; reused casing names and structural position phrases to avoid duplication; added Russian translations. - @Eldrinn-Elantey
    • Added: lang keys for KekzTech and Kubatech multiblock tooltips, Russian translations for tooltip strings
  • #7503 Deleted .github/workflows/label-mute-prs.yml due to disuse and security risk from pull_request_target trigger. - @MalTeeez
    • Removed: label-mute-prs workflow
  • #7481 Updated sheetmetal casing count in MTEIntegratedOreFactory tooltip from 16 to 18. - @DylanTaylor1
  • #7451 Added space character to MTELargeEssentiaSmeltery tooltip text. - @DylanTaylor1
  • #7438 Removed glass tier label from MTEElectricImplosionCompressor tooltip text. - @DylanTaylor1
  • #7434 Extracted tooltip strings from MTEAdvAssLine, MTEPlanetaryGasSiphon, TileEntityDysonSwarm, and MTEDigester into en_US and ru_RU lang files. - @Eldrinn-Elantey
    • Removed: hardcoded tooltip strings
  • #7419 Extracted hardcoded English tooltips from MTEVacuumFreezer and moved to lang files with StatCollector resolution. Added @SkipGenerateDescription and shared MBTT structure keys for reuse. - @Eldrinn-Elantey
    • Added: shared gt.mbtt.structure lang keys, Russian translations
    • Removed: hardcoded tooltip strings
  • #7404 Updated tooltip strings in multiple MTELargeFusion, goodgenerator, and other multiblock controller classes to improve clarity of structure construction guidelines. - @DylanTaylor1
    • Fixed: construction tooltip clarity
  • #7369 Modified tooltip strings in MTECokeOven and MTENuclearReactor. - @DylanTaylor1
  • #7364 Minor text fixes in RecipeGenOre.java. - @MLGfruitshoot
    • Removed: obsolete comment
  • #7358 Added mod id string entry to gregtech.api.enums.Mods for Ultra-Iridium-Edition mod. - @FourIsTheNumber
    • Added: UiE mod id constant
  • #7321 Updated English language string for Tiny Pump to display flow rate with '/second' suffix and improved spacing. - @Yoshy2002
  • #7317 Modified MTENanoForge and MTEForgeOfGods to use isAir() instead of ofBlock() for air validation, eliminating structurelib warning spam. - @koolkrafter5
  • #7278 Removed explosion-related tooltip text from MTENeutronActivator and MTELargeNaquadahReactor. - @MLGfruitshoot
    • Removed: Explosion hazard tooltips from Large Naquadah Reactor, Explosion hazard tooltips from Neutron Activator
  • #7252 Removed MixinIc2ReinforcedGlass mixin class. Updated Research.java to remove IC2 glass reference. Removed unused mixin from Mixin.java. - @LazyFlesh
    • Removed: MixinIc2ReinforcedGlass mixin, IC2 glass mixin registration
  • #7247 Updated MTEYottaFluidTank hatch requirement logic. Renamed all T.F.F.T references to TFFT in MTEHatchTFFT, MTETankTFFT, and language files for consistency. - @DylanTaylor1
    • Fixed: YOT Tank requiring hatches when YOT Hatch present, TFFT not searchable in NEI due to periods in name
  • #7201 Added new Assembler recipe entry in MTERecipeLoader.java for Algae Casing production. - @zaru-noodles
    • Added: Algae Casing assembler recipe
    • Closes GTNH#25214
  • #7200 Reordered MechArmorAugmentRegistries.java augment enum entries and added section comments; no index-dependent code is affected. - @FourIsTheNumber
  • #7197 Removed pollution-related text from MTEThermalBoiler.java tooltip/description. - @DylanTaylor1
    • Removed: pollution mention from Thermal Boiler description
  • #7178 Removed unused casing registrations from BWGTMaterialReference. - @LazyFlesh
    • Removed: unused BW casings
  • #7171 Added dedicated terminal texture in GTGuiTextures and GTTextureIds, updated GTWidgetThemes to reference the new texture. - @ABKQPO
    • Added: terminal texture, terminal texture ID
  • #7140 Removed GlyphReplacements dependency from dependencies.gradle and updated CustomGlyphs and ChemicalFormulaFilter to use the replacement implementation. - @sisyphussy
    • Removed: GlyphReplacements dependency
  • #7134 Applied image optimization (likely PNG compression) to previously unoptimized texture and font assets. - @UltraProdigy
  • #7102 Added test dependency declarations to dependencies.gradle. - @UltraProdigy
  • #7075 Updated tooltip strings in ArcFurnaceElectrode to represent processing speed as percent, overclock factor as power/speed, and surge cost color from red to orange. Removed a redundant function. - @DylanTaylor1
    • Removed: Redundant electrode function
  • #7071 Consolidated GT5U.multiblock.recipesDone and GT5U.multiblock.scanner.recipesDone into one key with %s placeholder; updated call sites to use GTUtility.translate() instead of string concatenation with StatCollector. - @Eldrinn-Elantey
    • Removed: Duplicate scanner recipe completion key
  • #7028 MachineLoader and language files: Corrected capitalization in machine name registration. - @Yoshy2002
  • #7012 MetaTileEntityIDs: Added registration entry for CropsNH Industrial Farm MTE. - @C0bra5
    • Added: Industrial Farm MTE ID registration
  • #6979 Enabled Horizon QA in GitHub Actions workflow, added ElectricBlastFurnaceFormationTests.java with comprehensive test cases, and created NBT/JSON structure test fixtures. - @Worive
    • Added: EBF formation tests, Horizon QA structure fixtures, GitHub Actions Horizon QA support
  • #6969 Added Russian translations to ru_RU.lang covering GT5U.armor.* keys. - @Eldrinn-Elantey
    • Added: Russian localization for modular armor
  • #6962 Refactored GUI theme references in GTGuiThemes.java and GTWidgetThemes.java, fixed hardcoded color in FuelConfigPanel.java, and standardized theme application across multiple GUI implementations. - @Ranzuu
    • Added: white/gray default theme options
    • Fixed: hardcoded color in FuelConfigPanel
  • #6904 Enabled ModularUI2 (MUI2) support in MTENaquadahFuelRefinery by adding UI-related annotations or configuration. The change is minimal and does not alter machine parameters. - @FrostyFire1
  • #6897 Updated en_US.lang files in bartworks, ggfab, goodgenerator, gregtech, gtnhintergalactic, kekztech, kubatech, miscutils, and tectech with spelling and grammar corrections. - @Yoshy2002
  • #6863 Modified BlockLaser to return laser plate texture directly instead of assuming icon load order, supporting improved integration with Hodgepodge. - @tiffit
    • Removed: Load order dependency
  • #6861 Replaced instances of hardcoded TierEU.Tier with correct TierEU.Recipe across 20+ recipe loaders and processors, ensuring correct tier-to-EU mappings. - @LazyFlesh
    • Fixed: Incorrect energy tier mappings in recipes
  • #6858 Added @Deprecated annotation to deprecated methods in GTModHandler that was missing. - @Yoshy2002
    • Added: @Deprecated annotation on legacy methods
    • Fixed: IDE warnings for deprecated API usage
  • #6855 Updated 30+ multiblock machines with corrected acronyms, machine type classifications, hatch requirements, and casing material specifications to match recent structure reworks. - @DylanTaylor1
    • Added: Acronyms for updated machines (OWP, ICB, IBM, etc.), Subchannels to tooltips (length, glass), Mold texture assets
    • Removed: Muffler hatch requirement from Thermal Boiler, Input bus requirement from XL Turbines, Foundry machine type from Exo-Foundry, Glass tier limits
    • Fixed: Machine tooltip accuracy, Structure definition consistency
  • #6852 Removed MUI1-specific code and classes (MTEFilterBase, MTESpecialFilter, MTERecipeFilter, MTETypeFilter) and cleaned up MTEBuffer, MTEChestBuffer, and MTEItemDistributor implementations. - @TheYoingLad
    • Removed: MTEFilterBase class, MTESpecialFilter class, MTERecipeFilter class, MTETypeFilter class, Legacy MUI1 buffer code
  • #6850 Added Matter Manipulator dependency declaration to dependencies.gradle. - @Auynonymous
    • Added: Matter Manipulator dependency
  • #6840 Enabled jvmDowngrader plugin in dependencies.gradle and adjusted gradle.properties Java version settings. Compilation times may increase slightly. - @TheYoingLad
    • Added: jvmDowngrader plugin configuration
  • #6766 Updated ResearchStationAssemblyLine.java to replace old MEBF references with new MEBF in recipe definitions. - @chrombread
  • #6741 GTMod annotation now uses tag version; mcmod.info converted to single-line JSON for proper parsing. - @MalTeeez
    • Fixed: mcmod.info JSON parsing
  • #6732 Cleaned up stray pixels on ypic texture. - @Auynonymous
    • Fixed: ypic texture artifacts
  • #6717 Deleted StreamUtils.java and BWNBTDependantCraftingRecipe.java, which were leftover code with no references. - @Nikolay-Sitnikov
    • Removed: StreamUtils, BWNBTDependantCraftingRecipe
  • #6694 Deleted unused circular reference code in BioVatLogicAdder.java and related imports from MainMod and BWUtil. The functional radio hatch logic remains in RadioHatchMaterialLoader. - @Nikolay-Sitnikov
    • Removed: BioVatLogicAdder class, Radio Hatch code references in MainMod
  • #6648 Deleted three empty Java source files that contained no code. - @Nikolay-Sitnikov
    • Removed: GT_MetaGenerated_Item_03.java, GT_PurifiedWaterRecipes.java, BlockSuperJukebox.java
  • #6560 Added BlockCasings14 class and registered it in GregTechAPI and LoaderGTBlockFluid. Updated Casings enum to include new block. - @chrombread
    • Added: BlockCasings14
  • #6515 Updated rendering code in BlackholeRenderer, RenderForgeOfGods, StructureVBO, and TextureUpdateRequester to use Direct tessellator API. - @sisyphussy
  • #6493 TierEU.X references replaced with TierEU.RECIPE_X in recipe definitions for consistency. - @UltraProdigy
  • #6450 Corrected quantum circuit casing texture asset (file rename/replacement). - @Auynonymous
    • Fixed: Quantum circuit casing visual appearance
  • #6410 Added tooltip/documentation line to MTESpinmatron explaining unlimited tier skip feature. - @chrombread
  • #6387 Added projector subchannel declarations to structure tooltips in various multiblock tile entities and GTStructureChannels. - @DylanTaylor1
    • Added: Structure channel tooltips
  • #6380 Updated dimension constants in MTESteamWasher tooltip. - @Alexdoru
  • #6375 Removed 244 lines of duplicate AssemblerRecipes entries that were cluttering NEI. - @TotallyNotOndre
    • Removed: Redundant Assembler recipes
  • #6373 Added AnyCarbon oredict to Materials enum and registered in MaterialsInit. - @TotallyNotOndre
    • Added: AnyCarbon oredict
  • #6367 Renumbered IDMetaItem03 voltage coil meta IDs and associated texture files to prevent ID collision. - @boubou19
  • #6353 Updates GTCLSCompat.java and CLSCompat.java loading message localization strings with better language keys. - @Discreater
    • Added: Localization strings for loading messages
  • #6328 Removed unused blocks (Redstone Circuit Block, Strength Display, Scale, Button Panel), merged MTERedstoneBase into MTERedstoneLamp, consolidated duplicate textures, updated texture registration, switched to compact CTM, updated dependencies. - @VortexSo4
    • Added: compact CTM implementation
    • Removed: unused chemical catalysts, unused blocks and circuits, duplicate GT++ textures, custom CTM implementation
    • Fixed: texture directory handling, CTM rendering
  • #6281 Updated tooltip strings and abbreviations in multiple machine classes and en_US.lang; fixed Thermal Boiler machine type classification from boiler to heat exchanger; revamped Extreme Heat Exchanger tooltip formatting. - @DylanTaylor1
    • Added: TCP abbreviation for TurboCan Pro, SOFC abbreviation for Solid-Oxide Fuel Cells, LST/XLST abbreviations for HP/SC variants
    • Fixed: Thermal Boiler machine type classification
  • #6264 Updated tooltip strings in 110+ multiblock tile entity classes (1-line changes each) for consistent formatting. - @Yoshy2002
  • #6218 Bumped dependency version in dependencies.gradle. - @Alexdoru
    • Fixed: Development environment crashes
  • #6215 Cleaned up a stray example comment in the en_US.lang localization file. - @Eldrinn-Elantey
    • Removed: Example comment from glass fiber tooltip
  • #6206 Added 280 fluid localization entries to en_US.lang. - @Eldrinn-Elantey
    • Added: fluid name localization keys
    • Closes GTNH#24029
  • #6202 Deleted bar material entries from LoaderGTItemData.java. - @Nikolay-Sitnikov
    • Removed: EnderIO bar material, Tungsten Bar material
  • #6201 Changed tooltip string in MTELatex.java. - @bencimp
  • #6199 Replaced in-code book page strings with language keys in BookHandler and ItemBaseBook, added missing entries to en_US.lang, updated GTUtility.translate for book resolution. - @Eldrinn-Elantey
    • Added: book text localization keys
  • #6190 Updated tooltip string in MTELatex.java to fix grammar. - @bencimp
  • #6189 Updated mining drone language keys to include tier information. - @UltraProdigy
  • #6167 Added dimension strings to tooltips in PCB bio chamber, PCB cooling tower, five compact fusions, Volcanus, Exxon, and Large Essentia Smeltery. - @ham-corp
    • Added: structure dimensions to machine tooltips
  • #6166 Removed COMET controller recipe, marked Compact Cyclotron deprecated in tooltip, added beam-crafting replacements in RecipesGregTech and ResearchStationAssemblyLine, deprecated 62 lines from RecipeLoaderChemicalSkips with TODOs for 2.10. - @ham-corp
    • Added: beam-crafting replacement recipes
    • Removed: COMET controller recipe, cyclotron-dependent recipes (legacy, marked for 2.10 removal)
    • Migration: Check your Compact Cyclotrons: they keep running and their recipes stay registered for this cycle, but the COMET controller can no longer be crafted, so plan the move to the Large Hadron Collider before 2.10.
  • #6163 Deleted labels.yml workflow file. - @UltraProdigy
    • Removed: labels workflow
  • #6114 Bumped PostEA version in dependencies.gradle. - @UltraProdigy
  • #6079 Removed GTLanguageManager calls from GTFluid.java and CircuitComponentFakeItem.java; moved language strings to en_US.lang. - @Eldrinn-Elantey
    • Removed: GTLanguageManager usage
  • #6078 Migrated MTEDebugStructureWriter from tectech to gregtech, updated ItemList and MetaTileEntityIDs references, removed TecTech's version, and updated language files. - @TheYoingLad
    • Added: Advanced debug structure writer
    • Removed: TecTech MTEDebugStructureWriter
  • #6077 Renamed GUI base class in MTEBasicMachineWithRecipeBaseGui.java and adjusted parent class references in MTEBasicMachine.java and MTETieredMachineBlock.java. - @chrombread
  • #6074 Created new MTEBlackHoleUtilityGui.java using ModularUI2 patterns and refactored MTEBlackHoleUtility.java to use the new GUI instead of legacy implementation. - @TheYoingLad
    • Added: ModularUI2-based Black Hole Utility GUI
  • #6072 Refactored GTLanguageManager usage across output hatch and cover classes to use localized chat messages; removed deprecated GTLanguageManager methods. - @Discreater
    • Added: Localized chat messages for hatches and covers
    • Removed: GTLanguageManager class
  • #6067 Removed unused Crops++ (berriespp) mod dependency load order constraint from MainMod.java. - @C0bra5
    • Removed: Crops++ load-order dependency
  • #6039 Updated string formatting in MTEComponentAssemblyLine and MTEAssemblyMatrixModule, plus corresponding language file entries. - @chrombread
  • #6035 Bumped Postea version in dependencies.gradle. - @C0bra5
  • #6034 Cleaned up old slicer IDs from Configuration to prevent invalid ruins machine generation crashes. - @NeutronSelector
    • Removed: Old slicer machine ID configurations
    • Closes GTNH#23669
  • #6030 Deleted salty root references from Loaders, RecipeLoader2, and ItemRefer classes in goodgenerator. - @C0bra5
    • Removed: Salty root recipe code, Salty root item reference
  • #6025 Added MTEHatchInputBatteryGui and MTEHatchOutputBatteryGui MUI2 implementations. Updated MTEHatchInputBattery and MTEHatchOutputBattery to use new ModularUI2 GUI system. - @TheYoingLad
    • Added: MTEHatchInputBatteryGui, MTEHatchOutputBatteryGui
  • #6023 Added support for translation via GTUtility.translate() and improved color of numbers in tooltips for MTETieredTank. Related to fluid text color refactoring in PR #6018. - @Eldrinn-Elantey
    • Added: Translation support for tank tooltips
  • #6012 Removed 12 lines from dependencies.gradle, likely obsolete or duplicate dependency declarations. - @Eldrinn-Elantey
    • Removed: 12 dependency declarations
  • #6000 Registered Fether mod in Mods enum and added tree farm recipe loader support. - @glowredman
    • Added: Fether mod registration, Fether tree farm compatibility
  • #5991 Expanded MetaTileEntityIDs enum and ItemList registry with 50+ new item definitions and 55+ new MTE controller IDs in preparation for structure changes. - @VortexSo4
    • Added: 50+ new item list entries, 55+ new MetaTileEntity controller IDs
  • #5990 Updated dependencies.gradle HEE version to correct value after upstream version deletion. - @Caedis
  • #5941 Replaced old deprecation text display code in MTEFluidShaper with the new standardized method. Verified working in-game. - @chrombread
  • #5931 Reordered entries in Casings.java enum and updated a reference in MTESpinmatron. Changes are cosmetic as the casings are not currently utilized by active multiblocks. - @chrombread
    • Migration: Addon developers can reference gtpp and tectech casings via the reorganized Casings enum; no impact on existing multis.
  • #5923 Changes GTMultiTextureRender constructor visibility from public to package-private, and updates TextureFactory to reflect this change. - @sisyphussy
  • #5922 Migrates GT++ casing definitions from their original location into gregtech/api/casing/Casings.java. - @VortexSo4
  • #5915 Replaces MTEElectricBlastFurnace.ogg and MTEAdvEBF.ogg sound files. - @IX-git
  • #5913 Moves texture rendering from _OVERLAY files to main texture files for Fluxed Electrum blocks and items, aligning with Netherite's texture approach and enabling proper pipe/cable pass1 rendering. - @Auynonymous
    • Fixed: Cable rendering bug affecting overlays, Missing arrow and insulation on pipes and cables
  • #5898 Bumped ModularUI2 version in dependencies.gradle. - @chrombread
  • #5894 Added dedicated methods in MTERecipeLoader for migration recipes and shapeless crafting conversions; removed recipes from RecipesMachinesMulti to consolidate recipe management. - @chrombread
    • Added: Migration recipe methods in MTERecipeLoader, Shapeless conversion recipe method
    • Removed: Recipes from RecipesMachinesMulti
  • #5892 Refactored MultiblockTooltipBuilder deprecation methods to use language file keys; updated legacy machine implementations to call simplified deprecation method. - @chrombread
    • Added: Localized deprecation strings in language files
  • #5887 Refactored MultiblockTooltipBuilder to use separate author and structure author lists instead of ContributorList wrapper; updated dependent code in MTEExtremeIndustrialGreenhouse. - @chrombread
    • Removed: ContributorList helper class
  • #5886 Renamed MTEIndustrialWireMill to remove 'Modern' suffix; updated LoaderMetaTileEntities registration accordingly. - @VortexSo4
    • Removed: Modern suffix from wiremill
  • #5866 Replaced magic numbers (30, 120, 480, etc.) and half-tier values (32, 64) with TierEU_LV/TierEU_MV/etc. constants across ~70 files in recipe loaders, material generation, and utility classes. Half-tier EU (32, 64) converted to TierEU_LV/2 and similar. - @LazyFlesh
  • #5865 Updated ModularUI2 dependency version and adapted GUI code across multiple hatch and multiblock classes (MTEHatchMufflerAdvancedGui, MTERadioHatchGui, MTESpinmatronGui, etc.). Changed method signatures in MTEMultiBlockBaseGui sync logic. - @chrombread
  • #5862 Updated CircuitWraps.java to strip trailing 's' from plural names when generating wrap display names (e.g., Biocellss → Biocells). - @flamingowrangler2869
    • Fixed: Double plural 's' in wrap names
  • #5852 Updated ModularUI2 dependency version, adapted CoverFluidRegulatorGui and MTEMultiBlockBaseGui to new upstream GUI APIs, and fixed panel configuration in FuelConfigPanel. - @chrombread
  • #5822 Modified build-and-test.yml conditional and added optimize-images.yml workflow filter for PNG changes. - @UltraProdigy
    • Added: Image optimization workflow with PNG filtering
  • #5808 Removed unused config fields and initialization from GregTechAPI, Gregtech config class, and GTPreLoad. - @Nikolay-Sitnikov
    • Removed: Unused config field and initialization code
  • #5806 Postea dependency bumped and handler implementations updated to remove deprecated handlers and use new APIs in GTOreAdapter and BWOreAdapter. Gradle wrapper updated. - @C0bra5
  • #5802 Bio Vat instance registered in ItemRegistry and removed redundant recipe loading code. - @serenibyss
    • Added: Bio Vat item registry entry
  • #5800 Typo corrections in English, Russian, and Chinese language files, plus method/tooltip string corrections in various tile entity and item classes. - @Yoshy2002
    • Fixed: Typos in localization and code comments
  • #5774 Updated dependencies.gradle ThE version pins. Modified MTEEssentiaOutputHatchME and MTEHatchOutputMEBase to adapt to ThE API changes. - @Kogepan229
  • #5768 Updated NHCoreMod item/block references in GTBeeDefinition, DEFCRecipes, and EyeOfHarmonyRecipe. - @Nikolay-Sitnikov
  • #5755 Removed ChunkAPI integration (ClientMetaTrackerRegistry, IClientMetaTracker, ClientMetaManager) and reverted dependency versions. - @Caedis
    • Removed: ChunkAPI compatibility layer, ClientMetaTrackerRegistry, IClientMetaTracker, ClientMetaManager
  • #5739 Added optipng compression step to build-and-test.yml workflow and applied optipng to all PNG resources in the mod. - @boubou19
  • #5734 Adjusted icon scaling parameters in GTPowerfailRenderer and added configurable scaling option to Client config. - @WayneYam
    • Added: Powerfail icon scaling configuration
  • #5723 Changed CoreTweaks repository source in dependencies.gradle and removed duplicate repository declaration. - @mitchej123
    • Removed: Duplicate CoreTweaks repository entry
  • #5720 Updated MTEWormholeGenerator tile entity name abbreviation. - @DylanTaylor1
  • #5719 Replaced direct string concatenation with localized chat methods throughout base tile entities, pipes, cables, hatches, and transformers. Removed unused GTLanguageManager utility. - @Discreater
    • Removed: Unused GTLanguageManager class
  • #5704 Replaced hardcoded chat message strings with localized text calls across void miner, linked input bus, antimatter generator, and turbine classes. Removed unused GTLanguageManager static method. - @Discreater
    • Removed: GTLanguageManager obsolete method
  • #5696 Updated MTEVoidMinerBase essentia cell recipe to use GT regulator instead of IC2 regulator in crossmod thaumcraft research. - @chochem
  • #5692 Migrated hardcoded item name strings across multiple loader and enum classes to use updated NewHorizonsCoreMod identifiers. - @Nikolay-Sitnikov
  • #5685 Added texture files and animation metadata for Exo-Foundry celestial, eternal, and infinite chassis top surfaces. - @chrombread
    • Added: Exo-Foundry celestial chassis top texture, Exo-Foundry eternal chassis top texture, Exo-Foundry infinite chassis top texture, Animation metadata files
  • #5682 Refactored chat message sending across 40+ files to use GTUtility.sendChatTrans() for server-side localization. - @Discreater
  • #5674 Deleted FoundryRecipes.java loader and removed its registration from MachineRecipeLoader. - @chrombread
    • Removed: Foundry recipe map, FoundryRecipes loader class
  • #5667 Removed legacy VM structure compatibility code from MTEVoidMiners.java. - @UltraProdigy
    • Removed: Deprecated VM structure support code
  • #5666 Added acronym comment in MTEVoidMiners.java. - @UltraProdigy
  • #5641 Added LEC abbreviation string to MTEIndustrialCompressor. - @DylanTaylor1
    • Added: LEC abbreviation
  • #5601 Added EAF string constant to MTEAirFilterBase. - @DylanTaylor1
  • #5596 Created MTEHatchTurbineGui class using ModularUI2. Added GUI initialization to MTEHatchTurbine. - @Spicierspace153
    • Added: MTEHatchTurbineGui (ModularUI2)
  • #5593 Created MTEHatchChiselBusGui class using ModularUI2 framework. Removed legacy UI code from MTEHatchChiselBus. - @Spicierspace153
    • Added: MTEHatchChiselBusGui (ModularUI2)
  • #5583 Created MTEHatchDynamoTunnelGui and MTEHatchEnergyTunnelGui MUI2 implementations, refactored MTEHatchDynamoMulti, MTEHatchDynamoTunnel, MTEHatchEnergyMulti, and MTEHatchEnergyTunnel. - @Spicierspace153
    • Added: MTEHatchDynamoTunnelGui MUI2 class, MTEHatchEnergyTunnelGui MUI2 class
  • #5582 Created MTETurbineHousingGui MUI2 implementation and refactored MTEHatchTurbineProvider. - @Spicierspace153
    • Added: MTETurbineHousingGui MUI2 class
  • #5581 Created MTEHatchMufflerAdvancedGui MUI2 implementation and refactored MTEHatchMufflerAdvanced. - @Spicierspace153
    • Added: MTEHatchMufflerAdvancedGui MUI2 class
  • #5580 Created MTEHatchDataAccessGUI MUI2 implementation, updated MTEHatchDataAccess, and added related texture definitions to GTGuiTextures. - @Spicierspace153
    • Added: MTEHatchDataAccessGUI MUI2 class, GUI texture definitions
  • #5578 Created MTEHatchCapacitorGui MUI2 implementation and refactored MTEHatchCapacitor, added related GUI textures to GTGuiTextures. - @Spicierspace153
    • Added: MTEHatchCapacitorGui MUI2 class, GUI texture definitions
  • #5568 Replaced inline GUI code in MTEPurificationPlant with dedicated MTEPurificationPlantGui MUI2 implementation. - @Spicierspace153
    • Added: MTEPurificationPlantGui MUI2 class
    • Removed: inline old-format GUI code
  • #5559 Added localization support to MTETypeFilter tooltip and GTDamageSources death messages with corresponding lang file entries. - @Discreater
    • Added: Type Filter tooltip localization, death message localization
  • #5556 Bumped AE2 dependency version in dependencies.gradle. - @chrombread
  • #5551 Rewrote addon.gradle and build.gradle into build.gradle.kts, fixed configuration cache compatibility when git tags not fetched locally, updated gradle wrapper version. - @eigenraven
    • Added: build.gradle.kts
    • Removed: addon.gradle, build.gradle
  • #5550 Changed exception handling from Throwable to Exception across ~70 locations in GTech and BartWorks modules to prevent suppressing fatal JVM errors. - @glowredman
  • #5548 Deprecated GTUtility.sendChatToPlayer and added GTUtility.sendChatToPlayerTrans to handle server-side message translation based on client locale. Updated ~20 locations in multi-blocks to use new method. - @Discreater
    • Added: GTUtility.sendChatToPlayerTrans method
  • #5547 Added new BLOCK_POWDER texture enum and updated BlockReinforced to reference it instead of sharing texture with other blocks. - @ABKQPO
    • Added: BLOCK_POWDER texture
  • #5544 Updated tooltip text in MTEMagLevPylon to provide clearer description of MagLev functionality. - @chrombread
  • #5525 Version bump in dependencies.gradle. - @chrombread
  • #5474 Bumped MUI2 dependency in dependencies.gradle. - @chrombread
  • #5443 Bumped ModularUI2 version in dependencies.gradle. - @serenibyss
  • #5442 Bumped ModularUI2 version in dependencies.gradle. - @serenibyss
  • #5433 Refactored imports and package references across Godforge GUI files to improve structure before future PRs. - @serenibyss
  • #5426 Increased method visibility/reduced final modifiers in MTEMultiBlockBaseGui to allow subclass customization. - @chrombread
  • #5421 Bumped ModularUI2 version in dependencies.gradle. - @serenibyss
  • #5408 Corrected settings in settings.gradle for local Maven publishing. - @boubou19
  • #5403 Version bump in dependencies.gradle. - @serenibyss
  • #5383 Updated dependencies.gradle, gradle.properties, and gradle wrapper configuration. - @eigenraven
  • #5366 Migrated MTEHatchNbtConsumable GUI from ModularUI1 to ModularUI2; added new MTEHatchNbtConsumableGui class with updated item handling for MUI2 library differences. - @chrombread
    • Added: ModularUI2 NBT consumable hatch GUI, MUI2 dependency version bump
  • #5353 Added overridable textbox gap property to MTEMultiBlockBaseGui base class for MUI2 customization. - @chrombread
    • Added: Overridable textbox gap configuration
  • #5343 Migrated MTELargeMolecularAssemblerGui from ModularUI1 to ModularUI2; added GUI texture definitions to GTGuiTextures and refactored LMA hatch configuration. - @Spicierspace153
    • Added: ModularUI2 LMA GUI implementation, GUI texture definitions
  • #5333 Created MTECleanRoomGui.java for MUI2 and refactored MTECleanroom to use the new GUI. - @Spicierspace153
    • Added: MUI2 Cleanroom GUI
  • #5332 Ported MTELapotronicSuperCapacitor GUI to MUI2, created new MTELapotronicSuperCapacitorgui.java, and refactored original class to remove legacy MUI1 code. - @Spicierspace153
    • Added: MUI2 LSC GUI
    • Removed: Legacy MUI1 GUI code from MTELapotronicSuperCapacitor
  • #5330 Created MTEBasicMachineBaseGui.java as a foundation for single-block machine GUI code. Currently provides structure with empty content section for future expansion. - @chrombread
    • Added: MTEBasicMachineBaseGui base class, MTEBasicMachine GUI support
  • #5327 Bumped MUI2 dependency version in dependencies.gradle. - @serenibyss
  • #5323 Updated MTEMultiBlockBaseGui and GTBaseGuiBuilder to use new MUI2 text widget alignment and removed deprecated method invocations. - @Spicierspace153
  • #5319 Bumped MUI2 dependency version in dependencies.gradle and updated ProgressbarWidgetTheme accordingly. - @serenibyss
  • #5310 Adjusted MTEMultiBlockBaseGui widget code and removed ResizableItemDisplayWidget class to adapt to new ModularUI2 API. - @Spicierspace153
    • Removed: ResizableItemDisplayWidget class
  • #5309 Version bumps in dependencies.gradle. - @chrombread
  • #5300 Deleted ModularUI1 GUI methods and related classes from multiple multiblock and machine tile entities that now exclusively use ModularUI2 implementations. - @chrombread
    • Removed: ModularUI1 GUI implementations across multiple machines, Legacy UI code for Radio Hatch, Antimatter Forge, Antimatter Generator, Neutron Sensor, Volumetric Flask, Boiler variants, and others
  • #5299 Version bump in dependencies.gradle for ModularUI2. - @serenibyss
  • #5298 Version bump in dependencies.gradle for ModularUI2. - @serenibyss
  • #5296 Adjusted GUI widget positioning and sizing parameters in MTEPlasmaForgeGui, MTEPurificationUnitBaseGui, and MTETranscendentPlasmaMixerGui to reduce auto-focus on text widgets and improve layout proportions. - @chrombread
  • #5288 Updated ModularUI2 dependency version in dependencies.gradle and refactored GUI code to utilize new MUI2 features in MTEChamberCentrifugeGui, MTETranscendentPlasmaMixerGui, and MTEMultiBlockBaseGui. - @chrombread
  • #5286 Renamed class and updated references in MTEMultiBlockBase.java and MTEMultiBlockBaseGui.java. - @chrombread
  • #5254 GTValues player name string simplified. - @chrombread
  • #5248 Deleted tiered Radio Hatch crafting recipes from CraftingRecipes; removed deprecated parameter and unused isDeprecated boolean from MTERadioHatch. - @VortexSo4
    • Removed: Tiered Radio Hatch recipes, isDeprecated parameter
  • #5247 Deleted ULV Simple Washer registration, achievement entry, NEI config, and ItemList entry. - @VortexSo4
    • Removed: ULV Simple Washer block, Achievement entry, NEI config, ItemList entry
  • #5244 Deleted BlockSuperJukebox, ContainerSuperJukebox, GUISuperJukebox, InventorySuperJukebox classes and references; simplified GuiHandler conditional logic. - @VortexSo4
    • Removed: BlockSuperJukebox, ContainerSuperJukebox, GUISuperJukebox, InventorySuperJukebox, Jukebox GUI references
  • #5242 Replaced MUI1 ItemVolumetricFlaskGui implementation with MUI2 version (ItemVolumetricFlaskGui.java); flasks can now hold up to their maximum capacity. - @chrombread
    • Added: MUI2 volumetric flask GUI
    • Removed: MUI1 flask UI implementation
    • Fixed: text field flickering in flask GUI
  • #5179 Updated GTValues.java author tag formatting with randomized formatting codes and visual improvements. - @chrombread
  • #5126 Added explicit memory allocation and checkstyle configuration to build.gradle and reverted previous gradle.properties change that was ineffective. - @wlhlm
    • Added: Checkstyle-specific memory configuration
    • Fixed: Checkstyle task OOM in GHA
  • #5120 Added @Remap(false) annotation to four pollution mixin classes to prevent IDE remapping warnings. - @UltraProdigy
    • Fixed: IDE warnings on mixin files
  • #5102 Updated localization string in miscutils lang file. - @Miklebe
  • #5097 Added tooltip to MTEIntegratedOreFactory describing extra fluid costs for ChemBath mode. - @SST-03
  • #5088 Bumped mui2 version in dependencies.gradle. - @FrostyFire1
  • #5066 Updated ModularUI2 version in dependencies.gradle. - @FrostyFire1
    • Fixed: scrolling in GUIs
  • #5058 Updated GTGuiTextures, GTGuiTheme, GTGuiThemes, GTWidgetThemes, and MTEMultiBlockBaseGui to match ModularUI2/PR#44 API changes and bumped dependencies.gradle version. - @FrostyFire1
    • Removed: Deprecated ModularUI2 APIs
  • #5022 Created CoverRedstoneWirelessBaseGui for MUI2; updated CoverRedstoneWirelessBase to initialize MUI2 GUI. - @FrostyFire1
    • Added: CoverRedstoneWirelessBaseGui MUI2 implementation
  • #5021 Removed CoverLegacyData inheritance from wireless redstone covers; refactored CoverRedstoneWirelessBase and MUI1 factory. - @FrostyFire1
  • #5019 Migrated CoverItemMeter to MUI2; created CoverItemMeterGui and updated legacy factory reference. - @FrostyFire1
    • Added: CoverItemMeterGui MUI2 implementation
  • #5016 Migrated CoverEnderFluidLink from MUI1 to MUI2; created CoverEnderFluidLinkGui and updated texture references. - @FrostyFire1
    • Added: CoverEnderFluidLinkGui MUI2 implementation
  • #5003 Added new CoverChestGui for ModularUI2 and updated CoverChest to support both UI systems. Data serialization remains unchanged, ensuring cross-version compatibility. - @FrostyFire1
    • Added: ModularUI2 cover chest GUI, CoverChestGui
  • #5001 Added @SuppressWarnings("PointlessArithmeticExpression") annotations to multiple recipe loader classes where arithmetic expressions are intentional for readability or recipe calculation clarity. - @Vlamonster
  • #5000 Simplified recipe definitions in bartworks/common/loaders/recipes/Assembler.java by removing redundant circuit entries from mega recipes. - @Vlamonster
    • Removed: Unnecessary circuits from recipes
  • #4997 Added new CoverArmGui class for ModularUI2 and updated CoverArm to support the new UI system. Added textures to GTGuiTextures. - @FrostyFire1
    • Added: ModularUI2 robot arm cover GUI, CoverArmGui
  • #4948 Hardcoded UI strings in GTPacketUpdatePowerGoggles, various cover GUI classes, and UI factories moved to lang file entries. Over 20 files updated with lang file references. - @Ranzuu
  • #4940 Powerfail event string in MTEMultiBlockBase moved to lang file en_US.lang entry. - @Ranzuu
  • #4438 Added PNG texture files for beryllium integrated reactor, graphite moderator, insulated fluid pipe casings, and HTGR pellet items. - @kielxyz
    • Added: HTGR texture assets

Contributors ​

Everyone who authored, reviewed or co-authored a change on this page, with how many of them:

@Dream-Master (910), @UltraProdigy (666), @chrombread (375), @boubou19 (229), @Yoshy2002 (203), @AnsonYeung (196), @Ruling-0 (162), @RecursivePineapple (138), @Luca-Guettinger (130), @Auynonymous (126), @TheYoingLad (119), @serenibyss (112), @FourIsTheNumber (104), @Eldrinn-Elantey (101), @tiffit (97), @chochem (92), @Nikolay-Sitnikov (80), @Alexdoru (78), @FrostyFire1 (75), @Ranzuu (73), @VortexSo4 (70), @Spicierspace153 (67), @EnderProyects (59), @DylanTaylor1 (58), @Nana-Sakura (57), @Algent (56), @Pxx500 (55), @Sanduhr32 (52), @sisyphussy (52), @GDCloudstrike (50), @danyadev (49), @NotAPenguin0 (48), @koolkrafter5 (47), @YannickMG (45), @cubefury (44), @Azusfin (41), @ham-corp (41), @MLGfruitshoot (41), @Caedis (38), @ABKQPO (33), @Vlamonster (31), @Kogepan229 (30), @lc-1337 (30), @loenaaaa (30), @hinyb (27), @Angry3vilbot (26), @C0bra5 (26), @evgengoldwar (26), @kuba6000 (26), @leagris (26), @Miklebe (23), @querns (21), @iouter (20), @Nockyx (20), @Worive (20), @czqwq (19), @jude123412 (19), @seventh-june (19), @LazyFlesh (18), @slprime (18), @Spaghetti-OberNub (18), @wlhlm (17), @Glease (15), @LazyFleshWasTaken (15), @SST-03 (15), @DreamYao520 (14), @StaffiX (14), @fehling135 (13), @glowredman (13), @RealSilverMoon (13), @Connor-Colenso (12), @DarkShadow44 (12), @Discreater (11), @mitchej123 (11), @TotallyNotOndre (11), @Ethryan (10), @Guvante (10), @LewisSaber (10), @zyf051520 (10), @mllfjn (9), @PLASMAchicken (9), @OTPANNIEXD (8), @purebluez (8), @Copilot (7), @ReignOfFROZE (7), @Armisael5 (6), @SuperSoupr (6), @BlueWeabo (5), @combusterf (5), @copilot-pull-request-reviewer (5), @flamingowrangler2869 (5), @GirixK (5), @kx08 (5), @MassAnarchyy (5), @zaru-noodles (5), @54M44R (4), @Bjdufre1 (4), @Cardinalstars (4), @eigenraven (4), @guid118 (4), @hiroscho (4), @JustACasualDay (4), @KleinGrrmpf (4), @LooseEthics (4), @MalTeeez (4), @NeutronSelector (4), @Taskeren (4), @YoungOnionMC (4), @1328116700 (3), @AbdielKavash (3), @asquared31415 (3), @chazzybearr (3), @mamiemru (3), @mhowell9 (3), @NekoNou (3), @noah-cope-dev (3), @NotKaizul (3), @OneEyeMaker (3), @PlayfulPiano (3), @thehoblit (3), @YamiKami-Sama (3), @3ricbae (2), @6C-C6 (2), @Ableytner (2), @ah-OOG-ah (2), @awolosewicz (2), @bencimp (2), @C-Remilian (2), @ChromaPIE (2), @claude (2), @Cleptomania (2), @CN132DAS (2), @dagger8243 (2), @error1number404 (2), @felixfour (2), @Flakxo (2), @Florexiz (2), @glektarssza (2), @IX-git (2), @Justxs (2), @khaskelbergTAU (2), @kielxyz (2), @Kynake (2), @label-sync-bot-gtnh[bot] (2), @LunaDziaba (2), @Lyfts (2), @MeiTianyou (2), @metalcupcake5 (2), @miozune (2), @POPlol333 (2), @ROBERT-PARKOURCIVILIZATIONGOD (2), @SKProCH (2), @toenailsin (2), @vnesterovskyi (2), @WayneYam (2), @Windorain (2), @52871299hzy (1), @AbdoDayem (1), @arch1t3cht (1), @arisado (1), @AshVz (1), @Brabb3l (1), @bumbleBee945 (1), @captainjolt (1), @ChromicRedBrick (1), @Corexis (1), @couref (1), @daxsc (1), @DeathFuel (1), @DerekChan65535 (1), @dipo33 (1), @dragongod100 (1), @dvdmandt (1), @EdenExecutive (1), @Emilgardis (1), @Engineer12798 (1), @envoidia (1), @Faotik (1), @feazy-andrei (1), @Ghoose1 (1), @GijsvandenHoven (1), @Graymare (1), @grimly (1), @GTNH-Afx237v7 (1), @H3stur (1), @hanben02 (1), @harrynull (1), @Iamworking12 (1), @isadora-6th (1), @jamiehu427 (1), @Jesse-njx (1), @JesseSprinkle (1), @JL2210 (1), @JMan-Zx (1), @june-dev-username (1), @Junyan721113 (1), @jurrejelle (1), @Keter01 (1), @konradmoesch (1), @kopatych3348 (1), @Krakenrek (1), @Krepyn (1), @Ktmi (1), @KwazziAus (1), @label-sync-bot-gt-nh[bot] (1), @lekior (1), @LeoCav46 (1), @lonei-G (1), @LunarLambda (1), @luoyangyuli2001 (1), @lynxx131 (1), @Marsietiss (1), @mattiasploesch-cpu (1), @maybemattie (1), @mcmlevi (1), @michaeldoylecs (1), @ModularityEnjoyer (1), @noitacude013 (1), @NovanOfLowat (1), @OmdaCZ (1), @PantACRO4life (1), @philzin (1), @PinkYuDeer (1), @Quaerere-Git (1), @Quetz4l (1), @Quollveth (1), @riggzh (1), @Rikka-Kitani (1), @rnp6211 (1), @Shadowsoftime99 (1), @Sinerum (1), @Sopel97 (1), @Sprite104 (1), @Stars-27 (1), @Steelux8 (1), @StellaCaerulea (1), @Sunrunner37 (1), @TechLord22 (1), @telemenar (1), @thedarkcolour (1), @TheEpicGamer274 (1), @Tuxprogrammer (1), @Tyronadre (1), @vermz99 (1), @Willshaper (1), @xicoa (1), @youkoaona (1), @ZaykieT (1), @zub143 (1)