350 Commits

Author SHA1 Message Date
Amos
674cf918f9 Finished project overhaul
Build lzham as a separate library to be linked against the sdk.
Dependencies now build properly when missing.
2022-02-22 15:19:32 +01:00
Amos
b02929edd1 Move project files to dedicated folder and rename solution file 2022-02-22 12:25:09 +01:00
Amos
667b51097f Add launcher enums 2022-02-22 02:45:40 +01:00
Amos
9b8dfee460 Improve ConVar class + rebuild ConCommand class 2022-02-21 17:56:31 +01:00
Amos
ae0b439a3c Additional cleanup + optimizations 2022-02-21 12:06:05 +01:00
Amos
7b971d0398 Disable starpak error handling on the dedicated server
Server could be ran without any starpak files
2022-02-19 20:30:09 +01:00
Amos
77f4ce5b6e Fix typo 2022-02-19 17:04:20 +01:00
Amos
8fa96cc628 Update gl_screen.h 2022-02-19 16:44:05 +01:00
Amos
57a5b5015e Additional cleanup 2022-02-19 16:42:40 +01:00
Amos
5f005fb848 Fix Win32 compile for netconsole 2022-02-19 14:02:46 +01:00
Amos
114f51fcf6 Update config files 2022-02-19 03:06:42 +01:00
Amos
4eea51027c Fix spelling + add comments 2022-02-19 02:43:20 +01:00
Amos
8079e0ed4c Heavy cleanup for CHostState methods and signatures
* Add Cbuf_AddText and Cbuf_Execute signatures.
* Remove additional VGui stuff from dedicated statemachine.
* Move signatures to their respective headers.
* De-inline 'CHostState::FrameUpdate()'
* Ported al new patters to GAMEDLL_S1, CEngine still recreation needs extra work
2022-02-19 02:31:16 +01:00
Amos
cade827570 Update CEngineVGui.cpp 2022-02-18 14:17:14 +01:00
Amos
fd924b56e8 Shutdown dedicated dll properly
Systems where not getting shutdown properly. For dedicated 'ExitProcess()' in the GameDLL caused 'abort()' to get called even when systems where shutdown properly. We call TerminateProcess after all systems have shutdown properly in the SDK and GameDLL.
2022-02-18 14:00:58 +01:00
Amos
9e21284172 Fix dedicated crash during script error + shutdown game properly when tasked by user 2022-02-18 02:51:16 +01:00
Amos
5d60324a2e Add more color logging + RCON color logging 2022-02-17 18:00:29 +01:00
Amos
15897c0ea1 Small logging improvement 2022-02-16 01:53:31 +01:00
Amos
d3aea2a33f Add RCON config files 2022-02-15 02:33:20 +01:00
Amos
12c537284f Slight cleanup 2022-02-15 02:31:41 +01:00
Amos
22cfc084af Fix linker warning 2022-02-15 02:29:40 +01:00
Amos
10174a6206 Initial game client RCON implementation 2022-02-14 23:16:24 +01:00
Amos
976e8d9a41 Use SHA256 for password comparison
Put debug logging under cvar to avoid abusing by attempting to slow down server.
2022-02-14 03:02:38 +01:00
Amos
04be5e0e64 Use WSA error codes for startup/shutdown 2022-02-14 02:33:13 +01:00
Amos
6e3fb73a82 Update comment blocks 2022-02-14 02:31:42 +01:00
IcePixelx
308160369e RTech::UnloadAsset comment and rpak header rename. 2022-02-13 17:13:54 +01:00
IcePixelx
71dabb52e1 RTech var renames and struct renames. 2022-02-13 17:07:02 +01:00
Amos
a5b3b2dea4 Update comment blocks 2022-02-13 15:16:09 +01:00
Amos
9c8644e645 Implement stream serialization/deserialization in RCON server and client 2022-02-13 15:10:38 +01:00
IcePixelx
0dd4d9bdfa WE:AD changes in playlist. Read description.
Including every map in the playlists is a good idea.
The present issue is WE:AD not being shipped in retail season 3.
It's a separate download.

Setting it to 1 will include it in the randomized map select.
Setting it to 0 will make it able to be used with the playlist but will be exluded from said randomized map select.

It's set to 0 now to avoid the game from closing incase it hits said scenario.
2022-02-12 16:41:50 +01:00
Amos
822f2b3de8 Rename request to response
Small mistake
2022-02-11 01:23:37 +01:00
Amos
4ffa3d7113 Change pre/post build events
* Compile protobuf if static lib isn't found
* Only copy dll's and exe's after build if the SDK is cloned into the mod directory of the game
2022-02-11 00:46:41 +01:00
Amos
e864f773a1 Add protobuf files
.proto for sv_rcon and cl_rcon + compiled results
2022-02-11 00:38:50 +01:00
Amos
6aabd822e7 Add playlist file to repo 2022-02-10 00:48:56 +01:00
Amos
f4839bdd9a Add pdef files to repo 2022-02-10 00:48:44 +01:00
Amos
79038a59aa Add mandatory cfg files to repo 2022-02-10 00:48:24 +01:00
Amos
15b5aefc63 Compile static 2022-02-10 00:39:40 +01:00
Amos
69aec8e205 Rename to gamesdk 2022-02-10 00:29:19 +01:00
Amos
f7df14d153 Add protobuf library to project 2022-02-10 00:19:49 +01:00
Amos
ad65ff1f63 Small change 2022-02-09 21:29:34 +01:00
IcePixelx
8d33d01cd6 take strings by reference and not copy in netadr2.cpp 2022-02-09 17:02:43 +01:00
Amos
a5da2e81bf RCON improvements (see description)
** SERVER **
* Close redundant connections if max sockets have been reached.
* Ban if client keeps spamming without authing first (ignoring message).
* Check for whitelisted address before issuing bans (whitelisted address in ConVar 'sv_rcon_whitelist_address' will never get banned or get its connection terminated.
* Transmit SQVM and DevMsg logs over the wire to the net console.

** NETCON **
* IPv6 support.
* Close connection properly after FIN request.
* Prompt user to reconnect after connection has been terminated instead of closing the application.
* Add proper quit command.

** SDKLAUNCHER **
* Rename to 'launcher.exe' to describe its purpose better. Our logo gets printed nice and large on the console during startup.

** SDK **
* Cleanup.
2022-02-08 16:32:00 +01:00
Amos
3411c41eac ConVar optimizations 2022-02-06 19:15:34 +01:00
Amos
7fff22ccec Slight cleanup 2022-02-06 17:27:47 +01:00
Amos
bba0120e88 Fix small bug in netconsole
Changed member params but forgot to change thread invocation params
2022-02-06 17:07:27 +01:00
Amos
d555c39434 Rename to 'cmd' 2022-02-06 17:06:22 +01:00
Amos
c187bed4c5 RCON implementation (see description)
* Fully rewritten protocol agnostic CNetAdr class
* Fully rebuilded legacy CNetAdr class
* Fully rebuilded dual-stack CSocketCreator class
* New project "netconsole" added (lightweight netconsole for RCON)

RCON is still work in progress
2022-02-06 16:48:52 +01:00
Amos
d3d1e673ae Fix IConsole assertions 2022-02-06 16:33:11 +01:00
Amos
f51bd431f4 Add comment regarding exception 2022-02-06 16:30:05 +01:00
Amos
ee82a58133 Create RCON ConCommand 2022-02-06 15:59:46 +01:00