アイテムコード解析byココロ

ロッド [1B59] 7001

特別な効果はなし

ジュエルロッド [1B5A] 7002

特別な効果はなし

フェアリーロッド [1B5B] 7003

発動 02 打撃命中時
-
-
-
-
06 44 4C 20
0B 20 47 03
05 30 59 20
FF
相手のレベルを[20]に代入。
[20]の数字を3で割る。 [20]=[20]/3
自分のAt.に[20]を加算
終了
シンプルなコードの割に凶悪な効果。
相手のレベルの1/3をAt.に無条件で加算してます。
9999を相手にすればAt.+3333(笑)

クリスタルロッド [1B5C] 7004

特別な効果はなし

シルバーロッド [1B5D] 7005

特別な効果はなし

フレイムロッド [1B5E] 7006

特別な効果はなし

ウォーターロッド [1B5F] 7007

特別な効果はなし

アースロッド [1B60] 7008

特別な効果はなし

ウインドロッド [1B61] 7009

特別な効果はなし

ヒールロッド [1B62] 7010

発動 00 常時
-
 
-
-
-
-
-
-
-
-
-
-
-
[00CA]
05 43 2D 40 02 CA 00
 
05 48 4C 20
0B 20 4A 01
05 4C 72 20 02 CA 00
05 4C 4C 28
0B 28 42 01
0B 29 2D 80 02 CA 00
0B 22 40 01
05 4C 59 22
05 48 4C 24
05 4C 75 24
05 4C 58 24
FF
自分の状態異常コードDに40(ドレイン)が入っていなければ次へ、
 入っていれば[00CA]へ。
自分の最大HPを[20]に代入。
[20]の数字を半分にする。
自分の現在HPが[20]以下なら次へ、多ければ[00CA]へ。
自分の現在HPを[28]に代入。
[28]から1を引く。
[29]に80が入っていなければ次へ、入っていれば[00CA]へ。
[22]に1を代入。
自分の現在HPに[22]を加算。
自分の最大HPを[24]に代入。
自分の現在HPが[24]より多ければ次へ、以下なら終了。
自分の現在HPに[24]を代入。
終了。
これも一行目の条件が良くわからないんだけど。ドレイン状態でも回復するんだよねぇ。
ってことで。
現在HPが半分を切ったら秒間1ずつ回復するというシロモノ。
[29]に80というのは、おそらく現在HPがマイナスになったときだと。
おそらくはダメージを受けた際にマイナスになったときの処理なんだろう。うん。
普通に歩いていて半分から1を引いたらマイナスになるってコト、まずないからね。
最大HPが1とか言うことでもない限り。そうなると、後半のコード、条件分岐に意味がないですな。

レインボーロッド [1B63] 7011

MP自然回復量に+2

ドレインロッド [1B64] 7012

