CYCMD(1)

NAME
cycmd - cycmd game server process

SYNOPSIS
cycmd [ --section:option=value ... ] [ command [ server ] ]

DESCRIPTION

The cycmd program provides a commandline interface to a cyphesis server.

OPTIONS

Configuration options are divided up into named sections, which need to be specified when modifying or overriding the options. In a config file the name of a section is specified in square brackets at the beginning of the section. On the command line the section is given at the beginning of the option specification, as shown in the synopsis above.

  CLIENT OPTIONS

The following options used by cycmd are present in the client section of the config file, and overriden by specifying the client section name on the command line.

serverhost=hostname
    Hostname of the server to connect to. This setting provides the hostname of the system where cyphesis is running that cycmd should try and connect to.

  SERVER OPTIONS

The following options are present in the cyphesis section of the config file, and overriden by specifying the cyphesis section name on the command line. These options apply to the server, but are also required by the client to ensure that the client can connect.

tcpport=6767
    Network port for server TCP connections. Specifies the port number to use when connecting to the server.

unixport="cyphesis.sock"
    Local liston socket for Unix domain connections. Specifies the filename to use to listen for local trusted client connections.

COMMANDS

connect hostname
    Connect the server to a peer. Try and establish a connection to a peer server.

get typename
    Examine a type on the server. Get a type description from the server, and display its contents. The type information is typically either an entity class, or an operation definition.

help
    Display online help. Lists all the commands available, with a short description of what each one does.

install type_id parent_id
    Install a new type in the server.

look
    Return a view of the current server lobby. Look at the current server lobby, where all users currently logged in are represented. The view is returned and displayed.

logout [ account ]
    Examine a type on the server. Get a type description from the server, and display its contents. The type information is typically either an entity class, or an operation definition.

monitor
    Enable server monitoring. Direct the server to report all in-game operations to the client. A digest of each operation is displayed, including the type, which entity the operation is from and which entity the operation is to.

query entity_id
    Examine an in-game entity. Get an in-game entity description from the server, and display its contents.

stat
    Examine the current server status. Get a description of the current server status, and display its contents.

unmonitor
    Disable server monitoring. Direct the server to stop reporting all in-game operations to the client.

EXAMPLES

The first example shows getting the current server status and checking the lobby to see if any users are logged in.
cyphesis> stat
Info(
     builddate:  11:32:45, Sep 27 2004
     clients:  1
     name:  calcitration.ecs.soton.ac.uk
     objtype:  obj
     parents:  [  server ]
     ruleset:  mason
     server:  cyphesis
     uptime:  1728.2
     version:  0.3.2
)
cyphesis> look
Sight(
      id: lobby
      name: lobby
      objtype: obj
      parents: [  room ]
      people: [  1 ]
      rooms: [  ]
)
cyphesis>

The first entity returned shows various information about the server, including when it was built, the number of connected client, the current ruleset, and the server uptime. The second entity representing the lobby shows that only one user is current logged in, and no chat rooms have been created.

The second example shows how to install a new type.
cyphesis> get thing
Info(
     children:  [  feature character plant food stackable structure arm arrow axe barrel block_house board boat boundary bow campfire cleaver coin fire gallows house lumber pelvis ribcage shin skull stall sword thigh tower twobyfour wall weather ]
     contains:  [  ]
     id:  thing
     loc:
     name:
     objtype:  class
     parents:  [  game_entity ]
     pos:  [  0 0 0 ]
     stamp_contains:  0
     velocity:  [  0 0 0 ]
)
cyphesis> install box thing
cyphesis>

The third example shows server monitoring being enable, followed by information of a series of in-game operations. The flow of messages in while monitoring the server can be large. In order to supress the flow, the unmonitor command must be used.
cyphesis> monitor
cyphesis>
tick(from="900006",to="900006")
tick(from="900007",to="900007")
cyphesis>
tick(from="900008",to="900008")
cyphesis>
tick(from="899982",to="899982")
cyphesis>
tick(from="899356",to="899356")
cyphesis>
tick(from="899357",to="899357")
cyphesis>
tick(from="899358",to="899358")
cyphesis>
tick(from="899359",to="899359")
cyphesis>
tick(from="899360",to="899360")
cyphesis>
tick(from="899361",to="899361")
cyphesis>

AUTHOR

Written by Alistair Riddoch.

REPORTING BUGS

Report bugs to <general@worldforge.org>.

COPYRIGHT

Copyright 2004 Alistair Riddoch.

SEE ALSO

cyphesis(1), cyclient(1), cyphesis-tools(1)