I hope I'm not intruding where I'm not wanted, but I grabbed a copy of msteiger/Terasology, branch headless, merged in MovingBlocks/Terasology/develop, and started working on it.
I took the basic idea of Environment that msteiger developed, copied it out of Engine-tests into engine, and then squeezed TerasologyEngine code into an LwjglEnvironment subclass.
The refactored code leaves no references to lwjgl in TerasologyEngine, is highly customizable, and still works.
https://github.com/mkienenb/Terasology/tree/headless
The next step is to create a HeadlessEnvironment, pull non-display code out of LwjglEnvironment, and probably make LwjglEnvironment inherit from that. Then start seeing what breaks.
I'm also interested in seeing whether a non-3d Environment is possible. I think it might well be with the latest NUI API changes.
I took the basic idea of Environment that msteiger developed, copied it out of Engine-tests into engine, and then squeezed TerasologyEngine code into an LwjglEnvironment subclass.
The refactored code leaves no references to lwjgl in TerasologyEngine, is highly customizable, and still works.
https://github.com/mkienenb/Terasology/tree/headless
The next step is to create a HeadlessEnvironment, pull non-display code out of LwjglEnvironment, and probably make LwjglEnvironment inherit from that. Then start seeing what breaks.
I'm also interested in seeing whether a non-3d Environment is possible. I think it might well be with the latest NUI API changes.