Home

nagibato

a tiny simulator of "MAGICARD BATTLE"

概略

昔アーケードで稼働していた『MAGICARD BATTLE』(https://madoka-magica-mg.sega.jp/)というカードゲームのシミュレータです. どちらかというと, MAGICARD BATTLEのルールや仕様に関する「動く記録資料」を作ることを目的としています.

☆ GitHub Pagesで試遊できます! → https://lenuser-code.github.io/nagibato/nagibato.html

ファイル構造

クラス・メソッド一覧はdocsをご覧ください。

  • nagibato.html - ゲームを実行するHTMLファイル
  • nagibato.js - メイン部分
  • stdgam.js - いわゆるゲームエンジン部分
  • stdtask.js - 頻出するタスクは抽出してここに置くつもり
  • cardlist.js - 全カードデータ(実質的にはJSONファイル)
  • card.js - カードに関連するオブジェクトの実装 (プレイヤー側スキルも含む)
  • enemy.js - 敵スキルの実装, および敵ステータスの管理
  • model.js - プレイヤーおよび敵を表すクラスを実装
  • QB.js - システムメッセージ, およびチュートリアルに関する実装
  • edit.js - デッキ編集画面
  • config.js - 設定画面
  • battle.js - バトル画面
  • storage.js - localStorageに関する機能の実装

ちなみに全カードデータはEverNoteでJSONファイルとして公開しています(各フィールドの説明付き): https://lite.evernote.com/note/2f492959-5c8b-85a8-cab4-281cfebac469

Acknowledgement

This simulator uses ZzFX (https://github.com/KilledByAPixel/ZzFX). I would like to express my gratitude to the ZzFX project and its community.


2026 @lenuser
---

QB.js

システムメッセージを表示するオブジェクトの実装を行う. また, これらのオブジェクトを生成するヘルパー関数も用意する.

Author:
  • lenuser

View Source QB.js, line 1

battle.js

card.js

config.js

namsspace configを定義し, その中にconfigScene, configScene2を実装する.

Author:
  • lenuser

View Source config.js, line 1

edit.js

model.js

プレイヤーおよび敵を表すクラスを実装する. ここで定義するのはデータの集合としてのPlayer/Enemyであり, スキルなどは別のファイルで定義する.

Author:
  • lenuser

View Source model.js, line 1

nagibato.js

ゲームの初期化処理と画像・音声の準備, およびタイトルページの実装を行う.

Author:
  • lenuser

View Source nagibato.js, line 1

stdgam.js

namespace stdgamの定義と, ZzFXのZzFX Micro Codeのインポートを行う.

ZzFX - Zuper Zmall Zound Zynth (by Frank Force) https://github.com/KilledByAPixel/ZzFX?tab=readme-ov-file

stdgamの実装が主要な作業内容だが, 他に適切な方法がなかったので ZzFX Micro Codeもこのファイルに記述する.

Author:
  • lenuser

View Source stdgam.js, line 1

stdtask.js

namespace stdtaskを定義し, よく使うタスクの雛形を事前に用意しておく.

Author:
  • lenuser

View Source stdtask.js, line 1

storage.js