Add elementary survival question bank
This commit is contained in:
@@ -886,7 +886,7 @@ Target deliverable: A small group can join a server, spawn into one biome, gathe
|
|||||||
- [x] Add player-facing feedback that explains why an action failed or produced poor results. Added failed-action and poor-result feedback rules to `Docs/KnowledgeAndSkillFoundation.md`, requiring short messages that say what happened, name one likely cause, offer one useful next step, avoid blame, and avoid revealing hidden formulas.
|
- [x] Add player-facing feedback that explains why an action failed or produced poor results. Added failed-action and poor-result feedback rules to `Docs/KnowledgeAndSkillFoundation.md`, requiring short messages that say what happened, name one likely cause, offer one useful next step, avoid blame, and avoid revealing hidden formulas.
|
||||||
- [x] Define accessibility rules for the learning system: hints, retries, readable wording, no hard lockout from basic survival, and non-punitive practice paths. Added learning accessibility rules to `Docs/KnowledgeAndSkillFoundation.md`, covering reusable hints, retries, readable wording, non-color-only warnings, no lockout from basic survival, safer practice paths, and diminishing returns to prevent exploit loops.
|
- [x] Define accessibility rules for the learning system: hints, retries, readable wording, no hard lockout from basic survival, and non-punitive practice paths. Added learning accessibility rules to `Docs/KnowledgeAndSkillFoundation.md`, covering reusable hints, retries, readable wording, non-color-only warnings, no lockout from basic survival, safer practice paths, and diminishing returns to prevent exploit loops.
|
||||||
- [x] Define the first subject content format: topic, concepts, difficulty tier, prerequisite concepts, in-game effect, practice action, and source note. Added a compact subject content schema to `Docs/KnowledgeAndSkillFoundation.md` with `topic`, `concepts`, `difficulty_tier`, `prerequisite_concepts`, `in_game_effect`, `practice_action`, and `source_note`, plus a fire-clearance example suitable for later data assets.
|
- [x] Define the first subject content format: topic, concepts, difficulty tier, prerequisite concepts, in-game effect, practice action, and source note. Added a compact subject content schema to `Docs/KnowledgeAndSkillFoundation.md` with `topic`, `concepts`, `difficulty_tier`, `prerequisite_concepts`, `in_game_effect`, `practice_action`, and `source_note`, plus a fire-clearance example suitable for later data assets.
|
||||||
- [ ] Add a small MVP question bank for elementary survival knowledge.
|
- [x] Add a small MVP question bank for elementary survival knowledge. Added six elementary survival question records to `Docs/KnowledgeAndSkillFoundation.md` for fire clearance, potable water, cold exposure, shelter drainage, bleeding care, and fiber identification, each with answer options, correct answer, and practical feedback.
|
||||||
- [ ] Define when deeper questions should matter: quality improvements, safer work, complex crafting, teaching others, and advanced branches.
|
- [ ] Define when deeper questions should matter: quality improvements, safer work, complex crafting, teaching others, and advanced branches.
|
||||||
- [ ] Add design notes for avoiding exploit farming and rote memorization.
|
- [ ] Add design notes for avoiding exploit farming and rote memorization.
|
||||||
- [ ] Add persistence requirements for knowledge, skill experience, learned concepts, failed attempts, and tutorial state.
|
- [ ] Add persistence requirements for knowledge, skill experience, learned concepts, failed attempts, and tutorial state.
|
||||||
|
|||||||
@@ -411,3 +411,65 @@ source_note: Open flame near dry fuel and wind can spread beyond the campfire.
|
|||||||
|
|
||||||
Format rule: content records should be small enough to review in source control
|
Format rule: content records should be small enough to review in source control
|
||||||
and explicit enough to become data assets later.
|
and explicit enough to become data assets later.
|
||||||
|
|
||||||
|
## MVP Elementary Survival Question Bank
|
||||||
|
|
||||||
|
The first question bank is intentionally small and elementary. These questions
|
||||||
|
support optional checks, camp review, and future teaching objects.
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: fire.clearance.001
|
||||||
|
topic: fire.clearance
|
||||||
|
question: Why clear dry brush away from a campfire?
|
||||||
|
answers: A) It lowers fire-spread risk. B) It makes the fire colder. C) It makes rain stronger.
|
||||||
|
correct: A
|
||||||
|
feedback: Open flame, dry fuel, and wind can spread fire beyond the campfire.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: water.potable.001
|
||||||
|
topic: water.potable
|
||||||
|
question: What is the safest first assumption about unknown water?
|
||||||
|
answers: A) It may need treatment. B) It is always safe. C) It restores warmth.
|
||||||
|
correct: A
|
||||||
|
feedback: Water access and safe drinking water are not always the same thing.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: exposure.cold.001
|
||||||
|
topic: exposure.cold
|
||||||
|
question: What helps most when cold wind and rain are lowering body temperature?
|
||||||
|
answers: A) Shelter, warmth, dry conditions, and rest. B) Sprinting forever. C) Dropping all food.
|
||||||
|
correct: A
|
||||||
|
feedback: Wind, rain, fatigue, and nightfall can make exposure dangerous.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: shelter.drainage.001
|
||||||
|
topic: shelter.drainage
|
||||||
|
question: Why avoid placing shelter in a drainage path?
|
||||||
|
answers: A) Water can pool or flow through it. B) It makes tools sharper. C) It prevents all wind.
|
||||||
|
correct: A
|
||||||
|
feedback: Stable, drained ground improves shelter reliability.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: injury.bleeding.001
|
||||||
|
topic: injury.bleeding
|
||||||
|
question: What should you do before heavy work while bleeding?
|
||||||
|
answers: A) Treat bleeding and rest if possible. B) Ignore it and sprint. C) Stand in smoke.
|
||||||
|
correct: A
|
||||||
|
feedback: Bleeding and exhaustion make further mistakes and injury more likely.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
id: resource.fiber.001
|
||||||
|
topic: resource.fiber
|
||||||
|
question: Why is fiber useful early?
|
||||||
|
answers: A) Binding, panels, and shelter parts. B) It replaces all water. C) It stops night.
|
||||||
|
correct: A
|
||||||
|
feedback: Fiber is a basic binding material for primitive crafting and shelter.
|
||||||
|
```
|
||||||
|
|
||||||
|
Question-bank rule: elementary questions should be short, practical, and tied to
|
||||||
|
actions the player can immediately recognize in the MVP.
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Verify the MVP elementary survival question bank is documented."""
|
||||||
|
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
|
||||||
|
ROOT = Path(__file__).resolve().parents[1]
|
||||||
|
DOC = ROOT / "Docs" / "KnowledgeAndSkillFoundation.md"
|
||||||
|
ROADMAP = ROOT / "AGRARIAN_DEVELOPMENT_ROADMAP.md"
|
||||||
|
|
||||||
|
REQUIRED = {
|
||||||
|
DOC: [
|
||||||
|
"## MVP Elementary Survival Question Bank",
|
||||||
|
"id: fire.clearance.001",
|
||||||
|
"id: water.potable.001",
|
||||||
|
"id: exposure.cold.001",
|
||||||
|
"id: shelter.drainage.001",
|
||||||
|
"id: injury.bleeding.001",
|
||||||
|
"id: resource.fiber.001",
|
||||||
|
"Question-bank rule:",
|
||||||
|
],
|
||||||
|
ROADMAP: [
|
||||||
|
"[x] Add a small MVP question bank for elementary survival knowledge.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> None:
|
||||||
|
missing: list[str] = []
|
||||||
|
for path, snippets in REQUIRED.items():
|
||||||
|
text = path.read_text(encoding="utf-8")
|
||||||
|
for snippet in snippets:
|
||||||
|
if snippet not in text:
|
||||||
|
missing.append(f"{path.relative_to(ROOT)} missing {snippet!r}")
|
||||||
|
if missing:
|
||||||
|
raise SystemExit("FAILED: " + "; ".join(missing))
|
||||||
|
print("OK: elementary survival question bank is documented.")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
Reference in New Issue
Block a user