日本鋼豹司令部 トップページへ SPWAW解説記事は、トップページからどうぞ。

セーブデータエディター

暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。
とりあえず圧縮解除したセクション1のデータを用意して適当にデータを変更。そして、いきなり元のセーブファイルのセクション1を上書き!!さらにヘッダ情報を次のように書き換えます。つまり、「セクション1のサイズは206400バイトで、圧縮指定なく先頭から読み込んでね」ということです。
・・・・で、これでSPWAWはちゃんとセーブファイルを読み込んでくれました!!WAWEDでも読み込めます。な〜〜〜〜んだ!!!!
 なななんと!!!!!  :eek:
これは目から鱗というか、なんてすごいコロンブスの卵でしょう。うーむ、普段圧縮データしか見ていなかったものだから、そちらに思考が完全に取られていました。これは思いつかなかったです。すばらしい〜。 :cheers
....でもかなりでかくなりますね、ファイル。

 さて、すたっくしているじょぶを、こんぴゅーたーとは逆に下から少しずつ処理しています。

 セクション17の構造

ですが、味方のユニットは、Norさんが書かれたように、0行からと2000行からの両方に座標があり、それぞれ座標以外は異なったデータになっていますね。しかし、敵のユニットは、0行からの味方ユニットに続いてデータが並んでおり、さらに、400行からもそれ以前に出てきたデータと全く同じものが入っています。 400行以前に出てくるデータを書き換えると、ゲームでの位置が変わりますが、400行からのデータを変えても位置は変わりません。ちなみに、例によって敵味方併せて800近いユニットが出てくるダス・ライヒのチタデレでは、敵ユニットの座標データは0〜799行に1つしかありません。と、いうことは、小規模シナリオの400行からの敵座標データは無意味なのでしょうか。謎です。
 それと、セクション17の0〜799行の各列の意味について少し分かりました。既にNorさんから報告があった情報まであわせると、
00列 ユニットのx座標 下2桁 ユニットが破壊されると「FF」
01列 ユニットのx座標 上2桁(推定) ユニットが破壊されると「FF」
02列 ユニットのY座標 下2桁 ユニットが破壊されると「FF」
03列 ユニットのY座標 上2桁(推定) ユニットが破壊されると「FF」
0E列 被発見フラグ(0=被発見、1=未発見)
10列 陣営(0=味方 1=敵)
12列 同じヘックスにスタックしているユニットの通し番号
13列 同じヘックスにスタックしているユニット数
 です。06列と07列は、異なるユニット番号でも同じ種類のユニットであれば共通で、また、同じユニット番号ではシナリオが変わっても変化しないので、ユニットの種類ごとに特有の値を取ると思われます。特に07列は例えば普通の歩兵は03、走行車両は79以上の値をとるので、例えば発見されやすさとか、逆にin cover状態の取りにくさ等を表しているのかなぁ、と考えたりします。

 さて、ここで提案というかお願いというか質問ですが、セーブデータ構造について結構情報がたまって来つつあります。ですが、断片的に散在しているのでわかりにくくもなっています。そこで、Wikipediaのように、誰でも追加・修正が可能なデータベースを、このHP内に作ることは可能なのでしょうか。何となくエクセルの表の様な感じで、セクション番号、ユニットあたりのデータ長、ユニットデータの各列の意味、等の項目が並んだ物を想像しているのですが.....。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
さて、ここで提案というかお願いというか質問ですが、セーブデータ構造について結構情報がたまって来つつあります。ですが、断片的に散在しているのでわかりにくくもなっています。そこで、Wikipediaのように、誰でも追加・修正が可能なデータベースを、このHP内に作ることは可能なのでしょうか。何となくエクセルの表の様な感じで、セクション番号、ユニットあたりのデータ長、ユニットデータの各列の意味、等の項目が並んだ物を想像しているのですが.....。
さっそく実現しました!ちょいと編集機能がショボいですが、実用性は充分かと思います。
まずは↓のポストを見てください。
viewtopic.php?t=661

島風 wrote:
しかし、敵のユニットは、0行からの味方ユニットに続いてデータが並んでおり、さらに、400行からもそれ以前に出てきたデータと全く同じものが入っています。 400行以前に出てくるデータを書き換えると、ゲームでの位置が変わりますが、400行からのデータを変えても位置は変わりません。ちなみに、例によって敵味方併せて800近いユニットが出てくるダス・ライヒのチタデレでは、敵ユニットの座標データは0〜799行に1つしかありません。と、いうことは、小規模シナリオの400行からの敵座標データは無意味なのでしょうか。謎です。
なるほどなるほど。細かく比較するといろんなことがわかりますな。興味深い点があるので、私もデータの具体例を挙げてみます。

まず、使用データは自作の「歩兵演習」キャンペーンのセーブファイルです。このキャンペーンは2シナリオからなり、1シナリオ目の終了時点(シナリオ移行時)にセーブしたデータを使用しました。

このデータでは、0〜15行は自ユニットのデータが並び、16行目から21行目まで敵ユニットのデータが次のように並びます。
255 255 255 255 000 000 112 004 255 255 003 000 000 000 000 255 001 000 000 001 
255 255 255 255 000 000 136 004 255 255 004 000 004 000 000 255 001 000 000 001 
255 255 255 255 000 000 136 004 255 255 003 000 000 000 000 255 001 000 000 001 
024 000 003 000 000 000 085 004 255 255 000 000 000 000 000 255 001 000 000 001 
255 255 255 255 000 000 106 004 255 255 001 000 000 000 000 255 001 000 000 001 
020 000 003 000 000 000 085 004 255 255 003 000 003 000 000 255 001 000 000 001 
ご覧の通り、敵は6ユニットで、そのうち4ユニットは壊滅しています。

で、400行目から407行目のデータは次のようになっています。
024 000 023 000 000 000 097 004 255 255 003 000 000 000 001 255 001 000 000 001 
255 255 255 255 000 000 000 000 003 000 003 000 000 000 001 255 001 000 000 000 
255 255 255 255 000 000 000 000 003 000 003 000 000 000 001 255 001 000 000 000 
022 000 024 000 000 000 136 004 255 255 000 000 000 000 001 255 001 000 000 001 
022 000 022 000 000 000 136 004 255 255 003 000 000 000 001 255 001 000 000 001 
024 000 003 000 000 000 085 004 255 255 000 000 000 000 001 255 001 000 000 001 
016 000 003 000 000 000 085 004 255 255 003 000 000 000 001 255 001 000 000 001 
020 000 003 000 000 000 085 004 255 255 003 000 000 000 001 255 001 000 000 001 
まず、敵は6ユニットしかいないはずなのに、データは8行あることに気づきます。これは謎ですが401〜402行目のデータは座標がないので空だとみなすべきなのでしょう。

次に、残りの6行分のデータを16行目からのデータと比較すると、生き残っている敵ユニットの座標は同一ですが、壊滅ユニットの座標が存在すると言う点が決定的に異なります。

この壊滅ユニットの座標をマップ上で見てみると、実は初期配置座標とぴったり一致するのです(何せ作者だからはっきりわかります :cool: )。しかし、なぜ初期配置座標なんかがセーブデータに残るのか?壊滅時の座標が残るならまだ理解できそうですが、この座標は壊滅時のものではないことも間違いありません。

結局、何だかよくわかりませんが、もしかすると401〜402行目の空データは、シナリオ作成時に一度は購入したものの、返却したユニットのものなのかもしれません(作者だけど、このシナリオは何年も前に作ったものなので、残念ながらそこまでは覚えてない! :oops: )。

というわけで、400行目からの敵ユニットデータは、本当にあってもなくてもど〜でも良いものなのかもしれませんね。
そして、『ダス・ライヒのチタデレでは、敵ユニットの座標データは0〜799行に1つしかありません。』ということですが、じゃあ敵の座標ってどこにあるのよ???って感じですね。無いわけは無いんですけどねえ。謎が謎を呼ぶなあ・・・ :pale

06列と07列は、異なるユニット番号でも同じ種類のユニットであれば共通で、また、同じユニット番号ではシナリオが変わっても変化しないので、ユニットの種類ごとに特有の値を取ると思われます。特に07列は例えば普通の歩兵は03、走行車両は79以上の値をとるので、例えば発見されやすさとか、逆にin cover状態の取りにくさ等を表しているのかなぁ、と考えたりします。
上記データの06〜07列を見ると、06列の値が・・・16行目からのものと400行目からのものでは微妙に違う!!なんで??

そして、これらのユニットは全て歩兵タイプ(上からHQ×1、機関銃×2、偵察×3)で、07列の値はすべて「04」です。07列の意味は島風さんご指摘のような感じかもしれませんね。しかし外部からは見えないプログラム内部のパラメータだとしたら、これ以上どうにもなりませんなあ・・・。 :porc
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。
さっそく実現しました!ちょいと編集機能がショボいですが、実用性は充分かと思います。
まずは↓のポストを見てください。
viewtopic.php?t=661
 指揮官様、編集可能なデータベースの「おおもと」を作成いただきありがとうございます。 :cheers
 早速登録させていただきました。たくさんの方に参加していただけるといいですね!!  :wink:

 ところで、HPにアクセスし編集作業を行おうとすると、登録アドレスとパスワードの入力が求められます。正しく入力したつもりですが、

**@** にはこのスプレッドシートへのアクセス権限がありません。

と、断られてしましました。何かこちらのアクセスのしかたに問題があるのでしょうか。


そして、『ダス・ライヒのチタデレでは、敵ユニットの座標データは0〜799行に1つしかありません。』ということですが、じゃあ敵の座標ってどこにあるのよ???って感じですね。
 そうですね。小規模シナリオでは、味方ユニットの位置データに引き続き、0〜399行の中に敵ユニットの位置座標データも並んでいます。そして、400行からにもそれ以前に出てきた敵の位置座標のデータのコピーがあります。しかし、チタデレではユニット数が多いので、0〜799行に味方・敵の位置座標のデータがびっしり詰め込まれていて、敵の位置座標データのコピーの分がないんですね。コピーはいらへんのかいっ、って感じです。
