Belt Balancer (Improved Performance)


(Fork with performance improvement) Adds Balancer Parts, that can be put together, to balance all adjusting lanes.

10 days ago
1.1
2815
Owner:
archiehalliwell
Source:
https://github.com/archiecarrot123/be...
Homepage:
N/A
License:
MIT
Created:
a month ago
Latest Version:
3.1.3 (10 days ago)
Factorio version:
1.1
Downloaded:
2815 times

A fork of the Belt Balancer mod with somewhat improved performance (up to 100%). I wouldn't recommend trying to make a megabase with either mod, but if your computer is tanking you can use this to get some UPS back whilst you stop using or remove your belt balancers.

Copy-pasted from the original mod:

Basic Functionality

Adds Balancer Parts, that can be placed into the world to balance all adjusting belts, underground-belts and splitters. Placing multiple Balancer Parts next to each other, will connect them and the belts from all Balancer Parts will be used.
Balancer Parts work in every direction. So every belt, underground-belt or splitter that is facing toward any Balancer Part is used as input. And every belt, undground-belt or splitter that is facing fromwards any Balancer Part is used as output.

It has two commands:
/belt-balancer-statistics: This command prints some statistics about the usage of belt-balancer.
/belt-balancer-test: This command, will remove entities from 0,0 and replaces it, with a few tests, to see if everything of this mod is working correctly. Please don't use this command on existing saves, only run it on new ones, to see, how this mod works. The mod Creative-Mod is needed for this command!!

Performance

  • I am using "entity-with-force" as base. This Entity (Balancer Part), will connect to the nearby Balancer Parts and create a complex structure. This complex structure also holds all input and output lanes. So no calculations for adjusting belts are needed in the tick.
  • The tick function is called once for every complex structure and not for every Balancer Part.
  • To save even more time, i don't run with on_tick(), but in on_nth_tick(). Everytime a belt/Balancer Part is added/removed, the nth_tick is newly calculated and the tick-handler is updated.
  • In conclusion Balt Balancer is even faster than factorissimo2. I had big scaling in mind while creating the mod and in my worlds it runs smooth.

Belts, that run every tick

Some belts are running every tick, even if they could be ran a little bit slower. This is, so the output-belts are fully compressed. Belts, that have to run for example ever 2β…” ticks, are run every tick.

  • Basic Game - Express Transport Belt (Blue). Downed from 2β…”
  • Bobs - Fast Transport Belt (Red). Downed from 2β…”
  • Bobs - Turbo Transport Belt (Purple). Downed from 1.6
  • Bobs - Ultimate Transport Belt (Green). Downed from 1β…“

Integration

  • Is compatible to IndustrialRevolution. Has completly changed recipes, so Balancer Parts are available in the early-game. Only 0.17 compatible versions.
  • Has additional recipes and technologies for "Bob's Logistics mod" and "Bob's Metals, Chemicals and Intermediates".
  • Has compatibility with mods, that change direction of belts directly (e.g. Picker Belt Tools). It may take a few seconds until the change is registered, don't rotate or remove the belt in that time, it will cause a crash!!