Changes between Initial Version and Version 1 of Ticket #3556


Ignore:
Timestamp:
Nov 30, 2015, 10:23:00 PM (8 years ago)
Author:
elexis
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #3556 – Description

    initial v1  
    1 It would be awesome if we could run dedicated hosts for lobby games, i.e.
     1== Requirements ==
     2 * A dedicated host is a game'''server running from command-line'''
     3 * It has almost '''no performance requirements'''
     4   * '''no graphics''' are displayed
     5   * '''no local player'''/observer joins the game
     6 * could allow Wildfire Games to '''host multiple games on a single machine'''
     7   * can be '''patched independently from the release cycle''' (f.e. in case of bugs or abuse)
     8   * might satisfy the '''demand for servers''' (as only a minority of users can  host/configure their router currently)
     9   * useful for '''rated games''' as we could make sure to not quit the server prematurely
     10   * ideally ensure '''not to kill all games when restarting the lobbybot'''
    211
    3 * from command line
    4 * without a graphical interface running
    5 * without a local player/observer client joining the game (thus not needing to simulate the game)
    6 Thus
    7  => no performance requirements
    8  => regular servers might be used to autohost
    9  => '''many games could be hosted on a single machine''' (using multiple UDP ports), thus ssentially solving the lack of hosts (#2305)
    10  => will be the non-graphical alternative to #3419
    11  => servers might be patched to prevent developer-overlay cheats and '''automatically kick or ban hackers from the game and lobby''' (see #3241 and #3552)
     12{{{
     13#!div style="font-size: 80%"
     14Notice that the source code is freely available, which means everyone will be able to use dedicated hosts. It will be the job of the programmers and lobby moderators to prevent and stop abuse.
     15}}}
     16----
     17== '''Roadmap:''' ==
     18 1. Implement & commit '''basic functions'''
     19   * Only '''one host per instance'''
     20   * Use '''chat commands''' instead of gui (similar to scythewirlers autohost implementation #3419)
     21   * '''No client-side changes''' required (bugs can't affect regular hosting/joining)
    1222
    13 The first client to join will be the "host" of the match, i.e. the player to setup the game. This could instead reuse the same '''gamesetup-communication''' that scythewhirlers autohost uses (players can send commands to set the civs, teams etc.).
     23 2. Implement '''gamesetup UI changes'''
     24   * Allow either the first or everyone to '''control the gamesettings'''
     25   * If there are serious bugs, we could revert to 1
    1426
    15 See implodedok and Philipp`s comments about dedicated hosts in IRC on october 24th.
     27 3. Implement '''hosting on different ports''' (to be done in #3575)
     28   * '''Requirement''' for Wildfire Games being able to host multiple games simultaneously on a single machine
     29   * To '''prevent abuse''' (in case of attacks on users IP-addresses), hosting games by unauthorized users could be prohibited.
     30   * Optional: '''Trusted hosts''' (authorized lobby accounts) could be able to advertize more than one game at a time.
    1631
    17 Only authorized lobby accounts should be able to advertize more than one game simultanously.
     32 4. '''Lobby changes'''
     33   * New button "Wildfire-Games Host"
     34    * XPartaMupp will spawn (at most) 1 gameserver per user
     35    * The user will join this game and become a moderator of it