上記データの06〜07列を見ると、06列の値が・・・16行目からのものと400行目からのものでは微妙に違う!!なんで??
 何ででしょう?? 06列の値が異なっているのは、0行と、4行の壊滅したユニットですね。壊滅と関係あるようにも思えますが、1行と2行は壊滅しても06列の値は同じです。なぜでしょう?? 
 うーむ、「生データ」はやはり説得力と迫力がありますね。それを見せていただくことで、こちらからも意見を言えるし、自分が何を気づかなかったのかも分かってきます。なるほど、僕は各シナリオの0ターン同士を比べたので、違いが見えてこなかったのですね。やはり、検証作業は複数人員でやるのがいいですね。解析精度も上がります。

 えー、さて、

セクション17の400行目からは本当に必要か

ですが、やっぱりいらないのかな、と思われます。通常のデータファイルでは、400〜799行のうち、敵の位置が入っていない部分は 0E 列は 01 、それ以外は FF となっています。そこで、Das Reich #14 Partisans!! の0ターンのセーブデータをバイナリエディターでいじくって、セクション17の400行目からを
FF FF FF FF FF FF FF FF FF FF FF FF FF FF 01 FF FF FF FF FF
に書き換えて、敵の位置情報を消してみました。その前後の圧縮形式と、セクションのヘッダー部分にあるセクションデータのバイト数も修正しました。さて、ゲームを開始したところ、通常通り進み(Wurfrahmen 40とSdKfz 251/2の間接射撃でぼこぼこに殴り倒し、直接射撃の機会はあまりありませんでした)、ちゃんと終了し(もちろん、DVですが、あまりおもしろくない勝ち方ですね)、次のシナリオへと進むことができました。
 また、シナリオの途中のターンや終了時のターンのデータファイルでは、0〜399行のうち、敵・味方問わず、移動や消滅した部隊のデータは書き換えられていまたしが、400行目からはそのまま( 0E 列は 01 、それ以外は FF )で変化していませんでした。やっぱり、ゲームをするには特に関係のないデータのようです。


 さて、この解析の途中で、セクション17の0〜399行ので2列分の意味が新たに分かりました。
0A列はユニットの車体の向き
0C列は砲塔の向き
3時の方向が「0」、5時が「1」、7時が「2」、9時が「3」、11時が「4」、1時が「5」
です。砲塔を持たないユニットは、この2列は同じ値を取ります。ただし、この2列は「おおまかな」向きのみを表していて、例えば2時は「0」、12時は「5」、10時は「3」、8時は「2」、6時は「1」、4時は「0」です。同一種類のユニットで、3時を向いていて「0」のユニットと、4時を向いていて「0」のユニットでは、0〜399行および2000行からのデータも、位置座標以外の違いはないことから、本当に細かな向きはどこか別の場所にあるのではと思われます。うーむ、どこでしょう???? 久しぶりですが、「まだまだ奥が深い」。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
ところで、HPにアクセスし編集作業を行おうとすると、登録アドレスとパスワードの入力が求められます。正しく入力したつもりですが、

**@** にはこのスプレッドシートへのアクセス権限がありません。

と、断られてしましました。何かこちらのアクセスのしかたに問題があるのでしょうか。
う〜む・・・謎ですなあ。編集権の付与はちゃんと出来てると思うのですが・・
編集画面への入り方は2つあって、ひとつは、
http://spreadsheets.google.com/pub?key= ... GQBxDJyfUQ
1.↑を開いて、画面右下にある「このページを編集」という部分をクリック
2.Googleアカウント入力画面になるので、メルアドとパスワードを入力

もうひとつの方法は、
http://docs.google.com/?hl=ja
1. ↑を開いて、最初にGoogleアカウントを入力する。
2. 編集可能なファイルの一覧が表示されるので選択

というものです。とりあえず二番目の方法を試してもらえますか?

砲塔を持たないユニットは、この2列は同じ値を取ります。ただし、この2列は「おおまかな」向きのみを表していて、例えば2時は「0」、12時は「5」、10時は「3」、8時は「2」、6時は「1」、4時は「0」です。同一種類のユニットで、3時を向いていて「0」のユニットと、4時を向いていて「0」のユニットでは、0〜399行および2000行からのデータも、位置座標以外の違いはないことから、本当に細かな向きはどこか別の場所にあるのではと思われます。うーむ、どこでしょう???? 久しぶりですが、「まだまだ奥が深い」。
やあやあ、初めて私がズバリ答えられる質問です!! :cool:
ユニットの向きはセクション1の98〜9Bです。98・99が車体の向き、9A・9Bが砲塔の向きです。3時方向を0度とした角度で表されるようで、例えば、
0=3時、90=6時、180=9時、270=12時
になることを突き止めています。

う〜ん、しかしセクション1に精密な向きを表すデータがあるのに、セクション17にも大まかな方向データがあるのか??
セクション17のデータは、最大値が5なら60度単位になってるみたいので、もしかして視界チェック(LOS表示)とかに利用されているのかもしれませんね。
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。
う〜む・・・謎ですなあ。編集権の付与はちゃんと出来てると思うのですが・・
 すみません。そちらへ送付したアドレスが間違っていました。 :porc
正しいアドレスを送付しましたので、編集権の付与をもう一度やっていただけませんか。

 さて、セクション8の構造ですが、
100(X座標) * 240(Y座標) * 20バイト(1ヘックスあたりのデータ量) = 480000 バイト
(0,0)から下向き(Y座標が増える方向)に20バイトずつ増加していく
 例えば  (0,0)のアドレス00〜13(H)、(0,239)のアドレス12AC〜12BF(H)
     (1.0)のアドレス12C0〜12D4(H)、(1,239)のアドレス1256C〜257F(H)
となっているようです。
 僕は今日やっと気づいたのですが、WAW Ed の Tools の Dump File から、任意のセクションの非圧縮(展開された)データを書き出しできるのですね。そこで、(17,15)にいるHQの向きを「1」と「2」にして両者のデータを比べたところ、
               HQの向き「1」 HQの向き「2」
セクション1の向き(98〜9B列)      63         117
セクション8のデータの大きさ	  16751	   16753
セクション8のデータ(18カ所)
セクション17の向き(0A列)     1      2
のみが異なっていました。(Norさん、セクション1のユニットの向きの情報ありがとうございました。それから、追加情報ですが、セクション17の向きは、歩兵などの非車両ユニットは0A列にしか値がありませんでした。) 
 セクション8のデータでは、18ヘックス分のデータ、しかも、どのヘックスデータも10(H)列めが「00」か「01」かで異なっていました。
1の向きの時の値が「00」、2の向きの時の値が「01」のヘックス
   (18,16)(18,17)(19,16)(19,17)(19,18)(19,19)(20,16)(20,17)(20,18)
1の向きの時の値が「01」、2の向きの時の値が「00」のヘックス
   (14,17)(15,16)(15,17)(15,18)(15,19)(16,16)(16,17)(16,18)(17,16)
これをみると、HQユニットの向きを変えることで値が変わったのは、HQユニットがいるヘックスではなくて、HQユニットから見える(10(H)列めが「00」)、または、見えなくなった(10(H)列めが「01」)ヘックスだ、ということです。
 地形データがない、すなわちそのシナリオの「番外」のヘックスでは、10(H)列めをふくめ20バイト全て「00」になっています。地形データがあるヘックスは、基本的には10(H)列めは「01」ですが、味方ユニットからLOSが通っているヘックスでは「00」になっているようです。試しに、視線が通っていないけど敵のユニットがいるヘックスデータの10(H)列めを「00」にしても、敵ユニットが見えたりはしませんでした。ちゃんと見えるかどうか再計算され、値が「01」に戻ってしまいます。

 セクション17のA0、0C列は、Norさんの言われたように、LOSに関係しているのかもしれませんね。ただし、確かめる方法は、ちょっと思いつきません。セクション17のA0、0C列をエディターで書き換えても、LOSが通るかどうかは再計算されません。で、再計算させるにはゲーム画面で右クリックしたりしますが、その際には、ユニットの向きなどもゲームプログラムが書き換えてしまうので、エディターで書き換えた値が上書きされLOSの計算に反映されないからからです。残念。 :sad:

 それから、セクション8のその他の列データについては、いまのところ手をつけていません。なんだか、とても、難しそうです。 :?
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
僕は今日やっと気づいたのですが、WAW Ed の Tools の Dump File から、任意のセクションの非圧縮(展開された)データを書き出しできるのですね。
まず何よりもコレに驚きましたよ!! :shock:
そういえば、そんなことさえお伝えしてませんでした。申し訳ありません・・・。しかし・・これまでそんな悪条件でよく解析できましたね。いやいや、ホントに脱帽です。
ちなみに言いますと、個別セクションの読込や全セクションの一括出・入力も可能です。あ、もう気づいてますよね。 :evil:

お詫びのしるしといっては何ですが、『WAWED勝手に日本語版』をメールにて送っておきます。
これは私が私の解析の利便さを確保するためだけに日本語化したもので、Fred Chlanda氏のツールに特有の、「デフォルトで画面の一部が表示されない」「省略しすぎて意味わかんない」などの問題を一部解消しています。特に、HEXエディタウィンドウを横に広げて表示範囲が拡大されるので、少しは使いやすいかと思います。


さて、本題ですが、セクション8の構造をよく自力で発見されましたね!! :shock:
いや、これも早く言えばよかったのですが、WAWEDの作者がWAWMAPというマップ編集ツールを作っており、そちらの関連でセクション8の持つ20バイトのヘックス情報の意味はある程度明らかになっております。以下、手持ち資料からの引用です。
Byte	Meaning
----------------------------------
0	Describe terrain
1	Describe terrain
2	Describe terrain
3	Describe terrain
4	signed integer altitude (0-255)
5	signed integer altitude (0-255)
6	armor/infantry spotting or defensive (?)
7	? ( maybe negative modifier for DefenseValue or LineOfSight ) ?
8	armor/infantry spotting or (defensive (?) HARDCODED)
9	Smoke Values (0-100%) 101 means fire in Hex!
10	hex damage level 0-200%, used for shellholes and rubbled buildings (graphics)
11	(Map Text container number)
12	secondary road connections
13	primary road connections
14	RR connections
15	? (not used?)
16	???? Hex fire Spread/Smoke Spread???
17	? (not used?)
18	? (not used?)
19	? (not used?)

