本文へスキップ

BENNE:Phaser 4とTypeScriptで作られたWeb向け無料ポイントアンドクリック ゲームエンジン

abe ·

BENNEは、ブラウザで動くクラシックなポイントアンドクリック・アドベンチャーを作るための、MITライセンスの無料エンジンとVS Codeエディターです。機能、プロジェクトの始め方、itch.ioへの公開方法を紹介します。

VENOカバー:動詞バー付きのピクセルアート・アドベンチャー『Hank Steele』とBENNEデモのオフィス場面を傾けて配置し、「無料エンジン」「BENNE × Phaser 4」「ポイント&クリック」の文字を添えた画像

BENNEは、Web向けの無料ポイントアンドクリック ゲームエンジンです。 Phaser 4をベースにTypeScriptのコアで作られ、専用のVisual Studio Codeエディターも付属しています。部屋、動詞、インベントリ、会話を備えたクラシックなアドベンチャーを作り、ブラウザゲームとして公開できます。開発者はBennethonで、MITライセンスで公開されています。

何にでも「Look at(調べる)」をクリックしていたピクセルアートのアドベンチャーで育った人なら、BENNEが目指しているのはまさにその手触りを、現代のWebツールで再現することです。このガイドでは、中身、最初のプロジェクトの作り方、完成したゲームをitch.ioに公開する方法をまとめます。

BENNEの概要

内容 ポイントアンドクリック・アドベンチャー用のエンジン + VS Codeエディター
開発者 Bennethon
基盤 Phaser 4、TypeScript、Vite
ライセンス MIT(無料、オープンソース)
動作環境 モダンブラウザ全般。Windowsデスクトップ版は任意
最新リリース v0.1.3(2026年10月25日)、GitHub
最初の制作タイトル Hank Steele and the AI Apocalypse(ゲームジャム作品、無料)
公式サイト benne.games

BENNEのキーアート:ピクセル風のBENNEロゴと、Play画面を映したベージュのレトロなCRTモニター、画像:Bennethon

バージョン番号から分かる大事なことがあります。BENNEはまだ若いエンジンです。最初の0.1リリースは2026年10月に登場したばかりなので、バージョン間の変更は想定しておき、既存プロジェクトを更新する前にはリリースノートを読みましょう。

ポイントアンドクリック・エンジンがしてくれること

ポイントアンドクリック・アドベンチャーは画面上ではシンプルに見えますが、裏側には多くの仕組みが必要です。障害物をよけて歩くキャラクター、クリックできるホットスポット、動詞システム、アイテムを別のものに使えるインベントリ、分岐する会話、カットシーン、そしてセーブ。Phaserのような汎用エンジンはスプライト、入力、サウンドを提供しますが、こうしたアドベンチャーのルールまでは用意していません。

BENNEはその層をPhaser 4の上に追加します。公式ガイドによると、Adventure Game StudioとLucasArtsのSCUMMエンジンに影響を受けており、次の機能を備えています。

  • 部屋、キャラクター、インベントリ、会話をすぐ使える部品として用意。
  • 状態を追跡する会話ツリー。物語の進行に合わせて選択肢を出したり消したりできます。
  • 領域ごとの遠近スケーリングと色付け。キャラクターが画面の「奥」へ歩くと小さくなります。
  • インベントリのアイテムを対象に使う機能、カットシーン、画面フェード、キャラクターの追従、音声・オーディオ設定の保存。
  • 音楽、効果音、ボイス付き会話、動画カットシーン。すべて自動補完される名前付きアセットで参照します。
  • JSONで動くインターフェースシステム。9スライス画像、ボタン、スライダー、リストボックス、テキスト入力に対応。

遊べるBENNEデモ:本棚とレトロなPCのそばに立つピクセルアートの開発者が、オフィスの案内を申し出ている、画像:Bennethon

実際に試すこともできます。公式ホームページには、開発者のオフィスを歩き回れる小さなプレイアブルデモがあります。

動詞、操作スタイル、そして「こだわり」のルール

