製作作業台_002



[2018/01/08] 苦しみながら作る。それが自作ゲームというものなり。

やることが多すぎィーーー!!

頭の中がパンクしそうになることもしばしば。
せっかく作ってみたアイデアを自ら壊したり、廃案にしたりすることもままある。
どこまでも広がっていくアイデアを、いかにまとめ、現実的なものに収めるか。
そのバランスを考えるのがとても難しい。

でも、苦しんで、悩んでこそ、より良い作品が作れる!(ハズ)
日進月歩、人間とはそういうものだよ。

・・・つーか、自分でも何を言ってるのかわからなくなっちゃったわ!





現在、キャラチップ、システムグラフィック、SE(効果音)の素材を集め終わり、
加工まで終わったところ。
BGMの素材はまだ揃っておらず、加工もまだ完了していない。

どんなゲームを作るのか。
どんなマップがあって、そこでどんなキャラクターが出て、どんなBGMを流すのか。
それらをイメージしながら、素材サイトを巡っては材料をお借りし、時には捨てることもある。
取捨選択の繰り返しをして、「これは使えそう」となったものを順次フリーソフトを用いてゲーム用に加工し、
ウディタのシステムデータベースに登録していく。

私が使用しているソフトは、
画像であれば、分割には「PhotoScape」、結合には「むすびちゃん」、総合的な編集には「Gimp」
音楽なら、波形等の編集に「Audacity」と「SoundEngineFree」、音声ファイルの形式変換に「Freemake Audio Converter」
MP3ファイルの音量調整に「MP3GainGUI」
といった具合。

画像のファイル形式は、透過が必要なものはPNG、そうでないものはJPEG(75%)にしている。

音声ファイルは、BGMもSEも全てOGGにしている。
OGGファイルなら、ファイルサイズがWAVEよりも遥かに少なくて済む。
これはMP3も同様だが、MP3の弱点である、ループ再生時の「プチッ」という微妙なノイズが
OGGにすればほとんど聞こえなくなるのだ。
ループポイントは、ウディタのほうでミリ秒単位で設定できるからそれで問題はないだろう。
実際先日、ウディタ上でOGG形式の音楽にループポイントを設定し、
BGMをかけてみたら、ちゃんとループしてくれた。
ミリ秒の数値については、Audacityで再生してみて確認し、
あとはウディタ上で微調整すれば問題ないだろう。
曲の演奏時間が長い場合は、途中再生のポイント(ミリ秒)を、テスト用にいったん終端付近に設定し、
そこからループするかどうかを確認すればよい。


なんだかんだ言って、全ての素材を集めきるよりも先にウディタを使ってしまった。
システムデータベースへの画像や音楽の登録をするためにな。

そしてその過程で、「ユーザーデータベース」と「可変データベース」を触り始めた。





これらについてはまだ勉強中なのでよくは理解してないのだが、
基本的な使い方は、どちらのデータベースも同じ。
でも、前者は固定のデータとして変更できないのに対し、
後者は「可変」と付いているとおり、ゲーム中にその値を書き換え、変更することができる。
事実、コモンイベントやマップイベントのコマンド「変数操作」の項目を見れば、
「可変DB」に数値を代入することができるのが解ったから。
なので、ウディタ上で定める可変データベースの数値や文字列は、
そのゲーム内での初期値、ということになるのだろうか。

可変のほうには、プレイヤーのステータスなど、
レベルアップや装備によっていくらでも変化しうるものを設定しておけばいい。
対する、レベルアップに必要な経験値の値など、
ゲーム中に変更する必要のないデータは、ユーザーデータベースに設定する、と。
たぶん、それでいいんじゃないか・・・? と思う。

データベースは、辞書というか、いくつかのデータの組み合わせを登録したもの。
これを使えば、通常変数の使用数を大幅に節約できる・・・・・!!
アレって、意外と面倒なんだよね・・・

