StrangeLoopGames / EcoSuggestions

Repo for storing Eco game suggestions, separate from EcoIssues
34 stars 1 forks source link

Create a public API for servers #972

Open ThePiachu opened 4 years ago

ThePiachu commented 4 years ago

I really dig the web overview of a world:

image

It can help you visualise what's going on and give you some insight even if you're not playing the game. However, as someone that has enjoyed EVE: Spreadsheets in Space, it is understandably not enough for me.

It would be nice to have a better access into the API. It would be nice to be able to graph things like the amount of calories produced, how much money is moving in the system, list the current world prices and so on.

Access to a public API would let people build prototypes of useful tools the dev team might want to integrate into the world viewer, as well as provide some high quality useful tools by themselves. Never underestimate nerds that like to Excel ;).

Elliander commented 4 years ago

I like this idea. As someone who hosts a private server for friends, and owns web hosting, I'd love for a settling like this.

Here's how I picture it could work without making the API public:

I create a domain name to act as the web page, then in the server settings (Maybe Networking.eco) I specify the URL of the domain and also provide the FTP username and password for it. Then, click to run the server, the required files are uploaded to that domain and updated via that FTP connection as required.

The only problem with this idea is that these updates, if often enough, can introduce lag so maybe the host could specify a delay between updating it. Since the primary purpose would be to view details while not in game this wouldn't be unreasonable. If a player wanted real time updates rather than an update, say, every half hour or so they could login.

Making the API public, however, would allow independent development of Apps related to the operation of the servers.

johnkslg commented 4 years ago

Yep api is public already with swagger, go to :3001/swagger to see the api