Name: Ashley Scott
Course: Computer Science (Games)
FYPNet (Final Year Project Net) is a networking library developed in C++ using the Win32 and WinSock 2 APIs.
The library enables developers to create networked solutions ranging from game to software servers.
Sending the data from the server is easily done using a range of high-level methods and a high level JSON data structure which can be serialised into a string and deserialised back into an object.
Setting up a client-server logic is very straight forward and easy to accomplish in only a few lines of code.
The library comes with a range of server-side features including:
- Easy initialisation of the library in one line of code.
- Setting up TCP listen sockets.
- Accepting TCP connections.
- Sending/Receiving data.
- Serialising json objects ready for sending over the network.
- Deserialising json strings into json objects received from the network.
- Creating, editing and dispatching multiple buffers to a socket.
- Easy methods to add data to a buffer. (A single AddValue call will accept all most used data types such as std::string, int and bool.)
- Easy to extend and accept more types (if they can be serialised into a string).
- Easy cleanup and disconnection of all clients connected to a server using FYPNet.
- Safely checking for disconnected clients and cleaning up data.
FYPNet also comes with the ability to connect to TCP based servers, with use of the same sending/receiving methods like the server.
Prototypes are available and demonstrate the library working.
- Chat client prototype.
- MMO/Multiplayer game prototype.
- https://www.youtube.com/watch?v=L0Aje_IBSJg (Client and Server Debugging)
- https://www.youtube.com/watch?v=1JrXSAl8BrI (Chat Client and Server Prototype)
- https://www.youtube.com/watch?v=Jffe705pbAs (Game Server Prototype)