Arrays

MUSHclient offers internal "key/value pairs" which it calls arrays.

You can have any number of arrays for each world, and also for each plugin.

Each array has an alphanumeric name (eg. "spells").

Inside each array is any number of key/value pairs (eg. mana = 22).

Script routines let you add, delete, import, and export from arrays into string variables. You can also enumerate (get a list of) all known arrays, or all keys in a particular array.

These functions are available from version 3.46 onwards.

Array and key names

Each array (eg. "spells") and each array item key (eg. "cold") has a name. The name is case-sensitive, and is stored exactly "as is" (no spaces are removed, for example). You can use any (8-bit) character for array and key names except for the "nul" character (hex 00).

Array and key names are unique, so if you have an array, and put something into key "a", and then something else into key "a", the original contents will be replaced.

Numeric array and key names

In order to allow arrays to be used as straight numeric sequences, numeric keys are treated specially. If an array or key name consists entirely of numbers, with an optional leading + or - sign, then the name is converted to a number and sorted into numeric order, rather than alpanumeric order. Numeric keys are sorted before all other keys.

Thus, the keys "1", "0001", "+1" are all considered the same.

Topics

Functions