summaryrefslogtreecommitdiffstats
path: root/CONTEXT.md
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-10-27 14:52:00 +0100
committersalmonik <salmonik@tuta.io>2026-10-27 14:52:24 +0100
commit293eda2bdce9d732fad168b5b6838bd89ce59fe8 (patch)
tree9f345d4a19d1957ccfd7764012221d62eb2df328 /CONTEXT.md
parentMenu: latch the Insert key and expand the root on open (diff)
downloadhl2h-293eda2bdce9d732fad168b5b6838bd89ce59fe8.tar.gz
hl2h-293eda2bdce9d732fad168b5b6838bd89ce59fe8.zip
Melee killbot: 360-degree crowbar silent aim
- New feature (default on): while the local player's active weapon is the crowbar, pick the nearest visible hostile NPC within the 75-unit crowbar range, sorted by distance to its collision AABB, and attack it through the normal silent-aim path (usercmd view + IN_ATTACK, movement preserved, rendered view restored at FRAME_RENDER_START). - Prefer the nearest visible hitbox center; fall back to the AABB center / closest point when bones are unavailable. Reuses the existing friendly / neutral and life-state filters and the world-only vischeck. - Detect the active weapon from the client m_hActiveWeapon handle, with the authoritative server m_hActiveWeapon handle as a fallback (client entity index from the low 16 bits). - While the crowbar is active and this feature is on, skip the gun aimbot, triggerbot and silent aim so they do not fight over the usercmd view. - Menu: Melee killbot -> Active; config [melee] active=...
Diffstat (limited to '')
-rw-r--r--CONTEXT.md25
1 files changed, 23 insertions, 2 deletions
diff --git a/CONTEXT.md b/CONTEXT.md
index 38d9373..8fb2197 100644
--- a/CONTEXT.md
+++ b/CONTEXT.md
@@ -81,6 +81,7 @@ Relevant vtable slots (this build):
81| `m_lifeState` | `0x7F` | 81| `m_lifeState` | `0x7F` |
82| `m_nModelIndex` | `0x7C` | 82| `m_nModelIndex` | `0x7C` |
83| `m_vecAbsVelocity` (client local, not netvar) | `0x11C` | 83| `m_vecAbsVelocity` (client local, not netvar) | `0x11C` |
84| `m_hActiveWeapon` (client netvar; server fallback `0x824`) | resolved by name |
84 85
85- Eye position = `m_vecOrigin + m_vecViewOffset` on **all three axes**. 86- Eye position = `m_vecOrigin + m_vecViewOffset` on **all three axes**.
86 (The old code added the X component to Z, which left the eye ~64 units low.) 87 (The old code added the X component to Z, which left the eye ~64 units low.)
@@ -108,6 +109,8 @@ HL2hake
108 Jumpbug 109 Jumpbug
109 Active 110 Active
110 Assist timing 111 Assist timing
112 Melee killbot
113 Active
111 ESP 114 ESP
112 Active 115 Active
113 Show neutral / healthbar / healthnum / name / skeleton / box / speed graph 116 Show neutral / healthbar / healthnum / name / skeleton / box / speed graph
@@ -163,6 +166,26 @@ Binds use SDL scancodes; mouse buttons are pseudo-scancodes 600..604.
163 zero forward/side movement; HL2's jump speed-bound subtraction then 166 zero forward/side movement; HL2's jump speed-bound subtraction then
164 accelerates along the velocity. Camera restored at `FRAME_RENDER_START`. 167 accelerates along the velocity. Camera restored at `FRAME_RENDER_START`.
165 168
169## Melee killbot
170
171- Active only while the local player's active weapon is the crowbar. The
172 client `m_hActiveWeapon` handle is used first; if it is missing, the
173 authoritative server `m_hActiveWeapon` handle (0x824) is used to get the
174 weapon entity index.
175- Crowbar range is `CROWBAR_RANGE` 75 units from `Weapon_ShootPosition`. The
176 selector computes the closest point on each hostile NPC's AABB to the eye,
177 rejects anything farther than 75, sorts by that distance, and picks the
178 nearest visible one.
179- The usercmd view is pointed at the target for one command with `IN_ATTACK`;
180 movement keys are rotated with `preserve_movement`, and the rendered view is
181 restored immediately and at `FRAME_RENDER_START` (same silent-aim path).
182 This gives a 360-degree silent melee attack.
183- While the crowbar is active and the killbot feature is on, the gun aimbot,
184 triggerbot and silent aim are skipped to avoid fighting over the usercmd
185 view.
186- Vischeck uses the shared `MASK_VISIBLE`/world-only path (static props are
187 ignored).
188
166## Jumpbug 189## Jumpbug
167 190
168- Automatic while falling when the predicted landing speed 191- Automatic while falling when the predicted landing speed
@@ -212,8 +235,6 @@ Binds use SDL scancodes; mouse buttons are pseudo-scancodes 600..604.
212 235
213## Roadmap / TODO 236## Roadmap / TODO
214 237
215- **Melee killbot**: 360° silent aim for hostile NPCs inside crowbar/melee
216 range, sorted by distance, only while the crowbar is held.
217- **GUI**: replace/augment the VGUI ISurface menu with an immediate-mode GUI 238- **GUI**: replace/augment the VGUI ISurface menu with an immediate-mode GUI
218 (Dear ImGui or a custom implementation); needs a design grill first. 239 (Dear ImGui or a custom implementation); needs a design grill first.
219- **Distance weapon spread thesis**: TBD — user will explain. Likely models 240- **Distance weapon spread thesis**: TBD — user will explain. Likely models