[Posting] Re: Proposals
From:streu
Thread:Proposals
Forum:Talk
In reply to:Proposals
Date:Tue, 2013-03-19 17:23 GMT

Hello, After reading some on this Server I has some proposals. 0.) Hmm, I created this like a plain ascii text. But Layout looks a litle bit another. As soon as I know what to do I will change this.

Use [code] to make preformatted text. Right now, the forum behaves somehow like HTML or Wiki by ignoring spaces and making new paragraphs only with double-newline.

I plan to change this more to usual expectations.

1.) Proposals are no Bugs. So a proposal should [b]not[/b] 
    be entered in Bugs.
    One important difference is that bugs should be fixed asap.
    (What may take a while as Stefan has a real life with a job
       and...)
    So writing proposals into "Bugs" may be would worry Stefan 
    who already invest a lot of time into this server.
    That is the reason I am writing it here in "Talk".
    I think it may be better to create a own forum for proposals.

Honestly, the forum isn't overflowing. I didn't want to meganomaniacally start with too many forums, and I wanted to keep names short, so I chose "Bugs" for the "Bugs and Feature Requests" forum.

Everything reported to me through what way ever ends up in a (local) bug tracker, so nothing is lost. There I also categorize things into "ASAP" and "would-be-nice-if".

2.) http://planetscentral.com/host/toolinfo.cgi
    Here are currently 4 groups.
      Host Versions
      Master Versions
      Ship Lists
      Add-Ons
    The "Add-Ons" is from my point of view something like "put every
    thing else here". I think this should be splitted in groups like.
      Map Creating Tools.
      Map view Tools. (Like Explore Map)
      Moving Tools. (for example Wormholes)
      Starbase Tools.
      Game creating Tools. (May be including Master 
           and different Map Creating tolls)
      Game Scoring Tools.
    I do also not know what solution would be really good.
    Would I see a good solution,
          I would (only) probably know this is a good solution.
    I will think a litle bit about this, if I find a solution I 
      like then I will add it here. 

The rationale for this grouping is that you must have exactly one Master, Host, and Shiplist for a game, but you can have zero to infinity add-ons.

Actually, add-ons have an internal structure similar to what you describe: if you look at an item, there's a field "Kind". For example, http://planetscentral.com/host/toolinfo.cgi/tool/map-default is of kind "Map". I have a couple of xyplan.dat files I'll upload someday, which would also be of kind "Map", which also means that you can have only one of these in a game.

3.) http://planetscentral.com/help.cgi/host -> private games
    Some days ago I started to think about setting up a own server.
    My idea for a "common game handling idea" was that there should
    be a lot of batch files (Or better Unix/Linux Shell scripts).
    My very first idea was to create some files with my ideas.
    Below the very first ideas I had for this game batch files.
    I not wrote this for publishing here. So I hope everyone who
    is intrested can understand. If not, just ask.
    More detailed (may be with a example game to download and...) 
    and everybody (who is intrested to start a own game on this)
    should be able to create/change such batch files, zip them and
    send to Stefan.

====================
      Game-Template
      Batch Files
      Batch File includes Dos *.bat and also Scrips for the Host OS.
      For example Shell-Sripts for Linux or...
      This ShellScripts must be able to run Dos-Tools for 
         original Master, Host, and another Dos-only Tools.
         DOSEmu is faster as DOSBOX as DOSBOX emulate CPU)
        (There is also the option to use Plex86‎ and Bochs)
      If possible should all tools inside scripts (also init) 
        run on a automatic mode for example 
           genxy <genxy_settings.txt
      Game specific batch files may use common batch file.
      === for example run 00000001/init ====
      createmap 00000001 (runs a batchfile with map creating 
        and map id randomising)
      master < 00000001/masterconf.txt
      host 00000001
      updategamedata 00000001
      ==================================================
      Games needs the following Batch Files.
      1.) init (Shell Script) Script will run only once for each game.
          Usage: First create Game dir and copy template for 
                 the game into empty dir.
           Game dir must be named for Number 
                 (8 Char for example 00000001) of game.
           cd GameSdir (dir with all the games)
           init 00000001 (for example for game 1)      
           Script run the following tools.
           a.) Chart generator (If needed)
           b.) Master (Or AMaster or...)
           c.) A Tool to add the game to the Server-Database 
               and open Game for joining.
      2.) prehost (Shell Script) Script run before Host, 
          Call Host and may be also the afterhost.
          Check that everything is ok for Host run.
          In case of a game ended by voting are here all 
             votings to end game? 
             If yes then do not call host but call endgame.
          May be server check for mail problems...
          Backup of gamedir *_prehost inkl. *.trn.
      3.+4.)AUXHOST1.BAT + AUXHOST2.BAT (Should be known)
      5.) afterhost (Shell Script) Scrit run after host.
          calculate score.
          Backup of gamedir *_afterhost
          Check for victory conditions. If yes then call endgame
          update database.
          send mail. 
      6.) endgame (Shell Script)
          update database for changed game- (and player-) status.
          backup of gamedir *_endgame

This is actually close to how PlanetsCentral works.

Every add-on can provide pre-master, pre-host, post-host, and auxhost scripts, as well as configuration file snippest. If you wondered why there's a file "pconfig.src.frag" in, say, http://planetscentral.com/host/file.cgi/shiplist/plist-3.2/, that's why: this fragment is used to update the game's actual configuration file.

If you want to take a peep: here is the source code.

Keyword "private games": The server can manage private games, but there is no web GUI for it yet; they have to be set up using the admin console.

--Stefan

This is a testing version.
It may be incomplete, and have more bugs (or features) than the public live version at planetscentral.com.