Commit Graph

143 Commits

Author SHA1 Message Date
Barra Ó Catháin 9562cbfd21 Initial Implementation Of Lists
* lists.c (createList): Initial implementation.
(appendToList): Initial implementation.
(deleteNodeFromList): Initial implementation.
(indexOfFromList): Initial implementation.
(getFirstFromList): Initial implementation.
(isInList): Initial implementation.
(isPointerInList): Initial implementation.
* lists.h (LISTS_H): Defines the enum "DataType", and the structs "Node" and "List".
2024-04-14 23:08:37 +01:00
Barra Ó Catháin ce9f197a83 Accidental typo while moving around. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 060c637c08 Removed now unneeded placeholder. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin c282fb20ad Changed player names to allocated strings to be friendly to Scheme! 2024-03-30 22:47:01 +00:00
Barra Ó Catháin aa382fefc2 Basic Scheme implementations of player structures and messaging. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin fa3df0cc69 Update C Codebase to use modules for Scheme primitives 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 4d13547ae6 Update output queue to not pin the CPU (proper waiting) 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 751a734016 Added independent output thread. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 258fd49653 Basic global messaging functions for Scheme 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 89d520dc15 Initial test implementation of output message queuing. 2024-03-30 22:47:01 +00:00
Barra Ó Catháin 6fc2e4d2b9 Close client if connection breaks.
* source/client/receiving-thread.c (receivingThreadHandler): Exit the process if the connection to the server breaks.
* source/server/main.c (main): Minor formatting tweak.
2024-03-19 23:28:12 +00:00
Barra Ó Catháin 0a2d03fdaa Added environment variable handling.
* source/server/main.c (main):
- Added environment variable handling.
- Moved "Using" messages to after both command line arguments and enviroment variables are checked and applied.
- Command-line arguments override enviroment variables.
2024-03-19 23:20:08 +00:00
Barra Ó Catháin 9660fd4c60 Fix config.h.
* source/client/client-drawing.c: Change to correct include directive for config.h.
* source/client/main.c: Change to correct include directive for config.h.
2024-03-19 22:55:45 +00:00
Barra Ó Catháin 2d6b194c26 Added basic command-line options to server.
* source/server/main.c
(checkRequestedHostname): Added function to check if client SNI hostname is the same as specified by the server.
(main): Added command-line options for binding to ports, hostnames, and interfaces.
2024-03-18 03:14:50 +00:00
Barra Ó Catháin 24f8e2688a Added address iteration and graceful TLS failures.
* source/client/main.c (main):
- Added iteration through found addresses from getaddrinfo.
- Added graceful failures for TLS errors.
2024-03-18 03:10:59 +00:00
Barra Ó Catháin 03ea201716 Make client use getopts and getaddrinfo
* source/client/main.c (main):
  Added command-line option handler.
  Refactored socket creation make use of getaddrinfo.
2024-03-15 01:29:34 +00:00
Barra Ó Catháin 442a9319e8 Removed unneeded check, added temporary name command 2023-10-30 16:57:15 +00:00
Barra Ó Catháin a66a07c897 Properly remove disconnected players 2023-10-29 20:15:41 +00:00
Barra Ó Catháin 81fc72a1d7 Added system messages to client and added welcome message from server. 2023-10-29 17:20:14 +00:00
Barra Ó Catháin a1b1b80449 Removed now unneeded placeholders, added stubs for "rulebooks" in documentation. 2023-09-12 23:25:44 +01:00
Barra Ó Catháin 54b613befe Basic implementation of player lists and tying connections to players 2023-09-12 22:32:19 +01:00
Barra Ó Catháin 5a53e9f197 Added basic player type containing a name, and made the server echo messages with player name. 2023-09-10 17:24:46 +01:00
Barra Ó Catháin 3fc75ef30f Basic message receiver, server now echoes messages to all clients. 2023-08-31 01:44:17 +01:00
Barra Ó Catháin b292966588 Fixed window height calculations. 2023-08-28 02:53:31 +01:00
Barra Ó Catháin 50dcddfc56 Initial ncurses setup, and layout of client. 2023-08-28 02:29:21 +01:00
Barra Ó Catháin c043da64a2 Modify server and client to begin using ClientToServer messages. 2023-08-26 00:48:28 +01:00
Barra Ó Catháin 0104a11a7e Added basic client capable of connecting to the server. 2023-08-25 00:34:05 +01:00
Barra Ó Catháin 080e46fe99 Set up GNU Autotools as build system. 2023-08-24 00:12:27 +01:00
Barra Ó Catháin 0814e437cd Basic connection handling (using previous version of client) 2023-08-22 02:02:29 +01:00
Barra Ó Catháin 9801be3622 Renamed src back to source, because I liked it better 2023-08-19 16:00:57 +01:00
Barra Ó Catháin e2ef744e87 Moved scheme initialization to main thread, added basic networking
The server can now listen on a port and send data to a client.
2023-08-19 00:18:03 +01:00
Barra Ó Catháin 8b0920c35d Added basic implemantation of message structures. 2023-08-18 00:45:24 +01:00
Barra Ó Catháin 6ed532c368 Added structure section. 2023-08-17 00:21:20 +01:00
Barra Ó Catháin 48f0858735 Began implementation planning document. 2023-08-17 00:14:40 +01:00
Barra Ó Catháin 32503cdbca Rename source/ to src/ for Autotools. 2023-08-14 03:15:37 +01:00
Barra Ó Catháin 2b488477f5 Added initial stubs for server.
- Server now launches a thread to initialize Scheme, and drops into a REPL.
2023-08-14 02:46:43 +01:00
Barra Ó Catháin 3189312340 Create placeholder files in client and server source. 2023-08-14 01:59:45 +01:00
Barra Ó Catháin 168740ec34 Finished initial design document. 2023-08-14 01:39:05 +01:00
Barra Ó Catháin aaf1221304 Added initial details on abilities. 2023-08-13 03:20:09 +01:00
Barra Ó Catháin e6b6b86abf Basic groundwork on objects 2023-08-11 01:33:32 +01:00
Barra Ó Catháin 82f3d7164d Added design document, and began designing areas and dungeons. 2023-08-10 01:10:01 +01:00
Barra Ó Catháin 22e74ebfc1 Initial directory structure of rewrite.
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.
2023-07-30 23:08:06 +01:00
Barra Ó Catháin facee564b5 Starting over, see old branch for old codebase 2023-07-30 22:23:25 +01:00
Barra Ó Catháin b83dfb7782 Merge branch 'dev' 2023-07-30 22:20:32 +01:00
Barra Ó Catháin 2059aa0b21 Starting again, see old branch for old codebase. 2023-07-30 22:18:23 +01:00
Barra Ó Catháin fe444ac8c8 Added a docstring explaining what shout does. 2023-04-15 23:46:56 +01:00
Barra Ó Catháin f488a4ac7c Add a comment explaining what shout does. 2023-04-15 23:46:06 +01:00
Barra Ó Catháin 191cf8fcdb Improved connection tutorial 2023-04-14 21:53:29 +01:00
Barra Ó Catháin fde867d25b Noted that GNU Guile is now required to build SilverMUD. 2023-04-14 21:35:38 +01:00
Barra Ó Catháin adfba9afe4 Documented /shout in Player's Guide 2023-04-14 21:34:27 +01:00