Advertisement
gabefollower

HLX - Destructible NPCs / Locomotion & Navigation / Wind / Lighting Rigs

Oct 30th, 2024
4,988
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.30 KB | None | 0 0
  1. Found and organized by GabeFollower
  2.  
  3. https://github.com/SteamDatabase/GameTracking-CS2/commit/8f8a789a19c87ad25503766dcc06dd11a4e3a91b
  4. https://github.com/SteamDatabase/GameTracking-CS2/commit/6ba003358535a6d00d5b42c5d5fcf79b10e65723
  5. https://github.com/SteamDatabase/GameTracking-CS2/commit/67974ec547bbc73d1177291f36726ab8747ad00a
  6. https://github.com/SteamDatabase/GameTracking-Deadlock/commit/b6f068af1a6dd7522406a64054d3a5281d36ae60
  7.  
  8. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  9. HLX mentions in NPC locomotion system
  10. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  11.  
  12. HLXDebugOverlayNpcLocomotion
  13.  
  14. GameSystemReallocatingFactoryHLXDebugOverlayNpcLocomotion
  15.  
  16.  
  17.  
  18. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  19. Lighting Rigs, Sun, Sky
  20. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  21.  
  22. m_Sky
  23.  
  24. m_Suns
  25.  
  26. LightRigType_t
  27.  
  28. ToolSceneLightRig
  29.  
  30. LightingControlRig::ReloadLightRigConfig
  31.  
  32. LightRigBackground
  33. LightRigExposure
  34. LightRigGrid
  35. LightRigLight
  36. LightRigPointLight
  37. LightRigPostProcessing
  38. LightRigSky
  39. LightRigSpotLight
  40. LightRigSunLight
  41. LightRigVMap
  42.  
  43.  
  44.  
  45. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  46. Wind System
  47. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  48.  
  49. Wind Direction
  50. m_vWindDirection
  51.  
  52. Wind Speed
  53. m_fWindSpeed
  54.  
  55.  
  56.  
  57. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  58. Visualize transitions between different navigation spaces.
  59. Navmesh can be divided into separate "spaces" or areas with different properties.
  60. Might be used for transition between different states (e.g., swimming, climbing, flying).
  61. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  62.  
  63. nav_draw_space_transitions
  64.  
  65.  
  66.  
  67. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  68. NPC Locomotion & Navigation
  69. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  70.  
  71. -------- NPC Maker
  72.  
  73. npc_maker_base
  74.  
  75.  
  76.  
  77. -------- Locomotion
  78.  
  79. HLXDebugOverlayNpcLocomotion
  80.  
  81. DebugOverlayPathfindingFilter
  82.  
  83. AI_LocomotionDebugSystem
  84.  
  85. Game/NPC Locomotion
  86.  
  87. NPC Locomotion
  88. NPC Locomotion Debug Tick: %u
  89.  
  90. Ground Locomotion [%s]
  91.  
  92. imgui_show_npc_locomotion
  93.  
  94.  
  95.  
  96. -------- Navigation
  97.  
  98. NPC View Cone
  99.  
  100. GetNearestNav: Start Position
  101. GetNearestNav: Success! Returning area [%d]
  102. GetNearestNav: Failed.
  103.  
  104. DynamicNavConnectionsVolume
  105. NavDynamicConnectionsManager
  106.  
  107. dynamic_nav_connection_target
  108.  
  109. func_nav_dynamic_connections
  110.  
  111. AI_NavSetGoalFlags
  112.  
  113. AI_Navigator_NavGoal
  114. AI_Navigator_AIMoveResult_NavArea
  115.  
  116. m_nGoalDirection
  117.  
  118. AI_Navigator::AdvancePath - reason '%s'\n
  119. AI_Navigator::AttemptBlockedRecovery
  120. AI_Navigator::Move
  121. AI_Navigator::RefindPathToGoal
  122. AI_Navigator::SaveInterruptPath
  123. AI_Navigator::SetDirectionalGoal
  124. AI_Navigator::SetGoal
  125. AI_Navigator::SetRadialGoal
  126. AI_Navigator::SetRandomGoal
  127. AI_Navigator::SetVectorGoal
  128. AI_Navigator::StopMoving( %s )\n
  129. AI_Navigator::TeleportToNearestNav
  130.  
  131. GetNavAreaOverlapping: Area blocked.
  132. GetNavAreaOverlapping: Area is navlink.
  133. GetNavAreaOverlapping: Area pending destruction.
  134. GetNavAreaOverlapping: Area result idx [%d]. OOBCount[%d]
  135. GetNavAreaOverlapping: Area split.
  136. GetNavAreaOverlapping: Attributes were excluded.
  137. GetNavAreaOverlapping: Empty grid.
  138. GetNavAreaOverlapping: Failed to find nav area.
  139. GetNavAreaOverlapping: Further than the one we already have
  140. GetNavAreaOverlapping: Invalid Position.
  141. GetNavAreaOverlapping: LOS check failed. Obstructed.
  142. GetNavAreaOverlapping: Not overlapping projection.
  143. GetNavAreaOverlapping: Required attributes not included.
  144. GetNavAreaOverlapping: Still in the last area
  145. GetNavAreaOverlapping: Success!
  146. GetNavAreaOverlapping: Test Position.
  147. GetNavAreaOverlapping: Too far above.
  148. GetNavAreaOverlapping: Too far below.
  149. GetNavAreaOverlapping: User rejected.
  150.  
  151.  
  152.  
  153. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  154. Destructible NPCs, Ragdolls, Body Parts
  155. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  156.  
  157. -------- Core System
  158.  
  159. Destructible Parts
  160.  
  161. Data for this destructible part.
  162.  
  163. Name for this destructible part.
  164.  
  165. Value to set for the body group when the part is broken.
  166.  
  167. VDataModelBodyGroup( m_sModelName )
  168. Body group to set when this part is broken.
  169.  
  170. VDataModelBreakPiece( m_sModelName )
  171. Name of the breakable part to trigger breaking on when health reaches zero.
  172.  
  173. DestructiblePartsSystemData
  174. DestructiblePartsSystemData_PartDataProxy
  175. DestructiblePartsSystemData_PartDataProxyVector
  176. DestructiblePartsSystemData_PartRuntimeData
  177.  
  178. DestructiblePartsSystemData_HitGroupInfoAndPartData
  179. Destructible Part Data For a Particular Hit Group
  180.  
  181. DestructiblePartsSystemComponent
  182.  
  183. m_DestructiblePartsOverrideByPartName
  184. Destructible Part Overrides. The key is a unique name for a part (searches all hitgroups and the sub parts). Will override default data specified in the model.
  185.  
  186.  
  187. class CDestructiblePartRuntimeDataVector
  188. {
  189. CUtlVector< CDestructiblePartRuntimeData > m_DestructiblePartsRuntimeData;
  190. };
  191.  
  192. class CDestructiblePartsSystemData
  193. {
  194. CUtlOrderedMap< HitGroup_t, CDestructiblePartsSystemData_HitGroupInfoAndPartData > m_DestructiblePartsDataByHitGroup;
  195. };
  196.  
  197. class CDestructiblePartsSystemData_HitGroupInfoAndPartData
  198. {
  199. CUtlString m_sName;
  200. CUtlVector< CDestructiblePartsSystemData_PartData > m_DestructiblePartsData;
  201. bool m_bDisableHitGroupWhenDestroyed;
  202. };
  203.  
  204. class CDestructiblePartsSystemData_PartData
  205. {
  206. CUtlString m_sName;
  207. CGlobalSymbol m_sBreakablePieceName;
  208. CGlobalSymbol m_sBodyGroupName;
  209. int32 m_nBodyGroupValue;
  210. CGlobalSymbol m_sAnimGraphParamName_PartDestroyed;
  211. CGlobalSymbol m_sAnimGraphParamName_PartNormalizedHealth;
  212. CSkillInt m_nHealth;
  213. EDestructiblePartDamagePassThroughType m_nDamagePassthroughType;
  214. bool m_bKillNPCOnDestruction;
  215. CGlobalSymbol m_sCustomDeathHandshake;
  216. };
  217.  
  218. DumpSource2\schemas\client\CCSPlayer_DamageReactServices.h
  219. DumpSource2\schemas\client\CDestructiblePartRuntimeData.h
  220. DumpSource2\schemas\client\CDestructiblePartRuntimeDataVector.h
  221. DumpSource2\schemas\client\CDestructiblePartsSystemData.h
  222. DumpSource2\schemas\client\CDestructiblePartsSystemData_HitGroupInfoAndPartData.h
  223. DumpSource2\schemas\client\CDestructiblePartsSystemData_PartData.h
  224. DumpSource2\schemas\client\CRagdollManager.h
  225.  
  226.  
  227.  
  228. -------- Ragdoll Management
  229.  
  230. game_ragdoll_manager
  231.  
  232. class CRagdollManager : public C_BaseEntity
  233. {
  234. int8 m_iCurrentMaxRagdollCount;
  235. };
  236.  
  237. class CRagdollManager : public CBaseEntity
  238. {
  239. bool m_bCanTakeDamage;
  240. };
  241.  
  242. class RagdollCreationParams_t
  243. {
  244. int32 m_nHealthToGrant;
  245. };
  246.  
  247. CanTakeDamage(boolean) : "Ragdolls Take Damage" : 0 : "Can ragdolls be damaged and eventually destroyed if they have health?"
  248.  
  249. max ragdoll count: %d
  250.  
  251.  
  252.  
  253. -------- Hitbox Groups
  254.  
  255. Entity %s is not a base AI!\n
  256. Entity %s has remaining hit groups:\n%s
  257. Entity '%s' has no destructible parts (is not a base NPC).\n
  258.  
  259. Do we disable the hitgroup when all sub parts are destroyed?
  260.  
  261. Failed to destroy destructible part(s) in hit group %d for entity %s. Remaining hit groups: %s\n
  262.  
  263. class C_BaseModelEntity : public C_BaseEntity
  264. {
  265. HitGroup_t m_LastHitGroup;
  266. };
  267.  
  268. The hitgroup this is related to.
  269.  
  270. class CBaseModelEntity : public CBaseEntity
  271. {
  272. CRenderComponent* m_CRenderComponent;
  273. CHitboxComponent m_CHitboxComponent;
  274. HitGroup_t m_nDestructiblePartInitialStateDestructed0;
  275. HitGroup_t m_nDestructiblePartInitialStateDestructed1;
  276. HitGroup_t m_nDestructiblePartInitialStateDestructed2;
  277. HitGroup_t m_nDestructiblePartInitialStateDestructed3;
  278. HitGroup_t m_nDestructiblePartInitialStateDestructed4;
  279. int32 m_nLastHitDestructiblePartIndex;
  280. HitGroup_t m_LastHitGroup;
  281. };
  282.  
  283.  
  284.  
  285. -------- Applying / Receiving Damage
  286.  
  287. How damage to this part is handled.
  288.  
  289. Total health of this part. When it reaches 0, the part is 'broken' using the breakable prop system.
  290.  
  291. Custom death handshake to set when this part is destroyed.
  292.  
  293. NPCDamageMult
  294.  
  295. enum EDestructiblePartDamagePassThroughType : uint32_t
  296. {
  297. Normal = 0,
  298. Absorb = 1,
  299. };
  300.  
  301. class CDestructiblePartRuntimeData
  302. {
  303. int32 m_nHealthRemaining;
  304. };
  305.  
  306. class C_CSPlayerPawn : public C_CSPlayerPawnBase
  307. {
  308. CCSPlayer_DamageReactServices* m_pDamageReactServices;
  309. };
  310.  
  311. class CCSPlayer_DamageReactServices : public CPlayerPawnComponent
  312.  
  313.  
  314. -------- NPC Death / Ragdoll Destruction
  315.  
  316.  
  317. m_bKillNPCOnDestruction == false
  318. Should the NPC die when this part is destroyed?
  319.  
  320. m_bKillEntityOnDestruction
  321. m_bKillEntityOnDestruction == false
  322. Should the entity die when this part is destroyed?
  323.  
  324.  
  325.  
  326. -------- AnimGraph Parameters
  327.  
  328. e_destructible_part_destroyed_hitgroup
  329. CAnimGraphParamOptionalRef< char* > m_sDestructiblePartDestroyedHitGroup;
  330. Animgraph parameter (float) with the normalized (0-1) health of this part.
  331.  
  332. i_destructible_part_destroyed_part_index
  333. CAnimGraphParamOptionalRef< int32 > m_nDestructiblePartDestroyedPartIndex;
  334. Animgraph parameter (boolean) to set when this part is destroyed.
  335.  
  336. class CBaseAnimGraph : public CBaseModelEntity
  337. {
  338. int32 m_nLastDestructiblePartDestroyedAnimgraphSetTick;
  339. };
  340.  
  341.  
  342.  
  343. -------- Debug Console Commands
  344.  
  345. destructible_parts_force_destroy (developmentonly gamedll defensive)
  346. Force a destructible part to break
  347.  
  348. debug_destructible_parts false (developmentonly gamedll defensive)
  349. Draw debug information for destructible parts.
  350.  
  351. Usage: destructible_parts_force_destroy <entity index/target-name/etc> <hitgroup> <part_index>\n
  352.  
  353.  
  354.  
  355. ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  356. Other
  357. ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  358.  
  359. AirDampingDuration
  360.  
  361. Groom root bone "%s" doesn't exist\n
  362.  
  363. InputSetNoNPCs
  364. m_bNoNPCs
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement