Servers now support graceful shutdown.
Reworked how console commands are parsed to allow for graceful world server shutdown.
Moved WebHost into generic host in world server.
Added some additional logging and comments to various managers.
* Update target typing (new type to new())
https://medium.com/swlh/an-introduction-to-the-new-features-in-c-9-305dc8fb74d2
4. Target Typing Improvements
* Remove new line
* Remove more new lines.
* Updated type targed new to var for method variables to be consistent with the rest of the code base.
Co-authored-by: Rawaho <rawahodev@gmail.com>
* Feature implementations and performance improvements
Game table speedup.
Langauge file loading suppport
Go teleport command (Requires language file, rename to lang.bin)
Added resharper style file.
Removed DI Leakage outside of ASP.NET Core. Web server startup returns IDisposable to prevent any temptation to leak it by making it more challenging to leak.
WorldSessionCommandContext updated to send command output on System channel.
Web socket command console implementation. The web page is crappy I know.
Improved command constructor to use params string[] instead of having aliases first.
Changed command logging to NLog, instead of ASP.NET Core abstractions.
Added parallel loading of game tables.
Added JSON cache to lang.bin.
Added buffered stream to improve performance when loading game tables.
Changed random implementation to use RNGCryptoService provider to generate cryptographically acceptable random data, instead of using the PRNG.
* Style cleanup.
* Build fix
* Removed performace session trash VS added.
* Style cleanup and small reworks to game tables.
* Added ASP.NET Core to world server
Reworked commands in preparation for a web UI
* Added cheats, and fixed some CR/LF issues.
* Implemented help
Moved classes to namespaces based on their purpose.
Moved DI Registration of commands to CommandHandler.
* Added item module to DI (woops)
Updated help command to support help <command> instead of <command> help
* Added websocket lib reference, and WebSocket command context.
* Fixed a bug where commands requiring a session would not display help when not in game.
CommandCategories that are invoked without a sub command will display help automatically.
* Removed unncessary .NET Framework reference from world server. Project still builds with it removed.
* Style changes.