Wrayth protocol

The official GemStone IV encyclopedia.
(Redirected from StormFront protocol)
Jump to navigation Jump to search

The Wrayth protocol is the XML protocol used to pass information between the game and a front end. It is currently used by the official Wrayth front end as well as the unofficial front ends Nexus and EclipseFE.

Tags

Tag name Description Parameters Example Contents Notes
<a> Displays a link that is clickable to obtain a menu of interaction options or to send a command
  • exist - A unique identifier for the object, for use in menus
  • noun - The noun of the object, for use in menus or commands
  • coord - An identifier for a command (optional)
a <a exist="-26211" noun="door">heavy ironwood door</a>

<a exist="-10374531" coord="2524,1741" noun="ARMOR">ARMOR</a>

Displays the contents as a clickable link Does not suppress following newlines

If coord is not specified, it is a menu, and exist and noun refer to the target of the menu. If it is specified, it is a command, and the exist and noun may be used in the command.

<clearContainer> Removes all text within the specified container window
  • id - The id of the container window
<clearContainer id="stow"/> No contents
<clearStream> Removes all text within the specified window
  • id - The identifier for the window to remove text from
<clearStream id="spellfront"/> No contents
<d> Displays a link that is clickable to send a command to the game
  • cmd - The command to send to the game (optional)
<d cmd='gaze Ildran'>GAZE {self}</d> Displays the contents as a clickable link If the cmd parameter is omitted, will send the contents of the tag
<inv> Adds text to a container window
  • id - The id of the container window
<inv id='stow'> a <a exist="675003" noun="cards">deck of red and green cards</a></inv> Appends contents (plus a newline) to the container window specified
<left>

<right>

Changes the text of the left and right hand panels
  • exist - Same as in <a>
  • noun - Same as in <a>
<right exist="674831" noun="dagger">dagger</right> Sends the contents to the left or right hand panel
<menu> Designates a menu
  • id - A numerical id for the menu
  • path - A path to the object being specified
  • cat_list - The ordering of the menu item categories
<menu id="0" path=" in #84744238" cat_list="1 2 3 4 5 6 7 8 9 10 11 12 13"><mi coord="2524,1613"/><mi coord="2524,1651"/>...<mi coord="2524,1740"/></menu> The contents should be a sequence of <mi> tags id appears to cycle through the numbers 0-9

The path is the location of the item

<mi> Designates an item in a menu
  • coord - The command to be executed, same as in <a>
<mi coord="2524,1573"/> No contents
<mode> Changes the execution mode
  • id - The id of the new mode
<mode id="CMGR"/> No contents Valid modes appear to be "GAME" (the usual execution mode) and "CMGR" (ignore all tags except another <mode> tag)
<output> Changes the typeface
  • class - The typeface to be used
<output class="mono"/> No contents Only valid values for class appear to be "mono" (fixed-width font) and "" (normal font)
<prompt> Signals a prompt
  • time - A timestamp for the prompt
<prompt time="1134928732">R&gt;</prompt> Sends the contents to the story window
<pushBold>

<popBold>

Makes text bold until a matching <popBold> tag

None

<pushBold/>You have unread news articles.<popBold/> No contents Does not suppress following newlines

May nest

<pushStream>

<popStream>

Sends text to specified window if it exists (story window instead) until next <popStream> tag
  • id - The identifier of the window to send text to
<pushStream id="logons"/> * <a exist="-10374531" noun="Ildran">Ildran</a> joins the adventure.
<popStream/>
No contents May nest
<spell> Changes the text of the prepared spell panel
  • exist - Same as in <a>
<spell exist='spell'>Spirit Warding I</spell> Sends the contents to the prepared spell panel

Special handling

  • Tags followed by newlines suppress the newline output to the screen except where noted above.