I figured the CEF + OpenGL runs on the same process which is why you can touch the GUI while in game. In addition, you can see it actually use GPU and if you look at the command line triggers you can see arguments related to running CEF for the process that uses GPU. There also another process that is ran which is the server.
When you run the headless server, it only creates one process, the one that runs the server. Though you had more experience playing with the mods. So I am just guessing here.
For sure, we don’t want the client to trigger the save on the server since it can have a malicious use case.
Oh, no. You didn’t recommend or imply it. I just didn’t think of it until I read your post. Having a proxy server would just make things easier. Rather than modifying the dll, I might be able to imitate the save trigger and the remote clients would never know or even have access to the functionality.
I am not a lua programmer. So I didn’t consider being able to swap out the lua dll library. This may have some good use cases. But I would still need to figure out the proper way to call radiant:server:save. Wouldn’t the save games still be handled on the C++ side. So if it is hooked in the client portion of it which doesn’t get executed when running headless, then it still won’t work.
Technically, ‘radiant:server:save’ is not in any mod code. It only shows up in the stonehearthd.dll. Technically no one is supposed to call it from lua. I only found it after poking around.
I found The Happy HTTP Hack (1.0.0). I can see some fun features being added with this http functionality! Awesome idea to create this.