カテゴリー
雑記

カルネージハートが戻ってきた!

p0tの中の人横山宏氏が担当かよ経由。

学生の頃夏休みを延々とテレビ画面にうつるチップをみながら過ごした方こんばんは。

月影で敵の攻撃をよけまくりながら相手をターゲッティングしてミサイルサーフィン+殴りのコンボで敵をしずめまくった方こんばんは。

ロータスでミサイルよけまくりちまちま攻撃でノーダメージで敵を倒しまくった方こんばんは。

デススフィアのころころやナイトストーカーの執拗な追跡をかわすのがたまらない人こんばんは。

戦車、2足、多脚など、さまざまな種類のロボットにパーツをのせてカスタマイズ。それを戦わせるというロボット好きにはたまらないゲーム。カルネージハートがPSPで登場するらしいです!

ロボット好きは買うしか!

ただしロボットは貴様が握っているコントローラーではまったく操作できないがな!(裏技でも使わないと)

このゲームに登場するロボットはOKE(Over Kill Engine)という無人のロボットで、プレイヤーは、この無人のロボットを動かすプログラムを書いてロボットに登録して戦わせます。

敵を倒せるようなプログラムがかけないとどんなに良い装備でもストーリーは先に進みません。(逆にプログラムがちゃんとしてると終盤まで装備も何も変更しないでいける)

CEROレーティングは「A(全年齢対象)」。

とか書いてあるけど、全年齢誰でもプレイできるとか嘘です。最初の数十分で投げ出したくなります。ストーリーを味わいたい人はプログラムが鬱陶しいし、プログラムを組む事に楽しみを見出してしまうと、ストーリーをクリアする気がなくなってしまいます。クセありすぎ。

プログラムは、さまざまな機能がついたチップをつなげて作ります。チップには、条件や、条件を満たした時の次のチップへ進む方向を矢印で指定できます。p0tの人が書いてるように、矢印を流れてきたチップに戻るようにすればループを作ることができます。単純な移動や、攻撃といった操作に直接かかわるものだけでなく、プログラム内部のカウンタを増減させたり、無線のフラグを立てて他のロボットと連携させるなど、複雑な処理も行うことができます。

ただし、普通のプログラムのようにいくらでもかけるわけではなく、決められたマス目の中にチップを配置していくので、チップの置き方にも注意を払う必要があります。

例えば、普通のプログラムの場合、よく行う処理を関数化しておいて流用する事がありますが、これをカルネージハートでやると、関数を呼ぶには、その関数までの道筋をチップで作らないといけないので、その関数の始まりまでの道のりと、戻るための道のりを用意する必要がでてくるので結果的にマス目の使用量が増えて、思い通りのプログラムを書く前にチップを置く場所がなくなってしまいます。(まぁこの辺を考えるのが楽しいと思える人じゃないとダメなのかもしれません)

よくできてるのが、チップを通る処理のコストが計算されている事で、1つのチップに複雑な条件を与える事で実現できる動作を2つのチップでわかりやすく書くという富豪的なプログラミングをやっていると、チップごとの判定に時間がかかって同じ動作をするのに時間が1つのチップで実現しているOKEの方が速く動けるみたいな事になったりします。

例えば、一番最初に「自分は敵の近くにいるか、敵から離れているのか」「ダメージを受けているか、いないか」などの状況把握の分岐条件を通してそこから行動するパターンで、プログラムの実行時に必ず通る道筋に、あまり必要のない分岐条件を入れてしまうと毎回そこで判定する事になるので、そのぶん行動が遅くなるという事です。

このあたりは、ある一定の動作を一塊にして、その動作が始まったら終わるまで状況把握はしないなどして対処するなどすると効果的です。

って書きだすと終わらないのでこのへんでやめときますがまあそんなゲームなので知らなかった人は買ってみるといいです!

パソコンでプレイできたら自分も買うのになぁ。

作成者: halt

PHPプログラマ。