信長の野望 天翔記 改造綜合スレ6 [無断転載禁止]©2ch.net

1名無し曰く、2017/02/27(月) 22:28:24.99ID:elNj8TvP
改造の後の茶もまた格別ですな…

120名無し曰く、2017/09/05(火) 10:53:04.89ID:ty5UlJ7n
あと連投本当にすみません、勇猛の値についての説明、雑過ぎたので再度。
信長の値が8.95になるので、この8という数字は天翔記のエディタでは-1で入力して、信長の勇猛は7にします。
あと思考に関しては、

【0】才
【1】利
【2】義
【3】家
【4】道
【5】家
【6】創造

に変換予定です。思考6は凡愚なAIだそうで、創造主義は信長だけなようで、信長だけに搭載予定です。
一新された天翔記の能力の中、高い能力で思考6の信長、うつけになるか鬼才になるか、楽しみにしています。

本当に何度もすみません。それでは。

121名無し曰く、2017/09/05(火) 11:45:51.20ID:iNfpkxSc
楽しみにしてます

122 ◆dF/TZIT8Xw 2017/09/05(火) 13:14:16.96ID:pfCDUxYN
>>119
新武将の生成は「Set_武将誕生」関数を使えばOK
※手元の環境が古いので現在と違う部分がある可能性あり

https://u7.getuploader.com/nobu6/download/488
相場変更直前に、所属血筋1の勢力に生成される(テストなので能力)
https://u7.getuploader.com/nobu6/download/481
1回だけ生成したい場合はこっちを参考に。あまり多くするとゲームの読込が
遅くなるので注意(3000人追加したら数分かかった事が)

組み合わせによっては、チンギスハン4みたいに自分で追加コマンドを作って
在野から登用も可能
手元の環境が復帰次第以下の動作も確認の予定
・大名死亡直後に、該当コマンドを実施して生成された場合に彼を後継者とする「大名の遠縁」が出来るか
・「戦闘中」に「篭城中の勢力」が「攻城中の場所を居城」とした武将生成が出来るか
・過去に死んだ人物を記録して、そのデータを参照して、復活が出来ないか
(1561年に死んだ人物が1690年に復活。滅亡させた勢力の名前や人物の名前を記録して
特殊メッセージとして流させる。それ自体は出来るのはわかるが実際のテストは今だなし)

あとはヒッソリとやっていたのは
革新よろしく、戦法を色々練っていたりという感じです(自暴自棄になって革新PKで遊び続けた産物)
ターン経過時/残りターン変更時に発動(下に行くほど上位職業向けの戦法)
http://xn--rssu31gj1g.jp/?page=nobu_mod_the_snmod_methodref_on_turn_change_in_field_battle
http://xn--rssu31gj1g.jp/?page=nobu_mod_the_snmod_methodref_on_battle_damaged
◆今、与えたダメージの0.5〜2倍をさらに与える兵科戦法
◆一定の確率で士気を大きく下げる戦法
◆攻撃ではなく、政治や技能の有無でダメージを決める特殊攻撃
◆ダメージを大名の官位や国力から決める特殊攻撃
◆敵に与えたダメージから一定の兵数を回復するドレイン攻撃
◆敵勢力の兵数・士気・訓練をシャッフルする特殊攻撃etc...

123名無し曰く、2017/09/05(火) 15:59:18.50ID:GLQP3PmM
>>122
まさに追加したいと考えていた信尹がモデルとは…
これで武将追加して、武将列伝でいじれば出来るですかね
ちょっと家に変えるのが楽しみになってきました

124名無し曰く、2017/09/05(火) 22:59:02.41ID:Xm8nLMgL
ID:GLQP3PmM です


int iCastleID = 0;
int NodoubleCheck = 0;//◆東西武田氏など、ないと思うが

for (int 軍団番号 = 0; 軍団番号 < 最大数::軍団情報::配列数; 軍団番号++) {//●武田氏の本拠地データを吸い取る
int iGundanLeaderBushouID = p軍団情報[軍団番号].軍団長【武将番号】 - 1;
if (0 <= iGundanLeaderBushouID && iGundanLeaderBushouID < 最大数::武将情報::配列数) {
if (p武将戸籍情報[iGundanLeaderBushouID].状態 == 状態::大名) {//◆軍団長はリーダー
if (NodoubleCheck == 0) {
if (p武将情報[iGundanLeaderBushouID].所属血筋 == 1) {//◆◆所属血筋が1の勢力である場合…(武田氏)
iCastleID = p軍団情報[軍団番号].所属居城【城番号】;//◆◆◆所属血筋1の所属居城
NodoubleCheck++;//1回居城を決めたらもうしない
}
}
}
}
}

