Перейти к содержимому
Mineforgian

ModularMachinery: Community Edition

Customize your machinery with more powerful features.

Загрузки
11K
Подписчики
11
Обновлён
2 октября 2024 г.
Лицензия
GPL-3.0-only

Опубликован 23 января 2023 г.

ModularMachinery: Community Edition

The Community Edition is all about modernizing the Modular Machinery and providing more customizable content.

Enhancements:

  • More searchable configurations for the DE Energy Core of the Energy Input Hatch and Energy Output Hatch
  • Larger controller GUI for more information display by the modpackers

Expanded Features:

  • Custom recipe failure operation (default is still, from gugu-utils)
  • TheOneProbe compatible (currently supports recipe progress / mechanical status display, supports configuration)
  • New recipe types
    • Material group input
    • Catalyst input
    • Per Tick fluid input and output
  • Advanced event system and extended API based on CraftTweaker
    • 5 recipe events
    • 2 mechanical events
    • Add custom hints to JEI recipe screen
    • Dynamic item NBT determination and dynamic item modifier
    • RecipeModifier for dynamic generation, addition and deletion
    • Dynamic modification and addition of controller GUI status information
    • Built-in customizable data storage with persistence (save data on exit from game), read and save support
    • Mechanical controller API
  • Smart Data Interface
    • Smart Data Interface can be used to add custom functionality using CraftTweaker
    • It enables features such as programming circuits, rate control, etc.

Experimental features:

  • High-performance asynchronous implementation

    • The original Modular Machinery offers a lot of powerful features, but it runs with worrisome performance, especially with a large number of controllers.
    • The community version adds an asynchronizable interface, and all implementations of this interface can safely do a lot of work in an asynchronous form.
    • Based on extensive modpack testing, the maximum performance improvement can be over 10 times.
    • The only main thread consumed is structure check, but it is impossible to do asynchronously because it is unsafe to operate on the side of some third-party plugin services.
  • Redrawn JEI recipe interface icon to support stuffing more recipe elements

Features under development.

  • Random item output
  • Single cube mechanical implementation
  • Parallel recipe processing
  • Factory implementation (similar to the factory in Mekanism)
  • Merging of dependent functions
  • Additional support for TheOneProbe

Ченджлог

2.0.3Релиз1.12.2 · 2 октября 2024 г.

So this is a true 2.0 release, that out of the sheer number of 2.0.0 releases that have messed with my judgement.

