Norn Help
Norn is a Discord and IRC bot. All the channels with the same name, no matter whether on Discord servers or IRC servers, share notes and answers. Conversely, all the channels on the same Discord Server have separate lists of notes and answers.
Norn has to be addressed directly.
On IRC, use the name followed by a colon or a comma:
**alex** norn: 1d6
**norn** alex: 2
On Discord, use an at sign followed by the name :
**Alex** 🌈 🦄 🧞 @Norn 1d6
**Norn** kensanata: 6
Dice rolling:
- die roll notation: d20 d20+1 1d4x10 1d6x2+3
- repeated rolls: 3d6 6x (x is optional and can appear before the repeat, too)
- only keep the high rolls: 4d6kh3 (kh = keep highest, so 2d20kh1 is rolling with advantage)
- only keep the low rolls: 2d20kl1 (kl = keep lowest, so 2d20kl1 is rolling with disadvantage)
Notes on a timeline:
- **note from `<date>` until `<date>` `<text>`** create a note for a range of days (per default for today)
- **state `<date>`** shows the events for that day (per default for today)
- **overview from `<date>` until `<date>` `<text>`** shows the events for the given range of days (per default for the last two and the next two weeks)
- **forget the note for `<date>` by `<author>` with `<text>`** deletes a note (all extra info is optional)
`<date>` is either a date like 2022-06-20, june 20, or jun 20, or ±n (days), ±nw (weeks), or ±nm (months), or n. (the day of the month), or the word "today" or "tomorrow", or one of the weekdays "mo", "monday", "tue", "tuesday", "thu", "thursday", "fri", "friday", "sat", "saturday", "sun", "sunday", possibly in combination with "next", e.g. "next monday" or even "next week".
Managing games. There can only be one game per day, per channel.
- **games from `<date>` until `<date>` with `<text or person>`** shows the games for that period, for all channels, optionally containing some text or with a particular person (defaults to all games from today until in 30 days)
- **games for the `<date>`**, **registrations for the `<date>`** shows the games for that day, for all channels
- **register `<name>` for the `<date>`** register for the game on that day, for the current channel (defaults to the author, for the next game)
- **cancel `<name>` for the `<date>`** cancel registration for the game on that day, for the current channel (defaults to the author, for the next game)
- **game for the `<date>` with `<n>` seats: `<text>`** creates a game for that day, for that many people, or updates an existing one, for the current channel, with the given description (this description is mandatory, a single line only)
- **forget the game for the `<date>` with `<text>`** deletes the game for that day, for the current channel, with this text (defaults to today's game)
New games and changes to existing games can be announced in other channels.
- **announcements in `<channel>`** posts new and edited games in the given channel (but not registrations)
- **no announcements in `<channel>`** stops these announcements
- **announcements** lists the announcement channels
Questions and answers:
- **answer to `<question>` with `<answer>`** is how the bot learns to answer questions; these questions are local to the current channel
- **always answer to `<question>` with `<answer>`** makes this a global answer that is available in all channels
- **debug `<question>`** shows what the bot would answer without replacing double square brackets; global answers are prefixed with a globe
- **forget the answer to `<question>`** makes the bot forget an answer; if a local answer exists, it is forgotten first
- **`<question>`** lets the bot give the appropriate answer; local answer are preferred
Dice roll notation in square brackets gets replaced in the answer, e.g. `[[3d6]]`. This can be used to define macros. These definitions are per channel, not per person.
Example of a definition and its use:
**Alex** @Norn answer to fireball with A terrible explosion! Everybody takes `[[8d6]]` damage!!
**Alex** @Norn fireball
Answers are replaced recursively and alternates can be given by separating them from each other with a vertical bar.
Example of choosing between two answers:
**Alex** @Norn answer to lightning bolt with A terrible flash! Everybody takes `[[8d6]]` damage!!
**Alex** @Norn answer to spell witth `[[fireball|lightning bolt]]`
**Alex** @Norn spell
Link blog:
- **`<url>` `<description>`** adds the URL and description to the *files* directory
Discord and IRC, for use as a sort of non-automated bridge:
- **tell `<discord or irc>` `<text>`**
On IRC, you can also get a log of the last 20 messages. These are stored in memory only so when the bot restarts, that backlog is gone.
- **/msg norn log ​#welcome**
Force wiki update: