3.2.1 Mucker Levels
There are in effect, if not literally five MUF permission
levels: 0 to 4.
Mucker Level 0 refers to players who do not have a Mucker or Wizard
bit. They cannot create new programs or use the
MUF programs owned by them run as if they were
Level 1 Muckers.
Mucker Level 1 players are `apprentices'. They can use the editor and
M1 programs. Their programs can only retrieve
information about objects in the same room. For example,
name will fail if object
#123 is not in the same
room as the user running the program.
M1 programs always
run as if they are set Setuid. Output (from
NOTIFY_EXCLUDE) can only go
to players in the same room, and will usually (depending on server
compiler directives) be prefaced with the user's name. They cannot use
M1 programs have an
instruction-count limit of about 20,000 instructions.
Mucker Level 2 players are `journeymen'. They can use most but not all
MUF primitives. They can create
and set programs they own
M2 programs are limited to about 80,000 instructions.
Mucker Level 3 playes are `masters'. They can set programs they own
M3. They can use the
connection information primitives (
ONLINE, etc.), can read the
EXITS list of any
room, can use
NEXTOBJ on objects, can use
COPYOBJ without limitations, can use
KILL, and can override the permissions restrictions of
MOVETO. There is no absolute limit on
processes' intruction count.
Wizards and wizbitted programs are effectively Mucker Level 4. They
can set programs they own
!W. They can use
primitives not available to other Mucker Levels, including
SETOWN. All properties are readable and settable by
The effective Mucker Level of a program is its own Mucker Level or its
owner's Mucker Level, whichever is lower. There is one exception:
Programs owned by wizards who do not have a Mucker bit set run at Mucker
Level 2, unless the program is set
To set Mucker bits, use just the number as a flag: