mcpField
P
probability

probability

github.com/simhackerクリエイティブ・メディア6044 回インストール3 日前に更新
リポジトリ

probability について

LLM を使うロールプレイングゲーム向けの物語的な確率プロトコルです。乱数生成器を使わず、キャラクターの能力値や状況、危険度を評価して結果を決め、物語として描写します。

主な機能

  1. 01能力値と状況から確率を評価
  2. 02バフ、デバフ、装備を考慮
  3. 035段階の行動結果を判定
  4. 04危険度に応じた描写
  5. 05buff、character、adventure、scoring スキルとの連携

活用シーン

  1. 01キャラクターの行動を判定
  2. 02一時的な強化と環境要因を考慮
  3. 03危険度に応じた場面の結果を描写

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/simhacker/moollm --skill probability

インストール後、Claude Code で/probabilityを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

CARD.yml
skill-snitch-report.md
README.md
GLANCE.yml

詳細

Probability Protocol

ステータスから成功率を算出します。サイコロは使わず、物語に基づいて確率を判断します。 「サイコロはLLMです。結果を語るのもLLMです。」

基本原則

乱数生成器は使いません

LLMは物語に基づいて確率を評価します。

  • キャラクターのステータスを確認します
  • 状況や強化効果を考慮します
  • リスクと物語の展開を考慮します
  • 適切な結果を描写します
Not: roll d20, add modifier, compare to DC
But: evaluate odds, consider context, narrate result

なぜサイコロを使わないのか?

従来のRPGでは、次のためにサイコロを使います。

  • 不確実性
  • 公平性
  • 興奮

LLMは次の方法でこれらを実現します。

  • 物語上の緊張感
  • 一貫したステータス評価
  • 物語にふさわしい結果

方法

CALCULATE - 確率を計算する
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 - 結果を決定する
invoke: RESOLVE
params:
  probability: "85%"
  stakes: "Fall into pit if failed"
output:
  outcome: "success"
  narrative: "Your practiced leap carries you across..."

確率に影響する要素

要素効果
ステータス基本能力
強化効果一時的なボーナス
弱体効果一時的なペナルティ
装備任務に役立つ道具
状況環境要因
リスク失う可能性のあるもの
物語物語上の妥当性

結果の段階

結果条件描写のスタイル
クリティカル成功非常に高い確率+良好な状況期待を超える、並外れた成果
成功成功の可能性が高い目標を達成する
部分的成功成功と失敗の可能性が拮抗代償や問題を伴いながら達成する
失敗失敗の可能性が高い目標は達成できないが、大事には至らない
クリティカル失敗非常に低い確率+悪い状況忘れられない大惨事

計算例

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"

物語への統合

LLMは確率を計算するだけではなく、結果を描写します。

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."

リスクによる影響

リスクが高いほど、描写はより劇的になります。

リスク成功時の感触失敗時の感触
低いつもどおり小さな挫折
中満足感がある問題が発生する
高勝ち誇るような達成感深刻な事態
極端伝説的破滅的

状態

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

統合

スキル統合方法
buff強化効果が確率を変化させます
characterステータスの情報源
adventure行動の解決
scoring難易度がスコアに影響します

セッション例

> 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."

コメント