To deal with MOZ's requirement to be able to output to users in
multiple languages, a MOZ programmer should never use Oz strings for
output at all. Instead a structure called a Localized String is
used. This is a record, with a feature for each language (using
whatever short code is defined in the Server object, such as
en
for English). Each feature holds a string that is the
string that should be output for a user that uses that language. An
example:
string( en: "A sample string.\n" lb: ".i le mupli seltcidu\n" )
However, for output of strings from program code (as opposed to
output of strings set by players directly, such as those stored in
names and descriptions), you shouldn't enter these strings directly.
Instead, you should first add the strings to the LanguageStrings
object using the ***UNFINISHED*** command. The tell
method
on the Player object will treat any atom by itself as a key into the
database on LanguageStrings, making it easy to use these strings in
your code.
The reason to do this is it makes it much easier for others to translate everything in the MOZ to a new language if everything is collected on one object and easily retrievable.