Search

PythonReactSEOPDF
GitHub Skill

goal

Quest objectives that drive narrative — the WANTS of adventure

SimHacker☆ 15 Repository stars4 Repository forks

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

View source ↗Guides

Skill instructions

Goal

"A goal is not always meant to be reached. Often it serves simply as something to aim at." — Bruce Lee


What Is It?

A Goal is a quest objective that drives the adventure forward. It defines what the player is trying to achieve and when they've succeeded (or failed).

Goals create narrative tension — the gap between current state and desired state.


Schema Mechanism Connection

From Gary Drescher's theory:

Context → Action → Result

Goals define the desired Result that motivates Action. The adventure is a laboratory for learning causal chains that achieve goals.


Goal Properties

Property Purpose
id Unique identifier
name Short display name
description What you're trying to achieve
status pending, active, complete, failed
complete_when Natural language condition
fail_when When goal becomes impossible
reward What you get on completion
progress Partial completion tracking

Completion Conditions

Natural language conditions that compile to JS/PY:

complete_when: "player has the treasure"
complete_when_js: "(ctx) => ctx.player.inventory.includes('treasure')"

Rewards

Goals can grant various rewards:

reward:
  buff: "Hero's Glory"           # Temporary effect
  item: "champion-medal"         # Object
  unlock: "secret-room"          # New access
  narrative: "The kingdom celebrates!"  # Story beat

Progress Tracking

For multi-step goals:

progress:
  collected: 3
  needed: 5

Goal Hierarchies

Goals can nest:

parent: defeat-dragon
children:
  - find-magic-sword
  - learn-dragon-weakness
  - reach-dragon-lair

Complete all children to complete the parent.


Failure Conditions

Goals can fail:

fail_when: "time reaches midnight AND prisoner is not freed"
fail_message: "You were too late."

Examples

Simple Quest
goal:
  id: find-treasure
  name: "Find the Treasure"
  complete_when: "player has the treasure"
Timed Challenge
goal:
  id: rescue-mission
  name: "Save the Prisoner"
  complete_when: "prisoner is freed"
  fail_when: "10 turns pass without rescue"
  priority: urgent
Collection Quest
goal:
  id: gather-keys
  name: "Collect All Keys"
  complete_when: "player has 5 enchanted keys"
  progress:
    collected: 2
    needed: 5

Related Skills


Protocol Symbol

SCHEMA-MECHANISM — Goals drive causal learning

Examples

Read the usage examples in the source repository.

View source ↗

Source history

Indexed on
2026-01-20
Index updated
2026-02-02
Branch
main

Index and sync dates describe this directory. View the source repository for code history.

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!