docs: update scratch.md with Phase 0 results
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
e57350ded3
commit
ff402e64c9
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
**Read this first on any handoff.** Living document: update it whenever state changes, before ending a turn.
|
**Read this first on any handoff.** Living document: update it whenever state changes, before ending a turn.
|
||||||
|
|
||||||
Last updated: 2026-08-01 · Currently: **Phase 0, starting**
|
Last updated: 2026-08-01 · Currently: **Phase 0 complete. Phase 1 next.**
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -60,11 +60,34 @@ None block Phase 0. Q4 lands in Phase 1, Q5 + verbosity in Phase 2.
|
|||||||
- Open questions → `docs/04-open-questions.md`
|
- Open questions → `docs/04-open-questions.md`
|
||||||
- Decisions + category coverage proof → `docs/05-decisions.md`
|
- Decisions + category coverage proof → `docs/05-decisions.md`
|
||||||
|
|
||||||
### In progress — Phase 0 (bootstrap)
|
### Done — Phase 0 (bootstrap) · commit `5c581ed`
|
||||||
Tasks #1–#5 in the task list. Nothing implemented yet; no game files modified yet.
|
- `git init`, pristine tree committed and tagged **`vanilla-0.4.2`** (commit `bbb70d0`,
|
||||||
|
1838 files, `accessibility/` deliberately excluded so the tag is genuinely clean).
|
||||||
|
- love2talk vendored to `accessibility/vendor/love2talk/` — see `VENDORED.md` there
|
||||||
|
for the five local modifications.
|
||||||
|
- **DLL elevation problem solved.** `Tolk.dll` etc. live in `accessibility/lib/` and
|
||||||
|
are loaded by *absolute path* via `love.filesystem.getSource()`, with
|
||||||
|
`SetDllDirectoryA` pointing at that folder so Tolk can find its own screen-reader
|
||||||
|
clients. No admin rights, no copying into `Program Files`. Tracked in git via a
|
||||||
|
`!accessibility/lib/*.dll` un-ignore.
|
||||||
|
- `accessibility/speech.lua` — pcall-guarded, frame-queued, `logToConsole = true`.
|
||||||
|
- `accessibility/init.lua` — patch registry + `states.switch` / `states.update` hooks
|
||||||
|
+ startup self-test.
|
||||||
|
- `accessibility/stateNames.lua` — spoken names for all 28 states.
|
||||||
|
- **One line added to `main.lua`.** Nothing else in the game touched.
|
||||||
|
|
||||||
### Next after Phase 0
|
**Verified working** via `lovec.exe .`:
|
||||||
Phase 1 = console history + speech + review keys. Highest value, lowest risk.
|
```
|
||||||
|
[accessibility] TTS initialised
|
||||||
|
[accessibility] TTS: available
|
||||||
|
[accessibility] speech channel: yes
|
||||||
|
[speech]! Main menu
|
||||||
|
```
|
||||||
|
|
||||||
|
### Next — Phase 1: console history + review keys
|
||||||
|
Wrap `console.print`, keep our own unbounded history (the game's expires after 3s),
|
||||||
|
mirror its `(x3)` coalescing, add review keys. Needs Q4 answered (auto-speak policy)
|
||||||
|
but a sensible default can ship first.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -83,7 +106,22 @@ Phase 1 = console history + speech + review keys. Highest value, lowest risk.
|
|||||||
|
|
||||||
| File | Change | Why |
|
| File | Change | Why |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| *(none yet)* | | |
|
| `main.lua` | +1 line: `require("accessibility").initialize()` after `console.prepare()` | Sole mod entry point. Placed there because templates, keybindings, `states.setup()` and the console canvas are all ready by then, and it's before the first `states.switch()`. |
|
||||||
|
|
||||||
|
Verify this list is exhaustive at any time with:
|
||||||
|
```
|
||||||
|
git diff --stat vanilla-0.4.2 -- . ':!accessibility' ':!.gitignore'
|
||||||
|
```
|
||||||
|
Currently: `main.lua | 1 +`.
|
||||||
|
|
||||||
|
### How to run
|
||||||
|
```
|
||||||
|
cd "D:/code/Sulphur Memories Alchemist 0.4.2 sanctified"
|
||||||
|
"C:/Program Files/LOVE/lovec.exe" .
|
||||||
|
```
|
||||||
|
`lovec` (not `love`) gives the console, where `[speech]` lines mirror every
|
||||||
|
utterance — speech is verifiable from the log, not only by ear. `!` after
|
||||||
|
`[speech]` means the utterance interrupted.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user