操作スタイルは game-config.json ファイルで定義します。つまり1つのエンジンで、LucasArts風の動詞バー(「Walk to」「Look at」「Use」…)を持つクラシックな9動詞ゲームも、左クリックで行動・右クリックで調べるモダンな2クリックゲームも、Sierra風やハイブリッドの構成も作れます。

BENNEで作られたHank Steele and the AI Apocalypse:タイムマシンの中に立つ用務員と、Move、Talk to、Use、Clean、Look at、Takeの動詞バー、画像:Bennethon

BENNEはあえていくつかの点で厳格にしており、それがプロジェクトの一貫性を保っています。

項目 BENNEのルール あなたにとっての意味
スプライト タグ付きアニメーションを含むAsepriteのスプライトシート アニメーションはAsepriteで作成。ほかの取り込み方法はロードマップ上にあります
テキスト ビットマップフォントのみ どの倍率でもくっきりしたピクセル文字
解像度 低い内部解像度、通常は320×240〜640×480 整数またはそれに近い倍率で拡大し、ピクセルアートをシャープに
ワールドの形 歩行可能エリア、ホットスポット、領域はポリゴンで指定 タイルマップやグリッドはなし。エディターで形を描きます
スクリプト BenneScriptの行は順番に実行 歩く動作やセリフが終わってから次の行が始まります

どんなジャンルにも使える自由なエンジンを求めているなら、これらの制約は窮屈に感じるかもしれません。レトロなアドベンチャーを素早く作りたいなら、多くの判断を省いてくれます。

最初のBENNEプロジェクトを始める方法

公式のインストールガイドが挙げる必要なものは3つです。Visual Studio Code 1.106以降、現行LTS版のNode.js、そして推奨としてスプライト制作用のAseprite。そのうえで:

  1. VS CodeでExtensionsビューを開き、BENNE Editor を検索してインストールします。Activity BarにBENNEのアイコンが表示されます。
  2. Command Paletteを開き、BENNE: Create New Game を実行します。
  3. テンプレートを選びます:9-verb(クラシックな動詞バー)、2-click(最小限の操作)、Blank(空。初心者には非推奨)。
  4. プロジェクト名を付けてフォルダーを選びます。拡張機能がファイルを生成し、npm install も自動で実行します。
  5. 新しいフォルダーを開き、npm run dev を実行するとホットリロード対応の開発サーバーが起動します。

自分のコンテンツはすべて src/game/ に置きます:部屋、キャラクター、インターフェース、インベントリ、会話、アセット、game-config.json。エンジン側のフォルダーはエディターが管理するので、エンジンを更新してもストーリーが上書きされることはありません。

BENNEのワークフロー図:ピクセルのスプライトシートがコードエディターに入り、ブラウザゲーム、ZIPパッケージ、デスクトップ版として出力される

BenneScriptはどんな見た目か

スクリプトはTypeScriptですが、BenneScriptを使うとアドベンチャーのロジックを台本のように書けます。Hank: `It's open!` のような1行でキャラクターがしゃべり、アクションごとに await を書く必要もありません。典型的なドアのスクリプトでは、walkToClicked() でプレイヤーをドアまで歩かせ、inventory.remove(items.key) で鍵を取り除き、効果音を鳴らし、wait(0.75) で待ってから、ドアのアニメーションを切り替えます。

公式ガイドからほかのコマンドもいくつか:

  • rooms.<name>.goTo() で別の部屋に移動。
  • cutscene(() => { … }) で、プレイヤーがEscでスキップできるシーンを囲みます。
  • .now、together(…)、background(…) で複数のアクションを同時に実行。
  • npm run lint でスクリプトのよくあるミスをチェック。

部屋、小道具、アイテム、サウンドは、コンテンツから生成される型付きの名前なので、エディターが自動補完し、タイプミスを早い段階で見つけてくれます。

BENNEのゲームをitch.ioとWindowsで公開する

