The Controller manages a network and all it’s members, and is responsible for keeping track of all present drive bays and their contained drives, as well as delegating requests to add and remove items to the correct drives. As such, it is required that a network have a controller. Unlike AE2, this mod does not have ad-hoc networks.
Power Usage
On it’s own, a Controller uses 32 RF/t. Each member of a network also consumes RF, but does this by simply increasing the consumption rate for the controller itself.
Item Distribution
A Controller decides which drive to send items to based on both it’s distance from the controller and the drive’s priority. At the drive bay level, the top-left drive is checked first, then the rest are checked left-to-right top-to-bottom, like shown:
Drive bays closest to the controller are checked first, as a consequence of how the controller scans the network. Higher priority drives are checked before lower priority ones.
In addition, the export slots of interfaces will be scanned for items to be taken out. Items will never be added to an interface, unless the interfaces is configured to pull items.
Network Scanning
Controllers scan in an expanding diamond around them, stopping when they hit a block that is not a member of the network. An illustrated example:
- The controller itself.
- Every block touching a face of the controller.
- Every block touching the face of a network member found in step 2.
- Every block touching the face of a network member found in step 3.
Here’s an illustration, showing the basic shape of the scanning:
That is to say, the controller scan order ends up assigning the manhattan distance from the controller to the network member as it’s index for prioritization.
A controller will stop and error out if it ever tries to scan more than 100 blocks. This is to prevent extremely large networks from crashing and/or lagging the server. Note that our examples here are 2D, while the Minecraft world is 3D. This means that rather than 3 worst-case extra scans on ending blocks, you have 5 worst-case extra scans. These extra scans are counted in the 100 limit. You can have a network with way less than 100 members still error for being too big due to this. As such, large flat planes are an inefficient way of building a network, and it’s better to do other things such as putting drive bays back-to-back.