Difference between revisions of "Webadmin SOC2008"
Revision as of 20:30, 21 April 2008
I will allow the user to choose from plugins and maps in pre-defined folders, and upload custom maps. (Although it would be interesting to do the same for plugin files, I don't think that there would be any nice way of keeping it secure.) Depending on the relative difficulty, I may either try to validate maps on upload or let BZFS check them on startup. Map uploads are actually a high priority for me, because I think that they would add a great deal of flexibility in the way one manages a BZFS. One possible offshoot of this project, for example, would be to build a BZFS farm, where registered users can create and configure their own game servers entirely through their browsers. With an interface for map uploads, this could have a noticeable impact on the BZFlag community by giving them an open creative platform.
On the same note, there should be very few external tools used in this project, so that it can be deployed as widely as possible. It could be written in PHP or another common scripting language, but that would require whatever language I choose to be present on the host machine. Granted, PHP is very widely available, but since BZFlag is written in C++ already, I could write the interface in C or C++. This is the most likely outcome, because this would also allow it to be implemented as a plug-in, using the in-port HTTP feature of the BZFS API, which would make the interface more convenient to deploy. However, in order to ease development, I may use a scripting language to create a working prototype and use that as a blueprint to rewrite it in the lower-level language.
As for testing, I maintain a VPS at which I could set up a public BZFS server and BZFWeb interface for others to try and give suggestions. I will also be testing each component as it is added, hopefully with BZFlag developers ensuring that my unit tests are checking for the correct behavior, and that all of the edge cases are covered.
Finally, when all is done, I hope to be able to help the BZFlag team package BZFWeb along with the server distribution. I think it would improve the usability of the server, and could attract more users that were previously daunted by the process of setting up and maintaining a BZFS.