diff options
| author | salmonik <salmonik@tuta.io> | 2026-11-04 14:04:39 +0100 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-11-04 14:04:39 +0100 |
| commit | 8cd07c04efafcd3e927a21152d10e9fafea54517 (patch) | |
| tree | c89fdf577c90e82080ff5c15982d016cc3f5f7fa /CONTEXT.md | |
| parent | Add ESP, aim, view and movement batch (diff) | |
| download | hl2h-8cd07c04efafcd3e927a21152d10e9fafea54517.tar.gz hl2h-8cd07c04efafcd3e927a21152d10e9fafea54517.zip | |
Transitions: per-trigger targets and 3D wireframe; FOV range fixes
- Each changelevel trigger now shows its own target map. The trigger whose
target is the map we came from is marked "<- map"; the forward one is
"-> map". No more appending one global previous-map line to every box.
- Draw the volume as a projected 8-corner / 12-edge wireframe with the tag
above its highest visible corner instead of a screen-space rectangle.
- Camera FOV is 40..140 (stock 75) and viewmodel FOV 20..120 (stock 54); 0 is
no longer allowed and old configs using 0 migrate to the stock value.
- Log the mat_monitorgamma readback via ICvar so we can tell whether the
command is rejected or the OS/compositor ignores the gamma ramp.
Diffstat (limited to 'CONTEXT.md')
| -rw-r--r-- | CONTEXT.md | 19 |
1 files changed, 13 insertions, 6 deletions
| @@ -234,11 +234,16 @@ vocabulary / decisions. | |||
| 234 | 234 | ||
| 235 | - The rendered camera FOV comes from `CViewRender::OnRenderStart` copying | 235 | - The rendered camera FOV comes from `CViewRender::OnRenderStart` copying |
| 236 | `C_BasePlayer::m_iDefaultFOV` into `default_fov`, so the cheat writes the | 236 | `C_BasePlayer::m_iDefaultFOV` into `default_fov`, so the cheat writes the |
| 237 | client netvar each tick when `Camera FOV > 0` (0 = stock 75). | 237 | client netvar every tick. The camera slider is 40..140 (stock 75) and the |
| 238 | viewmodel slider 20..120 (stock 54); 0 is not allowed (old configs with 0 | ||
| 239 | migrate to the stock value). | ||
| 238 | - `viewmodel_fov` and `mat_monitorgamma` are client cvars; applied through | 240 | - `viewmodel_fov` and `mat_monitorgamma` are client cvars; applied through |
| 239 | `ClientCmd` when their slider changes. Gamma is stored as x10 | 241 | `ClientCmd` when their slider changes. Gamma is stored as x10 |
| 240 | (`[view] gamma=22` = 2.2). Both live in the always-on | 242 | (`[view] gamma=22` = 2.2). The gamma value is read back through |
| 241 | `Camera / display` card (`[view] fov/vmfov/gamma`). | 243 | `ICvar::FindVar` and logged (`view: gamma request ..., cvar reports ...`) |
| 244 | to distinguish a rejected command from an OS gamma ramp the compositor | ||
| 245 | ignores. Both live in the always-on `Camera / display` card | ||
| 246 | (`[view] fov/vmfov/gamma`). | ||
| 242 | 247 | ||
| 243 | ## Map transitions | 248 | ## Map transitions |
| 244 | 249 | ||
| @@ -250,9 +255,11 @@ vocabulary / decisions. | |||
| 250 | interface comes from `IServerUnknown::GetCollideable`, slot 4). | 255 | interface comes from `IServerUnknown::GetCollideable`, slot 4). |
| 251 | - The current map name comes from the worldspawn (`entity 0`) model name | 256 | - The current map name comes from the worldspawn (`entity 0`) model name |
| 252 | (`maps/<name>.bsp`). The map before the last change is kept as | 257 | (`maps/<name>.bsp`). The map before the last change is kept as |
| 253 | `g_map_prev`, so the box label reads `-> next` and `prev <map>`. | 258 | `g_map_prev`, so each trigger's own target is drawn as `-> map`, and the |
| 254 | - Scanning runs at 4 Hz in the ESP draw; boxes are projected from their 8 | 259 | trigger whose target equals `g_map_prev` is marked `<- map` (the way back). |
| 255 | world corners and drawn as an orange outline with a 10 px label. | 260 | - Scanning runs at 4 Hz in the ESP draw; the 8 world corners are projected and |
| 261 | the 12 edges are drawn as a 3D wireframe, with a 10 px tag above the highest | ||
| 262 | visible corner. | ||
| 256 | 263 | ||
| 257 | ## Bones / ESP | 264 | ## Bones / ESP |
| 258 | 265 | ||