Features:

  • GasPerTick Input / Output support.
  • Selective redstone update / check.
  • The capacity of the Mana Provider can now be modified.
  • Use BlockPos2ValueMap to optimize memory usage (From StellarCore).
  • Added InsolatorRecipeAdapter.
  • Upgrade blocks can now use JEI keystrokes.
  • Upgrade blocks can now be indexed by JEI.
  • FactoryController's isWorking method now requires at least recipe to be running properly before returning true.
  • Make Auto Assembly Trigger Forge Event (#121).
  • Structure Preview now expands the menu by default.
  • Optimised performance of MEItemBus / MEFluidBus / MEGasBus.

Fixes:

  • Fix some side judgement issues caused by async thread.
  • Possible fix for potential geo model z-fighting issues.
  • Fix MEFluidBus sometime not working.
  • Prevent overlapping structures (for DynamicPattern).
  • Fix some memory leak issues.
  • Fixed the issue that the emissive part of the model could not be rendered in Optifine Shader environment.
  • Fix weird rendering colours for the first material slot in the preview.
  • Removed a redundant getDrops method, prevent dupes.
  • Fixed the problem of incorrectly judging space for scrollbars.

InternalChanges:

  • Deprecated HybirdFluid
  • Remove usage of GLSM push/popAttrib (#116)
  • Use ReadWriteLock to enhance thread safe.
  • ObfuscationReflectionHelper -> ReflectionHelper.
  • Reduced version requirements for TE5.
2.0.0-pre7Бета1.12.2 · 12 июля 2024 г.

Features:

  • MultiThreaded gecko model renderer (up to 90% performance improvement).
  • Mekanism - AE2 gas support (requires MekanismEnergistics).
    • Add ME Machinery Gas Input/Output Bus.
    • ME PatternProvider new type support.
  • GeckoLib model bloom effect support (requires GTCEu or Lumenized).
  • CraftingBlockMode for MEPatternProvider.
  • MEFluidOutputBus now is OneFluidOneSlot (GasOutputBus are not).
  • The GeckoLib model of the controller can now be previewed normally in the preview gui (jei or blueprint).

Fixes:

  • Fix AE2 hard dependencies (#101, #102).
  • Fix incorrect get judgment for ControllerModelGetEvent (#95).
  • Fix ConcurrentModificationException and ArrayIndexOutOfBoundsException triggered randomly during runtime.
  • Fix the problem that the GUI fluid slot of ME Machinery Fluid Input/Output Bus doesn't work properly under the environment of Vanilla AE2.
  • Fix MEPatternProvider would lose ItemStacks with more than 127 stacks when save game.
  • Fix an occasional problem with an abnormal number of parallelism.
  • Fix the controller is not changing color like the other blocks when using "color" in the machine.json (#103).
2.0.0-pre6Бета1.12.2 · 27 мая 2024 г.

Fixes:

  • MMInfoProvider NPE fixes.
  • Fix default failure action is invalid (#93, #94).
  • Fix Cannot install a GeckoLib model via a ControllerModelGetEvent (#92).
2.0.0-pre5Бета1.12.2 · 25 мая 2024 г.

Changes:

  • Use getPickBlock() in the preview to get the correct ItemStack.
  • For some reason we can't use item handler larger than 64 stacks.
  • (Exp) Async controller render for geo model.
  • (Exp) Use parallelStream to load geo models, may faster to load game.
  • Extract static method form IMachineController to MachineController.
  • Extend the catch type of the try catch.
  • BlockController#onNeighborChange -> BlockController#neighborChanged.

Fixes:

  • InputBus now cannot eat PatternProvider's internal items.
  • Fix GeckoLib cause crash in AMD display card.
  • Fix PatternProvider client crashes.
  • Fix client memory leak.
  • Fix RequirementIngredientArray ClassCastException.
  • Fix machine assembly not working if world time frozen.
  • Fix IC2 Recipe Adapter issues.
  • Fix OredictCache deadlock.
  • Fix MEBus deadlock (#89).
  • Fix BlockInfo#apply cause error.
2.0.0-pre4Бета1.12.2 · 30 апреля 2024 г.

Changes:

  • Add ME Machinery Pattern Provider. (#84).
    • Automate your machines with patterns.
    • Infinity cache.
    • Single Inventory: 2 Item Inputs And 1 Fluid Input.

Fixes:

  • Fix OpenJ9 preview error.
  • Fix Cleanroom compatibility.
  • Fix flickering display of items in structure preview.

Internal Changes

  • Dynamic Widget code changes.
  • Add Empty DummyWorld#initCapabilities method to prevent forge events.
2.0.0-pre3Бета1.12.2 · 12 апреля 2024 г.

Changes:

  • Preview 2D panning (Specially thanks Doogle007 provides algorithm)
  • Added warning when VBO is not enabled.
  • Allows automatic assembly of machines containing dynamic patterns.
  • Optimize the arrangement rule of items in JEI.
  • Adjust the addModifier method of MachineUpgradeBuilder.
  • Preview's ShowUpgrades button will now be displayed by default.
  • Allow to modify controller block bounding box (#78).
  • Provided selective slot updates for MEItemBus and MEFluidBus.
  • Added partial checks to prevent certain boundary cases from causing product loss issues with recipes.
  • Selective redstone signaling update.

Fixes:

  • Fixed issue where JEIComponentIngredientArray was not displaying input prompts.
  • Fix brackets in NBTJsonSerializer.

Internal:

  • Mouse.getDWheel -> Mouse.getEventDWheel.
  • More task executor threads.
  • Texture update.
  • Remove unused textures.
  • Netty#IntObjectHashMap -> FastUtils#Int2ObjectOpenHashMap.
2.0.0-pre2Бета1.12.2 · 1 марта 2024 г.

Fixes

  • Fix catalyst chance not working.
  • Fix structure previews causing occasional crashes.
  • Fix an issue that would cause a crash when the player had vbo turned off.
  • Attempted to fix some syntax issues when serializing NBT to JSON.

Changes

  • More CraftTweaker compatibility for Mekanism's IGasStack (e.g. addInput, addOutput, addGasInput, addGasOutput and enhanced addGasInputs, addGasOutputs).
  • The subitem chances of RequirementIngredientArray act only on the weights of the outputs, while the inputs play no role.
  • Added structure upgrade preview.
  • RecipeCheckEvent is now split into START, END phases, so it now fires twice.
  • Added enableDurationMultiplier option to the configuration file.
  • BlockArray supports configuring preview-tag when parsing JSON.
  • Limited GregTechCEu hatch compatibility available.

Internal Changes

  • Standardized item rendering (unified use of IngredientItemStackRenderer).
  • Deprecated RecipePrimer#addCheckHandler and replaced it with RecipePrimer#addPostCheckHandler.
  • Deprecated DynamicMachineUpgradeBuilder#addRecipeCheckHandler and replaced it with DynamicMachineUpgradeBuilder#addRecipePostTickHandler.
2.0.0-pre1Альфа1.12.2 · 21 февраля 2024 г.

Large Changes:

  • Newly rewritten structure preview gui, and special thanks to KilaBash.
    • Added a new prefix attribute for machinery, which will be rendered to the left of the title in the preview screen.
    • Performance is dramatically improved (10x the performance of the original preview).
    • Supports clicking on a block in the preview to see all the replaceable blocks of the this block.
    • Larger preview gui.
    • Optimized mouse Drag/scroll wheel operation.
    • Note: optifine shaders is unsupported, If shaders are enabled, old-style previews are automatically switch.

Changes:

  • TC6 Recipe Adpater Support(RegisteryName: thaumcraft:infusion_matrix)
  • Rewrite and optimize the gas implementation of HybridGasTank.
  • Enables catalysts to input multiple materials but only have one effect, like IngredientArray.
  • Rewrote the ComponentRequirement.Parallelizable#getMaxParallelism method for all requirements, when the requirement is parallelized unaffected, there must be at least 1 parallel to return the maximum number of parallelism.
  • Catalysts are now unaffected by parallelism by default, and their modifiers provide multiplier effects if parallelism is enabled.

Fixes:

  • Fix an occasional memory leak.

Internal Changes:

  • Completely cleaned up the old preview code.
  • Deprecated ModularMachinery#EventBus, which seemed to fail in CleanroomLoader and caused a lot of things to break.

Комментарии

Загружаем…