で、今回島風さんが発見したのは、この表で言うと17バイト目のことですよね?
表では不明ってことになってますが、これが味方のLOSの有無を表すということですね。
つーことは、同様に、18バイト目は敵軍のLOSの有無を表すのかもしれませんね(いえいえ、決してネタを振っているわけではありません)。 :cool:

いやいや、ホントにスゴイ発見です。 :salut
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。
 Google Docs & Spreadsheets に無事アクセスできました。ありがとうございました。 :cheers
 さすがに、セクション1は書き加えることはほとんどありませんね。
追加したのは、不確定情報の
B9 潜入開始(マップから消える)フラグ? (消えている=1、消えていない=0)
です。なぜか表示がおかしくなってD1以降の編集ができませんでしたので、こちらに書きますが、
F8 敵味方識別フラグ。0=味方、1=敵。
F9 放棄フラグ。0=通常、1=放棄。
FA Armored Skirt
FC 攻撃目標 X 座標
FE 攻撃目標 Y 座標
ぐらいでしょうか。
 セクション1の謎の一つに、装甲値がありますよね。車体と砲塔、前・横・横・後・天井で分けてありますが、それぞれおそらく4バイトずつになっていて、通常は最初の3バイトが同じ数字、4バイト目が異なる数字になっています。なぜ3+1バイトも必要なのでしょうかね。4個の武器スロットに対応しているわけでもなさそうだし。ちなみに、タイガーの砲塔装甲データですが、
Tiger IE チェコ製
  176 176 176 56 80 80 80 46 80 80 80 46 80 80 80 46 25 25 25 25
Tiger IE(early) ドイツ製
  148 148 148 15 82 82 82 13 82 82 82 13 82 82 82 82 25 25 25 25
となっています。正面装甲が厚いのと、価格が安いので、チェコ製を愛用しているのですが、例えば4バイト目の数字が「脆弱性」とか「運の悪さ」とかを表していたらいやだなぁ。
お詫びのしるしといっては何ですが、『WAWED勝手に日本語版』をメールにて送っておきます。
 いえいえ、謝って頂く必要は全くありません。こういうツールはいろいろと機能がついているのでとりあえず一通りいじってみないといけませんね。
 それより、『WAWED勝手に日本語版』、ありがとうございます!!! これはいいですね。
特に「HEXエディタウィンドウを横に広げて表示範囲が拡大される」のは、最高です。 :cheers
これでずいぶんと便利になます。

 ところでセクション8ですが、セクション17の向きを変えて変化したところがたまたまこのセクションだったので、ちょっと調べてみたのですが、すでに公表されていたんですね。いゃ、実は、既に知られている情報をよく確かめもせず無駄に時間を費やしてしまうことは、日常的によくあって、僕の欠点の一つです。 :porc
 えーと、10(H)列は16列なので、「???? Hex fire Spread/Smoke Spread??? 」のところですね。そのうえで、Norさんの「18バイト目は敵軍のLOSの有無を表すのかもしれません」という仮説はおもしろいですね。被発見マークが付いた味方ユニットがいるヘックスの情報を見てみれば何かわかりそうですので、今度調べてみます。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
なぜか表示がおかしくなってD1以降の編集ができませんでしたので、こちらに書きますが、
F8 敵味方識別フラグ。0=味方、1=敵。
F9 放棄フラグ。0=通常、1=放棄。
FA Armored Skirt
FC 攻撃目標 X 座標
FE 攻撃目標 Y 座標
ぐらいでしょうか。
了解です。上記の項目は全て追加しておきました。
自分で設定しておきながら言うのもなんですが、ちょっとこのスプレッドシートは使いにくいですよね。 :?

セクション1の謎の一つに、装甲値がありますよね。車体と砲塔、前・横・横・後・天井で分けてありますが、それぞれおそらく4バイトずつになっていて、通常は最初の3バイトが同じ数字、4バイト目が異なる数字になっています。なぜ3+1バイトも必要なのでしょうかね。4個の武器スロットに対応しているわけでもなさそうだし。
WAWEDのreadmeファイルに以下のような記述があります。
Fixed 0.050a
Armor for each AFV area is stored as 3 separate values. Previously, WAWEd changed only one of these. This may or may not have had the desired effect in SPWAW. Now, all three values are changed when the retain button is clicked.
この記述から、同一装甲値が3バイト分存在し、値を変更する際には全部まとめて変更しないと不具合がおきる可能性があることがわかります。どうやらChlanda氏も、当初はこのことに気づいていなかったようなので、SPWAWの装甲値データの扱いは、SP2やSP3とは異なっているのでしょう。

しかし、肝心の4バイト目の意味には触れられておらず、謎のままです。それにしても、チェコ製とドイツ製Tigerの4バイト目の差異は興味深いですね。同一なのは頂部だけなので、もしかして傾斜(頂部装甲のみ傾斜データを持たない)と関係あるのかと思いましたが、OOBを見てもよく分かりませんなあ。
例えば4バイト目の数字が「脆弱性」とか「運の悪さ」とかを表していたらいやだなぁ。
あ、それいいなあ! :cool:
でも現実的に考えると、OOBで規定されている値から何らかの修正値なり参照値を算出してるとみるべきでしょうか。あるいは、ゲーム中にこの値が変化するなら、ダメージなんかの要素を表現してるとか?まあ、おいおい判明するでしょう。
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。

 Docs & Spreadsheetsに、sec08とsec17を追加し、「概要」に記述を追加しました。体裁はこんな感じでいいのでしょうか、Nor司令官殿。

 さて、カタツムリより遅い解析状況ですが、今回は短く2点、

1. セクション1の装甲値の4バイト目はゲーム中に変化しない。
2. セクション8の10(H)列は、アクティブなユニットのLOSを示していると思われる。10(H)列目以降、18バイト目等が敵軍のLOSの有無を表すかどうかは、セーブデータでは解析できない。

 1.ですが、キャンペーンの各シナリオの第0ターンと最終ターンのデータをいくつか比較しましたが、ダメージを受けたり破壊さたユニットについても、ダメージを受けなかったユニットについても、敵・味方どちらのユニットについても変化していませんでした。内部コードでしょうか(と、言って、逃げると楽ですね)。
 2.ですが、味方の被発見ユニットが存在し敵のLOSが通っていると思われるヘックス、及び、敵のLOSが通ってないと確実に思われるヘックスについて、10(H)列以降の値を調べてみましたが、基本的にいずれも「00」でした。また、10(H)列以降で「01」の値が現れたのは10(H)列だけで、味方ユニットをアクティブにして視界を確認した直後にセーブしたときのみでした。同様のことが敵ユニットについても当てはまるなら、もし18バイト目等が敵軍のLOSの有無を表すとしても、敵ターンではセーブできないので、セーブデータでは解析不可能ということになります。うーん、メモリデータをリアルタイムにモニターするしか方法が浮かびませんが、そこまでの技術力が不肖島風にはありません。残念  :cry:
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
Docs & Spreadsheetsに、sec08とsec17を追加し、「概要」に記述を追加しました。体裁はこんな感じでいいのでしょうか、Nor司令官殿。
更新&解析ありがとうございます。 :salut
スプレッドシートの書き方は、理解できればなんでもOKです。ここ数日ちょい多忙でサボってましたが、私もこれから頑張ります。はい。
1. セクション1の装甲値の4バイト目はゲーム中に変化しない。
2. セクション8の10(H)列は、アクティブなユニットのLOSを示していると思われる。10(H)列目以降、18バイト目等が敵軍のLOSの有無を表すかどうかは、セーブデータでは解析できない。
なるほどなるほど。1については、これ以上の解析は無理っぽいですね。何か偶然のきっかけでわかることがあるかもしれませんし・・ね。 :cool:
2については、確度の高い解析結果になりましたね。アクティブユニットのLOSのみ記されるってのは盲点でした。画面表示の際にそういう情報が必要ですもんね。つーか、それしかいらないんだ。納得です。
そして、リアルタイムでメモリを追いかけるのは不可能じゃなさそうですが、やめときましょう。うんうん。 :cool:

それと、ちょっとお願いなんですが、ダス・ライヒのセーブデータくれませんか?というのも、私全然ゲームやってない&やる気でない(!)ので、まともなキャンペーンのセーブデータが無いのです。適当にエディットしたシナリオやキャンペーンの最初だけというデータでも分かることはあるのですが、当然記録されていないものも多いと思うので。

できれば、
・シナリオの配置(or 1)ターンのデータ
・同シナリオの最終ターン(or スコア画面)のデータ
・次のシナリオの配置(or 1)ターンのデータ
・同シナリオの最終ターン(or スコア画面)のデータ

という感じで、連続する2面分くらいいただければ充分です。お手数ですが spwaw.nor@gmail.com
まで送ってくださいませ。よろしくお願いします。 :salut
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。
 Nor様、今度はちゃんと、DRキャンペーンシナリオ0と1の、シナリオの配置ターンと同シナリオの最終ターンのファイル、を送付できたようです。
 これで、いいですか?
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
これで、いいですか?
:salut
image
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
マップ関連セクションを除く、これまで未調査のセクションをちょちょいっと調べてみました。
明らかに「こりゃ絶対解読できまへん」というものもあれば、「ヒラメキがあればわかりそうな気がする」ものもありました。その結果はスプレッドシートの概要に書いております。

一つ新たに内容が判明したセクションがありました。わずか1バイトのセクション21で、これはおそらく「キャンペーン番号」を指しております。たぶん間違いないと思いますが、シナリオの場合はどうなのかはまだ調べてません。1バイトじゃ番号が足りない気がするし・・・ :roll:

また、セクション37の調査をすすめ、スコアや損害データなどの場所が新たにわかりました。しかし、手元のセーブデータだけでは次の点がわかりません。

・自軍(Side0)のArt、SV、APC、Glider、Air 損害
・敵軍(Side1)のGlider、Air 損害

これらの情報を特定する方法は非常に簡単で、
1.上記損害が発生した任意の面のスコア画面をメモっておく
2.セクション37のアドレス140〜172の間に、特定の損害値が出現する場所を探す
だけです。

なお、スコア画面ではその面の損害と、その時点までの損害合計が「30:120」のような形式で表示されます。その面の損害はアドレス140〜172の間、損害合計は100〜132になっており、対応関係にあるようです(例えば、107〜108は「Side0 のAFV損害合計」であり、40バイト後の147〜148は「Side0 のAFV損害(その面)」になります)。

