Commit Graph

109 Commits

Author SHA1 Message Date
Barry Kane ae8373d4ce Incremented Version Number.
- Incremented version number in preperation for merge.
2021-09-15 00:28:57 +01:00
Barry Kane 18a4f416f6 Added basic name system
- Added basic name system.
- Added playerdata.h.
- Added basic /NAME command. TODO: Create proper command system.
- Added datastructures for user messages and user names.
2021-09-15 00:07:13 +01:00
Barry Kane b9d5c36683 Alpha 0.2 release of SilverMUD:
Features Added:
- Two window messaging in the client.
- Input sanitization to prevent server spam.
- Slow print text effect ported to Ncurses.
- Graceful handling of C-c.

Features Changed:
- Ncurses is now used in place of raw-terminal output.
- Sending and Receiving are now on their own threads.
- Makefile updated to add server linking variable.
- Control characters no longer cause server spam.
- Splash texts' version incremented.
- Makefile updated to link Ncurses.

Features Removed:
- None.

Squashed commit of the following:

commit 9411803942
Author: Barry Kane <bazzakane@gmail.com>
Date:   Fri Sep 10 15:07:42 2021 +0100

    Increment version message for merge.

    Incremented the version number by 0.1 for the server.
    Added version splash to the client.

commit 7047d0ee08
Author: Barry Kane <bazzakane@gmail.com>
Date:   Fri Sep 10 15:03:02 2021 +0100

    Added two-window messaging to the client.

    Client now has two seperate Ncurses windows for sending and receiving.
    Added SIGINT handler which sets a global boolean to gracefully exit and free memory.
    Sending and Receiving are now on their own threads.
    A pointer-to-struct is now passed to the threads.
    The main thread will now wait to cancel the threads upon receiving SIGINT.
    slowPrintNcurses now takes a window argument.
    The server now doesn't check that a client receives the message that they sent, allowing for full chat history.

commit 33bc9bcda0
Author: Barry Kane <bazzakane@gmail.com>
Date:   Fri Sep 3 18:47:11 2021 +0100

    Adapted client to use Ncurses instead of raw terminal output:
    Created "slowPrintNcurses", which is a version of "slowPrint" compatible with Ncurses screens.
    Ncurses is now used in place of raw-terminal output.
    The screen clears after inital start-up messages.
    C-d no longer exits, and still doesn't spam.
    Added Ncurses to the ld options of client in the Makefile.
    Created ld options for server in the Makefile.

commit 849a80bd37
Author: Barry Kane <barry@omnimenu.ie>
Date:   Thu Aug 19 23:07:58 2021 +0100

    Basic input sanatization:
    Created new library to deal with user input.
    Implemented check in client to prevent C-d spamming the server.
    C-d now exits.
    Implemented check in client to prevent clients sending messages containing only newlines
    to the server.

commit 2c093903a4
Author: Barry Kane <barry@omnimenu.ie>
Date:   Tue Aug 17 18:57:56 2021 +0100

    Git Sanity Check
2021-09-10 15:17:21 +01:00
Barry Kane 9411803942 Increment version message for merge.
Incremented the version number by 0.1 for the server.
Added version splash to the client.
2021-09-10 15:07:42 +01:00
Barry Kane 7047d0ee08 Added two-window messaging to the client.
Client now has two seperate Ncurses windows for sending and receiving.
Added SIGINT handler which sets a global boolean to gracefully exit and free memory.
Sending and Receiving are now on their own threads.
A pointer-to-struct is now passed to the threads.
The main thread will now wait to cancel the threads upon receiving SIGINT.
slowPrintNcurses now takes a window argument.
The server now doesn't check that a client receives the message that they sent, allowing for full chat history.
2021-09-10 15:03:02 +01:00
Barry Kane 33bc9bcda0 Adapted client to use Ncurses instead of raw terminal output:
Created "slowPrintNcurses", which is a version of "slowPrint" compatible with Ncurses screens.
Ncurses is now used in place of raw-terminal output.
The screen clears after inital start-up messages.
C-d no longer exits, and still doesn't spam.
Added Ncurses to the ld options of client in the Makefile.
Created ld options for server in the Makefile.
2021-09-03 18:47:11 +01:00
Barry Kane 849a80bd37 Basic input sanatization:
Created new library to deal with user input.
Implemented check in client to prevent C-d spamming the server.
C-d now exits.
Implemented check in client to prevent clients sending messages containing only newlines
to the server.
2021-08-19 23:07:58 +01:00
Barry Kane 2c093903a4 Git Sanity Check 2021-08-17 18:57:56 +01:00
Barry Kane 618b2144e3 Initial release of SilverMUD:
Features Added:
- Server capable of receiving and sending messages to up to 64 clients.
- Client capable of sending and receiving messages from the server, multi-threaded.
- Text effect library with one effect.

Features Changed:
- None, initial release.

Features Removed:
- None, initial release.
2021-08-15 19:42:37 +01:00