2011年8月30日火曜日

回復オート君改良版

自動でHPとSPを回復します。
他のキャラクターに干渉されにくくなりました。

00A87000-8B042485C08B44240C7406890D5C6FA800890D586FA800A3006FA80056E9861EA2FF
004A8EA3-E958E15D00
00A87022-813D006FA800F4010000734AA1586FA8003B055C6FA800753D520F31A3186FA80089151C6FA8008B151B6FA8008BC22B05086FA80083F802721B8915086FA8006AFF6A036A0068F5BA04006A00E8CCF8D9FF83C4145AC20400
004A8EE2-E93BE15D00
00A87080-8B042485C08B44240C7406890D5C6FA800890D586FA800A3046FA80056E9061FA2FF
004A8FA3-E9D8E05D00
00A870A2-813D046FA80023000000734AA1586FA8003B055C6FA800753D520F31A3186FA80089151C6FA8008B151B6FA8008BC22B050C6FA80083F840721B89150C6FA8006AFF6A036A006805E204006A00E84CF8D9FF83C4145AC20400
004A8FE2-E9BBE05D00

以上のコードを、コピペなどして実行すれば使えます。
初期値では、HPが500未満になるとリカバリンLを、SPが35未満になるとスキルゲンLを、自動で使うようになっています。
上半分にある緑色のコードだけを使うとHP回復だけが自動になり、下半分にある青色のコードだけを使うとSP回復だけが自動になります。


[HP回復薬]
00A87069-F7BA04 リカバリン MAX(HP 9999)
00A87069-F6BA04 リカバリン GT(HP 5000)
00A87069-F5BA04 リカバリン L(HP 2000) 初期値
00A87069-F4BA04 リカバリン M(HP 1000)
00A87069-F3BA04 リカバリン S(HP 500)
00A87069-F2BA04 リカバリン SS(HP 200)
00A87069-170905 カイザー液 MAX(9999)
00A87069-160905 カイザー液 GT(5000)
00A87069-150905 カイザー液 L(2000)
00A87069-140905 カイザー液 M(1000)
00A87069-130905 カイザー液 S(500)
00A87069-120905 カイザー液 SS(200)

[SP回復薬]
00A870E9-07E204 スキルゲン MAX(SP 9999)
00A870E9-06E204 スキルゲン GT(SP 5000)
00A870E9-05E204 スキルゲン L(SP 2000) 初期値
00A870E9-04E204 スキルゲン M(SP 1000)
00A870E9-03E204 スキルゲン S(SP 500)
00A870E9-02E204 スキルゲン SS(SP 200)
00A870E9-170905 カイザー液 MAX(9999)
00A870E9-160905 カイザー液 GT(5000)
00A870E9-150905 カイザー液 L(2000)
00A870E9-140905 カイザー液 M(1000)
00A870E9-130905 カイザー液 S(500)
00A870E9-120905 カイザー液 SS(200)

[HP回復値]
00A87028-xxxx 回復させたいHPの数値を、4桁の16進数にして、前2桁と後2桁を交換して、xxxxに入れます。
00A87028-F401 ( HP 500 を割ったら回復 ) 初期値
00A87028-E803 ( HP 1000 を割ったら回復 )
00A87028-DC05 ( HP 1500 を割ったら回復 )
00A87028-D007 ( HP 2000 を割ったら回復 )
00A87028-C409 ( HP 2500 を割ったら回復 )
00A87028-B80B ( HP 3000 を割ったら回復 )
00A87028-AC0D ( HP 3500 を割ったら回復 )
00A87028-A00F ( HP 4000 を割ったら回復 )
00A87028-8813 ( HP 5000 を割ったら回復 )
00A87028-7C15 ( HP 5500 を割ったら回復 )
00A87028-7017 ( HP 6000 を割ったら回復 )

[SP回復値]
00A870A8-xxxx 回復させたいSPの数値を、4桁の16進数にして、前2桁と後2桁を交換して、xxxxに入れます。
00A870A8-1900 ( SP 25 を割ったら回復 気合撃 と ミダレンダ )
00A870A8-1E00 ( SP 30 を割ったら回復 ブンドール )
00A870A8-2300 ( SP 35 を割ったら回復 魔法LV1 と ミダレッパ と 超・気合撃 ) 初期値
00A870A8-2D00 ( SP 45 を割ったら回復 真・気合撃 )
00A870A8-3200 ( SP 50 を割ったら回復 ゴーダッツ )
00A870A8-4100 ( SP 65 を割ったら回復 魔法LV2 と ワイドン )
00A870A8-7800 ( SP 120 を割ったら回復 ワイドバーン )
00A870A8-C800 ( SP 200 を割ったら回復 キルン )
00A870A8-9001 ( SP 400 を割ったら回復 ワンキルン )

