X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=src%2Fserver%2Finit.h;h=cadacf3ad27cac50695e3bc159b3b1490ee57d75;hb=036e0f646d4b55cc0162a8fad7f1a9559db50c50;hp=595f69733f9cee9a9feffc0ee8fee4eae815bfb4;hpb=dd9d65ee727ac7e95801da0f8b5bae7009811802;p=plomrogue diff --git a/src/server/init.h b/src/server/init.h index 595f697..cadacf3 100644 --- a/src/server/init.h +++ b/src/server/init.h @@ -13,23 +13,26 @@ /* Parses command line arguments -v and -s into server configuration. */ extern void obey_argv(int argc, char * argv[]); -/* Dissolves old game world if it exists, and generates a new one from "seed". +/* Start server in file and out file, latter with server process test string. */ +extern void setup_server_io(); + +/* Dissolves old game world if it exists, generates a new one from world.seed. + * Unlinks any pre-existing record file. * - * Map object (action) definitions read in from server config directory are not - * affected. world.last_update_turn is set to 0 and world.turn to 1, so that - * io_round()'s criteria for updating the output file are triggered even when - * this function is called during a round 1. How many map objects of what type - * id are generated on the map is currently hard-coded. + * Thing (action) definitions read in from server config directory are not + * affected. The map is populated accordingly. world.turn is set to 1, as is + * world.do_update, so that io_round() is told to update the worldstate file. */ -extern void remake_world(uint32_t seed); +extern void remake_world(); -/* Create a game state from which to play or replay, then enter io_loop(). +/* Create a game world state, then enter play or replay mode. * - * If no record file exists at world.path_record, generate new world (by a - * "seed" command calling remake_world()) in play mode, or error-exit in replay - * mode. If a record file exists, in play mode auto-replay it up to the last - * game state before turning over to the player; in replay mode, auto-replay it - * up to the turn named in world.replay and then turn over to manual replay. + * If replay mode is called for, try for the record file and follow its commands + + up to the turn specified by the user, then enter manual replay. Otherwise, + * start into play mode after having either recreated a game world state from + * the savefile, or, if none exists, having created a new world with the + * MAKE_WORLD command. Manual replay as well as play mode take place inside + * io_loop(). */ extern void run_game();