From 7ddd5c680a28b32c0ba864699864e8b6b090d664 Mon Sep 17 00:00:00 2001 From: salmonik Date: Fri, 6 Nov 2026 16:30:21 +0100 Subject: docs: record the settings table in the plan --- FIX_PLAN.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'FIX_PLAN.md') diff --git a/FIX_PLAN.md b/FIX_PLAN.md index 757d93e..5b0f59b 100644 --- a/FIX_PLAN.md +++ b/FIX_PLAN.md @@ -812,6 +812,15 @@ caches, session reset), `combat.cpp` (aimbot, silent aim, melee, spread, triggerbot), `items.cpp` and `projectiles.cpp`. Cross-unit helpers are declared in `esp_internal.h`; nothing changed behaviourally. +### Batch 9 — settings table + +`config_table.cpp` holds one descriptor per persisted setting: section, key, +type, pointer, default and clamp range. `config_save()`, `config_load()` and +`config_reset_defaults()` are generated from it, replacing the hand-written +writer, the ~350-line parser and the duplicated `[view]` clamp block. Section +and key names are unchanged, so existing config files still load. This needs a +save → reload → reset round-trip in-game. + ### Known remaining work Deliberately deferred, with reasons: @@ -821,11 +830,10 @@ Deliberately deferred, with reasons: slot plus a way to get the networkable from a raw entity pointer, or a cached pointer→index map. Not worth the risk for a hot path that fires a few times per second. -- **P3-2 declarative settings table** — the last item. It replaces the - six-place edit per option (header, definition, save, load, reset, GUI) with a - descriptor table. Unlike the other refactors this one can silently break - config persistence, so it needs a save → reload → defaults round-trip in-game - after landing. +- **P3-2 GUI binding** — the settings table now drives persistence (save, + load, reset); `build_cards()` still binds widgets to globals directly. Folding + the GUI metadata into the same table is the only remaining piece, and it is + cosmetic: no setting is duplicated in code any more, only in the GUI layout. Nothing in the two batches has been exercised in-game yet. The smoke matrix in §5 is the next step: direct map load 10× (P0-1), menu → map → GUI close (P2-5), -- cgit v1.2.3