I spent some time thinking about how to implement Factorio and it occurred to me that things like conveyors are probably represented as linked lists (all the conveyer elements in order) while also having X,Y grid coordinates. Every time you modify a conveyor belt chain, the game engine is probably adding/removing nodes from the list, or splitting lists in two, or joining two lists. I can't see how they get some of the effects in the game but there is probably a TON of clever optimization so they can maintain the target frame rate.