こんにちは。プログラマーのことみんです。
IPOでのんびりマイペースに人生送るのが夢でした。

お恥ずかしいながらも

クラクラの攻略記事を書いてみようと思います。これが初めて。

単に徒然なる記事を書くだけでも30分はかかるほど筆が悪い自分がしっかりとした記事を書こうとしたら何時間かかるか分かりません。大した文才もない私が攻略記事を書き起こすというのですから、努力だけ適当に褒めてくれれると嬉しいです。現状コンテンツは質より量で、継続的な配信ってのを意識しているところです。

この記事は、おおよそのネタは「クラクラ学問塾」という攻略サイト(現在制限中)で掲載されているものをフォローする形で書き起こしています。ただ、元ネタの内容通りには多分書かれてません。塾長の仕上げた完成度の高いコンテンツには及びませんが自分なりに考えて書いてみました。

意図せずこの記事が第三者の不利益とならぬようにしたいと思ってます。

施設の大きさ

さて、本日のお題は「施設の本当の大きさ」についてです。何をわかり切ったことをと思われるかもしれません。そうですよね、、、タウンホールなら 4マス x 4マス、アーミーキャンプなら 5マス x 5マス、その他 3マス x 3マスや 2マス x 2マスの施設があるのはみんなも勿論知っているところと思います。

挿入イメージ


でも、本当にみんなはちゃんと施設の大きさを理解してますか?ご存知ですか?実際には施設の大きさって、ほんの少し小さいんですよね。これを理解していると、より正確なユニットのルートを予測できるようになります。つまりプランをしっかり立てられるようになるんです。今日は、みんながちゃんと知っていそうで知らない(かもしれない)「施設の本当の大きさ」について解説していきます。

当たり判定

本題に入る前にほんの少しだけ事前知識として雑学的な脇道に逸れるけど「当たり判定」って何かご存知ですか?ゲーム業界で働いている人はまぁすぐにわかると思いますが。「当たり判定」というのは物体がターゲットに衝突(到達)したかどうかを判定する処理のことです。

シューティングゲームであれば、プレイヤーが発射した弾が敵キャラに当たったかどうかを判定する処理のこと。3Dアクションゲームであれば、壁にぶつかったり、地面を飛び跳ねたりする処理に含まれてます。(物理エンジンという奴が当たり判定を行ってくれるんですが)

で、クラクラの場合であれば、プレイヤーが投じたユニットが施設に向かって移動していき、施設に到着した(当たった)かどうかを判定する処理が、これに相当するものと思ってます。
(あくまで自分が全ユニット共通で汎用的にRTSのアルゴリズムをプログラミングするならという推定のもとで書いてます。)

この「当たり判定」とやらが考慮される施設の大きさって知ってますか?実は、攻略系サイトにはあまり書かれてないと思うんですが、レイアウトのマス目に合わせた施設の外枠の大きさではないんです。この情報について、自ら時間をかけて検証してくれたのは塾長さんでした。

この当たり判定に利用される施設の大きさを理解していると何が得するのか?それについても最後に書いておきましょう。

施設の本当の大きな 

さて、それぞれの施設について当たり判定を確認していってみました。検証方法などはここでは長くなるので割愛していきます。検証は決して完璧ではなく、様々な仮説に基づいておこしたものです。

まずは、下の図をご覧ください。これが、私が出した施設の本当の大きさです。それぞれの施設サイズ(5マス x 5マス、4マス x 4マス、3マス x 3マス、2マス x 2マス)に対して、攻撃ユニットが攻撃できる範囲を赤い領域で示しました。

上の段は、陸ユニットが攻撃できる範囲を示しています。下の段は、空ユニットが攻撃できる範囲を示しています。

あたり判定

ユニットのルート取り予測ができる

この施設の当たり判定箇所が判別できると何がわかるようになるのか?これまで適当にプラニングしていたルート取りをより正確に行えるようになります。これまで外枠ベースでざっくりとルート計算していた方は、微妙なルートミスを回避できるようになると思われます。

まぁ、でも実際にはそこまで精緻にプランが必要となるケースはとんどなく、確実に実行可能なルート取り(微妙なマス目のズレに左右されにくいという意味でのルート作り)はできると思います。

あとがき

今回の検証作業で幾つかわかったことがあります。

そのうちの 1 つを紹介します。

アタックのリプレイって毎回寸分のズレもなく再生されると思っていませんでしたか?実は、0.1 マスとか普通にズレていたりするんですよ。次のスクリーンショットは全部同じアタックをリプレイしたものです。ほとんど一緒ですよね?でも、じっくり見るとガーゴイルの位置が微妙にズレているの分かりませんか?

プレゼンテーション1

ちょっと面白いですよね。。。(面白くないですよね、多分みなさんには)

さていったいどんな座標系を用いているのか、私にはとても興味があります。これだけでしばらく飯がうまくなりそうです。

それでは、今回はこのくらいで。(結構これで限界ですっ汗)

とはいえ次回の検証記事もできるだけ頑張って書いてみたいと思います。

以上、よろしくお願いいたします。