Skip to main content

Client-side Automation

Discworld Concepts Help

Client-side Automation

Client-side Automation

Discworld is a game in which people play together, and sometimes play competitively. To keep that competition fair, it is an important rule that you must play yourself, and not instead use the features of your client to play on your behalf. This is why we disallow automation, and also behaviour indistinguishable from automation.

"Automation" is any setup where your client sends anything to the MUD without your immediate input. It is still automation even if you are behind your computer.

In addition, we ask that you do not write scripts or plugins to trivialise parts of the game.

These restrictions are explained in more detail below.

Immediate input

The core of the automation rules is that nothing is sent to the MUD that causes your character to unidle without you taking an action to send it ITALICat the same time. Put differently, if you suddenly disappeared and yet your character unidled after that, you were breaking the rules all along.

For example, the following situations are against the rules. This list is by no means comprehensive.

*Using a trigger to automatically cast a spell to shield yourself when your last shield runs out.
*Using a trigger to perform a command when your groupmate asks you to.
*Using a trigger to greet people when they come online, or to respond when someone sends you a tell.
*Using a set of scripts to repeatedly walk through a village, and kill NPCs you come across.
*Using a tick timer to pray every five minutes (even if you are behind your computer).
*Using a timer to send an empty line every 29 minutes (since even an empty line causes you to go unidle, and thus avoid idling out).
*Using a login trigger to log you back in if you idle out or quit. WARNING: some clients do this by default if you save your password, so make sure to disable this option if you notice your client reconnecting after a quit. (Liaisons may help you with this.)
*Placing a heavy item on the return key to keep repeating something: this allows your character to keep unidling even if you are not behind your computer.
*Using a client-side speedwalking feature that sends direction commands room by room, since this causes your character to send commands -- and therefore unidle -- without your direct input.
*Creating an alias with an in-built "delay", to for instance send "sell <item>" followed 2 seconds later by "yes" (because the "yes" is sent without your direct input).

The following situations are not against the rules.

*A colour trigger when a friend logs in.
*A sound trigger when your shield breaks to remind you to recast.
*A long alias in the mud, as this will break off automatically if it takes longer than 5 minutes to execute.
*A client-side speedwalking feature that sends direction commands all in one go, immediately when you click on the place where you want to go.
*A telnet keepalive, as telnet codes do not cause your character to unidle (if you set up a feature like this, make sure that ITALIConly telnet codes are sent, and not for instance an empty line; if you are unsure whether this is the case, you can ask a liaison for help).

Note the distinction in the two styles of speedwalking: the "slow" kind, where the route you take may be recalculated if you for instance wimpy out of a room, is not allowed because it keeps sending commands; the "fast" kind, where all route commands are sent in one go and cannot be altered afterwards (other than by manually sending "stop"), is allowed. Like aliases, if such a speedwalk takes more than 5 minutes to execute, the MUD will eventually abort it due to inactivity.

Behaviour indistinguishable from automation

We also ask that you have at least a minimum level of awareness when actively playing. That is, it is perfectly okay to be inactive, but when your character does unidle, you should at the very least be looking at your screen and notice major things — like a liaison actively trying to get your attention, or repeated failure messages because the NPC you were interacting with was killed.

For example, the following situations are against the rules.

*Running an alias from your phone every so often while keeping it in your pocket.
*Running commands from a client that only shows you two lines of output, as you are very likely to miss things that way.
*Pressing return every so often on your computer while watching TV and not looking at the screen when you do.
*Sending all tells and souls to a separate window, and minimising that window. This would likely make you miss a liaison trying to talk to you.

The following situations are not against the rules.

*Leaving your computer while logged in, or getting distracted in another window: it is perfectly allowed to be unaware of what happens in Discworld when your character is idle.
*Being in an active group where there is so much text that you miss a lot.
*Failing to notice a few tells, which occurred half a minute ago. We understand that players sometimes play from phones or while doing other things, and we don't expect you to scroll back every time you send a command. Just to see what is on your screen when you do. :)

This rule exists mostly for pragmatic reasons: if your behaviour is indistinguishable from a script, then liaisons (who are, among other things, responsible for enforcing the rules) will assume that you are using a script.

It also exists because, practically, playing in a way where you are completely unaware of what happens in Discworld is not really playing, and is detrimental both to the community and, likely, your own enjoyment of the game.

Note that setting up a sound trigger for tells so you would be able to respond to liaison queries does ITALICnot remove your obligation to pay attention. (Liaisons may use other methods.)

Trivialising the game

Even without automatically sending commands, it is possible to write scripts or plugins which trivialise parts of the game. Think for example of:

*A one-button hunting script, where your client dynamically changes the result of the button press depending on the MUD's output.
*A webpage which, given the description or output of a puzzle you must perform for a quest or mission, calculates the solution for you.
*A plugin which gives you a number of buttons, and highlights the one you should press next depending on the progress of a task.

In all these examples, your client (or an external website) takes input from the MUD, parses it, and either decides or recommends your next action based on this. While we don't really mind this for small things — like for instance a ITALICkillfirst alias that attacks one NPC in your room — it has the potential to move a substantial part of gameplay from the player to the client, and therefore we ask you not to do this.

This rule primarily applies to players writing advanced scripts or client-side plugins, not to the average player. If you are in doubt whether a script you're designing crosses the line, please talk to a liaison about it.

See also