また、どうやら兵員(Men)損害だけは、3バイト分確保されているようで、その他は2バイトで表されるようです。

というわけで、お暇な時にでも上記項目の特定にご協力ください。 :salut
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。

 わおっ、着々と進んでいますね、Nor司令官殿。 :cool:
 スプレッドシートもいつの間にか、いろいろと情報が増えています(僕の今日の書き込み分もスプレッドシートにも反映させました)。何よりうれしいのは、「なんとかなるかも」!!!!! という項目が目白押しではないですかっ!!!! :cheers
 お互い、がんばりましょう。 :wink:

 さて、順番に。
わずか1バイトのセクション21で、これはおそらく「キャンペーン番号」を指しております。1バイトじゃ番号が足りない気がするし・・・
 なるほど「キャンペーン番号」ですか! 確かにDRは39ですね。でもNorさんが書かれているように、シナリオもキャンペーンも0〜999の1000個までOKの様ですので、1バイトですと最大FF(H)=255で256個で足りないですね。うーん、これはでもひょっとしたら、256番以降のキャンペーンではセクション21が2バイトになるか、1バイトのセクション20か2バイトのセクション22かが残りの数字を表しているのかもしれません。合計で2バイトあれば、65536個までOKになります。
 適当にキャンペーンを作って256番目以降にセーブすれば分かるかと思いましたが、SPWAWのキャンペーンエディターで新たに作ってセーブすると、あいているスロットのうち一番小さい番号に勝手にセーブするので調べることができませんでした。技量不足です、すみません :oops:
セクション37の調査をすすめ、スコアや損害データなどの場所が新たにわかりました。項目の特定にご協力ください。
 スコアや損害データはセクション37ですか。さすが司令官殿です。やりましたね。 :wink:
 早速調べてみました。自軍(Side0)のArt、SV、APC、Air 損害は、それぞれ、アドレス10C, 112, 10A, 116でした。残念ながら、敵・味方のグライダー(すみません、まだ使ったことがありませんでした)と敵の AirCraft は分かりませんでした。各項目は、恐らくMenまで含めて2バイトではないかと思います。手元のセーブデータでは、アドレス100と101は「0」で、アドレス102と103がside0のMenの損害合計、アドレス103と104がside1のMenの損害合計でした。65535人(!)を超える死傷者は想定していないのかもしれません。また、偶数アドレス+奇数アドレスで1組になっていると思われます。アドレス122は「01」となっていますが、何を意味するのかは分かりませんでした。

 さて、しつこく、セクション17です。
00〜03列 「FF」になるのはマップから消える時
04,05列 飛行ユニットで使用 それ以外のユニットは「00」
06,07列 ユニット本体のグラフィックデータ(内部コード)? マップから消えたユニットは「00」
08,09列 旋回砲塔のグラフィックデータ(内部コード)? それ以外のユニットは「FF」
10列   敵(=1)・味方(=0)フラグ
 まず、ユニットの座標を表す00〜03列ですが、ここが「FF」になるのは破壊されたときではなくて、マップから消えたとき、が正しいようです。例えば、放棄されたり破壊された戦車などはマップ上にグラフィックが残るので、ここの値は「FF」にはなっていませんでした。歩兵ユニットでは、壊滅すると、まず、00〜03列が「FF」になりますが、06,07列の値は残ります。次のターンで、06,07列が「00」になりました。また、番外砲は、X座標(00,01列)は「FF」ですが、Y座標は「FF」ではありませんでした。さらに、飛行機は、00〜03列は「FF」ですが、04,05列に何らかの値を持っていました(04,05列は通常ユニットは「00」です)。
 それから、06,07列ですが、これは、グラフィックデータ(たぶん内部コード)だと思います。例えば、 SS Rifle Sqd で06列が「241(D)」「244」「247」「250」の場合、それぞれグラフィックでは10人,9人,7人,7人のように見え(「247」と「250」は見える人数は同じでもグラフィックが微妙に違う)、部隊の実際の人数は10人, 9人, 8人, 7人となっていました。07列はどれも「3」で同じでした。同様のことは GE Light Cav でも見られ、06列が「27(D)」の時は3匹のお馬さん、「30」の時は2匹のお馬さんのグラフィックで、07列はどれも「4」で同じでした。それから、08,09列は基本的に「FF」ですが、旋回砲塔を持つユニットのみ、それ以外の値が入ります。これも、グラフィックデータ(たぶん内部コード)だと思います。さらに、10列は敵(=1)・味方(=0)フラグのようです。
 0F列は「FF」、11列は「00」で、どちらも未使用なのでしょうか。もしそうだとすると、これでセクション17は、終わりです!!! :cheers
 (喜ぶのはまだ早いですかね)
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
セクション21について
マニュアルにもそんな記述があるので、私もキャンペーンは1000個まで保持できると思っていましたが・・・・実際は100個(番号0〜99)しか保持できなさそうです。 :shock:

まず、シナリオでは、関連ファイル(cmt、dat、txt)のファイル名"Scenxxx"のxxxの値を変更すれば、自由にシナリオ番号を変更できます。キャンペーンでは関連ファイルの数が増えますが、同じ要領でキャンペーン番号が変更できる・・・と思いきや、そうではありませんでした。

関連ファイルの番号を全て256に変更すると、キャンペーン選択画面では確かに256番目に表示されますが、実際にはプレイできません。どうもファイルの読込がうまくできないようです。ただし、変更先の番号が99番までならこの方法でもきちんと動作します。

で、内蔵のキャンペーンエディタですが、キャンペーンの新規作成(New Campaign)を選ぶと、ご指摘の通り、勝手に一番若い利用可能なスロット番号が割り振られてしまいます。しかし、空のスロットをクリックすると、編集画面に移行できるので、任意のスロット番号のキャンペーンが作成できる・・・・わけではありませんでした。

キャンペーンエディタで空スロットを選択した場合、編集画面に移行するのは、スロット番号0〜99までに限定されているようです。100番以降のスロットを選択した場合には、編集画面に移行してくれません。

以上のことから、キャンペーンで利用できるスロット番号は0〜99までと結論した次第です。これはこれでビックリな結論ですが、キャンペーン番号が99までしかないなら、セクション21の1バイトだけでキャンペーン番号は規定できると。

また、シナリオのセーブファイルをみると、セクション21はやはり0でした。さらに、キャンペーンの生データ(Campaignフォルダにあるデータ)の場合も0です。つまり、セクション21は、キャンペーンのセーブデータのみ値が入るということになります。


セクション37について
全て了解です。 :salut


セクション17について
詳細な分析ありがとうございます。06~07列の分析過程は面白いですね。よくぞここまで見つけてくれました!! :P

まず04〜05列ですが、飛行ユニットのみ値が立つという点は確認しました。より厳密に言えば、「一回飛行後の飛行ユニットのみ」ですよね?単に飛行(爆撃)命令を出した時点では、ここの値は00のままで、実際に飛行したら値が立ち、それ以降のターンでは値は変更されず、次に飛行したら再び値が変わるということでOKでしょうか?

飛行ユニットしか持たない値って?・・・と考え、真っ先に思いついたのは、進入・退出経路でしたが、どうやら違うようですね。2機の飛行機を同一ターンに、同一照準に、同一経路で飛ばしても異なる値が立ちました。そういえば、飛行経路データってきっとセクション1にあるはずですね。探さなきゃ。

ということで、04〜05列の意味は謎のままです。このセクションは画面表示に関するデータばかりなのですが・・飛行機を表示する際にいるデータって何よ???


06、07列について。島風さんがここまで突き止めてくれたので、何とか完全解明したいと思い、頑張ってみました。結論から言うと、島風さんの予想はほぼ的中です。06〜07、08〜09は共に2バイトデータで、ユニットグラフィック番号の内部コードを指しています。

以下、長い長い予備知識の説明になりますが・・・

まず、歩兵系を除くユニットは固有のアイコンを持っています。このアイコン番号はOOBに載っているもので、セクション1の12〜13列に格納されています。一方、歩兵系ユニットは、アイコン番号が全て0になっています。SPWAWの歩兵アイコンは、枢軸国・連合国・ソ連・日本という4種類にまとめられていることが原因だと思われます。

ところで、実際のアイコン画像はSHPフォルダの"Iconxxxx.shp"というファイルにあります。一つのSHPファイルには、複数個(30個とか108個とか)のアイコン画像が格納されており、xxxxの番号は0000から3401まであります(ただし飛び番号も沢山ある)。

で、ややこしいのは、どの番号のアイコンがどのファイルに格納されているのかが、まるで予測できないということです。しかしこれは、SHPフォルダにある"SPWAW V8 Icon list KED.xlr"というファイルにちゃ〜んと書いてあります。これをみれば、どのファイルの何番目に何のユニットの画像があるかと、OOBで規定されているアイコン番号との関連がわかります。

しかし、このファイル番号やそのうちの何番目かという値も、セクション17の06、07列で規定される番号とはまるで異なります。どうやら、ゲーム内部にはOOBのアイコン番号と実際の画像との対応テーブルがあるのでしょう。やっぱ内部コードか・・・と諦めかけた時!! :cool:

そのテーブルが何と!ちゃんとファイルとして存在するではないですか!!SHPフォルダにある"Icon Data List-February 15.txt"がそれです。全ての答えはここにありました。唯一の問題は、このファイルの作成日が古く、現バージョン8.403のデータとは微妙に異なる点があることですが、まあだいだい同じような感じです。

例えばドイツ軍の88mm ATは、アイコン番号が「667」で、06〜07列の値は「1726(D)」です。"Icon Data List-February 15.txt"を探してみると、次のような行が見つかります。
 {1726,P_ERROR},  //667.88mm AA-Gun		
	{1728,P_ERROR},  //668.88mm AT-Gun

あれ?本来なら06〜07列の値は「1728」になって欲しいところですが、どうやらアイコン番号も異なっているので、このファイルの作成日以降にOOBの変更があったと解釈すべきでしょう。とにかく、ここに「1726」という値が出てきただけで充分です。これぞ内部コードだ!

