「リド・カイン」さんの連載コラム 第七回

リド・カインさんの連載コラム

作者様:ホームページブログTwitterウディタリアンに100の質問
作品:メカバトルシュミレーション「AME CHAMP」
リド・カインさんの連載コラム:01020304050607080910




ゲーム制作ひとりでできるもん!コラム
第7回目のテーマはゲーム制作の根幹とも言える
『システムの構築うんぬん』
について、触れてみようかなと思います∠(`・ω・´)




●ゲーム制作ひとりでできるもん!(システム構築編 その1)

偏にシステムと言いましても
・戦闘やメニュー、イベント処理といった部分的なところを指していたり
・ゲーム全体の流れとか仕組みの事を指していたり
と、『システム』という言葉が色んなニュアンスで使われていたりします。

とりあえず今回は
「戦闘などの細かい部分を指す方のシステム」
について私の体験を元にお話しさせて頂こうと思います。



システムを組む!と言いますと、
なんとなく専門知識が必要そうな感じがしまして
とにかく難しそうなイメージが先行すると思います。

HSPやC++といったプログラミングでゲーム制作を行う場合
プログラミングの基礎知識やプログラミング言語を覚えて
ある程度使いこなせるようになる必要があるかもしれませんが、
ゲーム制作支援ツールを用いれば
プログラミングに関する専門知識が無くとも
ゲームのシステムを組み上げていく事が出来ます。
※制作支援ツールの使い方や応用の仕方は覚える必要がありますが…


私自身、プログラミングに関する知識はほとんど持っておりませんでしたし
【AME CHAMP】が完成するまでは完成作品数0のゲーム制作初心者でしたが、
ウディタ(WolfRPGエディター)で
戦闘システムからメカセッティング、パーツショップ、リーグ戦の勝敗管理など
全てのシステムを組み上げる事は出来ました。

もちろんいきなりパパッと思い通りに組めたわけではなく
最初は講座動画や解説記事を見ても訳が分からず首を傾げておりましたが
途中からある『コツ』に気が付きシステムを組む事が出来るようになりました。

その『コツ』とは…
「システムの中身を分解して、一つ一つ順を追って考えてみる」
という事です。


例えば戦闘システムを0から組み立てていこうと考えた時、
システム全体をイメージしてしまうとどうしても腰が引けてしまうと思いますが

1.戦闘発生時の場面切替

2.戦闘時の背景、敵グラフィックとPTステータスの表示

3.メンバーの現在HPや敵のステータスといった数値を読込む

4.コマンド入力処理を組込む

5.コマンド実行後の誰がどの順番で行動するかといった処理や
 ダメージ分HPが減るといった処理
 敵の行動パターンを組込む

6.ターン終了時の毒ダメージや魔法効果が切れる処理を挟む
※全ての敵HPが0になるあるいは戦闘から離脱するまで4〜6の処理を繰り返す

7.経験値やお金といった報酬の加算処理をして戦闘前の場面に戻す

というように、個々に処理を分けて考えれば意外と
「あれ、これ頑張れば出来そうかも!」
となり活路が見えてきたりします。


戦闘システムを例に挙げましたが、
アイテムの売買が出来るショップシステム等についても同様に
・商品名、価格、効果の一覧が表示されるショップウィンドウを表示する
・どの商品を買うか(売るか)の選択コマンドを挟む
・購入(売却)した分のアイテム数増減とお金の増減処理を入れる
・ショップウィンドウを閉じて元の場面に戻す
というように分けて考えてみると組みやすくなってくると思います。


「処理を分けて考えたいけど、そもそも分け方の検討がつかない…」
といった時は
サンプルとして組まれているシステムや一般公開されているシステムの中身を
分解してみると、なんとなくのイメージが掴めるかもしれません。

これは私個人の極論かもしれませんが、
・グラフィックやウィンドウ等の画像を表示させる
・装備の変更、HPの増減、アイテムやお金の増減といったデータベースの処理を入れる
・敵が全滅した時やキャンセルボタンを押した時等、
 条件を満たした時は処理が中断されるようにする
・システムが起動する前の状態に戻す
これらの4つに分けてしまえば、おそらくなんとかなります^^;

私が組んだシステムのほとんどはこの4つの処理を応用させただけなのですが
それでもある程度自分が作りたかったシステムは組む事が出来ましたので
とりあえず作りたいシステムを3〜4段階に分けて考えてみると良いかもしれません。


あとはシステムを組む際に必要となるのが
当コラムの第1回目でも少し触れた
『変数』と『条件分岐』をいかにして使いこなすか?
というところでしょうか。

戦闘時の敵AIなんかは基本的に条件分岐の連続で成り立っています。

これも一例を挙げるとするなら
『70%の確率で通常攻撃、30%の確率で魔法攻撃』
を仕掛けて来る敵の設定なんかは
0〜100の乱数を変数に代入させて、
・変数が70未満の時はPT先頭キャラに通常攻撃を仕掛ける
・変数が71以上の時はPT全体に魔法攻撃を仕掛ける
と言うように設定を行えば
一応これだけでもAIとして行動するようになりますし、
『敵HPが残り30%を切ったら敵ステータスが上昇する』
といった敵HPに対する条件をプラスすることで
応用を利かせる事が出来るようになると思います。

※乱数とは設定された数値の範囲内でのランダムな数字を表します。
 これに関しては例の如く制作ツール毎に仕様が異なると思いますので
 説明書や解説記事を別途ご参照頂ければと思います。



と、ここまで個人的なコツなんかを書いてみましたが
とりあえずシステムに関しましては
・一つ一つ分けて考えてみる
・条件分岐を駆使する
の2つを頭の片隅に置いて頂ければ、
システム構築作業は少し捗るかもしれないかなと。


戦闘、ショップ、アイテム管理、メニュー呼び出し、ステージセレクト等
必要となる各種システムを組む事が出来ましたら
企画書やフローチャートを元にこれまで用意してきた
シナリオやストーリー案、各データベース、各種素材を配置していき
ゲームとして形づけていく
『ゲーム全体の仕組みを表す方のシステム』
の構築に入っていくのですが、
その辺りについてはまた次回にという事で。

それではまた(=゚ω゚)ノ

(つづく)




●感想をTwitterでつぶやいてみよう!

このコラムをご覧になられた方は
是非一度Twitterで感想をつぶやいてみて下さい♪


このエントリーをはてなブックマークに追加


最近更新したコンテンツ

2016年01月29日
ニュース
アニメ「この素晴らしい世界に祝福を!」がゲーム化
BD&DVD1巻の特典として収録
2016年01月28日
新着ゲーム
「消灯時刻」
終末世界で起きる、残された人達の物語
2016年01月27日
ニュース
Web漫画「おじさんとマシュマロ」が面白い
おじさんとOLの、微妙に噛み合わない恋愛風景
2016年01月26日
ニュース
漫画「ステラのまほう」がアニメ化決定!
女子高生達が同人ゲームを作る4コマ漫画
2016年01月24日
新着ゲーム
「レミリアケツKicker」
レミリアさんのお尻を蹴るゲームが出たよ
2016年01月21日
新着ゲーム
「凍れる心がとける時」
短編ADV。ファンタジーな世界での恋する学生のお話
2016年01月18日
新着ゲーム
「ゆぼひくっ!」
勇者を作って冒険する?超簡単な暇つぶしゲーム
2016年01月17日
新着ゲーム
「ワーズ・アンド・マジック」
スマホやタブレットで遊べるタイピングRPG
2016年01月15日
新着ゲーム
「東方紅輝心」
レミリアと咲夜の3DアクションRPG
2016年01月14日
新着ゲーム
「TS:NONUPLE NINE ノナプルナイン」
ちょっと(?)エッチな探索型ADVゲーム
2016年01月12日
新着ゲーム
「森でクマさんテラヤバス」
可愛い少女・OLと紳士なクマさんの追いかけっこゲーム
2016年01月12日
コラム
「リド・カイン」さんの連載コラム 第5回
「ゲーム制作一人で出来るもん!データベース作成編」
2016年01月11日
新着ゲーム
「KATHARSIS?禁断病理の子供達?序章」
フルボイス!?「医能伝奇」バトルADV
2016年01月09日
新着ゲーム
「リセマラ勇者」
ガチャを回して勇者を集めてよう
2016年01月06日
新着ゲーム
「ハンスとグライフ」
【18禁】女性向けのダークファンタジーゲーム
2016年01月05日
コラム
「道玄斎」さんの連載コラム 第42回
「非グリム的童話の世界へ」
2016年01月03日
コラム
「眠田 直」さんの連載コラム 第4回
「ゲッペルスちゃん3」制作報告コラム・その4

個人、同人の創作ブログ更新情報

サブコンテンツ

このページの先頭へ