信長の野望 天翔記 改造総合スレat GAMEHIS
信長の野望 天翔記 改造総合スレ - 暇つぶし2ch379:名無し曰く、
12/06/27 14:45:46.32 CFH/62+d
知ってるが
お前の態度が
気にクマない

380:名無し曰く、
12/06/27 15:34:36.95 cgB69vyb
>>379
竜造寺あたりに使えそう。

381:名無し曰く、
12/06/27 20:57:25.25 3RS0aSe0
越後の龍、甲斐の虎はかっこいい
肥前の熊って一体なんなんだ・・・ってくらい動物園で会える臭w
もう龍造寺の家臣はみんなクマーとかパオーとかゾーとか言うセリフでいいんじゃね?

382:名無し曰く、
12/06/27 23:23:14.28 oOa46m5A
ScenarioModの謎は解けてきましたが、
徴兵時のメッセージは変える事ができません・・・・
城ごとの情報を読み込む?

383: [―{}@{}@{}-] .jp
12/06/27 23:49:09.19 br5jJ5mB
>>371
メリットを加えて天秤をプレイヤから引き出すのは、
もちろんデメリットよりもはるかに優れたアイデアです~
方向性として、より良いと思いまする~

>>382
原則ソースを張りましょう。
(そうでないと、単純な間違いだったとしても、
調査する側が10倍、20倍の時間を消費してしまうことになります)

384:名無し曰く、
12/06/28 00:00:08.34 9ZbMwrl2
>>349
「後々のために功臣達を粛清しますか?」というのも面白いかも
このモードでは軍団を作らないペナルティを解除した上で
軍団・外交コマンドを禁止(無効化)し
独立した軍団長相手に第一軍団のみで再統一を目指す
戦後処理も斬首のみとか


385:名無し曰く、
12/06/28 00:04:26.18 oOa46m5A
>>383
このような感じでよろしいでしょうか?

------------------
if ( 武将名=="????") {

if ( 元メッセージ.find("??????") != string::npos ) {
return "!!!!!!!!!";
}
if ( 元メッセージ.find("辺りから\x0A兵") != string::npos ) {
return "あなたたち消極的\x0Aだから\x0Aハントしてきたわよ";
}
}
(中略)
return "";
}

386: [―{}@{}@{}-] .jp
12/06/28 00:08:27.42 GxUwoHuR
>>382
徴兵ですが、城コマンドの徴兵コマンドは特に問題なく
置きかえれると思います。

①置き換えそのものが出来ないのですか?
 ⇒例えば、string.find で使用する文字列が間違っているとか。
  例えば、URLリンク(www19.atwiki.jp) の徴兵コマンドの例で言えば、
  「ははは、見てくだされ」などでマッチングするのはダメ。
  なぜなら、「ははは、見てくだされ」は実際のメッセージとは異なることが多い。
  これは、性格等でメタメッセージ部分(wikiでいう下線部分)が変化するため。例:「うふふ、見てください」等。

②置き換えは出来るが適切なメッセージが作れない?

③戦時の徴兵?


387:名無し曰く、
12/06/28 00:11:46.23 BeEtySwQ
>>386
戦時の徴兵です。
メッセージを作るのは問題ありませんが、城名を読み込むところが影響しているのでしょうか?

388: [―{}@{}@{}-] .jp
12/06/28 00:42:07.66 GxUwoHuR
>>387
なるほど~ こういうパターンがあるのですね~
これはバグ発見ですね。
ありがとうございます。

パラメータの状態でメッセージが渡ってきてますね。
(大抵のシーンではパラメータは解決された状態で来ていると思ってましたが)

確実に書きかえれるようになりますが、
現段階ではScenarioModの通常の手順では書き換えられないです。


389: [―{}@{}@{}-] .jp
12/06/28 04:56:40.41 GxUwoHuR
>>387
TSMod.dll 2.0.0.4 で対応出来てると思います。

390:名無し曰く、
12/06/28 09:41:48.03 BeEtySwQ
>>389
ありがとうございます。無事変更されました。
似たような内容かもしれませんが、modで火攻が火遁になったと
同様に、このコマンド名変更も自分でできませんでしょうか?

391:名無し曰く、
12/06/28 21:17:12.42 5PT5OBPu
前々から天翔記の仕様で不満だったのが、CP大名死亡時の家督相続が一門衆の年齢の高い順になってしまうのは、どうにかならないですかね。
元就が死んで、輝元を飛ばして吉川元春が相続したりするので、三本の矢イベントが見られない・・・

392:名無し曰く、
12/06/28 23:33:38.08 TJlsBu6Y
あれ?年齢順じゃなくて仕官年数順じゃなかった?

393:名無し曰く、
12/06/28 23:59:40.49 9ZbMwrl2
じっくり内政プレイもできるようにしたいよな。
現状だと持ち城取られたり、一揆が起きてもまた新しい城を取ればいいって感じだから。
小大名でも防衛しやすいようにしたうえで
威信や名声みたいなシステムを導入
城を取られたり一揆が起きたら数値が下がり
城を取ったり内政上がったら数値上昇
あと捕虜の処遇とか。
数値が上がったらイベントや補正が発生する。
名声が無理なら朝廷友好度で代用。