で、08〜09列の意味もこのファイルで明らかになりました。88ATの08〜09列の値は「2800」です。この値で検索してみると、
	 //GE GUN CREW  2800
!!完璧!! :pirat

では08〜09列はCrewmanのグラフィックなのか?いえいえ、砲塔を持つユニットはここに砲塔グラフィックの番号が入るようです。例えば、独軍のPz35(t)は、06〜07列の値は「20124(D)」で、08〜09列は「20127(D)」です。で、
	{20124,20127},   //406.Pz-35t           (gray)
という列があります。ビンゴ! :cheers

これで06〜09列の意味は完全にわかったと。しかし、"Icon Data List-February 15.txt"なんてファイルをよく公開してくれたもんで。ほんとユーザーフレンドリーなゲームだなと改めて感心しました。 :cool:
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。

 すごいっ!!! ついに内部コードの謎に切り込みましたね!!!   :cheers
うーん、いつかのお返しですが、「鳥肌」ものの快挙です。分からない部分は「内部コード」でお茶を濁そうと密かに画策していたのですが、ここまでつっこんで調査しはるなんて!!! 
 セーブデータ以外のファイルをのぞこうなんて、これっぽっちも考えたこと無かったです。「SPWAW V8 Icon list KED.xlr」と「Icon Data List-February 15.txt」ですか。確かに、いっぱい情報が詰まっています。
しかし、"Icon Data List-February 15.txt"なんてファイルをよく公開してくれたもんで。ほんとユーザーフレンドリーなゲームだなと改めて感心しました。
 そうですね。もちろんゲーム自体がとてもおもしろいからなのですが、その他にもいろいろな便利・加工ツールも付いてくるし情報もいろいろ分かるようになっているし、こういうことがあるからこそ、有志で集まってOOBやグラフィックを改良したり、シナリオを作ったりの機運が生まれるのでしょうね。

 そのうえで、Norさんがセクション17の内部コードの謎を解いてくれまして、本体と砲塔のグラフィック番号を特定できるようになったので、

最強1号戦車計画

を考えてみました。まずは、

  ドイツ軍1号戦車にキングタイガーの砲塔を乗せてみよう
  グラフィックがキングタイガーだけと中身は1号戦車をつくってみよう

と思い、センション17の砲塔グラフィック部分を変更してみました。結果は、失敗。グラフィックは変更されませんでした。また、本体も砲塔も両方キングタイガーと同じ値にしたのですが、ゲームには反映されませんでした。どうやらセクション17の本体・砲塔のグラフィック部分は、ゲームの立ち上がりの時には参照されないようです。つぎに、


  キングタイガーだけと見た目は1号戦車

を目指して、 また、センション1の装甲値をいじくってキングタイガーと同じ値にしたのですが、ゲームには反映さず、失敗。その後、いろいろと試行錯誤を重ねて、ついにこんなものができました。

  見た目と装甲はキングタイガーだけと武器は1号戦車
  見た目と装甲は1号戦車だけと武器はキングタイガー

「試行錯誤」の部分をまとめると、
セクション17の06〜09列を変えてもアイコンは変わらない。
セクション1のユニットのクラス(10列)、アイコン(12・13列)、装甲値(3E〜70)のみを変えてもゲームに反映されない。
セクション1のA8列、ユニット番号、を変えるとアイコンや装甲値が変わる。ただし、武器や残弾数は変わらない(空きスロットがあれば武器が追加される)。
 です。どうやら、アイコンや装甲関係ではセクション1のA8列、ユニット番号(と、おそらくA7列の国番号)が最優先されるらしく、ここだけキングタイガーに変えれば、アイコンや装甲がキングタイガーのものになりました。もちろんこの時点ではセクション1とセクション17のその他の部分は1号戦車のままなのですが、いったんセーブすると、それらの値もキングタイガーのものに変更されました。
 武器の種類と残弾数は、セクション1にすでに何かあればそれがゲームにも反映されました。ただし、空きスロット(1号戦車だとスロット2〜4)があれば、A8列に書かれたユニットの武器が入るようですが、残弾数は変更されないので「0」のままです。こうして、「1号王虎」のできあがりです。
 逆に、A8列のユニット番号を変えても、武器の種類と残弾数には影響がないようなので、8.8cm L71 を載せて、「1号8.8cm」ができました。あはははははは。
 このような仕様になっているのは、ユニットが決まれば装甲値はゲーム中変わることはありませんが、武器は使用不能になったり、残弾数も変化するためなんでしょうね。
Last edited by 島風 on Mon Jul 23, 2007 15:38 UTC, edited 2 times in total.
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。

 最強1号戦車計画に夢中になって、Norさんの質問に答えるのを忘れていました。 :porc

飛行ユニットのセクション17の04〜05列については、Norさんの書かれている通りであることを確認しました。 :wink:
飛ぶ前 04・05は「00」。08〜0Dは「FF」、0Eは「01」。
飛行後 04・05は値が入る。08〜09は「FF」。0A〜0Bは向きに応じて値が入る。0C〜0Dは基本的に0A〜0Bと同じだが砲撃を受けるとその方向によって値が変わる?。0Eは「00」。
撃墜されると、08〜09に「1480」(FW-190の場合)
実験していて、幸か不幸か、1機撃墜されました。すると、08〜09に値が入りました! で、例の「Icon Data List-February 15.txt」で入った値 1480 を探しましたが、見つかりませんでした。火が噴いたグラフィックなのでしょうかね。

 それと、1号計画の途中で、セクション1の EF列 が、ユニットの登場ターン数であることを見つけましたです。
 それとそれと、6/28の投稿で「セクション17は終わり」とか書いてしまいましたが、それは0〜399行のみの話で、まだまだ、い〜ぱい、残ってますね。地道にがんばりましょう。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
え〜、最強1号戦車計画に笑わせていただきました。 :lol:
セクション17の06〜09列を変えてもアイコンは変わらない。
セクション1のユニットのクラス(10列)、アイコン(12・13列)、装甲値(3E〜70)のみを変えてもゲームに反映されない。
セクション1のA8列、ユニット番号、を変えるとアイコンや装甲値が変わる。ただし、武器や残弾数は変わらない(空きスロットがあれば武器が追加される)。
この結果は面白いですね。『このような仕様になっているのは、ユニットが決まれば装甲値はゲーム中変わることはありませんが、武器は使用不能になったり、残弾数も変化するためなんでしょうね。』という解釈にも納得です。

しかし・・・・ふとあることに思いつきました。Wawedのユニットエディタを使えば、装甲値を独立して変更できるはずですよね。で、早速実験。試しに、手持ちの「1号対戦車自走砲」の車体前面装甲だけを13mmから200mmに変更してみます。名づけて「1号対戦車自走砲なんちゃってフェルディナンド化計画」!

で、やっぱり(!)出来ました。改造前と改造後のセクション17は完全に同一。グラフィックはいじってないから、まあそりゃそうですね。そしてセクション1の相違箇所は・・・車体前面装甲値3箇所はもちろんですが、もう一箇所ありました!!それは未解読の「A6列」です。改造前の値は0で、改造後は1になりました。何コレ?

ほかのデータをざっとみると、A6列に1が立っているユニットは結構あります。しかしその共通性は全然わかりません。なんとなくの予想としては、ユニットの基本スペックがデフォルト値から変更された場合に1が立つ「改造フラグ」みたいなもの?なんて思いましたが、全く根拠はありません。 :porc

このA6列の謎は今後の課題ですが、とりあえず、セクション1の装甲値を変更してA6列に1を入れれば、装甲値のみの変更は可能っぽいですね。


では、本日の成果を。

航空機飛行経路
・航空機飛行経路はセクション1のE0・E1
・E0は航空機進入方向 (1=NE, 2=E, 3=SE, 5=SW, 6=W, 7=NW)
・E1は航空機退出方向 (1=NE, 2=E, 3=SE, 5=SW, 6=W, 7=NW)

風向き
・風向きはセクション37の67列
・風向 (0=W, 1=NW, 2=NE, 3=E, 4=SE, 5=SW)

え〜、なんで風向きなんて地味な要素が特定できたかですが、また話が長くなるので簡単に説明します。 :pirat

SPWAWの外部ツールとして、SDQ(ectizen's SP:WaW Scenario Designer's Quickies)というツールが存在します。これはマップ作成補助ツールで、荒地や沼地を作ったり、高度を上げたりといった内蔵マップエディタではちょっと面倒な(あるいは不可能な)作業が可能になるのですが、かなりマニアックな仕様なため海外でもごく一部のマップ作成ベテランしか使用してないようです。

で、このツールの機能に「Smoke Machine」というのがあって、まあこれはマップ上にランダムに煙幕を配置して霧や硝煙なんかを表現するものですが、ここに風向き(どの方角から吹くか)を決める項目があります。選択できる方角は、「西・北西・北東・東・南東・南西」の6方向です。わずかな説明によると、「風向きはマップではなく、シナリオにのみ影響する」ということでした。この一文から、「ははあ、ということは、天候とか地形情報を持っているセクション37に関係ありそうだ」と踏んだわけです。

で、この機能を利用して、風向きを変えては変更箇所を探し出したというわけです。ほかにもこのツールの機能で解析に役立ちそうなものを探してみましたが、やはりマップエディタなので特に興味あるものは見つからず。ただし、マップ関連セクションの解析には役立ちそうです。でもねえ、そこまでやるとねえ・・ :pale

一応、SDQのダウンロード先を紹介しておきます。
http://spwaw.com/phpBB2/viewtopic.php?t=721
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
島風です。

 
予想としては、ユニットの基本スペックがデフォルト値から変更された場合に1が立つ「改造フラグ」みたいなもの?なんて思いました
 Norさんの予想は正しいようです。 :D
いくつかのシナリオを見てみると、A6列 が「1」になっているのは、経験値やモラルが高い、人数が多い、弾数が非常に多い、など、シナリオの都合でデフォルトの値を意図的に変えられたユニットのようです。
 Wawedの HEX エディターで、0ターンのコアユニットのA8列を変えて、A6列を「0」のまま、「1」を入れた場合の違いを見てみました。手順は、例によって1号bのA8列にキングタイガーのユニット番号「36」を入れてみます。そのデータをSPWAWで読み込んだ後にセーブして、もとのデータとセクション1を比較しました。結果は、
