ewrogers/megadev-skills

megadev-planning

Plan a Sega CD/Mega CD game using Megadev, with CPU responsibilities, memory lifetimes, Word RAM ownership, disc loading and hardware budgets.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/ewrogers/megadev-skills --skill megadev-planning

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Megadev planning

Turn the user's game idea into a small, testable plan. Keep their setting, art, audio, mechanics and controls. Teaching examples illustrate hardware decisions; they are not game designs to copy.

Start with what must work

Inspect the project before proposing a new architecture. Identify its target regions, current renderer/audio services, resident code, module loader and evidence from previous tests. Ask about unknown player-facing requirements only when they change feasibility. Use provisional estimates for the rest and label them.

Choose the smallest milestone that proves the main risk: for example, loading the next room without interrupting input or audio. A planning task does not require a new ROM, Docker installation or emulator configuration unless that proof is part of the request.

Make the constraints visible

Read hardware budgets for sourced capacities and the distinction between shared base-console limits and Mega CD additions. Treat physical ceilings, framework reservations, project allowances and measured usage as different things.

Plan these together:

  • Main/Sub responsibilities and communication. A second CPU is not a transparent second thread for the Main frame loop.
  • Resident code/data, replaceable modules and temporary buffers. Include C startup, stacks, BIOS space, packed input and decoded output at their peak overlap.
  • Word RAM mode and owner during each phase. Keep code and callbacks reachable while memory changes hands.
  • VDP tables, patterns, palettes, crowded scanlines and upload time. Extra RAM does not increase VRAM or sprite limits.
  • Audio residency and disc access. Decide what happens to CD-DA while reading data, and protect active PCM sample data from refill/replace operations.
  • Late/failed loads and save-media failures, when relevant. A plan needs a fallback, not an assumed perfect drive.

Use the workflow to choose trade-offs and define proof tasks. Build/API implementation belongs with megadev-project or the relevant system work; do not import SGDK APIs, mapper assumptions or XGM drivers.

Produce an editable plan

Copy the useful parts of game-plan.md into the project. Explain the decision and its uncertainty in plain language. Avoid making the user tune every theoretical limit before there is a measured reason.

For arithmetic, adapt budget-example.json and run:

sh
python3 scripts/budget_check.py /path/to/budget.json

Read the budget format before editing its phase/ownership model. The helper checks only declared allocations and demands; PASS does not certify a layout, performance, a handshake or physical-console behavior. Its optional load calculation uses explicit assumptions and always says so.

Close with the next executable proof, a pass criterion, and what still needs an emulator or real hardware. Inspect the selected Megadev source before promising an unfamiliar API; the reference baseline is evidence, not a substitute for the installed version.

タスクに関連する項目

同じリポジトリから

関連する Skills

すべての Skills