394:名無し曰く、
12/06/29 00:24:24.39 pHPn/rwJ
>>392
子>他の一門>血縁番号違いの兄弟>家紋に該当する武将>その他
で年齢順だと思う
身分と仕官年は2つの総合で優先順位が決まるっぽい

CS版は動画を見た感じだと野望優先かなあ

395:名無し曰く、
12/06/29 00:44:43.29 RaVpabZY
例えば、1546年シナリオの長尾家だと。晴景>房景>景信>政景>景虎という順番で相続していくので、大名の実子が無ければ年齢順になってるっぽい。
これでは、若き国主の苦悩イベントが見られなくなる。

396:名無し曰く、
12/06/29 09:56:37.25 2dwcAQ8l
門壊ダメージありにすると、城郭200ぐらいの城は空城でもそうそう落とされなくなり、
築城の重要度が増すな

397:名無し曰く、
12/06/29 10:18:59.69 2dwcAQ8l
難級だと脅迫が全然効かないから、ScenarioMod使って、ある一定の条件を満たしていれば最後のセリフを和睦成功みたいにして強制和睦できるようにしてやったwww
そして相手大名の城郭を0、金米忠誠を激減させて、次脅迫を成功しやすくしたガハハ

398:名無し曰く、
12/06/29 19:53:12.43 Fx4gacuF
どうやって作ったかくわしくおせーて

399:名無し曰く、
12/06/29 22:23:15.25 qmE06uOi
たとえば、自分の大名番号が 10 だとして(シナリオエディタで分かる)
使者が大名以外で、使者の智謀が相手大名より高く、相手大名が有効大名ではなく、
兵力差が10倍超の場合で、脅迫失敗しても、
最後のメッセージで無理やり和睦
結果、相手の居城の城郭0、金米500にする例
(カスタム駆動関数ファイルの"カスタム::On_噴出メッセージ直前"のところに以下を記述。
ただし、もっと良い書き方はいくらでもあるので注意)

if (p武将情報[メッセージ関連情報.第1人称【武将番号】- 1].所属大名【大名番号】== 10 &&
元メッセージ.find("やれやれ") != string::npos || 元メッセージ.find("目通りするは") != string::npos) {
if ((Get_智謀値(メッセージ関連情報.第1人称【武将番号】-1)) > (Get_智謀値(メッセージ関連情報.第2人称【武将番号】-1))) {
int force1 = 0;
int force2 = 0;
WORD daimyo2 = p武将情報[メッセージ関連情報.第2人称【武将番号】- 1].所属大名【大名番号】;
if (p大名情報[daimyo2 - 1].友好大名【大名番号】== 10) return 元メッセージ;
for (int i = 0; i < 最大数::武将情報::配列数; i++) {
if (p武将情報[i].所属大名【大名番号】== 10) {
force1 += p武将情報[i].兵数;
} else if (p武将情報[i].所属大名【大名番号】== daimyo2) {
force2 += p武将情報[i].兵数;
}
}
if (force1 > force2 * 10) {
p軍団情報[p大名情報[daimyo2 -1].所属軍団【軍団番号】- 1].金 = 500;
p軍団情報[p大名情報[daimyo2 -1].所属軍団【軍団番号】- 1].米 = 500;
p城情報[p大名情報[daimyo2 -1].所属居城【城番号】- 1].城郭 = 0;
関数::効果音再生(効果音音源::成功);
return "傘下に入らぬなら\x0A和睦の条件は\x0A承知してもらいますぞ";
}
}
}
return 元メッセージ;

400:名無し曰く、
12/06/30 01:51:57.32 F0RMlW+E
>>399
最後の

}
}
}
return 元メッセージ;

の部分は } が1っこ多いかも

}
}
return 元メッセージ;

かな

401:名無し曰く、
12/06/30 01:55:12.81 F0RMlW+E
>>400
いや合ってるか、ごめん

402: [―{}@{}@{}-] .jp
12/06/30 14:52:19.23 I5So0+gz
>>390
考えます。。。が、記述を簡単にするためには、
何かヒラメキが必要となりそうです。


403:名無し曰く、
12/06/30 20:14:28.42 lsIQ+fe/
SaveDataEditorの不具合があったので、一応報告を。
シナリオエディタで新たに作成した大名(1507年シナリオならば全ての大名家が当てはまるのですが)の軍団情報の書き換えが出来ないようです。
正確に言うと、セーブデータエディタで軍団の資金や兵糧などの書き換えをしたデータが保存できないのです。名前を付けて保存も反映されません。
何故か新規に作成した大名家のみ起こります。セーブデータエディタで軍団情報を見てみると、役職の欄に[15]と表示がついている大名家が該当しているようです。