どちらとも変わった
10列(クラス) 12列(アイコン) 1C〜21列(未解明) 96列(LBM,TXT) AA列(?) C1(Lift) C3(Weight) CE列(Survivavility) D8〜DA,DC〜DE列(空きスロットの武器関係) 
A6列が「0」のユニットのみ変わった
3E〜61,6B〜70(装甲関係)
です。また、シナリオの最終ターンのセーブデータで、コアユニットのA6列を「1」に変え、次のシナリオへ進んでみたところ、A6列は「1」のままで、ちゃんと昇進もするし、弾もフルチャージされるし、経験値やモラル値も変化していました。これらのことから考えると、コアユニットでは、A6列が「0」か「1」かは装甲関係のみに影響を与えるようです。ちなみに、A6列が「1」のユニットを違うユニットに買い換えると、次のシナリオでは、A6列が「0」になります。
 1C〜21列と AA列(?) が気になるところですが、とりあえず、

グラフィックがキングタイガーだけと中身(装甲値、スロット1の武器、スピード、乗員数など)は1号戦車

ができました。絵は....、もういいですね。そのうち、1号対戦車自走砲なんちゃってフェルディナンドと対戦しましょう。あっ、見た目は勝てるけど、一撃でやられちゃうか。 :D
航空機飛行経路
・航空機飛行経路はセクション1のE0・E1
・E0は航空機進入方向 (1=NE, 2=E, 3=SE, 5=SW, 6=W, 7=NW)
・E1は航空機退出方向 (1=NE, 2=E, 3=SE, 5=SW, 6=W, 7=NW)

風向き
・風向きはセクション37の67列
・風向 (0=W, 1=NW, 2=NE, 3=E, 4=SE, 5=SW)
 着々と進んでいますね(スプレッドシートも情報が増えていますね)。そういえば、「風向き」って、気にしたことありませんでした。解析過程がおもしろいですね。それなりに情報が増えてきたので、これ関係ならどのセクション、というのが予想しやすくなりました。ただ、マップ関連は膨大なので、とりあえず、ねぇ、です、僕も。 :porc

 E0,E1列は飛行機経路なんですね。うーん、飛行機用のデータの場所がある、ということは、船用や空挺部隊用の場所があったりするのかなぁ。

 それから、シナリオの変わり目では、昇進したり経験値やモラル値などが変化しますが、すべてのユニットが平均的に変化するのではなく、ちゃんと活躍したユニットの値が上昇しやすくなっているので、セクション1のどこかにそのデータがあるような気がします。これは、地道に調べれば何とかなるような気がするので、やってみますね。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
お疲れ様です。A6列の謎はなんとなく判明ということですね。 :P

え〜と、セクション1・34・35について、未使用の疑いがある列を調べていました。値が常に00とかFFの列ですね。その際に、やはり島風さんからもらったチタデルシナリオのデータが役に立ちました。私のデータでは値が00でも、チタデルデータではひょっこり1とか立っていたりしました。ぜんぜん意味はわかりませんが。

で、そろそろ闇雲なデータ解析に疲れてきたので、ここらで本来の目的を思い出してみました。 :cool:

これまでに解析したデータを使って、何か役に立つツールを作ってみようと思います(例によってエクセルのマクロ利用です)。どんなツールにするかいろいろ考えていたのですが、いきなり多機能なものを作ろうとすると挫折しそうなので、最初はショボイものから始めてみようと思います。

で、具体的には、「シナリオかキャンペーンのセーブデータをひとつだけ読み込んで、現在の状況を表示する」ツールにしようと思います。「現在の状況」としてどんな形式で何のデータを表示するかが問題ですが、適当にフォーマットを作ってみました(添付図参照)。

まず1ページ目では、以下の基本情報を表示します。
<Summery>
・A0ユニットの指揮官階級と名前
・日時/ターン
・場所/地形/天候/風向/視界
・対戦国籍および任務
・平均経験/平均士気値
・キルスコア合計

<Force>
・総兵員数/現兵員数/死傷者数/充足率
・総ユニット数/現ユニット数/破壊されたユニット数/充足率

<Composition>
・ユニット種の数と割合(歩兵/軽装甲車両/重装甲車両/対戦車砲・対空砲/砲兵/偵察/輸送/その他)

2ページ目では、ユニットの詳細一覧を表示します。
・ID/ユニット名/経験/士気/キルスコア/現兵員/死傷者/抑圧
・指揮官階級/指揮官名/ラリー技能/歩兵・装甲・砲技能

さらに、3ページ目には戦闘結果を表示します。終了時のセーブデータでなければここは表示できません。
・日時/ターン
・場所
・対戦国籍と任務
・損害一覧表
・スコアおよび勝敗判定
・VHの確保数と確保率(VHの種類がEOB・PPT・STRで価値があるもののみ対象)
・Depotの判定基準に従った勝利判定


という感じです。で、ご相談したいのは、上記の項目は必要か?ほかにあった方がよい項目は何か?ということです。

ちなみに、今バージョンではデータの修正機能はとりあえず無しにしようと思います。また、読み込むセーブデータも一つだけとし、複数のデータを読み込んで変動を見ることもやめておきます。

つまり、あくまで状況を出力してニヤニヤするだけのツールです。このツールに積極的な意味があるとすれば・・・AARが書きやすくなることくらいかな。 :cool:
Last edited by Nor on Sat Jul 07, 2007 16:02 UTC, edited 1 time in total.
image
技術将校
Posts: 141
Joined: Tue Jan 24, 2006 10:50 UTC
Nor閣下
島風さん

こんにちは、
名前だけの技術将校dugongです。
いやー、セーブファイル解析ですが、この肩書きから考えて、お前が参加せんでどーするという感じなのですが(すごーく、腰が引けてます(笑))、もう私の手の届かないところまでお二人とも行っておしまいのようで、

「あぁ、とおいなぁ」

という感じだったのですが、

>「シナリオかキャンペーンのセーブデータをひとつだけ読み込んで、現在の状況を表示する」ツール

作成というNor閣下の発言を見て、

一言だけ、

「すばらしい!!」

といいたくて、カキコしました。

いや、これ、いいですよ!!!

特に2枚目の「order of battle」

前々から、ゲームメニューの

 「ユニットメニュー」や「ヘッドクオーターメニュー」

がプリントアウトできるようになればよいのになぁ、と思っていたんですよ。

キャンペーンなんかだと、自分で部隊構成を考えて購入するから良いのでしょうが、シナリオプレイ中心の私としては、すごくユニット数の多いシナリオなんか、部隊序列と構成をマップ上で確認するのがすごく大変だったんですよ。で、いちいち画面切り替えるのも大変だったので、プリントアウトできればいいのになぁと思っておったんですよ。
(小シナリオだと、キャプチャーで済ませてたんですけど、すごく大きなシナリオだとキャプチャーも大変で・・・・。)

それが、初期状態だけでなく、やっている途中でも確認できるとなれば、かなりの状況確認作業及び作戦立案(修正)作業が楽になるように思います(私だけかなぁ)。
(もちろんAAR書くのにも役に立ちますね。)

ということで、本ツールの内容に関しては「こんなんあるといいのになぁ」といったアイデアは浮かぶのですが、セーブデータ解析に参加していない者がこれ以上口を挟むのは、解析のご苦労を背負っていただいている、Nor閣下や島風さんに対し人道上許されない行為と思いますので(まだ、腰が引けてます(笑))、一応、一プレイヤーとしてのツール作成に対する賛辞を述べるにとどめます。

ツールができた暁には、是非活用したいと思いますので、開発、大変ご苦労なこととは存じますが、よろしくお願いいたします。 :salut
”だから、どんな場合でもまず攻撃できないかを考えよ” − ナポレオン・ボナパルド
image
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
dugong wrote:
前々から、ゲームメニューの 「ユニットメニュー」や「ヘッドクオーターメニュー」がプリントアウトできるようになればよいのになぁ、と思っていたんですよ。
なるほどなるほど。自らコアユニットを購入するキャンペーンと違って、シナリオではユニット把握が難しいというのは言われてみれば確かに納得です。
そうそう。こういうアドバイスがほしかったのですよ! :D
ということで、本ツールの内容に関しては「こんなんあるといいのになぁ」といったアイデアは浮かぶのですが、セーブデータ解析に参加していない者がこれ以上口を挟むのは、解析のご苦労を背負っていただいている、Nor閣下や島風さんに対し人道上許されない行為と思いますので(まだ、腰が引けてます(笑))、一応、一プレイヤーとしてのツール作成に対する賛辞を述べるにとどめます。
いやん、そんなイジワル言わずに、どんどんアイデアを披露してくださいませ。 :mad:

そもそも今回のセーブデータ解析は、何か役に立つ(修正君のような)ツールを作るための準備作業だったわけです。その過程では「解析のための解析」になる場合もあり、私と島風さんは確かに「遠いところ」に行ってしまったようにも思われるかもしれません。 :pale

しかし、全データを完全解明するのは実際不可能だと思いますし、またその必要もないでしょう。すでにわかっているデータだけでも結構なツールが作れるのは間違いないし、これまでの努力を無駄にしないためにも、ここらで何か具体的なツールを完成させようと思う次第であります。そしてツールの青写真を披露することで、皆様の賛同とご協力を得て、今後のデータ解析の道しるべにしようという思いもあります。

というわけで、直ちに実現できるかどうかはともかく、「こんなんあるといいのになぁ」というアイデアはどしどし教えてくださいませ。すでに判明しているデータだけで可能なら、直ちに盛り込めるし、そうでない場合も、どのデータを探す必要があるのかがわかるので、データ解析の動機付けにもなりますし。

