ファーレントゥーガのタスクリストを考える

実際に作業を始める前につらつらと書きなぐって見る。
開発前のメモ用。

とりあえずモジュール分け

  • イベントスクリプト
  • 戦略マップ
  • 戦術マップ
  • データ構造
  • シナリオ作成

大雑把に分けるとこんなもんか。


もう少し分けてみる。

  1. イベントスクリプト
    1. イベントスクリプト構造の設計
    2. イベントスクリプトエンジンの作成
  2. 戦略マップ
    1. フェーズ検討
    2. フェーズごとの行動の設計
    3. 外交とか内政とか戦争とかの詳細作りこみ、、くらいかなぁ?
  3. 戦術マップ
    1. ヘックスマップシステムの開発
    2. ZOCシステム作成
    3. 移動ルーチン作成
    4. 勝利条件とかあればなんか作ったり
    5. あとは普通に戦闘システムを作るだけか
  4. データ構造
    1. データ構造全体の設計
    2. 地形、エリア関係データの設計
    3. ユニットデータの設計
    4. 魔法とか特技とかの設計
    5. 戦術マップデータの設計
  5. シナリオ作成
    1. 絵とか
    2. 音楽とか
    3. シナリオとか
    4. イベントスクリプトとか
    5. あと色々データ構造に沿ったデータとか

あとは、AIとかマルチプレーとかネットプレーとかか。
かなーり適当だがこんなもんだと思われる。
ほんとは画面設計とかもあるんだけど、まあいいべ。

一回目のリリースまでにやること

一応アジャイル使いを自称してるので、データ構造からチマチマ作ってくなんて事ぁやりません。モチベーションがどうせ維持出来ないから、細かくアップしないと絶対ぽしゃる。途中まで出来て、結果的にそこそこ遊べりゃそこで開発終了、くらいの気楽な気持ちでやらないと、飽き性の俺には無理だと知っているつもり。
ということでまずは画面だろ、画面。戦略マップの画面作って、データは必要なものだけ作って後は仮で決める。必要なものはエリア間の接続は必須なんで、ワールドマップの構造と、一応そこそこ遊べるように内政系のデータ、くらいでいいか。ユニットは一応簡単に作るが、「強さ」と「値段」と「名前」だけとかで十分。
んで、フェーズ切ってAIはまずは適当にこさえて(完全ランダムでいいか)、戦術マップはすっ飛ばしてマップもなんも無しにランダムで戦わせて、天下統一したら勝ち。ユニットはなんか5種類くらい作ったりして。それで第一リリースってところだろう。
おお、ちょろそう。

他のロードマップ

決めない。時間ありそうなのは9月だけになりそうだし。
10月から12月俺が暇ならむしろ会社がやばいので、暇にならんようにせんとあかん。土日含めてやっても仕事終わらねーよ、って状況に順当に行けばなるはず。
てことで9月末くらいには出来る限りこさえて、続きは年始辺りから、とかか。形が出来れば協力者も出てくるだろう、、多分。

めんどくさそうなところ

一回目のリリースまではYaneSDKを使うのでその勉強くらいか。
あとは・・・。

イベントスクリプト

普通に考えるとECMA262の3rd準拠に、UnitとかAreaとかのコレクションを操作出来るような仕組みにするべきだと思われる。
ただECMA262のエンジンのC#版がオープンソースで転がってない場合は自作になるので、それはめんどいな、と。
一行完結型の簡易スクリプトで、IfブロックとForブロックとForEachブロックだけ用意する程度に抑えとくべきかも。
ここはどの程度妥協出来るかだなぁ。
イベントスクリプト担当者は相互のインターフェース決めて別の人に作ってもらえるよう、どっかで探さないとクォリティ下がるかも。

戦闘系について

ぱらーっと企画を読み直してみたのだが、野戦部分の構想は詰める必要がありそうだったり、20ターン過ぎた場合にどうしよう、共闘時の領土の所有者はどうしようとか、色々めんどくさそう。
結局んところ仕様の決定次第で、その仕様に沿ったもの作ればいいのだが、この仕様決定がだるいんだよねぇ。
命中率の判定とかダメージの判定とかね。すぐバランスおかしくなるからな。

エディタ系

マップとかって普通に作るのが面倒くさいので、エディタは必須だと思うのだが、ぱっと考えただけで結構必要だよなぁ。

  • 戦略マップエディタ
  • 戦術マップエディタ
  • ユニットデータのエディタ
  • 魔法とかあればその辺のデータいじれるやつ
  • シナリオエディタ(スクリプト含む?)

イベントスクリプトと同じで、協力者探さないとクォリティ下がりそう。

AI

俺自身は真面目にAIの勉強はしてないので、いい加減な実装になりそうだが、まあそれは仕方無いとして。
戦略部分のAIと戦術部分のAIの2つに、ユーザー設定をどこまでさせるかというものが加わることになりそうで、ここも結構時間かかりそう。
ユーザー設定に関しては好戦的なマスター、戦争しないマスターとかはほぼ確実に必要なので、ユーザー設定の範囲を決めてから実装にかかるのがいいのかもわからんな。
いっそイベントスクリプトと同じ仕組みで外に出してしまうべきか?でもユーザにそれを書ける、という仕組みにすると、シナリオ作成の敷居が上がる気もするしなぁ。
まともにやるのはスクリプトの後か。

絵とか

書けないからな・・・。
FT界隈からもらってくるしかないか。
著作権を各自設定しているみたいなので、ややこしかった気がするが、まあいいか。絵師を探すと責任も増えて仕事に支障が出そうなので、絵師は無しでいくべし。

独自の部分

企画上傭兵団の存在を作らないといけないのだが、これをどうやって絡ますかが結構面倒。GGの第○○師団系の実装でいいような気もするのだが、どういう条件で傭兵が味方につくかとか、CPUはどうだとかが結構ね。
システムに実装するか、シナリオに実装するかの切り分けも必要。自分でプレーするとどうなるか考えるのも頭痛い。
傭兵団を一つの国と考えた場合、一エリアに対して所有国は常に一つである、とすると、傭兵団が最前線に絡むには最前線に隣接した地形を一つ持っておく必要があってかなり使い勝手が悪い。傭兵団だけ瞬間移動可能にするしかないのか?
前述のGGの第○○師団的な扱いだと一応その国の兵士として活躍することになるので、こっちが無難ではあるんだが、傭兵団プレーの仕組みをよく考える必要がありそう。契約期間が過ぎると国に帰る、てのはまあいいとして、ユーザがプレーすると契約期間終了間際に傭兵団皆殺しにするような戦争をしそうだな。
いずれの場合でも「傭兵団主体で物語を進める」っつーのがえらい難しい。独自に進撃できない勢力を主人公陣営には出来ないだろう。


タクティクスオウガ系でやろうかファーレンでやろうか迷っていたのは、この独自仕様の制約がでかい。
落としどころとしては、今回は傭兵団を主人公陣営にはしない、別の企画でやる、という辺りが無難なんだろうが。
それだと製作動機と違ってくる気もすっしなぁ。
まあ、悩みどころだ。

とりあえず

暇を見つけて画面から先に作ろう。
戦略マップと、それをスクロールして閲覧出来る仕組みと、クリックするとそのエリアのデータが見れる仕組み、辺りが先で。
続いてエリアつないで、マスター作って。
フェーズ作って、仮の戦闘画面作って。
以上3工程経て一発目完成って流れでよかろう。
明日辺りからぼちぼちやりたいな。