A text-based hackable multiplayer role-playing game. Currently in very early development.
Go to file
Barra Ó Catháin 8044dd36be Version 0.0.1 of the rewritten client and server.
- Server is capable of accepting an arbitrary number of TLS encrypted client connections.
- Server relays messages from one client to the others.
- Server spawns a Scheme REPL available over a Unix socket.
- Client is a two-pane ncurses-based client, with an input area, chat log, and game status log.
- Temporary NAME command exists to change names of players.

Squashed commit of the following:

commit 442a9319e8
Author: Barry Kane <barra@ocathain.ie>
Date:   Mon Oct 30 16:57:15 2023 +0000

    Removed unneeded check, added temporary name command

commit a66a07c897
Author: Barry Kane <barra@ocathain.ie>
Date:   Sun Oct 29 20:15:41 2023 +0000

    Properly remove disconnected players

commit 81fc72a1d7
Author: Barry Kane <barra@ocathain.ie>
Date:   Sun Oct 29 17:20:14 2023 +0000

    Added system messages to client and added welcome message from server.

commit a1b1b80449
Author: Barra Ó Catháin <barra@ocathain.ie>
Date:   Tue Sep 12 23:25:44 2023 +0100

    Removed now unneeded placeholders, added stubs for "rulebooks" in documentation.

commit 54b613befe
Author: Barra Ó Catháin <barra@ocathain.ie>
Date:   Tue Sep 12 22:32:19 2023 +0100

    Basic implementation of player lists and tying connections to players

commit 5a53e9f197
Author: Barra Ó Catháin <barra@ocathain.ie>
Date:   Sun Sep 10 17:24:46 2023 +0100

    Added basic player type containing a name, and made the server echo messages with player name.

commit 3fc75ef30f
Author: Barry Kane <barra@ocathain.ie>
Date:   Thu Aug 31 01:44:17 2023 +0100

    Basic message receiver, server now echoes messages to all clients.

commit b292966588
Author: Barry Kane <barra@ocathain.ie>
Date:   Mon Aug 28 02:53:31 2023 +0100

    Fixed window height calculations.

commit 50dcddfc56
Author: Barry Kane <barra@ocathain.ie>
Date:   Mon Aug 28 02:29:21 2023 +0100

    Initial ncurses setup, and layout of client.

commit c043da64a2
Author: Barry Kane <barra@ocathain.ie>
Date:   Sat Aug 26 00:48:28 2023 +0100

    Modify server and client to begin using ClientToServer messages.

commit 0104a11a7e
Author: Barry Kane <barra@ocathain.ie>
Date:   Fri Aug 25 00:34:05 2023 +0100

    Added basic client capable of connecting to the server.

commit 080e46fe99
Author: Barry Kane <barra@ocathain.ie>
Date:   Thu Aug 24 00:12:27 2023 +0100

    Set up GNU Autotools as build system.

commit 0814e437cd
Author: Barry Kane <barra@ocathain.ie>
Date:   Tue Aug 22 02:02:29 2023 +0100

    Basic connection handling (using previous version of client)

commit 9801be3622
Author: Barry Kane <barra@ocathain.ie>
Date:   Sat Aug 19 16:00:57 2023 +0100

    Renamed src back to source, because I liked it better

commit e2ef744e87
Author: Barry Kane <barra@ocathain.ie>
Date:   Sat Aug 19 00:18:03 2023 +0100

    Moved scheme initialization to main thread, added basic networking

    The server can now listen on a port and send data to a client.

commit 8b0920c35d
Author: Barry Kane <barra@ocathain.ie>
Date:   Fri Aug 18 00:45:24 2023 +0100

    Added basic implemantation of message structures.

commit 6ed532c368
Author: Barry Kane <barra@ocathain.ie>
Date:   Thu Aug 17 00:21:20 2023 +0100

    Added structure section.

commit 48f0858735
Author: Barry Kane <barra@ocathain.ie>
Date:   Thu Aug 17 00:14:40 2023 +0100

    Began implementation planning document.

commit 32503cdbca
Author: Barry Kane <barra@ocathain.ie>
Date:   Mon Aug 14 03:15:37 2023 +0100

    Rename source/ to src/ for Autotools.

commit 2b488477f5
Author: Barry Kane <barra@ocathain.ie>
Date:   Mon Aug 14 02:46:43 2023 +0100

    Added initial stubs for server.

    - Server now launches a thread to initialize Scheme, and drops into a REPL.
2023-11-05 15:14:44 +00:00
data Initial directory structure of rewrite. 2023-07-30 23:08:06 +01:00
documentation Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00
lisp Initial directory structure of rewrite. 2023-07-30 23:08:06 +01:00
notes Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00
source Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00
tests Initial directory structure of rewrite. 2023-07-30 23:08:06 +01:00
.gitignore Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00
LICENSE Initial directory structure of rewrite. 2023-07-30 23:08:06 +01:00
Makefile.am Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00
README.org Initial directory structure of rewrite. 2023-07-30 23:08:06 +01:00
configure.ac Version 0.0.1 of the rewritten client and server. 2023-11-05 15:14:44 +00:00

README.org

SilverMUD: The Hackable Terminal-Top Roleplaying Game!

SilverMUD: The Hackable Terminal-Top Roleplaying Game!

SilverMUD is a setting-agnostic multiplayer roleplaying game which is played over the internet. It gives a gamemaster the same flexibility they have to improvise and create content as they would have at a table-top, by allowing game content to be programmed and altered on-the-fly, using an integrated Scheme interpreter. It can be played as a multi-user dungeon, or a "terminal-top" roleplaying game, depending on how you decide to configure it.