スキップしてメイン コンテンツに移動

投稿

ラベル(天地を喰らう)が付いた投稿を表示しています

最新の投稿

第3次スーパーロボット大戦 反撃命令による武器や行動選択の解析結果

 反撃命令による武器選択の基準がよく分からないと言われているSFC版第3次スーパーロボット大戦ですが、反撃命令の設定箇所をざっと解析してみたところ、それぞれの命令で使用武器の選択基準が違っている事が分かりました。大まかな内容ですが、基本的には以下のような基準で反撃武器や行動を選択しています(なお、原則として敵軍やNPCのパイロットは「必ず反撃せよ!」に設定されています)。  「必ず反撃せよ!」は、残弾や残りENにかかわらず命中率が1%以上ある最強の武器を選択。その武器の命中率がゼロになる場合は、次に威力が高く命中率が1%以上ある武器を選択するという思考を繰り返す。どうしようもない場合は命中率がゼロでもとにかく現状で使用可能な最強の武器を選択する。これに合致する武器がない場合は反撃不能扱いになる。弾切れや射程外からの攻撃には何もしない。先攻側の攻撃でHPがゼロになると判断しても反撃を試み、それができない場合は反撃不能扱いとなる。原則として武器選択の際に相手の残りHPは考慮しないため、反撃相手のHPが仮に残り1であろうとも最強の武器で反撃する。前述の通り、敵軍やNPCは原則としてこの命令が設定されているため、回避力(=パイロットの反応と操縦と直感の総和に機体のサイズ補正を適用した数値)が低いユニットは威力重視の武器で反撃される事が多い。残弾やEN消費も気になるところだが、分身持ちであるゲッター2系やF91であればこの命令を活用できるかもしれない。  「積極的にいけ!」は、相手が一撃で倒せる場合は命中率が1%以上ある最強の武器を選択。但し、その武器の残弾が残り1だったり、その武器を使用してもう一度使用できるだけの残りENがなくなる場合は使わず、次に威力が高く命中率が1%以上あり、かつ残弾が残り2以上か現在のENで二回以上使用できるEN消費武器を選択するという思考を繰り返す(EN消費武器に関してはたまに例外あり)。どうしようもない場合は弾切れ、またはEN枯渇にならない命中率がゼロの現在選択できる最強の武器を選択する。これに合致する武器がない場合は反撃不能扱いになる(そのため、条件を成立させれば弾切れでなくともパイロットが弾切れの台詞を吐く姿を拝める)弾切れや射程外からの攻撃には何もしない。。相手を一撃で倒せない場合の思考も同様。やはり原則として武器選択の際に反撃相手...

ファミコン版天地を喰らう 軍師戦列参加パッチを公開しました&今後の課題

 作成告知からかなり時間がかかってしまいましたが、ファミコン版天地を喰らうの「軍師戦列参加パッチ」を公開しました。内容としては隊列判定の処理の旬版を上書きして「軍師に任命された武将を戦闘開始時に隊列の最後に移動させず、そのままの位置で戦闘を開始する」というものです。  なお、隊列に負傷中の武将がいる場合は戦闘開始時に戦列から除外されます。処理的には負傷中の武将を戦列に加えたまま戦闘を開始する事も可能なのですが、基本的には武将が負傷したまま戦闘を終了した場合は大半のプレイヤーが移動画面で負傷を治療すると思われますので今回は組み込んでいません。  今後の当面の目標は「戦闘終了時に負傷した武将を自動的に復活させる処理の組み込み」や「兵糧を消費して移動中に兵士数を自動回復させる処理の組み込み」ですが、拡張領域にうまくアクセスできない状態があるので調べてみたところ、単純にROMサイズを拡張するだけではなくROM形式を同じマッパー1のSUROMというものに変更しなければならないようです。「天地を喰らう」はマッパー1のSNROMという形式で、この形式は256KBまでのROM領域しか確保できず、これ以上のサイズにするにはSUROMに変更する必要があるのですが、SUROM形式に対するバンク切り替えの定義の解釈が誤っているのか、フリーズが頻発しています。SUROMに関しては国内でも海外でも殆ど使用されなかったROM形式のため非常に資料が少なく、完全にこの技術を確立するにはまだまだ時間がかかりそうです。  「軍師戦列参加パッチ」は以下のURLからダウンロードが可能です。ファイル解凍に必要なパスワードは「ft%DX_-ZZ~~yb4tq」です。 https://ux.getuploader.com/retrogamelaboratory/download/97

