fc2ブログ

工房瓦版

創作関係の趣味ブログ

【ゲーム作成進捗紹介動画】

 一番上固定の記事です。本来の最新記事は一つ下になります。
 現在作成中のゲームのテストプレイの動画(2020/05/27時点)。



 以下、その他の関連動画集

続きを読む

【吉里吉里】今年進んだ作業メモ【自作ゲーム製作】

ずっとブログを放置していましたが、年末なので、この一年くらいの間に進めた作業をメモしてみたいと思います。
バックアップデータを残したときのメモ書きやTwitterのメモを参考にめぼしいものを挙げていきましょう。

1:戦闘中にリアルタイムで敵のターゲットや行動予測を確認できるようにした。
221210c.png
 このゲームでは、ユニットの移動時には経路を指定できるのですが、上スクショの例では、移動した場合、二体の敵に見つかってターゲットを取られることを示しています。
 (余談ですけど、あんまり移動経路を指定できるSRPGって無いですよね。経路指定にはもちろん意味があって、このゲームでは敵に視界があるので、視界に入らないようなルートを選んだり、罠のあるマスを踏まないように移動したりできます)

2:状態異常を色々追加した。
3:まだUIだけだが英語版に切り替え可能にした。

221231_03.jpg
 あと、スクショの左上のマウスポップアップ。状態異常をbuttonレイヤーにしてhintで説明をポップアップ表示するようにする、というのもプレイヤー視点ではあってしかるべき配慮ですが、地味に実装面倒でした。

4:攻撃に対するカウンターや連携を行うシステムを追加。
 ちょうどいいスクショがなかったんですが、カウンタースキル持ちのユニットを攻撃した場合カウンターを受けます(逆に言えば、こちらの行動ターン時には原則相手の攻撃は無しです(FE系との違いですね))。「前面、側面、全方向」などのカウンター対象方向も設定できます。連携は、攻撃対象を自陣営で挟んでいる場合に発動し、行動者以外の味方も対象を攻撃してくれる、というものです。

5:背景とかキャラの絵を色々描いた。
221210b.png
221231_02.jpg
 ここが一番楽しい作業のはずなんですが、個人製作だと一番大変なところかなーと思います。スキルも物量も何もかもが常に足りなくて、うぎゃー感があります。

6:放物軌道を描く攻撃の射程計算をちゃんと行うようにした(高所から攻撃すると遠くまで届くなど)。
220430b.jpg
 ゲーム中の見た目はあんまり変わらない所ではありますが、疑似ではなく、ちゃんと放物運動を計算して遮蔽判定しています。

7:戦闘フィールドのテクスチャの貼り方を引き延ばし以外に切り抜きも指定できるようにした。
221231.jpg
 屋根の所の緑枠の部分が引き延ばしタイプで、赤枠の所が新しく作ったタイプです。これはかなり悩まされたところで、tjsのどの命令を見ても、任意のレイヤーの好きな四角形(正方形、長方形に限らない)領域を指定して、好きな四角形サイズに引き延ばして貼り付けるっていうのがないのです。切り出し元が長方形ならperspectiveプラグインでなんとかできるんですけど、それだと緑枠のようになります。なので、切り出し元をいったんあれこれ加工して、切り出したい部分が長方形になるようにしてからperspectiveプラグイン使う、という手順を踏んでいます。

8:レイヤーの残像エフェクト機能を追加。
221231_04.jpg
 これも、好きなレイヤーを指定してリアルタイムでコピペするだけだし簡単っしょ、と思ったら全然そんなことなかった機能ですね。kag.layers[n].foreで対象指定できると思ったら、アニメーションレイヤーの場合、画面に見えてる画像はそこには保存されていなくて、どっから引っ張り出すのか調べるのに苦労しました。


・・・以上。
という感じで、Twitterに載せたような大き目のを挙げてみました。他にもバグ潰したり、何したか忘れちゃった細かい作業は色々ありますね。
最近は汎用キャラの任意加入システムをつけたり、道具屋で売るアイテムのラインナップを考えたり、グラ素材を増やしたりという感じで、あらかた作った土台をどこまで装飾できるか、みたいな作業に入った感じです。

正直もう何年作業してるんだと、振り返ると冷や汗が出てくる感はありますが、逆に言えばこれだけ飽きずに続けてこられたので、多分最後まで飽きないと思います。
一か月くらいやる気が出て頑張って進めたと思ったら、二か月くらいゲームにハマって停滞したりという感じのスローペースですが楽しくやってます。社会人のゲーム制作は大変とは言いますが、まあ本業ではないので気楽にいきます。

とはいえ、一回公開した後こそ、どんどんベース部分や素材を流用して新作を作っていきたなー、というのがあるので、頑張っていきたいところです。
ちょうど今年転職して副業OKの会社になったので、steamやらなんやらも心配不要になりました。そんなわけで、将来的には本業とは別のライフワークみたいなものになったらいいなぁとか妄想してます。

どういう風に戦闘に入るか

どういう風に戦闘に入るか、という話。
RPGでは戦闘開始のきっかけはランダムエンカウントやシンボルエンカウントが多いです。
ただ、今作ってるゲームは戦闘がSRPG形式になる関係上、エンカウント型ではテンポが悪くなってしまいます(以前動画のコメントでもありました)。
で、どうするかというのを考えた結果、さしあたり今作ではフィールド上ではエンカウントをなくして移動だけに特化。
そして、フィールドからダンジョンに入るとステージ選択画面に移って、そこから各戦闘に入って順番にクリアしていく、という形式にしました。
210901.jpg

なるべく汎用性を持たせた形でシステムを入れているので、ランダムエンカウントやシンボルエンカウントも仕組み自体はもう作ってありますが、次回作があればその時に使えれば良いと思います。

草に延焼する処理

戦闘フィールド上のユニット以外(具体的にはマス自体)に対しても何らかの干渉が起こるようなシステムをつけていきたい。
まず、草属性のあるマスに火属性のスキルを放つと引火して、隣接マスに引火対象がある限り延焼するようにした。
延焼時にはマス上のユニットにダメージを与える。また、延焼後のマスは一定時間マス上を通過するユニットに小ダメージを与える。

【吉里吉里】dirlist使用時の注意

記事にしない裏でもポチポチ作業はしているのですが、備忘録的に製作中に気づいた注意を置いておきます。

ゲーム中で、フォルダ内のファイルを検索して一覧を取得するということを時々行います。
例えば、イベントの一覧を「イベントフォルダ」内のファイルを検索することで取得したり、というような場面です。
この時、dirlistという機能で一覧を取得していたのですが、こちらはゲームをxp3化すると一覧を取得できなくなるようです(調べたいフォルダがなくなるため)。

「これはもしかして、リリース時には手入力でフォルダに存在するファイル名の一覧表を用意しておかないといけないのか?」と困ってしまったのですが、とりあえず応急処置的な対策としては、「製作中はdirlistでフォルダを検索してファイル名一覧を取得するままでよい。ただし、この際リストをtxtなどに自動で書き出すようにしておき、リリース時にはそのtxtからリストを取得するように条件分岐させておく」という対処をすればよいと思います。
もしゲーム中にもイベントファイルが増減するようなケースでは使えませんが、「製作中にファイルの増減はあるが、リリース後は増減しない」というケースであればこれくらいで十分だと思います。
次のページ