08/12/12 23:45:44 9awXovP7
>>186
立絵の位置はどうやって変わってるんだろうとメモリエディタで立絵表示中のフラグを観察してみると
[1F FF FF FF]やら[ED FE FF FF]がり、この数値を弄ると移動したので詳しく調べてみた。
立絵中央以外に表示する時は(今回のケースは2人を左右に並べる)
シーンは光秀がメイド服きるとこ。
「0xEC654」
[01] 5E 80 00 A2 38 01 00 <-位置情報01
[01] 5E 81 00 16 9D 01 00 <-信長の立絵
[01] 5E 83 00 66 38 01 00 <-位置情報02
[01] 5E 84 00 8C A1 01 00 <-光秀の立絵
位置情報01
[08] 06 21 00 48 02 00 00 00 1F FF FF FF
[08] 06 22 00 49 02 00 00 00 ED FE FF FF
[0E] 06 23 00
こうなってるわけだが
[08]での入力値が[00 1F FF FF FF]
これは2人を左右に表示させる命令ですぐ後の
[08]~[EDFFFFFF]もセットで命令される[0E]が命令の最後だもんね。
位置情報02
[08] 06 15 00 48 02 00 00 00 E1 00 00 00
[08] 06 16 00 49 02 00 00 00 13 01 00 00
[0E] 06 17 00
この4つの[08]で二人の表示位置を左右に分けているようだ。
「0x138A2」付近は立絵の表示位置情報がいくつか並んでいるっぽい。
というわけで[3D]・[3F]・[40]は関係なかったみたいだ。
なんだろコレ?
>>185
実際何人くらいこのスレ見てるんだろう?
190:名無しさん@お腹いっぱい。
08/12/12 23:51:39 9awXovP7
>>187
実際[12]とかイベント会話アドレスの間とか、
main.sdの最後の方にもあったり参照してたりするので絶望感が出てくる鬱陶しさだな
CGとかのパッケージ化もしてないんだし、
どうせならシーン毎に別ファイルにでもしてくれてればいいのにね。TXTのままでいいじゃん!
最悪アドレスの変更しないような改造で・・・・・・
191:名無しさん@お腹いっぱい。
08/12/12 23:59:50 cEs6WceF
みんな頑張ってるな。
とりあえずエディタができたら信玄タソハッピーエンドの製作に取り掛かりたい…
192:名無しさん@お腹いっぱい。
08/12/13 00:04:57 sUbNIxOZ
>>191
戦闘前とか後に適当な背景+立ち絵で適当な台詞しゃべらせるmodを・・・
193:名無しさん@お腹いっぱい。
08/12/13 00:55:36 S4p4CwSL
>>186 確認しました。その考え方で合ってると思う。
(set_x) (set_vanish) は立絵が無いときに[00000000]になっていて、
立絵があるときは[FFFFFFFF]になってる。
[08]タグの場合、入力値は5バイトで、[00~]が書き込み命令だと思う。
この場合は[00][00000000]になっているので、[00]書き込め[00000000]を、てな感じ。
また、[01]と[12]の違いもこんなかな?
[01]で参照した場合は[0E]に当たると、元の[01]のところに戻る。 <-アドレス参照
[12]の場合は参照先などで命令順を飛ばすとかに使っていて、
[0E]があっても[12]の位置に戻らず[01]のとこに戻る <-アドレス移動
これ[66]やら[03]が解ってくると世界が広がるよ。多分
194:名無しさん@お腹いっぱい。
08/12/13 02:45:42 p9qG+31e
>>189
ツールがちょくちょくあるからRomはそれなりに居ると思う
195:名無しさん@お腹いっぱい。
08/12/13 03:56:02 TavppwVG
マジパねぇ絶望の果てにオレは再び開眼したかもしれん(; ・`д・´)
Youの家でも無事に動く事を願ってやまない…
■URLリンク(apple.mokuren.ne.jp) DLKey:sghmod
196:名無しさん@お腹いっぱい。
08/12/13 10:12:37 lBDFnsWE
>>195
うほっ、いいシナリオエディタ
197:名無しさん@お腹いっぱい。
08/12/13 11:16:28 y/hHOkZE
>>195
殿!やんごとねぇツール作りましたな。野望達成にまた一歩。
ver.100
main.sdも弄りまくってたのでオリジナルに戻してからツールを実行。
新規ゲーム開始で、普通に「殿ッ、~」が始まったので、どこに原因があるのか探ってみた。
通常のシーンならこんな感じの変更でいけるみたいだけど、
ゲーム開始時だけは少し違うみたい
main.lbnを見ると「home_start_mouri」があり、今回改造した「mouri01」
と同じアドレスに飛ばしているので、
・main.lb
[0xB0](mouri01)→[E2 06 04] (元の値に戻す)
[0xA4](home_start_mouri)→[12 D1 32] (ケチャップのアドレス)
・main.sd
[0x32D29F]→[2C 00] (最後、[02]で飛ばす所。2C00はmain.lbの[0xB0])
にしたらケチャップシーンが終わったあと「殿ッ、今年こそ~」が始まった。
開始時に立絵の消去命令が入ってなかったので、信玄がスタンド使ってたがな。
うちだけなのかもしれないが。
198:名無しさん@お腹いっぱい。
08/12/13 13:54:20 TavppwVG
>>197
なんかウチだとhome_start_mouriだと動かなくて、mouri01にしたら動いたのでそんな感じに
しといたんだけど、なんかよくワカランので引数でmain.lbの書き換えたいindexを渡す感じに
してみた。(添付のbatは41と44を書き換える)
■URLリンク(apple.mokuren.ne.jp) DLKey:sghmod
ためしに[08]タグ使って49 02 00 00に 00 01 00 00 00 とか 00 FF FF FF FF とかやって
set_vanishしてみたんだけど、信玄の立ち絵消えなかった…w
>>193
アレかね[01]は言うなればincludeで[12]goto(使ったコトないがw)みたいな感じかね?
[02]との兼ね合いとかどうなんだろう?とちょっと思うけど、
ひょっとしたら[02]の場合は、現在までのシーンで確保した領域をdeleteとかして解放
するのも込みなのかもねぇ。
>>196
スパルタ仕様ですんません(; ・`д・´)解析メンが増えたりすると
プログラムに割ける時間が増えてちょっとはマシになるかも知れません(; ・`д・´)
199:名無しさん@お腹いっぱい。
08/12/13 16:07:02 3/7rkk8/
[01]と[12]はそんな感じ。
[02]はmain.lb経由の移動命令じゃないかな?
似たような役割のタグが複数ある場合は、タグによって参照ファイルに違いがあるとかかな?
立絵を消すのは[01]タグがよいかな
例えばケチャップシーンだと [01 FE 15 01 93 E6 03 00]
これを最後の[02]タグとの間に挿入したら立絵が消えてから本編始まった。([02]のカウンターも+1して)
立絵消去のアドレスはキャラによって違うみたいだ。
・「0x03E693」信玄の場合(表情違っても消せるみたいだね)
[3E] 13 F7 00 01 F8 01 00 00 01 29 03 00 00 00 00 00 00 00 ←main.sw(shingen_C)と(shingen_vanish)の調査?(shingen_C)は07で固定されてるな
[40] 13 FA 00 00 32 00 00 00 ←?、[3E]とセットなのかな?、[3E]と[3F]の調査の終了命令かもね?
[08] 13 FE 00 29 03 00 00 00 00 00 00 00 ←shingen_vanish
[08] 13 FF 00 D9 02 00 00 00 00 00 00 00 ←shingen_x
[08] 13 02 01 89 02 00 00 00 00 00 00 00 ←shingen_view
[0E] 13 04 01 ←戻る
いろいろ調べるたびに1行目の[01 F8 01]が、
[01]:ただ単に見ろ、[F801]main.ibの[0x7E0]に見えて仕方がない。
200:名無しさん@お腹いっぱい。
08/12/13 17:17:54 Wzqs92ti
[01]:ただ単に見ろ、
[F801]:main.swの[0x7E0]をに見えて仕方がない。
だね。ごめん
201:名無しさん@お腹いっぱい。
08/12/13 18:02:23 TavppwVG
>>199
あーそうか。そういや[02]はmain.lbを参照してるんだったね。
立ち絵の処理系はコマンド群としてもう出来上がってるんだねぇ。
自前で[08]ポチポチ書くよりか[01]からコマンド群直接includeしちゃった方が
楽だし確実ってコトか(゚∀゚)
199の後半あたり読んでmain.swnにそんなフラグまであんのか…w
と思って改めて見てみたら1000個近くあるな…w
とりあえず↓main.swnをdumpしたもの.txt DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
なんか調べもせずにスゲ適当書くケド[3E]の中身って
if( shingen_C && shingen_vanish ) みたいな感じかねぇ?
202:名無しさん@お腹いっぱい。
08/12/13 18:11:17 TavppwVG
またスゲ適当に妄想書くケド、
[03] if( condition )
[3E] if( !condition )
とかで例えば
[3E] でshingen_Cのデータが正しく読み込めたかをチェックして
[40] でエラーダイアログを表示して
[08] 群で、とりあえずshingen_C表示言われたら無視しとくようにする
とか…?(;・∀・)
203:名無しさん@お腹いっぱい。
08/12/14 00:35:53 5Ll1RUPn
>>202
そうかエラーダイアログってのもあったね。なるほどそうかもしれん。
でも確認しづらいなこれは。
・[03]
>>179 の
0x02BF09 : 03 0C 51 00 01 81 02 00 00 03 12 00 00
の中盤の[01][81 02 00 00]
これはmain.swの「set_vanish」を見ていると考えるとつじつまが合う。単純に1アドレスのみ見てるね。
・[3E]
[3E 13 F7 00](4byte) -> [01][F8 01 00 00](5byte) -> [01][29 03 00 00](5byte) -> [00 00 00 00 00](5byte)
>>199の[3E]~は上のように分解できるが、意味的にも参照してるのは、main.swでしょうね。
[F8 01]は常に固定されてる気がするので、この部分は何を調べているのかわからんな。
最後が5バイトなのが気になり、後半は書き込み命令かとも思って、
いろいろ弄ってみたが、具体的にどんな仕事してるのかわからなかった。
・[3F] : >>179で出てくるが、[3E]との違いがわからん。全く同じ構文だ。もしかしたら[08]の変形型かも。
・[3D] : [3E]の後半が2つになってるバージョンか?
[3D](4byte) -> [アドレス0](5) -> [アドレス1](5)->[00群1](5) -> [アドレス2](5)->[00群2](5)
これに関しては>>179を見てると[08]の複数命令にも見えてくる。
これらはイベント作成上、おそらく入力することがないと思うので、
バイト長くらいを調べておくだけでもいいかもしれない。
204:名無しさん@お腹いっぱい。
08/12/14 06:07:44 n3kogcN0
>>203
もしかしたら[3X]系のタグってif文みたいののバリエで
if( condition )
if( !condition )
if( conditionA && conditionB )
if( conditionA && !conditionB )
if( !conditionA && conditionB )
if( !conditionA && !conditionB )
こんな感じで論理積が論理和になっちゃってるバージョンとかも
イロイロと個別に実装されてんのかもねぇ。んで条件式は==0ばっかりとか。
そうするとflag位置を参照だけしてるっぽい動きも納得できる気がする。
(まぁ、納得したいがためのこじつけな気がしなくもないけど…w
# しかしまぁ、コレだけ色々複雑に出来るようにエンジンは作ってあるのに、
# ADVパートにほとんど活かされてない気がするねぇ…w
# むしろこの複雑さが逆に仇となってクソ重くなってる気がする…w
とりあえずID:5Ll1RUPn には皆まで言わずとももう分かってるぽいけど、>>187あたりから
オレがかなり方向性を変えたので、[3X]系タグの解析は自分が納得できる点あたりで、
いったんpendingしてください。キミのブッ壊れたタグ解析能力のおかげで、
イロイロと見えなかったものが見えるようになったよ。(中には見たくなかった真実も
あったりしたけど…w)心からのリスペクトを込めてありがとう(゚∀゚)!
205:名無しさん@お腹いっぱい。
08/12/14 06:18:44 n3kogcN0
で、main.sdの既存部分を書き換えるというアプローチではもうシャレにならない労力が
伴うコトが分かったので(その労力を払っても成功するかはワカンネ)
main.sdに新規にデータを継ぎ足して、main.lbとか比較的構造の単純なヤツをいじって
リンクの張り替え的なアプローチをしてみるコトにした。
■sgh_editor 超絶実験版 ver0.01 DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
↓こんなの
URLリンク(apple.mokuren.ne.jp)
URLリンク(apple.mokuren.ne.jp)
# ぶっちゃけこの手法で無理そうならもう撤退します(;・∀・)
206:名無しさん@お腹いっぱい。
08/12/14 10:04:00 +yJY6h9s
>>205
神!
形になったね。すばらしいツールになってきてる。
で、実験してみたけどうまく行ったよ。
あとはmain.lbの何処に追加するかの選択と、
シーン終了後の[02]がしっかり出来たらほぼ動くんじゃないかな?
・[02]
単純に「会う」で簡単な会話のときは[02]~[BE](main.lbnでのmeet_end)
回想シーンなどに関しては[02]~[02](main.lbnでのmain.txt)
シーン連結を考えないのならどっちかを末尾に加えるだけでいいかもね。
・[08]
ストーリー部分の差し替えは[08]が絡むからフラグリスト選択してそこに01を入力
[08][?? ?? ??] [(main.swnのリスト÷0x40)] [00 01 00 00 00]
てな感じで・・・
フラグの構造はいたってシンプル。
最初の[mode]、[char] はバグルかもしれんので弄らない。
[「キャラ名」_View]、[_x]、[__vanish] 及び
[「キャラ名」_A]、[「キャラ名」_B] なんかは立絵関係なんで弄らない。
「キャラ名_feeling」は会った回数なんで会うごとに+1されていくが、
[08]タグではここを追加することをやってないみたい。弄る必要性無し。
残りのイベントフラグは、イベント終了後に01が入力されるだけ。
このあたりを理解してると改造も楽だね。
まあ、フラグは後回しでいいと思う。
207:名無しさん@お腹いっぱい。
08/12/14 12:28:23 +yJY6h9s
>>205
回想シーンなどに関しては[02]~[02](main.lbnでのchar_scn_end)
の間違いだった。
作成したシーンを「会う」と置き換えてみたんだが、
[02]~[BE]を入れても、
作成したシーンを二回繰り返した後、置き換えたシーンの次のシーンにつながってしまったり
永遠にループしたりとやっかいだな。[02]が効いてない気がする。
実験的に1回目の会話イベントの最後の[02]に
2回目の会話イベントのmain.lbのアドレス入れてみたら、1回目の会話の無限ループが始まった。
[02]の代わりに[12]を入れてmain.sdの2回目の会話のアドレス入れたら1回目の会話の後に、すぐ2回目の会話が始まった。
もしかして[02]はmain.lb経由の移動命令ではないのかもしれない。
作成したシーンも最後の[02]を[12]に変えて適当なアドレス放り込んでみるとループしなくなった。
でも、上のように会話の連鎖もしないな。SLGパートに戻るだけ。
208:名無しさん@お腹いっぱい。
08/12/14 13:06:12 +yJY6h9s
追加シーンを2つ作成して
それぞれを誰か適当な人間の会話シーンに置き換えてみた。
[02]がなんだか頼りなくなってきたので、
[12]命令で追加シーン同士を連鎖させてみると、連鎖せず。
既存のシーンへ飛ばしてみると連鎖したりしなかったり・・・・・・落ちたり・・・
動きが読めん。
んで、とりあえず各シーン最後の
[02]~を [12]~[38 39 01](これが安全なのかどうかは不明だが)
に変更したらエラーなく元に戻れた。
[12]で入力するアドレスをミスったら落ちる落ちる。
しかしまあ、いけそうだなコレ。
209:名無しさん@お腹いっぱい。
08/12/14 15:43:27 n3kogcN0
>>206-208
そうそうそうそうそう(゚∀゚)!
readmeに書いといた直近問題ズの移動系タグのハナシは、
この辺が結局プログラムに落とし込めるほど理解できて無いのよ。
どんな時に02なのか12なのか、とか。
でも02とか12でchar_scn_endに飛ばすってのはナルホドなぁ~って感じだわw
ちなみに入れ替えてみたシーンって信長?
BE(ウチではちょっとズレてるみたいだが)って名前自体はmeet_endになってるけど、
参照元ファイルはnobunaga_s.txtになってるみたいなんで、
汎用命令として使えちゃうのかな?(; ・`д・´)
とりあえず
>もしかして[02]はmain.lb経由の移動命令ではないのかもしれない。
この仮説が恐すぎる((((;゚Д゚))))
210:名無しさん@お腹いっぱい。
08/12/14 18:11:10 n3kogcN0
>>208
あぁぁわかったかも(; ・`д・´)
アレだよね?シーンA用のbin_source.datとシーンB用のbin_source.datを用意したとして、
[素のmain.sd][シーンA][シーンB]
みたいに連結してAの最後をBに繋げようとしたんだよね?
いずれ何とかしないとな~と思ってはいたが、実験版制限仕様に書き忘れていた項目が
あって、各タグのメタデータ領域は何も設定をしないとscene_id FEのevent_id 1から順に
自動的に振られている仕組みになっているのだ。
なので例えばシーンAが終わってシーンBに飛ばす
=>シーンB冒頭のタグが処理される…
=>がしかし、scene_id FEのevent_id 1でシーンA冒頭とかぶる…
=>かぶったのでシーンB冒頭のタグ要求が破棄される。
みたいなコトが内部で起こってるんじゃないかのぅ…?(; ・`д・´)
シーンIDはrc/system.iniのSCENE_IDで指定してるので、例えばシーンBをFDとかで
作ってやると上手く行くかも知れん。
それか、たぶんこの段階で256もevent_idを使っていないと思うので、
バイナリエディタで開いてシーンBの各タグのtt aa bb bbの bb2つめを01とかに
書き換えてもイイかも知れん。
何にせよコレで意図した通りに動いたら、オレの情報伝達ミスだ。
もの凄くコレで動く予感がするので先にあやまっておく。正直スマン(;´∀`)
211:名無しさん@お腹いっぱい。
08/12/14 20:21:29 +yJY6h9s
>>210
>>[素のmain.sd][シーンA][シーンB]
その通り。実験的にやってみた。
タグの後ろのFE????は適当に入れてる。数字がかぶらない程度。
[0F]の後ろの変な数字はとりあえず0000のまま。
入れ替え元のシーンは、信長の2回目くらいの汎用会話と半蔵の「ニンッ」
main.lbの毛利オープニングのとこもこのシーンにつなげてる。
シーン終了後すぐ1ターン目になった。
[12]命令で[char_scn_end]に飛ばした理由はなんとなく
[meet_end]に比べて命令が単純に見えたので。
[char_scn_end]は重要なシーン終了後、プレイ中の大名?のフラグチェックして
問題なければ最後にある[0E]に飛ばしてるだけだったので。
[meet_end]は背景の処理なのか立絵の処理なのか画像系の処理とフラグ調査をやってる。
一応ここに飛ばしてもエラーや不具合は起きていない。
[02]なんだが、
もう一度実験したらループ現象が起きなくなって普通に動いた。挙動不審だな。
使用するための条件とか環境が厳しいのかな?これが確実に動けば完成したも同然なんだが・・・
シーンの連結だけど、
既存のイベントでも綺麗につながるかどうかもわからないし、
普通つなげることはしないと思う。するんだったら一つのシーンに纏めたほうが管理しやすいし。
本来存在しないはずのアドレス同士の連結なんで厄介なんだろうな。
212:名無しさん@お腹いっぱい。
08/12/14 20:38:44 892+JQom
続き
シーンIDを[FF]と[FD]に変更するのを試したが、
シーンの連結はせず、何事もなくSLG画面に戻る。
となると[02]とか[12]って、ここで仕事してるのかな?
会話に関しては画像が出て話が出来て、
んでもって[08]が動けば問題ないのだが。
[02]が動いてないと、置き換えるシーンを誤ると
エンディングチェックが出来ず、エンディングを迎えられないとかでるかも。
ゲームの再起動は度々やってたんだが、
ループ現象とかも起きなくなってるのはWindwosの再起動でメモリがリフレッシュされたから?
わけわからんな。いまは安定してるんだよな。
213:名無しさん@お腹いっぱい。
08/12/14 20:52:03 892+JQom
あ~でも[02]とかが仕事してなかったら次のシーンとの切れ目がなくなるので、
二つのシーンが繋がるんだよな。
ということは、
命令としての[02]や[12]きちんと動いてるが、移動先アドレスを無視してる状態なのか、
移動先での処理でなんらかの制限が加わっているのか。
214:名無しさん@お腹いっぱい。
08/12/14 21:47:49 n3kogcN0
ぬおお何か良くわかんなくなってきたぞ(; ・`д・´)
とりあえずID:892+JQomの現状としては
○『女に会う』のリンク張り替えを試している。
○新規作成部分の最後で『meet_end』に飛ばす場合、
(i) [02]でmain.lbのindex指定をして動いている。
(ii) [12]で直接アドレス指定をして動いている。
○新規作成部分の最後で『char_scn_end』に飛ばすと
(i) [02]でmain.lbのindexを指定するとループ現象が起きたり挙動不審
(ii) [12]で直接アドレス指定をすると動く。
こんな感じ?
215:名無しさん@お腹いっぱい。
08/12/14 23:06:02 c78xIT53
>>214
今のところ[02]で飛ばしているが、問題ない
新規作成シーン2個
>>○『女に会う』のリンク張り替えを試している。
その通り。
「meet_end」「char_scn_end」双方に[02]と[12]で飛ばす実験をしてみた。
シーンの最後はこんな感じに
[02] FD 0E 00 02 00 00 00
又は
[12] FD 0E 00 38 39 01 00
・最初の改造時
[02]を使用 -> 「meet_end」「char_scn_end」のどちらに飛ばしても挙動不審となった。
[12]を使用 -> どちらに飛ばしても問題なかった。
・飯食って家帰ってきてから再度[02]を試したら
「meet_end」「char_scn_end」のどちらに飛ばしても問題なく動いた。
この間にしたのはWindowsの再起動くらいだったんで、わけわからんのだ。
・現在の状況
[02]で「meet_end」に飛ばしてる -> 問題なし・・・
[02]・[12]でシーンの連結 -> 繋がらないが、SLGパートには戻る。
「meet_end」とかに飛ばしても、他のシーンのアドレスに飛ばしてもエラーなくSLGパートに戻る。
うまくはいってるんだが、連結しないくせにエラーも無いし、挙動がおかしくなる事もないのが逆に気になるんだわ。
移動できなかった時、あるいは移動先でなんらかの障害があった時の処理はどうなってるんだろうという疑問が・・・
既存のイベント同士でも[02]で連結しないことがあるしな。
216:名無しさん@お腹いっぱい。
08/12/14 23:10:22 c78xIT53
結論から言うと
「連結はするな!」だな。
実際オリジナルのmain.lbでシーン連結してるの見たこと無いし。
(正確には見つかってない)
217:名無しさん@お腹いっぱい。
08/12/14 23:23:14 n3kogcN0
なるほどなるほど>>215は凄くまとまっていて分かりやすいな(゚∀゚)
エッセンスだけを抜き出すと、
『女に会う』のイベントのリンクを張り替える場合(インターセプト?乗っ取り?)
最後は[02]タグでmeet_endに飛ばすのが妥当であろう。
というコトだな。
ついでに
>「連結はするな!」
だな…w
とにかくオツカレ(゚∀゚)!
218:名無しさん@お腹いっぱい。
08/12/14 23:49:41 8qvpAkoK
>>217
まとまってなくてスマン
なんせ調べる度に新しいことが解ったりコレまでの予想がはずれたりで・・・
遂次書き込んでると変になるね。
ある程度たったら一旦まとめ入れたほうがいいかな?
main.lbを書き換えて既存のシーンを無視してるので、インターセプトに近いかな。
「女に会う」でエロイベントがない場合「meet_end」
ターン更新時のイベントや「シーン鑑賞」に登録されるようなものは「char_scn_end」に飛ばすのがデフォルトらしいが。
今のところはどっちでもいい感じがする。
通常作成されるのが予想されるイベント等は、キャラチェックなんかのプログラム部分へ飛ばすことはないと思うので
シーン終了時の処理として上の二つへのリンクを選択できればベターかな?
219:名無しさん@お腹いっぱい。
08/12/15 00:09:22 1Lrw+EyK
>>218
あーいやいや。
とりあえず思いついたら何か書き込むスタイルの方がイイと思うぞ(゚∀゚)
現在何が進行していて、どの程度まで進んでいるのかとか分かるし、
書き込むために文章まとめてるウチに脳内整理されて気付くこともあるだろうし(゚∀゚)
んなワケで今のところ↓こんな感じになってる。
URLリンク(apple.mokuren.ne.jp)
中身スッカラカンだけどね~(゚∀゚)
220:名無しさん@お腹いっぱい。
08/12/15 00:31:51 1Lrw+EyK
ああんオレ日本語読めてなさすぎ(;´Д`)
区切り区切りでまとめ入れるか入れないかの話か。
まぁ、とくにルールにしなくてもイイんじゃないかのぅ?
ウダウダ話しあって収束したあたりで必要があればやる程度で(゚∀゚)
221:名無しさん@お腹いっぱい。
08/12/15 02:48:44 1Lrw+EyK
■sgh_editor 超絶実験版 ver0.02 DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
とりあえず本日実装分(゚∀゚)!
222:名無しさん@お腹いっぱい。
08/12/15 14:16:40 GlBNrwGq
>>221
_、_
( ,_ノ` ) n
 ̄ \ ( E) グッジョブ!!