404: [―{}@{}@{}-] .jp
12/06/30 21:38:00.22 I5So0+gz
>>403
これはシナリオエディタのバグですね~
役職番号に15番という番号はないのですが、
シナリオエディタ上では、デフォルトでその番号に
なってしまっているのでしょう。

本来シナリオエディタが直すべきですが、すでについちゃってるデータ問題とかいろいろあるので、
・SaveDataEditor
・TSMod
の両方を対応しました。

・SaveDataEditorは軍団の役職番号15番⇒0番へと解釈を強制変更します。
・TSModは、シナリオ選択時、およびメインゲーム開始時の2箇所のタイミングで
軍団の役職番号を15番⇒0番へと強制変更します。

たぶん、シナリオエディタの作者さんのポカか何かではないかなー

405:403
12/06/30 23:00:08.53 lsIQ+fe/
>>404
いつもながら迅速な対応、感謝いたします。
無事にデータを反映させることが出来ました。

406:名無し曰く、
12/06/30 23:48:19.06 GQmx7+El
素のままでも十分面白い信長の野望・天翔記ですが
今後のためにダメ出し(不満・不便な点や改善すべき点の洗い出し)をしていきましょう。
とりあえず暗殺がないと敵部隊一覧が見られないのが不便。

407:名無し曰く、
12/07/01 00:16:22.08 VrQ5W3uM
CP大名同士の同盟を破棄させるように出来るコマンドが欲しいですね。
例えば、合戦誘発を仕掛けて、実行武将の能力・技能の有無に応じてCP大名同士の友好度が低下し、0になると自動的に同盟破棄となるとか。

あとは普段あまり使わない、一揆煽動のコマンドにもっと付加価値を付けたいですね。実行武将の能力、技能の有無で民忠が大幅に下がるとか。

408:名無し曰く、
12/07/01 03:37:45.84 +kCCXh56
以前のverに比べて処理がもっさりしてる気がするんですが。。。

409:名無し曰く、
12/07/01 03:55:35.89 V86hF2Zq
>>408
TSMod 2.0.0.2 から遅くなったと俺も感じてた。ddraw を外して動かすとより分かる。
2.0.0.1は速かったので今もアーカイブしてます。

410:名無し曰く、
12/07/01 03:59:23.51 V86hF2Zq
ScenarioMod使って、例えば、勲功(名声)0の武将の勲功を100上げる方法ですが、

p武将情報[メッセージ関連情報.第1人称【武将番号】-1].勲功 += 100;

とかにすると勲功が 53200 になり、表示枠オーバー状態で表示されます。だれかおせーて。

411: [―{}@{}@{}-] .jp
12/07/01 05:46:08.99 4EdOTpdc
>>408-409
とりあえず、ScenarioMod対応の際にガーっと実験的に増やしたフックのうち、
あきらかに使ってないフックは除去しました。

多分この2.0.0.6が今のTSModの標準的な重さですのぅ。
(ソースコードが増える一方ですので徐々に重くはなっちゃいますねー)


>>410
コードの断片としては、それであってますよー

しかし、「On_噴出メッセージ直前」メソッドは、
「噴出しの際にだけ実行されるわけではない」ので、
瞬間的に沢山実行されちゃう時があると思います。
(戦争開始時のユニット配置時とかはあぶないんじゃないかなー、と直感的に思いますが…)

// 上の方に書く
//--------------------------
#include <fstream>
ofstream ofs("test.txt");
//---------------------------

//---------------------------
// メソッドの中
・・・On_噴出しメッセージ直前・・・・ {
ofs << 元メッセージ << endl;

・・・自分の記述
}

みたいな形で「うまくいかないあたり」で、
元メッセージが「わさわさわさー」っと瞬間的に大量にくる時が
あるんじゃないか? っていう確認をされた方がよろしいかと。

基本的には、武将ID(武将名)やメッセージ内容でブロック(string.find)して、
処理をする、ってのがこのメソッドの利用方としては基本です~

412:名無し曰く、
12/07/01 06:58:08.96 inFCUvc9
>>411
乙です。
twitterによりますと音楽再生系関数が実装されたとありますが、
使い方の一例はどのような感じでしょうか?

413:名無し曰く、
12/07/01 09:21:58.43 1k0Oe/xZ
>>406>>407
またこれ自演だろw
文体ぐらいあれほど

414:名無し曰く、
12/07/01 10:04:38.46 VrQ5W3uM
新verのTSMOD、大分もっさり感が強い。
バグ?らしいのもあり。TSMOD.txtで他勢力の金・兵糧を毎ターン回復というのをコメントアウトしていても、他勢力の金・兵糧が大幅増加している。

415:名無し曰く、
12/07/01 12:12:27.29 V86hF2Zq
>>411
ありがとうございます。勲功の設定以外の行はうまく機能しているようです。例えば忠誠などを += しても正しく設定できます。

for (...) {
p武将情報[i].忠誠 -= 10; // ここは正しく設定できます
}
p武将情報[メッセージ関連情報.第1人称【武将番号】-1].勲功 +=100; // ここは53200になっちゃう、うーん


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch