- 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.
Set up the initial directory structure for the rewrite of SilverMUD.
- data/ - Stores any multi-media or binary assets.
- documentation/ - Contains user-facing documentation for any programs in the repository.
- lisp/ - Contains Scheme source files.
- notes/ - Contains developer-facing documentation and design documents.
- source/ - Contains C source files.
- tests/ - Contains any tests for any programs in the repository.
Altered some header files to prevent cycles confusing LSP
Switched to correct ncurses function for just printing a string.
Make cleaning manual in the makefile. It's getting bigger.
Squash the warning about strncpy.
Added LSP shtuff to the gitignore
- Makefile now doesn't hardcode gcc. (Whether SilverMUD is compiler agnostic remains to be seen.)
- The first target is now all, which compiles a "release" build.
- General cleanup, removal of duplicate variables, and commenting.
- /talk now allows you to begin a conversation, given a player name, or end one, given no arguments.
- The client now properly clears previous messages when sending to the server.
- Added talkingWith to playerInfo.