フ /ヽ ヽ_//
「meet_nobunaga_01」との置き換え実験は一発で成功。(Ver1.00)
[なま]は手動でタグと数値をぶっこむやつだね?
追加で実装したらいいタグは、[1E]のBGMストップ(4+4バイト?)くらいか?
[08]のフラグはいろいろ実験成功してからでいいかな。
main.sdの後ろにデータ追加して、そこにmain.lbとかから飛ばすってのは、すばらしい発想だったね。
そのおかげでほとんどのタグを無視できるようになった。
実際イベント作成で使うタグなんてほんの数個だし。
後は、画像関係のリストができたら、ほぼ完成だね。
俺はただの解析厨だが、貴方は本当に神だ!
今度は[13]関係を調べてみようと思うが余力はあるかい?。
選択肢が絡むとかなりややこしい事になると思うので、
調べてみて面倒だったら止めたらいいし。
EO復活万歳\(^o^)/
223:名無しさん@お腹いっぱい。
08/12/15 15:30:25 E9MHJLfz
解析ラー乙でし。自分は半分も理解できてないけど、新しいイベントに差し替えができそうやね。
最後は織田ルート全面改定をば......
224:名無しさん@お腹いっぱい。
08/12/15 17:17:07 1Lrw+EyK
>>222
HAHAHAデータ書き換えでは見事に敗北したが、インターセプト作戦でイーブンだ(゚∀゚)!
[なま]はver0.03のreadmeに書いといた。
[1E]つけた。
[08]保留。
[13]保留。
とりあえずタグの生ブッ込みを実装したので、理論上書けないタグはなくなったし、
01タグの中身も外部ファイル定義にしたのでreadme見て調べて試せばなんとかなるだろ。
コマンドリストのセーブとロードもつけたので、コマンドリストのデータと
連結してほしいエントリさえ聞けばシナリオ配布も可能(なハズ)
なのでまぁ、あとは基本的にKIAIかなと。
で、今まで使える使えないは置いといて、それなりの数のツールをリリースしてきた
つもりなんだけど、今までマトモに改造とかされてんの一度も見たコトが無いので、
(png2tig作ったときにテラ北斗なSS一枚見ただけな気が…w)
これ以上だ~れも使わないであろうツールに労力を割くのもどうかな~と(; ・`д・´)
もしもシナリオとかイロイロ書く人があらわれて、オレが楽しめるようになった時に
シナリオ書く上でタグ書きが煩雑すぎたりするようなら、何か対応しようかなぁ、と。
まぁ、その時にこのスレを見ているかどうかは分からないケド(゚∀゚)
225:名無しさん@お腹いっぱい。
08/12/15 17:17:39 1Lrw+EyK
んなワケで
■sgh_editor 実験版 ver0.03 DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
とりあえず不可避な致命的バグでも出ない限り開発一旦pendingします(;・∀・)
ID:GlBNrwGqへ
オレがタグの概念を教えたハズだったのに、あっという間に抜かれてしまって
正直ちょっと悔しいw途中からタグ系の解析丸投げな格好になっちゃって
申し訳なかったけど、それでも「も~何このタグぅ~」とか思ってたのが
見る見るウチに解き明かされていく様はなかなかに面白かったぞ(゚∀゚)
226:名無しさん@お腹いっぱい。
08/12/15 17:24:34 pnjGJvjo
この解析班優秀だな
久しく見てないぞこんな改造されてんの
日曜になったらオルテナをガッツのタカさんにするから待っててくれ
227:名無しさん@お腹いっぱい。
08/12/15 18:02:59 GlBNrwGq
ID:1Lrw+EyK
ひとまずおつかれ~
結構面白かったぞ。
ちなみに俺が開眼したのは
[タグ][アホカウンター][DATE]
の並びになってるのを教えてもらった時だった。
あとは弄って実験と、想像でなんとか。
>>(png2tig作ったときにテラ北斗なSS一枚見ただけな気が…w)
これ俺だ。w
最初はCGの差し替えを何とかできないか、だけだったから・・・
柴田勝家は最初、戦国ランスのにしようとしたが立絵が切れてて止めた。
現在CGリストを完全にする作業をちまちまやってるが、無茶苦茶うっとうしいなコレ。
背景だけでもノーマル、明るい、暗いの3種あって150種類近くあるんだな。
アドレスも文字数によって変化するのでただ単にいくつ+とかではいかないし・・・
立絵と背景を別々のリストで指定できるようにはできんかな?
全部並べたら結構見にくいぞ。
あと、エフェクトはどうするかな?
見る限りホワイト系とブラック系しかないし、[01]で飛ばしてるだけだろうし。
簡単だと思うから調べてみようか?
228:名無しさん@お腹いっぱい。
08/12/15 18:21:51 GlBNrwGq
>>立絵と背景を別々のリスト
背景とイベントCGと立絵の3種・・・
229:名無しさん@お腹いっぱい。
08/12/15 18:24:43 E9MHJLfz
>>224アガトウ
エディタは使いこなせてないけどPNG-TIGは使ってるよ。
鍋島さんとか、北条や佐竹の一門衆とか
尼子十勇士っぽい方々とかてきとーに画像当てて声も差し替え。
ほんとは元ネタ同一シリーズで固めるべきなんだろうなぁ...
高橋紹雲(鎮種)や高橋統虎(立花宗茂)なんかも女性化すればいいのになー統虎なんか本多のへーちゃんと双璧で誉められてたんだし
230:名無しさん@お腹いっぱい。
08/12/15 21:34:09 3MmbYFFB
ここみてると、ADVパートはなんでこんなの作っちゃったんだろって出来だな
231:名無しさん@お腹いっぱい。
08/12/15 21:40:34 5oUuM/xx
>>230
いまさら何を言ってるんだ
232:名無しさん@お腹いっぱい。
08/12/15 21:59:43 3MmbYFFB
すまん、本スレと誤爆した
233:名無しさん@お腹いっぱい。
08/12/15 23:22:38 1Lrw+EyK
おし。オレ的にかなりパーフェクトに近い島津オープニングが完成したぞ(; ・`д・´)
URLリンク(apple.mokuren.ne.jp) DLKey:sghmod
動作実験や練習も兼ねてヒマな人以下をやってみてオクレ
①sgh_editorのinディレクトリにmain.ev main.lb main.lbn main.sdをコピってくる
②解凍して出て来るshimadu_OP.datをsgh_editor ver0.03で開く(めにゅ~=>ろ~ど)
③右下の方に二つあるリストのmain.lb連結の方からhome_start_shimaduを選ぶ
④コンパイルボタンを押す
⑤outディレクトリにmain.ev main.lb main.sdが出来るので戦極姫のmain/にコピる。
⑥島津でゲームをスタート。
[追記]今回使った01.txtも添付しといたので、必要なら適当にマージしてオクレ(゚∀゚)!
234:名無しさん@お腹いっぱい。
08/12/15 23:40:07 1Lrw+EyK
>>227
なんつーかあんま誰か一人ががんばってリストを完成させる必要は無いかな~
と個人的には思っていて、画像系のはKIAIさえあればバイナリエディタで開けば分かると思うんだ。
開くか開かないかの差であって。
んで、誰かが何かを書く際に調べた01情報が少しづつマージされていけばいいかな~なんて(゚∀゚)
ただまぁ、自分でちょっとやってみて消去系のはmain.swとかとの関連が分かっていて
ある程度タグが読める人じゃないと無理くさい感じはしたかも。
それとリスト分割のハナシだけど、まぁまぁそんなに焦らずに
リストが成長したころに一度、画面の上から下までびろ~んって広がってるプルダウン見て
うっはwwwwナニコレwwww長すぎwwwwwwwwwwwwwwwwww
なんて一笑いしてから考えようz
分割に関してコレが正解というのがまだ見えていないのと、
実装工数のハナシになっちゃうけど、コマンドリストからの書き戻し処理を入れたので、
ぶっちゃけちょっとメンドクサイ。これがFAというのが出ていて一度きりならすぐやるけど、
「ああんやっぱりこうがイイ」「いやいやこれはこっちだろ」みたいになると超メンドクサイ。
それとエフェクトだけど、余裕があったらちょっと見てみて欲しいかなぁ。
ハマるようならエフェクトはしばらくお預けって感じでもイイし。
# っていうかテラ北斗やっぱりオマエか…w
235:名無しさん@お腹いっぱい。
08/12/15 23:50:52 1Lrw+EyK
sgh_editorがどんな発想で動いているのかをドキュメントにまとめてみた。
■URLリンク(apple.mokuren.ne.jp) DLKey:sghmod
一応目を通しておくと、一見複雑に見えるmain.lb連結だのが何故必要なのかがワカル(゚∀゚)!
>>226
なんだか日曜日を待っておく(; ・`д・´)
>>229
ssはまだか。ssはまだなのか。
236:名無しさん@お腹いっぱい。
08/12/15 23:54:04 GlBNrwGq
URLリンク(apple.mokuren.ne.jp) DLKey:sghmod
CGリストを一応作ってみた。
イベントCGなんか、まだこの3倍あるわけだがしんどいので基本を全部入れただけ。
立絵は表情なしの基本と消去を入れてみた。
解凍後「rc」フォルダに入れるのだ。
立絵位置(左)
立絵位置(右)
というのがあるが、これは「立絵位置(左)」を追加し直後に、立絵を追加すると絵が移動するかもしれないモノ
一回も試してないがな・・・
アドレスが間違ってるのがあったら教えてください。
>>225 すまねぇ
やっぱ[08]が必要だ。
俺は[まな]でいけるのだが、フラグ無しではイベントが進まなくなると思う。
例えば
main.lbの[meet_ai_01]と追加シーンを置き換えたら、
main.swの[meet_ai_01_end]に01を入力しないと
[meet_ai_02]がはじまらなくなると思うのだ。
書式は
[08][aa bb bb][xx xx xx xx][00 01 00 00 00]
aabb = カウンター
xxxx = main.swnのリストのアドレス÷0x10
シーンの最後の「移動とか」を入れる直前にこれを入れないとな。
本当にすまないが、もうしばらく付き合ってくれないか? m(_ _)m
237:名無しさん@お腹いっぱい。
08/12/16 00:21:23 nBcMkhMv
>>235 いい解説ですじゃ。
ファイルのサイズが変わると落ちる。みたいな仕様でなくてよかった。
main.sd の上のほう・・・Verでアドレスが変わってたらいやだな。Ver縛りが入ってしまう。
Ver1.01で見てみたけど上のほうは変わってない気がするが、ソフマップ特典はやばそうだ。
フラグ関係はかなりずれてると思うから。
リストの件だけど
現段階ではリストからの選択は面倒だけど
リストが完成してきたら、同じキャラの立絵が並んで逆にわかり易くなるかも。
センスある人にリストの名前部分を直してもらいたい。
このゲーム、顔グラだけなら単純にファイル追加して武将のリスト弄れば、
既存のファイルと置き換えないですむんだな。
理論上65535ファイルまで増やせると思う。
238:名無しさん@お腹いっぱい。
08/12/16 09:47:29 pMT0foMe
>>236
スンゲーリストきたぁ~(゚∀゚)
と思ったんだけど、何かウチとアドレスちなう…w
オレが調べた島津のあたりとかすごいズレてるな…w
ID:GlBNrwGqのトコだと>>233のやつ動かなくね?
[08]に関してだけど、ひとまず開発pendingってのを尊重してオクレ。
それにこの場面でフラグ操作が必要だ。みたいのは
調べたり聞いたりしないとわかんないよ…w
調べる人はほっといても何とかするだろうし、
聞く人には[08]の入力欄用意すんのも
生タグの書き方教えんのも同じだって…w
ひとまず、現状の機能で何とか出来るコトに関してはKIAIで。
○01のプルダウンが長い=>KIAIで選ぶ。
○フラグ操作=>KIAIで生タグ。
オレのスタンスとしてはこんな感じ。
# ついでに01参照のズレが発覚したぽいので更にやる気ggg(;・∀・)
# まぁ、01.txtの運用で何とかなるかも知れんが何かもういいやw
239:名無しさん@お腹いっぱい。
08/12/16 12:04:01 nBcMkhMv
>>238
>>[08]に関してだけど
そかー。じゃあ皆の胆力に期待だな。
立絵の話だけど、
とりあえずリストの頭探して、鼻歌交じりに入力してたら
蓮の基本が終わったあたりで、その下にまた「誰それ 基本」てのが見えてきて
うぎゃー!となってそこでやめた。
一応どっちのアドレスでも動いてる気がするので、
アドレス順で下に来るやつを「~~ 基本2」とか置いてみてる。
あと、そっちの01.txt見てみたが、ナニコレ2のアドレスは[A2 38 01]じゃないか?
そこらは、こうだ
A2 38 01 00:立絵位置(左)
66 38 01 00:立絵位置(右)
84 38 01 00:立絵位置(中央)
まだ、(右端)(左端)へ立絵を移動させる命令がある。
最大5人まで並べられるかな?
俺もそろそろ何らかの改造をやってみようと思う。
240:名無しさん@お腹いっぱい。
08/12/16 12:31:52 ovXcGXUW
>>237
つまりエロゲキャラ総出演とか可能になるわけか
241:名無しさん@お腹いっぱい。
08/12/16 13:08:10 nBcMkhMv
>>240
そういうことだな具体的に説明すると、
URLリンク(apple.mokuren.ne.jp)
画像の
① = 「face64」及び「meet」フォルダのファイル名
ここではCAなんで「202.tig」を呼んでるんで、例えば「255.tig」を読ませたいならFFにすればいい。
ファイルサイズに注意
② = 声の変更ができる。(主にコマンド実行時の「はっ!」とか言う声)
どのファイルと対応という事ではなく、キャラ毎に数値が決まってる。
大体は顔グラファイルと同じ数字を入れると、そのキャラの声になる。
おまけ
③ = [01]を入れると引抜けなくなる。
④ = [02]を入れると「女に会う」で会えるようになる。
会話イベントなどが無いのでエラーが起きるがな。
⑤ = [01]を入れると重要武将になるのかな?
弊害はちと不明。
1回だけしか実験してないので絶対とはいえないが
がしがしやっちゃってください。
242:名無しさん@お腹いっぱい。
08/12/16 13:44:10 XOyjF3Ot
>>241
(5)の1は「敗北条件にかかるユニーク武将」のチェックかなぁ?
(1)の1は引き抜き謀反なしの重要武将になるんやね。
同じ(1)に2を入れると一揆衆や寺社勢力扱いになってやはり降伏・引き抜きなし
ちなみに武将個人でなく集団と見なされ切腹のメッセージは「鎮まりました」とかになる。
243:242
08/12/16 14:06:51 XOyjF3Ot
>242自己レス
(1)は(3)、(2)は(4)の間違いですたorz..o
244:名無しさん@お腹いっぱい。
08/12/16 17:27:17 ovXcGXUW
>>241
解りやすい解説㌧
休みに弄るのが楽しみになってきた
245:名無しさん@お腹いっぱい。
08/12/16 17:44:27 pMT0foMe
>>239
軽く不貞寝して、なんか納得いかなかったので、
再インストールして調べてみたら、島津勢も>>236のアドレスになってた。
ついでにv1.02のupdater落としてパッチあててみたんだけど、
アドレスの変更はなかったぽい感じ。
んで>>237を見てソフマップ特典て何だろう…?
ってリルフィか…wそういやそんなのもあったかもしれん…w
アドレスがズレてたのリルフィっぽい(;´∀`)
# 同じver1.00使ってるハズなのにmain.sdが違うってオカシイとは思ってたんd
ナニコレの0x138A2のトコみてみたんだけど、0x248(set_x)に
00 1F FF FF FFって感じになってたんで>>189の解析と合致するねぇ。
オレの書き間違いか読み間違いだスマンw
そうそう、iehisa_A基本だけやっぱり違っていて、
AC 6A 01 00 になってるけど
4C 6A 01 00 じゃないかな?
手が空いたら確認してみてオクレ(゚∀゚)
246:名無しさん@お腹いっぱい。
08/12/16 19:08:04 nBcMkhMv
>>245 さんきゅ
その通りでした。
ソフマップ特典はいらんな。
イベントが追加され、イベントCGが間に割り込んでくるのでアドレスがずれてたんだね。
武将としては、Ver1.00ですでに登録されているので顔グラだけいただいておくといいかな。
現在は、このゲームがどこまで改造できるかを実験する準備中。
具体的には、立絵を作ってる最中だ。
なんだったらCGとかを、差し替えではなく、追加できるかどうかやろうと思ったが、
今これを書いている最中にとんでもないことを書いてる気がしてきたので、
挫折する気まんまんだ。
立絵の追加はさすがにしんどそうだけど、背景とかはいけるかもしれないな。
いざという時の[12]で
main.sdがぐちゃぐちゃなんでとりあえず再インストールだな。
今度はきちんとバックアップとってやろう。
247:名無しさん@お腹いっぱい。
08/12/16 20:47:37 nBcMkhMv
いい素材を発見したので速攻で作ってみた。
人間タグパーサーの異名をもらっては限界にチャレンジするしかないと思い。
大名や重要武将を書き換えてみたぞ。
うまくイベント繋げるとちゃんとストーリーいけるかもしれないぞ・。
URLリンク(apple.mokuren.ne.jp)
URLリンク(apple.mokuren.ne.jp)
いい感じに出来てるよ。
ちなみに織田信長と明智光秀を改造したよ~
main.sd等の構造をある程度理解してれば楽勝でここまでこられる。
後、文章を追加する際。
名前の欄に何も入力してないと落ちるので注意!
気がつくまでに数回やらかしてしまった。
248:名無しさん@お腹いっぱい。
08/12/16 21:18:48 wcz2WVDs
何だか凄いことになってきたみたいだw
249:名無しさん@お腹いっぱい。
08/12/16 21:20:29 kVqriRhH
全く別物のゲームとしか思え・・・
250:名無しさん@お腹いっぱい。
08/12/16 21:31:27 W+RlAGUC
ハイレベルだなおい
251:名無しさん@お腹いっぱい。
08/12/16 21:49:49 pMT0foMe
>>247
サスガ人間タグパーサー(゚∀゚)!
>>241みて『へぇ~』と思ってちょっとやってみた。
URLリンク(apple.mokuren.ne.jp)
URLリンク(apple.mokuren.ne.jp)
# ↑この『女に会う』ボタンはどこでいじんの?
ついでにコレ。画像差し替えじゃなくて追加でやってみた。
URLリンク(apple.mokuren.ne.jp)
↓こんな感じで
URLリンク(apple.mokuren.ne.jp)
背景のとこパクって連結無しで追加しておいて、
あとから01とかからアドレス叩いてやればいけるっぽい。
イベントCGのトコをパクったら、絵が出てすぐ終わっちゃったので、
フラグ関連の下準備とかしておかないとイベントCGとかは
動かないのかもシレン(; ・`д・´)
あと『女に会う』とシーンがどう繋がってるのかわかれば、
ソコに飛ばすようにすれば会えるようになるね(゚∀゚)!
252:名無しさん@お腹いっぱい。
08/12/16 21:51:53 pMT0foMe
ああごめん。最後の画像ちょい間違った。
[30]タグの行無しで(;´∀`)
253:名無しさん@お腹いっぱい。
08/12/16 22:19:03 nBcMkhMv
>>251 CG追加
鍋食ってる間に結構やらかしてますな。
そうだった[12]だったら元に戻ってこれないんだった・・・
「女に会う」なんだが
会うのボタン押すとどこに飛ぶとかそんなことはわからないけど、
既存のキャラで会える人なら乗っ取れる。
busyo21n16new.binで汎用キャラの名前書き換えた後、
main.lb内の誰か会える武将を、この新キャラの名前に置き換えてしまうのだ。
で、安全のため乗っ取ったキャラは武将ファイルの「会える」の02(もしくは01)を00にしとけば大丈夫だと思う。
俺は念のためすべての名前を書き換えたよ。
織田信長を孫策伯符と置き換えたら大名家も勝手に孫策家になった。
つらいのが名前の長さだな、アドレス変わるとおしまい・・・
どうやらキャラの呼び出し等は名前の文字列でやってるようなんだ。
しかもそのリストはおそらく存在チェックのあたりでやってると思うので、
追加したらアドレスが狂ってしまうし、なにより会った回数等を記録するフラグエリアに空きがない。
後は乗っ取ったキャラの会話シーンのアドレスをインターセプトする。
同じ名前の武将複数いたら、「会う」と信長が出てきたりする。
254:名無しさん@お腹いっぱい。
08/12/16 22:36:03 nBcMkhMv
纏めてみます。
ちなみに俺がやったのはこんな感じ。
busyo21n16new.bin 織田信長 を 孫策伯符 に
↓
main.sd 念のためすべての織田信長 を 孫策伯符 に
実はこれだけ・・・
もし汎用武将で会える武将を乗っ取るならこんな感じ。
busyo21n16new.bin 汎用武将 -> 呂蒙子明(「会う」の場所の[00]を[02]に)
↓
busyo21n16new.bin 明智光秀の「会う」の[02] -> [01]
↓
main.sd 念のためすべての明智光秀 -> 呂蒙子明
これでいけるかと
もし汎用キャラで「会える」キャラをのっとる場合は、大名は乗っ取らないように。
リストに無いキャラが大名になるため、存在チェックでGAMEOVERになるかと。
重要武将の場合は重要武将リストにある名前が部下にいたらOKだと思う。
255:名無しさん@お腹いっぱい。
08/12/16 22:37:00 nBcMkhMv
>>busyo21n16new.bin 明智光秀の「会う」の[02] -> [01]
じゃなく
busyo21n16new.bin 明智光秀の「会う」の[02] -> [00]
だ
256:名無しさん@お腹いっぱい。
08/12/16 23:09:07 nBcMkhMv
>>251
>># ↑この『女に会う』ボタンはどこでいじんの?
読み違えていた。
このボタンの顔グラは「face64」のがそのまま来るよ。
表示されていない細かい理由は不明だけど、
おそらく上にあるようにキャラリスト外だからかな?
よく考えるとこのキャラ存在リストには「杉田玄白」やらがいないな
ということはここはあくまで重要キャラリストで、
イベント関係は、シーンの会話が乱立する合間にあるリストから呼び出してるのかな?
ということはおそらくこれだね。
main.sd [0x000AE0A7](Ver.1.00)
257:名無しさん@お腹いっぱい。
08/12/16 23:10:25 pMT0foMe
>>254
あーやっとワカタw>>253でmain.lbの名前を書き換えろって書いてあったから(;´∀`)
main.sdの文字列を全部置換しちゃうってコトか。
新人キャバ嬢いれるのはナカナカ大変そうじゃのぅ。
258:名無しさん@お腹いっぱい。
08/12/16 23:13:58 nBcMkhMv
>>257
すまねぇ。なんとな~く間違えてしまった。
長い名前と置き換えるのは厄介だね。
259:名無しさん@お腹いっぱい。
08/12/17 00:01:41 pMT0foMe
>>256
ナイスアドバイス(゚∀゚)!なんかできたw
0xAE761あたりからのリスト
↓こんな感じになってて、
0xAEB8E
66 49 70 00
=> 04 06 08 91 BA 8F E3 82 B3 82 F1 00 (村上さん)
=> 03 12 00 00 00
=> 01 01 00 00 00
=> 02 02 00 00 00
=> 02 49 70 00 A3 00 00 00
0xA3->meet_murakami-san
この名前書き換えてmeet_murakami-sanを
>>251の3枚目の画像のシーンにリンクしたら
『女に会う』でこのシーン発生した(゚∀゚)!
フラグ関連ノータッチなんで毎回同じシーンだけど…w
260:名無しさん@お腹いっぱい。
08/12/17 00:11:34 qcvPdreE
たぶんmain.lbnにシーン名1つ新しいの作って、
対応するindexでmain.lbに繋げたいシーンのアドレスいれとけば、
>>259のリスト書き換えれば、リンク処理しなくてもいけちゃいそうだねぇ。
main.lb経由でこのリスト作ってるトコ見つければ(仮に処理AのアドレスAとしよう)
[処理B] アドレスB
[66]タグとかで新キャラ名とmain.lbnの新エントリを連結
[12]?とかでアドレスAに飛ばす。
こんな感じのを新規領域に作っといて、
main.lb->アドレスB->処理Bが走る->アドレスAに飛ぶ->処理Aが走る
ってコトが出来ると既存のキャラ潰さなくても
新人キャバ嬢が追加できそうな予感(゚∀゚)!
261:名無しさん@お腹いっぱい。
08/12/17 00:28:18 6Avnn48H
>>247
噴いた
262:名無しさん@お腹いっぱい。
08/12/17 00:31:33 ZAfSRkU7
表紙は意外とまともだったと思う
10年前はそれぐらいしか判断材料がなかったので色々と騙されたぜ
263:名無しさん@お腹いっぱい。
08/12/17 00:33:47 JPxf47GB
>>259
やはりそうか。
しかし村上さんは一箇所しかなく会話イベントは複数回ある。
つまりだここはあくまでキャラチェックの場。
シーンを発生させるためのフラグチェックはここではなく
なにやら[0x00238C3A]以降から匂ってくる。
例えばこれ、ちょっとバイト数には自信が無いが
[0x00238C6F]
66 EF 11 00 01 20 00 00 00 :murakami-san_feeling 会った回数フラグの位置
03 12 00 00 00 00 01 00 00 00 :会った回数。すでに2回目会っている(0回[FF*4]、1回[00]、2回[01])
02 02 00 00 00 :真なら
02 EF 11 00 96 01 00 00 :meet_romtyan_03_end へ飛べ
余裕でフラグ調整可能だな。
追加シーンでフラグの調整してこことうまく繋げるとなんでも出来そうだ。
>>260 スゲーアイデアだ。
追加シーンの前に上の[0x00238C6F]こんな感じのフラグチェックリストを作ると。
まずここに飛ばしてから、会った回数に応じた各追加シーンへ移動とかもできるね。
ただリスト作るならまたすこし解析が必要だ。
264:名無しさん@お腹いっぱい。
08/12/17 00:38:08 JPxf47GB
あかん、集中力が無いのかミスバッカだ。
02 EF 11 00 96 01 00 00 :meet_murakamisan_00
会った回数とかのチェックは少し違うかもしれないけど。
だいたいここでやってるぽい。
265:名無しさん@お腹いっぱい。
08/12/17 00:41:25 qcvPdreE
>>263
おおナルホドそんな秘密g(; ・`д・´)
あと立ち絵群のハンドリングを解明してしまえば
『女に会う』が可能な完全な新キャラが作れてしまいそうだな(; ・`д・´)
266:名無しさん@お腹いっぱい。
08/12/17 00:46:09 JPxf47GB
さらに発見。
村上さんフラグチェックのリストの頭にあるとこ
分解すればこうじゃないかな?
[0x00238C3A]
[01] EF 05 00 79 03 00 00 : とりあえず画像表示(室内)
[09] EF 08 00 20 00 00 00 : 会った回数のフラグの位置に
[00] 01 00 00 00 : 数値を+1して入力せよ
毎回ここに飛ばすのは会った回数を記録するためかな。
[09]は数字の[+]という意味かな。
会うシーンのとき画像を表示させなくても室内のなるのはこれが原因か。
267:名無しさん@お腹いっぱい。
08/12/17 00:57:44 JPxf47GB
もし↑がmain.sdの追加エリアでいけるなら
フラグファイル(main.swとmain.swn)も後ろにmeetエリア増やして、
[09]~の後ろのアドレスを追加エリアにすると、
新キャラでも会った回数に応じたシーンを発生させられるんじゃないかな?
やべぇ。本気でなんでも出来そうだ。
268:名無しさん@お腹いっぱい。
08/12/17 01:11:08 JPxf47GB
>>260
こういう手はどうかな?
main.sd [0xAE761]からだけど、
[0E]タグをはさんでないところを見ると
会った武将を上から順番に検索して見つけたら[02]で飛ぶ、となっているぽいので
キャラリストの最後の「檜前蓮」のとこをつぶして[12]なりで追加エリアに飛ばす。
(つぶしたことで出来る隙間を00で埋められないなら少し考えないといけない)
追加エリアの一番最初につぶした「檜前蓮」のをコピペなりしといて、その後ろに新キャラのリストを追加。
また、その後ろに新キャラのフラグチェックを入れ、シーンを追加する。
269:名無しさん@お腹いっぱい。
08/12/17 01:13:36 qcvPdreE
たぶん>>266はあってると思う
>>259でシーンが発生する前に
一瞬だけ自室の絵が出たので間違いなさそうだ。
なんかアレだな。main.sd読んでるだけじゃなくて、
実際に何か作ってみると副作用的に解析進むな(゚∀゚)
270:名無しさん@お腹いっぱい。
08/12/17 01:16:28 qcvPdreE
あー>>268も結構スマートな方法かも知れんね(゚∀゚)
潰したトコを飛ばした先に書いとけばいいし、
[12]で飛んじゃえば潰したトコのゴミが残ってても
関係なさそうだしね(゚∀゚)
271:名無しさん@お腹いっぱい。
08/12/17 01:37:50 JPxf47GB
>>269 結構無茶なこと考えてるとなおさらね。
立絵なんだけど、もしかして背景として追加できないかな?
と思ってやってみたが、背景の重ねがけは出来なかった。
もう寝るか・・・
272:名無しさん@お腹いっぱい。
08/12/17 02:13:40 qcvPdreE
たぶんだけど、立ち絵はchar/以下のchファイルに関連が定義されていて、
もしもchar/以下にある拡張子chのファイルを全て読み込む
というような設計になっていれば、画像用意してchファイル作って
[01]で立ち絵呼び出すようなトコを追加してやれば出来る(ような気がする)
# こう書くと単純そうだが、いざやるとなったら結構ダルそうだ…w
273:名無しさん@お腹いっぱい。
08/12/17 08:16:57 JPxf47GB
立絵はフラグも絡むからね。(~_vanishとか~_x、~.set)とか
chファイルと立絵ファイル追加して、main.sdに立絵処理と追加する場合、
上のフラグも用意するか、誰かの立絵位置などのフラグを借りるかしないとね。
借りた場合は同じシーン内で、そのキャラと同時に表示できなくなる弊害が出てくるが。
基本的にはフラグを借りるわけだが、なんとかコピペでいける方法を考えてみた。
.chファイルだけど下のほうに空間が開いてて立絵の単純追加はできるから
開いてる空間に呼び出し符号(基本とかの代わりに「改造」とか)を記入し、参照ファイル名(新キャラの立絵)を入れる。
chを借りてるキャラの表情命令をコピーして追加エリアに書き込んだ後、
「基本」とか書いてるとこを「改造」に書き換えたら、とりあえずはいけるんじゃないかな?
途中、作業順を飛ばすための[12]命令が入ってるので、そこは直さないといけないだろうが・・・
274:名無しさん@お腹いっぱい。
08/12/17 09:44:58 JPxf47GB
上記の方法で立絵の追加でけた。
■URLリンク(apple.mokuren.ne.jp)
追加立絵を「nobunagaA20.tig」にリネームし
nobunaga_A.chのした方の空欄をこう変更。
多分ファイル名は何でもよい。
■URLリンク(apple.mokuren.ne.jp)
main.sd の最後に[03]~[0E]のコレを追加。
「表情」の部分と、
途中の[12]のとこの移動アドレスを変更。
ツールの01.txtの最後に↓を追加。
12 d1 32 00:実験(関羽)
14 E4 03 00:実験(関羽)消去(nobunaga_A 消去)
■URLリンク(apple.mokuren.ne.jp)
こうなる。
275:名無しさん@お腹いっぱい。
08/12/17 14:18:51 JPxf47GB
汎用武将を犠牲にしたが、会える新キャラの追加ができた。
立絵は上の方法でやっている。
■URLリンク(apple.mokuren.ne.jp)
「main.lb」にアドレスindexを追加、「main.lbn」の最後にシーン名追加
■URLリンク(apple.mokuren.ne.jp)
「busyo21n16new.bin」の信長の上にいる津田君をリネームして、会えるようにして、顔グラの指定を直す。
キャラと会うリストの「檜前蓮」をつぶして[12]で最後に飛ばす。
■URLリンク(apple.mokuren.ne.jp)
「main.sd」の最後に檜前蓮のキャラチェックをここに移動、続いて新キャラのチェック追加。
新キャラのチェックの最後で、念のため信長のフラグチェックアドレスの先頭に[12]で繋いでおく。
[02]で「main.lb」の追加したアドレスindexに飛ばす。
その下にシーン追加。今回は「会う」で自動発生するだけで、会う回数に応じたシーンは作ってない。
■URLリンク(apple.mokuren.ne.jp)
「会う」の選択画面。
■URLリンク(apple.mokuren.ne.jp)
会ってみた。
どだ!簡単だ。
276:名無しさん@お腹いっぱい。
08/12/17 15:20:47 qcvPdreE
>>273-275 やりやがった(゚∀゚)
そういや描画用の変数も個別になってるんだったね
その分追加するか、間借りするしか無いワケか。
しかしまぁよくやったよ…wオツカレ(゚∀゚)!
# なにげにオレもセイバーつくるとき津田君潰したんでちょっとウケたw
277:名無しさん@お腹いっぱい。
08/12/17 15:40:08 qcvPdreE
どうでもいいけど>>251でアイコン出てなかった理由ワカタ(゚∀゚)
元のPNG画像にalpha-planeが無かったからだ。
278:名無しさん@お腹いっぱい。
08/12/17 17:14:34 iBvsgAMB
むはー、雲長さんやセイバーたんがぞろぞろ出てくるスーパー戦極姫対戦への道か
279:名無しさん@お腹いっぱい。
08/12/17 18:07:15 JPxf47GB
>>276
疲れるから、どんどん増やそうという気は無いので、
基本的には既存のキャラを潰して遊ぼうと思ってる。
>>278
おうよ。
ここまで弄れる人はさすがに限られてくるだろうが、
神ツール2種+バイナリエディタのみで、簡単にキャラの乗っ取りは可能だ。
いろいろ弄って楽しんでくれ。
280:名無しさん@お腹いっぱい。
08/12/17 18:29:13 qcvPdreE
>>279 とりあえずKIAIだな(゚∀゚)
んで>>247の最後は何かちょっとマズイだろ~(; ・`д・´)
と思って暫定対策いれてみた。(名前空欄なら全角スペースに置き換えるだけ
■sgh_editor 実験版 ver0.03a exeのみ要DLLとか DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
ついでに自分用にさっきチョチョイと作ったツール
■bindata_append exeのみ要DLL DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
Openしたファイルにinputのデータをdata typeの形式で
alignmentバイト数、空欄をblankで埋めて追加する。
intの場合はLEもBEも4byte固定。
data typeをFileにして左のリストからファイルを選んで
[Write]するとファイルの中身をドドンと結合する。
※別のファイルを開くか終了するまでファイルハンドルを放さないので注意
イロイロと複雑なコトやりだしたので、
ある程度マニアな処理を固めたbin_source.datを複数とっておいて、
main.sdにペチペチ単純結合できたほうがイイかな~と(゚∀゚)
281:名無しさん@お腹いっぱい。
08/12/17 19:22:59 JPxf47GB
>>280
対応さんきゅです。これでうっかりミスも減るはず。
こっちはこっちで、chファイルを間借りしてる立絵を、宿主と同時に表示できないものかと実験してた。
結論からいうとできた。
■URLリンク(apple.mokuren.ne.jp)
「main.swn」にこれらを追加。
これはただのindexで実際は何もしなくてもいいが、indexが無いと管理しにくいので書いた。
「main.sw」には十分な領域がすでにあったので「main.sw」には何も追加してない。
「main.sd」では、
前追加した立絵呼び出しの一連の命令のうち
マークしてる部分を書き換え。
■URLリンク(apple.mokuren.ne.jp)
孫策と関羽は同じchリストにあるけど問題なく並べられた。
ちなみにフラグのとこを変更してないと、片方しか表示できない。
282:名無しさん@お腹いっぱい。
08/12/17 20:19:32 qcvPdreE
>>281
おお凄いな(゚∀゚)
オレもちょっと同じコトは考えていて(考えてただけ)
main.swnとmain.swの末尾に新規フラグ領域を確保して、
それからmain.sdを①画像下段っぽくやったら上手く行くかな、と思ってた。
とりあえずIfGotoOnce系のフラグが未使用なら
極端な話、ドコ使ってるかさえ把握しとけば
main.swnの書き換えすら不要ってコトだねー。
# まぁ名前ちゃんと変えた方が分かり易いケド(゚∀゚)
ココまで出来たら、あとchファイルを読み込む部分が
charディレクトリ以下のchを全て読み込む設計になってれば
chファイルも分離して、かなりイイ感じで新キャラ追加ができそだね(゚∀゚)
283:名無しさん@お腹いっぱい。
08/12/17 20:58:18 JPxf47GB
chファイルのことだけど。簡単にいけたよ
こんな感じ、
nobunaga_A.ch を nobonaga_A.ch 等とファイル名少し変えて
nobonaga_A.ch の中身の表情とファイル名を適当なのに変えて
それにあわせて立絵ファイルをリネームする。
後は、
main.sd の立絵呼び出しのとこの nobunaga_A と 表情 を変更後のに書き換えるだけ。
284:名無しさん@お腹いっぱい。
08/12/17 23:13:00 JPxf47GB
>>282
IfGotoOnceのとこだけどなんか使ってるぽい。
ランダム発生型のイベントでかな?
檜前蓮のとこ調べてると、そこを参照してるようなんだ。
ちなみにここでは[IfGotoOnce0052]使ってた。
逆に言うとランダムでシーンを発生させたい場合、このあたりが使えるのかもしれない。
285:名無しさん@お腹いっぱい。
08/12/17 23:15:37 3oOn+CN5
>7
ちょう遅レスだが、1行目6500は現在居る城の番号 siro21.binの順番そのまま
ゲーム中で後のFFFFに書き込まれるのは攻め込む(予定の)城かね
286:名無しさん@お腹いっぱい。
08/12/17 23:54:20 qcvPdreE
おおスマン致命的なバグを1つ見つけた(; ・`д・´)
ループ抜け判定が甘くてバイナリ吐く時に最後にゴミをくっつけてた。
■sgh_editor 実験版 ver0.03b exeのみ要DLLとか DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
>>283-284
今ためしにchファイルを新規で作って追加してみようとやってたんだけど、
↑のバグ潰ししてた…w
でもchがとりあえず読み込まれる設計になってるぽいのが分かってヨカタ(゚∀゚)
# フラグは追加のがイイのかなぁ?main.swの書式全然知らんけど…。
287:名無しさん@お腹いっぱい。
08/12/18 00:06:43 E9/qx4NO
■sgh_editor 実験版 ver0.03c exeのみ要DLLとか DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
タグのカウンター自動生成部分ちょい間違ってた(; ・`д・´)
288:名無しさん@お腹いっぱい。
08/12/18 00:39:20 DtAQpDOv
>>287
修正乙。
復習のためにスレ読み直してた。なかなか面白いな。
main.sw だけど、フラグはそれなりに難しい。入力される数値がややこしいからな。
フラグはすべて4バイト単位。main.swnと対応してる。
弄るのは主に2種類。
main.swnのindex名でいくと、
「キャラ名_feeling」 : 会った回数の記録。main.swのFFFFFFFFのとこに書き込まれる。
「キャラ名_end」 : 会話シーンとかとにかくシーンが発生済かどうかのフラグ[01]で発生済
大体の人は新規武将を作らないと思うので、「キャラ名_feeling」はキャラ毎のフラグリスト通せば自動的に増えるが、
「キャラ名_end」 だけはシーンの最後に追加する[08]で入力されてるので、これは自力入力しなければいけない。
中間にある「キャラ名_view」と、「kikugoro_A」から下は、画像関係とかの特殊なフラグなんで弄らないほうがよいとおもう。
何回か書いたがおさらいだ、書き込みの書式は
[08 ?? ?? ?? xx xx xx xx 00 01 00 00 00]
???? = カウンター
xxxx = 書き込み先指定(0x4倍するとmain.swのアドレスになる)
01の前の[00] = 書き込めという命令
[01 00 00 00] = 書き込まれる数値
未発生にするには 00 を書き込む。
出来たら非常に便利だと思うのは、
リスト選択すると[xx xx xx xx]の部分が自動的に入り、
[01 00 00 00]のとこの数値は自分で決められる、というのがベターだが、
とりあえずはリスト選択すると自動的に01がはいればいいかと。
289:名無しさん@お腹いっぱい。
08/12/18 00:56:45 DtAQpDOv
会った回数を増やす[09]タグも式は[08]と一緒だ。全部で13バイト
「キャラ名_feeling」でしか使わないが・・・
290:名無しさん@お腹いっぱい。
08/12/18 01:08:10 DtAQpDOv
またしても早合点。
>># フラグは追加のがイイのかなぁ?main.swの書式全然知らんけど…。
フラグエリアを追加してそこで画像の作業することだね?
絶対に同じシーンで並べて表示しない宿主さがしてそこを借りるのもいいとおもうが
フラグエリアは結構広いので武将数が多くならないなら新規に追加でもいいかもね。
main.swnにはやはりフラグ名を追加したほうが作業しやすいな
main.sdにはフラグを参照するタグがいっぱいあってややこしい。
[08][09]だけでなく[6x]あたりは全部そうじゃないかな?と思えてくる。
よって既存のキャラのをコピーして、アドレス部分だけ直すと確実だな。
291:名無しさん@お腹いっぱい。
08/12/18 01:15:48 E9/qx4NO
やっと新規chと新規立ち絵で絵がデター(;´Д`)
ものっスゲーメンドクサイなコレ。立ち絵一つ追加するにも↓
03 07 45 00
=> 01 49 02 00 00 (set_vanish)
=> 03 17 00 00 00
=> 00 FF FF FF FF
=> 02 02 00 00 00
=> 12 07 45 00 0D 47 01 00 (5つ下の[4B]直)
08 07 46 00 21 03 00 00 01 49 02 00 00 (nobunaga_vanish)
08 07 47 00 D1 02 00 00 01 48 02 00 00 (nobunaga_x)
08 07 49 00 49 02 00 00 00 FF FF FF FF (set_vanish)
08 07 4A 00 48 02 00 00 00 FF FF FF FF (set_x)
4B 07 4E 00
=> 01 EE 01 00 00 (nobunaga_A)
=> 6E 6F 62 75 6E 61 67 61 5F 41 00 (nobunaga_A:ch名)
=> 00 00 00 00 00
=> 8A EE 96 7B 00 (基本)
03 07 51 00
=> 01 81 02 00 00 (nobunaga_view)
=> 03 12 00 00 00 00 00 00 00 00 02 02 00 00 00
=> 12 07 51 00 70 47 01 00 (2つ下の[3F]直)
3D 07 52 00
=> 01 EE 01 00 00 (nobunaga_A)
=> 01 21 03 00 00 (nobunaga_vanish)
=> 00 00 00 00 00
=> 01 D1 02 00 00 (nobunaga_x)
=> 00 00 00 00 00
=> 12 07 53 00 83 47 01 00 (2つ下の[40]直)
3F 07 54 00
=> 01 EE 01 00 00 (nobunaga_A)
=> 01 D1 02 00 00 (nobunaga_x)
=> 00 00 00 00 00
40 07 58 00
=> 00 32 00 00 00
08 07 5C 00 81 02 00 00 00 01 00 00 00 (nobunaga_view)
0E 07 5E 00
292:名無しさん@お腹いっぱい。
08/12/18 01:18:49 E9/qx4NO
フラグ間借りしない前提だと、修正個所15?
立ち絵10枚追加したら修正個所150とかやってられんな…w
293:名無しさん@お腹いっぱい。
08/12/18 08:24:08 DtAQpDOv
>>291
できましたか。頭の中では簡単にできるんだが、実際やると結構疲れる
あと、俺もこの分解やろうと思ってたんだ。さんきゅ。これで追加の際の負担が少し減るよ。
まあ、同じキャラの表情だけ追加する場合は間借りと同じなんで3箇所で済むね。
上でいうと「基本」のとこと[12]のとこ。
で、フラグだけ間借りする場合は4箇所かな?「ファイル名」「基本」「12」
思ったことが一つ。
カウンターはタグの後ろ以外にはついていない。逆に言うとタグの後ろには必ずついてる。
これは何の仕事してるのか不明だったが、デバックで使ってたんじゃないかな?
エラーが起きた場合、エラーダイアログにその直前の「カウンター」が表示されるとか。
ただ単に行番号みたいなものかな。
もしそうなら改造の上ではカウンターはどんな数値でもいいんだな。
294:名無しさん@お腹いっぱい。
08/12/18 10:39:34 DtAQpDOv
シーン分岐を選択肢で行えたらいいかな?と[13]を調べてみた。
>>135 でほぼOKだった。
「0x00051341」(信長開始シーン途中)
13 20 7E 00 9A 02 00 00 : 選択肢の表示
=> 02 : 選択肢数
=> 37 00 00 00 : 選択肢1(main.lbnでいうoda02_01a) = 一番下の[0F]へ
=> 38 00 00 00 : 選択肢2(main.lbnでいうoda02_01b)
=> 83 4C 83 4E 83 53 83 8D 81 5B 82 F0 91 81 82 AD 92 54 82 BB 82 A4 00 : 選択肢名1(キクゴロー探す)
=> 82 B3 82 C1 82 AB 82 CC 8F 97 82 CC 8E 71 82 AA 8B 43 82 C9 82 C8 82 E9 00 : 選択肢名2(女がきになる)
14 20 81 00 : 選択肢の表示終わり
0F 20 89 00 9B 02 00 00 95 02 00 00~ : キクゴローを探そう
選択肢数を03にして、選択肢3のアドレスindexと選択肢名を追加したら選択肢が3行になった。
選択肢で移動するシーンを追加する場合、main.lbにアドレスを追加しなければいけないな。
「会う」でのフラグチェックの代わりにコレをぶち込むと、会ったときに選択肢が出せそうだ。
295:名無しさん@お腹いっぱい。
08/12/18 23:44:08 E9/qx4NO
もう機能追加はしない予定でしたが、新規立ち絵の追加作業を自分でやってみて、
なんじゃこりゃぁこんなん二度とやりたくねぇヽ( `Д´)ノ
何とかならんのかコレと愚考した挙げ句、微妙な機能を追加したver0.03dをリリースです。
■sgh_editor 実験版 ver0.03d exeのみ要DLLとか DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
『r』識別子を追加しました、データ先頭からの相対アドレス値を書いておくと、
バイナリ生成時にmain.sd終端からの絶対アドレスに変換して出力します。
# 狭い地域で飛んだりしている[12]タグとかの可搬性を高める狙いg
それはさておき、↑のを使って立ち絵を追加する方法をまとめてみました。
イロイロと方法はあるのですが、今回はなるべく既存のデータを改変せずに
新規追加な方向で行ってみたいと思います。クソ長文ですが、
これでも解析チームがやってきた作業に比べればミラクルコンパクト(; ・`д・´)
■説明用データ org_A.ch del_stv2.sgh add_stv2.sgh DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
>>291あたりも併せてご照覧あれ(゚∀゚)
296:名無しさん@お腹いっぱい。
08/12/18 23:45:19 E9/qx4NO
①立ち絵画像を用意する。
800x600 alphaつき32bitのPNG
②拙作pngtig_convなどを使って画像をTIGに変換。
③TIGファイルを戦極姫のcharディレクトリの下に配置。
# 例としてtest001.tigという名前にする
④chファイルを作る。
# 例としてorg_A.chという名前にする
8A EE 96 7B 00 00 00 00 00 00 00 00 00 00 00 00 (基本)
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
74 65 73 74 30 30 31 2E 74 69 67 00 00 00 00 00 (test001.tig)
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 20 03 00 00 58 02 00 00
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
フォーマットはこんな感じ。データが作れれば何でも良いが、
拙作bindata_appendを使うなら
(a) File->Openでorg_A.chというファイルを作る
(b) [input]:基本 [data type]:string [alignment]:32 [blank]:00で[Write]
(c) [input]:test001.tig [data type]:string [alignment]:32 [blank]:00で[Write]
(d) [input]:(なし) [data type]:string [alignment]:8 [blank]:00で[Write]
(e) [input]:0x320 [data type]:int(LE) [alignment]:4 [blank]:00で[Write]
(f) [input]:0x258 [data type]:int(LE) [alignment]:4 [blank]:00で[Write]
(g) [input]:(なし) [data type]:string [alignment]:128 [blank]:FFで[Write]
(h) File->Quit
で↑の内容のファイルができる。『基本』は識別子なので何でも良いが、
この例に沿って円滑にコトを運ぶなら、まぁわかりやすい漢字2文字がイイ。
org_A.chができたらコレも戦極姫のcharディレクトリの下に配置。
297:名無しさん@お腹いっぱい。
08/12/18 23:46:31 E9/qx4NO
⑤バイナリエディタ等でmain.sdを開くなどしてデータ終端のアドレスを見る。
たぶん0x0033100Bぐらいだと思う。ココで記録したアドレスに+1したもの、
(この例だと0x0033100Cになる)をとりあえず『アドレスA』として記録しておく。
⑥まずは立ち絵の前に立ち絵の消去命令をmain.sdに付加しておく。
sgh_editor(0.03d)のinディレクトリにmain.ev main.lb main.lbn main.sdを
戦極姫のmainディレクトリからコピってきてから、sgh_editorを起動。
めにゅ~=>ろ~ど からdel_stv2.sghを開く。
# ver0.03dから実装した機能を活用しているので古いバージョンだと無理。
何もいじらずに[コンパイル]ボタンを押してsgh_editorを一旦終了する。
⑦outディレクトリにmain.sdなどが生成されているはずなので、
またバイナリエディタ等で開いて終端のアドレス+1を『アドレスB』として記録する。
そうしたらoutにあるmain.sdをinディレクトリにコピー。
これでinディレクトリには立ち絵消去命令が付加されたmain.sdが配置される。
で、念のためにrc/system.iniを開いてEV_CNTの数値を+100ぐらいしておく。
298:名無しさん@お腹いっぱい。
08/12/18 23:48:08 E9/qx4NO
⑧再びsgh_editorを起動して、今度はadd_stv2.sghを開く。
イロイロとあるのだが、とりあえず今のトコロ注目するのはコマンドリストの
7行目と9行目と11行目。
7行目のorg_Aは工程④で作ったchファイルの名前で『基本』はその時につけた
識別子となる。それぞれ異なる名前をつけたなら書き換える。
次に9行目と11行目。それぞれ『12:r 178』と『12:r 197』になっている。
この数字は7行目の『org_A』と『基本』の文字数(正確にはバイト数)によって
増減させる必要がある。ココまでサンプルどおりに作業をしてきたなら、
変更する必要は無いが、たとえばorg_Aをhoge_Aという名前でchファイルを
作った場合1バイト分データが増えるので、9行目と11行目はそれぞれ1増えて、
『12:r 179』『12:r 198』になる。日本語などの場合は2バイトなので、
1文字増やすとバイト数は2増える。『基本』を『まったり』などにした場合、
日本語2文字増えて計4バイト増加となる。
ここらのカスタマイズが終わったら[コンパイル]を押してバイナリを生成する。
⑨工程⑤で記録した『アドレスA』は立ち絵消去用命令の開始アドレスとなり、
工程⑦で記録した『アドレスB』は追加した立ち絵の表示用命令の開始アドレスと
なるので、これらをrc/01.txtに追加する。(リトルエンディアンなので注意)
0C 10 33 00:追加立ち絵 消去
53 10 33 00:追加立ち絵 基本(数字は適当。だいたいこんぐらいだろう、と。)
299:名無しさん@お腹いっぱい。
08/12/18 23:49:02 E9/qx4NO
ココまでカンペキにこなすと、追加した立ち絵を[01]タグ等で使えるようになります。
2枚目以降を追加する場合はchファイルさえ作っておけば工程⑦からやればOKなハズ。
※注意
del_stv2.sghとadd_stv2.sghでは描画表示用の変数として、
main.swnのindex 0x03C0~0x03C3の4つを(半ば強引に)使っています。
フラグ関連の解析が進んで不具合が出るコトが発覚したら
安全そうな数値または新規フラグ領域などの値に変更してクダサイ。
300:名無しさん@お腹いっぱい。
08/12/19 13:20:00 RxgUQUrx
おお、相対アドレスを直してくれるのはありがたいかも。
[0E]とか[02]で終わるやつに関しては全体を16バイト単位の長さにしていけば
バイナリ見ても見やすいし、[12]や[01]で飛ぶ箇所が直しやすいかな?とも考えたり。
CGはともかく「会う」のチェックリストなんかは、まず追加するする人数決めてからかからじゃないと、
リストをあっちこっち飛ばしなおさないといけないので実際の改造に着手するのはだいぶ先になりそうだ。
まずは立ち絵からだ。
301:名無しさん@お腹いっぱい。
08/12/20 00:12:11 sFo0KuVL
パッチ1.03きたな
302:名無しさん@お腹いっぱい。
08/12/20 11:37:00 k22Epo9r
>>301
main.sdとかのデータ長かわらない?
303:名無しさん@お腹いっぱい。
08/12/20 12:20:34 B6FdLM8n
png作ってもキャラ反映されんな…何のツールでpng作ってる?
304:名無しさん@お腹いっぱい。
08/12/20 12:43:46 k22Epo9r
>>303サムネのことかな
透過処理はしてるんよね、
あとは細かい指定が抜けているとかだね、ここのlog参考にしてちょ。
305:名無しさん@お腹いっぱい。
08/12/20 12:52:28 B6FdLM8n
>>304
㌧
ちなみに立ち絵
tigに変換しても反映しないからちと返還前のpngの設定がおかしいのかと思って
306:名無しさん@お腹いっぱい。
08/12/20 19:19:08 JxG6Dern
またかよeo光・・・
>>305
念のため、オリジナルのtigをpngにしてそれを弄ってからtigに戻してみては?
>>302
main.sdの全体は変わってるけど、[0x3FEC0]付近まであるCG部分は大丈夫みたい。
あとは[02]で飛ばすので問題ないかと。
メーカーもここまでをいじると[01]で問題が出るのでノータッチでいくでしょう。
307:名無しさん@お腹いっぱい。
08/12/20 19:34:50 k22Epo9r
>>306㌧
名前のバイト長だけでも引っかかったり色々するなあ
果てしない差があるけど先達を追いかけてぽちぽちやりまー
308:名無しさん@お腹いっぱい。
08/12/20 19:51:42 JxG6Dern
名前関係のリストは、ほぼすべて名前の文字列の1バイト前にある数字が、名前全体のバイト数になってるから
4文字だと08、5文字だと0Aとかってしないといけないよ。
俺もコピペして書き換えてやらかした。
309:名無しさん@お腹いっぱい。
08/12/20 22:15:08 JxG6Dern
とりあえず一通りの実験成功。
新規キャラ追加
立ち絵4種を新CHで追加・CG1枚追加・会うでシーン開始(追加CG表示)
めちゃくちゃ疲れるな。
310:名無しさん@お腹いっぱい。
08/12/21 12:40:35 b/3VE2m7
>>308
うぃ、気をつける。
武将データの空きスロットは大量にあるから、自作しようは色々あるね。
311:名無しさん@お腹いっぱい。
08/12/21 14:50:13 9gRctKf/
>>305
俺も起こったみたいだ。表示されない。
最初はフラグエリアも用意して完全追加でやってたが、うまくキャラを並べられないので、
フラグを借りて作り直してみた。
5人分、計20表情を追加して全表情を順番に表示するシーンを作ったんだが表示されないケースが出てきた。
TIGファイル自体は、リネームして他のキャラとして表示させたら、きちんと表示されたんで問題なし。
CHファイルの書式もあってる。
そこでCHファイルの表情を登録してない場所に注目してみたんだが、どうやらコレが問題らしい。
CHファイルを別のキャラのをコピーして書き換えたらうまくいった。
(ファイル名部分のみ書き換えて、表情部分はファイルが登録されてなくてもそのまま残した。)
ファイルも見ずに勘で言うが、main.swのnobunaga_A等の数値が固定されてる場所。
これ登録されてる表情数じゃないかとおもってる。
で、ここと比べてCHファイルにある表情数よりフラグの数値が多い場合に
なんらかのエラーがおきてるんじゃないかな?とね
312:名無しさん@お腹いっぱい。
08/12/21 16:47:52 SAOtcCzi
技量不足でタカさん入れらんなかった
すんません修行して来ます
313:名無しさん@お腹いっぱい。
08/12/22 14:20:18 v03qPlXy
daimyo21.bin だっけ。だいたい見当はつくが
314:313自己レス
08/12/22 16:37:28 v03qPlXy
>313
ゴバークす。すまん
315:名無しさん@お腹いっぱい。
08/12/23 23:12:09 BagwVobQ
『女に会う』可能な武将追加に関して>>260のアプローチをやってみたのだが、
全鯖規制くらって書けなかった(;´∀`)
一応出来たので報告(長いケド)
基本的なアプローチは>>260のまんま。正規の武将チェックリストに
自作のチェックリストを割り込ませる作戦&なるべく既存領域を改編しない方向で。
割り込ませるリストの構造自体は>>259
以下ver1.02無添加調べ
316:名無しさん@お腹いっぱい。
08/12/23 23:12:56 BagwVobQ
■■■調査フェイズ■■■
○『女に会う』からの処理の流れについて
id:0x7B home_meet_char(0xAE57A)
id:0x7C world_meet_char(0xAE702)
の2つが関連している。
home_meet_charとworld_meet_charはアドレス的に連続していて、
home_meet_charの末尾に処理終了に類する命令が配置されていないので、
home_meet_charに入った処理はそのままworld_meet_charの処理へと繋がっていく。
例外はあるかも知れないが『女に会う』要求はhome_meet_charに繋がっている。
317:名無しさん@お腹いっぱい。
08/12/23 23:13:35 BagwVobQ
○home_meet_charについて
(※あんまり本筋では無いのでちゃんと調べてはいない)
・構造自体は>>259で示した命令リストの連続になっている。
・基本的に超重要武将に類するキャラのチェックが行われている。
・上杉謙信では無く長尾景虎だったりするので序盤用かもしれない。
・武田勢がゴッソリ抜けていたりして何がしたいのかもうワケワカラン。
# 書いてて思ったんだけど、地元平定までかも知れんね
home_meet_charに関して今回の作戦で留意しなければならない点はただ一つ、
終端に命令終了関連の指示子が無いので、処理がそのままworld_meet_charに流れていくコト。
318:名無しさん@お腹いっぱい。
08/12/23 23:14:16 BagwVobQ
○world_meet_charについて
こちらは処理が大きく2つに分かれており、後半部分は>>259に示したリストが
存在武将の数だけ連続していて、武将名とシーンIDをリンクしている。
[前半部解析]
03 49 4C 00
=> 04 06 08 90 44 93 63 90 4D 92 B7 00 (織田信長)
=> 03 17 00 00 00
=> 01 01 00 00 00
=> 02 02 00 00 00
=> 12 49 4C 00 61 E7 0A 00 (女に会うリスト先頭)
69 49 4D 00
=> 44 03 00 00 (main.swnならIfGotoOnce008)
=> 01 9F 00 00 00 (nobunaga08_end)
=> 03 12 00 00 00 00 01 00 00 00 03 00 00 00 00
=> 04 02 01 70 00 (p)
=> 03 15 00 00 00 00 0A 00 00 00 02 02 00 00 00
=> 02 49 4D 00 87 00 00 00 (nobunaga09:0xD5C5C 他の女に会いに行くがどうこうの話)
319:名無しさん@お腹いっぱい。
08/12/23 23:14:59 BagwVobQ
超絶フランクに日本語訳すると、
『会うで選択した女が信長の場合はそのままリストチェックに行きなさい。
信長では無く尚且つnobunaga08が終了している場合、乱数チェックの後(ココはあやしい)
シーンnobunaga09を発生させなさい。』こんなトコだろう。
# 正直、織田ルートはシナリオ放棄して戦争ばっかしてたので、
# ゲーム中でこんなイベントが起きるかどうかはシラン(;´∀`)
# でも他の女に会うのにインタラプトかけるならココに命令配置するしか無い(ハズ
今回の作戦においてこの前半部で留意しなければならない点はただ一つ。
[12]タグによってアドレス0xAE761を直接指定してジャンプしている点。
ちなみに0xAE761はworld_meet_charの後半部の開始アドレスになっている。
320:名無しさん@お腹いっぱい。
08/12/23 23:15:36 BagwVobQ
■■■戦略フェイズ■■■
○現状処理シナリオ
正規home_meet_char
=[アドレス連続]=> 正規world_meet_char前半 (nobunaga09判定)
=[12ジャンプ]=> 正規world_meet_char後半 (武将チェックリスト)
○処理改編後シナリオ
新規home_meet_char (*1)
=[02ジャンプ]=> 新規world_meet_char前半 (*2)
=[12ジャンプ]=> オリジナル武将チェックリスト (*3)
=[12ジャンプ]> 正規world_meet_char後半 (武将チェックリスト)
321:名無しさん@お腹いっぱい。
08/12/23 23:16:10 BagwVobQ
[*1] 新規home_meet_charについて
正規の場合、終端に命令終了が入っていないので、正規のworld_meet_charへと
処理が流れていってしまうため、正規のhome_meet_char処理の後[02]タグを配置し
新規world_meet_charへと処理を強制移行させる。
これをhome_meet_charとmain.lb連結する。
[*2] 新規world_meet_charについて
まず前半部の[12]タグを処理する。このジャンプに関しては新規追加した
オリジナル武将チェックリストへとジャンプさせれば良い。
後半部の武将リストについては、オリジナル武将の命令リストを追加した後、
[12]タグで正規の武将チェックリスト(0xAE761)へ飛ばしてやる。
コレをworld_meet_charとmain.lb連結する。
322:名無しさん@お腹いっぱい。
08/12/23 23:17:04 BagwVobQ
■■■計略フェイズ■■■
結構メンドクサイので『女に会う』武将を追加する度にコレやるのはダルい。
なので、新規world_meet_charのオリジナル武将リストを予め30人分とか40人分とか
追加しておいて、武将を追加したら名前とシーンIDをペペッと書き換えて済ますための
あざとい知識をひけらかしておく。
・存在していない武将名でリストを作るとスクリプトエラーになる。
・存在している武将なら同じリストを何個作ってもエラーにはならない。
つまり『村人A』とかでリストを作っておくことは不可だが、
例えば『檜前蓮』のリストを20人分とか作っておいてもスクリプトエラーは起きない。
3文字 檜前蓮
4文字 杉田玄白
5文字 あたごタン
6文字 ROMちゃん
みたいな感じでそれぞれ10人分の計40人分ぐらいのリストを作っておけば、
新人ソープ嬢を入れた時のリスト関連作業は、名前文字数が同じヤツを一つ書き換えて、
シーンIDを誘導してやるだけになる。
323:名無しさん@お腹いっぱい。
08/12/23 23:19:33 BagwVobQ
■サンプルデータ&おまけツール DLKey:sghmod
URLリンク(apple.mokuren.ne.jp)
■ssとか
URLリンク(apple.mokuren.ne.jp)
# 超余談だが、何かサンプルデータ作ろうとしてfate hollowの方の立ち絵データ
# 展開してみたら、立ち絵だけで2700枚とかあってビビッた(; ・`д・´)
324:名無しさん@お腹いっぱい。
08/12/23 23:45:41 i3sic+nJ
>>315-323蝶乙!黒セイバーワロス
325:名無しさん@お腹いっぱい。
08/12/24 00:33:00 516QDYlT
>>322
お勤めご苦労さん。
なるほどいい手だ。これなら後からどんどん追加できそうだな。
俺のやってる手はworld_meet_charの最後を削って新リストにつなげる手だが、(新リスト先頭に削ったキャラ)
この手は「会う」以外ではシーンを発生させられないのが欠点だな。
でもランダム発生はちゃんと制御して無いと鬱陶しいだけだな。
こっちは会う回数に応じたシーンを作ってみたいと思ってるが、その前にCGだ。
今までの流れで一騎当千で攻めようと思ってる。
どうせならエロゲ化するか!とCGをへこへこ描いてるとこだ。画力が無いのでつらいよ。
立絵もほとんど書き直し。
■URLリンク(apple.mokuren.ne.jp)
326:名無しさん@お腹いっぱい。
08/12/24 00:37:39 516QDYlT
>>323
main_watcher すげー
これで計算機片手にやらないですむよホント。
327:名無しさん@お腹いっぱい。
08/12/25 15:26:14 GceRRofW
本ヌレのリンク、シナリオらい太氏のサイトに貼られたKyo1画の鍋島直茂公がステキやわ~
328:名無しさん@お腹いっぱい。
08/12/26 17:21:15 QZiuUHMt
>>327
らい太氏じゃなくてOじろー氏じゃね
329:名無しさん@お腹いっぱい。
08/12/26 17:25:34 a49CRrzL
>>328
シナリオライター氏って言いたかったんじゃね?
イベントエディタに凄く期待
330:名無しさん@お腹いっぱい。
08/12/27 14:38:57 pfRi3uf1
林檎ロダ見れない
331:名無しさん@お腹いっぱい。
08/12/28 09:05:33 Buh6zeyX
会う回数に応じたシーンを作ってて気がついた。
会った回数のフラグ検索リストのとこには以下のような命令が複数並んでる。
[66]0D 15 00 :調査場所の指定
=> 01 26 00 00 00 :main.sw(eri_feeling)
=> 03 12 00 00 00 00 :調査場所の指定終了
=> 02 00 00 00 :main.sw(eri_feeling)が「02」(会った回数=3回)
=> 02 02 00 00 00 :ならば
[02]0D 15 00 BF 01 00 00 :main.lb(meet_eri_02)に飛べ。
4行目だがフラグの数値が、フラグ調査リストに無い場合、検索値未満で最も大きい値の命令が選ばれるようだ。
つまり「eri_feeling = 03」の調査命令がリストに無い場合は、上の「02」の時の命令が有効になる。
よって、会った回数が順に増えていくリスト作ってる場合、リストの最後の命令は何回会おうと有効になる。のかな?
とりあえずmain.lbnにそれらしいシーン名を作っておいて、会った回数リスト作った時にmain.lbと連動させておくと
後はシーン作成時にイベントエディタでリストから簡単に連結できるので便利だな。
332:名無しさん@お腹いっぱい。
08/12/28 09:20:41 Buh6zeyX
バイト数的にはこうかな?
[66]0D 15 00 :調査場所の指定
=> 01 26 00 00 00 :[26]main.sw(eri_feeling)を、[01]調査
=> 03 12 00 00 00 :調査場所の指定終了
=> 00 02 00 00 00 :[00]main.swを単純検索?、eri_feelingが「02」(会った回数=3回)
=> 02 02 00 00 00 :真ならば
[02]0D 15 00 BF 01 00 00 :[BF01]main.lb(meet_eri_02)に飛べ。
333:名無しさん@お腹いっぱい。
08/12/28 16:05:45 O9iPkoJN
プレイ後半中に問題になる資金と武将
で解決策として
①資金無限or7桁に変更
②武将無限or4桁に変更
に改造できた人いる?
334:名無しさん@お腹いっぱい。
08/12/28 18:16:49 fsnlU34o
>>333
(2)は厳しい。
335:名無しさん@お腹いっぱい。
08/12/29 04:14:31 DrR+wIRY
>>324
黒セイバーのもきゅもきゅに反応する人がいたコトでオレの中の何かが満たされた(゚∀゚)
>>325
っつーかソレ自力で描いたのk?だとしたらSUGEE(;゚Д゚)
人生がヒマになったら上杉家の奇形児宇佐見を駆逐してくr
ちなみにmain_watcherってば小一時間で作ったワリにはSUGEEだろ~?
>>331-332
前に似たようなトコ調べたコトがあって、実際に何か試したりしてみたワケじゃ無いん
だけど、無責任に根拠の希薄な見解だけを垂れ流しておくね(゚∀゚)
結論から先に書くと、たぶん
03 12 => 『==』
03 13 => 『>』『<』『<=』のどれか
03 14 => 『>』『<』『<=』のどれか
03 15 => 『>=』
03 16 => 『>』『<』『<=』のどれか
03 17 => 『!=』
ってなっていて、例えば村上さん分岐では↓
336:名無しさん@お腹いっぱい。
08/12/29 04:15:03 DrR+wIRY
01 EF 05 00 79 03 00 00
09 EF 08 00
=> 20 00 00 00 00 (murakami-san_feeling)
=> 01 00 00 00
66 EF 0D 00
=> 01 20 00 00 00 (murakami-san_feeling)
=> 03 12 00 00 00 00 00 00 00 00 02 02 00 00 00
=> 02 EF 0D 00 97 01 00 00 (murakamisan01)
66 EF 11 00
=> 01 20 00 00 00 (murakami-san_feeling)
=> 03 12 00 00 00 00 01 00 00 00 02 02 00 00 00
=> 02 EF 11 00 98 01 00 00 (meet_murakamisan_00)
66 EF 15 00
=> 01 20 00 00 00 (murakami-san_feeling)
=> 03 12 00 00 00 00 02 00 00 00 02 02 00 00 00
=> 02 EF 15 00 99 01 00 00 (meet_murakamisan_01)
66 EF 19 00
=> 01 20 00 00 00 (murakami-san_feeling)
=> 03 12 00 00 00 00 03 00 00 00 02 02 00 00 00
=> 02 EF 19 00 9A 01 00 00 (meet_murakamisan_02)
66 EF 1D 00
=> 01 20 00 00 00 (murakmi-san_feeling)
=> 03 12 00 00 00 00 04 00 00 00 02 02 00 00 00
=> 02 EF 1D 00 9B 01 00 00 (murakamisan02)
66 EF 21 00
=> 01 20 00 00 00 (murakmi-san_feeling)
=> 03 12 00 00 00 00 05 00 00 00 02 02 00 00 00
=> 02 EF 21 00 9C 01 00 00 (meet_murakamisan_03)
66 EF 25 00
=> 01 20 00 00 00 (murakmi-san_feeling)
=> 03 12 00 00 00 00 06 00 00 00 02 02 00 00 00
=> 02 EF 25 00 9D 01 00 00 (murakamisan03)
66 EF 29 00
=> 01 20 00 00 00 (murakmi-san_feeling)
=> 03 15 00 00 00 00 07 00 00 00 02 02 00 00 00
=> 02 EF 29 00 9E 01 00 00 (meet_murakamisan_04)
条件を満たさなければ『またお会いしましたね』でmeet_end
337:名無しさん@お腹いっぱい。
08/12/29 04:15:53 DrR+wIRY
みたいな感じになっている。
注目すべきは66タグのdata block 2行目の
『03 12 00 00 00』と『02 02 00 00 00』に挟まれてる数値が順に大きく
なって行っている点と、最後の判定が0312から0315になってる点。
0315のトコは『if( murakami-san_feeling >= 7 )』な感じだろーと。
で、条件を満たさないものはこの分岐から下に流れて行って
流れた先には『またお会いしましたね』シーンがベタ書きされている。
未定義動作としてデフォルトシーンみたいなのへの推移が画一的に定義されて
いるかどうかはワカンネ(;・∀・) (>>331の真ん中あたり)
338:名無しさん@お腹いっぱい。
08/12/29 11:29:32 sGuz9AZJ
>>335 の03xxの発想が頭に無かったので、なるほど!と思い早速試してみた。
「前提」
会うで発生するシーンを二つ作った。フラグは間借りせず適当な位置に用意。
フラグの基本値はFFFFFFFFではなく00000000にしてるので、会話1回目の時、フラグは[01]になる。
回数のとこだけ抜き出すと。
=> 03 12 00 00 00 00"01"00 00 00 02 02 00 00 00 会話1回目(シーン[01])
=> 03 12 00 00 00 00"02"00 00 00 02 02 00 00 00 会話2回目(シーン[02])
この順で作ったやつと。
逆に
=> 03 12 00 00 00 00"02"00 00 00 02 02 00 00 00 会話2回目(シーン[02])
=> 03 12 00 00 00 00"01"00 00 00 02 02 00 00 00 会話1回目(シーン[01])
この順で作ったやつの2種類で試してみた.
「結果」
どちらも1回目の会話時はシーン[01]が発生して、2回目の時はシーン[02]が発生した。
んで本題、3回目以降の会話時は、
上のリストではシーン[02]が発生し、下のリストではシーン[01]が発生した。
しかし、下のリストのシーン[02]の[0312]を[0315]に変えたら3回目の会話以降もシーン[02]が発生した。
「結論」
>>335 の説は[0312]と[0315]しか試してないが当たってるね。(確認不足だが多分[0317]も合ってる)
フラグの数値が、リストで設定されてない場合はリストの最後の処理を反復しているのかもね。
「おまけ」
あと、立ち絵だが、一から書いてるのではなく、
素材が小さかったので拡大して輪郭直して色塗りなおして、足りない部分を書き足して
とまあこんな作業をしてるのだわ。スキャナもタブレットも無いしな!
339:名無しさん@お腹いっぱい。
08/12/29 21:23:38 DrR+wIRY
>>338
もう試したのかッ!仕事HAEE(;゚Д゚)
何となくだけど66タグってswitch-case文みたくなってて、
最後のエントリだけはdefaultも兼ねてるのかもねぇ。
まぁ新規に書く場合は0315で閉じちゃった方がイイとは思うケド(゚∀゚)
meet繋がりで関係あるよーな無いよーなアレだけど、たとえばランダム半蔵。
01 DF 05 00 79 03 00 00
09 DF 08 00
=> 1B 00 00 00 00 01 00 00 00 (hanzou_feeling)
01 DF 0C 00 13 38 01 00
69 DF 0D 00
=> 6D 03 00 00 (main.swnならIfGotoOnce049)
=> 01 37 00 00 00 (temp01)
=> 03 12 00 00 00 00 01 00 00 00 02 02 00 00 00
=> 02 DF 0D 00 86 01 00 00 (hanzou01)
69 DF 11 00
=> 6E 03 00 00 (main.swならIfGotoOnce050)
=> 01 4D 00 00 00 (hanzou01_end)
=> 03 12 00 00 00 00 01 00 00 00 02 02 00 00 00
=> 02 DF 11 00 87 01 00 00 (hanzou02)
02 DF 15 00 88 01 00 00 (meet_hanzou_00 0x21E734 『ニンッ』て言うだけの場面)
340:名無しさん@お腹いっぱい。
08/12/29 21:24:09 DrR+wIRY
キチンと読めてるワケでは無いのだけど、何となく69タグがランダム系の処理に使うもので、
直後のdata blockがmain.swと連動していると仮定すると、IfGotoOnce系のモノはフラグ
というか乱数に使われているもかも知れないね。(>>284の調査と内容かぶってるな)
もしそうならば、考えられるシナリオとして大雑把に2パターンあって、
(1)ターン開始時などの切れ目に乱数が再設定されIfGotoOnceに置かれる
(2)69タグが叩かれた時にランダムが振られて指定先のIfGotoOnceに値が入る
半蔵の流れを見るとIfGotoOnceの049と050の2つを使っていて、(2)のシナリオの
場合、毎度振られるランダムを2つ別個に処理するのはセンスねーなー、と。
なんで、多分(1)が濃厚な気がしてくる。
この辺は>>325のランダムイベントネタあたりと絡んで来る内容かも知れんね(; ・`д・´)
ターン開始時の処理とか戦闘後の処理とかがmain.lbのドコと結合しているかさえ
分かってしまえば、>>315からの手法同様にfakeして好き勝手書きまくったら
ランダムイベント満載な戦極姫が出来そうだ(゚∀゚)
# 半蔵バリのランダムさで事実上全く発生しない可能性も否定できないg
341:名無しさん@お腹いっぱい。
08/12/29 21:33:31 DrR+wIRY
タグの話とはちょっとズレるけど音ネタ。
○BGMに関して、oggヘッダの前についてるVOIヘッダは同一
○SEに関して、oggヘッダの前についてるVOIヘッダは同一
○VOICEに関して、oggヘッダの前についてるVOIヘッダはキャラ毎に同一
全ファイルをバイト単位でチェックしたワケじゃないけど多分↑で合ってる。
で、ヘッダの中身を解析せずとも、例えばBGMのVOIファイルからVOIヘッダを切り出して
その辺のoggファイルのアタマにペペッとくっつけるとゲーム中で再生できちゃう。
というかできちゃった(゚∀゚)
342:名無しさん@お腹いっぱい。
08/12/30 02:07:34 V1lwHEFw
ちょっくら調べてみた。
「IfGotoOnce」なんだけど、いろんな行動しても数値は変わらず[00]のまま、
半蔵の正体を見るシーンが発生したときに「IfGotoOnce049」には[01]が入力されていたが、シーン終了後も[01]のまま。
半蔵のエロシーンのときは「IfGotoOnce050」が[01]になった。同じくシーンが終わっても[01]のまま。
「IfGotoOnce050」は[00]に戻したらまたエロシーンがはじまった。
なんかこの「IfGotoOnce」は普通の終了済フラグと同じ感じなんだ。
んで、ランダムシーンに絡むとすると「temp01」~「temp03」が怪しい。
「temp01」は半蔵などと会話してると極まれにに[01]になるし、「temp02」は[00]~[64]くらいの間でランダムに変化してる。
[66]タグでフラグ調査してる他のキャラに会っても、「temp01」と「temp02」は変化してないので、[69]タグが使われた時に変化しているのかな?
と思い、[69]を使ってリストを作り直してみたが、「temp01」も「temp02」も数値の変動が無かった。
なにが原因で「temp01」等の数値が変動するのか解らないが、この乱数の変動を起こせるようになると、
まれに発生させたいシーンの場合、「temp01」が[01]となっているのを条件にすればいいし、
[0315]を使った場合は、「temp02」が[32]を条件にすると50%の確率、[0A]を条件にすると90%とか、発生頻度をコントロールできそうなんだがな。
調べてる途中、夜になって凶暴化したうちのヌコが俺の足と格闘してて痛ぇ
343:名無しさん@お腹いっぱい。
08/12/30 22:10:09 dQnQt313
なるほどコレはイイ調査(; ・`д・´)
temp01~temp03か。
現状、例えば>>338を
temp02参照にして0315の32で分岐を取ると発動率50%とかはできちゃう。
でもtemp02の数値変化のさせかたがワカラナイから、発動率50%に設定した
シーンは全部発生しちゃうもしくは全部発生しない。とかそんな感じかな?
とりあえず調査おちかれ(゚∀゚)!
# ウチのヌコはもうトシなんで格闘する元気もナス(゚∀゚)
344:名無しさん@お腹いっぱい。
08/12/31 01:04:17 XJGzg1Ix
ランダム発生でけた!
>>339 でいうと4行目の
01 DF 0C 00 13 38 01 00
これが入ってると、「temp01」と「temp02」が変動した。
続いて[66]タグを利用して
66 FE 66 00 (temp02が32以上で)
=> 01 38 00 00 00
=> 03 15 00 00 00
=> 00 32 00 00 00
=> 02 02 00 00 00
02 FE 67 00 (新シーンへ移動)
=> 3F 02 00 00
がちゃんと動いた。
0x013813の解析はしてないが、ここが「temp01」と「temp02」に数値を入れる命令らしい。
345:名無しさん@お腹いっぱい。
08/12/31 01:24:25 Tvpsd+9F
>>344
おおおSUGEEE(゚∀゚)!
そうか01タグは画像系だと先入観で凝り固まっていたよ。
画像系に多用されるってだけでinclude命令だもんね。
人間タグパーサーヨクヤッタ(゚∀゚)!
346:名無しさん@お腹いっぱい。
08/12/31 01:29:50 XJGzg1Ix
>>345
追加だ。0x013813を調べてみた。
[0C] 06 07 00
=> 38 00 00 00
=> 00 64 00 00 00
(temp02に[00~64]までをランダム入力する命令かな)
[03] 01 38 00 00 00
=> 03 14 00 00 00
=> 00 05 00 00 00
=> 02 02 00 00 00
[12] 06 08 00
=> 55 38 01 00
(temp02が05以上?なら0x013855へ「※1」)
[08] 06 09 00
=> 37 00 00 00
=> 00 01 00 00 00
[12] 06 0A 00
=> 62 38 01 00
(temp02が上記以外ならtemp01に01を入力し0x013862へ「※2」)
[08] 06 0B 00 (0x013855「※1」)
=> 37 00 00 00
=> 00 00 00 00 00
(temp02が05以上?ならtemp01に00を入力)
[0E] 06 0E 00 (0x013862「※2」)
(終わり)
これみると乱数はあくまで「temp02」だけで、その数値によって「temp01」を変化させるというめんどくさい作業してるな。
乱数を発生させるだけなら、最初の3行を「会う」リストに追加するだけで、「temp02」は変化するみたい。