メモリエディッタから真田家の血筋を調べたところ、42でした
なので、
p武将情報[iGundanLeaderBushouID].所属血筋 == 1 の1を42に変えたところ、武田になりました
1は北條、2は上杉、21は里見 とこれの法則性が見つけられません
どう設定されているのでしょうか

125名無し曰く、2017/09/05(火) 23:48:21.03ID:Xm8nLMgL
もう分からないから単純に戸石城を直接居城に設定して無理やり解決しました…

126 ◆dF/TZIT8Xw 2017/09/06(水) 00:24:02.36ID:CUQGaya5
>>124-125
上記のコードは昔書いた物で、甲斐武田家に仕官することを想定しています
(汎用性がないので、一門の筆頭者のいる城に仕官する方式に変更する方が良いかも?
これにより架空武将の場合でも史実武将同様の歴史を作れる)


for (int 軍団番号 = 0; 軍団番号 < 最大数::軍団情報::配列数; 軍団番号++) {//●武田/真田氏の本拠地データを吸い取る
int iGundanLeaderBushouID = p軍団情報[軍団番号].軍団長【武将番号】 - 1;
if (0 <= iGundanLeaderBushouID && iGundanLeaderBushouID < 最大数::武将情報::配列数) {
if (p武将戸籍情報[iGundanLeaderBushouID].状態 == 状態::大名) {//◆軍団長はリーダー
if (NodoubleCheck == 0) {
if (p武将情報[iGundanLeaderBushouID].所属血筋 == 1) {//◆◆所属血筋が1
iCastleID = p軍団情報[軍団番号].所属居城【城番号】-1;//◆◆◆所属血筋1の居城
NodoubleCheck++;//1回居城を決めたらもうしない
} else if (p武将情報[iGundanLeaderBushouID].所属血筋 == 42) {//◆◆所属血筋42の勢力も存在する場合
iCastleID = p軍団情報[軍団番号].所属居城【城番号】-1;//所属血筋42の居城
NodoubleCheck++;//1回(ry
}
}
}
}

//真田氏も武田氏も存在しない場合は、血筋42の居城に身を寄せる
//ただし相性などによっては寄せない場合もあり、簡単な処理なので複数に血筋42武将が拡散された場合はどこかに飛ぶことになる

if (NodoubleCheck == 0) { //◆武田も真田も存在しない場合
for (int 武将 = 0; 武将 < 最大数::武将情報::配列数; 武将番号++) {
if (p武将情報[武将].所属血筋 == 42) {//◆◆所属血筋が42
iCastleID = p武将情報[武将].所属居城【城番号】-1;//◆◆◆所属血筋42の居城
}
}
}

127 ◆dF/TZIT8Xw 2017/09/06(水) 00:32:47.87ID:CUQGaya5
ちなみにシナリオエディタで血族関係を見ていると
1が武田、2が長尾となっています
天翔記の血筋は255までしか無いので出てこない人物の血筋実装は
拡張セーブデータで「血筋256」を独自に作っていく必要があります

http://xn--rssu31gj1g.jp/?page=nobu_mod_the_snmod_update
v2.6.5.0 ⇒ v2.6.5.1のところが参考になります

struct 武将情報EX型のところに色々追加していけばほぼ無限に広がると思います
例として、血筋256〜1000までは未登場の人物、1001〜9999は架空武将の血筋となり
自動生成時に埋めていく方式です(名前も親から一文字貰う機能も付けた方がいいかな)

128名無し曰く、2017/09/06(水) 01:49:41.51ID:xmDtRWCs
ありがとうございます、やっとできました!
感謝します。

質問ばかりで申し訳ないですが、例えば1560年の真田幸隆をシナリオ選択時に独立した状態にして
大名として選択することは可能でしょうか

129 ◆dF/TZIT8Xw 2017/09/06(水) 09:21:32.65ID:I2CFphHb
>>128
現在のScenarioModではそこまでは不可能なので
シナリオエディタで色々改変する必要があります
http://1st.geocities.jp/emn_projects/index.html

登場武将の居城や所属軍団の設定をうまくやらないといきなり死ぬ可能性があるので注意
(未登場武将の仕官先も変えないといけない)

ちなみに、後継者の決め方も工夫できます
http://xn--rssu31gj1g.jp/?page=nobu_mod_the_snmod_methodref_on_custom_koukeisya_bushou
上の例は、固有の人物を設定していますが
大名と相性の良い人物や能力が極めて高い人物、「忍者衆の場合、忍者が後継者」ということも可能です

https://www19.atwiki.jp/nobu6/pages/39.html
参考:大名の後継者の決め方について

130.jp2017/09/07(木) 23:13:55.48ID:rjR0LS0+
>>128

これについては、明日のTSMod/ScenarioModで可能とします。

シナリオ開始時、もしくは、メインの戦略画面のほぼいかなるタイミングにおいても、

@大名内における軍団の新設
A軍団まるごとの大名としての独立

が出来るようなAPIを提供します。

この@とAを組み合わせることで、「とある大名の普通の武将」→「軍団長へ」
「軍団長」→「大名へ」というのが可能となります。

(ローカルでは出来てるので、記事とか説明文を明日アップする形)

131 ◆dF/TZIT8Xw 2017/09/08(金) 07:47:14.51ID:Sf11hbVC
>>130
ありがとうございます
勢力裏切りイベントなどで使えそうです

軍団新設時の城の分配や、「軍団まるごとの大名としての独立 」とは反対の
「大名勢力をどこかの軍団に編入させる」ことは出来そうでしょうか?
(軍資金で勢力を合併。というアイディアも暖めていたり)

132名無し曰く、2017/09/08(金) 10:24:07.12ID:Wz4hBeAs
忠誠度と配属年数が何度やっても設定されない…

それと生年がよくわからない 西暦の値-1454 で設定するのはわかったけど
なんか思った数値にならない

133.jp2017/09/08(金) 12:13:51.62ID:f7zTEcyR
>>132

設定した直後の行とかで、

「デバッグ出力 << p武将情報[〜].忠誠 << endl;」
をあちこちに書いて、
値が変わってるか確認した方がいいです。

何カ所に張って、設定したはずの数値が、何かの関数の呼び出し後戻ってるかもしれない。


例えば、「忠誠度」や「士官年数」を設定した後で、
「Set_武将転居」とかで武将を違う大名家に飛ばしてしまってるなら、
当然「忠誠度」や「士官年数」は別の値に上書きされてしまうことがある。



年齢はGet_年齢() の関数の逆をすればよいのだから


int check = p年情報.年 + 1 - 年齢;
p武将情報[iBushouID].生年 = check;

ただし、このcheckが0〜255である必要があって、これは
つまるところ、(天翔記基準年の値自体を変更してない限り)
計算の結果として、
・「1455年生まれより、前に生まれた人」に設定することはできないし
 (例えば、1540年の段階で150歳とかには出来ない)
・「1708年生まれより、後にうまれた人」に設定することもできない

という制限が付くということです。


一応、Set_年齢( iBushouID, 年齢) という関数もたしときます。

134.jp2017/09/08(金) 12:30:49.75ID:f7zTEcyR
>>131
解体は出来るかどうか、調べてみないとわかりません。

軍団新設や大名への独立は、必要な部分のデータの辻褄を合わせればできますが、
解体は、「大名、あるいは、軍団がからむ、天翔記の全てのデータのリセットと掃除」の部分をやらねばならないので、
難易度が跳ね上がります。

・大名の解体は、ゲーム的に存在しないので、難しいかも
・軍団の合流は、ゲーム的に存在するのでその天翔記の関数が流用できればいけるかも。

ゲームが始まってないようなシナリオデータ段階であれば、
  「今回提供する関数の逆のことをやればいいだけなんだけど、
ゲームが始まってしまっていると、話の次元が全く変わる感じ

特に「軍団の思考のデータ」「大名の思考のデータ」が把握できてないし、
他にも必ず数点あるはず。

135.jp2017/09/08(金) 18:33:39.02ID:f7zTEcyR
ScenarioMod が更新
 ・http://天翔記.jp/?page=nobu_mod_the_snmod_update

今回久々にイベントハンドラが追加されています
 ・http://天翔記.jp/?page=nobu_mod_the_snmod_methodref_on_selectscenarioafter

 このイベントハンドラは要するに
 「既存のシナリオデータを壊すことなく、ScenarioModで一部修正をする」
 しかも、その修正した状態に基づいて、「大名選択」等が行える
 みたいな 目的に非常に最適なものとなっています。


ちなみに、例Cに
・1560年、シナリオ3の(ユーザーが大名選択する段階からすでに)、
 真田幸隆が大名として独立した状態となっている。
 という例も含まれています。

136 ◆dF/TZIT8Xw 2017/09/08(金) 20:38:30.21ID:Sf11hbVC
>>134
確かにリセットの部分を入れ込むと処理もかなり多くなると思います
大名の解体は、脅迫で勢力を取り込む所から思いつきました

軍団の思考データというのもあるのは始めて知りました
武将個人の思考とはまた違う感じの様な気もします
解体は現役全員を浪人にして、浪人に出来ないのは一時的に死亡処理・・・して
勢力滅亡という形で色々してみます

>>135
ありがとうございます
軍団配下の城移転も出来そうです
直接確認はまだ出来そうにありませんが、色々なことが出来そうです
「HARAKIRI」にありましたペリー襲撃イベントのように
【(予め予備枠が10コ近くあるか確認)→危なそうな在野を生成する→現役勢力にして登用させる→軍団と城を分配させる
→独立させる→危なそうな家臣を生成させる】といった中だるみ防止策がより鮮明になりました

あとは、致命的な敗北後による勢力の分裂や一門衆による叛乱といったものも可能だと感じました
駆虎コマンドのような物も選択ダイヤログで出来そうです

137 ◆dF/TZIT8Xw 2017/09/08(金) 21:12:00.84ID:Sf11hbVC
あと、>>100にあります内容を工夫して25ターン目になると
強制的に25ターン消費させて戦争を終える・・・というのは可能でしょうか?
(現物は見れないので、多分下記のような感じの内容。25ターン目ではなくても、総大将が死亡した次のターンや、
自作したイベントで停戦した時など)バグがおきそうな気もしますが…

void カスタム::On_残りターン変更《戦争画面》(int 残りターン数) {
if ( 残りターン数 == 25 ) {
BYTE *pUsedTurn = (BYTE *)0x4BB4D2;
*pUsedTurn = 25;
}
}

138.jp2017/09/08(金) 22:25:30.98ID:f7zTEcyR
>>137
*pUserdTurnは絶対的な消費量なので、
「今これだけ消費」という意味ではないです。

*pUserdTurn = 25; というのは、
「戦争全体が31ターンで、25ターン経過済み」
といった「絶対数」の意味です。

逆に言えば、
*pUserdTurn = 15; が維持されていれば、
ずっと残り16ターンでずっと戦争やってることになります。

脅迫が確かにかなり近いので、もしかすると、
脅迫が関数化できれば、なんとかなるかもしれないですねぇ。

139名無し曰く、2017/09/09(土) 00:14:40.50ID:+QHeXr7s
更新乙です

140 ◆dF/TZIT8Xw 2017/09/09(土) 07:41:25.63ID:0zoSGNPO
>>138
ありがとうございます
どのような感じになれば、戦争ターンを全部消費した扱いになるのでしょうか・・・

上位職業の武将によっては強引に戦争ターンを引き伸ばすといったことも
出来そうだと思いました

141.jp2017/09/09(土) 15:00:17.66ID:J+fuL9Oy
ターン操作で、全部消費という扱いにはなりません。

安全につくるなら、戦争のOR終了条件みたいなのを作るしかないかと。

142.jp2017/09/09(土) 15:06:42.54ID:J+fuL9Oy
なんか書き方へんかな。

全部消費という扱いにはできても、
ターンは1ターンに1回だけチェックされるなので、
ターン操作では即、終了にはもっていけない。
というのが正しい。

143 ◆dF/TZIT8Xw 2017/09/09(土) 20:34:42.13ID:0zoSGNPO
>>141-142
ターン操作だけではターンの増減はできるものの、終了処理はまた別の処理が
(戦争終了条件)必要と言う感じですね
ターン増減も含めて関数があると使いやすそうですが、どうでしょうか?

144名無し曰く、2017/09/09(土) 23:55:38.89ID:hPU0QqyL
>>135
さっそく使ってみたのですが、「カスタム::On_シナリオデータ反映直後」の関数が全く呼びされないのは何かアップデート漏れとかあるからですかね…
デバッグを頭にいれても何も出力されないので、そもそもこの関数が呼び出されていないと思うんです

145.jp2017/09/10(日) 00:43:11.30ID:04quFtei
tsmodを更新しましたか?

駆動系メソッドを呼び出すのはtsmodなので
更新する必要があります。

146,jp2017/09/10(日) 21:02:43.34ID:QmFsD/+4
>>144
自宅に帰ってきたので、確認してみましたが、
TSMod/ScenarioModともに問題ないと思います。

最初の「デバッグ出力」が、
別ソフトからの受信結果の「続き」に表示されるので、
デバッグモニターの「右端」に表示されることが多くて、
ちょっとわかりにくいかもしれないなぁ。

147名無し曰く、2017/09/11(月) 18:54:37.12ID:fRB3vkzm
144です、すみません tsmod更新漏れでした…

148名無し曰く、2017/09/11(月) 21:32:40.11ID:qTSP/87m
>>117の状況ですが、ようやく武将の基本データをExcelに入れる事に成功しました。
スレ内で未だにミス表記あったまま放置してしまいましたが、魅力の方は2倍ではないです。
またデータリスト作ってる間に、こうした方が面白いんじゃないかと、仕様変更の手を加えたりしました。
需要はないかもしれませんが、個人的に(作ってる時間が)楽しめているので、ついでに遊んでもいいなって思える人が出てくると嬉しいなって思っています。

それでは。

149.jp2017/09/11(月) 22:15:05.20ID:DXZhT9AQ
以下、自分で書いてて間違ってるのをあげ忘れてたので報告

>>101
の「武将の退避」はちょっと不足してますね。

武将を退避した後、「仮」とはいえ、誕生させているので、
少なくとも、
・p武将情報
・p武将戸籍情報
・p城情報
のバックアップしておく必要があります。

p城情報は絶対必須 (浪人が誕生すると、城情報が変化可能性があるので)


あまり「イケてるかイケてないか」ギリギリは狙わず、

https://u7.getuploader.com/nobu6/download/500

みたいに、「ガサガサ」っと武将・城・軍団・大名を退避しておいて、
「ンゴゴゴ」っと一気に戻す、みたいにした方が漏れがなくて安全。

150名無し曰く、2017/09/12(火) 01:39:25.67ID:uVHR6zJS
北海度と東北の海をもっと広くしようと思ったけど
野戦マップ編集しんどくて断念したあああ

もっと海戦がしたいぉ

151 ◆dF/TZIT8Xw 2017/09/13(水) 23:58:41.92ID:GPlEJ/pq
戦法決定アルゴリズム(仮)を作っているのですが、
更に良さそうな案はありそうでしょうか・・・

・既に30種類は決めていて、攻撃・回復・補助攻撃に分類。ID設定を行っている
・武将個人の追加セーブデータ枠に
 「戦法01」「戦法02」「戦法03」・・・と組み込んでいて、
戦法01 = 7;(攻撃前に敵を混乱させる)
戦法02 = 4;(攻撃前に敵の士気を半減する)
戦法03 = 1;(敵へのダメージ2倍攻撃)
のように決めていく
・戦法は、void カスタム::On_被ダメージ時で実行することを想定
・補助や回復によってはターン変更時になることも

152 ◆dF/TZIT8Xw 2017/09/13(水) 23:59:07.31ID:GPlEJ/pq
現在は

int 戦法ID = -1;

if(闘志が蓄積){//◆闘士もどこかで用意
if(ランダム ==1 ){
戦法ID = 戦法01

}else if(ランダム ==2 ){
戦法ID = 戦法02


}else{
戦法ID = 戦法03

}
}
//実際に戦法IDを元に決めていく
if(戦法ID == 1 ){
ダメージ兵数 *= 2;
}
else if(戦法ID == 2 ){
//敵の士気を減らす処理
}

見たいな感じでランダム決定していますが
戦法の数が今後50,100と増えることを考えるとこの形式には限界がありそうです
本人の性格(熟練度・義理・思考・職業他)で優先度を変えたり的確な判断ができるようする
(昔のドラクエではアルゴリズムがあったと思います?)可能性を考えると何かありそうな感じもしますが・・・

153名無し曰く、2017/09/14(木) 01:39:46.96ID:34JCofPP
隠密とか国人の設定はどこでしてるんだろう天

154名無し曰く、2017/09/14(木) 08:22:11.91ID:FJuX3SP5
そもそも隠密、国人ってどんなスキル?

155 ◆dF/TZIT8Xw 2017/09/14(木) 09:47:33.54ID:XdsbghrK
>>153-154
http://xn--rssu31gj1g.jp/?page=nobu_mod_the_tsmod_detail_job
既存の職業なしの人物の上に、色々表示しているみたい
おそらく、現時点ではスキルみたいなのは存在しない模様
(ScenarioModで職業データみたいなものを別途設定するのは可能。
隠密なら勢力下で内応中の人物を見つけ出す、などが作れる)

156名無し曰く、2017/09/14(木) 22:15:53.91ID:34JCofPP
>>155
ありがとうございます!

質問ばかりで申し訳ないですけど 明智光秀を1560年のシナリオで最初から登場させるにはどうすればいいでしょうか

157.jp2017/09/15(金) 16:16:30.86ID:LOfZh4RJ
>>156
それは、簡単なようで簡単ではないです。

■ムズイりゆう@
 もしも、1300人のデータが読み込まれている上で、
 「この子は登場」「この子は待機」みたいな、データ管理になっているのであれば簡単なのですが、

 天翔記の場合、
 ・このシナリオでは全員で何人待機しています(taikiというファイルにある)
 ・今、「先頭から」何人まで登場しました。(天翔記プレイ時のメモリとセーブデータにある)

という管理になっています。

 ・待機武将からCさんとFさん登場、とかではなくて、
  先頭から何人登場という管理に過ぎないところが古いゲームらしいところです。


■やるとすれば
 ・明智光秀と同じデータ構成の武将でScenarioModで誕生。
  ゲーム的にも、それは明智光秀と認識しますし、各種イベントも発生します。

  しかし、ゲーム側本来の挙動となる待機武将から登場の明智光秀もまた登場してしまいます。
  これを防ぐ手立てがScenarioMod層では難しいかと思います。

158 ◆dF/TZIT8Xw 2017/09/15(金) 19:59:08.56ID:jHLqW5T3
ScenarioMod ver3を策定中とtwitterにありましたが
それにより新たに出来そうな内容は何かありそうでしょうか?

159.jp2017/09/15(金) 22:26:22.28ID:LOfZh4RJ
>>156
これは、なんとかなりそう。

基本的には、「Set_武将誕生(顔番号::明智光秀)」で産んでもらい、
能力値などを明智にした後、どこぞの大名家に帰属させてください。

その後、本来の「待機武将」からの流れをある程度制御できるように、
ScenarioModでしました。
(現在、実装概要は終えて、実際にScenarioModで記述した際に弊害が無いか確認する段階)

160.jp2017/09/15(金) 22:34:55.14ID:LOfZh4RJ
>>158
ゲーム機能的には「追加は一切無い」です。

Modとしては「マルチスロット型」になります。
1つのScenarioMod2が複数のScenarioMod3を実行出来る形となります。

常にScenarioMod2が強化され、
そのままScenarioMod3として参照可能になる、
といった感じです。

現代のプログラミング技法(C#)に沿った
記述で書けるようにするための仕組みです。


(これまで通りの場所に、これまで通りC++/CLIで記述することも出来ます。)

161.jp2017/09/16(土) 21:17:09.26ID:g7rby43k
TSMod/ScnearioMod 更新

主に >> 156 のようなことを実現するため。

・(特定の)待機武将が登場するのを拒否などの実現
・待機武将や仮想武将が登場したタイミングで何か処理を実行できる場所として

http://天翔記.jp/?page=nobu_mod_the_snmod_update

162名無し曰く、2017/09/17(日) 14:16:36.97ID:p3fXM/as
いつも楽しく利用させていただいております。少々気になる点を見つけましたので報告します
環境はTSMod ScenarioModともに最新バージョンです。

ScenarioMod v2.7.8.3 で追加された「Set_軍団独立」の関数を利用したところ、
1.独立はできるが家紋が本来と違う
2.家紋が設定されない事がある
3.1.2.には再現性がある
という症状が現れました。

具体的な状況は
1.シナリオ6関ヶ原前夜でニューゲーム

2.「Set_軍団独立」関数をゲーム内から呼び出す
  ※当方は「メニューアイテム追加」関数で追加したメニューから呼び出しました
int iGundanID = 選択軍団ダイアログ表示(Get_軍団番号リスト【配列用】(), カラム::軍団::軍団長);
Set_軍団独立(iGundanID);
   実際はエラー処理やダイアログ表示などありますが、上のような処理をしています

3.1)徳川家第2軍団伊達正宗 独立 →家紋:南部家
  2)徳川家第3軍団結城秀康 独立 →家紋:南部家
  3)徳川家第4軍団福島正則 独立 →家紋:なし
  4)徳川家第5軍団前田利長 独立 →家紋:津軽家
