acbx's post in Seeking Help regarding Invalid 'rand_groupid' was marked as the answer
It worked! Thank you, so much!
I just have changed few things.
My test is in the last line of all files.
I don't know why the print got "shaky"
https://ibb.co/GkQs1j4
mob_drop.txt
// Monster Drop Database
// Add drop item to monster
//
// Structure:
// <mobid>,<itemid>,<rate>{,<randopt_groupid>,<flag>}
//
// <mobid> : Monster ID. See db/[pre-]re/mob_db.txt
// <itemid> : Item ID.
// <rate> : 1 = 0.01%
// 100 = 1%
// 10000 = 100%
// Just like rate in mob_db.txt, adjusted by battle_config.
// To remove original drop from monster, use 0 as rate.
// Optional:
// <randopt_groupid> : If set, the dropped item will be modified by Random Option Group based on db/[pre-]re/item_randomopt_group.txt
// <flag> : 1 - The item is protected from steal.
// 2 - As MVP Reward
1002,1201,10000,RDMOPTG_KNIFE
item_randomopt_db.txt
// Items Random Option Database
//
// Structure of Database:
// ID,{ Bonus Script }
RDMOPT_VAR_MAXHPAMOUNT,{ bonus bMaxHP,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_MAXSPAMOUNT,{ bonus bMaxSP,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_STRAMOUNT,{ bonus bStr,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_AGIAMOUNT,{ bonus bAgi,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_VITAMOUNT,{ bonus bVit,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_INTAMOUNT,{ bonus bInt,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_DEXAMOUNT,{ bonus bDex,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_LUKAMOUNT,{ bonus bLuk,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_MAXHPPERCENT,{ bonus bMaxHPrate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_MAXSPPERCENT,{ bonus bMaxSPrate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_HPACCELERATION,{ bonus bHPrecovRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_SPACCELERATION,{ bonus bSPrecovRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_ATKPERCENT,{ bonus2 bAddClass,Class_All,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_MAGICATKPERCENT,{ bonus bMatkRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_PLUSASPD,{ bonus bAspd,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_PLUSASPDPERCENT,{ bonus bAspdRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_ATTPOWER,{ bonus bAtk,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_HITSUCCESSVALUE,{ bonus bHit,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_ATTMPOWER,{ bonus bMatk,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_ITEMDEFPOWER,{ bonus bDef,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_MDEFPOWER,{ bonus bMdef,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_AVOIDSUCCESSVALUE,{ bonus bFlee,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_PLUSAVOIDSUCCESSVALUE,{ bonus bFlee2,getrandomoptinfo(ROA_VALUE); }
RDMOPT_VAR_CRITICALSUCCESSVALUE,{ bonus bCritical,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_NOTHING,{ bonus2 bSubEle,Ele_Neutral,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_WATER,{ bonus2 bSubEle,Ele_Water,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_GROUND,{ bonus2 bSubEle,Ele_Earth,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_FIRE,{ bonus2 bSubEle,Ele_Fire,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_WIND,{ bonus2 bSubEle,Ele_Wind,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_POISON,{ bonus2 bSubEle,Ele_Poison,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_SAINT,{ bonus2 bSubEle,Ele_Holy,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_DARKNESS,{ bonus2 bSubEle,Ele_Dark,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_TELEKINESIS,{ bonus2 bSubEle,Ele_Ghost,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_UNDEAD,{ bonus2 bSubEle,Ele_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_ATTR_TOLERACE_ALL,{ bonus2 bSubEle,Ele_All,getrandomoptinfo(ROA_VALUE); }
// TODO: Confirm if damage reduction is implemented correctly.
// kRO desc : <ELEMENT> ?????? ?? ?? ??? %d%% ??.
RDMOPT_DAMAGE_PROPERTY_NOTHING_USER,{ bonus2 bSubDefEle,Ele_Neutral,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_NOTHING_TARGET,{ bonus2 bAddEle,Ele_Neutral,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_WATER_USER,{ bonus2 bSubDefEle,Ele_Water,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_WATER_TARGET,{ bonus2 bAddEle,Ele_Water,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_GROUND_USER,{ bonus2 bSubDefEle,Ele_Earth,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_GROUND_TARGET,{ bonus2 bAddEle,Ele_Earth,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_FIRE_USER,{ bonus2 bSubDefEle,Ele_Fire,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_FIRE_TARGET,{ bonus2 bAddEle,Ele_Fire,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_WIND_USER,{ bonus2 bSubDefEle,Ele_Wind,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_WIND_TARGET,{ bonus2 bAddEle,Ele_Wind,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_POISON_USER,{ bonus2 bSubDefEle,Ele_Poison,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_POISON_TARGET,{ bonus2 bAddEle,Ele_Poison,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_SAINT_USER,{ bonus2 bSubDefEle,Ele_Holy,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_SAINT_TARGET,{ bonus2 bAddEle,Ele_Holy,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_DARKNESS_USER,{ bonus2 bSubDefEle,Ele_Dark,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_DARKNESS_TARGET,{ bonus2 bAddEle,Ele_Dark,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_USER,{ bonus2 bSubDefEle,Ele_Ghost,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_TARGET,{ bonus2 bAddEle,Ele_Ghost,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_UNDEAD_USER,{ bonus2 bSubDefEle,Ele_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_PROPERTY_UNDEAD_TARGET,{ bonus2 bAddEle,Ele_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_NOTHING_USER,{ bonus3 bSubEle,Ele_Neutral,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_NOTHING_TARGET,{ bonus2 bMagicAddEle,Ele_Neutral,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_WATER_USER,{ bonus3 bSubEle,Ele_Water,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_WATER_TARGET,{ bonus2 bMagicAddEle,Ele_Water,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_GROUND_USER,{ bonus3 bSubEle,Ele_Earth,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_GROUND_TARGET,{ bonus2 bMagicAddEle,Ele_Earth,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_FIRE_USER,{ bonus3 bSubEle,Ele_Fire,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_FIRE_TARGET,{ bonus2 bMagicAddEle,Ele_Fire,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_WIND_USER,{ bonus3 bSubEle,Ele_Wind,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_WIND_TARGET,{ bonus2 bMagicAddEle,Ele_Wind,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_POISON_USER,{ bonus3 bSubEle,Ele_Poison,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_POISON_TARGET,{ bonus2 bMagicAddEle,Ele_Poison,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_SAINT_USER,{ bonus3 bSubEle,Ele_Holy,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_SAINT_TARGET,{ bonus2 bMagicAddEle,Ele_Holy,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_DARKNESS_USER,{ bonus3 bSubEle,Ele_Dark,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_DARKNESS_TARGET,{ bonus2 bMagicAddEle,Ele_Dark,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_USER,{ bonus3 bSubEle,Ele_Ghost,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_TARGET,{ bonus2 bMagicAddEle,Ele_Ghost,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_PROPERTY_UNDEAD_USER,{ bonus3 bSubEle,Ele_Undead,getrandomoptinfo(ROA_VALUE),BF_MAGIC; }
RDMOPT_MDAMAGE_PROPERTY_UNDEAD_TARGET,{ bonus2 bMagicAddEle,Ele_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_BODY_ATTR_NOTHING,{ bonus bDefEle,Ele_Neutral; }
RDMOPT_BODY_ATTR_WATER,{ bonus bDefEle,Ele_Water; }
RDMOPT_BODY_ATTR_GROUND,{ bonus bDefEle,Ele_Earth; }
RDMOPT_BODY_ATTR_FIRE,{ bonus bDefEle,Ele_Fire; }
RDMOPT_BODY_ATTR_WIND,{ bonus bDefEle,Ele_Wind; }
RDMOPT_BODY_ATTR_POISON,{ bonus bDefEle,Ele_Poison; }
RDMOPT_BODY_ATTR_SAINT,{ bonus bDefEle,Ele_Holy; }
RDMOPT_BODY_ATTR_DARKNESS,{ bonus bDefEle,Ele_Dark; }
RDMOPT_BODY_ATTR_TELEKINESIS,{ bonus bDefEle,Ele_Ghost; }
RDMOPT_BODY_ATTR_UNDEAD,{ bonus bDefEle,Ele_Undead; }
//RDMOPT_BODY_ATTR_ALL,{ /* Needs more info */ }
RDMOPT_RACE_TOLERACE_NOTHING,{ bonus2 bSubRace,RC_Formless,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_UNDEAD,{ bonus2 bSubRace,RC_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_ANIMAL,{ bonus2 bSubRace,RC_Brute,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_PLANT,{ bonus2 bSubRace,RC_Plant,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_INSECT,{ bonus2 bSubRace,RC_Insect,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_FISHS,{ bonus2 bSubRace,RC_Fish,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_DEVIL,{ bonus2 bSubRace,RC_Demon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_HUMAN,{ bonus2 bSubRace,RC_DemiHuman,getrandomoptinfo(ROA_VALUE); bonus2 bSubRace,RC_Player,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_ANGEL,{ bonus2 bSubRace,RC_Angel,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_TOLERACE_DRAGON,{ bonus2 bSubRace,RC_Dragon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_NOTHING,{ bonus2 bAddRace,RC_Formless,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_UNDEAD,{ bonus2 bAddRace,RC_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_ANIMAL,{ bonus2 bAddRace,RC_Brute,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_PLANT,{ bonus2 bAddRace,RC_Plant,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_INSECT,{ bonus2 bAddRace,RC_Insect,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_FISHS,{ bonus2 bAddRace,RC_Fish,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_DEVIL,{ bonus2 bAddRace,RC_Demon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_HUMAN,{ bonus2 bAddRace,RC_DemiHuman,getrandomoptinfo(ROA_VALUE); bonus2 bAddRace,RC_Player,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_ANGEL,{ bonus2 bAddRace,RC_Angel,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_DAMAGE_DRAGON,{ bonus2 bAddRace,RC_Dragon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_NOTHING,{ bonus2 bMagicAddRace,RC_Formless,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_UNDEAD,{ bonus2 bMagicAddRace,RC_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_ANIMAL,{ bonus2 bMagicAddRace,RC_Brute,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_PLANT,{ bonus2 bMagicAddRace,RC_Plant,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_INSECT,{ bonus2 bMagicAddRace,RC_Insect,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_FISHS,{ bonus2 bMagicAddRace,RC_Fish,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_DEVIL,{ bonus2 bMagicAddRace,RC_Demon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_HUMAN,{ bonus2 bMagicAddRace,RC_DemiHuman,getrandomoptinfo(ROA_VALUE); bonus2 bMagicAddRace,RC_Player,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_ANGEL,{ bonus2 bMagicAddRace,RC_Angel,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_MDAMAGE_DRAGON,{ bonus2 bMagicAddRace,RC_Dragon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_CRI_PERCENT_NOTHING,{ bonus2 bCriticalAddRace,RC_Formless,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_UNDEAD,{ bonus2 bCriticalAddRace,RC_Undead,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_ANIMAL,{ bonus2 bCriticalAddRace,RC_Brute,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_PLANT,{ bonus2 bCriticalAddRace,RC_Plant,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_INSECT,{ bonus2 bCriticalAddRace,RC_Insect,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_FISHS,{ bonus2 bCriticalAddRace,RC_Fish,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_DEVIL,{ bonus2 bCriticalAddRace,RC_Demon,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_HUMAN,{ bonus2 bCriticalAddRace,RC_DemiHuman,getrandomoptinfo(ROA_VALUE)/10; bonus2 bCriticalAddRace,RC_Player,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_ANGEL,{ bonus2 bCriticalAddRace,RC_Angel,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_CRI_PERCENT_DRAGON,{ bonus2 bCriticalAddRace,RC_Dragon,getrandomoptinfo(ROA_VALUE)/10; }
RDMOPT_RACE_IGNORE_DEF_PERCENT_NOTHING,{ bonus2 bIgnoreDefRaceRate,RC_Formless,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_UNDEAD,{ bonus2 bIgnoreDefRaceRate,RC_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_ANIMAL,{ bonus2 bIgnoreDefRaceRate,RC_Brute,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_PLANT,{ bonus2 bIgnoreDefRaceRate,RC_Plant,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_INSECT,{ bonus2 bIgnoreDefRaceRate,RC_Insect,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_FISHS,{ bonus2 bIgnoreDefRaceRate,RC_Fish,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_DEVIL,{ bonus2 bIgnoreDefRaceRate,RC_Demon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_HUMAN,{ bonus2 bIgnoreDefRaceRate,RC_DemiHuman,getrandomoptinfo(ROA_VALUE); bonus2 bIgnoreDefRaceRate,RC_Player,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_ANGEL,{ bonus2 bIgnoreDefRaceRate,RC_Angel,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_DEF_PERCENT_DRAGON,{ bonus2 bIgnoreDefRaceRate,RC_Dragon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_NOTHING,{ bonus2 bIgnoreMdefRaceRate,RC_Formless,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_UNDEAD,{ bonus2 bIgnoreMdefRaceRate,RC_Undead,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANIMAL,{ bonus2 bIgnoreMdefRaceRate,RC_Brute,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_PLANT,{ bonus2 bIgnoreMdefRaceRate,RC_Plant,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_INSECT,{ bonus2 bIgnoreMdefRaceRate,RC_Insect,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_FISHS,{ bonus2 bIgnoreMdefRaceRate,RC_Fish,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_DEVIL,{ bonus2 bIgnoreMdefRaceRate,RC_Demon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_HUMAN,{ bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,getrandomoptinfo(ROA_VALUE); bonus2 bIgnoreMdefRaceRate,RC_Player,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANGEL,{ bonus2 bIgnoreMdefRaceRate,RC_Angel,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RACE_IGNORE_MDEF_PERCENT_DRAGON,{ bonus2 bIgnoreMdefRaceRate,RC_Dragon,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_DAMAGE_NORMAL_TARGET,{ bonus2 bAddClass,Class_Normal,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_DAMAGE_BOSS_TARGET,{ bonus2 bAddClass,Class_Boss,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_DAMAGE_NORMAL_USER,{ bonus2 bSubClass,Class_Normal,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_DAMAGE_BOSS_USER,{ bonus2 bSubClass,Class_Boss,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_MDAMAGE_NORMAL,{ bonus2 bMagicAddClass,Class_Normal,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_MDAMAGE_BOSS,{ bonus2 bMagicAddClass,Class_Boss,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_IGNORE_DEF_PERCENT_NORMAL,{ bonus2 bIgnoreDefClassRate,Class_Normal,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_IGNORE_DEF_PERCENT_BOSS,{ bonus2 bIgnoreDefClassRate,Class_Boss,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_IGNORE_MDEF_PERCENT_NORMAL,{ bonus2 bIgnoreMdefClassRate,Class_Normal,getrandomoptinfo(ROA_VALUE); }
RDMOPT_CLASS_IGNORE_MDEF_PERCENT_BOSS,{ bonus2 bIgnoreMdefClassRate,Class_Boss,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_SMALL_TARGET,{ bonus2 bAddSize,Size_Small,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_MIDIUM_TARGET,{ bonus2 bAddSize,Size_Medium,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_LARGE_TARGET,{ bonus2 bAddSize,Size_Large,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_SMALL_USER,{ bonus2 bSubSize,Size_Small,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_MIDIUM_USER,{ bonus2 bSubSize,Size_Medium,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_LARGE_USER,{ bonus2 bSubSize,Size_Large,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_SIZE_PERFECT,{ bonus bNoSizeFix,1; }
RDMOPT_DAMAGE_CRI_TARGET,{ bonus bCritAtkRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DAMAGE_CRI_USER,{ bonus bCriticalDef,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RANGE_ATTACK_DAMAGE_TARGET,{ bonus bLongAtkRate,getrandomoptinfo(ROA_VALUE); }
RDMOPT_RANGE_ATTACK_DAMAGE_USER,{ bonus bLongAtkDef,getrandomoptinfo(ROA_VALUE); }
RDMOPT_HEAL_VALUE,{ bonus bHealPower,getrandomoptinfo(ROA_VALUE); }
RDMOPT_HEAL_MODIFY_PERCENT,{ bonus bHealPower2,getrandomoptinfo(ROA_VALUE); }
RDMOPT_DEC_SPELL_CAST_TIME,{ bonus bVariableCastrate,-(getrandomoptinfo(ROA_VALUE));}
RDMOPT_DEC_SPELL_DELAY_TIME,{ bonus bDelayrate,-(getrandomoptinfo(ROA_VALUE)); }
RDMOPT_DEC_SP_CONSUMPTION,{ bonus bUseSPrate,-(getrandomoptinfo(ROA_VALUE)); }
//RDMOPT_HP_DRAIN,{ /* Needs more info */ }
//RDMOPT_SP_DRAIN,{ /* Needs more info */ }
RDMOPT_WEAPON_ATTR_NOTHING,{ bonus bAtkEle,Ele_Neutral; }
RDMOPT_WEAPON_ATTR_WATER,{ bonus bAtkEle,Ele_Water; }
RDMOPT_WEAPON_ATTR_GROUND,{ bonus bAtkEle,Ele_Earth; }
RDMOPT_WEAPON_ATTR_FIRE,{ bonus bAtkEle,Ele_Fire; }
RDMOPT_WEAPON_ATTR_WIND,{ bonus bAtkEle,Ele_Wind; }
RDMOPT_WEAPON_ATTR_POISON,{ bonus bAtkEle,Ele_Poison; }
RDMOPT_WEAPON_ATTR_SAINT,{ bonus bAtkEle,Ele_Holy; }
RDMOPT_WEAPON_ATTR_DARKNESS,{ bonus bAtkEle,Ele_Dark; }
RDMOPT_WEAPON_ATTR_TELEKINESIS,{ bonus bAtkEle,Ele_Ghost; }
RDMOPT_WEAPON_ATTR_UNDEAD,{ bonus bAtkEle,Ele_Undead; }
RDMOPT_WEAPON_INDESTRUCTIBLE,{ bonus bUnbreakableWeapon,1; }
RDMOPT_BODY_INDESTRUCTIBLE,{ bonus bUnbreakableArmor,1; }
RDMOPT_MDAMAGE_SIZE_SMALL_TARGET,{ bonus2 bMagicAddSize,Size_Small,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_SIZE_MIDIUM_TARGET,{ bonus2 bMagicAddSize,Size_Medium,getrandomoptinfo(ROA_VALUE); }
RDMOPT_MDAMAGE_SIZE_LARGE_TARGET,{ bonus2 bMagicAddSize,Size_Large,getrandomoptinfo(ROA_VALUE); }
//RDMOPT_MDAMAGE_SIZE_SMALL_USER,{}
//RDMOPT_MDAMAGE_SIZE_MIDIUM_USER,{}
//RDMOPT_MDAMAGE_SIZE_LARGE_USER,{}
//redefined?
//RDMOPT_ATTR_TOLERACE_ALL,{}
item_randomopt_group.txt
// <randopt_groupid>,<rate>,<randopt_id1>,<randopt_value1>,<randopt_param1>{,<randopt_id2>,<randopt_value2>,<randopt_param2>,<randopt_id3>,<randopt_value3>,<randopt_param3>,<randopt_id4>,<randopt_value4>,<randopt_param4>,<randopt_id5>,<randopt_value5>,<randopt_param5>}
RDMOPTG_KNIFE,10000,RDMOPT_VAR_MAXHPAMOUNT,100,0,RDMOPT_VAR_ATKPERCENT,500,0
const.txt
// Script Constant Database
//
// Structure of Database:
// Identifier Value[ Type]
//
// Alternatively:
// Identifier,Value[,Type]
//
// 01. Identifier Unique name for the constant, must not have same name as script commands, functions or variables.
// 02. Value Value assigned to the constant. This value cannot be changed during the runtime of the server.
// 03. Type Specifies whether the identifier is a constant (0) or a parameter (1) (optional, defaults to 0).
//
// NOTE: Parameters are special in that they retrieve certain runtime values depending on the specified ID
// in field Value. Depending on the implementation values assigned by scripts to parameters will affect
// runtime values, such as Zeny, as well (see pc_readparam/pc_setparam).
RDMOPT_VAR_MAXHPAMOUNT 1
RDMOPT_VAR_MAXSPAMOUNT 2
RDMOPT_VAR_STRAMOUNT 3
RDMOPT_VAR_AGIAMOUNT 4
RDMOPT_VAR_VITAMOUNT 5
RDMOPT_VAR_INTAMOUNT 6
RDMOPT_VAR_DEXAMOUNT 7
RDMOPT_VAR_LUKAMOUNT 8
RDMOPT_VAR_MAXHPPERCENT 9
RDMOPT_VAR_MAXSPPERCENT 10
RDMOPT_VAR_HPACCELERATION 11
RDMOPT_VAR_SPACCELERATION 12
RDMOPT_VAR_ATKPERCENT 13
RDMOPT_VAR_MAGICATKPERCENT 14
RDMOPT_VAR_PLUSASPD 15
RDMOPT_VAR_PLUSASPDPERCENT 16
RDMOPT_VAR_ATTPOWER 17
RDMOPT_VAR_HITSUCCESSVALUE 18
RDMOPT_VAR_ATTMPOWER 19
RDMOPT_VAR_ITEMDEFPOWER 20
RDMOPT_VAR_MDEFPOWER 21
RDMOPT_VAR_AVOIDSUCCESSVALUE 22
RDMOPT_VAR_PLUSAVOIDSUCCESSVALUE 23
RDMOPT_VAR_CRITICALSUCCESSVALUE 24
RDMOPT_ATTR_TOLERACE_NOTHING 25
RDMOPT_ATTR_TOLERACE_WATER 26
RDMOPT_ATTR_TOLERACE_GROUND 27
RDMOPT_ATTR_TOLERACE_FIRE 28
RDMOPT_ATTR_TOLERACE_WIND 29
RDMOPT_ATTR_TOLERACE_POISON 30
RDMOPT_ATTR_TOLERACE_SAINT 31
RDMOPT_ATTR_TOLERACE_DARKNESS 32
RDMOPT_ATTR_TOLERACE_TELEKINESIS 33
RDMOPT_ATTR_TOLERACE_UNDEAD 34
RDMOPT_ATTR_TOLERACE_ALL 35
RDMOPT_DAMAGE_PROPERTY_NOTHING_USER 36
RDMOPT_DAMAGE_PROPERTY_NOTHING_TARGET 37
RDMOPT_DAMAGE_PROPERTY_WATER_USER 38
RDMOPT_DAMAGE_PROPERTY_WATER_TARGET 39
RDMOPT_DAMAGE_PROPERTY_GROUND_USER 40
RDMOPT_DAMAGE_PROPERTY_GROUND_TARGET 41
RDMOPT_DAMAGE_PROPERTY_FIRE_USER 42
RDMOPT_DAMAGE_PROPERTY_FIRE_TARGET 43
RDMOPT_DAMAGE_PROPERTY_WIND_USER 44
RDMOPT_DAMAGE_PROPERTY_WIND_TARGET 45
RDMOPT_DAMAGE_PROPERTY_POISON_USER 46
RDMOPT_DAMAGE_PROPERTY_POISON_TARGET 47
RDMOPT_DAMAGE_PROPERTY_SAINT_USER 48
RDMOPT_DAMAGE_PROPERTY_SAINT_TARGET 49
RDMOPT_DAMAGE_PROPERTY_DARKNESS_USER 50
RDMOPT_DAMAGE_PROPERTY_DARKNESS_TARGET 51
RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_USER 52
RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_TARGET 53
RDMOPT_DAMAGE_PROPERTY_UNDEAD_USER 54
RDMOPT_DAMAGE_PROPERTY_UNDEAD_TARGET 55
RDMOPT_MDAMAGE_PROPERTY_NOTHING_USER 56
RDMOPT_MDAMAGE_PROPERTY_NOTHING_TARGET 57
RDMOPT_MDAMAGE_PROPERTY_WATER_USER 58
RDMOPT_MDAMAGE_PROPERTY_WATER_TARGET 59
RDMOPT_MDAMAGE_PROPERTY_GROUND_USER 60
RDMOPT_MDAMAGE_PROPERTY_GROUND_TARGET 61
RDMOPT_MDAMAGE_PROPERTY_FIRE_USER 62
RDMOPT_MDAMAGE_PROPERTY_FIRE_TARGET 63
RDMOPT_MDAMAGE_PROPERTY_WIND_USER 64
RDMOPT_MDAMAGE_PROPERTY_WIND_TARGET 65
RDMOPT_MDAMAGE_PROPERTY_POISON_USER 66
RDMOPT_MDAMAGE_PROPERTY_POISON_TARGET 67
RDMOPT_MDAMAGE_PROPERTY_SAINT_USER 68
RDMOPT_MDAMAGE_PROPERTY_SAINT_TARGET 69
RDMOPT_MDAMAGE_PROPERTY_DARKNESS_USER 70
RDMOPT_MDAMAGE_PROPERTY_DARKNESS_TARGET 71
RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_USER 72
RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_TARGET 73
RDMOPT_MDAMAGE_PROPERTY_UNDEAD_USER 74
RDMOPT_MDAMAGE_PROPERTY_UNDEAD_TARGET 75
RDMOPT_BODY_ATTR_NOTHING 76
RDMOPT_BODY_ATTR_WATER 77
RDMOPT_BODY_ATTR_GROUND 78
RDMOPT_BODY_ATTR_FIRE 79
RDMOPT_BODY_ATTR_WIND 80
RDMOPT_BODY_ATTR_POISON 81
RDMOPT_BODY_ATTR_SAINT 82
RDMOPT_BODY_ATTR_DARKNESS 83
RDMOPT_BODY_ATTR_TELEKINESIS 84
RDMOPT_BODY_ATTR_UNDEAD 85
RDMOPT_BODY_ATTR_ALL 86
RDMOPT_RACE_TOLERACE_NOTHING 87
RDMOPT_RACE_TOLERACE_UNDEAD 88
RDMOPT_RACE_TOLERACE_ANIMAL 89
RDMOPT_RACE_TOLERACE_PLANT 90
RDMOPT_RACE_TOLERACE_INSECT 91
RDMOPT_RACE_TOLERACE_FISHS 92
RDMOPT_RACE_TOLERACE_DEVIL 93
RDMOPT_RACE_TOLERACE_HUMAN 94
RDMOPT_RACE_TOLERACE_ANGEL 95
RDMOPT_RACE_TOLERACE_DRAGON 96
RDMOPT_RACE_DAMAGE_NOTHING 97
RDMOPT_RACE_DAMAGE_UNDEAD 98
RDMOPT_RACE_DAMAGE_ANIMAL 99
RDMOPT_RACE_DAMAGE_PLANT 100
RDMOPT_RACE_DAMAGE_INSECT 101
RDMOPT_RACE_DAMAGE_FISHS 102
RDMOPT_RACE_DAMAGE_DEVIL 103
RDMOPT_RACE_DAMAGE_HUMAN 104
RDMOPT_RACE_DAMAGE_ANGEL 105
RDMOPT_RACE_DAMAGE_DRAGON 106
RDMOPT_RACE_MDAMAGE_NOTHING 107
RDMOPT_RACE_MDAMAGE_UNDEAD 108
RDMOPT_RACE_MDAMAGE_ANIMAL 109
RDMOPT_RACE_MDAMAGE_PLANT 110
RDMOPT_RACE_MDAMAGE_INSECT 111
RDMOPT_RACE_MDAMAGE_FISHS 112
RDMOPT_RACE_MDAMAGE_DEVIL 113
RDMOPT_RACE_MDAMAGE_HUMAN 114
RDMOPT_RACE_MDAMAGE_ANGEL 115
RDMOPT_RACE_MDAMAGE_DRAGON 116
RDMOPT_RACE_CRI_PERCENT_NOTHING 117
RDMOPT_RACE_CRI_PERCENT_UNDEAD 118
RDMOPT_RACE_CRI_PERCENT_ANIMAL 119
RDMOPT_RACE_CRI_PERCENT_PLANT 120
RDMOPT_RACE_CRI_PERCENT_INSECT 121
RDMOPT_RACE_CRI_PERCENT_FISHS 122
RDMOPT_RACE_CRI_PERCENT_DEVIL 123
RDMOPT_RACE_CRI_PERCENT_HUMAN 124
RDMOPT_RACE_CRI_PERCENT_ANGEL 125
RDMOPT_RACE_CRI_PERCENT_DRAGON 126
RDMOPT_RACE_IGNORE_DEF_PERCENT_NOTHING 127
RDMOPT_RACE_IGNORE_DEF_PERCENT_UNDEAD 128
RDMOPT_RACE_IGNORE_DEF_PERCENT_ANIMAL 129
RDMOPT_RACE_IGNORE_DEF_PERCENT_PLANT 130
RDMOPT_RACE_IGNORE_DEF_PERCENT_INSECT 131
RDMOPT_RACE_IGNORE_DEF_PERCENT_FISHS 132
RDMOPT_RACE_IGNORE_DEF_PERCENT_DEVIL 133
RDMOPT_RACE_IGNORE_DEF_PERCENT_HUMAN 134
RDMOPT_RACE_IGNORE_DEF_PERCENT_ANGEL 135
RDMOPT_RACE_IGNORE_DEF_PERCENT_DRAGON 136
RDMOPT_RACE_IGNORE_MDEF_PERCENT_NOTHING 137
RDMOPT_RACE_IGNORE_MDEF_PERCENT_UNDEAD 138
RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANIMAL 139
RDMOPT_RACE_IGNORE_MDEF_PERCENT_PLANT 140
RDMOPT_RACE_IGNORE_MDEF_PERCENT_INSECT 141
RDMOPT_RACE_IGNORE_MDEF_PERCENT_FISHS 142
RDMOPT_RACE_IGNORE_MDEF_PERCENT_DEVIL 143
RDMOPT_RACE_IGNORE_MDEF_PERCENT_HUMAN 144
RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANGEL 145
RDMOPT_RACE_IGNORE_MDEF_PERCENT_DRAGON 146
RDMOPT_CLASS_DAMAGE_NORMAL_TARGET 147
RDMOPT_CLASS_DAMAGE_BOSS_TARGET 148
RDMOPT_CLASS_DAMAGE_NORMAL_USER 149
RDMOPT_CLASS_DAMAGE_BOSS_USER 150
RDMOPT_CLASS_MDAMAGE_NORMAL 151
RDMOPT_CLASS_MDAMAGE_BOSS 152
RDMOPT_CLASS_IGNORE_DEF_PERCENT_NORMAL 153
RDMOPT_CLASS_IGNORE_DEF_PERCENT_BOSS 154
RDMOPT_CLASS_IGNORE_MDEF_PERCENT_NORMAL 155
RDMOPT_CLASS_IGNORE_MDEF_PERCENT_BOSS 156
RDMOPT_DAMAGE_SIZE_SMALL_TARGET 157
RDMOPT_DAMAGE_SIZE_MIDIUM_TARGET 158
RDMOPT_DAMAGE_SIZE_LARGE_TARGET 159
RDMOPT_DAMAGE_SIZE_SMALL_USER 160
RDMOPT_DAMAGE_SIZE_MIDIUM_USER 161
RDMOPT_DAMAGE_SIZE_LARGE_USER 162
RDMOPT_DAMAGE_SIZE_PERFECT 163
RDMOPT_DAMAGE_CRI_TARGET 164
RDMOPT_DAMAGE_CRI_USER 165
RDMOPT_RANGE_ATTACK_DAMAGE_TARGET 166
RDMOPT_RANGE_ATTACK_DAMAGE_USER 167
RDMOPT_HEAL_VALUE 168
RDMOPT_HEAL_MODIFY_PERCENT 169
RDMOPT_DEC_SPELL_CAST_TIME 170
RDMOPT_DEC_SPELL_DELAY_TIME 171
RDMOPT_DEC_SP_CONSUMPTION 172
RDMOPT_HP_DRAIN 173
RDMOPT_SP_DRAIN 174
RDMOPT_WEAPON_ATTR_NOTHING 175
RDMOPT_WEAPON_ATTR_WATER 176
RDMOPT_WEAPON_ATTR_GROUND 177
RDMOPT_WEAPON_ATTR_FIRE 178
RDMOPT_WEAPON_ATTR_WIND 179
RDMOPT_WEAPON_ATTR_POISON 180
RDMOPT_WEAPON_ATTR_SAINT 181
RDMOPT_WEAPON_ATTR_DARKNESS 182
RDMOPT_WEAPON_ATTR_TELEKINESIS 183
RDMOPT_WEAPON_ATTR_UNDEAD 184
RDMOPT_WEAPON_INDESTRUCTIBLE 185
RDMOPT_BODY_INDESTRUCTIBLE 186
RDMOPT_MDAMAGE_SIZE_SMALL_TARGET 187
RDMOPT_MDAMAGE_SIZE_MIDIUM_TARGET 188
RDMOPT_MDAMAGE_SIZE_LARGE_TARGET 189
RDMOPT_MDAMAGE_SIZE_SMALL_USER 190
RDMOPT_MDAMAGE_SIZE_MIDIUM_USER 191
RDMOPT_MDAMAGE_SIZE_LARGE_USER 192
//RDMOPT_ATTR_TOLERACE_ALL 193
SWORDCLAN 1
ARCWANDCLAN 2
GOLDENMACECLAN 3
CROSSBOWCLAN 4
JUMPINGCLAN 5
// TESTE
RDMOPTG_KNIFE 1