続 triggerで直死

  • CATEGORYmugen記述
  • PUBLISHED ON2018/ 06/ 19/ 22:00
  • COMMENT0
http://samsara01.blog.fc2.com/blog-entry-22004.html
大体言いたいことはオキ氏が言ってるけど、私の方でも説明しとくとvar(60)やfvar(40)の発展型ですね
アレって()内で指定した数値をチェックする処理が間違ってるのが原因なんですけど、そもそもチェック処理自体を消せばvar(100)やらvar(-100)やらを指定できるようになる

なので
[state ]
type=null
trigger1=var(-7):=0
とすると自分のaliveに0が書き込まれる

欠点としては、自分のvar(0)を基準にしか見れないことだけど、上手く引数に渡す値を調整してやれば一応任意のアドレスも見れる
もっと言うと0x407E8Eをmov [ebx],ediに置き換えれば引数に渡した値をそのままアドレスと見なせる
そこまでやると普通の用途には使いづらいけどね

続きで実現方法について雑に解説

<追記>
任意アドレス見るならdrab氏が言ってる奴の方がいいね
http://drabs.blog40.fc2.com/blog-entry-1670.html

コードまとめ更新

  • CATEGORYmugen
  • PUBLISHED ON2018/ 06/ 19/ 00:42
  • COMMENT0
ってことで変数で色々やる用のコードを追加
暇がある時に解説しますね

triggerで直死

  • CATEGORYmugen記述
  • PUBLISHED ON2018/ 06/ 17/ 11:09
  • COMMENT0
http://drabs.blog40.fc2.com/blog-entry-1667.html
http://melon-eat-pierrot.seesaa.net/article/460033522.html
そこまで考えが至らなかったけど、そういや可能ですねこれ

http://drabs.blog40.fc2.com/blog-entry-1456.html
で、前デバッガでこの辺りのコード書き換えて遊んでたのを思い出した

20180617013646.png
ってことでtriggerで直死ができました
もう全部これでいいや


<追記>
var:=
0x407E81:TEST EBX,EBX
0x407E83:JL SHORT 00407EA0
0x407E85:CMP EBX,3C
0x407E88:JG SHORT 00407EA0
0x407E8A:MOV EDX,DWORD PTR SS:[ESP+4C]
0x407E8E:MOV DWORD PTR DS:[EBX*4+EDX+0E40],EDI

favr:=
0x407F86:EST EBX,EBX
0x407F88:JL SHORT 00407FA9
0x407F8A:CMP EBX,28
0x407F8D:JG SHORT 00407FA9
0x407F8F:FLD DWORD PTR SS:[ESP+10]
0x407F93:MOV EAX,DWORD PTR SS:[ESP+4C]
0x407F97:FSTP DWORD PTR DS:[EBX*4+EAX+0F30]

var
0x47B7DF:TEST EAX,EAX
0x47B7E1:JL SHORT 0047B7F8
0x47B7E3:CMP EAX,3B
0x47B7E6:JG SHORT 0047B7F8
0x47B7E8:MOV EDX,DWORD PTR DS:[EAX*4+ESI+0E40]

fvar
0x47B842:TEST EDX,EDX
0x47B844:JL SHORT 0047B85B
0x47B846:CMP EDX,27
0x47B849:JG SHORT 0047B85B
0x47B84B:FLD DWORD PTR DS:[EDX*4+ESI+0F30]

ここ弄っとけば単純な参照、代入は変数で可能っぽい

DBOAメモ

  • CATEGORYmugen記述
  • PUBLISHED ON2018/ 06/ 16/ 13:43
  • COMMENT3
いい加減覚えるかーってことで改めて調べてたら理解した
参考になりそうな記事が見つからなかったんで実行手順をメモっとく
ついでに意味もなく解析手順も書いとく

Warframe

  • CATEGORYWarframe
  • PUBLISHED ON2018/ 06/ 15/ 23:10
  • COMMENT0
20180615230438.jpg
待ちに待ったUmbra実装!
性能はカリプラより上だし、アビリティのモーションが変わってたりで面白い
同時実装されたMODの扱いが結構悩ましいね