ファミコン版天地を喰らう 軍師キャラの隊列変更阻止について

 天地を喰らうシリーズは策略を使うにあたって「軍師」に任命された武将がいないと使用不能になるのですが、軍師に任命された武将は戦闘が開始されると隊列の一番後ろに配置され、隊列が6人以上になると直接戦闘に参加できなくなるというシステムになっています。これがいわゆる文官タイプ(武力や兵士数が低く知力が高い傾向の武将)であればまだいいのですが、劉備や馬謖や姜維のように文武両道の武将を軍師に任命する必要がある場合は事情が変わってきます。そこで、軍師に任命した武将がどのような処理で隊列の一番後ろに回されてしまうのか調べてみました。その結果、大まかに言うと「戦闘開始時にまず隊列の人数をチェックし、6人未満である場合は各武将の状態をチェックし、正常であれば隊列の位置そのまま、それ以外の状態の武将は隊列の最後尾に変更する。6人以上の場合は軍師を隊列の最後尾に移動させるが、負傷中の武将がいる場合は更に軍師の後ろに配置する」という処理内容でした。ここで言う武将の状態は「00=負傷中(戦闘不能)、40=軍師、80=正常、C0=正常かつ軍師」の4種類で、この処理内容を変更すれば軍師に任命した武将も隊列の変更がないまま戦闘に参加できそうです。つまり「隊列が6人以上でも6人未満でも武将が正常な状態であれば隊列の位置そのままを維持し、負傷中の武将のみ隊列の最後尾に変更する」とすればよいのではないでしょうか。この仮説を基に改変を行い、成功すればパッチとして公開する予定です。

ファミコン版天地を喰らう 兵糧システム変更進捗

 ファミコン版の「天地を喰らう」では兵糧システムがストレスになっていると判断して廃止しようとしているのは先日お話しましたが、廃止処理自体は割と簡単に成功しました。しかし考えを少し改めて「兵糧があれば歩く毎に消耗した兵士数が回復する仕様にしてはどうか?」と発想を逆転させてこれを試みる事にします。  現状では一応この処理自体は組み込めるのですが、兵糧切れを起こした際に兵士数を減少させる処理を行うサブルーチンが戦闘時の兵士数を減らす処理と兼用になっているので、単純にサブルーチンの中身を改変すると今度は攻撃が当たる度に敵・味方共に兵士数が増えていくという現象が発生してしまいました。空き容量が少ない、というか皆無に近いため別途に専用のサブルーチンを設けるというのは難しく、何かいい手がないか考えております。

ファミコン版天地を喰らう 諸仕様改善案

 本宮ひろ志先生の人気漫画として名高い「天地を喰らう」は様々な形でゲーム化されていますが、個人的にはファミコン版の初代「天地を喰らう」が一番好みです。一般的にはこの作品のリニューアル版とも言える「天地を喰らう2 諸葛孔明伝」の方が評価は高いと思いますが、袁術討伐後からの自由度の高さや簡易な戦闘演出によるスピード感、孫呉との全面対決などはやはり初代に軍配が挙がると思います。但しシリーズ一作目という事もあり色々と荒削りな部分もあり、一部の武将を除いて兵士数が完全固定、お気に入りの武将のパラメーターを補強する手段が皆無、兵糧システムにより常に残りの兵糧を気に掛けながらゲームを進める必要がある、等はやはり気になるところです。  そこで、これらの要素の改善策を講じてみようと思っています。具体的には、以下のような要素を実現するつもりです。 ・自軍に加わった武将は黄忠や馬超のように自軍レベルに応じて兵士数が変化するようにする。 ・ダメージ計算値の変更。具体的には「攻撃側の武力×攻撃力/10+現在の兵士数/10-被攻撃側の武力×武装度/10」を基本値にする。 ・自軍に加わった武将は自軍レベルに応じて各種パラメーターが補強される(最大値は255)。また、可能であれば所持する事によってパラメーターが上昇するアイテムを追加。 ・兵糧システムの廃止。  まずはこんなところでしょうか。まだ解析作業にすら手を付けていないのですが、やってみるとすればこのような要素を変更したいところです。