[FEH] FEH休止13日目 - ツールの共同開発

2020/09/27
feh 

FEH 休止13日目。

Twitterのフォロワーさんの中でおそらく本職で開発をされてるであろう方が数名いる。過去に数名の方から、必要なら飛空城シミュレーターの開発を手伝うこともできると連絡をいただいていた。

最近、その方から連絡をいただいた事をきっかけに、技術に精通しているフォロワーさんと共同で開発する事ができないか検証してみることにした。具体的には、飛空城シミュレーターのソースコードをgithubのリポジトリに移して、私以外の方が不具合修正や新スキルの実装を行えるようにしてみた。

すると、私が休止中の間にその方が見つけた不具合をすぐに修正してくれた。プログラムの規模感を行数で表現するのはイマイチではあるが、飛空城シミュレーターのソースコードは3万行以上の大規模なツールとなっている。その大規模なソースコードから特に説明もなしにあっという間に適切な修正箇所を発見して修正できるとは、どう考えてもプロの仕事である。git も使い慣れているようだし、修正内容も必要最低限の適切な内容となっており、その道で経験を積まれている方であることがすぐにわかった。非常に頼もしい。

飛空城シミュレーターはかなりのスパゲッティコードになっている。ソースコードを書くときに可読性には気を付けているものの、もともとここまで大規模なツールになることは想定はしていなかったし、ゲーム上での想定外の仕様変更や拡張などがこれまでにあった。徐々に想定外の機能を無理に拡張していった背景から、このようなスパゲッティコードになってしまった。と言い訳をしておく。

趣味の開発で共同開発した経験はほとんどない。なんだかとても新鮮で開発のモチベーションが回復した。

まだ、複数人で作業がぶつからないようにタスク管理する部分が未検証だったり、共同開発の課題は残っているが、最終的にはリポジトリを公開設定にして、誰でもプルリクエストを出せるようになるといいと思う。このスキルが実装されていなくて困る、この不具合があって困ると思った人が自分で修正することが当たり前のようにできるようになったら、これ以上素晴らしいことはない。

少し話は変わるが、FEH をプレイしなくても戦闘シミュレーターさえあれば、新しいキャラの評価はできる。むしろ、ゲームでそのキャラを実際に使ってみるより、まっとうな評価を行えるかもしれない。プログラム上で検証したいことを自動化すれば、ゲーム上で手動検証するより遥かに多くの検証を短時間で行える。例えば、飛空城シミュレーターには耐久テスト機能というものを用意しているが、全キャラの10凸と対戦して戦闘結果のその統計を確認するような作業は手動では到底行うことはできない。廃課金でも無理だろう。

何を言いたいかというと、FEH はエアプでも技術をうまく活用すれば、キャラの評価すら自動化することもできるかもしれないということ。例えば、ステータス配分から類似する過去のユニットで有効なスキル構成を推奨する機能を実装すれば、何も考えなくても新キャラの有効なスキル構成を知ることができる。また、あらゆるスキル構成の戦闘結果を評価して、もっともスコアの高いスキル構成を割だす事が出来れば、ガチ勢が長期間運用して割り出す理想スキルのようなものをすぐに知ることができるかもしれない。

唯一エアプでできないことは、実際のプレイヤーの防衛マップの統計を取ったりすることである。本来は、流行っている防衛マップや敵の編成に応じてスキル構成などを考える必要があるが、この情報ばかりは常に変動するものだし、論理的に最適なものが流行るわけではないので、実際にゲームをプレイしなければ知ることができない情報だ。この辺は Twitter 上のFEHプレイヤーのツイートを解析すればある程度知ることはできるかもしれないが、編成や防衛マップは画像や動画で説明されることが多いので、そのレベルまで解析しないと知ることは難しい。簡単ではないだろうが、研究の題材としては面白い。

今後の FEH の遊び方として、そういう路線もありかもしれない。私にとって、FEH は開発や創作など創造的な活動のモチベになっていることは大きなメリットであると感じている。そこを重視する付き合い方は悪くない。

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

<<「ファイアーエムブレム」の記事一覧に戻る

関連記事