てぃ

  • CATEGORYmugen
  • PUBLISHED ON2018/ 06/ 14/ 01:30
  • COMMENT2
ざっとヘカーテ眺めた
ツイで某氏も言ってたけどK_NaCa氏コード組むの上手いね
これdrab氏レベルの知識ある人なんじゃ…

で、軽く眺めた程度じゃさっぱりわからん程度には結構複雑なコード組んでた
もっと時間かけないと自分の技量じゃ無理っすわ
時間かけても理解できるか怪しいけど

ルルイエも見てみたがDTC見るかぎりはそんな大層なことやってるようには見えんのよね
いまいち意図がわからん%f call書き換えしてたり怪しい部分はあるもののDBOAでなんかやってんのかねー
DBOA未習得なんで今の自分じゃちょっと厳しい
手元のは2016/2/11最終更新のだけど最新じゃないんだろうか

ってことでのんびりやっていきます…

TW-Koakuma 更新

  • CATEGORYmugen
  • PUBLISHED ON2018/ 06/ 08/ 01:00
  • COMMENT0
未完成だから動画出すな転載すんなっつってんのに外人にガン無視されて草
まあ日本語で書いてるからしょうがないのかもしれんけどさー
ちゃんと説明書も同梱してるんだから翻訳なりなんなりして読んでほしいよね

ってことで転載されてしまったので正式公開しときます
どうせ無視されるから無駄だろうけど転載、動画、改変は控えていただけるとありがたいです

Warframe

  • CATEGORYWarframe
  • PUBLISHED ON2018/ 06/ 03/ 01:57
  • COMMENT0
20180603014833.jpg
20180603014841.jpg
20180603014819.jpg
ってことでZAW作った
範囲MSor速度辺りの、MOD1枚浮かせられる奴を狙いたいね
リワークで無駄になる可能性が高いってのは置いといて

多重混線

  • CATEGORYmugen
  • PUBLISHED ON2018/ 06/ 01/ 22:56
  • COMMENT0
しばらく前に多重混線なんて使わねぇって言ったけど、捏造勢なら並列より多重の方がいい気がする
適当な個数プレイヤーアドレス保存しといてリダイレクト参照先を切り替えればいいだけだし

ってか小悪魔に乗せることを考えるとヘルパー数削減せざるを得ない
演出でヘルパー大量に使ってるから完全並列混線との相性がゴミなんだよね

Sayori更新

  • CATEGORYmugen
  • PUBLISHED ON2018/ 05/ 26/ 13:02
  • COMMENT0
Dropboxに移すついでにcns整理した
性能は一切変わってないんで更新しなくてもOKです

Warframe

  • CATEGORYWarframe
  • PUBLISHED ON2018/ 05/ 26/ 12:48
  • COMMENT0
20180526124353.jpg
やることもなくなってきたしHEMAのriven回してた
回すのも若干飽きてきたので適当に妥協

20180526124432.jpg
そうこうしてたらポールアームZAWのriven引けたんですよねー
コイツも回したいところだけど近接リワーク控えてるから躊躇するなぁ

ini

  • CATEGORYmugen
  • PUBLISHED ON2018/ 05/ 18/ 00:48
  • COMMENT0
変なところで詰まってて無駄に時間かかったけど、なんとかiniファイルから値拾ってこれた
ってことで無事オプションをcns外部へ出すことに成功!
これの何がいいかって言うとメモ帳やらFFやらだろうがコード壊さずにオプション弄ってもらえることかな?
逆に言えばそれぐらいしか利点ないんでネタ以外の何物でもないんですけどね…

続 DLL

  • CATEGORYmugen記述
  • PUBLISHED ON2018/ 05/ 13/ 02:01
  • COMMENT0
前少し触って放置してたDLLを暇つぶしに弄ってた
大体どうすればいいかは理解したからメモっとく

[[[0x4B5B4C]+0xCD0]+0x40C]:defが存在するフォルダのパス(1p)
[[[0x4B5B4C]+0xCD0]+0x123C]:defが存在するフォルダのパス(2p)

調べてないから入ってるパスがdefのパスなのかは知らんけど、少なくともパスが入ってることは確か
ひとまず実行対象のdllのパスはコイツを基準にすればよさそうだね
LoadLibraryの呼び方はdrab氏がブログで書いてる通り、dllパス格納位置の先頭アドレスをpushしてcall [0x49F12C]するだけ

