diff options
| -rw-r--r-- | FIX_PLAN.md | 18 |
1 files changed, 13 insertions, 5 deletions
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, | |||
| 812 | triggerbot), `items.cpp` and `projectiles.cpp`. Cross-unit helpers are declared | 812 | triggerbot), `items.cpp` and `projectiles.cpp`. Cross-unit helpers are declared |
| 813 | in `esp_internal.h`; nothing changed behaviourally. | 813 | in `esp_internal.h`; nothing changed behaviourally. |
| 814 | 814 | ||
| 815 | ### Batch 9 — settings table | ||
| 816 | |||
| 817 | `config_table.cpp` holds one descriptor per persisted setting: section, key, | ||
| 818 | type, pointer, default and clamp range. `config_save()`, `config_load()` and | ||
| 819 | `config_reset_defaults()` are generated from it, replacing the hand-written | ||
| 820 | writer, the ~350-line parser and the duplicated `[view]` clamp block. Section | ||
| 821 | and key names are unchanged, so existing config files still load. This needs a | ||
| 822 | save → reload → reset round-trip in-game. | ||
| 823 | |||
| 815 | ### Known remaining work | 824 | ### Known remaining work |
| 816 | 825 | ||
| 817 | Deliberately deferred, with reasons: | 826 | Deliberately deferred, with reasons: |
| @@ -821,11 +830,10 @@ Deliberately deferred, with reasons: | |||
| 821 | slot plus a way to get the networkable from a raw entity pointer, or a | 830 | slot plus a way to get the networkable from a raw entity pointer, or a |
| 822 | cached pointer→index map. Not worth the risk for a hot path that fires a few | 831 | cached pointer→index map. Not worth the risk for a hot path that fires a few |
| 823 | times per second. | 832 | times per second. |
| 824 | - **P3-2 declarative settings table** — the last item. It replaces the | 833 | - **P3-2 GUI binding** — the settings table now drives persistence (save, |
| 825 | six-place edit per option (header, definition, save, load, reset, GUI) with a | 834 | load, reset); `build_cards()` still binds widgets to globals directly. Folding |
| 826 | descriptor table. Unlike the other refactors this one can silently break | 835 | the GUI metadata into the same table is the only remaining piece, and it is |
| 827 | config persistence, so it needs a save → reload → defaults round-trip in-game | 836 | cosmetic: no setting is duplicated in code any more, only in the GUI layout. |
| 828 | after landing. | ||
| 829 | 837 | ||
| 830 | Nothing in the two batches has been exercised in-game yet. The smoke matrix in | 838 | Nothing in the two batches has been exercised in-game yet. The smoke matrix in |
| 831 | §5 is the next step: direct map load 10× (P0-1), menu → map → GUI close (P2-5), | 839 | §5 is the next step: direct map load 10× (P0-1), menu → map → GUI close (P2-5), |