・・・
4.データロードして3.で独立させる軍団を変更しても1番目に独立する家紋は南部 2番目も南部…という状況はかわらず

1631622017/09/17(日) 14:17:07.59ID:p3fXM/as
当方で解決を図ったところ、該当箇所ではないかと思われる部分を発見しましたので一応報告しておきます。
ScenarioMod 軍団情報型.cppの770行目
p大名情報[iSelfDaimyoID].家紋 = p武将情報[iSelfDaimyoID].所属血筋;

770行目の真下に
if (p武将情報[iSelfDaimyoID].所属血筋 == 0xFF) {
p大名情報[iSelfDaimyoID].家紋 = 使用されていないランダムな家紋番号;//家紋最大数:159
}
というような処理を挟んだところ、少なくとも家紋が設定されないという事態は解消したと思います。
家紋が本来と違うという部分は未解決です。

1641622017/09/17(日) 16:00:35.61ID:p3fXM/as
もう1箇所不具合?を発見しましたので報告します。
症状:商人武将で交渉が100%成功しない
状況:1.ScenarioModから「Set_武将誕生」関数で新規武将を作成
   2.作成した武将の 職業:商人 技能:弁舌を習得済み とそれぞれ設定
   3.2.の武将で購入・売却どちらでも値切り・ふっかけが成功した会話が展開される
   4.実際の数値の増減を見ると成功したり失敗したりしている

