Skip to content

Introduction to the EnergyNet [English Version]

Rikka0_0小六花 edited this page Jan 8, 2019 · 1 revision

The SimElectricity(SE) EnergyNet is conceptually different to any existing Minecraft Mod energy net, it relies on a completely different mechanism. Instead of simulating energy flows, first, the SE EnergyNet preforms nodal analysis (by using Kirchhoff's current law) on the generated circuit diagram, then calculates nodal voltages and finally determine the magnitude and direction of energy flow.

Advantages

Compare to other EnergyNet, our one offers numbers of unique benefits:

  1. Multi-threading: harvest the power of multi-core processor, better TPS! (Tick Per Second)
  2. Grid: allow energy to be transmitted over a great distance, no teleporting!
  3. Realistic loss: transmission lines are not lossless, the loss is proportional to the square of current which is exactly how it behaves in reality.
  4. Realistic units: Volts, Amperes, Ohms, Watts, Joules and Kilowatt Hour
  5. Prevents perpetual energy duplicators from mathematical level!

Basic Concepts

The SE EnergyNet defines two types of object: TileEntity-Based(distribution devices, generators, consumers machines, switches, diodes, transformers e.t.c) and Grid-Based(transmission lines, power transformers, high voltage switches). The fundamental difference is how they react to chunk loading and unloading.

TileEntity-Based objects (ISECableTile and ISETile) are more like IC2 machines, they must have their host TileEntity. They are removed from the EnergyNet once the parent chunk is unloaded. In another word, they will not work when there's no player near by. (Or without modded chunk loaders, just like vanilla furnace)

Grid-Based objects exist all the time, even if nobody is in the server. In fact, their existence, parameters and connections are stored independently in a graph-like data structure. Chunk loading/unloading doesn't affect them at all, that's why players can transmit power along a super long transmission line without having chunks in the middle to be loaded.

Further more, Grid-Based objects must be linear devices (I made this rule), which means they can not be non-linear things like a diode. And it's not recommended to have a Grid-Based object sourcing or sinking energy.