[自動回復の停止]
004A8EE2-C20400
004A8EA3-8B44240C56
004A8FE2-C20400
004A8FA3-8B44240C56
上2行が自動HP回復の停止。下2行が自動SP回復の停止です

12 件のコメント:

  1. 修正版ありがとうございます。
    ですが、やはりEXバッグの使用期限は切れてしまいます。
    そういうものだ…と諦めて使わせていただきますね。
    ありがとうございました。

    返信削除
  2. 再起動して使用期限は元に戻りませんか?
    こちらでは、回復オート君、スキルオート、どちらを使っても何の問題も起きませんでした。

    返信削除
  3. すみません、言葉足らずだったようです。
    画面表示上の「EXバッグ使用期限」は、ちゃんとした表示になっていますが、
    (私の場合、先日30日分を購入したので、9/29 01:10)
    EXバッグ内にアイテムを放り込もうとすると、
    「EXバッグの使用期限が切れています」
    とメッセージ表示され、アイテム移動できない、
    という現象です。
    ゲームの再起動をすると再度使用できるのですが、
    SPオートを発動させるとダメになってしまいます。

    返信削除
  4. コメントありがとうございます。
    そうですね、変なメッセージが表示されますね。適当に使ってください。
    一応、変なメッセージが表示されてもアイテムが移動できる場合もあるようですし、でなければ星選択画面まで戻ると直るようなので、適当に使っていじってみて下さい。

    返信削除
  5. 005C636C - 8978 48 8B0B -> E8 8F0C4C00
    00A87000 -> 89 3D 00 6F A8 00 89 78 48 8B 0B C3
    004A8EE2 - C2 0400 CCCC -> E9 25E15D00
    004A8FE2 - C2 0400 CCCC -> E9 35E05D00
    00A8700C -> 66 B8 F4 01 68 F2 BA 04 00 68 C8 00 00 00 EB 0E 66 B8 23 00 68 05 E2 04 00 68 F4 01 00 00 3B 2D
    00 6F A8 00 75 34 66 39 44 24 0C 7F 2D FF 15 C4 19 91 00 8B D0 2B 05 04 6F A8 00 3B 04 24 72 1A
    89 15 04 6F A8 00 6A FF 6A 03 6A 00 FF 74 24 10 6A 00 E8 DD F8 D9 FF 83 C4 14 58 58 C2 04 00

    回復HP,SP
    00A8700E,00A8701E
    ITEMHP,SP
    00A87011,00A87021
    間隔HP,SP
    00A87016,00A87026

    ちょっと改造してみました^_^

    返信削除
  6. 005C636C-・・・のコードはEDIなどに回復に使えるデータがないので使えません。^_^;

    返信削除
  7. 005C636CでEDIに自分のキャラのクラスアドレスがあるのでそれを格納してます^^;
    これで人と被ることなく回復できますよ^^b
    試してみてから言ってくださいね^_^

    返信削除
  8. 00A87000-893D006FA8008978488B0BC3
    005C636C-E88F0C4C00
    上の、Unknownのコードを実行して、ルームに入場後00A86F00 のアドレスに FFFFFFFF と手入力します。その後に、敵から攻撃されて自分のHPが減っても 00A86F00 のアドレスの内容は変化しないので、何も格納されていないのがわかります。使用できる値がないので、刻々と変化するHP・SPが、自分のキャラなのか、他人のキャラなのか、Unknownのコードでは判別できません^^b

    返信削除
  9. 正直何をおっしゃりたいのかわかりかねます^^;
    005C636Cは00A87000に飛ばす処理で、00A87000は00A86F00に自キャラのクラスアドレスを格納する処理をしてます^^
    自キャラのルーム入場時にのみ005C636Cが一度処理されるので00A86F00に自動的に自キャラのみのクラスアドレスが取得されます^ー^
    ですので00A86F00に手動で入力する必要はありませんよ^^;
    もちろん00A86F00をポインタとするアドレスにも何もいれなくておkです^^b
    あくまでクラスアドレスですのでHPやSPを参照するには適切なオフセットを足してアクセスしなければないですね@@
    それに実質↑の回復オート君改良版も同じクラスアドレスを参照して判断してるのですが・・・><
    ここまで説明してもわからないのであればここに晒されてるコードを作成したのはるるすさんではないのではと疑ってしまいます;
    一度全てそのまま入れて2PCや多重で動作を検証してみてはいかがでしょうか?_?

    返信削除
  10. 書き込んだコメントが削除されてるんですが^^;
    とりあえず一度そのまま2PCや多重で試してみてください^^;

    返信削除
  11. スパムになっていたので解除しました^^;
    いいコードですね。失礼しました^^

    返信削除
  12. こちらこそ長文乱文失礼しました^^
    これからのコード作成のヒントになればと思います^^

    返信削除