発動 02 打撃命中時
-
-
-
-
-
-
-
-
-
[00B8]
-
[00C3]
-
-
-
-
-
-
-
-
-
-
[00F5]
-
-
-
-
-
[010A]
-
-
-
-
[0124]
-
-
-
-
[00CA]
04 02 2D 20
08 00 4C 20
06 4E 4C 24
06 4E 4C 28
05 4E 4C 26
05 4E 4C 2A
0B 20 4A 03
0B 20 66 01 02 B8 00
0B 20 40 01
0B 20 67 08 02 C3 00
0B 20 40 08
0B 24 5A 20
0B 24 42 01
0B 26 5A 20
0B 26 42 01
06 17 2C 01 02 0A 01
03 00 03 40
03 96 40 10
05 4E 5A 20
0B 27 2C 80 02 F5 00
0B 2A 4C 20
05 4E 40 00
13 01 20 00
06 4E 59 20
06 4A 4C 22
06 4E 75 22
06 4E 58 22
FF
06 4E 5A 20
0B 25 2C 80 02 24 01
0B 28 4C 20
06 4E 40 00
06 40 2D 80 02 24 01
13 01 20 01
05 4E 59 20
05 4A 4C 22
05 4E 75 22
05 4E 58 22
FF
相手キャラの状態コード[02]が20でなければ次へ。20であれば終了。
相手のダメージをアドレス[20]に代入。
相手の現在MPをアドレス[24]に代入。
相手の現在MPをアドレス[28]に代入。
自分の現在MPをアドレス[26]に代入。
自分の現在MPをアドレス[2A]に代入。
[20]の数字を1/8にする。
[20]の数字が1以下なら次へ、大きければ[00B8]へ。
[20]に1を代入。
[20]の数字が8以上なら次へ、未満は[00C3]へ。
[20]に8を代入。
[24]から[20]を引く。・・・[24]=[24]-[20]
[24]から1を引く。・・・[24]=[24]-1
[26]から[20]を引く。・・・[26]=[26]-[20]
[26]から1を引く。・・・[26]=[26]-1
相手の種族コードDに01(アンデッド)があれば次へ、なければ[010A]へ。
自分の状態コード[00]に“ダメージを受けている”を代入。
自分の無敵時間に10を代入。
自分の現在MPから[20]を引く。
[27]の数字に80が入っていれば次へ、入っていなければ[00F5]へ。
[2A]の数字を[20]に代入。
自分の現在MPに0を代入。
[20]の数字を無属性色で表示。
相手の現在MPに[20]を加算する。
相手の最大MPを[22]に代入。
相手の現在MPが[22]より大きければ次へ、以下は終了。
相手の現在MPに[22]を代入。
終了。
相手の現在MPを[20]に代入。
[25]の数字に80が入っていれば次へ、入っていなければ[0124]へ
[28]の数字を[20]に代入。
相手の現在MPに0を代入。
相手の状態異常コードAが80(スタン)でなければ次へ、80なら[0124]へ。
[20]の数字を回復属性色で表示。
自分の現在MPに[20]を加算。
自分の最大MPを[22]に代入。
自分の現在MPが[22]より大きければ次へ、以下は終了。
自分の現在MPに[22]を代入。
終了。
はい。デビルメイスをコピペ。寸分違わず同じでした。
途中で対象がアンデッドであるかないかの条件分岐のおかげで長くなっているだけなので。
自分と相手が入れ替わって回復/ダメージになっているということ。
殴ったダメージの1/8(1〜8まで。1以下は1として、8以上は8で扱う)をやりとりします。
回復が絡むと最大値を超えないように配慮したりしてますよ。

スターロッド [1B65] 7013

特別な効果はなし

イシュタルロッド [1B66] 7014

発動 02 打撃命中時
-
-
[009C]
06 17 2C 01 02 9C 00
05 30 41 28
FF
相手の種族コードDに01(アンデッド)が入っていれば次へ、いなければ[009C]へ
自分のAt.に40を加算
終了
アンデッドに対してAt+40ってことで。元の攻撃力を考えるとそれなりかな。
イシュタルロッドはそれよりも能力値上昇が結構ある方が大きいかと。

ユニコーン [1B67] 7015

MP自然回復量に+2

エンジェルロッド [1B68] 7016

発動 02 打撃命中時
-
-
[009C]
06 15 2C 80 02 9C 00
05 30 41 28
FF
相手の種族コードDに80(悪魔)が入っていれば次へ、いなければ[009C]へ
自分のAt.に40を加算
終了
天使系のお約束で悪魔に対してAt+40ってことで。元の攻撃力を考えると結構な威力に。
でも、それだけなんだよね。

アルケミストロッド [1B69] 7017

