Communitygithub.com

Angelicismo01/isaackdb

🩸 Isaac モッド作成の知識ベース & Codex スキル。Repentance+ / REPENTOGON 対応。📚 ソースリンク付き Lua/XML API · 🛠️ 67 パターン · 🎨 PNG/ANM2 制作ワークフロー · 🧪 静的バリデータと回帰テスト。

isaackdb とは?

これは『Binding of Isaac: Repentance+』および REPENTOGON 環境向けのモッド開発を支援する専門スキルです。開発者はソースコードにリンクされた正確な Lua/XML API レコード、67 種類の実装パターン、PNG/ANM2 のグラフィックス制作ワークフロー、そして静的バリデータと回帰テストを利用できます。スキルはタスクを段階的にルーティングし、モッドの事前検査、ターゲットビルドの識別、適切なインデックス(シンボル、コールバック、エイリアス、エラー)の検索、そして実装前に仕様作成を要求します。また、バニラと REPENTOGON のレコードを区別し、検索結果の正確性を担保するためにソースのピン管理を徹底します。API を捏造せず、未確認のものは「UNVERIFIED」と報告するよう厳格に定められており、信頼性の高いモッド開発を支援します。

対応~Claude Code✓Codex CLI~Cursor
npx skills add Angelicismo01/isaackdb

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Isaac モッド作成ワークフロー

Binding of Isaac の API 名がもっともらしく聞こえるからといって、決してでっち上げてはいけません。 もっともらしい名前は根拠になりません。検索してください。もし見つからなければ、UNVERIFIED と報告してください。

タスクのルーティング

  1. 編集前にユーザーのモッドを調査する: metadata.xml、main.lua、コンテンツ XML、インクルード、依存関係のコピー、ターゲット/バージョンメモ。
  2. ターゲットビルドと、REPENTOGON/ライブラリが利用可能かどうかを特定する。指定がない場合は、リポジトリのピンを調査のベースラインとしてのみ使用する。ユーザーのインストール済みランタイムがそのピンと一致する、または将来互換性があると主張してはならない。
  3. リクエストをスコープ、所有権、ライフタイム、協力プレイ、リソース、依存関係、互換性、パフォーマンス、テスト要件に変換する。ボス/キャラクター/ステージまたは大規模システムの場合は、まず簡単な仕様を書く。ビジュアルが変更される場合は、必要なアセットを棚卸しし、グラフィックス制作ルール を読む。アートは必要なときだけ作成し、最終的な PNG/ANM2 作業の前にシート/アニメーション契約を定義する。
  4. indexes/tasks.json、エイリアス、次に正確な シンボル を検索する。knowledge/INDEX.md と、関連ドメインについてのみ生成されたソースリンク付きレコードを読む。
  5. REPENTOGON が有効な場合は、バニラと REPENTOGON の両方のレコードを検索する。そのターゲットに対しては、明示的な変更レコードが優先される。
  6. コールバックのセマンティクス、バージョンの精度、競合/問題、実現可能性、ローカル協力プレイ、状態のライフタイム、XML/リソース、パフォーマンス、互換性を確認する。
  7. 依存関係ラベル付きのパターンを選択する。スキャフォールドとゴールデンな静的リファレンスを区別する。runtime_tested: false はゲームプレイ検証済みを意味しない。
  8. 最小限のアーキテクチャ互換の変更を実装する。既存のモジュール、ID、コールバック、ヘルパー、スタイルを再利用する。プロジェクトを理解する前に、main.lua を置き換えて作成しない。
  9. python scripts/validate_kb.py --project <mod-folder> --ecosystem <vanilla|repentogon> と、prompts/ 配下の関連する監査を実行する。
  10. 依存関係、使用した正確な証拠、検証の制限、対象となるゲーム内テストを報告する。

精度が必要な場合の検索方法:

  • 正確な API/列挙型/XML については indexes/symbols.json を検索する。
  • 引数、フィルター、戻り値、REPENTOGON の変更については indexes/callbacks.json を検索する。
  • 自然言語の用語については indexes/aliases.json を検索する。
  • 症状ベースのルーティングには indexes/errors.json を使用する。
  • 異常な作業の前には knowledge/feasibility.md を使用する。
  • 正確なセマンティクスについては、無視されている .cache/upstreams/<source>/ チェックアウト内のレコードの source_path を読み、その HEAD をレジストリピンと照合する。ずれがある場合は、git show <pin>:<path> でピンされたファイルを読み、新しいチェックアウトをピンされた証拠として扱ってはならない。ファイルが存在しない場合は、キュレーションされた安全な更新ワークフローを実行し、新しいピンを受け入れる前にソースのずれを確認する。

現在のネイティブな REPENTOGON およびメンテナンスされているライブラリのオプションを比較するまでは、ステージ、カスタム体力、ミニマップ、設定、実績、または完了システムを再実装してはならない。IsaacScript/TypeScript またはライブラリを通常の Lua に混在させてはならない。ただし、プロジェクトですでに使用している場合、またはユーザーが受け入れた場合はこの限りではない。

譲れないチェック

  • コールバックの引数、フィルター、戻り値の型、キャンセル/置換の動作、および REPENTOGON がバニラのコールバックを変更するかどうかを確認する。
  • 正規化されたレコードでクラスメンバーのスペルとバージョンバッジを確認する。
  • 現在のレコードまたは抽出されたローカルリソースから、エンティティのタイプ/バリアント/サブタイプと XML 属性を確認する。数値 ID やリソースパスを推測してはならない。
  • プレイヤーステータスとファミリア数にはキャッシュコールバックを使用する。文書化されている場合は明示的なコールバックフィルターを使用する。測定され、狭くフィルターされていない限り、フレーム/レンダリングコールバックでの部屋全体のスキャンを避ける。
  • プレイヤーの所有権とローカル協力プレイを明示的にする。プレイヤーインデックスが 0 であると想定してはならない。
  • セーブデータは JSON セーフにする。ランの開始後にのみロードし、文書化されたライフサイクルポイントで保存する。古いまたは部分的セーブをデコードするときはデフォルトを保持する。
  • インストール済みのゲームアセットをコピーまたは変更してはならない。派生パスメモは許可される。
  • グラフィックスはゲームアセットとして扱う: 実際の PNG クロップ、ANM2、Lua/XML、アニメーションイベントに一致させる。プレースホルダーは開発中に限り、最終版ではない。ゲーム内のビジュアルテストが観察されない場合は、visual_runtime_tested: false を記録する。

タスクに必要なものだけを読む

信頼できるリファレンスに要求された API が含まれていない場合は、インデックス化されたリビジョンでは未確認または存在しないと報告する。代替をでっち上げてはならない。

関連スキル