Skip to content

. - #36

Open
Damian-I wants to merge 1399 commits into
1-bluetooth-lock-system-implementationfrom
main
Open

.#36
Damian-I wants to merge 1399 commits into
1-bluetooth-lock-system-implementationfrom
main

Conversation

@Damian-I

@Damian-I Damian-I commented Mar 9, 2025

Copy link
Copy Markdown
Collaborator

No description provided.

cliffe and others added 30 commits April 30, 2026 11:13
Co-authored-by: Copilot <copilot@github.com>
…nd updating object placements in room configurations

Co-authored-by: Copilot <copilot@github.com>
…estigation objectives, gameplay instructions, and regulatory considerations

Co-authored-by: Copilot <copilot@github.com>
…hors, and learning objectives; enhance scenario context and gameplay instructions; clarify key concepts and investigation strategies; improve regulatory frameworks and reflection questions; streamline hints and tips for better user experience.

Co-authored-by: Copilot <copilot@github.com>
…th a rollback option for the previous preview model.
Implements a fully scenario-driven drag-and-drop document reconstruction
puzzle. Players sort shuffled paper strips into reading order (with optional
180° rotation) to reveal passwords, PINs, or contact details hidden in
improperly disposed documents.
Each NPC message is now preceded by a 1 s typing indicator, with a 400 ms
breath between consecutive messages. Previously all messages in a burst
appeared simultaneously inside a single 500 ms setTimeout. Both
continueStory() and handleChoice() are updated; all other logic is unchanged.

Timing is controlled by TYPING_DELAY_MS and INTER_MESSAGE_MS constants at
the top of each function for easy tuning.
…ted demographic cohorts and the impact of misinformation. Update casualty projections and operational methods to reflect a more nuanced understanding of panic dynamics and emergency response overload. Adjust NPC dialogue to emphasize the calculated nature of the attack and its implications for vulnerable populations. Rephrased to avoid triggering phrases.
…uffer cache with LRU eviction and prefetching capabilities. Introduce a new configuration option for buffer cache size. Update MusicController to handle prefetching and aborting of audio loads, ensuring efficient memory usage and smoother transitions between tracks.
…icController and updating the music widget to include a voice volume slider. Implement audio routing for TTS through the voice gain node, ensuring consistent volume control across different audio sources. Adjust CSS for the music widget to accommodate new features and improve UI responsiveness.
…t to improve user experience. Adjust music, SFX, and voice volume levels for better balance and clarity.
mg-06: Add network diagram pinboard to Evidence Archive for sis…
mg-c: Combination Padlock minigame for BreakEscape
cliffe added 30 commits August 21, 2026 17:46
Scenario design review surfaced a half-applied character rename and one
legacy NPC file that was made runnable but never polished. Fixes:

