Kawe Mazidjatari
74eb203f2f
Client: CPU statistics update logic
...
Implements the client side CPU statistics logic. An additional check has been added which checks if 'SVC_ServerTick::m_NetTick.m_nCommandTick' equals '-1'. This instructs the client to only update the remote statistics; actual tick members won't get updated as this causes simulation problems.
2023-02-18 00:31:57 +01:00
Kawe Mazidjatari
872e33887a
Server: CPU statistics update logic
...
Implements the server side CPU statistics update logic. In the retail product 'SVC_ServerTick' is only send during 'CClient::ActivatePlayer' and 'CClient::SendServerInfo', which is only called during/after connect, but not during the game. The new implementation sends server CPU statistics to the client every time the CPU usage has changed. This is indicated using the '-1' value in the 'SVC_ServerTick::m_NetTick.m_nCommandTick' member variable.
2023-02-18 00:24:02 +01:00
Kawe Mazidjatari
43dd1ea813
Remove extraneous include
2023-02-18 00:10:01 +01:00
Kawe Mazidjatari
1e8d872908
Add host frametime globals to SDK
...
Added:
* host_frametime_unbounded
* host_frametime_stddeviation
2023-02-18 00:08:10 +01:00
Kawe Mazidjatari
adb2ed60a4
Add 'sv_stats' cvar to SDK
...
Server CPU statistics.
2023-02-18 00:06:24 +01:00
Kawe Mazidjatari
367b2cf5bc
Renames and new setters for CNetChan
...
* Renamed hooking class to 'VNetChan'
* Added new setters for setting the remote frame times, and the remote server CPU statistics.
2023-02-18 00:05:55 +01:00
Kawe Mazidjatari
eec9c21648
Implement SVC_ServerTick properly
...
* Message handler is now part of the CNetMessage base class.
* SVC_ServerTick has been implemented, and is ready for use.
2023-02-18 00:03:30 +01:00
Kawe Mazidjatari
2ed56d7317
More mapped out fields for server and client class
2023-02-17 23:59:37 +01:00
Kawe Mazidjatari
fb00aa5c37
Force 'CMaterialSystem::IsMaterialInternal' no inline
...
This seems to work a lot better for our crash handler. 'CMaterialSystem::IsMaterialInternal' still needs to be removed entirely in the future!
2023-02-17 23:56:56 +01:00
Kawe Mazidjatari
1e0248a442
Fix command quota warning message
...
Fix command not getting logged properly when user exceeds quota.
2023-02-17 23:55:27 +01:00
Kawe Mazidjatari
bee83bc9ac
Fixup SVC classes
...
The message handler is a field in the structure, it might belong to CNetMessage.
2023-02-15 21:44:09 +01:00
Kawe Mazidjatari
7f127ddcbe
Rename 'nettick_s' members
2023-02-15 21:43:15 +01:00
Kawe Mazidjatari
a0cc101b29
Rebuild 'Host_Status_PrintClient'
...
This function has been rebuild by popular demand. Its the exact same as the one found within the executable but it logs the client's nucleus id as well, which is useful for identifying a cheater and taking necessary actions.
2023-02-15 20:54:09 +01:00
Kawe Mazidjatari
eaf1e3632e
Implement 'COM_FormatSeconds'
2023-02-15 20:50:12 +01:00
Kawe Mazidjatari
06698bea33
Implement 'CNetChan::GetTimeConnected'
...
'CNetChan::GetConnectTime' has been removed in favor of 'CNetChan::GetTimeConnected'.
2023-02-15 20:49:14 +01:00
Kawe Mazidjatari
fc1a773836
Add 'g_NetTime' to SDK
...
Official name = 'net_time'.
2023-02-15 20:47:58 +01:00
Kawe Mazidjatari
559f15a459
Fix compile errors
...
This belongs to commit 8550d7a8.
2023-02-15 20:46:37 +01:00
Kawe Mazidjatari
1d82fd4903
Add 'FORCENOINLINE' macro
2023-02-15 17:53:15 +01:00
Kawe Mazidjatari
074ec37756
Add SVC_ServerTick
...
Class fully mapped out.
2023-02-15 17:52:49 +01:00
Kawe Mazidjatari
8550d7a865
Rename 'TickUpdate' to 'nettick_t' and move to public
...
Renamed, and moved to public. also added additional static assertions to avoid alignment mistakes in the future.
2023-02-15 17:52:25 +01:00
Kawe Mazidjatari
ccf221fd6e
CNetChan fixup
...
* Renamed member variable; m_bUnkTickBool is m_nServerCPU.
* Removed member variable 'm_bRetrySendLong'; does not exist in s3.
2023-02-15 17:35:47 +01:00
Kawe Mazidjatari
3d5ad71f25
Force full rebuild of SMap
...
Force rebuild due to invalid RVA in shipped cache map.
2023-02-13 23:53:53 +01:00
Kawe Mazidjatari
a20b66e93c
CMDLCache error handling code improvements
...
* Use unordered_set for mdl handles, and use insertion logic in 'CMDLCache::IsKnownBadModel' to determine if it already exists or not.
* Only set 'old_gather_props' to true if its false instead of forcing it every time 'mdl/error.rmdl' is obtained (this has to be properly fixed still in the future!).
2023-02-13 23:50:37 +01:00
Kawe Mazidjatari
0b85476011
Belongs to the previous commit
2023-02-13 23:47:12 +01:00
Kawe Mazidjatari
9a8db42575
Improve and fix 'CStudioHdr'
...
* Fixed crash that occurred due to misaligned member 'm_pMdlCacheVTable' which has been retyped to 'CMDLCache*' and renamed to 'm_pMDLCache' (actual object).
* Added mapped out member 'm_pModelName'.
2023-02-13 23:46:37 +01:00
Kawe Mazidjatari
5806f719c6
Should be u8string
v2.2_rc3
2023-02-12 23:32:58 +01:00
Kawe Mazidjatari
4d68a2edbe
Fix deadlock when file entry is truncated
...
* Fixed endless loop when condition is hit.
* Fixed file name not being formatted correctly.
2023-02-12 23:28:24 +01:00
Kawe Mazidjatari
e738ed9cc5
Update playlists file
...
Disable circle spawn by default in dev_default.
2023-02-12 23:11:41 +01:00
Kawe Mazidjatari
46ddaf9b01
Add ability to deselect a map in the SDK launcher
2023-02-12 20:30:35 +01:00
Kawe Mazidjatari
246312840b
Force full rebuild of SMap
...
Force full rebuild due to changed/added/removed signatures.
2023-02-12 20:07:27 +01:00
Kawe Mazidjatari
ae8a6222fe
Update license file
...
Add curl license in place of 'yhirose HTTP library', which has been replaced with curl.
2023-02-12 20:05:59 +01:00
Kawe Mazidjatari
89978d795e
Add missing include guards
...
Last few files which do not have include guards.
2023-02-12 19:50:45 +01:00
Kawe Mazidjatari
33b8fcd825
Fix compiler output paths
...
Some output paths were wrong.
2023-02-12 19:35:10 +01:00
Kawe Mazidjatari
cbed704bab
Performance improvements for str tools
...
Improve performance for 'StringToMaskedBytes' and 'PatternToMaskedBytes' by appending characters as immediate (char) values instead of pointers.
2023-02-12 19:05:34 +01:00
Kawe Mazidjatari
a97915ed64
Fix many compiler warnings
...
Verbose warnings about implicit conversions from double to float.
2023-02-12 18:17:19 +01:00
Kawe Mazidjatari
7f16717d5d
Suppress last compiler warnings in sha1.cpp
...
* Immediate '0x80' is unsigned.
* Assign only the first 32bits to int block.
2023-02-12 18:14:03 +01:00
Kawe Mazidjatari
f21202611c
Use sizetypes in Sha1 code
...
Must use size types instead of unsigned integers to prevent arithmetic overflow on larger (>4gb) buffers. This also suppresses the compiler warnings generated from this particular file.
2023-02-12 18:11:41 +01:00
Kawe Mazidjatari
d52bbfec08
Fix invalid alignment for 'MatchMetrics'
2023-02-12 18:03:12 +01:00
Kawe Mazidjatari
ea4190e534
Slightly more mapped out CUtlBuffer
...
These are set and used in 'PersistenceParseDefSourceMsg' and 'CAI_NetworkManager::InitializeAINetworks'. Still unknown what they exactly do.
2023-02-12 18:02:37 +01:00
Kawe Mazidjatari
837f53ccb7
Promote CUtlBuffer size types to 64bits
...
In the engine, all these seem to be 64bits as well as the members are 64bits.
2023-02-12 17:54:15 +01:00
Kawe Mazidjatari
310e4b4af3
Make help text bit more clear
2023-02-12 16:27:17 +01:00
Kawe Mazidjatari
c1107fb4ed
Fix spelling
2023-02-12 16:27:09 +01:00
Kawe Mazidjatari
15e9259b77
Use server current time for reload logic
...
Use server's current time for reload logic instead of a dedicated fast timer.
2023-02-12 15:32:34 +01:00
Kawe Mazidjatari
612ab83b20
Use 'GetNumClients' for hosting and status bar
...
Use 'GetNumClients' instead of iterating over the client array twice. Also fixed a bug causing the status bar only to display real clients, buts were never counted.
2023-02-12 15:21:33 +01:00
Kawe Mazidjatari
decf3552ea
Add 'GetNumClients'
...
Gets the total amount of clients on the server (both fake and real clients).
2023-02-12 15:20:11 +01:00
Kawe Mazidjatari
b1f2f47058
Update names across codebase
2023-02-12 15:06:08 +01:00
Kawe Mazidjatari
c888422d51
Remove unnecessary padding and add static assert
2023-02-12 14:57:39 +01:00
Kawe Mazidjatari
d2c8f7becc
Update 'CGlobalVarsBase'
...
Mapped it out a little bit better.
2023-02-12 14:54:04 +01:00
Kawe Mazidjatari
1db53a135f
Fix dedicated.dll compile error
...
'g_svNetKey' no longer exists.
2023-02-12 11:49:39 +01:00
Kawe Mazidjatari
236eb861d5
Add global netadr to SDK
...
Global from engine used in the 'status' command etc..
2023-02-12 11:32:05 +01:00