Belt Machine API
Posted: Sat Sep 26, 2015 6:22 pm
There are already 50 bazillion suggestions for new splitter-like machines, but this one is different. Very different.
What this game needs is a rule based API for making modded belt machines. Basically you would define the machine's belt input locations and then specify a different location (or list of locations) that any incoming items are output. For example a clone of the splitter would specify two inputs, and each lane of each input would be given two outputs (on the opposite side of the machine).
By specifying IO mappings on a per lane basis you could make all kinds of fancy belt machines, for example a single lane belt, or a single tile balancer. By simply providing an API modders could get as complicated as they wish without needing to fill the base game with extra cruft.
An interesting extension to my idea would be to allow a Lua function to be provided instead of an output mapping, so that it would be possible to make machines that input items directly from belts (a industrial size pass-through furnace for example). Of course to make full use of this it would be necessary to have a way to output directly to defined belt outputs...
In short a belt machine API would provide tremendous modder freedom, always a good thing to have.
Edit: This would neatly tie into: This suggestion (in the backlog section)
What this game needs is a rule based API for making modded belt machines. Basically you would define the machine's belt input locations and then specify a different location (or list of locations) that any incoming items are output. For example a clone of the splitter would specify two inputs, and each lane of each input would be given two outputs (on the opposite side of the machine).
By specifying IO mappings on a per lane basis you could make all kinds of fancy belt machines, for example a single lane belt, or a single tile balancer. By simply providing an API modders could get as complicated as they wish without needing to fill the base game with extra cruft.
An interesting extension to my idea would be to allow a Lua function to be provided instead of an output mapping, so that it would be possible to make machines that input items directly from belts (a industrial size pass-through furnace for example). Of course to make full use of this it would be necessary to have a way to output directly to defined belt outputs...
In short a belt machine API would provide tremendous modder freedom, always a good thing to have.
Edit: This would neatly tie into: This suggestion (in the backlog section)