制作日記

こういうの作った方が、逃げにくいじゃない

榛名改二

kankore20140728.png
ええやん
さすが嫁


近代化改修は5隻ずつ確保してた加賀と扶桑で最大まで行けた

装備は悩みどころ
運が60ほどあるから、旗艦にするのは当然として、カットイン考慮していいかも
その場合は、35.6cm*3、もしくは一個46cmに差し替えるか
連撃仕様だと、46cm、徹甲、零観、あと1つはどうしたものか

今回のアプデは良いんじゃないかしら
主砲だって、ダズル迷彩やら種類増やして差別化図ろうとしてるし

主砲の選択肢が46cm以外なかった今迄が異常だと思う
あとは、主砲の種類と入手方法が増えてくれたら文句ないよ

シャーリー 2巻

http://www.enterbrain.co.jp/schedule/index.html
9月13日

10年待ったで
実際には待ちきれなくてペーパーバック版も買ったけどね

掲載が稀にでも連載が続いてるのなら、いくらでも待てる
休載で音沙汰なしよりは救いがある

富樫みたいにその内再開するのが分かりきってるなら、何年でも待てるけども
打ち切りとか雑誌が終了とかは絶望的
webコミック配信とかほんとどうすんだよ

彩陵高校超能力部とか恵まれてたんだろうな
当時はまだwebコミック配信が少なかったから、受け入れ先があっただけなのかもしれんけど

擬似乱数の生成式

大分前に記事にしてるんだけどなー

ちなみに、操作の話だけど、
4B4BE0を適当な小さな値に書き換えて、
それで落ちなければ、一発目の種が1になる

起動時にtlAlloc()を叩いてて、戻り値のtlsIndexを4B4BE0に保存してる
このtlsIndexでtlsGetValu()とかtlsSetValue()を呼び出してる

で、tlsGetvalue()でnullが帰ってきたら、領域確保してtlsSetValue()叩く
このとき、種の位置、オフセット+0x14が1に初期化されてる
アドレス的には0x004988ACからの処理

まー、そもそもtlsAlloc()とかってなんやねんって話で、
TLS、スレッドローカルストレージ
スレッドごとに値を保存する用の領域やね

tlsAlloc()で確保してindexを取得
そのindexを元に値を設定したり、取得したりするわけ

今現在の種はそこに記録されてるから、
キャラから、そのスレッド毎の値を管理してるとこにアクセスする必要があるわけだ
まー、出来ないわけではないけど、環境依存せずにってなると、コードからやりたいね

最初に書いた4B4BE0変えるってのは、allocしてないindex触りに行くってこと
まー、どうなるかわからんね

setが成功してるのが怖い
windowsはあんまり知らんから何とも言えんけど、
デフォである程度確保してるとかかねー

実験で色々やるだけなら、直でバイナリとか書き換えれば済む話だけどね

random値の推測と操作

推測は可能

MUGEN起動時に種がtime()で初期化されるけど、
この初期化に使った値が[4B5B4C]+B414に保存されてる

よって、それを辿ればどうにかなる可能性がある
randomの大元の擬似乱数の周期が2^32、randomで取れるのは0~999
10回ぐらい連続で一致すれば、間違いなさそう?

問題点として、起動時に初期化だから、
2試合目以降とかだと、推定に時間がかかるかも
誰かに書き換えられてたりすると、絶望的

乱数に周期がある以上、別に適当にやってもいつかは当たる
それをどうにかして早く見つけられないかなって程度の話にしかならない

で、操作
出来るとは言い難いけど、無理とは言わない
やること的に普通のキャラに積むようなものじゃないかな
同じ理由で、今現在の種を知るのも難しい

かんのん

スレに出てる奴ね

改竄してるリターンアドレス的に、やってることはあれ
名前忘れたけど、スタック改竄して既存のアセンブラコードを上手いこと通るようにする手法

statedefで死ぬときってcns(多分1ファイル全部)がヒープに読み込まれてて、
そこらへんのアドレスがスタックなり、レジスタなりに保存されてる

良い感じのとこに無理やりリターンさせることで、
スタックなりレジスタなりに記録されてる、上記ヒープのアドレスに飛ぶようにしてる

あとはcnsがそのままアセンブラコードとして実行されて終わり

こっちは安定するんじゃね?
起動してないから知らんけど

プロフィール

Author:drab
霊夢改変キャラ
「12 3 ! {V} [_]」
公開中
L霊夢でもl_reimuでも好きなように読んでください

最新記事
最新コメント
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク