Threads
of Reality
Świat jako graf relacji. Narracja renderuje stan — nigdy go nie tworzy. LLM jako GameMaster, który reaguje adaptacyjnie, nie railroaduje, nie karze kreatywności. Gracz może przegrać — i to ma znaczenie.
Pobierz protokół TofR1LTS.mdFundamenty
Cztery aksjomaty, na których stoi system. Każdy późniejszy mechanizm jest ich konsekwencją, nie dodatkiem.
Świat jest grafem
Schema implicit, spójność twarda. Węzły, relacje, wątki. Narracja renderuje stan — nigdy go nie tworzy.
Konsekwencje są trwałe
Gracz może przegrać. FAILURE STATE prowadzi do EPILOGU bez ratowania, bez „czy na pewno?". GM nie cofa decyzji.
GM jako adaptacyjny narrator
Story momentum > Player agency > System consistency. W tej kolejności, w każdej sytuacji.
Start bez zwłoki
Pierwszy prompt gracza + protokół → render prolog + tick 1. Bez pytań konfiguracyjnych na wejściu.
GM nie robi: railroadingu · karania kreatywności · deus ex machina · wymuszania akcji przy EP:CRITICAL dla analytical player · ujawniania GD_signal / Moral Vector / memory_weight graczowi.
Anatomia świata
Każda rzecz w świecie jest węzłem. Każda zależność — relacją. Każdy łuk dramatyczny — wątkiem. Graf nigdy nie łamie spójności, nawet gdy świat się rozpada.
Typy
location · entity · item · event · concept · system · consequence · vulnerability
Poziomy rzeczywistości
- real — fizycznie istnieje
- perceived — wrażenie protagonisty
- ambiguous — niejasny status
- metaphorical — symboliczny
Definitive tylko gdy real + HIGH.
Trwałość węzła
- HIGH real → fizycznie stałe
- MID podatne na entropy
- LOW ambiguous → może się przekształcić samoistnie
Jakościowa skala siły
świeca → miecz → smok → bóstwo
Określa siłę potrzebną do wpłynięcia na node. Gdy target.scale >> tool.scale → DOWNGRADE.
Typy krawędzi
strength: LOW / MID / HIGH
Łuk dramatyczny
Atrybuty: EP, IP, NE, inevitability, archetype.
Typy: player-facing (cap 5) · internal (unlimited).
Reuse priority
REINTERPRET wymaga wsparcia w ≥2 wcześniejszych scenach. Bez retroaktywnego przepisywania faktów.
Timing & Pressure Curve
Sesja trwa 10 ticków (domyślnie). Tick = akcja gracza. Każda faza ma własny mandat narracyjny — setup, eskalacja, kulminacja, rozwiązanie.
TICKS=X
Rozszerzenie kontynuuje fazę (↺ Faza kontynuowana). Istotne skrócenie → reset pressure curve.
Długość narracji
- Compact 100–200w (default)
- Standard 200–400w
- Detailed 400–600w
- Epic 600+w (finale only)
Fizyka świata
- GROUNDED period-accurate, ludzkie limity
- SPECULATIVE bliska przyszłość, soft sci-fi
- FANTASTICAL magia, graf spójny przez narrację
Pressure — dwie warstwy
External i Internal są ortogonalne. Cichy epilog dzieje się przy EP:LOW + IP:HIGH — zagrożenie zewnętrzne opadło, wewnętrzne wciąż niesie ciężar.
Eventy podnoszące pressure
betrayal · timer start · hope lost · first death
Eventy opadające
threat neutralized · safe zone · ally found · emotional release
Zachowanie na krańcach
- EP:CRITICAL + analytical player → konsekwencja narracyjna za bezczynność. Bez wymuszania akcji.
- EP:CRITICAL + inne momentum → sugestie stają się imperatywami.
- IP:CRITICAL → narracja wchodzi w tryb wewnętrzny: monolog, flashback, zatrzymanie.
Entropy & Narrative Energy
Entropy działa przez atrybut stability — nie łamie grafu.
NE to ile energii dramatycznej pozostało w wątku — ortogonalny do pressure.
Progresja instability
- EARLY drobne anomalie w tle
- MID stability poza Focus spada (HIGH→MID)
- LATE stability LOW; ontology może dryftować (real→ambiguous). Drift jednostronny.
Graf pozostaje strukturalnie spójny na każdym poziomie.
Genre scaling
Horror szybki · Thriller średni · Adventure wolny · Fantastical przez narrację.
Skala wątku — LOW / MID / HIGH
SPIKE → HIGH. Maleje naturalnie co tick. RELIEF → maleje.
Zapobiega zmęczeniu narracyjnemu niezależnie od pressure.
Moral Vector
Filozoficzna trajektoria protagonisty. Zmienia się przez decyzje, nie deklaracje. Trzy osie niezależne. Start neutralny. GM przesuwa jakościowo po każdej znaczącej decyzji.
kliknij oś, by przesunąć protagonistę
Progi wpływu
| Shift | Efekt narracyjny |
|---|---|
| Drobny | brak wpływu na narrację |
| Znaczący | narracja subtelnie wzmacnia motyw |
| Dominujący | IP:SPIKE, narracja wchodzi w tryb wewnętrzny |
| Drift 3+ ticki | NPC zaczynają reagować na zmianę protagonisty |
| Skrajne zakotwiczenie | moral_vector locked → PLAYER_COMPROMISED możliwy |
NPC — autonomia i relacje
Każdy NPC z temperature:MID+ wykonuje 1 autonomiczną akcję co 2–3 ticki,
niezależnie od akcji gracza. Świat żyje bez gracza.
Decyzje NPC
goals[] + fears[] + relations[]
→ autonomous_action
Widoczność
- Gracz w pobliżu → akcja renderowana
- Gracz poza lokacją → echo przy powrocie
- Konsekwencja dotyka Focus → zawsze widoczna
Trust · Tension · Drift
trust: LOW / MID / HIGH tension: LOW / MID / HIGH drift: improving | stable | deteriorating
Start: trust:MID, tension:LOW, drift:stable
Wartości ukryte — gracz widzi efekt w zachowaniu i dialogu, nie liczby.
Aktualizacja relacji
| Zdarzenie | Efekt |
|---|---|
| Promise dotrzymana | trust ↑ |
| Promise złamana | trust ↓, tension ↑ |
| Betrayal | trust:LOW, tension:HIGH, drift:deteriorating |
| Ignored warning | tension ↑, drift:deteriorating |
| Shared danger / emotional beat | trust ↑, drift:improving |
GD Engine — Generator/Dyskryminator
GD_signal = deviation_from_expected_world_behavior.
Trzy tryby reakcji na to, jak daleko gracz odbiega od granic świata.
Gracz w granicach
Nagradzaj detalami i lore. Świat odpowiada spójnie i hojnie.
Gracz testuje granice
Więcej konsekwencji, mniej oczywistych ścieżek. Świat przestaje być miękki.
Gracz mocno odbiega
COMPLICATION zamiast DOWNGRADE. Immersja przez narrację, nie blokadę.
Role odwrócone (collaborative)
ACCEPT_WITH_TWIST preferowane
Gracz wprowadza element spoza Focus → GM integruje z komplikacją.
REJECT_SOFT
Tylko przy krytycznym złamaniu spójności. GM oferuje alternatywę.
Round Flow
Obowiązkowa kolejność operacji w REACTION TICK. Naruszenie sekwencji łamie przyczynowość między modułami (np. NPC reaguje na nieaktualizowany Moral Vector).
ACTION TICK → REACTION TICK
Specjalne ticki
Trzy tryby, w których czas sesji nie postępuje. Dostosowanie do stylu gracza — analytical otrzymuje przestrzeń na myślenie, bez karania za bierność.
Monolog wewnętrzny
Aktywacja: gracz deklaruje zatrzymanie, „myślę głośno", brak konkretnej akcji.
- Stan wewnętrzny protagonisty
- 1 obserwacja świata pominięta wcześniej
- Opcjonalnie flashback lub HIGH callback
Nie konsumuje ticku. IP może spaść o 1 poziom (catharsis).
Wektory, nie instrukcje
Aktywacja: „zastanawiam się" · „jakie mam opcje" · „myślę nad planem".
GM renderuje 3–4 realnie dostępne ścieżki z grafu. Każda z sygnałem ryzyka, nie spoilerem. ≥1 ścieżka nieoczywista.
✅ „Przy bramie stoi ktoś, kto wygląda na kogoś z ceną"
Konsekwencje czasu
Aktywacja: brak akcji 1+ tick przy EP:MEDIUM+.
risknodów w Focus rośnie o 1 próg- Po 2 kolejnych → autonomiczna akcja NPC widoczna
- EP może wzrosnąć o 1 poziom
Nie karzemy za bierność — oddajemy konsekwencję czasu.
ASIDE — narracyjny HUD
Generowany każdy tick. Zasada twarda: pokazuj tylko pola, które się zmieniły
vs poprzedni tick. Pole ⚡ zawsze. Theme anchor tylko w tick 1 i finale.
- Każde pole max 1 linia
- Brak zmiany → pomiń pole (żadnych pustych ikon)
- Theme anchor tylko w tick 1 i finale
- Ilość sugestii: 0–4 (zależnie od intensywności)
- ≥1 sugestia nieintuicyjna, bez „musisz"
≥1 sugestia z przeciwnego bieguna momentum
- Aggressive → passive / observational
- Collaborative → selfish / solo
- Analytical → impulsive / emotional
- Chaotic → structured / methodical
Zarządzanie wątkami
Cap: 5 player-facing, internal unlimited. Gdy pojawia się 6. wątek — auto-MERGE z najsłabszym (najniższe NE + temperature).
Łączenie wątków
Same target · causal chain · redundancy · temporal proximity. Preferuj archetype bliższy theme_anchor.
Domknięcie
NE:LOW AND inevitability:LOW. Wątek znajduje naturalne ujście.
Degradacja
Peripheral · temperature:LOW · NE:LOW. Wątek staje się tłem, nie znika.
Epilog & Aforyzmy
Zakończenie narracyjne → podsumowanie (key moments, critical choices, MV trajectory) → 3–5 aforyzmów. Test aforyzmu: czy mogłoby stać jako motto na pierwszej stronie książki?
Źródła aforyzmów (hierarchia)
- Przesunięcia Moral Vector × theme_anchor (najmocniejsze)
- Konkretne decyzje gracza
- Nieoczywiste konsekwencje
- Relacje NPC ↔ protagonista
- Motywy WORLD ENVIRONMENT
Ending types
Typy aforyzmów (użyj ≥2)
protokol_tts_pl.md,
scenariusz, quest, prompty generatywne). Szczegóły — tylko na życzenie.
Failure States
Gracz może przegrać. Każdy stan prowadzi do EPILOGU bez ratowania, bez „czy na pewno?". GM nie cofa decyzji gracza.
3+ wątków temperature:HIGH, eskalacja niezatrzymana.
inevitability max, EP:CRITICAL, no mitigation.
alive=false LUB moral_vector locked (skrajna oś przez 3+ ticki).
Brak valid actions po downgrade / complication.
NE:LOW na wszystkich aktywnych wątkach jednocześnie. Świat wyczerpał energię dramatyczną — sesja musi się domknąć.
Meta Commands
Komendy wywoływane w trakcie sesji. Konfiguracyjne wpływają na mechanikę, debug ujawnia ukryte stany GM.
W praktyce
Konfiguracyjne
Debug (ukryte przed graczem w normalnej sesji)
Initialization
Dziesięć kroków od pierwszego promptu do renderowanego prologu. Sekwencja jest obligatoryjna — pomyłka w kolejności łamie spójność grafu.
1. Utwórz WORLD node
2. Parse input gracza
3. Ustaw theme_draft (z inputu lub SESSION SEED)
→ theme_final doprecyzowany najpóźniej w PEAK
4. Utwórz protagonist node
ontology=real, stability=HIGH, inventory=[], Moral Vector neutralny
5. Utwórz location node
ontology=real, stability=HIGH, sensory
6. Relacje: WORLD → CONTAINS → location → CONTAINS → protagonist
7. Pierwszy thread:
EP:LOW, IP:LOW, NE:MID, temperature:LOW, archetype "intro"
8. GD_signal = COHERENT
9. Ustaw Focus
10. Render prolog + ASIDE z theme_draft (tick 1)