発動 02 打撃命中時
-
-
-
-
-
-
-
-
-
-
-
[00BF]
[00C3]
-
-
05 44 4C 2C
0B 2E 40 00
06 44 4C 30
0B 32 40 00
0B 24 80 00
0B 30 9A 2C
0B 24 98 30
0B 24 82 01
0B 27 2C 80 02 BF 00
0B 30 80 00
01 C3 00
0B 30 8A 05
0B 30 81 01
05 58 99 30
FF
自分のレベルをアドレス[2C]に代入。
アドレス[2E]に0を代入(初期化?)
相手のレベルを[30]に代入。
[32]に0を代入(初期化?)
[24]に0を代入(初期化?)
[30]から[2C]の値を引く。・・・[30]=[30]-[2C]
[24]に[30]の値を代入。
[24]から1を引く
[27]に80がある場合次へ。なければ[00BF]へ
[30]に0を代入(値のクリア)
[00C3]へ
[30]の値を1/32する
[30]の値に1を足す
自分の経験値トータルに[30]を加算
終了
ダガーオブザグローリーをコピペして一カ所だけ変更。
基本的には・・・
打撃経験値+相手とのレベル差の1/32がトータル経験値に加算され、
相手とのレベル差がマイナスの場合は打撃経験値+1として加算される、と。
最終的な打撃経験値って1だから、+100%に見えているだけなんだね。

ラグナロク [1B6B] 7019

発動 01 攻撃アクション時
-
-
-
-
-
-
-
-
[00BB]
-
05 44 4C 2C
0B 2E 40 00
0B 2C 67 FF 02 BB 00
0B 20 4B 32
0B 20 64 00 02 BB 00
05 4E 67 69 02 BB 00
05 4E 42 64
0E 00 1C 00 06
FF
FF
自分のレベルをアドレス[2C]に代入。
アドレス[2E]に0を代入。
[2C]の数字が255以上なら次へ、未満は[00BB]へ。
[20]に0〜49乱数を発生。
[20]の数字が0ならば次へ、違えば[00BB]へ。
自分の現在MPが105以上なら次へ、未満は[00BB]へ。
自分の現在MPから100を減らす。
フュージョンをカラー0006(碧)で発動
終了。
終了。
レベルが255以上の時に1/50で、つまり2%でフュージョン発動。
ただし、MPが105以上ないと発動しないんですな。
2%だから、ホント忘れた頃に発動する、ある意味恐ろしい武器ですな。
素振りでも発動するけど、2%じゃ、狙ってもねぇ・・・

フェロモンロッド [1B6C] 7020

発動 02 打撃命中時
-
-
-
[00A1]
0B 20 4B 0C
0B 20 64 00 02 A1 00
0E 02 07 00 0A
FF
[20]に0〜11乱数を発生。
[20]の数字が0ならば次へ、違えば[00A1]へ。
チャームをカラー000A(黄)で発動
終了。
打撃命中時にチャームを発動するロッド。
発動確率は1/12で、8.3333・・・%と多いんだか少ないんだか。
なおかつ、打撃命中時に魔法を発動させられても困るとかなんとか。
どうせなら打撃命中時に相手に直接混乱効果があっても良いような、って
それだとチャームのエフェクトが出ないからカオスレイピアとかと同じになるか(笑)
チャームのエフェクトを出すことが重要なんだな、うん。

ナースロッド [1B6D] 7021

発動 01 攻撃アクション時
-
-
-
-
-
-
-
-
-
[00BB]
-
0B 20 4B 14
0B 22 40 14
0B 24 40 15
0B 20 24 00 02 BB 00
0B 4E 75 24 02 BB 00
05 4E 5A 22
03 08 0C 20
10 00 20
0E 01 14 00 01
FF
FF
[20]に0〜19乱数を発生。
[22]に20を代入。
[24]に21を代入。
[20]の数字が0ならば次へ、違えば[00BB]へ。
自分の現在MPが[24]より多ければ次へ、以下なら[00BB]へ。
自分の現在MPから[22]を引く。
自分の状態参照コード[08]を[20]に代入。
対象を自分に設定。
リザレクションをカラー0001(青)で発動
終了。
終了。
素振りでリザレクションを発動できるロッド。
ってことなんだけど、たかだか1/20。つまり5%程度ですよ。
バトルフィールドで患者の前で20回も素振りしろと(笑)

自分の行動状況参照とか良くわからないんだよね。
対象を自分に設定するのも良くわかんないし。
そのまま発動じゃダメなのかなぁ。