TSMod設定キットの機能 〜職業編〜には、
商人武将が、購入・売却をすると、「値切り」「ふっかけ」が100%成功する。
その際には、該当武将が「弁舌」の能力を持っている必要がない。
とあります。新規武将限定でそうなるのか弁舌がない場合はどうなるのかはまだ試していませんが、先に上記のみ報告します。

165.jp2017/09/18(月) 12:46:11.03ID:lPvR5JQY
>>162-164
バグ報告ありがとうございます。

■家紋
 「これ血縁そのまま代入するとヤバイなー」と思いながら「一旦デバッグとしてこれで」と
 したままリリースしていましたw

 武将→家紋への計算方法(もしくはデータのありか)
 今のところ把握していないので、
 適当な簡易版を用意して代用します。

 本来天翔記で武将が独立した際の家紋の選びかたとは、
  異なる選び方とはなってしまういます

 ScenarioModの別更新とタイミングが被ったので、それと併せてリリースします。


■TSModの「商人属性が付いた武将」と「商人」との交渉の不具合
 ・交渉後、取引成功の会話内容なのに、突然怒り出すことがある
 ・交渉後、取引成功の会話内容なのに、商人有効度の上昇値としていない
 の不具合を修正しました。

166名無し曰く、2017/09/19(火) 18:46:50.55ID:+7j/zTRn
信長の野望天翔記 シャッフル

でおもしろ記事がヒットしたけど
DL出来ないのかなぁ

167名無し曰く、2017/09/19(火) 18:53:14.63ID:1jV/PvjJ

1681622017/09/19(火) 21:50:47.27ID:8O9vGdxm
>>.jp様
素早い対応ありがとうございました。

169.jp2017/09/19(火) 22:06:04.83ID:3Vq6bBT9
>>168
TSMod/ScenarioMod 両方更新しました。

http://天翔記.jp/?page=nobu_mod_the_snmod_update

170名無し曰く、2017/09/19(火) 23:36:53.22ID:+7j/zTRn
おつ

新着レスの表示
レスを投稿する