歴史game

[歴史SLGへ] [ツリートップの表示に戻る]

◇-烈風伝 早死に武将を救済したい!-むんさん(2/24-18:54)No.1505
 ┗Re:烈風伝 早死に武将を救済したい!-加藤段蔵さん(2/26-00:57)No.1537
  ┗Re:烈風伝 早死に武将を救済したい!-むんさん(3/1-22:36)No.1662


トップに戻る
1505烈風伝 早死に武将を救済したい!むん さん2/24-18:54

いつも楽しく拝見させて頂いています。
さて他シリーズにもれず、烈風伝でも斎藤義龍や尼子晴久は、シナリオ1
後にあっさりと早世してしまい、大変残念です。
どなたか武将の寿命データを変更する方法をご存知でしたら是非教えていただけな
いでしょうか?
今回バイナリエディタでデータを見てみましたが、武将名すら表示されず、さっぱ
りわかりません。どうかよろしくお願いします。

トップに戻る
1537Re:烈風伝 早死に武将を救済したい!加藤段蔵 さんE-mail 2/26-00:57
記事番号1505へのコメント
むんさんは No.1505「烈風伝 早死に武将を救済したい!」で書きました。
> いつも楽しく拝見させて頂いています。
>さて他シリーズにもれず、烈風伝でも斎藤義龍や尼子晴久は、シナリオ1
>後にあっさりと早世してしまい、大変残念です。
>どなたか武将の寿命データを変更する方法をご存知でしたら是非教えていただけな
>いでしょうか?
>今回バイナリエディタでデータを見てみましたが、武将名すら表示されず、さっぱ
>りわかりません。どうかよろしくお願いします。

むんさん、お久しぶりです。
加藤段蔵です。

今回、セーブデータとシナリオデータには暗号化がかかっていますので
そのままバイナリエディタで覗いても修正できません。
寿命データを修正する場合は、まずセーブデータの暗号化を解除してデータを修正した後
もう一度暗号化する必要があります。

私は仕事が忙しくて、まだエンコード&デコードツールしか作成していません。
(発売日に買ったのに、インストールしたのが昨日!まだ2ターンしかやっていない・・・)
エンコード&デコードのアルゴリズムを説明しますので、お手持ちの開発ツール(TurboC++やらVBやら)
で作成して寿命データを調べてみて下さい。
ぱっと見、基本能力だけ書き換えてみましたが三国志6と違ってチェックサムはかかっていないようです。
今週末、休日出勤でなければ私の方でも調べようと思うのですが・・・

で、アルゴリズムですが
1.セーブファイル(シナリオデータ)をオープンする
2.1バイト毎データを呼び出す
3.アドレスを4で割った余りが(先頭アドレスを0として)
0なら&HDF
1なら&H73
2なら&H54
3なら&H51
とのXorをとり、同じアドレスに書き込む

という非常に簡単なものです。
こうして、解除したものに対してデータを修正してもう一度同じ処理を施せばOKです。

以下はサンプルとしてVBAで記述したリストです(Excelならほとんどの人が持っているでしょう)
Dim i As Long
Dim dt As Long
Open "c:\nobu8\saveda01.nb8" For Binary As #1
For i = 0 To 124276
Get #1, i * 4 + 1, dt
dt = dt Xor &H515473DF
Put #1, i * 4 + 1, dt
Next
Close #1
MsgBox "変換完了"

しかし、三国志6でチェックサム、烈風伝で暗号化、ときたら三国志7はチェックサム+暗号化+圧縮でしょうか?

トップに戻る
1662Re:烈風伝 早死に武将を救済したい!むん さん3/1-22:36
記事番号1537へのコメント
加藤段蔵さんおひさしぶりです! またまたありがとうございます。
おかげさまで早世武将の活躍の期間を延ばすことができました。
(名前の先頭位置を0バイトとすると32バイト目の0〜3ビットが怪しい。今までは3ビット分
だったので4ビット全部ではないかも)
シナリオ1で1570年になりましたが、斎藤義龍も長野業正も元気に活躍しております。

しかしチェックサムやら暗号化やら厳しいですね。個人で楽しむ分には多少の改造は見逃して
欲しいのですが、ダメなのでしょうか。
改造するくらいゲームを楽しんでいる人は、標準ではパワーアップキットでサポートされて
いる武将・勢力編集機能以外にも追加シナリオ他やイベント追加(できれば思考ルーチン
改善も希望)に十分魅力を感じて、ちゃんと購入すると思うのですが。