- Rename the NPC to match its in-game name: id robert_chen -> robert_vance
  (NPC, phone NPC, KO global, meet_ task id, #speaker/#complete_task tags,
  storyPaths, ink filenames git-mv'd). All player-visible "Chen" -> "Vance".
  Internal chen_* state vars kept (synced consistently, not the id).
- Give the Level 1 keycard on the peaceful path (#give_item:keycard) so
  befriending Vance no longer silently fails to hand it over.
- KO-aware closing debrief: gate Vance's lines on robert_vance_ko, with a
  medics alternate and a debrief_end_ko closer.
- Delete the unreachable "Conversation 2" block (stale Level-2 hand-over).
- Population figure 400,000 -> 240,000; one third-person choice -> first person.
- Task submit_privesc_flag -> submit_http_analysis_flag (matches its flag);
  remap stale puzzle_graph_aim/unlocks_aim ids to real aimIds; correct the
  briefing's staging-tags TODO (aims stage via unlockCondition, as m01).

Verified: 10/10 ink compile, loopcheck clean (hub + both debrief paths +
phone + briefing), validator schema/wiring/geometry pass.
- Add # influence_increased feedback on every Vance trust gain (m01/m02
  convention), so building rapport now registers on screen.
- Rework the opening briefing into a question-hub: topic branches funnel
  back to the hub and the only exit runs through mission_stakes, so the
  Architect / Social Fabric coordination beat can no longer be skipped
  (previously the timeline branch reached the objectives without it).
- Drop redundant post-choice "You:" echoes (chen_early_reveal, Voltage
  fight/arrest) per the no-echo NPC convention.
- Keep Vance at his post: reword "meet me in the Control Room" and the
  phone "out of the building" line so his dialogue matches his on-screen
  sprite in the operations office.
- Polish: correct the stale attack_mechanism_known comment, remove the
  dead voltage_choice global, comment the deliberate arrest-branch
  voltage_captured exception, rename the ROBERT CHEN file header, and
  soften Voltage's operative-name line to avoid an out-of-order mis-cue.

Recompiled 10/10, loopcheck clean, validator passes.
Rewrite TESTING_WALKTHROUGH.md into the walkthrough-scenario skill format:
16-step critical path across the five sequenced aims, a global-variable
state table, a puzzle-graph reconciliation table (all gating nodes
covered), and edge-case / KO-safety notes. Reflects the reworked briefing
hub and the Vance/Voltage dialogue fixes.
Advance the early-draft mission to a complete, canon-aligned state across
all ten alignment dimensions. Planned via mission-alignment-plan; see
ALIGNMENT_PLAN.md.

- Unblock the validator (17 ink errors) and make the mission completable:
  flag rewards via set_global, targetFlags wiring, unique evidence items,
  evidence_level reachable, torres_identified set, Torres reveal fixed.
- Stage five sequenced aims with spoiler-safe titles; add missionConclusion
  + bond_visualiser, non-replaying briefing, and an event-driven music block.
- Retarget stakes to ENTROPY acquiring the National Emergency-Services
  Dispatch Network key material; add the Architect's casualty projection and
  a live Recruiter phone antagonist.
- Rebuild Agent HaX as a progress-gated support hub with exposure-gated
  field guides (incl. the new Bludit CMS guide).
- Replace CYOA combat with real hostility + a post-KO fate choice; add KO
  resilience to every named NPC.
- Reuse notes/keycard sprites for evidence and badges; fix latent RFID
  key_id gaps that left server_hallway and torres_office unopenable.
- Regenerate dungeon graph and add TESTING_WALKTHROUGH.md.
…d terminal

Follow the m01 pattern: the drop-site is now the flag-station object where
the player submits the flags they actually captured on the Bludit VM, rather
than a scripted NPC terminal that faked typing flags and narrated the
exploitation steps.

- Remove the scripted dropsite_terminal_npc and delete m05_dropsite_terminal.ink;
  its flavour documents and fake flag-submission dialogue are gone. Flag task
  completion is already server-authoritative via targetFlags; architect_approval_confirmed
  is set by the flag4 handler eventMapping; Agent 0x99's flag beats come from
  handler eventMappings. Nothing referenced the removed NPC.
- Rename the flag-station to "SAFETYNET Drop-Site Terminal" to match m01 and
  point its observations at the on-VM intel.
- Drop the orphaned traversal_files_found / root_access_achieved globals.
- Add puzzle_graph_unlocks to the three access items so the dungeon graph maps
  every locked door; validator now reports zero warnings.
- Update TESTING_WALKTHROUGH.md and regenerate the dungeon graph.
The closing act was gated behind two ink VARs (torres_identified,
final_choice) that were assigned in ink but never bridged to game
globals with #set_global, so Torres never revealed and the debrief
never fired — the mission was unwinnable despite a green validator.

- Bridge torres_identified in Patricia's ink (reveals Torres, triggers
  the confrontation and recruiter beats)
- Bridge final_choice on all five endings at their terminal points so
  the closing debrief and credits fire once, after the confrontation
- setVisible the hidden Torres sprite on reveal for the combat path
- Add a KO-safe fallback: handler sets torres_identified at evidence>=5
  if Patricia is down, so the finale can't be stranded by a KO
- Remove dead #complete_task:stop_final_exfiltration tags (no such task)
The opening briefing set player_approach, knows_full_stakes and handler_trust
as ink VARs only, so the closing debrief (reading the globals) saw defaults and
a whole layer of personalisation never fired. Bridge them with #set_global.