例えば、キャラが5人いるとして、まず1人目のステータスを格納する変数を設定する。
ステータスには、HP、MP、攻撃力、属性防御など、たくさんある。
これらの項目名を変数の名前として登録し、それを5人分作っていく。
直入力は言うに及ばず、変数をコピペして名前を移していくだけでも面倒。
そこで、データのインポート&エクスポートを利用してみるのだが、
違う番号にカーソルを合わせてそのデータをインポートしても、
番号が違うだけで、同じ名前の変数がまとめてコピーされるだけ。
エクスポートしたデータをメモ帳で開き、置き換え機能を使って
変更したい部分の名前だけ一斉に変更し、上書き保存すると・・・
アウトだった。ファイルが破損してしまった。

だから現在、データベースについて勉強しているわけよ。
自作戦闘を作るためには、敵・味方あわせて相当な数のデータが必要。
そんなものに、大量の通常変数を使うのは極力避けたい・・・
きっとデータベースを使いこなす必要があるんだ、と、そう考えている次第である。



あとアレだ・・・
ウディタにおけるピクチャ画像の扱いについて、
「じゃ。」という名前の人が有力な情報を提供しているのを見たので、 勝手ながら引用させてもらうね。

--------
ピクチャ番号

 どの番号のピクチャに対して処理をするかを指定します。
 この欄には変数も指定可能です。1つのピクチャ番号には1つのピクチャのみ登録でき、
 すでに使用されているピクチャ番号で他の画像を表示すると、
 それまで表示されていたピクチャは自動的に消去されます。
 番号指定箇所の横にあるチェックボックスをチェックすると、
 連続する複数のピクチャ番号のピクチャを同時に操作することができます。
 ピクチャ番号は、値が大きいほど上に表示されます。

 ・ピクチャ番号が100000(10万)未満なら文章や選択肢の下に表示
 ・ピクチャ番号が100000(10万)以上なら文章や選択肢の上に表示
 ・ピクチャ番号が-1〜-99999なら、マップの上、かつ、イベントの下に表示
 (★属性などの一部チップはピクチャの上に表示されます)
 ・ピクチャ番号が-10万以下なら、マップの下、かつ、遠景の上に表示

 ※ピクチャ番号-1以下は「エフェクト」の色調変更の影響を受けます
--------

・・・って言いながら、公式に書いてあるってその記事に書いてたから
結局は公式のほうをコピペしてしまったでござる。当人には申し訳ない。


なーるほど。ってことは、だ・・・

まず、上でいう「イベント」というのは、マップのイベントモードで設置したイベントのことだな。
もちろん、人間とかのグラフィックを指定してキャラを表示すれば、
そのキャラがイベントの扱いとなる。

たとえば夜、花火大会があって、大勢の観客をイベントとして多数配置する。
そんで、640x480の大きさの灰色の無地のピクチャを画面中央に表示し、フェードアウトさせていく。
この時、そのピクチャの番号が99999以下だとマップだけでなくキャラも被ってしまうが、
-1〜-99999にするとマップだけが変色し、キャラは変色しない。

ここでピクチャの色を黄色に着色(R200,G200,B0 (・・・でいいのかな?))すれば、
花火が打ち上がった時に地面や遠景は黄色く光り、徐々に元の色に戻っていくが、
人々はピクチャによって変色せず、そのままの状態を保つ、と。

これなら夜になった時も、登場人物たちを常に明るくしたままにできる
ってことか! 見た目的な意味で。
で、夜や夕方などのためにわざわざ元のマップチップを着色して別のファイルにする必要もなく、
ついでにファイル容量を節約できるし、マップチップが1枚で済む分、
タイルセットエディタの修正をする時も1枚分で済む、と。
いいことずくめじゃないか!



私が当面やることは、BGM集めとその選定。場合によっては作曲も。
作曲なら、「ミノ式MIDIシーケンサ」がある。演奏し、DARUオーディーレコーダーで直録音。
出来上がったWAVEファイルを編集すればいい。

編集で曲の前後の不要な部分をカットし、ファイルサイズを節約。
ウディタに登録してはループポイントを確定していけばいい
・・・と思われる。

ちょいと日にちがかかりそうだ。次回に続く。