Webゲーム開発者にとってBENNEが最も役立つのは公開の工程です。HTML5のアップロードでよくつまずく細かい部分を処理してくれます。

  1. ゲームフォルダーで npm run build:itch を実行します。型チェック、ビルド、itch.ioのファイル数とサイズ制限のチェックを行い、releases/<package-name>-itch.zip を書き出します。
  2. npm run preview で本番ビルドをテストします。dist/index.html を直接開いても、実際のWebホスティングと同じようには動きません。
  3. itch.ioでZIPを HTML プロジェクトとしてアップロードし、「playable in the browser」(ブラウザでプレイ可能)にチェックを入れます。index.html はすでにZIPのルートにあります。
  4. 任意:npm run build:windows を実行すると、Electronを同梱したポータブルなWindows用ZIPができます。プレイヤーは解凍して .exe を実行するだけで、Node.jsは不要です。Windows用として別ファイルでアップロードしましょう。

ガイドにある実用的な注意点が2つあります。Windowsビルドは署名されていないので、まず実機のWindows PCでテストすること。そしてブラウザ版とデスクトップ版のセーブは別々に保存されること。スクリプトでは game.isDesktop でどちらのビルドが動いているか分かるので、ブラウザでは「Quit」(終了)ボタンを隠す、といった使い方ができます。

Hank Steele:14日で作られたBENNEゲームの姿

BENNEで作られた最初のゲームは Hank Steele and the AI Apocalypse です。AIが支配した10年後の未来へ飛ばされた用務員が、家に帰るためにタイムマシンを修理するコメディ・アドベンチャーです。Bennethonはテーマ「Delayed Consequences」(遅れてやってくる結果)のゲームジャム「$110 Adventure Game Challenge」のために、14日でこの作品を作りました。itch.ioで無料公開されており、ブラウザまたはWindowsで遊べ、プレイ時間は約30分です。

日差しの差し込むピクセルアートの廊下で、非常口サインと掃除ロボットのそばで時間科学者と話すHank Steele、画像:Bennethon

itch.ioのページには、ゲームのコード、グラフィック、サウンドにAIツールの支援を受けたと記載されています。BENNE自体はAIを必要とせず、Asepriteで全フレームを手描きすることもできます。

BENNEを試すべき人

  • 少しコードが書けるアドベンチャー好き: テンプレートとBenneScriptのおかげで、パズルやジョークに集中できます。
  • Webゲーム開発者: 読んで拡張できるPhaser 4 + TypeScriptのプロジェクトと、すっきりしたitch.io向けエクスポートが手に入ります。
  • ゲームジャムのチーム: 14日で作られたジャム作品がすでにあるので、短いスケジュールも現実的です。

タイルベースのワールドや高解像度のアート、あるいは長期の商用プロジェクト向けに今すぐ安定した1.0エンジンが必要な場合は、あまり向いていません。

よくある質問

BENNEは無料ですか?

はい。公式サイトではBENNEはMITライセンスとされているので、自分のゲームに使う場合も含めて無料で利用できます。

BENNEを使うにはPhaserの知識が必要ですか?

いいえ。部屋、動詞、インベントリ、会話はBENNEが処理してくれます。TypeScriptを知っていると役立ち、エンジンを拡張したい場合はPhaserの知識が便利です。

BENNEのゲームはスマホで動きますか?

BENNEのビルドはモダンブラウザ全般で動きます。ただしエンジンはマウスでのポインティングを前提に設計されているので、モバイル対応をうたう前にスマホでタッチ操作をテストしてください。

BENNEのゲームの解像度はどれくらいがいいですか?

ガイドでは、通常320×240〜640×480の低い内部解像度を使い、整数倍で拡大してピクセルアートをシャープに保つことを勧めています。

BENNEのゲームをitch.ioにアップロードするには?

npm run build:itch を実行し、releases フォルダーのZIPをHTMLプロジェクトとしてアップロードして、ブラウザでプレイ可能に設定します。

もっと詳しく知るには?

まずはBENNE公式ガイド、公開ガイド、GitHubのソースコードから始めましょう。

関連記事

ゲームを読み込み中…

VENOGAME / PLAYBOOK

マイアリーナ

この端末に保存。アカウント不要。

ハートを押して自分だけのコレクションを。