つーわけで、一つよろしく。 :wink:
image
暗号解読部長
Posts: 58
Joined: Mon Mar 12, 2007 12:51 UTC
dugongさん、初めまして。
Norさん、まいどお世話になってます。

 こんばんは、島風です。

 dugongさん、その他の皆さん、Norさんも書かれていますが、ぜひぜひアイデアを披露してくださいませ。 この素敵なHPに集まって来られる方たちの共通かつ最大の目的は、SPWAWを楽しむこと、だと思います。そのための情報交換方法はAARであったり実験結果の報告であったりといろいろありますが、とにかく全てSPWAWの世界なので、遠慮や線引きをせずに、できるだけ多くの方に参加していただいて、一緒に楽しみましょう。 :wink:
 でも僕は「ツール」を作ったりできないので、そのあたりはNor閣下におんぶにだっこです。すっ、すみません、、けど、よろしくお願いします。

 で、Norさん、「これは、かっこいいなぁ〜」、です。これ、帝國陸・海軍だと、「表発営本大」とか、右から左へ受け流す、もとい、書いてあったりするといいですね。
 えー、冗談はさておき、早速ですが、「こんなんあるといいのになぁ」のこんなん、として、位置情報が欲しいです。C&C off をいいことに、小隊の戦車をあちこちに配置してしまい、迷子になって抑圧が回復できずに困ることがよくあります、のは私だけ? :porc
 あと、破壊情報だけでなく、「immobilized」「Ready」「in cover」の状態表示、非発見マーク(*)もあるとうれしいです(これを見落としてその後たいへんなことになるのは、私だけ?)。C&C on なら、「残命令ポイント」 もあるといいですね。そして、あまりにもいろいろと情報が詰め込まれすぎると見にくくなるかもなので、自分が欲しい情報だけ見たり印刷されたりする「切り替えスイッチ」がつくとさらにいいです。なぜだかDRを最初からやり直しているので( :D )、dugongさんが書かれているように、すごく大きなシナリオ(アレです)をするときに、ユニットデータが印刷物として手元にあると、ものすごーく楽になると思います。
 んっ? 「命令ポイント」は、未特定だったような気が・・・。新たな宿題ができました、ので、やってみます。 でも僕は「ツール」を作ったりできないので、そのあたりはNor閣下におんぶにだっこです。すっ、すみません、、けど、よろしくお願いします。
Nor
大佐
rank
Posts: 783
Joined: Sat Feb 07, 2004 20:09 UTC
島風 wrote:
んっ? 「命令ポイント」は、未特定だったような気が・・・。新たな宿題ができました、ので、やってみます。
おうおう!命令ポイントは特定済みですっ!セクション35の18列です!・・・もう遅いか?! :porc

でも、セクション35は編隊長(ID末尾が0)ユニットの情報しかありません。通常はこれだけで問題ないはずですが、ある編隊が命令ポイントを使い果たして、上級編隊の命令を使う場合(例えばC編隊がA0のポイントを使う場合)もありますよね。つまり、18列とは別に、どの編隊の命令ポイントを使っているのかというデータがあるのかもしれません。いや、上級編隊は12〜13列で明示されているので、そんなデータはないのかも? :roll:

で、Norさん、「これは、かっこいいなぁ〜」、です。これ、帝國陸・海軍だと、「表発営本大」とか、右から左へ受け流す、もとい、書いてあったりするといいですね。
いや、嬉しいお言葉ありがとうございます。中身がショボイ分、見た目だけちょっとこだわってみました。

当初は、すべて日本語表記にしようと思いましたが、実際にやってみるとかなり不自然な点が多いのです。例えば、ユニット名や指揮官名はどうしても英語表記でしか出力できません。つまり、「Kobayashi 戦闘団」とか、「Aoki 中尉」とかになってしまうのです。その他にも、天候やら階級やらを翻訳・変換する手間が増えることもあり、とりあえず英語表記にしています。しかし、要望があれば、いずれ日本語表記オプションをつけようと思います。

「こんなんあるといいのになぁ」のこんなん、として、位置情報が欲しいです。C&C off をいいことに、小隊の戦車をあちこちに配置してしまい、迷子になって抑圧が回復できずに困ることがよくあります、のは私だけ?
ご提案ありがとうございます。座標ですね。これを表示するのは簡単ですね。ただ、座標だけ表示してもマップがないとよくわかんないかなと思って外していたのですが、印刷したリストを見ながらプレイする際には役立ちそうですね。了解です。採用します。

あと、破壊情報だけでなく、「immobilized」「Ready」「in cover」の状態表示、非発見マーク(*)もあるとうれしいです(これを見落としてその後たいへんなことになるのは、私だけ?)。
まず被発見マークの有無ですが、これを表示するのも可能ですね。ただ・・・Enhanced Modを入れると、ゲーム中に被発見マークが表示されないようになってしまうのです。なので、被発見マークの有無を表示するのはオプション扱いがよいでしょうね。

次に、状態表示ですが、これも採用しようと思います。が、「ready」「in-cover」「Entrenched」状態については、セクション1のB7列(これはdugongさんが発見!)なので問題ありませんが、「immobilized」や「Pinned」「retreating」「Rout」状態を示すデータはまだ未特定ですね。

そして表示データを選択できるようにする機能も・・・たぶん実装可能です。ええ。たぶん。ガンバリマス。 :salut
image
技術将校
Posts: 141
Joined: Tue Jan 24, 2006 10:50 UTC
皆さん、こんばんわ・・・
(ラッシャー木村風に・・・)

そういっていただけるんではないかなぁ、と思っていた通りの展開となり、:pirat
お二人の許可が出ましたので、

>「シナリオかキャンペーンのセーブデータをひとつだけ読み込んで、現在の状況を表示する」ツール

について、乱入、いや、アイデアを述べさせていただきます(笑)。

 まず最初に、このツールの使用の仕方がどのようになるかを考えてみると、

1.ゲーム開始前などでMapThingなんかを使ってマップを手に入れておく。
2.ゲームをやっている途中でセーブ(作戦立案時は第一ターン開始直後にセーブ。作戦見直し時はその必要性が発生したときにセーブ。)
3.マクロを立ち上げ、セーブデータから情報抽出。
4.エクセルで書式調整
5.打ち出し(シナリオによっては5〜6枚)
6.ゲーム画面と、1.のマップと5.のリストを見ながら作戦立案(見直し)

と5〜6手ぐらい工程が必要なんですよね。

 そう考えると、多分、セーブデータ解析が進めば進むほど、いろんなデータが引き出せるとは思うんですけど、「order of battle」やそこに記載される情報はある程度厳選された、引き出す手間に見合う価値があり、かつ、書類として使い勝手の良いものであってほしいと考えるわけです。
 お二人が言うように、いくつかのデータはオプションで選べるようにしておけばよいかなとは思うんですが、オプションで選べればどんなデータでも何でもOKということにはならんでほしいと考えるのです。(オプション選択メニュー画面を作るだけでも大変ですよね。多分。) :sad:

 ということで、以下のアイデアは、その情報をどのように使うのかということを考たうえで提案したいと思います。


【あるといいな情報No.1 「指揮系統」】
 島風さんが「残命令ポイント」を言及しておられたので、それと似たような発想のものとして「指揮系統」が解るとよいかなぁと考えました。
 確かに「残命令ポイント」も良いんですが、かなり変動の激しい数値ですから、これを初期段階(1ターン目開始直後のセーブデータ)や途中段階(途中のセーブデータ)で一覧表で手に入れても、すぐに変動してしまうので、結局、計画立案なんかにはあまり情報として使用しないかなぁ思います。また、残命令ポイントが気になる状態になったときに、ゲームをいちいち中断して、データ吸出し、「order of battle」を打ち出して、なんてことはやってられなくて、個々のユニットの命令ポイントをゲーム画面で確認するほうが早いのでは・・と。このような状態になった場合、問題のある場所やユニットは、自分でも明確に把握しているでしょうから・・・。

 また、抑圧回復時や砲撃命令時なんかでお世話になる、
    「上級部隊からの命令ポイントの融通」
のことを考えると、一概に指揮系統的に下級部隊の残命令ポイントがわかっても、指揮系統が解らなければ実質的な使用可能な命令ポイントはわからないのではないでしょうか。

 それよりもは、その「指揮系統」そのものが解ることの方が重要ではないかと考えるんです。

 Nor閣下には釈迦に説法ですが、この「指揮系統」というのは、ユニットメニューやヘッドクオーターメニューを見ても解らん(想像するしかない)代物で、下級部隊長の命令ポイントを使い果たしてみて初めてやっと自分の上級部隊がどれなのかがわかるものなんですね。ゲーム画面一番下の「ユニット情報」欄の「order」のところで確認しなきゃなんない。
 結局、本格的に指揮系統を解析しようとすると、最初に一度ゲームは無視して、上級ユニットの表示が出るまで各小隊に命令ポイントを消費させていくしかなかった。
 しかし現実的に中隊長ユニットが複数出てくるシナリオなんかだと、小隊数もBA○なんてとんでもない数の小隊No.がついたりしますから、そんなちまちましたことはいちいちやってらんない。ある程度は、実際の部隊配置とユニットメニューの序列、そしてユニット名なんかで想像はできるんですが、現実的にはゲームの途中で命令ポイントを使い果たしてみて初めて、「あぁ、この人の下だったんだ」と気づくといった感じですね。

 で、いつも思っていたのが、指揮系統が1本しかないような場合は全然問題ないんですが、中隊長以上の○0ユニットが複数ある場合は、各ユニットがどこのHQの指揮下にいるのかが、ユニットメニューやヘッドクオーターメニューで一目瞭然でわかればいいのになと思っていたんですよ。

 ということで、もしセーブデータのユニットデータで中で、上級部隊(多くは中隊HQ)を特定するセクションがあるようなら、それを、「上級HQ」カラムなんかで設けていただいて、「B0」といった感じで出てくると、大変助かるかなと思います。これがわかれば、世界的にもかなり画期的なツールとなるんでは無いでしょうか。