アマリリス組

  • CATEGORY未分類
  • PUBLISHED ON2018/ 05/ 07/ 19:57
  • COMMENT0
https://project-amaryllis.com/
最近見てるけど面白いね
ちゃんとしたVTuberにハマるのは何気に初めてかな
箱推ししてるけど特に押してるのは由持姉妹由持もにちゃん!
ツイッターでは勇ましい割に配信では大人しいところとか、自己評価低いところが可愛いんですよね…

CELESS

  • CATEGORYmugen
  • PUBLISHED ON2018/ 05/ 07/ 00:07
  • COMMENT0
20180507000436.png
去年ぐらいに気分転換で改変してたのを引っ張り出して作り直し中
公開は…気が向いたら某所に投げる感じかねぇ

Warframe

  • CATEGORYWarframe
  • PUBLISHED ON2018/ 04/ 14/ 01:35
  • COMMENT0
20180414012654.jpg
疫病の星、NOVAとSARPA使い始めてからヘモサイトの撃破速度が上がって楽になったわ
PYRANAも強いらしいけどフォーマ差し終わってないからCORINTHで代用してるけど十分強いね
最低限欲しいものは集め終わったし後は適当に鉱石とフォーマ取っておこうかな

コードまとめ更新

  • CATEGORYmugen
  • PUBLISHED ON2018/ 04/ 11/ 00:53
  • COMMENT0
昨日言ってたステ返しのコード組んだので追加

強制ステ返し

  • CATEGORYmugen記述
  • PUBLISHED ON2018/ 04/ 10/ 00:00
  • COMMENT0
stateno弄れば次の行動時に自動でステ移動されるのは知ってたけど、相手のステート読んでる最中だと相手のステート間を移動するっていうchangestateの挙動取るよね
それだと困る場合もあるんで強制的にselfstateする方法を調べてた

0x46e98a周辺で必要そうなコード
mov dword ptr ds:[edi+0xbec],edx
mov dword ptr ds:[edi+0xbf0],-1
mov eax,dword ptr ds:[edi]
add eax,0x3b4
mov dword ptr ds:[edi+0x964],eax
mov dword ptr ds:[edi+0x13c0],edx
mov ecx,dword ptr ds:[edi]
mov edx,dword ptr ds:[edi+0x13bc]
mov eax,dword ptr ds:[ecx+0x3cc]
mov dword ptr ds:[edx],eax

0x440ba9周辺で必要そうなコード
mov eax,dword ptr ds:[esi+0xbf4]
mov dword ptr ds:[esi+0xbf4],edi
mov dword ptr ds:[esi+0xbf8],eax
mov dword ptr ds:[esi+0xdfc],0

まとめるとこう
[アドレス+0xbec]:0
[アドレス+0xbf0]:-1
[アドレス+0x13c0]:0
[アドレス+0x964]:[アドレス]+0x3b4
[[アドレス+0x13bc]]:[[アドレス]+0x3cc]
[アドレス+0xbf4]:返す先のステート番号
[アドレス+0xbf8]:現在のステート番号
[アドレス+0xdfc]:0

上記のアドレスを汎用コードで弄ってみて問題なくステート返せることは確認できた
0x440ba9周辺のはstatenoとtimeだから必要ないんなら弄らんでもOKかな
どっか弄り忘れててステート返した後にバグるかもしれんけど、簡単に動かした限り問題なさそう

ってことで前から考えてた「相手ヘルパーに極力干渉しない混線」を本格的に作ろうかなぁと
あんま神キャラ作るの好きじゃないんで、どこまでモチベ維持できるかの勝負になりそうだが

<追記>
盛大にコピーミスってて色々抜けてたのを修正

コードまとめ更新

  • CATEGORYmugen
  • PUBLISHED ON2018/ 04/ 05/ 22:22
  • COMMENT0
別に特定の誰かのことを言ってるわけじゃないけど、原理ぐらい理解してから本格運用するべきじゃないですかねー
自分の場合はそうしてるってだけの話ですが
割とどうでもいいけどね