Cryosphere

Main Connecting Starting



help multistat

>help multistat
multistat <domain> <zone> <code> [title]
multistat <domain> <zone> like <pattern> <code> [title]
multistat <domain> <code> [title]

<domain> is a target type you want to list. For supported domains, see 'multistat domains'
<zone> is the target zone to describe. Not all domains target a zone. You can also specify a planet here.
<code> is a string describing the information you wish to see about the objects in the domain, and how to display it. For supported columns, see 'multistat columns'
<pattern> is a simple string which may contain * wildcards but no spaces. Only objects with names matching the pattern are returned.

Custom columns can be defined for the attribute of your choice:

$<output filter>{<attribute name>}

where output filter is one of

i integer
s string
f flag
t timestamp(in dd/mm/yy hh:mm format)

For example, $s{$killedby} would display the name of the person who last killed the mobile. The filters i and s set column titles automatically.

Array columns return multiple rows for each object with custom columns containing a %. The % is replaced with the array index for each item in the array

@{<array name>}$<output filter>{<attribute name.%>}

See the shopfind verb for an example of this.

Additionally, the following codes control display:

- Right align previous column
| Centre align previous column
[RG Surround the previous column with red brackets and make the text green
^m Colourise the previous column with magenta
<Foo> Title the previous column 'Foo' instead. No spaces allowed, but can be just <> for an empty title
(15) Restrict previous column to 15 characters width. Longer values get truncated. There is a maximum size of 99 characters, including surrounding characters like []
! Sort on previous columns values in descending order
? Sort on previous columns values in ascending order
  • Only show objects who have a (positive) value for this column
    ~ Only show object with no (or a negative) value for this column
    # Hide this column entirely, but still allow it to affect sorting and filtering.
    \ Escape any colour codes or special characters in the contents of this column.
    / Allow this column to be linewrapped. Use with columns which have an unknown length (like player titles) which are the last column in the table (like in the who and whoname commands.
    ¬ Size this column to fit available space, with a minimum width of 1 and a maximum of 99 characters. Only one column can be marked expandable, but it can be any column.

    NB:
    There is a limit to the number of objects multistat can process. Careful use of domain, zone and the * option for a column helps make the output more specific, speed up processing, and avoid 'too many objects' errors.

    Example:
    >multistat mobiles bandits i!nldaAgN(2)s(3)bw Mobiles
    >multistat objects template i!nLd* WeaponTemplates
    >multistat mobiles bandits i!n$i{skill.combat}<Com>daA$s{$killedby}<SlainBy> Killers
    >multistat rooms level2 in@{auto}$s{auto.%}<AutoObj> AutoObjects
    >multistat objects serriadh like *at i!n(30)lt Objects

    Using alias:
    >alias add mobcombat multistat mobiles $* indW$i{att.str}<Str>$i{att.dex}<Dex>$i{skill.combat}<Com>aAw MobileCombatStats
    >mobcombat bandits

    see also:
    histogram