ZGEで出来る事

ZGEで出来る事


2Dゲームが作れると言っても、
ZGEを使い始めたばかりでは制作するのが難しいものや、
ZGEでは出来ない事、難しい事もいくつか存在します。

原則として自分が作りたいゲームがどう言う理屈で動いているのかを理解し、
その処理に必要な関数と変数の組み合わせでスクリプトを作り、
再現していくのが基本的な製作過程になってくるので、
ゲームの中身を知る事が必要になってくると言う部分での敷居の高さもあるかもしれません。

以下、ZGEでは少し難易度があるものや、
再現できないものをまとめてみたので、
これからZGEを使うかどうか迷っている人は参考にしてください。


ZGEの特徴

・労力の軽減


既に説明してありますが、
やはり労力の軽減とスクリプト記述による自由度のバランスこそが最大の特徴だと思います。
本来ならばゲーム制作以外の部分を考える必要が出てくるものですが、
ZGEならゲーム制作の部分に集中できる為、
素材の準備や演出に凝る余裕があり、
見た目にも動作的にも満足のいく内容のものを実現しやすいです。

・パーティクル描画


シューティングゲームの弾や演出など、
多彩な用途のあるパーティクルに関しては、
設定項目も多く衝突判定も簡単にできるので、
ZGEの特徴の1つでもあると思います。


スクリプトがなくても生成する事ができる手軽さと、
スクリプトを使う事である程度の複雑な動きを再現できると言う点は、
ゲームを作成する上で非常にポイントが高いです。

キャラクター描画のような奥行きの概念が無く、
画面の拡大・縮小に合わせて表示させる事が難しいのが唯一の難点と言えるかもしれません。
(かなり限定されますがスクリプトにより対処する事が可能な場合もあります)

・パスデータ


少し使い方が難しい印象があるかもしれませんが、
パスデータと言うキャラクターの動きを指定できるイベントが存在します。

これにより、面倒なキャラクターの動きの作成を、
スクリプトを組む事なく作る事ができます。


万能ではありませんが、
小規模なゲーム製作等で非常に便利な機能です。
(※現状ではベジェ曲線が使えませんが画像のようなスプライン曲線はできます)


出来ない事

・インターネットに接続するもの

インターネットを介した通信関係の機能は一切ないので、
そう言ったものを作りたい場合には他のツールをお勧めします。
(※恐らく今後の更新において追加される事はないと思われます)

・カラーパレットの変更


格闘ゲーム等、色違いのキャラクターが必要となった場合でも、
別途色違いのキャラクター画像を用意する必要があります。
(※色調補正的な形で画像のRGB値の変更は可能です)


苦手なもの

・演出が少なめ


他のツールに比べると、
拡大・縮小・回転・半透明等、最低限のものは揃っているものの、
トラジションのようなものも含め、
演出面はそれほどバリエーションが無いのが現状です。
また、キャラクター毎の指定となる為、
特殊描画を画面全体に使用したい場合、
キャラクター毎に処理を組み込む必要があるので、
少し手間がかかる場面もあります。
(スクリプトを呼び出すだけで良いのですが)

作り方次第である程度の対応は可能ですが、
一部、特殊な描画方法においては、
半透明のような機能が使えないものがあり、
複合したような形では使用できない場面があります。

今後のバージョンアップで改善、もしくは追加される可能性はありますが、
現バージョンで使用できるものに関しては、
『ZGEの描画機能』にて確認してください。

・状態を保持するセーブの容量が大きい


ZGE にはその場の状態を保存し読み込んで同じ状態から再開する事ができますが、
そのセーブデータの容量はイベントリスト(.evtファイル)の容量と同等になってくる為、
イベント総数が4000くらいになってくるとセーブデータ1つで5MB近くの大きさになってしまいます。

変数を保存したりキャラクターイベントの保存・読み込みができる関数がある為、
通常は変数を保持したイベントを保存し、
必要な時に読み込む方法でゲームデータの保存と読み込みを再現する形になります。


難しいもの

・ラインスクロールのレースゲーム


キャラクターが一定周期で揺れるような表現は出来ますが、
昔あった疑似3Dレースゲームの地面のような処理は自力で再現する必要があります。
(グラフィックを1ラインずつ分解して表示して動かす等)
※ちなみに当時そのような機能が無い場合には実際に自力で表現していたものもあるようです。

(画面はファミコン『F-1 RACE』から)

・マップチップのアニメーション


現時点では少し難しいようです。
現状はキャラクターを使う事で再現します。

・矩形と円以外の判定