【あるといいな情報No.2 「弾薬数」】
 作戦立案や、作戦見直し時に特に重視する情報として、消耗品としての「弾薬」という資源がどのくらいあるのかということはありませんか?
 たとえば、「砲兵の強力な支援を受けながら敵パックフロント突破!!!」と作戦を立てても、「じゃぁ、わが軍にそんな大々的火力展開を許すだけの資源はあるの?」と考えた場合、作戦の開始時期や、時間的な長さを決定する大きな要因は弾薬量だったりしません?下手したら、自分が考えた作戦が本当に実行できるかどうかの判断を左右する要素にもなったりしますよね。

 そう考えた場合、ユニットメニューに出てくる「HE:AP」っていうのも、そのユニットの特定の兵器の弾数かすべての兵器の弾数なのか?じゃぁHEAT弾なんかはどこに入ってんだよとなり、結局個々のユニットを右クリックして調べなきゃなんない。これではとても大変な労力がかかるので、どうしても重要性の高いな砲兵以外は、弾薬量の確認なんかはもう無視していました。
 ただ、砲兵にしても、シナリオによってとんでもない数が出てきたりするのでこうなると、作戦が各部隊に通達されてからの現場判断です。なんで、よくシナリオの最後のほうでは、弾薬が足りなくなって困ったなんてこともありました。

 ではこの弾薬量を「order of battle」に出すようにするとして、現実的にどのようなものになると良いのか?
 単純に考えれば、個々のユニットの「4兵器」×「4弾薬」=16のカラムがあればOKか?多すぎるか?じゃぁ、第一兵器だけでも表示としても、第一兵器がそのユニットにとって必ず弾薬量を気にしなきゃいけない兵器なのかというと、そうとも言い切れない。盤外砲なんかは4兵器すべて同じの場合、第一兵器だけ出しても意味が無い。
 ということで、この弾薬量がわかるのを満足させようとすると、16カラム用意しなくてはならない。しかし、横長の「order of battle」を何枚ももって考えている姿を想像すると、「これは、現実的じゃないなぁ」と思う次第です。

 じゃぁ、どうすればよいか?

 せめて、一枚目の<Force> <Composition>の欄に、自軍砲兵部隊の弾薬量なんかが総量でわかると、作戦立案の参考になるかも知れんなぁと考えましたが、いかがでしょう。
 余談になりますが、この自軍を<Force> <Composition>と総量で把握する概念は大好きです。このゲーム、ついつい個々の戦場の部隊の状況だけで戦術を考えがちなんですけど、こういった自軍の構成要素や損害の量といった把握が出来ると、もう少し戦場を違う側面で捉えられるのかなぁという気がします。「歩兵の損害が激しすぎる。これ以上わが軍は市街戦を継続する余力は無い」といったような感じでしょうか・・・・。

 それと、弾薬にはもうひとつあります。「煙幕」です。これも作戦立案には重要で、これが少ないと市街戦なんかでは致命傷です。ということで、これなんかは「煙幕弾数」と「スモークディスチャージャー」数の合計でもいいので、個々のユニットデータと一緒に出てきてくれるとうれしいですね。「Reduced Ammo On」なんかでやってると、歩兵に市街地の視界を分断させる為に煙幕張らせようとしたら、「きみ、あと一発しかもって無いの?」て言うのもありますもんね。
 ただ、これも究極的には個々のユニットはゲーム画面で確認すればよいではないかと言われればそうなんですが、たとえば小隊として、どのくらいの市街戦継続能力があるのかとか、防衛線突破能力があるのかといった事を考えるときには、一覧で煙幕弾数がわかると良いと思いますねぇ(煙幕弾、一つも持っていなかった部隊を市街地に突っ込ませたくないですよね)。



【あるといいな情報No.3 「スコア」】
 これは、結構切実な問題では無いでしょうか(特に対人戦の場合なんかは・・・)。自分がいまどのくらいのスコアなのかを予想するのって、このゲーム、とても難しいですよね。まだEOBVHやPPTVHの計算なんかは簡単なんですよ。だけど、ユニットの価値がシナリオ作者によって独自に設定されていたり、True Troopなんかだと、経験値を計算に入れたりで、結構スコアを読みづらい。ということで、途中段階のスコアが解ったりすれば、いいのかなぁと思ってみたり・・・。

 しかし、敵のスコアがわかると、多少チートくさくなるのでこれは無しですかね。そうしたら、勝利の定義は相対的な物だから、自分のスコアだけがわかってもあんまり意味は無いかなぁ・・・?あ、自分のスコアがわかるってことは、相手の損害状況がある程度わかるんだから、これも多少チートくさいか?

 ただ、実際にこの機能を今回のツールに実装することを考えると、現実的にはめんどくさいかも。
 結局、スコア計算に関しては、セーブデータはプログラムが計算する際に代入する数値(ユニット価値、経験値、VH支配)や、計算結果(スコア)を入れる箱を提供しているだけなんでしょうね。
 また、スコア計算なんか、途中段階はまったくやってなくって、最後でしかやってないんでしょう。
 つまり、途中段階のこれをやろうと思うと、こっちのマクロ側で計算してやんなきゃいけない。そうすると、True Troopの計算方法を解析しなきゃならんでしょうね。これはセーブデータ解析の作業だけでは無理ですね(せめて技術将校としてこれくらいはやろうかなぁ・・・。それともNor閣下ご存知ですか?単純に「価値×経験値」だったりして。それは無いか、カリウスのティーガーなんか1万点だ(爆))。

 まぁ、あくまで将来的な希望ということで・・・・(笑)。:porc



 以上が、私のアイデアです。 :salut


 次に島風さんと、Nor閣下のやり取りを見て思ったこと。
Nor wrote:
「こんなんあるといいのになぁ」のこんなん、として、位置情報が欲しいです。C&C off をいいことに、小隊の戦車をあちこちに配置してしまい、迷子になって抑圧が回復できずに困ることがよくあります、のは私だけ?
ご提案ありがとうございます。座標ですね。これを表示するのは簡単ですね。ただ、座標だけ表示してもマップがないとよくわかんないかなと思って外していたのですが、印刷したリストを見ながらプレイする際には役立ちそうですね。了解です。採用します。
 「了解です。採用します。」となってて、意見を挟むのもなんなのですが、位置情報って要りますかね。自分で考えると、いちいち座標値を見てユニットの場所を特定するってことはやんないような気がするんです。

 作戦立案風景を考えると、打ち出した「order of battle」とMapThingで打ち出したマップ、そしてゲーム画面を見ながら考えている風景が思い浮かぶのですよ。
 で、ゲーム画面上で見えた問題のあるユニットや状況について、画面はそのままで、「order of battle」やMapを見ながら考える(この時点でユニットの位置はわかっていますよね。)。また、「order of battle」上で問題を発見した場合、ユニット番号はわかるのですから、座標値で場所を特定するのではなく、そのときだけはゲーム画面でユニットメニューを呼び出してユニットNo.をクリックしてジャンプする。こうすれば楽々ユニットの場所にいけると思うのです。

 要するに、今回のツールで手に入れることのできる「order of battle」の利用の仕方として重要なのは、ゲーム画面とユニット情報が同時に見れる、とか、電車の中でも「order of battle」をみて作戦を考えられる(笑)という、作戦立案作業を補完的に助力をすることにあると思うんです。ということで、ユニット位置を特定するといったようなゲーム画面で便利できることは、やはりゲーム画面でやったほうが良いのではないかと思うんです。

 で、考えてみたんですが、島風さんの抱えている問題で情報上重要なのは、ゲーム画面下に出るユニット情報"HIGHTER HQ LINK”(連絡状況)がどうなっているかでは無いでしょうか?結局、Linkが切れてなきゃ抑圧回復もOKなわけだし・・・ってC&C offならそもそも、Linkって関係なかったんじゃ???いかん、わけ解らなくなってきた(笑)。

 とはいえ、"HIGHTER HQ LINK”(連絡状況)なら、「order of battle」の一覧表に出てきてくれるとありがたいかもしれません。いま、迷子になっているユニットがどれかを特定する為に、いちいち全ユニットのユニット情報を見てまわるのも面倒ですから。あとは、その迷子になっているユニット番号を頼りにゲーム画面のユニットメニューからジャンプですね。

 ただ、"HIGHTER HQ LINK”もターンによって結構変化しやすい情報ですから、そのためだけに、「order of battle」を得るようなことはせずに、作戦見直し時に「order of battle」を得たついでに、連絡状況を確認して、知らず知らずに小隊長から離れていってしまった部隊の状況を補正するのに使用するといった感じでしょうか・・・・。

Nor wrote:
あと、破壊情報だけでなく、「immobilized」「Ready」「in cover」の状態表示、非発見マーク(*)もあるとうれしいです(これを見落としてその後たいへんなことになるのは、私だけ?)。
まず被発見マークの有無ですが、これを表示するのも可能ですね。ただ・・・Enhanced Modを入れると、ゲーム中に被発見マークが表示されないようになってしまうのです。なので、被発見マークの有無を表示するのはオプション扱いがよいでしょうね。
 これは、Norさんが言われているように、Enh.DVRN MODを使用している私としては、あまり必要のなくなってしまった機能です。
 この「*=悪寒検知器」には、昔は随分お世話になっておったのですが、今はまったく表示されておりません。現在、市街戦シナリオをやっているのですが、周りは見えない敵だらけで、ひ〜っとなっています。Nor閣下がどこかで、「どっかから見られている感じ」を表したものが「*」と説明していましたが(抜群の説明だと思います。 :P )、いまは、本当に体感的にこれを感じなければいけない・・・。いやぁ、修行修行の日々です。

 で、こういう私にとってはこの情報は不正情報になってしまうのでオプション扱いでよいかと思います。ただ、世の趨勢は、「*」排除の方向に向かっているようですから、その辺も頭に入れておいたほうが良いかもしれません。

 それよりも私としては「#」射撃を受けたマークがわかるといいかなと思います。これがあれば、限定的な行動しか取れなくなっている部隊がわかるので、途中段階の情報としてはいいかもしれません。ゲームの途中段階で、計画見直しで「order of battle」で打ち出したときのことを考えると、先ほどの「連絡状況」と同程度には有用な情報かもしれません(要するに、この情報を得る為だけには「order of battle」は打ち出さないだろうということです。)。

以上、2人のお許しがでたとたん、堰を切ったように長文乱入させていただきましたm(__)m。

なんにせよ、今回のツールから得られる情報は、かなり有用な情報だと思います。今から、作戦立案時に思いをはせてわくわくします。しかし、一方で、「そう頻繁に用いるものでもない。」ということは考慮に入れて、ツールのあり方を考えていけたらと思うんです。多分、最初の一回と、途中作戦変更を迫られた段階の2回くらい使用するということになるでしょうか(毎ターンやってたら、それこそ紙だらけです(笑)。)。その際に必要な情報という観点で考えれたらなぁと思います。 :wink:

一応これですっきりしました。はぁ(笑)。 :pirat
”だから、どんな場合でもまず攻撃できないかを考えよ” − ナポレオン・ボナパルド
image