Kawe Mazidjatari
2c7636ec0d
Initial 'EntityByIndex' implementation
2023-01-23 23:40:40 +01:00
Kawe Mazidjatari
66ef9fb6a0
Fix crash in hitbox drawing code and light restructure
...
* Fix null pointer dereference crash in server hitbox drawing code; implemented a proper getter for CStudioHdr.
* Moved 'baseentity.h/cpp' to 'game/server/' instead.
* Overall light cleanup.
2023-01-23 23:21:29 +01:00
Kawe Mazidjatari
094a6e4fa5
Initial hitbox drawing implementation
...
Currently only hooked up to lag compensation code. Will be hooked up to 'sv_showhitboxes' in the future (drawing hitboxes of all animating).
2023-01-23 02:22:51 +01:00
Kawe Mazidjatari
502a1d2324
Switch box overlay transform type to 'matrix3x4_t'
...
Actual type turned out to be 'matrix3x4_t' after further reverse engineering.
2023-01-23 02:20:21 +01:00
Kawe Mazidjatari
07ef57536d
Add modelinfo vftable pointers
2023-01-22 16:48:16 +01:00
Kawe Mazidjatari
4b5d24a51f
Fix trace filter shadow bug
...
Shadow: VFTable was never set.
2023-01-22 13:05:26 +01:00
Kawe Mazidjatari
d7f3209525
Mapped out hit group standards
...
Mapped out from Squirrel code.
2023-01-22 12:06:05 +01:00
Kawe Mazidjatari
15429d3f8f
Add 'CTraceFilterSimple' to SDK
2023-01-21 16:22:16 +01:00
Kawe Mazidjatari
eff106e415
Improve CCollisionProperty
...
Set 'm_pOuter' to CBaseEntity*.
2023-01-21 16:18:12 +01:00
Kawe Mazidjatari
08746bcedd
player.h cleanup
2023-01-21 16:17:28 +01:00
Kawe Mazidjatari
6811642734
Remove copyright notice from player.h
...
Structure uses next to no Valve material, and is heavily modified/custom. Removed copyright notice.
2023-01-20 22:17:04 +01:00
Kawe Mazidjatari
1d8e61ebff
Fixup 'CMoveHelperServer' and 'CMoveHelperClient'
...
Uncomment field.
2023-01-20 17:21:34 +01:00
Kawe Mazidjatari
9720d8b0f1
Fix 'g_pGlobals' and 'UTIL_PlayerByIndex()'
...
'UTIL_PlayerByIndex' now returns the player from the edict array properly, 'g_pGlobals' had to be dereferenced twice.
2023-01-20 14:07:25 +01:00
Kawe Mazidjatari
4710b51fa3
Experimental bot simulation implementation
...
Simulate bot user commands on the server. The simulation system is experimental and only runs if cvar 'sv_simulateBots' is set, and bots are created on the server.
2023-01-20 01:23:08 +01:00
Kawe Mazidjatari
dcf05a0adf
CClientEntityList reversal
...
Slightly reversed CClientEntityList while looking around its singleton.
2023-01-20 00:28:49 +01:00
Kawe Mazidjatari
82c914c2fd
Detour 'Physics_RunThinkFunctions'
...
Hook will be used to run simulation for bots.
2023-01-19 22:53:45 +01:00
Kawe Mazidjatari
e7522ce0d6
Fix compile error
...
IMoveHelper compile error in player.h.
2023-01-19 21:51:43 +01:00
Kawe Mazidjatari
934d18809a
Finish 'CPlayer::RunNullCommand'
2023-01-19 21:45:15 +01:00
Kawe Mazidjatari
1853f3d643
CPlayer: Finish user command executor
...
Command executor finished. Also improved the structure slightly to use CUserCmd instead of padded characters for 'm_LastCmd'.
2023-01-19 20:48:41 +01:00
Kawe Mazidjatari
119bd9ae61
CUserCmd improvements
...
* Adjust structure size to that of the implementation in the S3 executable.
* Added copy method (copies a source usercmd into current).
2023-01-19 20:45:59 +01:00
Kawe Mazidjatari
9231861f87
Light cleanup in movehelper_server.h
2023-01-19 19:39:36 +01:00
Kawe Mazidjatari
05748e6184
Add client movehelper to SDK
...
Structure and vftable align 100%.
2023-01-19 19:39:15 +01:00
Kawe Mazidjatari
7279039226
Delete empty files
2023-01-19 18:57:28 +01:00
Kawe Mazidjatari
754c986e3d
Add server movehelper to SDK
...
Initial implementation of server movehelper. IMoveHelper interface class is fully reversed and aligns with implementation in engine. CMoveHelperServer is also reversed, excect for CGameTrace, though this isn't necessary for now.
2023-01-19 18:52:46 +01:00
Kawe Mazidjatari
afe8efbc2a
Add CUserCmd class to SDK
...
Implemented CUserCmd to SDK. Constructor resets the class using the game's 'Reset' implementation as the majority of the structure is unknown.
2023-01-19 16:11:48 +01:00
Kawe Mazidjatari
b2ffab07c3
Fix mistake
...
Should be 'm_lastUCmdSimulationRemainderTime' instead of 'm_totalExtraClientCmdTimeAttempted'.
2023-01-19 15:29:53 +01:00
Kawe Mazidjatari
54f08bd887
Work-in-progress user command executor
...
* Added some getters in 'CBaseEntity' and 'CServerNetworkProperty'.
* Implemented 'CPlayer::SetTimeBase'.
* WIP implementation of 'CPlayer::RunNullCommand'.
2023-01-19 15:25:45 +01:00
Kawe Mazidjatari
d4b576bd49
Light structures cleanup
2023-01-19 15:06:08 +01:00
Kawe Mazidjatari
1cf03355a5
Light cleanup and work for future
...
Moved some structures around and added ehandle headers.
2023-01-19 02:03:36 +01:00
Kawe Mazidjatari
b21fa6b665
Fix CBaseAnimating and CPlayer structure alignment
...
This change creates correct assembly output.
2023-01-19 02:02:42 +01:00
Kawe Mazidjatari
c0d9d4462b
Improve CAnimationLayer
...
Field 'm_animationLayerOwner' is CBaseEntity*.
2023-01-19 01:59:11 +01:00
Amos
b63765e1dc
Finished CPlayer inheritance
2023-01-18 12:39:18 +01:00
Kawe Mazidjatari
3ed423543e
Add more entity structures to the SDK
...
Stuff will be separated properly very soon.
2023-01-18 01:34:40 +01:00
Kawe Mazidjatari
217bbc8ea1
Add new work-in-progress entity structures to SDK
...
Thanks to rexx for the structures.
2023-01-18 00:46:17 +01:00
Kawe Mazidjatari
94bf515ba7
Add gpGlobals to SDK
2023-01-17 11:21:10 +01:00
Kawe Mazidjatari
21f4d0fa07
Initial working bots implementation
...
* Changed 'CClient' handle time to 'edict_t' which is an alias of 'uint16_t'.
* Changed 'g_pServerGameDLL' and 'g_pServerGameClients' init (obtain from factory instead).
* Use interface version macro's for obtaining factory pointers instead.
* Added 'g_pServerGameEntities'.
2023-01-16 21:09:21 +01:00
Amos
11648d4932
Additional bot stuff
2023-01-16 16:54:01 +01:00
Kawe Mazidjatari
1021a95068
Merge branch 'SignatureMap' into indev
2022-12-04 14:21:14 +01:00
Marvin D
9fb7667075
Info regarding CServerGameDLL::GameShutdown
2022-12-03 02:58:05 +01:00
Marvin D
c0c06a14b8
client networkable vars init.
2022-12-03 02:57:11 +01:00
Kawe Mazidjatari
2501c37044
Globally convert all byte patterns to strings
...
These get reconverted to masked byte patterns at runtime. With the signature map cache system, this will only happen when building the cache.
2022-12-01 22:44:55 +01:00
Kawe Mazidjatari
4bf0e2f544
Add camera range culling logic to 'CAI_Utility::DrawAIScriptNetwork'
...
Uses the same camera range cvar used by the NavMesh renderer: 'navmesh_debug_camera_range'. This allows for rendering them nicely on top of the NavMesh.
2022-11-17 20:49:23 +01:00
Kawe Mazidjatari
3b5d6ec910
Use more consistent types
...
* Use more consistent types in the AI network manager.
* Use the server global to obtain level name.
2022-11-14 01:01:28 +01:00
Marvin D
d00aaa933d
CRenderView init, GetWorldMatrixForView()
...
* Fixed .gitignore for root /game/
* Fixed bug in WalkVTable where it would offset self.
* General clean up: VAR -> CON, CON -> VAR
2022-11-10 00:53:12 +01:00
Marvin D
4af22ede90
fix compilation.
2022-11-09 23:37:33 +01:00
Kawe Mazidjatari
8147431b0f
Rename Detour_Free() to Detour_LevelShutdown()
...
Added the missing call to v_Detour_LevelInit(), which was removed for debugging purposes.
2022-11-05 00:11:17 +01:00
Kawe Mazidjatari
4bd164a535
NavMesh hot swap system improvements
...
* Check if server is active in command callback before attempting to hot swap.
* Hook 'v_Detour_LevelInit', and log NavMeshes that failed to load.
* Split free/destroy logic into separate function.
* Created constants for NavMesh and AI Network paths/extensions.
* Added performance profiler for hot swap logic in command callback.
* Renamed "navmesh_reload" to "navmesh_hotswap".
* "navmesh_hotswap" is now development only.
2022-11-03 17:12:22 +01:00
Kawe Mazidjatari
ba252c8e98
Implement logic for hot swapping NavMesh
...
The new command 'navmesh_reload' hot swaps the current NavMesh for all hulls in memory, with that of the 'new' files on the disk. The memory of the old NavMesh gets freed and destroyed.
2022-11-03 10:44:59 +01:00
Kawe Mazidjatari
f27ff874c2
Add hexadecimal prefix to NavMesh checksum debug
2022-11-03 02:24:04 +01:00
Kawe Mazidjatari
b5b56c83ea
CAI_Utility::DrawAIScriptNetwork: light cleanup
2022-10-24 00:52:32 +02:00