diff options
-rw-r--r-- | db/mob_db2.conf | 6 | ||||
-rw-r--r-- | db/pet_db2.conf | 41 | ||||
-rw-r--r-- | db/pre-re/mob_db.conf | 4 | ||||
-rw-r--r-- | db/re/item_combo_db.conf | 8 | ||||
-rw-r--r-- | db/re/item_db.conf | 339 | ||||
-rw-r--r-- | db/re/mob_db.conf | 902 | ||||
-rw-r--r-- | db/re/mob_skill_db.conf | 65 | ||||
-rw-r--r-- | db/re/pet_db.conf | 1542 | ||||
-rw-r--r-- | doc/constants.md | 77 | ||||
-rw-r--r-- | sql-files/item_db_re.sql | 50 | ||||
-rw-r--r-- | sql-files/mob_db_re.sql | 31 | ||||
-rw-r--r-- | sql-files/mob_skill_db_re.sql | 8 | ||||
-rw-r--r-- | src/map/atcommand.c | 37 | ||||
-rw-r--r-- | src/map/map.c | 8 | ||||
-rw-r--r-- | src/map/mob.c | 9 | ||||
-rw-r--r-- | src/map/pc.c | 80 | ||||
-rw-r--r-- | src/map/pc.h | 2 | ||||
-rw-r--r-- | src/map/pet.c | 20 | ||||
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/status.c | 4 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking.Defs.inc | 4 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc | 8 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc | 2 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 52 |
24 files changed, 2970 insertions, 333 deletions
diff --git a/db/mob_db2.conf b/db/mob_db2.conf index 8cc1a1459..ef3b631f2 100644 --- a/db/mob_db2.conf +++ b/db/mob_db2.conf @@ -57,9 +57,9 @@ mob_db: ( } ViewRange: view range (int, defaults to 1) ChaseRange: chase range (int, defaults to 1) - Size: size (int, defaults to 1) - Race: race (int, defaults to 0) - Element: (type, level) + Size: size (string, defaults to "Size_Small") + Race: race (string, defaults to "RC_Formless") + Element: (type, level) (string/int, defaults to "Ele_Neutral"/1) Mode: { CanMove: true/false (bool, defaults to false) Looter: true/false (bool, defaults to false) diff --git a/db/pet_db2.conf b/db/pet_db2.conf index d6862da32..235e41c0b 100644 --- a/db/pet_db2.conf +++ b/db/pet_db2.conf @@ -34,30 +34,39 @@ pet_db:( { // ================ Mandatory fields ============================== Id: ID (int) - SpriteName: "Sprite_Name" (string) Name: "Pet Name" (string) + EggItem: "Egg Item Constant" (string) // ================ Optional fields =============================== - TamingItem: Taming Item (string, defaults to 0) - EggItem: Egg Id (string, defaults to 0) - AccessoryItem: Equipment Id (string, defaults to 0) - FoodItem: Food Id (string, defaults to 0) - FoodEffectiveness: hunger points (int, defaults to 0) - HungerDelay: hunger time (int, defaults to 0) + TamingItem: "Taming Item Constant" (string, defaults to 0) + FoodItem: "Food Item Constant" (string, defaults to "Pet_Food" (ID=537)) + AccessoryItem: "Equipment Item Constant" (string, defaults to 0) + FoodEffectiveness: hunger points (int, defaults to 80) + HungerDelay: hunger time (int, defaults to 60) + HungerDecrement: hunger points (int, defaults to 1) Intimacy: { - Initial: start intimacy (int, defaults to 0) - FeedIncrement: feeding intimacy (int, defaults to 0) - OverFeedDecrement: overfeeding intimacy (int, defaults to 0) - OwnerDeathDecrement: owner die intimacy (int, defaults to 0) + Initial: start intimacy (int, defaults to 250) + FeedIncrement: feeding intimacy (int, defaults to 10) + OverFeedDecrement: overfeeding intimacy (int, defaults to 100) + OwnerDeathDecrement: owner die intimacy (int, defaults to 20) + StarvingDelay: starving time (int, defaults to 20) + StarvingDecrement: starving intimacy (int, defaults to 20) } - CaptureRate: capture rate (int, defaults to 0) - Speed: speed (int, defaults to 0) + CaptureRate: capture rate (int, defaults to 1000) + Speed: speed (int, defaults to 150) SpecialPerformance: true/false (boolean, defaults to false) TalkWithEmotes: convert talk (boolean, defaults to false) - AttackRate: attack rate (int, defaults to 0) - DefendRate: Defence attack (int, defaults to 0) - ChangeTargetRate: change target (int, defaults to 0) + AttackRate: attack rate (int, defaults to 300) + DefendRate: Defence attack (int, defaults to 300) + ChangeTargetRate: change target (int, defaults to 800) + AutoFeed: true/false (boolean, defaults to false) PetScript: <" Pet Script (can also be multi-line) "> EquipScript: <" Equip Script (can also be multi-line) "> + Evolve: { + EggID: { (string, Evolved Pet EggID) + Name: Amount (items required to perform evolution) + ... + } + } }, **************************************************************************/ // entries in this file will override the ones in /(pre-)re/pet_db.conf diff --git a/db/pre-re/mob_db.conf b/db/pre-re/mob_db.conf index 78e255f36..92fd149f3 100644 --- a/db/pre-re/mob_db.conf +++ b/db/pre-re/mob_db.conf @@ -57,9 +57,9 @@ mob_db: ( } ViewRange: view range (int, defaults to 1) ChaseRange: chase range (int, defaults to 1) - Size: size (string, defaults to "Size_Medium") + Size: size (string, defaults to "Size_Small") Race: race (string, defaults to "RC_Formless") - Element: (type, level) + Element: (type, level) (string/int, defaults to "Ele_Neutral"/1) Mode: { CanMove: true/false (bool, defaults to false) Looter: true/false (bool, defaults to false) diff --git a/db/re/item_combo_db.conf b/db/re/item_combo_db.conf index 31630546a..668b4bac0 100644 --- a/db/re/item_combo_db.conf +++ b/db/re/item_combo_db.conf @@ -3221,4 +3221,12 @@ combo_db: ( bonus2 bVariableCastrate, "WL_JACKFROST", -.@r; "> }, +{ + Items: ["Rigid_Nightmare_Terror_Card", "Nightmare_Terror_Card"] + Script: <" bonus(bAtkRate, 10); "> +}, +{ + Items: ["Rigid_Nightmare_Terror_Card", "Nightmare_Card"] + Script: <" bonus(bMaxSPrate, 10); "> +}, ) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index cf2bd7da2..eec334d18 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -70646,6 +70646,8 @@ item_db: ( Id: 6221 AegisName: "Mystic_Leaf_Cat_Ball" Name: "Mystic Hydra Ball" + Type: "IT_PETEGG" + Buy: 20 }, { Id: 6222 @@ -74426,6 +74428,18 @@ item_db: ( Weight: 10 }, { + Id: 6669 + AegisName: "Emerald_Leaf" + Name: "Emerald Leaf" + Weight: 10 +}, +{ + Id: 6670 + AegisName: "Log_" + Name: "Tree Log" + Weight: 10 +}, +{ Id: 6671 AegisName: "Geffen_Magic_Coin" Name: "Geffen Magic Tournament Coin" @@ -74540,6 +74554,30 @@ item_db: ( Weight: 10 }, { + Id: 6762 + AegisName: "Banana_Can" + Name: "Banana Can" + Weight: 10 +}, +{ + Id: 6763 + AegisName: "Spicy_Rice_Cake" + Name: "Spicy Rice Cake" + Weight: 10 +}, +{ + Id: 6764 + AegisName: "Hot_Dog" + Name: "Hot Dog" + Weight: 10 +}, +{ + Id: 6765 + AegisName: "Ferris_Wheel_Biscuit" + Name: "Ferris Wheel Biscuit" + Weight: 10 +}, +{ Id: 6804 AegisName: "ORGANIC_PUMPKIN" Name: "Organic Pumpkin" @@ -83636,6 +83674,48 @@ item_db: ( Buy: 20 }, { + Id: 9063 + AegisName: "Woodie_Egg" + Name: "Woodie Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9064 + AegisName: "Elephant_Egg" + Name: "Elephant Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9065 + AegisName: "Gorilla_Egg" + Name: "Gorilla Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9066 + AegisName: "Lion_Egg" + Name: "Lion Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9067 + AegisName: "Rhino_Egg" + Name: "Rhino Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9068 + AegisName: "Blue_Unicorn_Egg" + Name: "Blue Unicorn Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ Id: 9069 AegisName: "Mastering_Egg" Name: "Mastering Egg" @@ -83657,6 +83737,55 @@ item_db: ( Buy: 20 }, { + Id: 9074 + AegisName: "Rubylit_Egg" + Name: "Rubylit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9075 + AegisName: "Sapphilit_Egg" + Name: "Sapphilit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9076 + AegisName: "Emelit_Egg" + Name: "Emelit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9077 + AegisName: "Topalit_Egg" + Name: "Topalit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9078 + AegisName: "Amelit_Egg" + Name: "Amelit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9079 + AegisName: "Mythlit_Egg" + Name: "Mythlit Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9080 + AegisName: "Tamadora_Egg" + Name: "Tamadora Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ Id: 9087 AegisName: "High_Orc_Egg" Name: "High Orc Egg" @@ -83844,6 +83973,76 @@ item_db: ( Name: "Ein_Ddbox" }, { + Id: 9115 + AegisName: "Bacsojin2_Egg_" + Name: "Bacsojin Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9116 + AegisName: "Rigid_Nightmare_Terror_Egg" + Name: "Rigid Nightmare Terror Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9117 + AegisName: "Contaminated_Wanderer_Egg" + Name: "Contaminated Wanderer Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9118 + AegisName: "Aliot_Egg" + Name: "Aliot Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9119 + AegisName: "Alicel_Egg" + Name: "Alicel Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9120 + AegisName: "Aliza_Egg" + Name: "Aliza Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9121 + AegisName: "Orc_Hero_Egg_" + Name: "Orc Hero Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9122 + AegisName: "Gloom_Under_Night_Egg" + Name: "Gloom Under Night Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9123 + AegisName: "Child_Admin_Beta_Egg" + Name: "Child Admin Beta Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ + Id: 9124 + AegisName: "Child_Admin_Alpha_Egg" + Name: "Child Admin Alpha Egg" + Type: "IT_PETEGG" + Buy: 20 +}, +{ Id: 9523 AegisName: "Metal_Rifine_Ticket" Name: "Metal_Rifine_Ticket" @@ -84139,9 +84338,32 @@ item_db: ( Buy: 20 }, { + Id: 10040 + AegisName: "Red_Bell_Necklace" + Name: "Red Bell Necklace" + Type: "IT_PETARMOR" + Buy: 20 +}, +{ Id: 10042 AegisName: "Dark_Mane" Name: "Dark_Mane" + Type: "IT_PETARMOR" + Buy: 20 +}, +{ + Id: 10043 + AegisName: "Little_Headdress_Beta" + Name: "Little Headdress Beta" + Type: "IT_PETARMOR" + Buy: 20 +}, +{ + Id: 10044 + AegisName: "Little_Headdress_Alpha" + Name: "Little Headdress Alpha" + Type: "IT_PETARMOR" + Buy: 20 }, //== Misc "Etc" Books ====================================== @@ -85340,6 +85562,14 @@ item_db: ( Script: <" itemheal rand(10,40),0; "> }, { + Id: 11605 + AegisName: "Cookie_Bat" + Name: "Cookie Bat" + Type: "IT_HEALING" + Weight: 50 + Script: <" itemheal(rand(50, 100), 0); "> +}, +{ Id: 11607 AegisName: "Crepe" Name: "Crepe" @@ -85375,6 +85605,13 @@ item_db: ( Name: "Sweet_Potato_" }, { + Id: 11616 + AegisName: "Yummy_Meat" + Name: "Yummy Meat" + Type: "IT_HEALING" + Weight: 50 +}, +{ Id: 11620 AegisName: "Bearopy" Name: "Bearopy" @@ -148798,6 +149035,36 @@ item_db: ( Script: <" Zeny += rand(500, 550); "> }, { + Id: 23187 + AegisName: "Sap_Jelly" + Name: "Sap Jelly" + Type: "IT_USABLE" + Nouse: { + sitting: true + } + Script: <" pet(NINE_TAIL); "> +}, +{ + Id: 23188 + AegisName: "Unprocessed_Parts" + Name: "Unprocessed Parts" + Type: "IT_USABLE" + Nouse: { + sitting: true + } + Script: <" pet(GREMLIN); "> +}, +{ + Id: 23189 + AegisName: "SmallDoll_Needle" + Name: "Small Doll Needle" + Type: "IT_USABLE" + Nouse: { + sitting: true + } + Script: <" pet(TEDDY_BEAR); "> +}, +{ Id: 23242 AegisName: "Fried_Chicken" Name: "Fried_Chicken" @@ -153745,6 +154012,24 @@ item_db: ( Weight: 1200 }, { + Id: 25231 + AegisName: "Suspicious_Bottle" + Name: "Suspicious Bottle" + Weight: 10 +}, +{ + Id: 25232 + AegisName: "Cheap_Lubricant" + Name: "Cheap Lubricant" + Weight: 10 +}, +{ + Id: 25233 + AegisName: "Cotton_Tufts" + Name: "Cotton Tufts" + Weight: 10 +}, +{ Id: 25258 AegisName: "BrokenArrow" Name: "BrokenArrow" @@ -153790,6 +154075,12 @@ item_db: ( Name: "Mightysoul_Essence" }, { + Id: 25377 + AegisName: "Luxurious_Pet_Food" + Name: "Luxurious Pet Food" + Weight: 1 +}, +{ Id: 25390 AegisName: "Captured_Savage" Name: "Captured_Savage" @@ -154585,6 +154876,29 @@ item_db: ( bonus2(bSkillAtk, RL_HAMMER_OF_GOD, getrefine() >= 10 ? 60 : 30); "> }, +{ + Id: 27352 + AegisName: "Rigid_Nightmare_Terror_Card" + Name: "Rigid Nightmare Terror Card" + Type: "IT_CARD" + Buy: 20 + Weight: 10 + Loc: "EQP_SHOES" + Script: <" bonus(bMaxSPrate, 5); "> +}, +{ + Id: 27361 + AegisName: "Contaminated_Wanderer_Card" + Name: "Contaminated Wanderer Card" + Type: "IT_CARD" + Buy: 20 + Weight: 10 + Loc: "EQP_WEAPON" + Script: <" + bonus2(bAddSize,Size_Medium, 30); + bonus2(bAddSize,Size_Large, 30); + "> +}, //== New Katars ============================================ { @@ -156454,6 +156768,19 @@ item_db: ( Name: "Shinee_Opal" }, { + Id: 31022 + AegisName: "Abandoned_Teddy_Bear_Card" + Name: "Abandoned Teddy Bear Card" + Type: "IT_CARD" + Buy: 20 + Weight: 10 + Loc: "EQP_SHOES" + Script: <" + bonus(bMaxSPrate, 20); + bonus2(bAddEff2, Eff_Curse, 20); + "> +}, +{ Id: 31172 AegisName: "Roast_Memory" Name: "Roast_Memory" @@ -157919,6 +158246,12 @@ item_db: ( Name: "ArchbishopStone_Robe2" }, { + Id: 1000103 + AegisName: "Barmil_Ticket" + Name: "Barmil Ticket" + Weight: 10 +}, +{ Id: 1000213 AegisName: "WarlockStone_Robe2" Name: "WarlockStone_Robe2" @@ -157978,4 +158311,10 @@ item_db: ( AegisName: "AssacrossStone_Bottom2" Name: "AssacrossStone_Bottom2" }, +{ + Id: 1000227 + AegisName: "Cloud_Cotton" + Name: "Cloud Cotton" + Weight: 10 +}, ) diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index 492b75a04..99518c461 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -57,9 +57,9 @@ mob_db: ( } ViewRange: view range (int, defaults to 1) ChaseRange: chase range (int, defaults to 1) - Size: size (string, defaults to "Size_Medium") + Size: size (string, defaults to "Size_Small") Race: race (string, defaults to "RC_Formless") - Element: (type, level) + Element: (type, level) (string/int, defaults to "Ele_Neutral"/1) Mode: { CanMove: true/false (bool, defaults to false) Looter: true/false (bool, defaults to false) @@ -83701,7 +83701,46 @@ mob_db: ( DamageMotion: 360 }, //2962,E_DEVILING -//2963,WOODIE +{ + Id: 2963 + SpriteName: "WOODIE" + Name: "Woodie" + Hp: 60 + Exp: 18 + JExp: 10 + Attack: [13, 3] + Def: 2 + Mdef: 5 + Stats: { + Str: 6 + Agi: 1 + Vit: 1 + Dex: 6 + Luk: 5 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Plant" + Element: ("Ele_Water", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 400 + AttackDelay: 1872 + AttackMotion: 672 + DamageMotion: 480 + Drops: { + Solid_Twig: 2000 + Resin: 2000 + Log: 2000 + Wooden_Block: 2000 + Oridecon_Stone: 200 + Log_: 5000 + Woodie_Card: 300 + } +}, //2964,EXP_1000 //2965,TW_APOCALIPS_H //2966,TW_B_EREMES @@ -83733,7 +83772,53 @@ mob_db: ( //2992,XM_LUDE //2993,XM_HYLOZOIST //2994,XM_MARIONETTE -//2995,XM_TEDDY_BEAR +{ + Id: 2995 + SpriteName: "XM_TEDDY_BEAR" + Name: "Abandoned Teddy Bear" + Lv: 148 + Hp: 180000 + Exp: 6666 + JExp: 7332 + Attack: [1347, 577] + Def: 106 + Mdef: 44 + Stats: { + Str: 44 + Agi: 166 + Vit: 44 + Int: 44 + Dex: 166 + Luk: 44 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Demon" + Element: ("Ele_Undead", 3) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 150 + AttackDelay: 512 + AttackMotion: 780 + DamageMotion: 504 + Drops: { + Screw: 1900 + Oridecon_Hammer: 150 + Str_Dish09: 100 + Runstone_Quality: 1000 + Runstone_Rare: 100 + Abandoned_Teddy_Bear_Card: 1 + } +}, { Id: 2996 SpriteName: "XM_CELINE_KIMI" @@ -84009,6 +84094,142 @@ mob_db: ( //3154,RECON_ROBOT //3155,REPAIR_ROBOT //3156,EXPLORATION_ROVER +{ + Id: 3162 + SpriteName: "ELEPHANT" + Name: "Elephant" + Lv: 48 + Hp: 1080 + Exp: 184 + JExp: 207 + Attack: [184, 48] + Def: 70 + Mdef: 30 + Stats: { + Str: 40 + Agi: 45 + Vit: 32 + Int: 19 + Dex: 42 + Luk: 20 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Brute" + Element: ("Ele_Fire", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 150 + AttackDelay: 1028 + AttackMotion: 528 + DamageMotion: 360 +}, +{ + Id: 3163 + SpriteName: "GORILLA" + Name: "Gorilla" + Lv: 48 + Hp: 1080 + Exp: 184 + JExp: 207 + Attack: [184, 48] + Def: 70 + Mdef: 30 + Stats: { + Str: 40 + Agi: 45 + Vit: 32 + Int: 19 + Dex: 42 + Luk: 20 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Brute" + Element: ("Ele_Fire", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 190 + AttackDelay: 1028 + AttackMotion: 528 + DamageMotion: 360 +}, +{ + Id: 3164 + SpriteName: "LION" + Name: "Lion" + Lv: 48 + Hp: 1080 + Exp: 184 + JExp: 207 + Attack: [184, 48] + Def: 70 + Mdef: 30 + Stats: { + Str: 40 + Agi: 45 + Vit: 32 + Int: 19 + Dex: 42 + Luk: 20 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Brute" + Element: ("Ele_Fire", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 150 + AttackDelay: 1028 + AttackMotion: 528 + DamageMotion: 360 +}, +{ + Id: 3165 + SpriteName: "RHINO" + Name: "Rhino" + Lv: 48 + Hp: 1080 + Exp: 184 + JExp: 207 + Attack: [184, 48] + Def: 70 + Mdef: 30 + Stats: { + Str: 40 + Agi: 45 + Vit: 32 + Int: 19 + Dex: 42 + Luk: 20 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Brute" + Element: ("Ele_Fire", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 150 + AttackDelay: 1028 + AttackMotion: 528 + DamageMotion: 360 +}, //3166,M_E_DEVILING { Id: 3169 @@ -84387,7 +84608,38 @@ mob_db: ( DamageMotion: 480 MvpExp: 0 },*/ - +{ + Id: 3261 + SpriteName: "BLUE_UNICORN" + Name: "Blue Unicorn" + Lv: 30 + Hp: 20 + Exp: 99 + JExp: 112 + Attack: [106, 29] + Def: 36 + Mdef: 17 + Stats: { + Str: 17 + Agi: 26 + Vit: 20 + Int: 18 + Dex: 36 + Luk: 5 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Plant" + Element: ("Ele_Poison", 1) + Mode: { + CanMove: true + CanAttack: true + } + MoveSpeed: 300 + AttackDelay: 1672 + AttackMotion: 672 + DamageMotion: 480 +}, //3295,G_MOBSTER //3296,HIDDEN_TEST //3297,PAD_LEVIATHAN @@ -84398,7 +84650,11 @@ mob_db: ( //3303,PAD_HELHEIM //3304,PAD_MUSPELHEIM //3305,PAD_ZAEROG -//3306,PAD_TAMADORA +{/* jRO exclusive pet. No stats required. */ + Id: 3306 + SpriteName: "PAD_TAMADORA" + Name: "Tamadora" +}, //3307,PAD_TAMADORABABY //3308,ROC_EMPELIUM //3309,ROC_OBJ_A @@ -84409,11 +84665,31 @@ mob_db: ( //3314,SMOKIE_THIEF //3315,PAD_KINGGOLD //3316,PAD_KINGMETAL -//3317,PAD_RUBYLIT -//3318,PAD_SAPPHILIT -//3319,PAD_EMELIT -//3320,PAD_TOPALIT -//3321,PAD_AMELIT +{/* jRO exclusive pet. No stats required. */ + Id: 3317 + SpriteName: "PAD_RUBYLIT" + Name: "Rubylit" +}, +{/* jRO exclusive pet. No stats required. */ + Id: 3318 + SpriteName: "PAD_SAPPHILIT" + Name: "Sapphilit" +}, +{/* jRO exclusive pet. No stats required. */ + Id: 3319 + SpriteName: "PAD_EMELIT" + Name: "Emelit" +}, +{/* jRO exclusive pet. No stats required. */ + Id: 3320 + SpriteName: "PAD_TOPALIT" + Name: "Topalit" +}, +{/* jRO exclusive pet. No stats required. */ + Id: 3321 + SpriteName: "PAD_AMELIT" + Name: "Amelit" +}, //3322,PAD_METAL_DRAGON //3323,PAD_M_FLAME_KNIGHT //3324,PAD_M_ICE_KNIGHT @@ -84441,7 +84717,11 @@ mob_db: ( //3346,PAD_SIREN_H //3347,PAD_LILITH_H //3348,PAD_HERA_H -//3349,PAD_MYTHLIT +{/* jRO exclusive pet. No stats required. */ + Id: 3349 + SpriteName: "PAD_MYTHLIT" + Name: "Mythlit" +}, //3350,PAD_TYRRA //3351,PAD_TYRANNOS //3352,PAD_PLESSIE @@ -84530,4 +84810,602 @@ mob_db: ( Captured_Soul: 4000 } }, +{ + Id: 3495 + SpriteName: "DR_EGGRING" + Name: "Eggring" + Hp: 50 + Exp: 50 + JExp: 35 + Attack: [7, 1] + Def: 2 + Mdef: 4 + Stats: { + Str: 6 + Agi: 1 + Vit: 1 + Dex: 6 + Luk: 4 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Plant" + Element: ("Ele_Earth", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 400 + AttackDelay: 1872 + AttackMotion: 672 + DamageMotion: 480 + Drops: { + Jellopy: 7000 + Apple: 1000 + Sticky_Mucus: 400 + Phracon: 30 + Wing_Of_Fly: 500 + Apple: 150 + Apple: 20 + Eggring_Card: 20 + } +}, +{ + Id: 3496 + SpriteName: "DR_LUNATIC" + Name: "Leaf Lunatic" + Lv: 3 + Hp: 44 + Exp: 50 + JExp: 35 + Attack: [12, 1] + Def: 16 + Stats: { + Str: 9 + Agi: 1 + Vit: 2 + Dex: 7 + Luk: 4 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Brute" + Element: ("Ele_Neutral", 3) + Mode: { + CanMove: true + CanAttack: true + } + MoveSpeed: 200 + AttackDelay: 1456 + AttackMotion: 456 + DamageMotion: 336 + Drops: { + Clover: 7000 + Feather: 3000 + Pierrot_Nose: 4 + Apple: 1000 + Wing_Of_Fly: 500 + Carrot: 3000 + Phracon: 30 + Leaf_Lunatic_Card: 10 + } +}, +{ + Id: 3636 + SpriteName: "LITTLE_ISIS" + Name: "Little Isis" + Lv: 59 + Hp: 2092 + Exp: 279 + JExp: 298 + Attack: [278, 81] + Def: 83 + Mdef: 5 + Stats: { + Str: 58 + Agi: 43 + Vit: 22 + Int: 5 + Dex: 43 + Luk: 15 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Large" + Race: "RC_Demon" + Element: ("Ele_Dark", 1) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + CanAttack: true + Detector: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 200 + AttackDelay: 1384 + AttackMotion: 768 + DamageMotion: 336 +}, +{ + Id: 3669 + SpriteName: "DIABOLIC2" + Name: "Diabolic2" + Lv: 104 + Hp: 10572 + Exp: 1086 + JExp: 1073 + Attack: [772, 283] + Def: 68 + Mdef: 61 + Stats: { + Str: 103 + Agi: 80 + Vit: 53 + Int: 65 + Dex: 94 + Luk: 25 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Demon" + Element: ("Ele_Dark", 2) + Mode: { + CanMove: true + Aggressive: true + CanAttack: true + Detector: true + Angry: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 150 + AttackDelay: 1080 + AttackMotion: 780 + DamageMotion: 180 +}, +{ + Id: 3670 + SpriteName: "DELETER_2" + Name: "Deleter 2" + Lv: 105 + Hp: 10000 + Exp: 1049 + JExp: 1038 + Attack: [733, 265] + Def: 114 + Mdef: 53 + Stats: { + Str: 98 + Agi: 72 + Vit: 65 + Int: 49 + Dex: 68 + Luk: 71 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Dragon" + Element: ("Ele_Fire", 2) + Mode: { + CanMove: true + Aggressive: true + Assist: true + CanAttack: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 175 + AttackDelay: 1024 + AttackMotion: 624 + DamageMotion: 336 +}, +{ + Id: 3731 + SpriteName: "SCATLETON" + Name: "Scatleton" + Lv: 14 + Hp: 140 + Attack: [50, 13] + Def: 13 + Stats: { + Str: 10 + Agi: 12 + Vit: 8 + Int: 5 + Dex: 17 + Luk: 7 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Demon" + Element: ("Ele_Dark", 1) + Mode: { + CanMove: true + Aggressive: true + CanAttack: true + } + MoveSpeed: 300 + AttackDelay: 1600 + AttackMotion: 900 + DamageMotion: 240 +}, +{ + Id: 3790 + SpriteName: "SWEETS_DROPS" + Name: "Sweets Drops" + Lv: 1 + Hp: 20 + Exp: 27 + JExp: 20 + Attack: [12, 1] + Def: 16 + Stats: { + Str: 1 + Agi: 1 + Vit: 1 + Int: 1 + Dex: 1 + Luk: 1 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Plant" + Element: ("Ele_Fire", 1) + Mode: { + CanMove: true + Looter: true + CanAttack: true + } + MoveSpeed: 440 + AttackDelay: 1372 + AttackMotion: 672 + DamageMotion: 480 +}, +{ + Id: 3971 + SpriteName: "SKELION" + Name: "Skelion" + Lv: 150 + Hp: 13000 + Exp: 594 + JExp: 669 + Attack: [222, 56] + Def: 88 + Mdef: 16 + Stats: { + Str: 25 + Agi: 16 + Vit: 12 + Int: 45 + Dex: 33 + Luk: 29 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Small" + Race: "RC_Formless" + Element: ("Ele_Neutral", 1) + Mode: { + CanMove: true + Aggressive: true + Boss: true + CanAttack: true + } + MoveSpeed: 150 + AttackDelay: 960 + AttackMotion: 864 + DamageMotion: 0 +}, +{ + Id: 20373 + SpriteName: "NIGHTMARE_TERROR_H" + Name: "Rigid Nightmare Terror" + Lv: 179 + Hp: 1523377 + Exp: 138489 + JExp: 96942 + Attack: [1709, 725] + Def: 242 + Mdef: 75 + Stats: { + Str: 81 + Agi: 149 + Vit: 21 + Int: 186 + Dex: 129 + Luk: 61 + } + ViewRange: 12 + ChaseRange: 10 + Size: "Size_Large" + Race: "RC_Demon" + Element: ("Ele_Dark", 3) + Mode: { + CanMove: true + Aggressive: true + CanAttack: true + Detector: true + Angry: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 165 + AttackDelay: 1216 + AttackMotion: 816 + DamageMotion: 432 + Drops: { + Rigid_Nightmare_Terror_Card: 10 + } +}, +{ + Id: 20420 + SpriteName: "WANDER_MAN_H" + Name: "Corrupted Wanderer" + Lv: 187 + Hp: 2387582 + Exp: 170542 + JExp: 119379 + Attack: [3654, 1645] + Def: 289 + Mdef: 102 + Stats: { + Str: 176 + Agi: 121 + Vit: 34 + Int: 67 + Dex: 139 + Luk: 77 + } + ViewRange: 10 + ChaseRange: 12 + Race: "RC_Demon" + Element: ("Ele_Wind", 2) + Mode: { + CanMove: true + Aggressive: true + CanAttack: true + Detector: true + Angry: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 100 + AttackDelay: 672 + AttackMotion: 500 + DamageMotion: 192 + Drops: { + Contaminated_Wanderer_Card: 10 + } +}, +{ + Id: 20423 + SpriteName: "BACSOJIN2" + Name: "Bacsojin" + Lv: 97 + Hp: 720500 + Sp: 1 + Exp: 801792 + JExp: 542880 + AttackRange: 3 + Attack: [1414, 2036] + Def: 210 + Mdef: 178 + Stats: { + Str: 118 + Agi: 244 + Vit: 98 + Int: 126 + Dex: 246 + Luk: 102 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Large" + Race: "RC_DemiHuman" + Element: ("Ele_Wind", 3) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + Boss: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 130 + AttackDelay: 576 + AttackMotion: 960 + DamageMotion: 480 +}, +{ + Id: 20424 + SpriteName: "MOONLIGHT2" + Name: "Moonlight Flower" + Lv: 79 + Hp: 324000 + Sp: 1 + Exp: 367488 + JExp: 271440 + AttackRange: 1 + Attack: [2232, 1251] + Def: 254 + Mdef: 81 + Stats: { + Str: 86 + Agi: 102 + Vit: 93 + Int: 82 + Dex: 157 + Luk: 120 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Medium" + Race: "RC_Demon" + Element: ("Ele_Fire", 3) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + Boss: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 150 + AttackDelay: 1276 + AttackMotion: 576 + DamageMotion: 288 +}, +{ + Id: 20425 + SpriteName: "PHREEONI2" + Name: "Phreeoni" + Lv: 71 + Hp: 300000 + Sp: 1 + Exp: 127600 + JExp: 180000 + AttackRange: 1 + Attack: [693, 967] + Def: 269 + Mdef: 98 + Stats: { + Str: 88 + Agi: 70 + Vit: 112 + Int: 87 + Dex: 122 + Luk: 71 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Large" + Race: "RC_Brute" + Element: ("Ele_Neutral", 3) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + Boss: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 200 + AttackDelay: 1020 + AttackMotion: 1020 + DamageMotion: 288 +}, +{ + Id: 20571 + SpriteName: "ORK_HERO2" + Name: "Orc Hero" + Lv: 50 + Hp: 362000 + Sp: 1 + Exp: 106920 + JExp: 97200 + AttackRange: 1 + Attack: [662, 441] + Def: 197 + Mdef: 70 + Stats: { + Str: 97 + Agi: 82 + Vit: 107 + Int: 71 + Dex: 144 + Luk: 43 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Large" + Race: "RC_DemiHuman" + Element: ("Ele_Earth", 2) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + Boss: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 150 + AttackDelay: 1678 + AttackMotion: 780 + DamageMotion: 648 +}, +{ + Id: 20619 + SpriteName: "GLOOMUNDERNIGHT2" + Name: "Gloom Under Night" + Lv: 139 + Hp: 3005000 + Sp: 1 + Exp: 2808000 + JExp: 1800000 + AttackRange: 3 + Attack: [6592, 2785] + Def: 479 + Mdef: 262 + Stats: { + Str: 191 + Agi: 223 + Vit: 187 + Int: 155 + Dex: 362 + Luk: 163 + } + ViewRange: 10 + ChaseRange: 12 + Size: "Size_Large" + Race: "RC_Formless" + Element: ("Ele_Ghost", 3) + Mode: { + CanMove: true + Aggressive: true + CastSensorIdle: true + Boss: true + CanAttack: true + Detector: true + CastSensorChase: true + ChangeChase: true + ChangeTargetMelee: true + ChangeTargetChase: true + } + MoveSpeed: 200 + AttackDelay: 1344 + AttackMotion: 2880 + DamageMotion: 576 +}, +{/** Needs info. No data found. Using dummy data for now to enable pet. **/ + Id: 20696 + SpriteName: "EP17_2_CHILD_ADMIN1" + Name: "Child Admin Beta" +}, +{/** Needs info. No data found. Using dummy data for now to enable pet. **/ + Id: 20697 + SpriteName: "EP17_2_CHILD_ADMIN2" + Name: "Child Admin Alpha" +}, ) diff --git a/db/re/mob_skill_db.conf b/db/re/mob_skill_db.conf index ee764ac9d..b7f1164da 100644 --- a/db/re/mob_skill_db.conf +++ b/db/re/mob_skill_db.conf @@ -100586,6 +100586,71 @@ mob_skill_db:( CastCondition: "MSC_ALWAYS" } } + WOODIE: { + AL_HEAL: { + SkillState: "MSS_BERSERK" + SkillLevel: 9 + Rate: 10000 + CastTime: 500 + Delay: 5000 + SkillTarget: "MST_SELF" + } + NPC_FIREATTACK: { + SkillState: "MSS_BERSERK" + SkillLevel: 3 + Rate: 2000 + CastTime: 500 + Delay: 5000 + SkillTarget: "MST_TARGET" + } + NPC_GROUNDATTACK: { + SkillState: "MSS_BERSERK" + SkillLevel: 3 + Rate: 2000 + CastTime: 500 + Delay: 5000 + SkillTarget: "MST_TARGET" + } + } + XM_TEDDY_BEAR: { + NPC_CURSEATTACK: { + SkillState: "MSS_BERSERK" + SkillLevel: 4 + Rate: 500 + Delay: 5000 + SkillTarget: "MST_SELF" + } + NPC_CURSEATTACK: { + SkillState: "MSS_FOLLOW" + SkillLevel: 4 + Rate: 500 + Delay: 5000 + SkillTarget: "MST_SELF" + } + NPC_CRITICALSLASH: { + SkillState: "MSS_BERSERK" + SkillLevel: 1 + Rate: 500 + Delay: 5000 + SkillTarget: "MST_TARGET" + } + SA_DISPELL: { + SkillState: "MSS_BERSERK" + SkillLevel: 1 + Rate: 50 + CastTime: 1000 + Delay: 15000 + SkillTarget: "MST_TARGET" + } + BS_HAMMERFALL: { + SkillState: "MSS_BERSERK" + SkillLevel: 5 + Rate: 500 + CastTime: 1000 + Delay: 5000 + SkillTarget: "MST_TARGET" + } + } TIMEHOLDER: { NPC_AGIUP: { SkillState: "MSS_BERSERK" diff --git a/db/re/pet_db.conf b/db/re/pet_db.conf index 3392a8191..f31131653 100644 --- a/db/re/pet_db.conf +++ b/db/re/pet_db.conf @@ -72,10 +72,11 @@ pet_db:( { Id: 1002 Name: "Poring" - TamingItem: "Unripe_Apple" EggItem: "Poring_Egg" - AccessoryItem: "Backpack" + TamingItem: "Unripe_Apple" FoodItem: "Apple_Juice" + AccessoryItem: "Backpack" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } @@ -85,7 +86,11 @@ pet_db:( DefendRate: 400 PetScript: <" petloot(10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bLuk, 3); + bonus(bCritical, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bLuk, 2); bonus(bCritical, 1); } @@ -100,9 +105,10 @@ pet_db:( { Id: 1011 Name: "ChonChon" - TamingItem: "Rotten_Fish" EggItem: "Chonchon_Egg" + TamingItem: "Rotten_Fish" AccessoryItem: "Monster_Oxygen_Mask" + HungerDecrement: 6 Intimacy: { FeedIncrement: 30 } @@ -113,7 +119,11 @@ pet_db:( ChangeTargetRate: 250 PetScript: <" petskillbonus(bAgi, 4, 10, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAgi, 2); + bonus(bFlee, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bAgi, 1); bonus(bFlee, 2); } @@ -122,9 +132,10 @@ pet_db:( { Id: 1014 Name: "Spore" - TamingItem: "Dew_Laden_Moss" EggItem: "Spore_Egg" + TamingItem: "Dew_Laden_Moss" AccessoryItem: "Bark_Shorts" + HungerDecrement: 3 Intimacy: { FeedIncrement: 30 } @@ -134,18 +145,20 @@ pet_db:( ChangeTargetRate: 500 PetScript: <" petrecovery(SC_POISON, 60); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bHit, 8); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bHit, 5); - bonus(bAtk, -2); - } "> }, { Id: 1019 Name: "PecoPeco" - TamingItem: "Fatty_Chubby_Earthworm" EggItem: "PecoPeco_Egg" + TamingItem: "Fatty_Chubby_Earthworm" AccessoryItem: "Battered_Pot" + HungerDecrement: 4 Intimacy: { FeedIncrement: 30 } @@ -154,10 +167,11 @@ pet_db:( DefendRate: 500 PetScript: <" petskillbonus(bSpeedRate, 25, 20, 20); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxHP, 200); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bMaxHP, 150); - bonus(bMaxSP, -10); - } "> Evolve: { Grand_Peco_Peco_Egg: { @@ -172,9 +186,10 @@ pet_db:( { Id: 1023 Name: "Orc Warrior" - TamingItem: "Horror_Of_Tribe" EggItem: "Orc_Warrior_Egg" + TamingItem: "Horror_Of_Tribe" AccessoryItem: "Wild_Flower" + HungerDecrement: 5 Intimacy: { FeedIncrement: 20 } @@ -185,10 +200,11 @@ pet_db:( ChangeTargetRate: 300 PetScript: <" petskillattack("NPC_PIERCINGATT", 100, 1, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAtk, 15); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bAtk, 10); - bonus(bDef, -3); - } "> Evolve: { High_Orc_Egg: { @@ -203,9 +219,10 @@ pet_db:( { Id: 1026 Name: "Munak" - TamingItem: "No_Recipient" EggItem: "Munak_Egg" + TamingItem: "No_Recipient" AccessoryItem: "Punisher" + HungerDecrement: 3 Intimacy: { FeedIncrement: 20 } @@ -214,7 +231,11 @@ pet_db:( ChangeTargetRate: 300 PetScript: <" petskillattack("NPC_DARKNESSATTACK", 444, 1, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bInt, 2); + bonus(bDef, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bInt, 1); bonus(bDef, 1); } @@ -223,19 +244,21 @@ pet_db:( { Id: 1029 Name: "Isis" - TamingItem: "Armlet_Of_Obedience" EggItem: "Isis_Egg" + TamingItem: "Armlet_Of_Obedience" AccessoryItem: "Queens_Hair_Ornament" + HungerDecrement: 3 CaptureRate: 500 AttackRate: 650 DefendRate: 450 ChangeTargetRate: 150 PetScript: <" petskillsupport("PR_MAGNIFICAT", 2, 60, 50, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus(bMatkRate, -1); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAtkRate, 2); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bAtkRate, 1); - } "> Evolve: { Little_Isis_Egg: { @@ -249,10 +272,11 @@ pet_db:( { Id: 1031 Name: "Poporing" - TamingItem: "Bitter_Herb" EggItem: "Poporing_Egg" - AccessoryItem: "Backpack" + TamingItem: "Bitter_Herb" FoodItem: "Green_Herb" + AccessoryItem: "Backpack" + HungerDecrement: 5 Intimacy: { FeedIncrement: 30 } @@ -261,7 +285,11 @@ pet_db:( ChangeTargetRate: 400 PetScript: <" petloot(15); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bLuk, 3); + bonus2(bSubEle, Ele_Poison, 15); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bLuk, 2); bonus2(bSubEle, Ele_Poison, 10); } @@ -270,10 +298,11 @@ pet_db:( { Id: 1035 Name: "Hunter Fly" - TamingItem: "Monster_Juice" EggItem: "Hunter_Fly_Egg" - AccessoryItem: "Monster_Oxygen_Mask" + TamingItem: "Monster_Juice" FoodItem: "Red_Gemstone" + AccessoryItem: "Monster_Oxygen_Mask" + HungerDecrement: 5 CaptureRate: 500 SpecialPerformance: true AttackRate: 500 @@ -281,19 +310,21 @@ pet_db:( ChangeTargetRate: 200 PetScript: <" petskillattack("NPC_WINDATTACK", 888, 2, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus(bFlee, -5); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bFlee2, 2); - } + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bHit, 1); "> }, { Id: 1042 Name: "Steel ChonChon" - TamingItem: "Lusty_Iron" EggItem: "Steel_Chonchon_Egg" - AccessoryItem: "Monster_Oxygen_Mask" + TamingItem: "Lusty_Iron" FoodItem: "Iron_Ore" + AccessoryItem: "Monster_Oxygen_Mask" + HungerDecrement: 5 Intimacy: { FeedIncrement: 20 } @@ -303,19 +334,21 @@ pet_db:( ChangeTargetRate: 200 PetScript: <" petskillbonus(bAgiVit, 4, 20, 40); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bFlee, 9); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bFlee, 6); - bonus(bAgi, -1); - } "> }, { Id: 1049 Name: "Picky" - TamingItem: "Earthworm_The_Dude" EggItem: "Picky_Egg" - AccessoryItem: "Tiny_Egg_Shell" + TamingItem: "Earthworm_The_Dude" FoodItem: "Red_Herb" + AccessoryItem: "Tiny_Egg_Shell" + HungerDecrement: 4 Intimacy: { FeedIncrement: 40 } @@ -326,7 +359,11 @@ pet_db:( ChangeTargetRate: 50 PetScript: <" petskillbonus(bStr, 3, 10, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bStr, 2); + bonus(bAtk, 8); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bStr, 1); bonus(bAtk, 5); } @@ -335,8 +372,8 @@ pet_db:( { Id: 1052 Name: "Rocker" - TamingItem: "Singing_Flower" EggItem: "Rocker_Egg" + TamingItem: "Singing_Flower" AccessoryItem: "Rocker_Glasses" Intimacy: { FeedIncrement: 30 @@ -347,7 +384,11 @@ pet_db:( ChangeTargetRate: 600 PetScript: <" petskillbonus(bAllStats, 1, 10, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHPrecovRate, 8); + bonus(bMaxHP, 38); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bHPrecovRate, 5); bonus(bMaxHP, 25); } @@ -364,9 +405,10 @@ pet_db:( { Id: 1056 Name: "Smokie" - TamingItem: "Baked_Yam" EggItem: "Smokie_Egg" + TamingItem: "Baked_Yam" AccessoryItem: "Red_Muffler" + HungerDecrement: 4 Intimacy: { FeedIncrement: 30 } @@ -376,7 +418,11 @@ pet_db:( ChangeTargetRate: 100 PetScript: <" petskillbonus(bPerfectHide, 1, 3600, 0); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAgi, 2); + bonus(bFlee2, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bAgi, 1); bonus(bFlee2, 1); } @@ -385,21 +431,24 @@ pet_db:( { Id: 1057 Name: "Yoyo" - TamingItem: "Tropical_Banana" EggItem: "Yoyo_Egg" - AccessoryItem: "Monkey_Circlet" + TamingItem: "Tropical_Banana" FoodItem: "Banana_Juice" + AccessoryItem: "Monkey_Circlet" + HungerDecrement: 5 Intimacy: { FeedIncrement: 20 } SpecialPerformance: true + DefendRate: 800 ChangeTargetRate: 400 PetScript: <" petloot(20); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bCritical, 5); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bCritical, 3); - bonus(bLuk, -1); - } "> Evolve: { Choco_Egg: { @@ -413,10 +462,11 @@ pet_db:( { Id: 1063 Name: "Lunatic" - TamingItem: "Rainbow_Carrot" EggItem: "Lunatic_Egg" - AccessoryItem: "Silk_Ribbon" + TamingItem: "Rainbow_Carrot" FoodItem: "Carrot_Juice" + AccessoryItem: "Silk_Ribbon" + HungerDecrement: 4 Intimacy: { FeedIncrement: 40 } @@ -424,7 +474,11 @@ pet_db:( ChangeTargetRate: 1000 PetScript: <" petskillbonus(bLuk, 3, 10, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 3); + bonus(bAtk, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bCritical, 2); bonus(bAtk, 2); } @@ -441,9 +495,10 @@ pet_db:( { Id: 1077 Name: "Poison Spore" - TamingItem: "Deadly_Noxious_Herb" EggItem: "Poison_Spore_Egg" + TamingItem: "Deadly_Noxious_Herb" AccessoryItem: "Bark_Shorts" + HungerDecrement: 3 Intimacy: { FeedIncrement: 20 } @@ -452,7 +507,11 @@ pet_db:( ChangeTargetRate: 400 PetScript: <" petskillattack("NPC_POISON", 20, 0, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bStr, 2); + bonus(bInt, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bStr, 1); bonus(bInt, 1); } @@ -461,29 +520,36 @@ pet_db:( { Id: 1101 Name: "Baphomet Jr." - TamingItem: "Book_Of_Devil" EggItem: "Bapho_Jr_Egg" - AccessoryItem: "Skull_Helm" + TamingItem: "Book_Of_Devil" FoodItem: "Honey" + AccessoryItem: "Skull_Helm" + HungerDecrement: 2 CaptureRate: 200 AttackRate: 1000 DefendRate: 100 ChangeTargetRate: 200 PetScript: <" petskillattack("NPC_DARKNESSATTACK", 1776, 4, 0, 5); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bDef, 2); + bonus(bMdef, 2); + bonus2(bResEff, Eff_Stun, 200); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bDef, 1); bonus(bMdef, 1); - bonus2(bResEff, Eff_Stun, -100); + bonus2(bResEff, Eff_Stun, 100); } "> }, { Id: 1107 Name: "Baby Desert Wolf" - TamingItem: "Well_Dried_Bone" EggItem: "Baby_Desert_Wolf_Egg" + TamingItem: "Well_Dried_Bone" AccessoryItem: "Transparent_Headgear" + HungerDecrement: 6 Intimacy: { FeedIncrement: 40 } @@ -492,7 +558,11 @@ pet_db:( ChangeTargetRate: 400 PetScript: <" petskillattack("SM_PROVOKE", 1, 0, 0, 5);"> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bInt, 2); + bonus(bMaxSP, 75); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bInt, 1); bonus(bMaxSP, 50); } @@ -501,20 +571,25 @@ pet_db:( { Id: 1109 Name: "Deviruchi" - TamingItem: "Contracts_In_Shadow" EggItem: "Deviruchi_Egg" - AccessoryItem: "Pacifier" + TamingItem: "Contracts_In_Shadow" FoodItem: "Shoot" + AccessoryItem: "Pacifier" + HungerDecrement: 2 CaptureRate: 500 + AttackRate: 800 DefendRate: 200 ChangeTargetRate: 100 PetScript: <" petskillbonus(bAgiDexStr, 6, 20, 40); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus(bMatkRate, 1); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bAtkRate, 1); - bonus(bMaxHPrate, -3); - bonus(bMaxSPrate, -3); + bonus(bMatkRate, 1); + } + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxHPrate, 1); + bonus(bMaxSPrate, 1); } "> Evolve: { @@ -529,19 +604,21 @@ pet_db:( { Id: 1110 Name: "Dokebi" - TamingItem: "Old_Broom" EggItem: "Dokkaebi_Egg" + TamingItem: "Old_Broom" AccessoryItem: "Wig" + HungerDecrement: 4 Intimacy: { FeedIncrement: 20 } CaptureRate: 500 PetScript: <" petskillattack("BS_HAMMERFALL", 1, 0, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMatkRate, 2); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bMatkRate, 1); - bonus(bAtkRate, -1); - } "> Evolve: { Am_Mut_Egg: { @@ -555,10 +632,11 @@ pet_db:( { Id: 1113 Name: "Drops" - TamingItem: "Orange_Juice" EggItem: "Drops_Egg" - AccessoryItem: "Backpack" + TamingItem: "Orange_Juice" FoodItem: "Yellow_Herb" + AccessoryItem: "Backpack" + HungerDecrement: 4 Intimacy: { FeedIncrement: 40 } @@ -568,7 +646,11 @@ pet_db:( ChangeTargetRate: 500 PetScript: <" petloot(10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHit, 5); + bonus(bAtk, 5); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bHit, 3); bonus(bAtk, 3); } @@ -580,35 +662,35 @@ pet_db:( Apple_Juice: 3 Eggring_Card: 1 } -/* Sweet_Drops_Egg: { - 25290: 500 + Sweets_Coin: 500 Candy: 50 Candy_Striper: 50 Drops_Card: 1 } -*/ } }, { Id: 1155 Name: "Petite" - TamingItem: "Shining_Stone" EggItem: "Green_Petite_Egg" + TamingItem: "Shining_Stone" AccessoryItem: "Stellar_Hairpin" + HungerDecrement: 4 Intimacy: { FeedIncrement: 20 } CaptureRate: 500 + AttackRate: 800 DefendRate: 400 ChangeTargetRate: 100 PetScript: <" petskillattack("WZ_HEAVENDRIVE", 500, 1, 0, 10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus(bDef, -2); - bonus(bMdef, -2); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bAspdRate, 1); - } + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAgi, 1); "> Evolve: { Earth_Deleter_Egg: { @@ -622,9 +704,10 @@ pet_db:( { Id: 1167 Name: "Savage Babe" - TamingItem: "Sweet_Milk" EggItem: "Savage_Bebe_Egg" + TamingItem: "Sweet_Milk" AccessoryItem: "Green_Lace" + HungerDecrement: 7 Intimacy: { FeedIncrement: 40 } @@ -634,7 +717,11 @@ pet_db:( ChangeTargetRate: 200 PetScript: <" petskillbonus(bVit, 4, 10, 50); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVit, 2); + bonus(bMaxHP, 75); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bVit, 1); bonus(bMaxHP, 50); } @@ -651,16 +738,21 @@ pet_db:( { Id: 1170 Name: "Sohee" - TamingItem: "Silver_Knife_Of_Chaste" EggItem: "Sohee_Egg" + TamingItem: "Silver_Knife_Of_Chaste" AccessoryItem: "Golden_Bell" + HungerDecrement: 3 CaptureRate: 500 AttackRate: 100 DefendRate: 1000 ChangeTargetRate: 200 PetScript: <" petskillsupport(AL_HEAL, 10, 60, 33, 100); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bStr, 2); + bonus(bDex, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bStr, 1); bonus(bDex, 1); } @@ -669,9 +761,10 @@ pet_db:( { Id: 1188 Name: "Bon Gun" - TamingItem: "Heart_Of_Her" EggItem: "Bongun_Egg" + TamingItem: "Heart_Of_Her" AccessoryItem: "Sword_Of_Grave_Keeper" + HungerDecrement: 4 Intimacy: { FeedIncrement: 30 } @@ -682,7 +775,11 @@ pet_db:( ChangeTargetRate: 400 PetScript: <" petskillattack("NPC_DARKNESSATTACK", 555, 1, 1, 1); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVit, 2); + bonus2(bResEff, Eff_Stun, 200); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bVit, 1); bonus2(bResEff, Eff_Stun, 100); } @@ -699,16 +796,21 @@ pet_db:( { Id: 1200 Name: "Zealotus" - TamingItem: "Prohibition_Red_Candle" EggItem: "Zherlthsh_Egg" + TamingItem: "Prohibition_Red_Candle" FoodItem: "Immortal_Heart" + HungerDecrement: 7 CaptureRate: 300 AttackRate: 1000 DefendRate: 100 ChangeTargetRate: 500 PetScript: <" petskillattack("AS_SONICBLOW", 1, 0, 0, 3); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus2(bAddRace, RC_DemiPlayer, 3); + bonus2(bMagicAddRace, RC_DemiPlayer, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus2(bAddRace, RC_DemiPlayer, 2); bonus2(bMagicAddRace, RC_DemiPlayer, 2); } @@ -717,16 +819,21 @@ pet_db:( { Id: 1245 Name: "Christmas Goblin" - TamingItem: "Sweet_Candy_Striper" EggItem: "Santa_Goblin_Egg" + TamingItem: "Sweet_Candy_Striper" FoodItem: "Scell" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } CaptureRate: 2000 PetScript: <" petskillattack("MG_SIGHT", 5, 0, 5, 5); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxHP, 45); + bonus2(bSubEle, Ele_Water, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bMaxHP, 30); bonus2(bSubEle, Ele_Water, 1); } @@ -735,85 +842,126 @@ pet_db:( { Id: 1275 Name: "Alice" - TamingItem: "Sway_Apron" EggItem: "Alice_Egg" + TamingItem: "Sway_Apron" FoodItem: "White_Potion" + HungerDecrement: 2 Intimacy: { FeedIncrement: 20 } + CaptureRate: 800 AttackRate: 100 DefendRate: 1000 ChangeTargetRate: 200 PetScript: <" petskillsupport("AL_HEAL", 5, 60, 25, 100); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMdef, 2); + bonus2(bAddRaceTolerance, RC_DemiPlayer, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bMdef, 1); bonus2(bAddRaceTolerance, RC_DemiPlayer, 1); } "> + Evolve: { + Aliza_Egg: { + Alices_Apron: 500 + Green_Herb: 200 + Elunium: 30 + Alice_Card: 1 + } + } }, // New Pets { Id: 1122 Name: "Goblin" - TamingItem: "Knife_Goblin_Ring" EggItem: "Knife_Goblin_Egg" + TamingItem: "Knife_Goblin_Ring" FoodItem: "Green_Apple" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } + CaptureRate: 800 PetScript: <" petskillattack("NPC_WINDATTACK", 5, 0, 5, 5); "> }, { Id: 1123 Name: "Goblin" - TamingItem: "Flail_Goblin_Ring" EggItem: "Flail_Goblin_Egg" + TamingItem: "Flail_Goblin_Ring" FoodItem: "Green_Apple" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } + CaptureRate: 800 PetScript: <" petskillattack("NPC_FIREATTACK", 5, 0, 5, 5); "> }, { Id: 1125 Name: "Goblin" - TamingItem: "Hammer_Goblin_Ring" EggItem: "Hammer_Goblin_Egg" + TamingItem: "Hammer_Goblin_Ring" FoodItem: "Green_Apple" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } + CaptureRate: 800 PetScript: <" petskillattack("NPC_GROUNDATTACK", 5, 0, 5, 5); "> }, { Id: 1208 Name: "Wanderer" - TamingItem: "Skull_Of_Vagabond" EggItem: "Wanderer_Egg" + TamingItem: "Skull_Of_Vagabond" FoodItem: "Spirit_Liquor" + HungerDecrement: 2 Intimacy: { FeedIncrement: 20 } + CaptureRate: 800 PetScript: <" petskillattack("NPC_UNDEADATTACK", 5, 0, 5, 5); "> + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAgi, 4); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bAgi, 3); + "> + Evolve: { + Contaminated_Wanderer_Egg: { + Skull: 500 + Sacred_Marks: 50 + Transparent_Cloth: 100 + Wander_Man_Card: 1 + } + } }, { Id: 1382 Name: "Diabolic" - TamingItem: "Red_Burning_Stone" EggItem: "Diabolic_Egg" + TamingItem: "Red_Burning_Stone" FoodItem: "Meat_Veg_Skewer" + HungerDecrement: 2 + CaptureRate: 800 PetScript: <" petskillattack("WZ_METEOR", 2, 0, 5, 5); "> }, { Id: 1385 Name: "Deleter" - TamingItem: "Holy_Marble" EggItem: "Red_Deleter_Egg" + TamingItem: "Holy_Marble" FoodItem: "Whole_Barbecue" + HungerDecrement: 4 Intimacy: { FeedIncrement: 20 } + CaptureRate: 800 PetScript: <" petskillattack("SM_MAGNUM", 5, 0, 5, 5); "> }, { @@ -821,6 +969,7 @@ pet_db:( Name: "Spring Rabbit" EggItem: "Spring_Rabbit_Egg" FoodItem: "Bok_Choy" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } @@ -833,9 +982,11 @@ pet_db:( Name: "New Year Doll" EggItem: "New_Year_Doll_Egg" FoodItem: "Mojji" + HungerDecrement: 3 Intimacy: { FeedIncrement: 30 } + CaptureRate: 800 PetScript: <" petskillattack("CR_SHIELDCHARGE", 5, 0, 5, 5); "> }, // Episode 13 @@ -844,6 +995,7 @@ pet_db:( Name: "Rice Cake" EggItem: "Rice_Cake_Egg" FoodItem: "Green_Herb" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } @@ -854,10 +1006,11 @@ pet_db:( ChangeTargetRate: 200 PetScript: <" petskillsupport("CR_DEFENDER", 3, 240, 50, 100); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus2(bSubEle, Ele_Neutral, 2); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus2(bSubEle, Ele_Neutral, 1); - bonus(bMaxHPrate, -1); - } "> }, { @@ -865,9 +1018,10 @@ pet_db:( Name: "Christmas Snow Rabbit" EggItem: "Snow_Rabbit_Egg" FoodItem: "Candy" + HungerDecrement: 3 SpecialPerformance: true EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_CORDIAL) bonus2(bExpAddRace, RC_All, 5); "> }, @@ -875,44 +1029,52 @@ pet_db:( { Id: 1040 Name: "Golem" - TamingItem: "Magical_Lithography" EggItem: "Golem_Egg" - AccessoryItem: "Windup_Spring" + TamingItem: "Magical_Lithography" FoodItem: "Mystic_Stone" + AccessoryItem: "Windup_Spring" + HungerDecrement: 7 Intimacy: { FeedIncrement: 20 } - CaptureRate: 500 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxHP, 150); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bMaxHP, 100); - bonus(bFlee, -5); - } "> }, { Id: 1143 Name: "Marionette" - TamingItem: "Delicious_Shaved_Ice" EggItem: "Marionette_Egg" - AccessoryItem: "Star_Hairband" + TamingItem: "Delicious_Shaved_Ice" FoodItem: "Small_Snow_Flower" - CaptureRate: 500 + AccessoryItem: "Star_Hairband" + HungerDecrement: 3 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) - bonus(bSPrecovRate, 3); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + autobonus("{ bonus2(bSubEle, Ele_Neutral, 20); heal(100, 0); }", 10, 5000, BF_SHORT|BF_NORMAL); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + autobonus("{ bonus2(bSubEle, Ele_Neutral, 20); heal(100, 0); }", 10, 3000, BF_SHORT|BF_NORMAL); "> }, { Id: 1148 Name: "Medusa" - TamingItem: "Splendid_Mirror" EggItem: "Medusa_Egg" - AccessoryItem: "Queens_Coronet" + TamingItem: "Splendid_Mirror" FoodItem: "Apple_Pudding" - CaptureRate: 200 + AccessoryItem: "Queens_Coronet" + HungerDecrement: 3 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVit, 2); + bonus2(bResEff, Eff_Stone, 800); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bVit, 1); bonus2(bResEff, Eff_Stone, 500); } @@ -921,198 +1083,264 @@ pet_db:( { Id: 1179 Name: "Whisper" - TamingItem: "Fit_Pipe" EggItem: "Whisper_Egg" - AccessoryItem: "Spirit_Chain_" + TamingItem: "Fit_Pipe" FoodItem: "Damp_Darkness" + AccessoryItem: "Spirit_Chain_" + HungerDecrement: 7 Intimacy: { FeedIncrement: 20 } - CaptureRate: 500 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bFlee, 10); + skill("TF_HIDING", 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bFlee, 7); - bonus(bDef, -3); + skill("TF_HIDING", 1); } "> }, { Id: 1299 Name: "Goblin Leader" - TamingItem: "Staff_Of_Leader" EggItem: "Goblin_Leader_Egg" - AccessoryItem: "Nice_Badge" + TamingItem: "Staff_Of_Leader" FoodItem: "Big_Cell" - CaptureRate: 50 + AccessoryItem: "Nice_Badge" + HungerDecrement: 7 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus2(bAddRace, RC_DemiPlayer, 5); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus2(bAddRace, RC_DemiPlayer, 3); "> }, { Id: 1370 Name: "Succubus" - TamingItem: "Boys_Naivety" EggItem: "Succubus_Egg" - AccessoryItem: "Black_Butterfly_Mask" + TamingItem: "Boys_Naivety" FoodItem: "Vital_Flower_" - CaptureRate: 200 + AccessoryItem: "Black_Butterfly_Mask" + HungerDecrement: 3 + CaptureRate: 300 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) - bonus2(bHPDrainRate, 50, 5); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus2(bHPDrainRate, 20, 5); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxHPrate, 1); "> }, { Id: 1374 Name: "Incubus" - TamingItem: "Grils_Naivety" EggItem: "Incubus_Egg" - AccessoryItem: "Ball_Mask" + TamingItem: "Grils_Naivety" FoodItem: "Vital_Flower" - CaptureRate: 50 + AccessoryItem: "Ball_Mask" + HungerDecrement: 3 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxSPrate, 5); + bonus2(bSPDrainRate, 30, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bMaxSPrate, 3); + bonus2(bSPDrainRate, 20, 1); + } "> }, { Id: 1379 Name: "Nightmare Terror" - TamingItem: "Hell_Contract" EggItem: "Nightmare_Terror_Egg" - AccessoryItem: "Hell_Horn" + TamingItem: "Hell_Contract" FoodItem: "Fresh_Plant" - CaptureRate: 200 + AccessoryItem: "Hell_Horn" + HungerDecrement: 3 + CaptureRate: 300 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus2(bResEff, Eff_Sleep, 10000); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bInt, 1); "> + Evolve: { + Rigid_Nightmare_Terror_Egg: { + Burning_Horse_Shoe: 500 + Blue_Herb: 100 + Shell: 100 + Nightmare_Terror_Card: 1 + } + } }, { Id: 1401 Name: "Shinobi" - TamingItem: "Kuloren" EggItem: "Shinobi_Egg" - AccessoryItem: "Wine_On_Sleeve" + TamingItem: "Kuloren" FoodItem: "Grilled_Rice_Cake" + AccessoryItem: "Wine_On_Sleeve" + HungerDecrement: 7 Intimacy: { FeedIncrement: 20 } - CaptureRate: 500 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAgi, 3); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bAgi, 2); "> }, { Id: 1404 Name: "Miyabi Doll" - TamingItem: "Gril_Doll" EggItem: "Miyabi_Ningyo_Egg" - AccessoryItem: "Summer_Fan" + TamingItem: "Gril_Doll" FoodItem: "Well_Ripened_Berry" + AccessoryItem: "Summer_Fan" + HungerDecrement: 3 Intimacy: { FeedIncrement: 15 } - CaptureRate: 200 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bInt, 2); + bonus(bVariableCastrate, -5); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bInt, 1); - bonus(bCastrate, -3); + bonus(bVariableCastrate, -3); } "> }, { Id: 1416 Name: "Evil Nymph" - TamingItem: "Charming_Lotus" EggItem: "Wicked_Nymph_Egg" - AccessoryItem: "Jade_Trinket" + TamingItem: "Charming_Lotus" FoodItem: "Morning_Dew" + AccessoryItem: "Jade_Trinket" + HungerDecrement: 3 Intimacy: { FeedIncrement: 15 } - CaptureRate: 500 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxSP, 45); + bonus(bSPrecovRate, 8); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bMaxSP, 30); bonus(bSPrecovRate, 5); } "> + Evolve: { + Bacsojin2_Egg_: { + Mightysoul_Essence: 30 + Civil_Servant_Card: 10 + Li_Me_Mang_Ryang_Card: 10 + Dancing_Dragon_Card: 10 + } + } }, { Id: 1495 Name: "Stone Shooter" - TamingItem: "Oilpalm_Coconut" EggItem: "Stone_Shooter_Egg" - AccessoryItem: "Apro_Hair" + TamingItem: "Oilpalm_Coconut" FoodItem: "Plant_Neutrient" + AccessoryItem: "Apro_Hair" + HungerDecrement: 7 Intimacy: { FeedIncrement: 20 } - CaptureRate: 500 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus2(bSubEle, Ele_Fire, 5); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus2(bSubEle, Ele_Fire, 3); "> }, { Id: 1504 Name: "Dullahan" - TamingItem: "Luxury_Whisky_Bottle" EggItem: "Dullahan_Egg" - AccessoryItem: "Death_Coil" + TamingItem: "Luxury_Whisky_Bottle" FoodItem: "Sunset_On_The_Rock" - CaptureRate: 200 + AccessoryItem: "Death_Coil" + HungerDecrement: 3 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bCritAtkRate, 8); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bCritAtkRate, 5); "> }, { Id: 1505 Name: "Loli Ruri" - TamingItem: "Very_Red_Juice" EggItem: "Loli_Ruri_Egg" - AccessoryItem: "Fashionable_Glasses" + TamingItem: "Very_Red_Juice" FoodItem: "Pumpkin_Pie_" + AccessoryItem: "Fashionable_Glasses" + HungerDecrement: 3 Intimacy: { FeedIncrement: 15 } - CaptureRate: 200 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { bonus(bMaxHPrate, 3); - bonus3(bAutoSpellWhenHit, "AL_HEAL", 1, 50); + bonus3(bAutoSpellWhenHit, "AL_HEAL", 2, 10); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMaxHPrate, 3); + bonus3(bAutoSpellWhenHit, "AL_HEAL", 1, 10); } "> }, { Id: 1513 Name: "Mao Guai" - TamingItem: "Fan_Of_Wind" EggItem: "Civil_Servant_Egg" - AccessoryItem: "Golden_Earing" + TamingItem: "Fan_Of_Wind" FoodItem: "Flavored_Alcohol" - CaptureRate: 500 + AccessoryItem: "Golden_Earing" + HungerDecrement: 3 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxSP, 15); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus(bMaxSP, 10); "> }, { Id: 1519 Name: "Green Maiden" - TamingItem: "Tantanmen" EggItem: "Chung_E_Egg" + TamingItem: "Tantanmen" FoodItem: "Bun_" + HungerDecrement: 3 Intimacy: { FeedIncrement: 50 } CaptureRate: 2000 PetScript: <" petskillattack("CR_SHIELDCHARGE", 5, 0, 5, 5); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bDef, 2); + bonus2(bAddRaceTolerance, RC_DemiPlayer, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { bonus(bDef, 1); bonus2(bAddRaceTolerance, RC_DemiPlayer, 1); } @@ -1121,40 +1349,49 @@ pet_db:( { Id: 1586 Name: "Leaf Cat" - TamingItem: "Very_Soft_Plant" EggItem: "Leaf_Cat_Egg" - AccessoryItem: "Green_Lucky_Bag" + TamingItem: "Very_Soft_Plant" FoodItem: "Fish_With_Blue_Back" + AccessoryItem: "Green_Lucky_Bag" + HungerDecrement: 7 Intimacy: { FeedIncrement: 20 } - CaptureRate: 200 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus2(bAddRaceTolerance, RC_Brute, 5); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) bonus2(bAddRaceTolerance, RC_Brute, 3); "> }, { Id: 1630 Name: "White Lady" - TamingItem: "Shiny_Wing_Gown" EggItem: "Bacsojin_Egg" - AccessoryItem: "Round_Hair_Ornament" + TamingItem: "Shiny_Wing_Gown" FoodItem: "Traditional_Cookie" - CaptureRate: 2000 + AccessoryItem: "Round_Hair_Ornament" + HungerDecrement: 7 + CaptureRate: 300 }, { Id: 1837 Name: "Fire Imp" - TamingItem: "Flaming_Ice" EggItem: "Imp_Egg" - AccessoryItem: "Horn_Protector" + TamingItem: "Flaming_Ice" FoodItem: "Flame_Gemstone" - CaptureRate: 200 + AccessoryItem: "Horn_Protector" + HungerDecrement: 3 + CaptureRate: 300 EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus2(bSubEle, Ele_Fire, 2); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus2(bSubEle, Ele_Fire, 3); bonus2(bAddEle, Ele_Fire, 2); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus2(bSubEle, Ele_Fire, 2); + bonus2(bAddEle, Ele_Fire, 1); } "> }, @@ -1162,18 +1399,32 @@ pet_db:( { Id: 2057 Name: "Strange Cramp" - TamingItem: "Leaf_Cat_Ball" EggItem: "Mystic_Leaf_Cat_Ball" - CaptureRate: 50 + TamingItem: "Leaf_Cat_Ball" + FoodEffectiveness: 1 + HungerDecrement: 0 + Intimacy: { + FeedIncrement: 1 + OverFeedDecrement: 0 + OwnerDeathDecrement: 0 + } + CaptureRate: 5000 AttackRate: 350 DefendRate: 400 }, { Id: 2081 Name: "Strange Hydra" - TamingItem: "Leaf_Cat_Ball" EggItem: "Mystic_Leaf_Cat_Ball" - CaptureRate: 50 + TamingItem: "Leaf_Cat_Ball" + FoodEffectiveness: 1 + HungerDecrement: 0 + Intimacy: { + FeedIncrement: 1 + OverFeedDecrement: 0 + OwnerDeathDecrement: 0 + } + CaptureRate: 5000 AttackRate: 350 DefendRate: 400 }, @@ -1181,21 +1432,35 @@ pet_db:( { Id: 2313 Name: "Tikbalang" - TamingItem: "Tikbalang_Belt" EggItem: "Tikbalang_Pet" + TamingItem: "Tikbalang_Belt" FoodItem: "Monsters_Feed" + HungerDecrement: 8 SpecialPerformance: true EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMdef, 5); + bonus2(bAddDamageClass, 2317, 10); + bonus2(bAddDamageClass, 2318, 10); + bonus2(bAddDamageClass, 2319, 10); bonus2(bAddDamageClass, 2320, 10); bonus2(bAddDamageClass, 2321, 10); bonus2(bAddDamageClass, 2322, 10); + bonus2(bAddDamageClass, 2327, 10); + bonus2(bAddDamageClass, 2332, 10); + bonus2(bAddDamageClass, 2333, 10); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMdef, 3); bonus2(bAddDamageClass, 2317, 10); bonus2(bAddDamageClass, 2318, 10); - bonus2(bAddDamageClass, 2327, 10); bonus2(bAddDamageClass, 2319, 10); - bonus2(bAddDamageClass, 2333, 10); + bonus2(bAddDamageClass, 2320, 10); + bonus2(bAddDamageClass, 2321, 10); + bonus2(bAddDamageClass, 2322, 10); + bonus2(bAddDamageClass, 2327, 10); bonus2(bAddDamageClass, 2332, 10); + bonus2(bAddDamageClass, 2333, 10); } "> }, @@ -1203,10 +1468,10 @@ pet_db:( { Id: 1242 Name: "Marin" - TamingItem: "Juicy_Fruit" EggItem: "Marin_Egg" - AccessoryItem: "Tw_Backpack" + TamingItem: "Juicy_Fruit" FoodItem: "Fruit_Sundae" + AccessoryItem: "Tw_Backpack" Intimacy: { FeedIncrement: 50 } @@ -1215,7 +1480,7 @@ pet_db:( }, { Id: 2200 - Name: "Tiny" + Name: "Taini" EggItem: "Egg_Of_Tiny" FoodItem: "Apple" SpecialPerformance: true @@ -1226,21 +1491,23 @@ pet_db:( Name: "Little Poring" TamingItem: "Unripe_Apple2" EggItem: "Novice_Poring_Egg" - AccessoryItem: "Backpack" FoodItem: "Apple_Juice" + FoodEffectiveness: 20 + HungerDecrement: 3 Intimacy: { - FeedIncrement: 50 + FeedIncrement: 100 + StarvingDecrement: 1 } - CaptureRate: 2000 - SpecialPerformance: true + CaptureRate: 1000 AttackRate: 350 DefendRate: 400 PetScript: <" petloot(10); "> EquipScript: <" - if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { - bonus(bLuk, 2); - bonus(bCritical, 1); - } + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bHPrecovRate, 75); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bHPrecovRate, 50); "> }, // New Pets [Need Info] @@ -1249,6 +1516,22 @@ pet_db:( Name: "Mastering" EggItem: "Mastering_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bLuk, 3); + bonus(bCritical, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bLuk, 3); + bonus(bCritical, 2); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bLuk, 3); + bonus(bCritical, 1); + } else { + bonus(bLuk, 2); + bonus(bCritical, 1); + } + "> Evolve: { Angeling_Egg: { Yellow_Potion: 20 @@ -1263,63 +1546,173 @@ pet_db:( Name: "Angeling" EggItem: "Angeling_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxHPrate, 2); + bonus(bHealPower, 8); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMaxHPrate, 2); + bonus(bHealPower, 6); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bMaxHPrate, 1); + bonus(bHealPower, 4); + } else { + bonus(bMaxHPrate, 1); + bonus(bHealPower, 2); + } + "> }, { Id: 1301 Name: "Am Mut" EggItem: "Am_Mut_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMatkRate, 4); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMatkRate, 3); + else if (.@intimacy >= PET_INTIMACY_NEUTRAL) + bonus(bMatkRate, 2); + else + bonus(bMatkRate, 1); + "> }, -/* { Id: 3636 Name: "Little Isis" EggItem: "Little_Isis_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAtkRate, 4); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bAtkRate, 3); + else if (.@intimacy >= PET_INTIMACY_NEUTRAL) + bonus(bAtkRate, 2); + else + bonus(bAtkRate, 1); + "> }, -*/ { Id: 1214 Name: "Choco" EggItem: "Choco_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 9); + bonus(bLongAtkRate, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bCritical, 7); + bonus(bLongAtkRate, 2); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bCritical, 5); + bonus(bLongAtkRate, 1); + } else { + bonus(bCritical, 3); + } + "> }, -/* { Id: 3495 Name: "Eggring" EggItem: "Eggring_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHit, 9); + bonus(bAtk, 9); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bHit, 7); + bonus(bAtk, 7); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bHit, 5); + bonus(bAtk, 5); + } else { + bonus(bHit, 3); + bonus(bAtk, 3); + } + "> }, -*/ { Id: 1512 Name: "Hyegun" EggItem: "Hyegun_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVit, 4); + bonus2(bResEff, Eff_Stun, 400); + bonus2(bSPDrainRate, 10, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bVit, 3); + bonus2(bResEff, Eff_Stun, 300); + bonus2(bSPDrainRate, 10, 1); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bVit, 2); + bonus2(bResEff, Eff_Stun, 200); + } else { + bonus(bVit, 1); + bonus2(bResEff, Eff_Stun, 100); + } + "> }, -/* { Id: 3496 Name: "Leaf Lunatic" EggItem: "Leaf_Lunatic_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 5); + bonus(bAtk, 5); + bonus2(bAddRace, RC_Formless, 6); + bonus2(bMagicAddRace, RC_Formless, 6); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bCritical, 4); + bonus(bAtk, 4); + bonus2(bAddRace, RC_Formless, 3); + bonus2(bMagicAddRace, RC_Formless, 3); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bCritical, 3); + bonus(bAtk, 3); + } else { + bonus(bCritical, 2); + bonus(bAtk, 2); + } + "> }, -*/ { Id: 1180 Name: "Nine Tails" EggItem: "Nine_Tails_Egg" - AutoFeed: true + TamingItem: "Sap_Jelly" + FoodItem: "Suspicious_Bottle" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 3); + bonus(bHit, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bCritical, 2); + bonus(bHit, 2); + } + "> Evolve: { -/* Cat_o_Nine_Tails_Egg: { - 23187: 3 + Sap_Jelly: 3 Fox_Tail: 999 Punisher: 1 Nine_Tail_Card: 1 } -*/ } }, { @@ -1327,152 +1720,807 @@ pet_db:( Name: "Cat o' Nine Tails" EggItem: "Cat_o_Nine_Tails_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 5); + bonus(bHit, 5); + autobonus("{ bonus2(bHPRegenRate, 400, 1000); }", 20, 5000, BF_WEAPON|BF_SHORT); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bCritical, 4); + bonus(bHit, 4); + autobonus("{ bonus2(bHPRegenRate, 300, 1000); }", 20, 5000, BF_WEAPON|BF_SHORT); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bCritical, 3); + bonus(bHit, 3); + } else { + bonus(bCritical, 2); + bonus(bHit, 2); + } + "> Evolve: { -/* Moonlight_Flower_Egg: { - 25375: 30 + Mightysoul_Essence: 30 Nine_Tail_Card: 10 Sohee_Card: 10 Munak_Card: 10 } -*/ } }, -/* { Id: 3669 Name: "Diabolic" EggItem: "Diabolic_Egg_" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAtkRate, 2); + bonus(bMatkRate, 2); + bonus(bMaxHPrate, 2); + bonus(bMaxSPrate, 2); + bonus5(bAutoSpell, "MG_FIREBOLT", 3, 50, BF_WEAPON|BF_SHORT, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bAtkRate, 2); + bonus(bMatkRate, 2); + bonus(bMaxHPrate, 1); + bonus(bMaxSPrate, 1); + bonus5(bAutoSpell, "MG_FIREBOLT", 3, 50, BF_WEAPON|BF_SHORT, 1); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bAtkRate, 1); + bonus(bMatkRate, 1); + bonus(bMaxHPrate, 1); + bonus(bMaxSPrate, 1); + } else { + bonus(bAtkRate, 1); + bonus(bMatkRate, 1); + } + "> }, -*/ -/* { Id: 3670 Name: "Earth Deleter" EggItem: "Earth_Deleter_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAspdRate, 3); + bonus(bAgi, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bAspdRate, 2); + bonus(bAgi, 2); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bAspdRate, 1); + bonus(bAgi, 1); + } else { + bonus(bAspdRate, 1); + } + "> }, -*/ { Id: 1622 Name: "Teddy Bear" EggItem: "Teddy_Bear_Egg" - AutoFeed: true + TamingItem: "SmallDoll_Needle" + FoodItem: "Cotton_Tufts" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxSP, 100); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMaxSP, 50); + "> Evolve: { -/* Abandoned_Teddy_Bear_Egg: { - 23189: 3 + SmallDoll_Needle: 3 Cursed_Seal: 300 Cardinal_Jewel_: 50 Teddy_Bear_Card: 1 } -*/ + Aliot_Egg: { + Screw: 500 + Honey: 100 + White_Jewel: 10 + Teddy_Bear_Card: 1 + } + Alicel_Egg: { + Screw: 500 + Honey: 100 + Bloody_Page: 50 + Teddy_Bear_Card: 1 + } } }, { Id: 1632 Name: "Gremlin" EggItem: "Gremlin_Egg" - AutoFeed: true + TamingItem: "Unprocessed_Parts" + FoodItem: "Cheap_Lubricant" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bDex, 2); + bonus(bHit, 1); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bDex, 1); + bonus(bHit, 1); + } + "> Evolve: { -/* Hodremlin_Egg: { - 23188: 3 + Unprocessed_Parts: 3 Damp_Darkness: 50 Will_Of_Darkness: 200 Hodremlin_Card: 1 } -*/ } }, -/* { Id: 3731 - Name: "Scatleton Crate" - EggItem: "Scatleton_Crate" - AutoFeed: true + Name: "Scatleton" + EggItem: "Scatelon_Egg" + FoodItem: "Delicious_Fish" + AccessoryItem: "Red_Bell_Necklace" + EquipScript: <" + if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_CORDIAL) + bonus2(bAddItemHealRate, 579, 100); + "> + Evolve: { + Skelion_Egg: { + Memory_Of_Gyol: 2 + Yummy_Meat: 100 + Cookie_Bat: 100 + } + } }, -*/ { Id: 1041 Name: "Mummy" EggItem: "Mummy_Egg" - AutoFeed: true + TamingItem: "Elixir_Bandage" + FoodItem: "Mementos" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bHit, 5); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bHit, 4); + "> Evolve: { -/* Ancient_Mummy_Egg: { - 23256: 3 + Elixir_Bandage: 3 Rune_Of_Darkness: 200 Gold: 30 Ancient_Mummy_Card: 1 } -*/ } }, { Id: 1010 Name: "Willow" EggItem: "Willow_Egg" - AutoFeed: true + TamingItem: "Dew_Of_Old_Tree" + FoodItem: "Tree_Of_Archer_1" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bInt, 3); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bInt, 2); + "> }, { Id: 1782 Name: "Roween" EggItem: "Roween_Egg" - AutoFeed: true + TamingItem: "Foul_Rotten_Meat" + FoodItem: "Rotten_Meat" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus2(bMagicAtkEle, Ele_Wind, 3); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus2(bMagicAtkEle, Ele_Wind, 2); + "> }, { Id: 1773 Name: "Hodremlin" EggItem: "Hodremlin_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bDex, 2); + bonus(bHit, 2); + bonus(bCritAtkRate, 9); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bDex, 2); + bonus(bHit, 2); + bonus(bCritAtkRate, 7); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bDex, 2); + bonus(bHit, 1); + } else { + bonus(bDex, 1); + bonus(bHit, 1); + } + "> + Evolve: { + Gloom_Under_Night_Egg: { + Hodremlin_Card: 10 + Isilla_Card: 10 + Agav_Card: 10 + Mightysoul_Essence: 30 + } + } }, { Id: 1058 Name: "Metaller" EggItem: "Metaller_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHPrecovRate, 20); + bonus(bMaxHP, 70); + bonus2(bAddRace, RC_Plant, 6); + bonus2(bMagicAddRace, RC_Plant, 6); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bHPrecovRate, 15); + bonus(bMaxHP, 55); + bonus2(bAddRace, RC_Plant, 3); + bonus2(bMagicAddRace, RC_Plant, 3); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bHPrecovRate, 10); + bonus(bMaxHP, 38); + } else { + bonus(bHPrecovRate, 5); + bonus(bMaxHP, 25); + } + "> }, { Id: 1297 Name: "Ancient Mummy" EggItem: "Ancient_Mummy_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHit, 6); + bonus2(bAddRace, RC_Dragon, 6); + bonus2(bMagicAddRace, RC_Dragon, 6); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bHit, 6); + bonus2(bAddRace, RC_Dragon, 3); + bonus2(bMagicAddRace, RC_Dragon, 3); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bHit, 5); + } else { + bonus(bHit, 4); + } + "> }, -/*{ +{ Id: 2995 Name: "Abandoned Teddy Bear" EggItem: "Abandoned_Teddy_Bear_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxSP, 150); + autobonus("{ bonus2(bSPRegenRate, 40, 1000); }", 30, 5000, BF_MAGIC); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMaxSP, 150); + autobonus("{ bonus2(bSPRegenRate, 30, 1000); }", 30, 5000, BF_MAGIC); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bMaxSP, 100); + } else { + bonus(bMaxSP, 50); + } + "> }, -*/ -/* UNKNOWN MONSTER { - Id: 0 + Id: 3790 Name: "Sweet Drops" EggItem: "Sweet_Drops_Egg" + FoodItem: "Candy" AutoFeed: true + EquipScript: <" + if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) + bonus2(bExpAddRace, RC_All, 1); + "> }, -*/ { - Id: 1159 + Id: 20425 Name: "Phreeoni" EggItem: "Phreeoni_Egg" + FoodItem: "Luxurious_Pet_Food" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bHit, 18); + bonus(bPerfectHitRate, 15); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bHit, 14); + bonus(bPerfectHitRate, 10); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bHit, 10); + bonus(bPerfectHitRate, 5); + } else { + bonus(bHit, 6); + } + "> }, { - Id: 1150 + Id: 20424 Name: "Moonlight Flower" EggItem: "Moonlight_Flower_Egg" + FoodItem: "Luxurious_Pet_Food" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bCritical, 6); + bonus(bHit, 6); + autobonus("{ bonus2(bHPRegenRate, 500, 1000); bonus2(bSPRegenRate, 20, 1000); }", 20, 5000, BF_WEAPON|BF_SHORT); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bCritical, 5); + bonus(bHit, 5); + autobonus("{ bonus2(bHPRegenRate, 400, 1000); bonus2(bSPRegenRate, 10, 1000); }", 20, 5000, BF_WEAPON|BF_SHORT); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bCritical, 4); + bonus(bHit, 4); + autobonus("{ bonus2(bHPRegenRate, 300, 1000); }", 20, 5000, BF_WEAPON|BF_SHORT); + } else { + bonus(bCritical, 3); + bonus(bHit, 3); + } + "> }, -/* { Id: 3971 Name: "Skelion" EggItem: "Skelion_Egg" + FoodItem: "Yummy_Meat" + AccessoryItem: "Dark_Mane" + AutoFeed: true + EquipScript: <" + if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_CORDIAL) + bonus2(bAddItemHealRate, 579, 100); + "> +}, +{ + Id: 2336 + Name: "Domovoi" + EggItem: "Brownie_Egg" + EquipScript: <" + if (getpetinfo(PETINFO_INTIMACY) >= PET_INTIMACY_LOYAL) { + bonus2(bAddRace, RC_DemiPlayer, 1); + bonus2(bMagicAddRace, RC_DemiPlayer, 1); + bonus2(bAddRaceTolerance, RC_DemiPlayer, 1); + } + "> +}, +{ + Id: 2963 + Name: "Woodie" + EggItem: "Woodie_Egg" + FoodItem: "Emerald_Leaf" +}, +{ + Id: 3162 + Name: "Elephant" + EggItem: "Elephant_Egg" + FoodItem: "Banana_Can" +}, +{ + Id: 3163 + Name: "Gorilla" + EggItem: "Gorilla_Egg" + FoodItem: "Spicy_Rice_Cake" +}, +{ + Id: 3164 + Name: "Lion" + EggItem: "Lion_Egg" + FoodItem: "Hot_Dog" +}, +{ + Id: 3165 + Name: "Rhino" + EggItem: "Rhino_Egg" + FoodItem: "Ferris_Wheel_Biscuit" +}, +{ + Id: 3261 + Name: "Blue Unicorn" + EggItem: "Blue_Unicorn_Egg" + FoodItem: "Blue_Herb" +}, +{ + Id: 1166 + Name: "Savage" + EggItem: "Savage_Egg" AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVit, 2); + bonus(bMaxHP, 200); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bVit, 2); + bonus(bMaxHP, 100); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bVit, 2); + bonus(bMaxHP, 50); + } else { + bonus(bVit, 1); + bonus(bMaxHP, 50); + } + "> +}, +{ + Id: 1369 + Name: "Grand Peco" + EggItem: "Grand_Peco_Peco_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxHP, 400); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMaxHP, 300); + else if (.@intimacy >= PET_INTIMACY_NEUTRAL) + bonus(bMaxHP, 200); + else + bonus(bMaxHP, 150); + "> +}, +{ + Id: 1213 + Name: "High Orc" + EggItem: "High_Orc_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAtk, 25); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bAtk, 20); + else if (.@intimacy >= PET_INTIMACY_NEUTRAL) + bonus(bAtk, 15); + else + bonus(bAtk, 10); + "> + Evolve: { + Orc_Hero_Egg_: { + Voucher_Of_Orcish_Hero: 10 + Orc_Warrior_Card: 10 + Orc_Baby_Card_Card: 10 + Mightysoul_Essence: 30 + } + } +}, +{ + Id: 20423 + Name: "Bacsojin" + EggItem: "Bacsojin2_Egg_" + FoodItem: "Luxurious_Pet_Food" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxSPrate, 5); + bonus(bDelayrate, -3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMaxSPrate, 4); + bonus(bDelayrate, -2); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bMaxSPrate, 3); + bonus(bDelayrate, -1); + } else { + bonus(bMaxSPrate, 2); + } + "> +}, +{ + Id: 20373 + Name: "Rigid Nightmare Terror" + EggItem: "Rigid_Nightmare_Terror_Egg" + FoodItem: "Luxurious_Pet_Food" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bInt, 4); + bonus(bMaxSPrate, 3); + bonus2(bResEff, Eff_Sleep, 10000); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bInt, 3); + bonus(bMaxSPrate, 1); + bonus2(bResEff, Eff_Sleep, 10000); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bInt, 2); + } else { + bonus(bInt, 1); + } + "> +}, +{ + Id: 20420 + Name: "Contaminated Wanderer Egg" + EggItem: "Contaminated_Wanderer_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAgi, 4); + bonus(bCritical, 3); + bonus(bCritAtkRate, 7); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bAgi, 4); + bonus(bCritical, 2); + bonus(bCritAtkRate, 5); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bAgi, 4); + bonus(bCritical, 1); + } else { + bonus(bAgi, 4); + } + "> +}, +{ + Id: 1736 + Name: "Aliot" + EggItem: "Aliot_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAspdRate, 5); + bonus(bHit, 12); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bAspdRate, 4); + bonus(bHit, 9); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bAspdRate, 3); + bonus(bHit, 6); + } else { + bonus(bAspdRate, 2); + } + "> +}, +{ + Id: 1735 + Name: "Alicel" + EggItem: "Alicel_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bVariableCastrate, -5); + bonus2(bMagicAddEle, Ele_Neutral, 5); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bVariableCastrate, -4); + bonus2(bMagicAddEle, Ele_Neutral, 3); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bVariableCastrate, -3); + } else { + bonus(bVariableCastrate, -2); + } + "> +}, +{ + Id: 1737 + Name: "Aliza" + EggItem: "Aliza_Egg" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMdef, 7); + bonus(bHealPower, 6); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMdef, 6); + bonus(bHealPower, 4); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bMdef, 5); + bonus(bHealPower, 2); + } else { + bonus(bMdef, 4); + } + "> +}, +{ + Id: 20571 + Name: "Orc Hero" + EggItem: "Orc_Hero_Egg_" + FoodItem: "Luxurious_Pet_Food" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bAtkRate, 7); + bonus(bCritAtkRate, 3); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bAtkRate, 4); + bonus(bCritAtkRate, 1); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bAtkRate, 2); + } else { + bonus(bAtkRate, 1); + } + "> +}, +{ + Id: 20619 + Name: "Gloom Under Night" + EggItem: "Gloom_Under_Night_Egg" + FoodItem: "Luxurious_Pet_Food" + AutoFeed: true + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMatk, 40); + bonus2(bMagicAtkEle, Ele_Ghost, 7); + bonus2(bMagicAtkEle, Ele_Fire, 7); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMatk, 30); + bonus2(bMagicAtkEle, Ele_Ghost, 5); + bonus2(bMagicAtkEle, Ele_Fire, 5); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus(bMatk, 20); + } else { + bonus(bMatk, 10); + } + "> +}, +{ + Id: 20696 + Name: "Child Admin Beta" + EggItem: "Child_Admin_Beta_Egg" + FoodItem: "Cloud_Cotton" + AccessoryItem: "Little_Headdress_Beta" + EquipScript: <" + .@map$ = strcharinfo(PC_MAP); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@map$ == "ba_lost" || .@map$ == "ba_pw02") { + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus2(bAddRace, RC_All, 10); + bonus2(bMagicAddRace, RC_All, 10); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus2(bAddRace, RC_All, 6); + bonus2(bMagicAddRace, RC_All, 6); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus2(bAddRace, RC_All, 3); + bonus2(bMagicAddRace, RC_All, 3); + } + } + "> + Evolve: { + Child_Admin_Alpha_Egg: { + Barmil_Ticket: 500 + Broken_Steel_Piece: 50 + Mystery_Piece: 10 + } + } +}, +{ + Id: 20697 + Name: "Child Admin Alpha" + EggItem: "Child_Admin_Alpha_Egg" + AccessoryItem: "Little_Headdress_Alpha" + AutoFeed: true + EquipScript: <" + .@map$ = strcharinfo(PC_MAP); + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@map$ == "ba_pw01" || .@map$ == "ba_pw03" || .@map$ == "ba_2whs01" || .@map$ == "ba_2whs02") { + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus2(bAddRace, RC_All, 15); + bonus2(bMagicAddRace, RC_All, 15); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus2(bAddRace, RC_All, 8); + bonus2(bMagicAddRace, RC_All, 8); + } else if (.@intimacy >= PET_INTIMACY_NEUTRAL) { + bonus2(bAddRace, RC_All, 4); + bonus2(bMagicAddRace, RC_All, 4); + } + } + "> +}, +// jRO exclusive pets. +{ + Id: 3317 + Name: "Rubylit" + EggItem: "Rubylit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAtk, 20); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bAtk, 10); + "> +}, +{ + Id: 3318 + Name: "Sapphilit" + EggItem: "Sapphilit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxHP, 200); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMaxHP, 100); + "> +}, +{ + Id: 3319 + Name: "Emelit" + EggItem: "Emelit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) { + bonus(bMaxHP, 100); + bonus(bMaxSP, 50); + } else if (.@intimacy >= PET_INTIMACY_CORDIAL) { + bonus(bMaxHP, 50); + bonus(bMaxSP, 25); + } + "> +}, +{ + Id: 3320 + Name: "Topalit" + EggItem: "Topalit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMaxSP, 100); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMaxSP, 50); + "> +}, +{ + Id: 3321 + Name: "Amelit" + EggItem: "Amelit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bMatk, 20); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bMatk, 10); + "> +}, +{ + Id: 3349 + Name: "Mythlit" + EggItem: "Mythlit_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_LOYAL) + bonus(bAllStats, 2); + else if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus(bAllStats, 1); + "> +}, +{ + Id: 3306 + Name: "Tamadora" + EggItem: "Tamadora_Egg" + EquipScript: <" + .@intimacy = getpetinfo(PETINFO_INTIMACY); + if (.@intimacy >= PET_INTIMACY_CORDIAL) + bonus4(bAutoSpellWhenHit, AL_HEAL, 1, 20, 1); + if (.@intimacy >= PET_INTIMACY_LOYAL) + skill(AL_HEAL, 1); + "> }, -*/ ) diff --git a/doc/constants.md b/doc/constants.md index f0c7f50c8..e474d2134 100644 --- a/doc/constants.md +++ b/doc/constants.md @@ -8187,17 +8187,48 @@ - `FATAL_DAYS`: 2958 - `TORTUROUS_REDEEMER`: 2959 - `E_TORTUROUS_REDEEMER`: 2961 +- `WOODIE`: 2963 +- `XM_TEDDY_BEAR`: 2995 - `XM_CELINE_KIMI`: 2996 - `GRIM_REAPER_ANKOU`: 3029 - `TIMEHOLDER`: 3074 +- `ELEPHANT`: 3162 +- `GORILLA`: 3163 +- `LION`: 3164 +- `RHINO`: 3165 - `J_REB_SHECIL1`: 3169 - `J_REB_SHECIL2`: 3170 - `E1_FELOCK`: 3181 - `MM_SARAH`: 3190 - `ORGANIC_JAKK`: 3202 - `INORGANIC_JAKK`: 3203 +- `BLUE_UNICORN`: 3261 +- `PAD_TAMADORA`: 3306 +- `PAD_RUBYLIT`: 3317 +- `PAD_SAPPHILIT`: 3318 +- `PAD_EMELIT`: 3319 +- `PAD_TOPALIT`: 3320 +- `PAD_AMELIT`: 3321 +- `PAD_MYTHLIT`: 3349 - `DARK_SOUL`: 3381 - `WANDERING_SOUL`: 3382 +- `DR_EGGRING`: 3495 +- `DR_LUNATIC`: 3496 +- `LITTLE_ISIS`: 3636 +- `DIABOLIC2`: 3669 +- `DELETER_2`: 3670 +- `SCATLETON`: 3731 +- `SWEETS_DROPS`: 3790 +- `SKELION`: 3971 +- `NIGHTMARE_TERROR_H`: 20373 +- `WANDER_MAN_H`: 20420 +- `BACSOJIN2`: 20423 +- `MOONLIGHT2`: 20424 +- `PHREEONI2`: 20425 +- `ORK_HERO2`: 20571 +- `GLOOMUNDERNIGHT2`: 20619 +- `EP17_2_CHILD_ADMIN1`: 20696 +- `EP17_2_CHILD_ADMIN2`: 20697 ## Items (db/re/item_db.conf) - `Red_Potion`: 501 @@ -12726,6 +12757,8 @@ - `Memory_Of_Jack`: 6657 - `Halloween_Coin`: 6658 - `RWC_Inicializer`: 6665 +- `Emerald_Leaf`: 6669 +- `Log_`: 6670 - `Geffen_Magic_Coin`: 6671 - `Gray_Shard`: 6672 - `Bossnia_Pass`: 6673 @@ -12737,6 +12770,10 @@ - `Steel_Article`: 6746 - `Steel_Article_`: 6747 - `Corrupted_Charm`: 6755 +- `Banana_Can`: 6762 +- `Spicy_Rice_Cake`: 6763 +- `Hot_Dog`: 6764 +- `Ferris_Wheel_Biscuit`: 6765 - `ORGANIC_PUMPKIN`: 6804 - `INORGANIC_PUMPKIN`: 6805 - `Solo_Troops_Badge`: 6821 @@ -13750,9 +13787,22 @@ - `Brownie_Egg`: 9060 - `Marin_Egg`: 9061 - `Novice_Poring_Egg`: 9062 +- `Woodie_Egg`: 9063 +- `Elephant_Egg`: 9064 +- `Gorilla_Egg`: 9065 +- `Lion_Egg`: 9066 +- `Rhino_Egg`: 9067 +- `Blue_Unicorn_Egg`: 9068 - `Mastering_Egg`: 9069 - `Savage_Egg`: 9070 - `Grand_Peco_Peco_Egg`: 9071 +- `Rubylit_Egg`: 9074 +- `Sapphilit_Egg`: 9075 +- `Emelit_Egg`: 9076 +- `Topalit_Egg`: 9077 +- `Amelit_Egg`: 9078 +- `Mythlit_Egg`: 9079 +- `Tamadora_Egg`: 9080 - `High_Orc_Egg`: 9087 - `Angeling_Egg`: 9088 - `Am_Mut_Egg`: 9089 @@ -13779,6 +13829,16 @@ - `Phreeoni_Egg`: 9111 - `Moonlight_Flower_Egg`: 9112 - `Skelion_Egg`: 9113 +- `Bacsojin2_Egg_`: 9115 +- `Rigid_Nightmare_Terror_Egg`: 9116 +- `Contaminated_Wanderer_Egg`: 9117 +- `Aliot_Egg`: 9118 +- `Alicel_Egg`: 9119 +- `Aliza_Egg`: 9120 +- `Orc_Hero_Egg_`: 9121 +- `Gloom_Under_Night_Egg`: 9122 +- `Child_Admin_Beta_Egg`: 9123 +- `Child_Admin_Alpha_Egg`: 9124 - `Ein_Ddbox`: 9514 - `Metal_Rifine_Ticket`: 9523 - `Ein_Ddbox2`: 9529 @@ -13823,7 +13883,10 @@ - `Black_Butterfly_Mask`: 10037 - `Horn_Protector`: 10038 - `Tw_Backpack`: 10039 +- `Red_Bell_Necklace`: 10040 - `Dark_Mane`: 10042 +- `Little_Headdress_Beta`: 10043 +- `Little_Headdress_Alpha`: 10044 - `Prontera_Book_01`: 11000 - `Adventure_Story01`: 11001 - `Great_Chef_Orleans01`: 11002 @@ -13947,6 +14010,7 @@ - `Trance_Candy_Y`: 11594 - `Trance_Candy_G`: 11595 - `Catnip_Fruit`: 11602 +- `Cookie_Bat`: 11605 - `Crepe`: 11607 - `Chocolate_Egg`: 11608 - `Yummy_Cookie_Egg`: 11609 @@ -13954,6 +14018,7 @@ - `Aromatic_Pop_Corn`: 11612 - `Fresh_Milk`: 11614 - `Sweet_Potato_`: 11615 +- `Yummy_Meat`: 11616 - `Bearopy`: 11620 - `Aromatic_Pop_Corn_`: 11625 - `Girl_Bunch_Of_Flower`: 11701 @@ -18170,6 +18235,9 @@ - `Integer_Time`: 22837 - `Something_Candy_Holder`: 22838 - `Old_Money_Pocket`: 22876 +- `Sap_Jelly`: 23187 +- `Unprocessed_Parts`: 23188 +- `SmallDoll_Needle`: 23189 - `Fried_Chicken`: 23242 - `Fried_Chicken_1`: 23243 - `Elixir_Bandage`: 23256 @@ -18823,6 +18891,9 @@ - `S_Genesis_Pendant`: 24582 - `S_Genesis_Earing`: 24583 - `Slug_Bullet`: 25187 +- `Suspicious_Bottle`: 25231 +- `Cheap_Lubricant`: 25232 +- `Cotton_Tufts`: 25233 - `BrokenArrow`: 25258 - `Shining_Spore`: 25265 - `Dried_Leaf_Of_Ygg`: 25266 @@ -18832,6 +18903,7 @@ - `Happiness_Clover`: 25295 - `Golden_Corn`: 25340 - `Mightysoul_Essence`: 25375 +- `Luxurious_Pet_Food`: 25377 - `Captured_Savage`: 25390 - `Goodly_Bough`: 25391 - `Free_Pass_Ticket`: 25392 @@ -18983,6 +19055,8 @@ - `Ein_1HWHIP`: 26215 - `Faceworm_Queen_Card`: 27164 - `Captain_Felock_Card`: 27182 +- `Rigid_Nightmare_Terror_Card`: 27352 +- `Contaminated_Wanderer_Card`: 27361 - `Thanos_Katar`: 28000 - `Katar_Of_Evil_Slayer`: 28001 - `Half_BF_Katar2`: 28002 @@ -19130,6 +19204,7 @@ - `GH_Cursed_Crystal_`: 29590 - `Cursed_Emerald`: 29591 - `Shinee_Opal`: 29592 +- `Abandoned_Teddy_Bear_Card`: 31022 - `Roast_Memory`: 31172 - `C_Black_Cat`: 31186 - `Choco_Minihat`: 31195 @@ -19313,6 +19388,7 @@ - `Imperial_Trip_Suit`: 450074 - `ILL_Piece_B`: 100004 - `Imperial_Firerain_Suit`: 450075 +- `Cloud_Cotton`: 1000227 - `Imperial_Crimson_Robe`: 450076 - `Imperial_Frost_Robe`: 450077 - `Imperial_Psychic_Robe`: 450078 @@ -19435,6 +19511,7 @@ - `Boost_Gatling`: 830000 - `Abyss_Ddbox3`: 100144 - `Abyss_Ddbox4`: 100145 +- `Barmil_Ticket`: 1000103 > End of list diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index a24b385f7..b9332701d 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -4212,7 +4212,7 @@ REPLACE INTO `item_db` VALUES ('6217','Mandragora_Flowerpot','Mandragora Flowerp REPLACE INTO `item_db` VALUES ('6218','Disin_Delivery_Box','Dieshin\'s Delivery Box','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','507',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6219','Para_Team_Mark','Eden Group Mark','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','507',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6220','Mysterious_Dyestuff','Mysterious Dyestuffs','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); -REPLACE INTO `item_db` VALUES ('6221','Mystic_Leaf_Cat_Ball','Mystic Hydra Ball','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6221','Mystic_Leaf_Cat_Ball','Mystic Hydra Ball','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6222','Shining_Beads','Shining Beads','3','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6223','Carnium','Carnium','3','0','2000','1000','150','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','1','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6224','Bradium','Bradium','3','0','2000','1000','150','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','1','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -4595,6 +4595,8 @@ REPLACE INTO `item_db` VALUES ('6656','Goast_Free_Charm','Controlling Amulet','3 REPLACE INTO `item_db` VALUES ('6657','Memory_Of_Jack','Jack Memories','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','499',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6658','Halloween_Coin','Halloween Coin','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6665','RWC_Inicializer','RWC Enchant Reset Ticket','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6669','Emerald_Leaf','Emerald Leaf','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6670','Log_','Tree Log','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6671','Geffen_Magic_Coin','Geffen Magic Tournament Coin','3','0','10','5','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','467',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6672','Gray_Shard','Gray Piece','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','467',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6673','Bossnia_Pass','Ticket to Bossnia','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','507',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -4606,6 +4608,10 @@ REPLACE INTO `item_db` VALUES ('6712','Lovely_Stick','Love Wand','3','0','0','0' REPLACE INTO `item_db` VALUES ('6746','Steel_Article','Steel Artifact','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6747','Steel_Article_','Steel Artifact','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6755','Corrupted_Charm','Contaminated Magic','3','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6762','Banana_Can','Banana Can','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6763','Spicy_Rice_Cake','Spicy Rice Cake','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6764','Hot_Dog','Hot Dog','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('6765','Ferris_Wheel_Biscuit','Ferris Wheel Biscuit','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6804','ORGANIC_PUMPKIN','Organic Pumpkin','3','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6805','INORGANIC_PUMPKIN','Inorganic Pumpkin','3','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('6821','Solo_Troops_Badge','Single Union Badge','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','467',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -5619,9 +5625,22 @@ REPLACE INTO `item_db` VALUES ('9059','Tikbalang_Pet','Tikbalang Egg','7','0','2 REPLACE INTO `item_db` VALUES ('9060','Brownie_Egg','Egg of Domovoi','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9061','Marin_Egg','Marin Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9062','Novice_Poring_Egg','Novice Poring Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9063','Woodie_Egg','Woodie Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9064','Elephant_Egg','Elephant Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9065','Gorilla_Egg','Gorilla Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9066','Lion_Egg','Lion Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9067','Rhino_Egg','Rhino Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9068','Blue_Unicorn_Egg','Blue Unicorn Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9069','Mastering_Egg','Mastering Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9070','Savage_Egg','Savage Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9071','Grand_Peco_Peco_Egg','Grand Peco Peco Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9074','Rubylit_Egg','Rubylit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9075','Sapphilit_Egg','Sapphilit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9076','Emelit_Egg','Emelit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9077','Topalit_Egg','Topalit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9078','Amelit_Egg','Amelit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9079','Mythlit_Egg','Mythlit Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9080','Tamadora_Egg','Tamadora Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9087','High_Orc_Egg','High Orc Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9088','Angeling_Egg','Angeling Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9089','Am_Mut_Egg','Am Mut Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -5649,6 +5668,16 @@ REPLACE INTO `item_db` VALUES ('9111','Phreeoni_Egg','Phreeoni Egg','7','0','20' REPLACE INTO `item_db` VALUES ('9112','Moonlight_Flower_Egg','Moonlight Flower Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9113','Skelion_Egg','Skelion Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9514','Ein_Ddbox','Ein_Ddbox','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9115','Bacsojin2_Egg_','Bacsojin Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9116','Rigid_Nightmare_Terror_Egg','Rigid Nightmare Terror Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9117','Contaminated_Wanderer_Egg','Contaminated Wanderer Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9118','Aliot_Egg','Aliot Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9119','Alicel_Egg','Alicel Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9120','Aliza_Egg','Aliza Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9121','Orc_Hero_Egg_','Orc Hero Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9122','Gloom_Under_Night_Egg','Gloom Under Night Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9123','Child_Admin_Beta_Egg','Child Admin Beta Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('9124','Child_Admin_Alpha_Egg','Child Admin Alpha Egg','7','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9523','Metal_Rifine_Ticket','Metal_Rifine_Ticket','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9529','Ein_Ddbox2','Ein_Ddbox2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('9550','Gemstone_Of_Time','Gemstone_Of_Time','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -5692,7 +5721,10 @@ REPLACE INTO `item_db` VALUES ('10036','Hell_Horn','Horn Of Hell','8','0','20',' REPLACE INTO `item_db` VALUES ('10037','Black_Butterfly_Mask','Black Butterfly Mask','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('10038','Horn_Protector','Horn Barrier','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('10039','Tw_Backpack','Tw Backpack','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); -REPLACE INTO `item_db` VALUES ('10042','Dark_Mane','Dark_Mane','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('10040','Red_Bell_Necklace','Red Bell Necklace','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('10042','Dark_Mane','Dark_Mane','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('10043','Little_Headdress_Beta','Little Headdress Beta','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('10044','Little_Headdress_Alpha','Little Headdress Alpha','8','0','20','10','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11000','Prontera_Book_01','History book of Prontera','3','0','8000','4000','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','1','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11001','Adventure_Story01','Adventure Story Vol.1','3','0','8000','4000','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','1','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11002','Great_Chef_Orleans01','Chef King Orleans Vol.1','3','0','8000','4000','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','1','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -5816,6 +5848,7 @@ REPLACE INTO `item_db` VALUES ('11593','Trance_Candy_B','Blue Transform Candy',' REPLACE INTO `item_db` VALUES ('11594','Trance_Candy_Y','Yellow Transform Candy','0','0','0','0','30','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','itemheal rand(45,65),0; specialeffect(EF_CLOAKING, AREA, playerattached()); showscript \"Trans-Form-!! Jack Fo-rm!!\"; montransform JAKK, 600000, SC_MTF_PUMPKIN, 2000;','',''); REPLACE INTO `item_db` VALUES ('11595','Trance_Candy_G','Green Transform Candy','0','0','0','0','30','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','itemheal rand(45,65),0; specialeffect(EF_CLOAKING, AREA, playerattached()); showscript \"Trans-Form-!! Cube Fo-rm!!\"; montransform QUVE, 600000, SC_MTF_HITFLEE, 10, 20;','',''); REPLACE INTO `item_db` VALUES ('11602','Catnip_Fruit','Catnip Fruit','0','0','15','7','1','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','itemheal rand(10,40),0;','',''); +REPLACE INTO `item_db` VALUES ('11605','Cookie_Bat','Cookie Bat','0','0','0','0','50','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','itemheal(rand(50, 100), 0);','',''); REPLACE INTO `item_db` VALUES ('11607','Crepe','Crepe','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11608','Chocolate_Egg','Chocolate_Egg','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11609','Yummy_Cookie_Egg','Yummy_Cookie_Egg','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -5823,6 +5856,7 @@ REPLACE INTO `item_db` VALUES ('11611','Pop_Corn','Pop_Corn','3','0','0','0','0' REPLACE INTO `item_db` VALUES ('11612','Aromatic_Pop_Corn','Aromatic_Pop_Corn','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11614','Fresh_Milk','Fresh_Milk','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11615','Sweet_Potato_','Sweet_Potato_','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('11616','Yummy_Meat','Yummy Meat','0','0','0','0','50','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11620','Bearopy','Bearopy','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11625','Aromatic_Pop_Corn_','Aromatic_Pop_Corn_','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('11701','Girl_Bunch_Of_Flower','Girl\'s Bouquet','0','0','20','10','50','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','itemheal rand(105,145),0;','',''); @@ -10039,6 +10073,9 @@ REPLACE INTO `item_db` VALUES ('22808','Special_Gift_Box','Special Gift Box','2' REPLACE INTO `item_db` VALUES ('22837','Integer_Time','Integer Time','2','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','50',NULL,'0','1','0','0','0','0','0','507',NULL,'0',NULL,'0',NULL,'0','TmpRouletteBronze += 1;','',''); REPLACE INTO `item_db` VALUES ('22838','Something_Candy_Holder','Pumpkin Candy Holder','2','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','getrandgroupitem 22838,1;','',''); REPLACE INTO `item_db` VALUES ('22876','Old_Money_Pocket','Old Money Pocket','2','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','Zeny += rand(500, 550);','',''); +REPLACE INTO `item_db` VALUES ('23187','Sap_Jelly','Sap Jelly','2','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'1',NULL,'0',NULL,'0','pet(NINE_TAIL);','',''); +REPLACE INTO `item_db` VALUES ('23188','Unprocessed_Parts','Unprocessed Parts','2','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'1',NULL,'0',NULL,'0','pet(GREMLIN);','',''); +REPLACE INTO `item_db` VALUES ('23189','SmallDoll_Needle','Small Doll Needle','2','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'1',NULL,'0',NULL,'0','pet(TEDDY_BEAR);','',''); REPLACE INTO `item_db` VALUES ('23242','Fried_Chicken','Fried_Chicken','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('23243','Fried_Chicken_1','Fried_Chicken_1','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('23256','Elixir_Bandage','Elixir_Bandage','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -10692,6 +10729,9 @@ REPLACE INTO `item_db` VALUES ('24581','S_Genesis_Weapon','S_Genesis_Weapon','3' REPLACE INTO `item_db` VALUES ('24582','S_Genesis_Pendant','S_Genesis_Pendant','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('24583','S_Genesis_Earing','S_Genesis_Earing','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25187','Slug_Bullet','Slug Bullet','3','0','1200','600','1200','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('25231','Suspicious_Bottle','Suspicious Bottle','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('25232','Cheap_Lubricant','Cheap Lubricant','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('25233','Cotton_Tufts','Cotton Tufts','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25258','BrokenArrow','BrokenArrow','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25265','Shining_Spore','Shining_Spore','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25266','Dried_Leaf_Of_Ygg','Dried_Leaf_Of_Ygg','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -10701,6 +10741,7 @@ REPLACE INTO `item_db` VALUES ('25294','Clover_Ticket','Clover_Ticket','3','0',' REPLACE INTO `item_db` VALUES ('25295','Happiness_Clover','Happiness_Clover','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25340','Golden_Corn','Golden_Corn','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25375','Mightysoul_Essence','Mightysoul_Essence','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('25377','Luxurious_Pet_Food','Luxurious Pet Food','3','0','0','0','1','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25390','Captured_Savage','Captured_Savage','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25391','Goodly_Bough','Goodly_Bough','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('25392','Free_Pass_Ticket','Free_Pass_Ticket','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -10852,6 +10893,8 @@ REPLACE INTO `item_db` VALUES ('26164','ElectricFox_OS','ElectricFox_OS','3','0' REPLACE INTO `item_db` VALUES ('26215','Ein_1HWHIP','Ein_1HWHIP','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('27164','Faceworm_Queen_Card','Faceworm Queen Card','6','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','64','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus(bMaxHPrate, -10); bonus(bCritical, 15 + getrefine()); bonus(bCritAtkRate, getrefine());','',''); REPLACE INTO `item_db` VALUES ('27182','Captain_Felock_Card','Captain Felock Card','6','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','2','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus(bAtk, 30); bonus2(bSkillAtk, RL_AM_BLAST, getrefine() >= 10 ? 60 : 30); bonus2(bSkillAtk, RL_HAMMER_OF_GOD, getrefine() >= 10 ? 60 : 30);','',''); +REPLACE INTO `item_db` VALUES ('27352','Rigid_Nightmare_Terror_Card','Rigid Nightmare Terror Card','6','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','64','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus(bMaxSPrate, 5);','',''); +REPLACE INTO `item_db` VALUES ('27361','Contaminated_Wanderer_Card','Contaminated Wanderer Card','6','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','2','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2(bAddSize,Size_Medium, 30); bonus2(bAddSize,Size_Large, 30);','',''); REPLACE INTO `item_db` VALUES ('28000','Thanos_Katar','Thanatos Katar','4','16','20','10','1800','220','80','0','1','1','4096','56','2','34','4','120',NULL,'1','0','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bInt,6; bonus bVit,6; bonus bLuk,-6; bonus2 bSPDrainRate,10,5; bonus2 bHPDrainRate,10,5; bonus2 bHPLossRate,100,10000;','','heal -1000,0;'); REPLACE INTO `item_db` VALUES ('28001','Katar_Of_Evil_Slayer','Evil Slayer Ripper Katar','4','16','20','10','1200','120','0','0','1','1','4096','56','2','34','3','100',NULL,'1','0','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus2 bAddRace,RC_Demon,10; bonus2 bAddRace,RC_Undead,10; if(getrefine()>8) { bonus bAtkRate,5; } if(getrefine()>11) { bonus bAtkRate,7; }','',''); REPLACE INTO `item_db` VALUES ('28002','Half_BF_Katar2','Half BF Katar2','4','16','20','10','0','130','0','0','1','0','4096','63','2','34','3','80',NULL,'1','0','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus bStr,1; bonus bDex,1; bonus bLuk,1; bonus2 bAddRace,RC_DemiPlayer,35; bonus bCritAtkRate,10; bonus bAspdRate,3; bonus bUnbreakableWeapon,0;','',''); @@ -10999,6 +11042,7 @@ REPLACE INTO `item_db` VALUES ('29589','GH_Cursed_Gemstone_','GH_Cursed_Gemstone REPLACE INTO `item_db` VALUES ('29590','GH_Cursed_Crystal_','GH_Cursed_Crystal_','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('29591','Cursed_Emerald','Cursed_Emerald','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('29592','Shinee_Opal','Shinee_Opal','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('31022','Abandoned_Teddy_Bear_Card','Abandoned Teddy Bear Card','6','0','20','10','10','0','0','0','0','0','18446744073709551615','63','2','64','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','bonus(bMaxSPrate, 20); bonus2(bAddEff2, Eff_Curse, 20);','',''); REPLACE INTO `item_db` VALUES ('31172','Roast_Memory','Roast_Memory','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('31186','C_Black_Cat','C_Black_Cat','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('31195','Choco_Minihat','Choco_Minihat','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -11292,6 +11336,7 @@ REPLACE INTO `item_db` VALUES ('1000016','HighpriestStone_Top2','HighpriestStone REPLACE INTO `item_db` VALUES ('1000017','HighpriestStone_Middle2','HighpriestStone_Middle2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000018','HighpriestStone_Bottom2','HighpriestStone_Bottom2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000019','ArchbishopStone_Robe2','ArchbishopStone_Robe2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('1000103','Barmil_Ticket','Barmil Ticket','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000213','WarlockStone_Robe2','WarlockStone_Robe2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000214','WarlockStone_Top2','WarlockStone_Top2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000215','WarlockStone_Middle2','WarlockStone_Middle2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); @@ -11304,3 +11349,4 @@ REPLACE INTO `item_db` VALUES ('1000221','GuillcrossStone_Robe2','GuillcrossSton REPLACE INTO `item_db` VALUES ('1000222','AssacrossStone_Top2','AssacrossStone_Top2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000223','AssacrossStone_Middle2','AssacrossStone_Middle2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); REPLACE INTO `item_db` VALUES ('1000224','AssacrossStone_Bottom2','AssacrossStone_Bottom2','3','0','0','0','0','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); +REPLACE INTO `item_db` VALUES ('1000227','Cloud_Cotton','Cloud Cotton','3','0','0','0','10','0','0','0','0','0','18446744073709551615','63','2','0','0','0',NULL,'0','1','0','0','0','0','0','0',NULL,'0',NULL,'0',NULL,'0','','',''); diff --git a/sql-files/mob_db_re.sql b/sql-files/mob_db_re.sql index 713054e9c..4864affb2 100644 --- a/sql-files/mob_db_re.sql +++ b/sql-files/mob_db_re.sql @@ -1806,14 +1806,45 @@ REPLACE INTO `mob_db` VALUES (2957,'FORGOTTEN_NAME','Forgotten Name','Forgotten REPLACE INTO `mob_db` VALUES (2958,'FATAL_DAYS','Fatal Days','Fatal Days',120,24240,1,2052,2026,2,1025,403,84,41,100,71,63,85,115,37,10,12,1,6,67,14469,170,720,384,480,0,0,0,0,0,0,0,1038,2500,1050,2500,6672,1500,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (2959,'TORTUROUS_REDEEMER','Torturous Redeemer','Torturous Redeemer',120,103342,1,10599,8378,1,1253,500,144,28,133,69,72,55,165,44,10,12,1,7,62,14757,200,672,420,360,0,0,0,0,0,0,0,923,2000,6672,10000,6672,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (2961,'E_TORTUROUS_REDEEMER','Torturous Redeemer','Torturous Redeemer',120,103342,1,1,1,1,1,1,144,28,1,1,1,1,1,1,10,12,1,7,62,14757,200,672,420,360,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (2963,'WOODIE','Woodie','Woodie',1,60,1,18,10,1,13,3,2,5,6,1,1,0,6,5,10,12,0,3,21,131,400,1872,672,480,0,0,0,0,0,0,0,7203,2000,907,2000,7201,2000,1019,2000,756,200,6670,5000,0,0,0,0,0,0,4558,300); +REPLACE INTO `mob_db` VALUES (2995,'XM_TEDDY_BEAR','Abandoned Teddy Bear','Abandoned Teddy Bear',148,180000,1,6666,7332,1,1347,577,106,44,44,166,44,44,166,44,10,12,0,6,69,13205,150,780,780,504,0,0,0,0,0,0,0,7317,1900,615,150,12074,100,12734,1000,12738,100,0,0,0,0,0,0,0,0,31022,1); REPLACE INTO `mob_db` VALUES (2996,'XM_CELINE_KIMI','Celine Kimi','Celine Kimi',160,66666666,1,4444444,4033332,2,5636,8303,479,444,144,166,44,444,166,166,10,12,2,1,28,13973,100,1056,1056,480,444444,616,10000,617,10000,22534,10000,22534,4000,18549,4000,7642,4000,19701,100,13442,100,712,10000,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3029,'GRIM_REAPER_ANKOU','Grim Reaper Ankou','Grim Reaper Ankou',159,50000000,1553,300000,330000,1,1500,2500,200,70,200,100,200,200,220,100,10,12,2,1,89,133,200,900,864,480,0,0,0,0,0,0,0,607,500,603,200,604,200,22537,10000,522,200,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3074,'TIMEHOLDER','Time Holder','Time Holder',170,25000000,1,2291250,1938750,1,5250,2100,288,265,224,152,251,257,402,77,10,12,2,6,80,14261,100,398,384,288,2291250,0,0,0,0,0,0,1095,3000,2121,10,7054,3000,22515,3000,18874,20,16024,5,15089,3,0,0,0,0,4625,1); +REPLACE INTO `mob_db` VALUES (3162,'ELEPHANT','Elephant','Elephant',48,1080,1,184,207,1,184,48,70,30,40,45,32,19,42,20,10,12,0,2,23,131,150,1028,528,360,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3163,'GORILLA','Gorilla','Gorilla',48,1080,1,184,207,1,184,48,70,30,40,45,32,19,42,20,10,12,0,2,23,131,190,1028,528,360,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3164,'LION','Lion','Lion',48,1080,1,184,207,1,184,48,70,30,40,45,32,19,42,20,10,12,0,2,23,131,150,1028,528,360,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3165,'RHINO','Rhino','Rhino',48,1080,1,184,207,1,184,48,70,30,40,45,32,19,42,20,10,12,0,2,23,131,150,1028,528,360,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3169,'J_REB_SHECIL1','Shooting Target','Shooting Target',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,1,200,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3170,'J_REB_SHECIL2','Shooting Target','Shooting Target',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,1,200,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3181,'E1_FELOCK','Captain Ferlock','Captain Ferlock',130,3000000,1,3088,333333,10,0,0,0,0,0,0,0,0,0,0,10,12,2,9,47,129,170,1018,1008,300,0,0,0,0,0,0,0,15117,100,20744,100,22047,100,12082,3000,12072,3000,12087,3000,12077,3000,12092,3000,0,0,27182,1); REPLACE INTO `mob_db` VALUES (3190,'MM_SARAH','Sarah','Sarah',160,100000000,1,0,0,12,1090,2755,276,255,43,161,6,188,225,136,10,12,1,0,20,164,2000,500,500,0,0,0,0,0,0,0,0,15121,1000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4610,1); REPLACE INTO `mob_db` VALUES (3202,'ORGANIC_JAKK','Organic Pumpkin','Organic Pumpkin',10,40,1,20,13,1,100,0,160,99,1,1,1,1,999,1,1,1,0,3,21,97,200,398,199,0,0,0,0,0,0,0,0,6804,5000,6804,5000,6804,1000,2267,100,1062,1000,664,100,546,1000,12192,100,0,0,0,0); REPLACE INTO `mob_db` VALUES (3203,'INORGANIC_JAKK','Inorganic Pumpkin','Inorganic Pumpkin',10,40,1,20,13,1,100,0,160,99,1,1,1,1,999,1,1,1,0,3,21,97,200,398,199,0,0,0,0,0,0,0,0,6805,5000,6805,5000,6805,1000,2267,100,1062,1000,664,100,546,1000,12192,100,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3261,'BLUE_UNICORN','Blue Unicorn','Blue Unicorn',30,20,1,99,112,1,106,29,36,17,17,26,20,18,36,5,10,12,0,3,25,129,300,1672,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3306,'PAD_TAMADORA','Tamadora','Tamadora',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3317,'PAD_RUBYLIT','Rubylit','Rubylit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3318,'PAD_SAPPHILIT','Sapphilit','Sapphilit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3319,'PAD_EMELIT','Emelit','Emelit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3320,'PAD_TOPALIT','Topalit','Topalit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3321,'PAD_AMELIT','Amelit','Amelit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3349,'PAD_MYTHLIT','Mythlit','Mythlit',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3381,'DARK_SOUL','Dark Soul','Dark Soul',10,20,1,0,0,1,20,20,0,0,1,1,1,1,1,1,1,1,1,6,27,129,100,1960,960,504,0,0,0,0,0,0,0,12192,2000,6914,4000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); REPLACE INTO `mob_db` VALUES (3382,'WANDERING_SOUL','Wandering Soul','Wandering Soul',1,10,1,0,0,1,10,10,0,0,1,1,1,1,1,1,1,1,1,6,28,129,100,1248,1248,576,0,0,0,0,0,0,0,12192,2000,6915,4000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3495,'DR_EGGRING','Eggring','Eggring',1,50,1,50,35,1,7,1,2,4,6,1,1,0,6,4,10,12,0,3,22,131,400,1872,672,480,0,0,0,0,0,0,0,909,7000,512,1000,938,400,1010,30,601,500,512,150,512,20,0,0,0,0,4659,20); +REPLACE INTO `mob_db` VALUES (3496,'DR_LUNATIC','Leaf Lunatic','Leaf Lunatic',3,44,1,50,35,1,12,1,16,0,9,1,2,0,7,4,10,12,0,2,60,129,200,1456,456,336,0,0,0,0,0,0,0,705,7000,949,3000,2262,4,512,1000,601,500,515,3000,1010,30,0,0,0,0,4663,10); +REPLACE INTO `mob_db` VALUES (3636,'LITTLE_ISIS','Little Isis','Little Isis',59,2092,1,279,298,1,278,81,83,5,58,43,22,5,43,15,10,12,2,6,27,12693,200,1384,768,336,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3669,'DIABOLIC2','Diabolic2','Diabolic2',104,10572,1,1086,1073,1,772,283,68,61,103,80,53,65,94,25,10,12,0,6,47,14725,150,1080,780,180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3670,'DELETER_2','Deleter 2','Deleter 2',105,10000,1,1049,1038,1,733,265,114,53,98,72,65,49,68,71,10,12,0,9,43,12429,175,1024,624,336,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3731,'SCATLETON','Scatleton','Scatleton',14,140,1,0,0,1,50,13,13,0,10,12,8,5,17,7,10,12,0,6,27,133,300,1600,900,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3790,'SWEETS_DROPS','Sweets Drops','Sweets Drops',1,20,1,27,20,1,12,1,16,0,1,1,1,1,1,1,10,12,0,3,23,131,440,1372,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (3971,'SKELION','Skelion','Skelion',150,13000,1,594,669,1,222,56,88,16,25,16,12,45,33,29,10,12,0,0,20,165,150,960,864,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20373,'NIGHTMARE_TERROR_H','Rigid Nightmare Terror','Rigid Nightmare Terror',179,1523377,1,138489,96942,1,1709,725,242,75,81,149,21,186,129,61,12,12,2,6,67,14725,165,1216,816,432,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27352,10); +REPLACE INTO `mob_db` VALUES (20420,'WANDER_MAN_H','Corrupted Wanderer','Corrupted Wanderer',187,2387582,1,170542,119379,1,3654,1645,289,102,176,121,34,67,139,77,10,12,0,6,44,14725,100,672,500,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27361,10); +REPLACE INTO `mob_db` VALUES (20423,'BACSOJIN2','Bacsojin','Bacsojin',97,720500,1,801792,542880,3,1414,2036,210,178,118,244,98,126,246,102,10,12,2,7,64,14261,130,960,960,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20424,'MOONLIGHT2','Moonlight Flower','Moonlight Flower',79,324000,1,367488,271440,1,2232,1251,254,81,86,102,93,82,157,120,10,12,1,6,63,14261,150,1276,576,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20425,'PHREEONI2','Phreeoni','Phreeoni',71,300000,1,127600,180000,1,693,967,269,98,88,70,112,87,122,71,10,12,2,2,60,14261,200,1020,1020,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20571,'ORK_HERO2','Orc Hero','Orc Hero',50,362000,1,106920,97200,1,662,441,197,70,97,82,107,71,144,43,10,12,2,7,42,14261,150,1678,780,648,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20619,'GLOOMUNDERNIGHT2','Gloom Under Night','Gloom Under Night',139,3005000,1,2808000,1800000,3,6592,2785,479,262,191,223,187,155,362,163,10,12,2,0,68,14261,200,2000,2000,576,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20696,'EP17_2_CHILD_ADMIN1','Child Admin Beta','Child Admin Beta',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); +REPLACE INTO `mob_db` VALUES (20697,'EP17_2_CHILD_ADMIN2','Child Admin Alpha','Child Admin Alpha',1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,20,0,0,4000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); diff --git a/sql-files/mob_skill_db_re.sql b/sql-files/mob_skill_db_re.sql index 5bdb5aec4..37d8f5165 100644 --- a/sql-files/mob_skill_db_re.sql +++ b/sql-files/mob_skill_db_re.sql @@ -10055,6 +10055,14 @@ REPLACE INTO `mob_skill_db` VALUES (2959,'Torturous Redeemer@SM_BASH','attack',5 REPLACE INTO `mob_skill_db` VALUES (2959,'Torturous Redeemer@NPC_FIREATTACK','attack',186,3,1000,0,200000,'yes','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `mob_skill_db` VALUES (2959,'Torturous Redeemer@WZ_FIREPILLAR','attack',80,5,500,0,10000,'no','around2','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `mob_skill_db` VALUES (2959,'Torturous Redeemer@SM_MAGNUM','attack',7,5,500,0,10000,'no','self','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2963,'Woodie@AL_HEAL','attack',28,9,10000,500,5000,'no','self','myhpinrate',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2963,'Woodie@NPC_FIREATTACK','attack',186,3,2000,500,5000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2963,'Woodie@NPC_GROUNDATTACK','attack',185,3,2000,500,5000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2995,'Abandoned Teddy Bear@NPC_CURSEATTACK','attack',181,4,500,0,5000,'no','self','myhpinrate',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2995,'Abandoned Teddy Bear@NPC_CURSEATTACK','follow',181,4,500,0,5000,'no','self','myhpinrate',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2995,'Abandoned Teddy Bear@NPC_CRITICALSLASH','attack',170,1,500,0,5000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2995,'Abandoned Teddy Bear@SA_DISPELL','attack',289,1,50,1000,15000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); +REPLACE INTO `mob_skill_db` VALUES (2995,'Abandoned Teddy Bear@BS_HAMMERFALL','attack',110,5,500,1000,5000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `mob_skill_db` VALUES (3074,'Time Holder@NPC_AGIUP','attack',350,5,10000,0,10000,'yes','self','myhpltmaxrate','30',NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `mob_skill_db` VALUES (3074,'Time Holder@AL_INCAGI','chase',29,10,2000,700,10000,'no','self','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `mob_skill_db` VALUES (3074,'Time Holder@WZ_METEOR','attack',83,11,1000,500,10000,'no','target','always',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); diff --git a/src/map/atcommand.c b/src/map/atcommand.c index 91ddc3ef9..00073e544 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -962,39 +962,10 @@ ACMD(option) *------------------------------------------*/ ACMD(hide) { - if (pc_isinvisible(sd)) { - sd->sc.option &= ~OPTION_INVISIBLE; - if (sd->disguise != -1 ) - status->set_viewdata(&sd->bl, sd->disguise); - else - status->set_viewdata(&sd->bl, sd->status.class); - clif->message(fd, msg_fd(fd,10)); // Invisible: Off - - // increment the number of pvp players on the map - map->list[sd->bl.m].users_pvp++; - - if( map->list[sd->bl.m].flag.pvp && !map->list[sd->bl.m].flag.pvp_nocalcrank ) { - // register the player for ranking calculations - sd->pvp_timer = timer->add( timer->gettick() + 200, pc->calc_pvprank_timer, sd->bl.id, 0 ); - } - //bugreport:2266 - map->foreachinmovearea(clif->insight, &sd->bl, AREA_SIZE, sd->bl.x, sd->bl.y, BL_ALL, &sd->bl); - } else { - clif->clearunit_area(&sd->bl, CLR_OUTSIGHT); - sd->sc.option |= OPTION_INVISIBLE; - sd->vd.class = INVISIBLE_CLASS; - clif->message(fd, msg_fd(fd,11)); // Invisible: On - - // decrement the number of pvp players on the map - map->list[sd->bl.m].users_pvp--; - - if( map->list[sd->bl.m].flag.pvp && !map->list[sd->bl.m].flag.pvp_nocalcrank && sd->pvp_timer != INVALID_TIMER ) { - // unregister the player for ranking - timer->delete( sd->pvp_timer, pc->calc_pvprank_timer ); - sd->pvp_timer = INVALID_TIMER; - } - } - clif->changeoption(&sd->bl); + if (pc_isinvisible(sd)) + pc->unhide(sd, true); + else + pc->hide(sd, true); return true; } diff --git a/src/map/map.c b/src/map/map.c index b2c9c77c3..40e66e4df 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -1713,9 +1713,9 @@ static bool map_closest_freecell(int16 m, const struct block_list *bl, int16 *x, tx = *x + dx; ty = *y + dy; if (unit_is_dir_or_opposite(dir, UNIT_DIR_SOUTHWEST)) - tx *= costrange / MOVE_COST; + tx = tx * costrange / MOVE_COST; if (unit_is_dir_or_opposite(dir, UNIT_DIR_NORTHWEST)) - ty *= costrange / MOVE_COST; + ty = ty * costrange / MOVE_COST; if (!map->count_oncell(m, tx, ty, type, flag) && map->getcell(m, bl, tx, ty, CELL_CHKPASS)) { *x = tx; *y = ty; @@ -1724,9 +1724,9 @@ static bool map_closest_freecell(int16 m, const struct block_list *bl, int16 *x, tx = *x + dx; ty = *y + dy; if (unit_is_dir_or_opposite(dir, UNIT_DIR_NORTHWEST)) - tx *= costrange / MOVE_COST; + tx = tx * costrange / MOVE_COST; if (unit_is_dir_or_opposite(dir, UNIT_DIR_SOUTHWEST)) - ty *= costrange / MOVE_COST; + ty = ty * costrange / MOVE_COST; if (!map->count_oncell(m, tx, ty, type, flag) && map->getcell(m, bl, tx, ty, CELL_CHKPASS)) { *x = tx; *y = ty; diff --git a/src/map/mob.c b/src/map/mob.c index 347c42439..dcbdccedd 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -447,6 +447,9 @@ static bool mob_ksprotected(struct block_list *src, struct block_list *target) if( !battle_config.ksprotection ) return false; // KS Protection Disabled + if (status->isdead(target) != 0) + return false; // Target is dead. + if( !(md = BL_CAST(BL_MOB,target)) ) return false; // Target is not MOB @@ -3980,8 +3983,8 @@ static int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16 } } - mob_skills[i].permillage *= battle_config.mob_skill_rate / 100; - mob_skills[i].delay *= battle_config.mob_skill_delay / 100; + mob_skills[i].permillage = mob_skills[i].permillage * battle_config.mob_skill_rate / 100; + mob_skills[i].delay = mob_skills[i].delay * battle_config.mob_skill_delay / 100; db->maxskill = ++i; } @@ -5085,12 +5088,10 @@ static int mob_read_db_sub(struct config_setting_t *mobt, int n, const char *sou md.status.def_ele = i32; md.status.ele_lv = value; } else if (!inherit) { - ShowWarning("mob_read_db_sub: Missing element for monster ID %d.\n", md.mob_id); md.status.def_ele = ELE_NEUTRAL; md.status.ele_lv = 1; } } else if (!inherit) { - ShowWarning("mob_read_db_sub: Missing element for monster ID %d.\n", md.mob_id); md.status.def_ele = ELE_NEUTRAL; md.status.ele_lv = 1; } diff --git a/src/map/pc.c b/src/map/pc.c index 90282209b..a8ed4430e 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -8325,7 +8325,7 @@ static int pc_dead(struct map_session_data *sd, struct block_list *src) base_penalty *= 2; if (sd->status.mod_death != 100) - base_penalty *= sd->status.mod_death / 100; + base_penalty = base_penalty * sd->status.mod_death / 100; sd->status.base_exp -= min(sd->status.base_exp, base_penalty); clif->updatestatus(sd, SP_BASEEXP); @@ -8350,7 +8350,7 @@ static int pc_dead(struct map_session_data *sd, struct block_list *src) job_penalty *= 2; if (sd->status.mod_death != 100) - job_penalty *= sd->status.mod_death / 100; + job_penalty = job_penalty * sd->status.mod_death / 100; sd->status.job_exp -= min(sd->status.job_exp, job_penalty); clif->updatestatus(sd, SP_JOBEXP); @@ -9288,6 +9288,72 @@ static int pc_changelook(struct map_session_data *sd, int type, int val) return 0; } +/** + * Hides a character. + * + * @param sd The character to hide. + * @param show_msg Whether to show message to the character or not. + * + **/ +static void pc_hide(struct map_session_data *sd, bool show_msg) +{ + nullpo_retv(sd); + + clif->clearunit_area(&sd->bl, CLR_OUTSIGHT); + sd->sc.option |= OPTION_INVISIBLE; + sd->vd.class = INVISIBLE_CLASS; + + if (show_msg) + clif->message(sd->fd, atcommand->msgsd(sd, 11)); // Invisible: On + + // Decrement the number of pvp players on the map. + map->list[sd->bl.m].users_pvp--; + + if (map->list[sd->bl.m].flag.pvp != 0 && map->list[sd->bl.m].flag.pvp_nocalcrank == 0 + && sd->pvp_timer != INVALID_TIMER) { // Unregister the player for ranking. + timer->delete(sd->pvp_timer, pc->calc_pvprank_timer); + sd->pvp_timer = INVALID_TIMER; + } + + clif->changeoption(&sd->bl); +} + +/** + * Unhides a character. + * + * @param sd The character to unhide. + * @param show_msg Whether to show message to the character or not. + * + **/ +static void pc_unhide(struct map_session_data *sd, bool show_msg) +{ + nullpo_retv(sd); + + sd->sc.option &= ~OPTION_INVISIBLE; + + if (sd->disguise != -1) + status->set_viewdata(&sd->bl, sd->disguise); + else + status->set_viewdata(&sd->bl, sd->status.class); + + if (show_msg) + clif->message(sd->fd, atcommand->msgsd(sd, 10)); // Invisible: Off + + // Increment the number of pvp players on the map. + map->list[sd->bl.m].users_pvp++; + + if (map->list[sd->bl.m].flag.pvp != 0 && map->list[sd->bl.m].flag.pvp_nocalcrank == 0) // Register the player for ranking. + sd->pvp_timer = timer->add(timer->gettick() + 200, pc->calc_pvprank_timer, sd->bl.id, 0); + + // bugreport:2266 + map->foreachinmovearea(clif->insight, &sd->bl, AREA_SIZE, sd->bl.x, sd->bl.y, BL_ALL, &sd->bl); + + if (sd->disguise != -1) + clif->spawn_unit(&sd->bl, AREA_WOS); + + clif->changeoption(&sd->bl); +} + /*========================================== * Give an option (type) to player (sd) and display it to client *------------------------------------------*/ @@ -9299,7 +9365,13 @@ static int pc_setoption(struct map_session_data *sd, int type) //Option has to be changed client-side before the class sprite or it won't always work (eg: Wedding sprite) [Skotlex] sd->sc.option=type; - clif->changeoption(&sd->bl); + + if ((p_type & OPTION_INVISIBLE) != 0 && (type & OPTION_INVISIBLE) == 0) // Unhide character. + pc->unhide(sd, false); + else if ((p_type & OPTION_INVISIBLE) == 0 && (type & OPTION_INVISIBLE) != 0) // Hide character. + pc->hide(sd, false); + else + clif->changeoption(&sd->bl); if( (type&OPTION_RIDING && !(p_type&OPTION_RIDING)) || (type&OPTION_DRAGON && !(p_type&OPTION_DRAGON) && pc->checkskill(sd,RK_DRAGONTRAINING) > 0) ) { // Mounting @@ -12824,6 +12896,8 @@ void pc_defaults(void) pc->itemheal = pc_itemheal; pc->percentheal = pc_percentheal; pc->jobchange = pc_jobchange; + pc->hide = pc_hide; + pc->unhide = pc_unhide; pc->setoption = pc_setoption; pc->setcart = pc_setcart; pc->setfalcon = pc_setfalcon; diff --git a/src/map/pc.h b/src/map/pc.h index 2699b7882..6b2b44e2a 100644 --- a/src/map/pc.h +++ b/src/map/pc.h @@ -1044,6 +1044,8 @@ END_ZEROED_BLOCK; /* End */ int (*itemheal) (struct map_session_data *sd,int itemid, int hp,int sp); int (*percentheal) (struct map_session_data *sd,int hp,int sp); int (*jobchange) (struct map_session_data *sd, int class, int upper); + void (*hide) (struct map_session_data *sd, bool show_msg); + void (*unhide) (struct map_session_data *sd, bool show_msg); int (*setoption) (struct map_session_data *sd,int type); int (*setcart) (struct map_session_data* sd, int type); void (*setfalcon) (struct map_session_data *sd, bool flag); diff --git a/src/map/pet.c b/src/map/pet.c index 620779765..299de42c7 100644 --- a/src/map/pet.c +++ b/src/map/pet.c @@ -323,7 +323,7 @@ static int pet_hungry(int tid, int64 tick, int id, intptr_t data) } clif->send_petdata(sd, pd, 2, pd->pet.hungry); - interval *= battle_config.pet_hungry_delay_rate / 100; + interval = interval * battle_config.pet_hungry_delay_rate / 100; pd->pet_hungry_timer = timer->add(tick + max(interval, 1), pet->hungry, sd->bl.id, 0); return 0; @@ -944,7 +944,7 @@ static int pet_food(struct map_session_data *sd, struct pet_data *pd) else intimacy += pd->petDB->r_hungry / 2; // Increase intimacy by 50% of FeedIncrement. - intimacy *= battle_config.pet_friendly_rate / 100; + intimacy = intimacy * battle_config.pet_friendly_rate / 100; pet->set_intimate(pd, pd->pet.intimate + intimacy); if (pd->pet.intimate == PET_INTIMACY_NONE) { @@ -1128,12 +1128,22 @@ static int pet_ai_sub_hard(struct pet_data *pd, struct map_session_data *sd, int return 0; } +/** + * Calls pet_ai_sub_hard() for a character's pet if conditions are fulfilled. + * + * @param sd The character. + * @param ap Additional arguments. In this case only the time stamp of pet AI timer execution. + * @return Always 0. + * + **/ static int pet_ai_sub_foreachclient(struct map_session_data *sd, va_list ap) { - int64 tick = va_arg(ap,int64); nullpo_ret(sd); - if(sd->status.pet_id && sd->pd) - pet->ai_sub_hard(sd->pd,sd,tick); + + int64 tick = va_arg(ap, int64); + + if (sd->bl.prev != NULL && sd->status.pet_id != 0 && sd->pd != NULL && sd->pd->bl.prev != NULL) + pet->ai_sub_hard(sd->pd, sd, tick); return 0; } diff --git a/src/map/skill.c b/src/map/skill.c index 3dccf7a9e..1222cf940 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7383,7 +7383,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list * int rate = 100 * (100 - (tstatus->int_ / 2 + tstatus->vit / 3 + tstatus->luk / 10)); int duration = skill->get_time2(skill_id, skill_lv); - duration *= (100 - (tstatus->int_ + tstatus->vit) / 2) / 100; + duration = duration * (100 - (tstatus->int_ + tstatus->vit) / 2) / 100; status->change_start(src, bl, SC_BLIND, rate, 1, 0, 0, 0, duration, SCFLAG_NONE); } @@ -11296,7 +11296,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill FALLTHROUGH case GS_GROUNDDRIFT: //Ammo should be deleted right away. if ( skill_id == WM_SEVERE_RAINSTORM ) - sc_start(src,src,SC_NO_SWITCH_EQUIP,100,0,skill->get_time(skill_id,skill_lv)); + sc_start(src, src, type, 100, 0, skill->get_time(skill_id, skill_lv)); skill->unitsetting(src,skill_id,skill_lv,x,y,0); break; case WZ_ICEWALL: diff --git a/src/map/status.c b/src/map/status.c index d3e85e5be..d2d65ce37 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -696,6 +696,7 @@ static void initChangeTables(void) status->set_sc( WM_BEYOND_OF_WARCRY , SC_BEYOND_OF_WARCRY , SCB_STR|SCB_CRI|SCB_MAXHP ); status->set_sc( WM_UNLIMITED_HUMMING_VOICE, SC_UNLIMITED_HUMMING_VOICE, SCB_NONE ); status->set_sc( WM_FRIGG_SONG , SC_FRIGG_SONG , SCB_MAXHP ); + status->set_sc( WM_SEVERE_RAINSTORM , SC_NO_SWITCH_EQUIP , SCB_NONE ); /** * Sorcerer @@ -7808,6 +7809,9 @@ static int status_change_start_sub(struct block_list *src, struct block_list *bl calc_flag = status->dbs->ChangeFlagTable[type]; if(!(flag&SCFLAG_LOADED)) { // Do not parse val settings when loading SCs switch(type) { + case SC_AUTOTRADE: + case SC_KSPROTECTED: + break; // Prevent calling status_change_start_unknown_sc(). case SC_ADORAMUS: sc_start(src,bl,SC_BLIND,100,val1,skill->get_time(status->sc2skill(type),val1)); // Fall through to SC_INC_AGI diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc index 3bd0b7fe6..dfe5ba4a6 100644 --- a/src/plugins/HPMHooking/HPMHooking.Defs.inc +++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc @@ -6210,6 +6210,10 @@ typedef int (*HPMHOOK_pre_pc_percentheal) (struct map_session_data **sd, int *hp typedef int (*HPMHOOK_post_pc_percentheal) (int retVal___, struct map_session_data *sd, int hp, int sp); typedef int (*HPMHOOK_pre_pc_jobchange) (struct map_session_data **sd, int *class, int *upper); typedef int (*HPMHOOK_post_pc_jobchange) (int retVal___, struct map_session_data *sd, int class, int upper); +typedef void (*HPMHOOK_pre_pc_hide) (struct map_session_data **sd, bool *show_msg); +typedef void (*HPMHOOK_post_pc_hide) (struct map_session_data *sd, bool show_msg); +typedef void (*HPMHOOK_pre_pc_unhide) (struct map_session_data **sd, bool *show_msg); +typedef void (*HPMHOOK_post_pc_unhide) (struct map_session_data *sd, bool show_msg); typedef int (*HPMHOOK_pre_pc_setoption) (struct map_session_data **sd, int *type); typedef int (*HPMHOOK_post_pc_setoption) (int retVal___, struct map_session_data *sd, int type); typedef int (*HPMHOOK_pre_pc_setcart) (struct map_session_data **sd, int *type); diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc index 109c30885..13633807c 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc @@ -4790,6 +4790,10 @@ struct { struct HPMHookPoint *HP_pc_percentheal_post; struct HPMHookPoint *HP_pc_jobchange_pre; struct HPMHookPoint *HP_pc_jobchange_post; + struct HPMHookPoint *HP_pc_hide_pre; + struct HPMHookPoint *HP_pc_hide_post; + struct HPMHookPoint *HP_pc_unhide_pre; + struct HPMHookPoint *HP_pc_unhide_post; struct HPMHookPoint *HP_pc_setoption_pre; struct HPMHookPoint *HP_pc_setoption_post; struct HPMHookPoint *HP_pc_setcart_pre; @@ -11671,6 +11675,10 @@ struct { int HP_pc_percentheal_post; int HP_pc_jobchange_pre; int HP_pc_jobchange_post; + int HP_pc_hide_pre; + int HP_pc_hide_post; + int HP_pc_unhide_pre; + int HP_pc_unhide_post; int HP_pc_setoption_pre; int HP_pc_setoption_post; int HP_pc_setcart_pre; diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc index ac30b97d4..673dcc67a 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc @@ -2453,6 +2453,8 @@ struct HookingPointData HookingPoints[] = { { HP_POP(pc->itemheal, HP_pc_itemheal) }, { HP_POP(pc->percentheal, HP_pc_percentheal) }, { HP_POP(pc->jobchange, HP_pc_jobchange) }, + { HP_POP(pc->hide, HP_pc_hide) }, + { HP_POP(pc->unhide, HP_pc_unhide) }, { HP_POP(pc->setoption, HP_pc_setoption) }, { HP_POP(pc->setcart, HP_pc_setcart) }, { HP_POP(pc->setfalcon, HP_pc_setfalcon) }, diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc index 57351b808..34bcf3f8f 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc @@ -63705,6 +63705,58 @@ int HP_pc_jobchange(struct map_session_data *sd, int class, int upper) { } return retVal___; } +void HP_pc_hide(struct map_session_data *sd, bool show_msg) { + int hIndex = 0; + if (HPMHooks.count.HP_pc_hide_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, bool *show_msg); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_hide_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_pc_hide_pre[hIndex].func; + preHookFunc(&sd, &show_msg); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.pc.hide(sd, show_msg); + } + if (HPMHooks.count.HP_pc_hide_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, bool show_msg); + for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_hide_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_pc_hide_post[hIndex].func; + postHookFunc(sd, show_msg); + } + } + return; +} +void HP_pc_unhide(struct map_session_data *sd, bool show_msg) { + int hIndex = 0; + if (HPMHooks.count.HP_pc_unhide_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, bool *show_msg); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_unhide_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_pc_unhide_pre[hIndex].func; + preHookFunc(&sd, &show_msg); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.pc.unhide(sd, show_msg); + } + if (HPMHooks.count.HP_pc_unhide_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, bool show_msg); + for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_unhide_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_pc_unhide_post[hIndex].func; + postHookFunc(sd, show_msg); + } + } + return; +} int HP_pc_setoption(struct map_session_data *sd, int type) { int hIndex = 0; int retVal___ = 0; |