The Bulletin Boards are a nice way of catching up with recent developments on the MUD, new ideas in the making, or just for talking the old toot. There really are no limits, other than the number of boards.

VikingMUD Bulletin Board News SystemEdit

by Kalak (Trond Sausjord)


I have made this News System so that players can communicate even more and better than with the old boards. They tended to become a bit untidy for my taste. With this Board System I have made threads, or drawers if you like, where the different discussions can take place. When you look at the board you get a list of all threads, what they are about, who started the thread, and info like that. You can join or list each thread to see who has replied to notes in it. All replys are in cronological order, and you get to see names, dates and such info that might be nice to know. If you feel like adding a note to the discussion, you are ofcourse able to do that. Some nice details are that many players might write notes to the same board simultanously now, and that the boards keep track of exactly what notes you have read and which ones you haven't. There is one thing you should be aware of; It is not possible for anyone to remove any notes from the boards. This is done because in my opinion does it not exist any reasons to implement it. The boards will look after themselves and remove threads that has become old and archive them. If you are a wizard then other new concepts are; .signature file support, unlimited many ways to configure the board's look by actually being able to code your own read, list and thread functions
(you can of course use this to make your very own .killfile) and the possibility to read notes without standing by the board.


Firstly, this is what the various syntaxes mean;

  • # - any number
  • [] - an optional argument, not needed
  • [""] - The optional argument must be enclosed in "'s
  • []/[] - either this argument OR the other OR none of them
  • `' - an example
  • <> - a text saying what it represents

How to see all threads on a boardEdit

  • Just look at the board.

You might also use the command 'threads' or the list command with the 'threads' option.

  • Example: `look at board', `threads', `list threads'

How to see all notes in a thread.Edit

  • Use the list command 'list [#]'

When you look at the board and already have joined a thread, you will see it indicated by a ">" sign to the left. If you issue "list" with no arguments you will get to see this thread. You can also list any other thread by adding that thread's number as an argument. If you would like to list all new notes, you can do this by using te 'new' option. List next means list the first thread where you have unread notes. Listing a thread means joining it also.
It is also possible to list all notes by a special author. Justuse the author name as an argument.

  • Examples: `list 1', `list', `list boards', `list new', `list next', `list kalak'

Joining a threadEdit

  • Use the join or list command: 'join #', 'list #'

The point of joining a thread is so that you can read the notes in that particular thread. The notes in each thread are numbered from 1 and up, so 'read 1' is meaninless unless you have joined a thread. A general rule however is that if you perfom an action on a thread, you will automatically join it. So if you join thread 1 and then list thread 2, you will join thread 2. Join next means join the first thread where you have unread notes.
It is also possible to join a thread by giving the thread's subject as an argument.

  • Example: `join 1', `list 1', `join next', `join Hello!'

How to read a noteEdit

  • Use the read command 'read #'

You must have joined the thread where you want to read the note. This is automatically happening when you list the thread or if you use the join command of course.

  • Example: `read 1'

How to just read the next unread note

  • Use the read command with the next argument 'read [next] #'

This command will make the board scan all notes in all threads until it finds a note that you haven't read. You will join the thread with that note and see it on your screen.

  • Example: `read next'

How to read notes that are too long or truncate.

  • Use the mread command 'mread [next] #'

This command is exactly the same as read, but you get the output through the "more" command. This is handy if the notes are so long that the top scroll off of your screen.

  • Example: `mread 1', `mread next'

How to start a new threadEdit

  • Use the write command 'write [subject]'

Just remember that you do not start a thread called "re: Kalak" The point is that all those "re: ..." notes are in the same thread.

  • Example: `write I think Kalak is green'

How to write a note in an existing threadEdit

  • Use the followup command 'followup [subject] / [#]'

Immediately after you have read a note you can do a followup on it by issuing "followup". The subject of your followup will be "Re: <the subject of the one you followup on>" unless the subject of the note already started with "Re: " in which case your note's subject will be "Re: <name of whom wrote the note>"

  • Examples: `followup 1', `followup I disagree!', `followup'

How to put a file on the boardEdit

  • Use the write or followup command with the -f option 'followup -f "filename" [subject] / [#]'
  • 'write -f "filename" [subject]'

This will make a copy of your file and add the appropriate header and signature. In other words just as if you wrote the note the usual way. This feature is only meaningful to wizards and above.

  • Examples: `write -f "/players/kalak/test.c" This is a file!', `followup -f "/players/kalak/test.c" This is a file!'

How to put a file reference on the boardEdit

  • Use the write or followup command with the -r option 'write -r "filename" [subject]'

This is a special feature that allows users to make references to files. There will not exist a note file, the board will only know where to look for the file. This will usually only be available for wizards or arches, depending on the various boards' configuration.

  • Examples: `write -r "/std/drink.c" This is std/drink!', `followup -r "/std/drink.c" This is std/drink!'

How to post a note on several boardsEdit

  • -Use the crosspost command 'crosspost [-rf] ["filename"] [subject] on "<id,id2,id3 ... idn>"'

You use the crosspost command in exactly the same way as the write command, but you append on "id,id2,id...idn" to the command line. By issuing 'list boards' you will get to see a list of all public boards and their ids. You can not crosspost followups, as this is meaningless.

  • Examples: `crosspost on "1,2,3"', `crosspost Hello! on "1,2,3"'
  • Examples: `crosspost -r "~/bob.c" Bob's code! on "3,5"', `crosspost -f "./file" Important ! on "1,2,3"'

Editing your noteEdit

  • Use the edit command 'edit #'

This is a wizard only command. The purpose is to fix spelling errors and nothing else. To remove the temptation of changing the note's meaning after someone has argued against it, there is a time limit. This means that you can only edit your note within 15 minutes after it has been written. You will not be thrown out of the editor if you start editing your note 14 minutes and 59 seconds after you wrote it. But when you then exit from the editor you can't edit it any more. You can only edit your own notes.

  • Example: `edit 1'

The catchup commandEdit

  • catchup [board] / [#]

This command allows to to mark unread notes as read. If you want to catchup on the thread you are surrently in, then just issue 'catchup' with no arguments.

  • Example: `catchup', `catchup 1', `catchup board'

How to delete a noteEdit

  • Use the delete command 'delete #'

Only your own notes and only while they are the last one in the thread and only whitin a short time after you finished writing it (Usually 10 minutes, but it might vary from board to board.)
If you want to remove a note because it is old, don't worry about it; the board will automatically handle it. If you want to remove a note because of spelling errors you made, use the edit command instead. If you would like to remove notes that express thoughts and/or opinions that differ from your own, you can code your own
boards. Notes containing foul language or insulting remarks will not be removed either, as such notes usually only make the author look stupid -not the victim.

  • Example: `remove 1'

Board StatisticsEdit

  • Use the stat command

This command will give you some statistics of the current board.

  • Example: `stat board'


  • edit #
  • join [next] / [<subject>] / #
  • list [next] / [new] / [boards] / [threads] / [<author>] / [#]
  • read [next] / #
  • mread [next] / #
  • catchup [board] / [#]
  • write [-rf] ["filename"] [boards] [subject]
  • followup [-rf] ["filename"] [subject] / [#]
  • crosspost [-rf] ["filename"] [subject] on "<id,id2,id3 ... idn>"
  • delete #
  • stat board