アイテムコード解析byココロ
特別な効果はなし
特別な効果はなし
発動 | 11 | 魔法攻撃を受けたとき |
- - - - - - [00B1] |
04 07 26 02 02 B1 00 0B 20 4B 04 0B 20 64 00 02 B1 00 05 42 03 10 15 2C 00 08 00 10 05 B2 40 01 FF |
相手の魔法系統が2以下の時は次へ、3以上は[00B1]へ。 アドレス[20]に0〜3の乱数をひとつ発生。 [20]の数字が0なら次へ、違うなら[00B1]へ。 自分の状態コードCに10(アンチサークル)を含ませる。 効果音2Cを発生。 自分のアンチサークル発動時間に01を代入。 終了。 |
ミラーアーマーのコードをコピーしたらそのままでした。 割合も一緒ってコトですね。ってことで。 相手の攻撃パターンが魔法系統0,1,2なら、つまり。。 Pri魔法、Wiz魔法、Fai魔法を受けたときに1/4で、要するに25%で アンチサークルを瞬間的に発動しているってコト。 |
発動 | 0E | 盾防御で防いだとき。 |
- - - - - - - [00B3] - [00BE] - [00C9] - [00D4] - [00DF] - [00EA] - [00F5] - [0100] - [010A] - - - - - - - [012D] |
0B 28 40 00 0B 2E 4B 05 0B 2E 64 00 02 2D 01 06 18 8C 20 06 1C 8C 24 0B 28 32 20 02 B3 00 0B 28 18 20 0B 28 32 21 02 BE 00 0B 28 18 21 0B 28 32 22 02 C9 00 0B 28 18 22 0B 28 32 23 02 D4 00 0B 28 18 23 0B 28 32 24 02 DF 00 0B 28 18 24 0B 28 32 25 02 EA 00 0B 28 18 25 0B 28 32 26 02 F5 00 0B 28 18 26 0B 28 32 27 02 00 01 0B 28 18 27 0B 28 24 00 02 0A 01 01 2D 01 0B 28 30 22 02 2D 01 0B 28 0A 03 0B 28 01 01 05 4C 59 28 09 41 00 0A 05 48 4C 2A 05 4C 75 2A 05 4C 58 2A FF |
アドレス[28]に0を代入。 アドレス[2E]に0〜4の乱数をひとつ発生。 [2E]の数字が0なら次へ、違えば[012D]へ。 相手の火・水・地・風属性の属性値を[20][21][22][23]に代入。 相手の光・闇・聖・邪属性の属性値を[24][25][26][27]に代入。 [28]が[20]より小さい場合次へ、[20]以上であれば[00B3]へ。 [28]に[20]を代入。(火属性値) [28]が[21]より小さい場合次へ、[21]以上であれば[00BE]へ。 [28]に[21]を代入。(水属性値) [28]が[22]より小さい場合次へ、[22]以上であれば[00C9]へ。 [28]に[22]を代入。(地属性値) [28]が[23]より小さい場合次へ、[23]以上であれば[00D4]へ。 [28]に[23]を代入。(風属性値) [28]が[24]より小さい場合次へ、[24]以上であれば[00DF]へ。 [28]に[24]を代入。(光属性値) [28]が[25]より小さい場合次へ、[25]以上であれば[00EA]へ。 [28]に[25]を代入。(闇属性値) [28]が[26]より小さい場合次へ、[26]以上であれば[00F5]へ。 [28]に[26]を代入。(聖属性値) [28]が[27]より小さい場合次へ、[27]以上であれば[0100]へ。 [28]に[27]を代入。(邪属性値) [28]の数字が0であれば次へ、違えば[010A]へ。 [012D]へジャンプ。 [28]の数字が[22]と同じであれば次へ、違えば[012D]へ。 [28]の数字を1/8する。 [28]の数字に1を加算する。 自分の現在HPに[28]を加算。 回復エフェクトその2をカラー000A(黄色)で発動。 自分の最大HPを[2A]に代入。 自分の現在HPが[2A]より多ければ次へ。以下なら終了。 自分の現在HPに[2A]を代入。 終了。 |
真ん中付近のコード、もっとうまくやれそうな気がしないでもないんだけどなぁ(^^; とりあえず、条件は1/5。つまり発動条件は20%です。 それを満たした後で属性値コードを4種類まとめて読み込んでそれを2回繰り返す。 その中で最大の物を取り出しているみたい。 最初は[28]には0が入っていて、これが[20](火属性の属性値)より小さい場合次へ、とありますが もし、火属性が0であれば次の属性判定へと飛びます。 そして次は[28]と[21](水属性の属性値)の比較。 もし水属性に属性値が入っていれば、水属性の方がでかいので([28]は0だからねぇ) 次の命令文で[28]には[21]の値が入る、と。 さらに、次の土属性が水属性より小さい場合、そのまま次の属性判定へ移動、と。 こんな調子で8種類の属性全部についてその判定をやると・・・ 最後に[28]に入っているのは一番属性値の大きい物が入っていることになるわけで。 この段階で[28]が0なら属性なしの相手と言うことで、末尾へジャンプして終了。 [28]の数字が[22]と同一、つまり、地属性が一番大きい場合、 相手の地の属性値を1/8にしてそれをHPに加算するということ。 最大を超えたらまずいのでちゃんと超えないようにはないっていますね。 んで、HP回復エフェクトが黄色ってコトで、土色っぽいのかなぁ。(笑) |
特別な効果はなし
発動 | 0E | 盾防御で防いだとき。 |
- - - - - - - [00B4] |
0B 20 4B 05 0B 22 40 0C 0B 24 40 0D 0B 20 24 00 02 B4 00 05 4E 75 24 02 B4 00 05 4E 5A 22 0E 00 06 01 0F FF |
アドレス[20]に0〜4の乱数をひとつ発生 アドレス[22]に12を代入 アドレス[24]に13を代入 [20]の数字が0なら次へ、違うなら[00B4]へ。 自分の現在MPが[24]より多ければ次へ、以下なら[00B4]へ。 自分の現在MPから[22]を減らす。 魔法発動。ダークウェイブをカラー010F(紫)で発動 終了。 |
魔法発動ってことで、レーヴァテインをコピって改変。 とりあえず現在MPが14以上あればMPを12消費してダークウェイブ発動できる、と。 発動は1/5の確率で。つまり20%と結構な割合で出るなぁ。 ブレスを防いだときなんかは大量にウェイブが出るのもうなずけますな。 |
発動 | 00 | :常時(1秒ごと) |
- - - - - - - * - - - - - [00CB] |
05 43 2D 40 02 CB00 05 4C 4C 28 0B 28 42 01 0B 29 2D 80 02 CB 00 0B 20 40 01 05 4C 59 20 05 48 4C 22 05 4C 75 22 05 4C 58 22 05 4E 59 20 05 4A 4C 22 05 4E 75 22 05 4E 58 22 FF |
自分の状態異常コードDが40(ドレイン)でなければ次へ。ドレインであれば[00CB]へ。 自分の現在HPをアドレス[28]に代入。 [28]の数字を1減らす [29]に80が入っていなければ次へ。80なら[00CB]へ。 [20]に1を代入。 自分の現在HPに[20]を加算。 自分の最大HPを[22]に代入。 自分の現在HPが[22]より高ければ次へ、以下なら終了 自分の現在HPに[22]を代入。 自分の現在MPに[20]を加算。 自分の最大MPを[22]に代入。 自分の現在MPが[22]より高ければ次へ、以下なら終了 自分の現在MPに[22]を代入。 終了。 |
回復機能と言うことで、ソルガードをコピっていじりました。 基本はソルガードなんですが、後半にMP回復効果がくっついてきています。 序盤のコード進行はおそらく生死判定。死んだキャラでもHPが増えたら困ると言うことでしょう。 で、肝心のコード進行ですが。 このコードだと、HPに[20]を加算して、最大HPを比べた後、最大まで達していなければコードが終了。 つまり、そのままではMPは回復しないと。 もしHPが最大に達していればコードは次に進むのでMPが回復すると。 そういうことでHPが最大の時はMPが回復するというややこしい効果が生まれたわけですな。 同時に回復させたければ*の後に02 BB 00と追加してやるとMPも同時に回復しますかね。 |
発動 | 0E | 盾防御で防いだとき。 |
- - - - - - - [00B3] - [00BE] - [00C9] - [00D4] - [00DF] - [00EA] - [00F5] - [0100] - [010A] - - - - - - - [012D] |
0B 28 40 00 0B 2E 4B 05 0B 2E 64 00 02 2D 01 06 18 8C 20 06 1C 8C 24 0B 28 32 20 02 B3 00 0B 28 18 20 0B 28 32 21 02 BE 00 0B 28 18 21 0B 28 32 22 02 C9 00 0B 28 18 22 0B 28 32 23 02 D4 00 0B 28 18 23 0B 28 32 24 02 DF 00 0B 28 18 24 0B 28 32 25 02 EA 00 0B 28 18 25 0B 28 32 26 02 F5 00 0B 28 18 26 0B 28 32 27 02 00 01 0B 28 18 27 0B 28 24 00 02 0A 01 01 2D 01 0B 28 30 23 02 2D 01 0B 28 0A 03 0B 28 01 01 05 4C 59 28 09 41 01 09 05 48 4C 2A 05 4C 75 2A 05 4C 58 2A FF |
アドレス[28]に0を代入。 アドレス[2E]に0〜4の乱数をひとつ発生。 [2E]の数字が0なら次へ、違えば[012D]へ。 相手の火・水・地・風属性の属性値を[20][21][22][23]に代入。 相手の光・闇・聖・邪属性の属性値を[24][25][26][27]に代入。 [28]が[20]より小さい場合次へ、[20]以上であれば[00B3]へ。 [28]に[20]を代入。(火属性値) [28]が[21]より小さい場合次へ、[21]以上であれば[00BE]へ。 [28]に[21]を代入。(水属性値) [28]が[22]より小さい場合次へ、[22]以上であれば[00C9]へ。 [28]に[22]を代入。(地属性値) [28]が[23]より小さい場合次へ、[23]以上であれば[00D4]へ。 [28]に[23]を代入。(風属性値) [28]が[24]より小さい場合次へ、[24]以上であれば[00DF]へ。 [28]に[24]を代入。(光属性値) [28]が[25]より小さい場合次へ、[25]以上であれば[00EA]へ。 [28]に[25]を代入。(闇属性値) [28]が[26]より小さい場合次へ、[26]以上であれば[00F5]へ。 [28]に[26]を代入。(聖属性値) [28]が[27]より小さい場合次へ、[27]以上であれば[0100]へ。 [28]に[27]を代入。(邪属性値) [28]の数字が0であれば次へ、違えば[010A]へ。 [012D]へジャンプ。 [28]の数字が[23]と同じであれば次へ、違えば[012D]へ。 [28]の数字を1/8する。 [28]の数字に1を加算する。 自分の現在HPに[28]を加算。 回復エフェクトその2をカラー0109(緑白色)で発動。 自分の最大HPを[2A]に代入。 自分の現在HPが[2A]より多ければ次へ。以下なら終了。 自分の現在HPに[2A]を代入。 終了。 |
はい、アースシールドのコピペを2カ所だけ変更。地属性対象を風属性対象に。カラーを変更。 相手の風の属性値を1/8にしてそれをHPに加算するということ。 最大を超えたらまずいのでちゃんと超えないようにはないっていますね。 んで、HP回復エフェクトが緑白色ってコトで、風っぽいのかなぁ。(笑) |
発動 | 0E | 盾防御で防いだとき。 |
- - - - - - - [00B3] - [00BE] - [00C9] - [00D4] - [00DF] - [00EA] - [00F5] - [0100] - [010A] - - - - - - - [012D] |
0B 28 40 00 0B 2E 4B 05 0B 2E 64 00 02 2D 01 06 18 8C 20 06 1C 8C 24 0B 28 32 20 02 B3 00 0B 28 18 20 0B 28 32 21 02 BE 00 0B 28 18 21 0B 28 32 22 02 C9 00 0B 28 18 22 0B 28 32 23 02 D4 00 0B 28 18 23 0B 28 32 24 02 DF 00 0B 28 18 24 0B 28 32 25 02 EA 00 0B 28 18 25 0B 28 32 26 02 F5 00 0B 28 18 26 0B 28 32 27 02 00 01 0B 28 18 27 0B 28 24 00 02 0A 01 01 2D 01 0B 28 30 21 02 2D 01 0B 28 0A 03 0B 28 01 01 05 4C 59 28 09 41 01 07 05 48 4C 2A 05 4C 75 2A 05 4C 58 2A FF |
アドレス[28]に0を代入。 アドレス[2E]に0〜4の乱数をひとつ発生。 [2E]の数字が0なら次へ、違えば[012D]へ。 相手の火・水・地・風属性の属性値を[20][21][22][23]に代入。 相手の光・闇・聖・邪属性の属性値を[24][25][26][27]に代入。 [28]が[20]より小さい場合次へ、[20]以上であれば[00B3]へ。 [28]に[20]を代入。(火属性値) [28]が[21]より小さい場合次へ、[21]以上であれば[00BE]へ。 [28]に[21]を代入。(水属性値) [28]が[22]より小さい場合次へ、[22]以上であれば[00C9]へ。 [28]に[22]を代入。(地属性値) [28]が[23]より小さい場合次へ、[23]以上であれば[00D4]へ。 [28]に[23]を代入。(風属性値) [28]が[24]より小さい場合次へ、[24]以上であれば[00DF]へ。 [28]に[24]を代入。(光属性値) [28]が[25]より小さい場合次へ、[25]以上であれば[00EA]へ。 [28]に[25]を代入。(闇属性値) [28]が[26]より小さい場合次へ、[26]以上であれば[00F5]へ。 [28]に[26]を代入。(聖属性値) [28]が[27]より小さい場合次へ、[27]以上であれば[0100]へ。 [28]に[27]を代入。(邪属性値) [28]の数字が0であれば次へ、違えば[010A]へ。 [012D]へジャンプ。 [28]の数字が[21]と同じであれば次へ、違えば[012D]へ。 [28]の数字を1/8する。 [28]の数字に1を加算する。 自分の現在HPに[28]を加算。 回復エフェクトその2をカラー0107(青白色)で発動。 自分の最大HPを[2A]に代入。 自分の現在HPが[2A]より多ければ次へ。以下なら終了。 自分の現在HPに[2A]を代入。 終了。 |
はい、アースシールドのコピペを2カ所だけ変更。地属性対象を水属性対象に。カラーを変更。 相手の水の属性値を1/8にしてそれをHPに加算するということ。 最大を超えたらまずいのでちゃんと超えないようにはないっていますね。 んで、HP回復エフェクトが青白色ってコトで、水っぽいのかなぁ。(笑) |
発動 | 0E | 盾防御で防いだとき。 |
- - - - - - - [00B3] - [00BE] - [00C9] - [00D4] - [00DF] - [00EA] - [00F5] - [0100] - [010A] - - - - - - - [012D] |
0B 28 40 00 0B 2E 4B 05 0B 2E 64 00 02 2D 01 06 18 8C 20 06 1C 8C 24 0B 28 32 20 02 B3 00 0B 28 18 20 0B 28 32 21 02 BE 00 0B 28 18 21 0B 28 32 22 02 C9 00 0B 28 18 22 0B 28 32 23 02 D4 00 0B 28 18 23 0B 28 32 24 02 DF 00 0B 28 18 24 0B 28 32 25 02 EA 00 0B 28 18 25 0B 28 32 26 02 F5 00 0B 28 18 26 0B 28 32 27 02 00 01 0B 28 18 27 0B 28 24 00 02 0A 01 01 2D 01 0B 28 30 20 02 2D 01 0B 28 0A 03 0B 28 01 01 05 4C 59 28 09 41 01 06 05 48 4C 2A 05 4C 75 2A 05 4C 58 2A FF |
アドレス[28]に0を代入。 アドレス[2E]に0〜4の乱数をひとつ発生。 [2E]の数字が0なら次へ、違えば[012D]へ。 相手の火・水・地・風属性の属性値を[20][21][22][23]に代入。 相手の光・闇・聖・邪属性の属性値を[24][25][26][27]に代入。 [28]が[20]より小さい場合次へ、[20]以上であれば[00B3]へ。 [28]に[20]を代入。(火属性値) [28]が[21]より小さい場合次へ、[21]以上であれば[00BE]へ。 [28]に[21]を代入。(水属性値) [28]が[22]より小さい場合次へ、[22]以上であれば[00C9]へ。 [28]に[22]を代入。(地属性値) [28]が[23]より小さい場合次へ、[23]以上であれば[00D4]へ。 [28]に[23]を代入。(風属性値) [28]が[24]より小さい場合次へ、[24]以上であれば[00DF]へ。 [28]に[24]を代入。(光属性値) [28]が[25]より小さい場合次へ、[25]以上であれば[00EA]へ。 [28]に[25]を代入。(闇属性値) [28]が[26]より小さい場合次へ、[26]以上であれば[00F5]へ。 [28]に[26]を代入。(聖属性値) [28]が[27]より小さい場合次へ、[27]以上であれば[0100]へ。 [28]に[27]を代入。(邪属性値) [28]の数字が0であれば次へ、違えば[010A]へ。 [012D]へジャンプ。 [28]の数字が[20]と同じであれば次へ、違えば[012D]へ。 [28]の数字を1/8する。 [28]の数字に1を加算する。 自分の現在HPに[28]を加算。 回復エフェクトその2をカラー0106(オレンジ色)で発動。 自分の最大HPを[2A]に代入。 自分の現在HPが[2A]より多ければ次へ。以下なら終了。 自分の現在HPに[2A]を代入。 終了。 |
はい、アースシールドのコピペを2カ所だけ変更。地属性対象を火属性対象に。カラーを変更。 相手の火の属性値を1/8にしてそれをHPに加算するということ。 最大を超えたらまずいのでちゃんと超えないようにはないっていますね。 んで、HP回復エフェクトがオレンジ色ってコトで、火っぽいのかなぁ。(笑) |
特別な効果はなし
発動 | 0E | 盾防御で防いだとき。 |
- - - - [00A8] |
0B 20 4B 04 0B 20 64 00 02 A8 00 05 41 2D 04 02 A8 00 0E 00 04 00 02 FF |
アドレス[20]に0〜3の乱数をひとつ発生 [20]の数字が0なら次へ、違うなら[00A8]へ。 自分の状態異常コードBに04(At-up)がなければ次へ、あれば[00A8]へ。 魔法発動。ストライキングをカラー0002(オレンジ)で発動 終了。 |
無償で魔法発動ってことで・・・ってこれまでそんなのあったっけ? とるものとりあえずベースはレーヴァテインでそこから改変。 1/4ってことで、25%の確率でストライキングが発動してしまうんですねぇ。 でも、バトロイでは相手に奪われること必至(笑) すでにストライキング状態なら発動することもないようですね。 |