<< All versions

Skill v1.0.1

currentAutomated scan100/100
simhacker/moollm/probability

1 files

──Details
PublishedOctober 1, 2026 at 09:05 PM
Content Hashsha256:9a28f286dc3c52f3...
Git SHA0e7dacba3a26
Bump Typepatch
Compare with v1.0.0
──Files
Files (1 file, 4.2 KB)
SKILL.md4.2 KBactive
SKILL.md · 194 lines · 4.2 KB

version: "1.0.1" name: probability description: "Motto: The LLM is the dice. It narrates the outcome." license: MIT tier: 1 allowed-tools:

  • read_file

related: [buff, character, adventure] tags: [moollm, probability, randomness, narrative, game]


Probability Protocol

Success calculation from stats — no dice, just narrative odds.
"The LLM is the dice. It narrates the outcome."

Core Principle

No Random Number Generators

The LLM evaluates probability narratively:

  • Read character stats
  • Consider context and buffs
  • Weigh stakes and story
  • Narrate an appropriate outcome
Not: roll d20, add modifier, compare to DC
But: evaluate odds, consider context, narrate result

Why No Dice?

Traditional RPGs use dice for:

  • Uncertainty
  • Fairness
  • Excitement

The LLM achieves these through:

  • Narrative tension
  • Consistent stat evaluation
  • Story-appropriate outcomes

Methods

CALCULATE - Compute Odds

yaml
invoke: CALCULATE
params:
action: "What's being attempted"
actor: "Who's trying"
context: "Relevant factors"
output:
probability: "85%"
factors:
- "High DEX (+20%)"
- "Slippery surface (-15%)"
- "Practiced move (+10%)"

RESOLVE - Determine Outcome

yaml
invoke: RESOLVE
params:
probability: "85%"
stakes: "Fall into pit if failed"
output:
outcome: "success"
narrative: "Your practiced leap carries you across..."

Probability Factors

FactorEffect
StatsBase capability
BuffsTemporary bonuses
DebuffsTemporary penalties
EquipmentTools for the job
ContextEnvironmental factors
StakesWhat's at risk
StoryNarrative appropriateness

Outcome Spectrum

OutcomeWhenNarrative Style
Critical SuccessVery high odds + good contextExceptional, exceeds expectations
SuccessOdds favorAccomplishes goal
Partial SuccessClose oddsAchieves with cost or complication
FailureOdds againstDoesn't achieve, but no disaster
Critical FailureVery low odds + bad contextMemorable disaster

Calculation Example

yaml
action: "Pick the lock"
actor: "Thief (DEX: High, Lockpicking: Expert)"
context:
- Lock complexity: Medium
- Time pressure: Yes
- Tools: Quality picks
calculation:
base: 70% # Expert lockpicking
modifiers:
- DEX high: +15%
- Medium lock: +0%
- Time pressure: -10%
- Good tools: +5%
final: 80%
likely_outcome: "Success, but took longer than hoped"

Narrative Integration

The LLM doesn't just compute odds — it narrates:

Player: "I try to jump across the chasm."
CALCULATE:
- Character is wounded (-20%)
- Has jumping buff (+15%)
- Chasm is wide (-10%)
- High stakes (death)
Final: 55% success
RESOLVE at 55%:
"You gather yourself, ignoring the pain in your leg.
The jump is further than you'd like, but the
strength enchantment pulses through you. You leap—
and your fingers catch the far edge. You haul
yourself up, gasping. Made it."

Stakes Influence

Higher stakes → more dramatic narration:

StakesSuccess FeelsFailure Feels
LowRoutineMinor setback
MediumSatisfyingComplication
HighTriumphantSerious trouble
ExtremeLegendaryCatastrophic

State

yaml
probability_state:
# Usually stateless - calculated per action
last_calculation:
action: "Pick lock"
probability: 80%
outcome: "success"

Integration

SkillIntegration
buffBuffs modify probability
characterStats source
adventureAction resolution
scoringDifficulty affects score

Example Session

> ATTACK the goblin with my sword
CALCULATE:
Actor: Fighter (STR: High, Sword: Trained)
Target: Goblin (Small, Quick, Distracted)
Context: Narrow corridor, dim light
Base: 65%
STR High: +15%
Trained: +10%
Goblin quick: -10%
Goblin distracted: +10%
Dim light: -5%
Final: 85%
RESOLVE at 85%: Success
"Your blade catches the goblin as it turns.
It squeals and stumbles backward, wounded."
← v1.0.0All versions