Blacknova Realms

Development Blog v0.20.15

Display Blog Year: [2016] [2017] [2018] [2019] [2020] [2021] [2022] [2023] [Latest Blog]

If you want to discuss anything on these blogs, create a post on our forums and I will reply when I can, also please note at this current time most of these are just ideas and might not get added.

RECENT POSTS


Slow updates are better than no updates.

📆 Post by TheMightyDude, Wed, November 29, 2023
Development Information Update Feature Security

Well not done much in a while, but went through some code, cleaned it up a little, removed redundant code (still have loads of old code that is commented out) but now runs slightly fast.

I still need to update the project to .NET 8 due to the current Server Code is .NET 7 and the way that I am trying to have this done is to allow the admin just to upload the game server folder to their Linux Server and it will just work, no extra software needed for it to run.

Current Server Look (subject / title to change)
I know it looks like not much has changed, but code wise a lot have changed, lot of redundant code was removed (still have some commented code still in there) but it shows a new user connection authenticating using SRP where it uses the Key only known to the client and server when the new connection authenticates..
Handlers
Added the SRP Handler (AuthSRPHandler) to the Internal Handlers List.

Apart from cleaning up some code, I haven’t really done much.


There is NoSQL in this LOL

📆 Post by TheMightyDude, Sun, April 16, 2023
Development Information Update

Just a quick update…

Well started looking into how to store Live Game Data and how lo load it.

I have been looking at NoSQL, so only need to create a class to store a bunch of data and I just populate the class and supply that into the Insert Function and it just adds it.

Using NoSQL via LiteDB will remove the need of setting up a database for the game if you were to want to host a server. In theory you should just need to upload the server files to the required server and setup User:Group permissions, setup the admin and game server settings etc and that should be it.

Not yet looked at an Admin Web Front End, but might have Tools, but not sure yet and that’s a long way off.


🧱🧱🧱🧱🧱🧱 Brick Wall 🧱🧱🧱🧱🧱🧱

📆 Post by TheMightyDude, Tue, February 07, 2023
Development Information Update

Have hit a brick wall today with my ThreadManager code, seems I couldn’t shutdown a tread in the NetworkReadLoopThread when it needs to close the Socket when the remote end drops the connection and where I wanted to not have Threads running that didn’t need to be running.

It seems that you cannot close a Thread within itself due to how its coded.

But decided on while the game is running whether its connected to the server or not, will have all required Threads running, which is fine due to they just wouldn’t be doing anything in them.

Both Server (Console App) and Client (Desktop App while in development) I am able to Connect, Authenticate and Create New Account.

Next step would be to try the Client code within the Unity Engine and see if it works, my guesses would be that it won’t work and will have some errors that will need to be resolved.

But once that’s all resolved and working I “should” have the basic Networking Done and “should” be then able to add new stuff.

Current Server Look (subject to change)
I know it looks like not much has changed, but code wise a lot have changed, lot of redundant code was removed, how the code did stuff is also different.
Handlers
Handlers are used to handle certain Network Messages, like Authentication, Combat, Movement and so on, it makes it easier to add stuff without the need to even touch the main code, so this reduces the chances of breaking something somewhere else when adding stuff.

SRP (Secure Remote Password) Support.

📆 Post by TheMightyDude, Fri, January 27, 2023
Development Security Feature

Just a very quick update this time round…

SRP (Secure Remote Password) is now added into the API for Authentication, so passwords are now no longer sent over the network or even stored in the database.

All that is stored is UserSalt and UserVerifier and that is it.


Health & Development Update…

📆 Post by TheMightyDude, Mon, January 23, 2023
Development Status

Well been taking a me time for a while and I think I am in a good place so have gone back to development.

Took a little while to figure out my code that I had backed up due to losing all my up-to-date code in the datacentre fire, but starting to get back to knowing what I was trying to do.

But just because I am back to developing doesn’t mean it will all be done anytime soon, I am way off due to having to design and write my own API containing Multi-Threaded Networking etc.

But it’s a start at least.