Topへ戻る
アイテム効果コード

【B[**]など、独特の構文について】 ** を先頭として

B1BYTE
W2BYTE(WORD)
D4BYTE(DWORD)
の値を示す。
00 破損率を設定。
ItemBreak;
【構文】
00 **
**に指定した確率(00〜64)で個数が一つ減る。
01 JMP;
無条件ジャンプ。
【構文】
01 ** **
** **に指定したアドレスへジャンプ。
ただし、アイテムデータの先頭位置を00 00 としている事に注意。
例えば、効果コードの先頭へ移動する場合は
01 90 00とする。
02 else;
条件ジャンプ。
【構文】
(条件式) 02 ** **
条件がFALSE(非成立)の時[Addres]に指定したアドレスへジャンプ。
ただし、アイテムデータの先頭位置を00 00 としている事に注意。
これが無い場合、デフォルトは効果スクリプトの終了。

条件については、10,11,12コード、或いは比較演算コードを参照のこと。

03・04 自分(03)、対象(04)の状態を参照する。

演算子コード使用可能。
【構文】
03 *1 *2 *3
*1は■状態参照コード を参照。 *2, *3 は ■演算子コード を参照の事。

【例】
03 03 01 04
使用者の向きを90度右方向へ回転させる。

05〜08 ステータス参照。
05,07は使用者。06,08は対象のキャラデータを参照する。
05,06は0100台、07,08は0200台を参照。
【構文】
05 *1 *2 *3
*1 は■キャラクタデータ、 *2, *3 は ■演算子コード を参照の事。

【例】
05 4C 4C 20
使用者の現在HPを一時計算領域 W[20] へコピー。

09・0A エフェクト発動。
09は発動者=使用者。0Aは発動者=対象。
【構文】
09 *1 *2 *2
*1 で効果、*2 で色を指定。
剣衝撃波・宝箱トラップなどを除いて基本的にダメージ・回復効果は発動しない(Resist表示)。
詳細は■効果エフェクトを参照。
0B 一時計算用領域を参照。
20〜32迄は使用できる事が確認済み。

【構文】
0B *1 *2 *3
*2, *3 は ■演算子コード を参照の事。

【例】
0B 20 0B 04
一時計算領域 B[20] に 0以上 4未満の乱数を発生させる。

0C 数値表示。
13・14を参照。
0D 自分の装備しているアイテムを参照。
【構文】
0D *0 *1 *2 *3
*1 は■アイテム、 *2, *3 は ■演算子コード を参照の事。
*0 には以下の値を入れる。
0001020304
武器防具装飾1装飾2
0E 魔法発動。
【構文】
0E *1 *2 *3 *3
*1 は
00Wiz系魔法
01Pri系魔法
02Fai系魔法
03ハーブ
04特殊攻撃
04 特殊攻撃の場合、*2 は
00剣衝撃波
01
02フェアリー魔力弾
その他 *2, *3 に着いては ■魔法効果 を参照の事。
0F BEEP;
実行不能音を出す。単体で使用する。
【構文】
0F
10 Target_Num;
「対象」をn番目の敵・味方に設定。
【構文】
10 *1 *2
*1 が 0 なら味方から、 1 なら敵から選ぶ。
*2 は 0B で使用する一時領域を指定する。
いない場合、02 コードでジャンプ可能。
11 Target_Slf;
「対象」を目の前の敵・味方に設定。
【構文】
11 **
** が 0 なら味方から、 1 なら敵から選ぶ。
いない場合、02 コードでジャンプ可能。
12 Trans;
「対象」にステータス異常を起こさせる。
【構文】
12 **
抵抗された場合、02 コードでジャンプ可能。 ** で指定する値は以下のとおり。
*
00 E-WeaponD-EnemyD-AlimentE-Fire E-EarthE-WindE-WaterParalyze
08 ConfusionCurseSilenceSleep StunStonedBerserkAT-Up
10 AT-DownDF-UpDF-DownHaste SlowMAT-UpMAT-DownMDF-Up
18 MDF-DownAinti CircleInvinicibleWeak LebitateDispel MagicPoisonFeeble
20 DrainRegenerationAnti PoisonAnti Paralyze Anti FeebleSanityStone FreshAnti Poison?
28 Anti ParalyzeResurrectionEnagy recoverHP Heal(*注釈) HP Heal(*注釈)RestoreReViveDead

注釈

「EQ・Bクエスト中の場合」
2B:最後に発動した魔法の基本威力+装備修正を含めたMin/8(端数切捨て、MAX=124)
2C:最後に発動した魔法の基本威力+装備修正を含めたMin/4(端数切捨て、MAX=249)

「Bバトルロイヤルの場合」
2B:最後に発動した魔法の基本威力+装備修正を含めたMin/8(端数切捨て、MAX=124)
2C:最後に発動した魔法の基本威力/2+装備修正を含めたMin/8(端数切捨て、MAX=124)

さらに、この回復量は
ヒーリング=2B
リフレッシュ=2C
と一致する。

13・14 数値表示。
【構文】
13 *1 *2 *3
*1 は表示する値のサイズ。
00BYTE(1Byte)
01WORD(2Byte)
02DWORD(4Byte)
*3 は属性による色指定。
*2 には 0B で参照する一時計算領域を指定。

余談だが、デバッグ・テストに重宝する。


05 44 4C 20 13 01 20 00
使用者のレベル(2バイト)を無属性の色(白)で使用者位置に表示。

0001020304050607 08090A0B0C
明灰オレンジ暗灰 暗赤変(赤緑金)
無属性回復 例:MPダメージ例:ジェル入手例:ジェル喪失
15 効果音発生。
【構文】
15 *1 *2 *2 *3 *3
*1 は音の種類。
*2 は再生速度(大きければ速く、高い音になる)。
*3 は再生音量(値が大きいほど大きな音になる)。
FF 効果コード終了。
【構文】
FF
忘れないように。
これを付け忘れると、プログラムは FF を検出するまでひたすらメモリを読み続ける事になり、実行結果が不明になる。
戻る