ZGE であらかじめ用意されている衝突判定を行う関数は矩形と円の2種類となります。
矩形は矩形と、円は円とのみ判定をする事ができますが、
矩形と円同士は判定を行う関数が用意されていません。


なので、傾く床など特殊な衝突判定に関しては、
スクリプト記述により自力で再現する必要があります。

また、以下の様な機能もあります。
・キャラクターとパーティクルの拡大率による判定
・坂衝突判定(マップチップ限定)
・マップチップ衝突による反射

ただし、マップチップとの坂衝突判定に関しては横画面で使用する事を前提として作られているので、
8方向に移動するようなゲームには向いていない事に加え、
マップチップの衝突判定の都合上、
横画面でも一部の配置は対応できない場面が多々あるので万能ではありません。

例えば下図の様な坂道で途切れているような配置は、
横から衝突した場合に意図した様な判定ができないケースもあります。
※画像のマップチップサイズは16*16です



下図のような配置にすると対処できます。



さらに、空中に浮いた床に関しては、
下から衝突する事を考えると縦に3チップ分の余裕と、
上り坂だけ下図のように2チップ分の配置が必要になる等、
いくつかの約束事があります。



ZGEが使いこなせれば作れるもの

・格闘ゲーム


再現する要素が多いのでZGEをそこそこ理解していないと難しいですが、
頑張れば市販レベルの動きの物も作れると思います。
スクリプト自体も変数の管理が大変な程度なので、
理解してしまえば作業量の多さ以外はそれほど問題ないです。

ただし『出来ない事』に挙げた通り、
パレットによる色変更ができない関係上、
色違いキャラクターを作る場合には別途画像が必要となる為、
ゲームファイルの容量が大きくなりがちで、
読み込みが長くなる可能性があるのが難点です。

・ベルトフロアタイプのアクションゲーム


アクションゲームが作れれば、
ベルトフロアの再現方法を考えるだけで良いので、
意外と簡単に作れると思います。

こちらも格闘ゲーム同様、
どちらかと言うと素材の用意の方が大変かと思います。

・RPG/シミュレーションRPG


ゲームそのものの処理に関して全く問題ありませんが、
文字を表示したり配列変数やセーブ等、
ZGEで覚える必要がある要素が多い事と、
マップチップは1つ1つをキャラクターとして描画している関係上、
どうしても処理速度的に少し不安な要素があります。
(原則的に1画面を1枚絵としたり当たり判定は描画しないマップで作るなど対処方法はあります)

また『難しいもの』に挙げられているように、
マップチップのアニメーションが現段階では実装されていません。

大きなものはキャラクターで表示する、
海等のアニメーションは tile 描画で再現する等、
工夫をする必要が多々出てくるので、
ある程度ZGEを使いこなせる必要が出てきます。
RPGだけを作りたいなら専用のツールの方がお勧めかもしれません。

と言っても、普通に遊べるレベルのものは製作可能です。
(ただし画面サイズが大きくフルカラーのものは重くなる可能性があります)

ちなみに戦闘が独自でアクション要素を含むものの場合、
恐らくZGEがいろいろな面において最も制作に向いていると思われます。

・アクションRPG


上記RPG等の表現における問題点はありますが、
どちらかと言うと通常のコマンド入力式のゲームより、
アクションゲームの方が向いているかと思います。

大量の値を保持する配列データと言うものもある為、
アイテム等のデータ管理も問題ありません。

トップビュー、サイドビューどちらも製作可能ですが、
高さの概念があるものを作ろうとした場合、
(ジャンプがあり、高い段差上に乗れるようなもの)
マップはマップチップではなくキャラクターで作る必要があります。

・パズル


パズルゲームがどう動いているのか動作概念を理解した上で、
“セル”と言う処理を再現する必要があります。
(とくにブロックが特定個数繋がった時に消える処理)
ちなみにですが、某ドリルで掘り進むようなゲームもこちらになります。

・クォータービュー


クォータービュー(斜め見下ろし型の画面)は、
高さの概念を取り入れようとすると、
再現する方法を自分で考える必要があります。
ZGEの知識が必要になりますが、
普通にゲームが動作するレベルで再現は可能だと思います。


得意なジャンル

・シューティングゲーム


パーティクルによる弾幕生成など、
ZGEで作るにはとても向いているジャンルです。
とくに弾幕STGはとても楽に作れると思います。

・アクションゲーム


重力要素のある横画面のジャンプアクション等は、
基本的な概念を理解する必要があるので、
シューティングゲームよりも敷居が高いですが、
ZGEで用意された関数はアクションゲームの制作に向いているものが多いです。



▲フレームが表示されない人はクリック