promotional bannermobile promotional banner

SFM-Flow

A Re-imagined SFM with Flowcharts
Back to Files

sfmflow-0.3.1.alpha.jar

File namesfmflow-0.3.1.alpha.jar
Uploader
ScottDTAScottDTA
Uploaded
Jul 1, 2026
Downloads
20
Size
474.4 KB
Mod Loaders
NeoForge
File ID
8349674
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:sfm-flow-1589954:8349674"

Learn more about Curse Maven

What's new

Some back end updated, but most important things are with the change in how manager data is saved means I believe we are save safe now.   The other big improment is that chaining multiple inputs and or outputs together now works as I believe it should.  This has been fun to work on.  Hope you are enjoying it.  Full change log below.

###[Added]

* Modular Plugin API: Introduced a backend plugin system (ISFMFlowPlugin / ISFMFlowClientPlugin) that allows third-party developers to register custom flowchart nodes, settings panels, and capabilities side-safely.

* Extensible Network Capabilities: Rewrote the network routing system to support custom capabilities (FlowCapability). Cable networks can now support fluid, energy, or chemical transfer integrations seamlessly in the future.

* Flowchart Wire Buffers: Connection wires now virtually queue items (FlowItemBuffer) as they travel along S-curves, preserving their source block coordinate metadata for downstream evaluation.

* Server Diagnostic Profiler: Added a /sfmflow profile command for administrators to audit active Manager blocks, displaying performance execution times, queued backlog counts, and click-to-teleport actions.

* Execution Time Budgets: Added a configurable execution time budget (limits.maxExecutionBudgetUs, defaulting to 1000 microseconds) to clamp the time spent executing transfers per tick, protecting server performance.

* External Data Storage: Flowchart layouts and configurations are now stored in dedicated .dat files within the world save folder (<world_folder>/sfmflow/managers/) instead of inside the block's NBT. This mitigates chunk NBT bloating, reduces save overhead, and keeps world save sizes stable.

* Automated Save Cleanup: When a Machine Inventory Manager block is broken, its corresponding external save file is automatically deleted from disk to prevent unreferenced data buildup.

 

###[Changed]

 

* Modular Core Layout: Decoupled built-in triggers and transfers, registering them through the new Vanilla plugin modules.

* API Promoted Widgets: Elevated BlockPreview3DWidget, InventorySelectorWidget, and ItemFilterWidget to public API packages for developers to reuse.

* Storage Architecture: Loading and saving processes now fetch layout data asynchronously from the filesystem once the world is loaded.

* Initial Client Synchronization: Data-sync tags continue to package layouts dynamically on chunk load to ensure visual flowchart canvases update immediately when logging in.

 

###[Fixed]

* Backward Compatibility: Legacy worlds storing layout data directly inside chunk NBT are automatically parsed, loaded, and migrated to the new external format upon first load.

 

###[Removed]

* Hardcoded Routines: Removed hardcoded item handler operations from the manager block entity's ticking loop in favor of the registry-backed capability executor loops.

Type
Name
Game Versions
Mod Loaders
Size
Downloads
Uploaded