X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=SERVER_COMMANDS;h=a5a83a2d4bea8be6948f32cccec42ea6f6a4daa7;hb=3fb2cb493ae564f8b14ddb4143b6c1f5bf16f16a;hp=8af195fbdc5283a6e396666e669ff3dcf6716533;hpb=3dedf6344c941891491773d1cc5d647aa664b218;p=plomrogue diff --git a/SERVER_COMMANDS b/SERVER_COMMANDS index 8af195f..a5a83a2 100644 --- a/SERVER_COMMANDS +++ b/SERVER_COMMANDS @@ -14,8 +14,10 @@ In any case, from then on, further commands are read in from ./server/in. New commands must be appended to the file – which is what the client does. All commands from ./server/in except meta commands are also written to ./record. -At the end of each turn, ./savefile is written – with a list of all god commands -necessary to recreate the current world state. +Every fifteen seconds, if any turns have passed, ./savefile is written – with a +list of all god commands necessary to recreate the current world state. On each +world state change, ./server/worldstate is updated and a message "WORLD_UPDATED" +written to ./server/out. Replay mode ----------- @@ -51,6 +53,12 @@ Write "PONG" line to ./server/out file. QUIT Shut down server. +THINGS_HERE [0 to 255] [0 to 255] +If world exists, write line-by-line list of things visible or in memory at y +position of first argument, x position of second argument of map into +./server/out file, enclosed by two lines "THINGS_HERE START" and +"THINGS_HERE END". + Player commands --------------- @@ -95,7 +103,8 @@ MAKE_WORLD [0 to 4294967296] Set map seed and randomness seed to argument. Remove all things. (Re-)generate map. Add to map things specified in thing types table in quantity defined there by START_NUMBER command, with first thing (of thing ID of 0) of type defined as -player type by PLAYER_TYPE command. Set world turn to 1. Activate world. +player type by PLAYER_TYPE command. Set world turn to 1. Activate world. Answer +with 'NEW_WORLD' message in ./server/out file. MAP_LENGTH [1 to 256] Deactivate world. Remove ./server/worldstate file. Remove all things. Remove @@ -105,8 +114,8 @@ WORLD_ACTIVE [0 to 255] Set world activity state to argument. If 0, remove ./server/worldstate file. Else, if world was so far inactive, a map exists, at least one "wait" thing action is defined, and a thing of ID 0 (= a player character) that is not part -of any other thing's inventory, (re-)build all animate things' fields of view and -activate world. (Initial value: 0.) +of any other thing's inventory, (re-)build all animate things' fields of view, +and activate world. (Initial value: 0.) TA_ID [0 to 255] Select thing action to manipulate by argument as ID. If argument is 0, change it @@ -126,7 +135,7 @@ T_ID [-32768 to 32767] Select thing to manipulate by argument as ID. If argument is <0 or >255, change it to the lowest unused thing ID. If thing of ID does not exist yet, create it with default position of y=0/x=0, the first thing type's ID, and that type's -lifepoints value. If world is active and the thing is animate, build its field +lifepoints value; if world is active and the thing is animate, build its field of view. T_TYPE [0 to 255] @@ -156,6 +165,9 @@ performing the action) value to argument. T_LIFEPOINTS [0 to 255] Set selected thing's lifepoints to argument. +T_SATIATION [-32768 to 32767] +Set selected thing's satiation score. + T_CARRIES [0 to 255] Add thing of ID in argument to inventory of selected thing, if said thing is available for carrying and not the selected thing. @@ -164,6 +176,10 @@ T_MEMMAP [0 to 255] [string] Set part of selected thing's memory of the game map to string argument: the line of the argument's number. +T_MEMDEPTHMAP [0 to 255] [string] +Set part of selected thing's game map memory depth map to string argument: the +line of the argument's number. + T_MEMTHING [0 to 255] [0 to 255] [0 to 255] Add to selected thing's memory of things on map thing of ID of first argument, y position of second argument and x position of third argument. @@ -197,3 +213,17 @@ game log and the inventory. TT_CORPSE_ID [0-255] Set to argument the ID of the thing type that things of the selected type transform into when their state changes from animate to inanimate. + +TT_PROLIFERATE [0-255] +If non-zero, there is a chance of 1 divided by the given value each turn for any +thing of the selected type to emit an offspring to a random neighbor cell if one +is available that is passable and not inhabited by a thing of the same same type +or, if the proliferating thing is animate, any other animate thing. + +TT_STOMACH [0-32767] +Set degree to which things of the selected type suffer from hunger or +over-satiation: If 0, not at all. Else, each turn a thing of the given type may +suffer a lifepoint decrement to the chance of the rounded down quotient of the +satiation score's absolute value by the given value, then again divided by the +latter. This means that the chance is always zero when the absolute value of the +satiation score is lower than the given value.