POST, GET and More

January 2016

LLOB update

Steve Mitchell: “I have updated this site to include some of the original cover art from Lore Lords. Later I will be converting the whole original art set into a default ‘theme’. My plan is to allow players to customise and share their own themes later, but the retro theme will be a good starting point for now.”

“On the code side, I’ve continued with testing the integral HTTP server to make sure it is doing what is needed. To this end I have added POST and GET support for the message interface, using CuRL to test the POST interface (handy command line tool) and just any web browser to test the GET interface by pasting command strings into the URL bar. Whilst doing this I have managed to get quite an extensive range of commands and responses supported (though just test responses).”

“As a further experiment with Python’s built in web server I added CGI support for python scripts and file support (for example and actual index.html file rather than python HTTP response). Python CGI scripts are not the same as using HTTP to talk to the game itself, the CGI doesn’t have direct access to the simulation for example. POST and GET work great at talking direct to the simulation, but intensive calls (“hammering”) to file and CGI scripts appear to give the built in server a headache. To deal with this last issue I have installed Apache2 alongside the game to support files (.PHP and .HTML) directly if they are needed, though on port 80.”

“I think the game GET and POST interface will run on port 8080 whilst any bulk files will run on 80 as Apache is a lot more load tolerant it appears – good to find out now. Later they will probably run on different servers.”

“This whole end of the game is critical to get right, and it appears I will continue to work on making the direct HTTP game output simple web widgets, with basic hyper links to control the game at the start, until the retro version is complete. Once that is done I will add an Apache layer for player account control (registering and customising), interface with a database for all games and users (players) on that site and then have links to the game servers from there. Intensive files and links (art / audio) will probably be shared on the general Apache server with only the media location (URLs) stored within the game. Moving .JPG and .WAV or .MP3 files within the game is not as efficient as using links to more powerful servers.”

“Next I have to complete 5 basic report classes with 7 levels of detail each and also need to generate the interactive command links that will go with them (what were the ‘return’ sheets). This will keep me busy.”