RacerRoomSetup.wiki
changeset 2078 499a9bda5571
parent 2077 514babfbad9e
child 2079 388bb06bd16e
equal deleted inserted replaced
2077:514babfbad9e 2078:499a9bda5571
     1 #summary How to setup the official racer room
     1 #summary How to setup the official racer room
     2 
     2 
     3 = Racer Room Setup =
     3 = Racer Room Setup =
     4 
     4 
     5 == Overview ==
     5 == Overview ==
     6 The server has support for "fixed" server rooms in order to have a permanent room for hosting race maps.  A little manual setup is required, and at present must be recreated on every new release and server restart.
     6 
       
     7 The server has support for "fixed" server rooms in order to have a permanent room for hosting race maps. A little manual setup is required, and at present must be recreated on every new release and server restart.
     7 
     8 
     8 == Removing the Room ==
     9 == Removing the Room ==
     9 
    10 
    10 In order to add a room for a new release, the old room must be removed first.  Join the game using the old release, join the Official Racer Room then run:
    11 In order to add a room for a new release, the old room must be removed first. Join the game using the old release, join the Official Racer Room, then run:
    11 {{{
    12 {{{
    12 /unfix
    13 /unfix
    13 /delegate YourNick
    14 /delegate YourNick
    14 }}}
    15 }}}
    15 
    16 
    16 Then exit.  The room will be removed.
    17 Then exit. The room will be removed.
    17 
    18 
    18 == Updating the room config for a new release ==
    19 == Updating the room config for a new release ==
    19 
    20 
    20 The racer room configuration is currently here: [https://hg.hedgewars.org/hedgewars/raw-file/tip/misc/racer.yaml]
    21 The racer room configuration is currently here: [https://hg.hedgewars.org/hedgewars/raw-file/tip/misc/racer.yaml]
    21 It is stored relative to the game server.
    22 It is stored relative to the game server.
    25 will do this in vim, where 58 is the number of weapons in the current racer room and the 0 is for the addition.
    26 will do this in vim, where 58 is the number of weapons in the current racer room and the 0 is for the addition.
    26 New maps can be added too, using existing entries as a reference.
    27 New maps can be added too, using existing entries as a reference.
    27 
    28 
    28 == Setting up the room ==
    29 == Setting up the room ==
    29 
    30 
    30 After having removed the old room, create a new room named "Official Racer Room".  Restrict join to registered players only (unregistered don't get recorded in the stats) then run:
    31 After having removed the old room, create a new room named "Official Racer Room". Restrict join to registered players only (unregistered players don't get recorded in the stats) then run:
    31 {{{
    32 {{{
    32 /loadroom racer.yaml
    33 /loadroom racer.yaml
    33 /fix
    34 /fix
    34 /callvote map #01
    35 /callvote map #01
    35 }}}
    36 }}}
    36 
    37 
    37 And leave.  The callvote will cause errors as long as you are still the room admin, but they don't matter.  You can quit/rejoin before that step if you wish.
    38 And leave. The `/callvote` will cause error messages as long as you are still the room admin, but they don't matter. You can quit/rejoin before that step if you wish.
    38 
    39 
    39 == Running checker ==
    40 == Running checker ==
    40 Make sure you have hedgewars working, your login/password pair (admin rights on the server required!) is stored in frontend's config.
    41 Make sure you have Hedgewars working, your login/password pair (admin rights on the server required!) is stored in frontend's config.
    41 
    42 
    42 To build checker:
    43 To build checker:
    43 {{{
    44 {{{
    44 $ cabal build checker
    45 $ cabal build checker
    45 }}}
    46 }}}
    46 
    47 
    47 Put checker.ini into ~/.hedgewars with such content:
    48 Put `checker.ini` into `~/.hedgewars` with such content:
    48 {{{
    49 {{{
    49 [engine]
    50 [engine]
    50 exe=/usr/home/hedgewars/<VERSION>/bin/hwengine
    51 exe=/usr/home/hedgewars/<VERSION>/bin/hwengine
    51 prefix=/usr/home/hedgewars/<VERSION>/share/hedgewars/Data
    52 prefix=/usr/home/hedgewars/<VERSION>/share/hedgewars/Data
    52 }}}
    53 }}}
    54 When updating between versions, update version in checker's source, run this on the server's database to have new stats appear on the records page (see also [ProtocolNumbers]):
    55 When updating between versions, update version in checker's source, run this on the server's database to have new stats appear on the records page (see also [ProtocolNumbers]):
    55 {{{
    56 {{{
    56 INSERT INTO gameversions (protocol, version) VALUES (59, '1.0.0'), (60, '1.0.1-dev');
    57 INSERT INTO gameversions (protocol, version) VALUES (59, '1.0.0'), (60, '1.0.1-dev');
    57 }}}
    58 }}}
    58 
    59 
    59 (Replace the version numbers and protocol numbers with the correct ones.)
    60 (Replace the version numbers (i.e. β€œ1.0.0” and β€œ1.0.1-dev”) and protocol numbers (i.e. 59 and 60) with the correct ones.)
    60 
    61 
    61 If you see too many "Check failed" messages in your checker's log, check your setup. If you fixed a problem with engine, you might want to recheck previously failed replays by moving them from "failed" to "replays" folder on the game server. You may do it on a live system, that's not a problem.
    62 If you see too many "Check failed" messages in your checker's log, check your setup. If you fixed a problem with engine, you might want to recheck previously failed replays by moving them from "`failed`" to "`replays`" folder on the game server. You may do it on a live system, that's not a problem.
    62 
    63 
    63 It is also not a problem to stop checker at any point. If you have engine hanging for too long (shouldn't happen since 0.9.24) and `game0.log` suggests that there's nothing going on in the game being replayed, just kill engine process to count this attempt as failed.
    64 It is also not a problem to stop checker at any point. If you have engine hanging for too long (shouldn't happen since 0.9.24) and `game0.log` suggests that there's nothing going on in the game being replayed, just kill the engine process to count this attempt as failed.
    64 
    65 
    65 It is fine to have multiple instances of checker running, even on the same host and on the same account, if you like. This helps when you have lots of replays to check and some spare CPU cores.
    66 It is fine to have multiple instances of checker running, even on the same host and on the same account, if you like. This helps when you have lots of replays to check and some spare CPU cores.