トップページ > 歴史ゲーム > 2017年08月13日 > E8A1lNvB

書き込み順位&時間帯一覧

29 位/353 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000000033



使用した名前一覧書き込んだスレッド一覧
1/3
2/3
3/3
信長の野望 天翔記 改造綜合スレ6 [無断転載禁止]©2ch.net

書き込みレス一覧

信長の野望 天翔記 改造綜合スレ6 [無断転載禁止]©2ch.net
91 :1/3[sage]:2017/08/13(日) 23:25:20.43 ID:E8A1lNvB
通りすがりで失礼いたします。ScenarioModを用いた際、挙動が意図しない物ではないかと疑わしき個所を見つけましたので
報告いたします。当方で愚行した結果改変したソースコードも記載します。元のソースコードはコメントアウトした部分です。

@武将情報型.cpp 216行目
// 鉄砲の適性を数値で設定する。(0=E,1=D,2=C,3=B,4=A,5=S 鉄砲適性::S 〜 鉄砲適性::E で設定すると良い)
void Set_鉄砲適性( int 武将番号【配列用】, int 鉄砲適性値 ) {

// 範囲チェック
if ( 0 <= 武将番号【配列用】 && 武将番号【配列用】 < 最大数::武将情報::配列数 ) {

// 範囲チェック
ココ→ if (鉄砲適性::E <= 鉄砲適性値 && 鉄砲適性値 <= 鉄砲適性::S) { //if ( 鉄砲適性::E <= 鉄砲適性値 && 鉄砲適性値 && 鉄砲適性::S) { ←2017.2.19記述ミスなので修正
// 鉄砲は2つのフィットフィールドに分かれてしまっているので、計算
p武将情報[武将番号【配列用】]._鉄砲適性_hi = 鉄砲適性値 & 0x0003; // 0b000000HH
p武将情報[武将番号【配列用】]._鉄砲適性_lo = 鉄砲適性値 >> 2; // 0b00000L00
} else {
デバッグ出力("鉄砲適性値は範囲外");
}
} else {
デバッグ出力("武将番号【配列用】は範囲外");
}
}
症状:武将の鉄砲適性値だけはSet_鉄砲適性を用いても反映されませんでした。
信長の野望 天翔記 改造綜合スレ6 [無断転載禁止]©2ch.net
92 :2/3[sage]:2017/08/13(日) 23:25:56.75 ID:E8A1lNvB
Aダイアログ情報.cpp 1128、1134、1136、1137行目
void _SelectBushouDialogAsm() {

__asm {
push 0
push 0
push 0xFFFF
push 0xFFFF
push 0
push iFilterExOptionOfSelectBushouDialog // 33bit目以降の拡張オプション
push iFilterOptionOfSelectBushouDialog // フィルター値
push 1 // 選択可能数(但し武将を複数選択する要件はないはず)
push 0x4DBD40 // WORDで武将の番号の配列を格納してる場所。最後0xFFFF

call pCallFromFuncSelectBushouDialog
add esp, 0x24
cmp eax, 1
ココ→ //jnz labelEndOfFuncSelectBushouDialogAsm //2017.3.19戻り値が初期化されないのでgoto削除

push 0
push 0x4DBD40
call pCallFromFuncSelectBushouDialog2
mov iReturnOfSelectBushouDialog, eax // これが実際の選択武将番号
ココ→ add esp, 0x08//0x8 //2017.3.19戻り値が初期化されないので念のため変更

ココ→//labelEndOfFuncSelectBushouDialogAsm: //2017.3.19戻り値が初期化されないのでgoto削除
ココ→// ;
}
}
症状:「選択武将ダイアログ表示」の
/// <para> 選択した「武将番号【配列用】」が返ってくる。</para>
/// <para> 何も選択しなかった場合、0xFFFFが返ってくる。</para>
の戻り値が不正でした。(例:どの武将を選択しても織田信長の武将番号が返ってくる)
信長の野望 天翔記 改造綜合スレ6 [無断転載禁止]©2ch.net
93 :3/3[sage]:2017/08/13(日) 23:26:33.19 ID:E8A1lNvB
最後に要望を載せさせていただきます。
1.戦場での残りターン数は変更できるようにできないでしょうか?
  一度の戦争に時間がかかるので、戦争は10ターンくらいにしてプレイヤーの負担を軽くしたいと思っております。
2.挑発や混乱などの技能や、大筒などの発生処理をプログラム側から任意に呼び出せるようにできないでしょうか?
  大阪城に大筒を打ち込むイベントを実装できればと考えております。
3.鼓舞や暗殺を戦略画面や戦場画面でCOMを含め使用不能にすることはできませんでしょうか?
  兵糧が尽きているのに籠城しているCOMが鼓舞連打するのは少し違和感があります。
4.新規武将を大量に追加する場合、プレイヤーが任意で登場させる武将を選べるようなUIは実装が難しいでしょうか?
  現状複数の武将を選択できるUIは「選択武将ダイアログ表示」のみで、ゲームに登場していない武将は
  「番号リスト型 武将番号【配列用】リスト」に載せられないため、最近の信長の野望にあるようなゲームに登場させる
  追加武将の個別選択機能を実装することが難しいです。

以上駄文失礼しました。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。