Also: add influence feedback tags across all four NPCs and collapse the parallel
rapport scalars onto the <npc>_influence convention; finish lore_collected wiring
and repoint the debrief success tiers onto the live evidence_level; give the
Recruiter's deal a real accept path (was dead code); drop an undeclared
set_global; add a confront_stance debrief callback; harden a pre-existing
torres_outcome starvation.
Reflect the bridged briefing globals (player_approach, knows_full_stakes,
handler_trust), the evidence_level-driven debrief success tier, lore_collected
wiring, the confront_stance callback, and the Recruiter's new accept path.
Regenerated dungeon graph alongside.
Budget papers, ransom demand, insider bribe, and ENTROPY's fake
'recovery service' ledger all quoted USD despite St. Catherine's being
a UK NHS trust. Converts to GBP throughout and reframes the ransom as
a flat £150,000 payable in Bitcoin at the prevailing rate, rather than
a fixed BTC quantity pinned to a stale exchange rate.
Drop the 'national security'/black-budget-government-agency framing.
SAFETYNET now answers to no state, has no jurisdiction, legal cover,
extraction rights, or diplomatic protection -- its cover stories are
the only thing holding an operation together, not classified executive
orders. Updates the official designation, mission statement, shadow
war section, and related organisation/character/world-building pages
to match.
Follow-up to the SAFETYNET retcon in the shared lore hub, lab intro,
and m03 dialogue -- 'national security', 'federal investigation', and
'FBI/CISA/NSA' lines replaced with language consistent with SAFETYNET
having no state backing.
Substantial ink and scenario.json.erb rework across the analyst,
Elena Volkov, trader, opening briefing, agent 0x99 phone, and Satoshi
confrontation conversations, plus a testing walkthrough and VM
integration doc.
Replace the branching crisis-path structure (corporate/data/infrastructure/
supply-chain + Director Morgan) with a single mission built around four
named NPCs (Elena Rodriguez, Jake Morrison, James Mercer, Thomas Park).
Retire the old stage-0 option planning docs and session/completion
summaries in favour of a contract, alignment plan, mission design and
delegation notes, and a testing walkthrough. Regenerates the dungeon
graph and updates README/SOLUTION_GUIDE to match.
person-chat TTS hardcoded the trigger NPC's voice for every line, so a
conversation with several line-prefixed speakers showed the right portraits
but read all lines in one voice. Resolve the TTS speaker (and the next-line
preload) from the parsed block instead, guarded to only override when the
speaker is a registered NPC with its own voice block; otherwise fall back to
the trigger NPC, leaving single-NPC scenarios unchanged.
Rebuild scenario.json.erb to the current schema (was an unrenderable early
draft): 9-room SAFETYNET HQ on real room types and sprites, staged spoiler-safe
aims, bond_visualiser conclusion, event-driven music, narrator + per-NPC voices,
redundant lock chain, and the such_a_git VM wired via safetynet_gitlist_server
flags (flagRewards -> flagN_submitted, HaX eventMappings deriving the evidence
globals). Full 12-file ink set: an investigation with real autonomy -- Director
Netherton's briefing, three branching suspect interviews with alibis and an
accusation mechanic, a HaX support hub with exposure-gated field guides, the
confrontation (hard-canon stakes; the mole's philosophy argued and rejected),
and a branching debrief. KO-resilient throughout; the fate is set at a terminal.

Adds CONTRACT, SOLUTION_GUIDE, TESTING_WALKTHROUGH and the dungeon graph, and
establishes Nightshade + the Mission 8 canon in the Insider Threat Initiative
bible entry.
Add Agent 0x47 'Nightshade' as a trusted technical colleague, alongside the two
familiar SAFETYNET faces (Director Netherton and Agent HaX), to the openings of
m02-m06 (and Nightshade's PIN-cracker analysis to the m02 debrief) using the
multi-NPC line-prefix format. Nightshade is helpful and liked throughout, with
no tell -- in m05 he ironically briefs the player on how to catch an insider by
the exact behaviour that later exposes him. All co-speakers are hidden,
registry-only NPCs (male_scientist / male_spy) carrying no task or gating global.
Spoiler discipline held: no pre-m08 mission names the mole or the cell.

Includes the incorporation plan (engine verification + per-mission notes).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants