Suika2とは
Suika2は、
ビジュアルノベル、ノベルゲーム、
アドベンチャーゲームを制作するためのスクリプトエンジンおよび制作ツールです。Windows、macOS、
Linuxといったデスクトップ環境だけでなく、ウェブブラウザ、iOS、Androidでも動作するゲームを開発できます。この多様なプラットフォーム対応が、Suika2の大きな特徴の一つです。
Suika2の文法
Suika2のシナリオファイルは、プレーンテキストで記述された日本語の小説を基本としています。特別な記述方法を覚える必要はなく、普段文章を書くようにゲームのシナリオを記述できます。演出には、@記号で始まる「コマンド」を使用します。例えば、グラフィックの表示やサウンドの再生などを簡単に行うことができます。複雑なロジックは、拡張スクリプト言語であるWMS(Watermelon Script)で記述します。これにより、シナリオ、演出、UI、ロジックをそれぞれ別の言語で記述でき、開発の効率化とユーザビリティの向上が図られています。ボタンなどのUI要素は、シナリオファイルではなく、GUI定義ファイルで定義します。
開発環境
Suika2の開発環境は「Suika2 Pro」と呼ばれ、Windows、macOS、
Linux版が提供されています。Windows版が先行して機能追加が行われ、他のプラットフォームへ移植されるという流れで開発が進められています。
スクリプト実行基盤
Suika2は、実行基盤となるスクリプト言語を持たないという特徴があります。これは、他のゲームエンジンでよく見られる、スクリプト言語のAPI移植の問題を回避するための設計です。WMSはゲームの実行基盤ではなく、あくまでロジック記述用の外部呼び出し言語として利用されます。
演出機能
Suika2は、スマートフォンでの動作を考慮して開発されており、他のPC向けゲームエンジンと比較すると、演出機能は控えめです。しかし、軽量で動作が速いという利点があります。初期バージョンではシンプルな演出機能のみでしたが、その後、画面遷移時のエフェクトや簡易キャラクタアニメーション機能が追加されました。さらに、近年のスマートフォンの性能向上に合わせて、動画再生、レイヤーアニメーション、テキストレイヤーなどの機能も実装されています。
移植性
Suika2は、OSやSDKに依存しないように、独自のハードウェア抽象化レイヤーを実装しています。これにより、SDL2やPythonのような互換レイヤーに頼ることなく、様々なプラットフォームへの移植が容易になっています。現在、Windows、macOS、iOS、Android、
Linuxといった主要プラットフォームに対応しており、FreeBSDや家庭用ゲーム機への移植も試みられています。Suika2は、特定のレンダリング技術に依存しないため、開発チームはあらゆる家庭用ゲーム機への移植が可能だと考えています。また、
Emscriptenの技術により、開発したゲームをWASM形式で出力し、Webブラウザ上で動作させることも可能です。
開発形態
Suika2の開発は、主に
Discordサーバー上で行われています。ソースコードの管理は
GitHub上で行われており、英語の要求仕様書や外部設計書も公開されています。しかし、主なユーザーは日本にいるため、
Discordでのやり取りは日本語で行われることが多いです。
多言語対応
Suika2は、日本語のルビ(ふりがな)や縦書きに対応しています。また、英語のワードラッピングに対応した数少ない日本製スクリプトエンジンの一つです。英語だけでなく、ラテン文字を使用する西洋の言語にも対応しています。さらに、ゲームのプレイヤーのOS設定に合わせて表示言語を自動で切り替える機能や、ゲーム中に動的に表示言語を切り替える機能も備えており、多言語対応を重視した設計となっています。実際にこの機能を活用したゲームもリリースされています。
その他の特徴
2023年には「Suika2ノベルゲーム大賞2023」が開催され、多くの作品が応募されました。応募作品の一部は、開発者自身やパブリッシャー企業によってiOS/Android/Steamに移植・販売されています。また、Suika2には視覚障害者向けのテキスト音声読み上げ機能(text-to-speech)も搭載されています。