ewrogers/sgdk-skills

sgdk-rpg

Implement SGDK RPG party stats, equipment, inventory, abilities, status effects, turn order, battle resolution and progression.

Zobacz źródło

Jak używać

  1. Skopiuj polecenie instalacji i sprawdź źródła przed instalacją we własnym środowisku agenta.
  2. W oryginale sprawdź wymagane narzędzia, dane dostępowe i obsługiwane środowiska.
  3. Opisz dane wejściowe i oczekiwany rezultat; porównaj wynik ze źródłami.
npx skills add https://github.com/ewrogers/sgdk-skills --skill sgdk-rpg

Przed rozpoczęciem

  • Instalacja nie obejmuje subskrypcji modelu, limitu API ani uprawnień do plików.
  • Gwiazdki i instalacje pokazują aktywność, a nie niezależny test jakości lub bezpieczeństwa.
Oryginalny dokument Skill

Treść z repozytorium z zachowaniem nagłówków, przykładów, kodu, tabel, linków i obrazów.

SGDK RPG

Build the game's rules as ordinary C, then connect them to SGDK's display, input, audio and storage services. SGDK has no built-in party, battle or item API. Preserve the project's architecture and chosen combat design.

Start with the rules that matter

Establish party size, battle participants, targeting, action costs, turn/time policy, progression and what defeat restores. Turn-based, active-time and action RPGs need different clocks and interruption rules; do not turn one Lab's model into a requirement for every RPG. Match the project's setting, artwork, music and pacing. The example's coastal fantasy is illustrative.

Choose one complete loop to prove: prepare a party, enter an encounter, commit an action, resolve its effects, apply the outcome once, then resume exploration. Keep those rules independent of rendering where useful. Do not introduce a universal game framework to demonstrate a small combat system.

Use the relevant reference

derived stats, inventory transactions, targeting, turn order, status duration, seeded randomness, rewards and defeat recovery.

readable targeting, palette/VRAM/DMA budgets, sound ownership and checkpoints.

with exploration, equipment, consumables, three encounters and a boss.

Other installed skills are optional: sgdk-ui for shared menu/text foundations, sgdk-dialogue for conversations, sgdk-levels for streamed exploration, sgdk-ai for roaming enemies, sgdk-save for storage formats, and sgdk-performance for measured bottlenecks. The Lab builds on its own.

Keep the important contracts visible

  • Keep definitions in ROM and mutable party/battle state bounded in RAM. Choose

capacities for this game's content and report exhaustion; a console budget does not mandate a particular party size, level cap or battle formation.

  • Derive equipment stats from base definitions and equipped IDs. Avoid repeatedly

adding/removing bonuses from already-modified values.

  • Validate the actor, target, item stock and MP before changing state or RNG.

A rejected action must not consume resources or take a turn.

  • Specify when order is sampled, which dead/removed participants are skipped,

and when status durations decrease. Distinguish turns from display frames.

  • Separate committing an action from presenting its result. Message pacing,

target markers and animation must not apply damage or rewards again.

  • Save semantic IDs and explicit bytes, not pointers, C struct images, sprite

handles or transient battle effects. Validate a complete record before replacing the current campaign.

Use ewrogers/sgdk:latest, pulled before validation. Verify unfamiliar APIs in its actual headers and source; the references were checked with SGDK 2.11 and GCC 16.2.0. Treat the Lab's functions as game code, not SGDK API names.

Prove the loop

Test missing MP/stock, invalid and fallen targets, healing caps, revival, equipment changes, status expiry, skipped turns, deterministic ties/RNG, zero-survivor defeat and exactly-once rewards. Check cancellation and message acknowledgment without replaying an action. Exercise corrupt/interrupted checkpoint recovery separately from battle rules.

Compile the actual adapters/resources in release and debug. Execute portable rules on host and base M68000 when possible. Then playtest complete encounters: targets should be distinct, attack messages readable, UI unobscured, and audio and pause consistent. Host tests or ROM compilation cannot establish frame-time headroom, VDP timing, SRAM retention or artistic quality on physical hardware.

Powiązane zadania

z tego samego repozytorium

Więcej Skills

Wszystkie Skills
ewrogers
Społeczność

sgdk-ai

Implement enemy behavior in SGDK games with patrol/chase/attack states, sight cones, target selection, bounded pathfinding and staggered updates. Use when enemies see through walls, get stuck, switch targets erratically, return stale paths or cause frame spikes while searching.

instalacje
1
GitHub Stars
0
Aktualizacja
20 paź
ewrogers
Społeczność

sgdk-assets

Prepare, import and troubleshoot Mega Drive graphics, palettes, spritesheets, tiles, maps, fonts and audio resources with SGDK ResComp in Docker. Use for .res files, palette or tile budgets, broken imports, sprite cutting and asset pipeline changes.

instalacje
1
GitHub Stars
0
Aktualizacja
20 paź
ewrogers
Społeczność

sgdk-best-practices

Write or review SGDK C for defined arithmetic, clear module boundaries, resource lifetimes, safe queued transfers and interrupt sharing. Use for implementation quality and project code organization, rather than toolchain setup, game design or performance profiling alone.

instalacje
1
GitHub Stars
0
Aktualizacja
20 paź
ewrogers
Społeczność

sgdk-cartridge

Plan and implement large SGDK cartridges with Sega/SSF bank switching, FAR resources, pinned shared code and audio, and safe SRAM access. Use when a ROM exceeds the linear address window, stage assets live in separate banks, a FAR pointer becomes invalid, or saving interferes with banked content.

instalacje
1
GitHub Stars
0
Aktualizacja
20 paź