Selaa lähdekoodia

Merge branch 'master' into feature/map_zones

# Conflicts:
#	conf/msg_conf/map_msg.conf
aleos 1 vuosi sitten
vanhempi
commit
6ffcedcda8

+ 6 - 0
conf/atcommands.yml

@@ -918,6 +918,11 @@ Body:
   - Command: reloadbattleconf
     Help: |
       Reload battle settings.
+  - Command: reloadcashdb
+    Aliases:
+      - reloadcashshop
+    Help: |
+      Reload cash shop database.
   - Command: reloadinstancedb
     Help: |
       Reload instance database.
@@ -956,6 +961,7 @@ Body:
       atcommand       battleconf     statusdb
       pcdb                    motd             script
       questdb              msgconf       packetdb
+      cashdb
   - Command: langtype
     Help: |
       Params: <language>

+ 21 - 0
conf/maps_athena.conf

@@ -1613,5 +1613,26 @@ map: bl_depth2
 // Fantasy Series Sonic Collaboration - Dr. Eggman's Secret Base
 map: 1@vrsn
 
+// Episode 21
+map: 1@ep21a
+map: 1@ep21b
+map: 1@mdtem
+map: 1@twbs2
+map: 1@wtgs
+map: 2@mdtem
+map: jalbe_in
+map: jor_albe
+map: jor_base
+map: jor_crk
+map: jor_crk_p
+map: jor_mbase
+map: jor_raise1
+map: jor_raise2
+map: jor_tmple1
+map: jor_tmple2
+map: luna_sf1
+map: luna_sf2
+map: mbase_in
+
 //------------------------- Clone Maps ---------------------------
 //------------------------- Extra Maps ---------------------------

+ 5 - 2
conf/msg_conf/map_msg.conf

@@ -933,9 +933,12 @@
 // NoBank Mapflag
 831: You cannot use the Bank on this map.
 
+// @reloadcashdb
+832: Cash shop database has been reloaded.
+
 // Map Zones
-832: This command is disabled on this map.
-833: Map Zone database has been reloaded.
+833: This command is disabled on this map.
+834: Map Zone database has been reloaded.
 
 //834-899 free
 

BIN
db/map_cache.dat


+ 19 - 0
db/map_index.txt

@@ -1241,6 +1241,25 @@ t_garden
 3@vrpop
 bl_depth2
 1@vrsn
+1@ep21a
+1@ep21b
+1@mdtem
+1@twbs2
+1@wtgs
+2@mdtem
+jalbe_in
+jor_albe
+jor_base
+jor_crk
+jor_crk_p
+jor_mbase
+jor_raise1
+jor_raise2
+jor_tmple1
+jor_tmple2
+luna_sf1
+luna_sf2
+mbase_in
 
 //======================================================================================
 // - Other/Extra maps -

+ 1230 - 26
db/re/item_combos.yml

@@ -203,16 +203,19 @@ Body:
       bonus3 bAutoSpellWhenHit,"HP_ASSUMPTIO",2,5;
   - Combos:
       - Combo:
-          - Long_Horn
-          - Tournament_Shield
+          - Long_Horn    # 1420
+          - Tournament_Shield    # 2133
+      - Combo:
+          - Battle_Hook    # 1421
+          - Tournament_Shield    # 2133
       - Combo:
-          - Battle_Hook
-          - Tournament_Shield
+          - Hunting_Spear    # 1422
+          - Tournament_Shield    # 2133
       - Combo:
-          - Hunting_Spear
-          - Tournament_Shield
+          - Battle_Hook_    # 1440
+          - Tournament_Shield    # 2133
     Script: |
-      bonus2 bAddClass,Class_All,4;
+      bonus bAtkRate,4;
       bonus bDef,2;
       if (Class == 4008 || Class == 4054 || Class == 4060 || Class == 4252) {
          bonus bAspdRate,-5;
@@ -462,8 +465,8 @@ Body:
       bonus bMaxHP,300;
       .@r_weapon = getequiprefinerycnt(EQI_HAND_R);
       .@r_garment = getequiprefinerycnt(EQI_GARMENT);
-      bonus bMatkRate,(min(10,.@r_weapon)-5);
-      bonus2 bSubEle,Ele_Neutral,(min(10,.@r_garment)*3);
+      bonus bMatkRate,.@r_weapon-5;
+      bonus2 bSubEle,Ele_Neutral,.@r_garment*3;
   - Combos:
       - Combo:
           - Survival_Rod_
@@ -541,8 +544,8 @@ Body:
       .@weapon = getequiprefinerycnt(EQI_HAND_R);
       .@eq = getequiprefinerycnt(EQI_GARMENT);
       bonus bMaxHP,1000;
-      bonus bMatk,(-50+(20*.@weapon));
-      bonus bDelayrate,-(3*(min(.@weapon,10)/3));
+      bonus bMatk,(-50+(min(.@weapon,10)*20));
+      bonus bDelayrate,-3*(.@weapon/3);
       bonus2 bSubEle,Ele_Neutral,(min(.@eq,10)/2);
   - Combos:
       - Combo:
@@ -837,7 +840,7 @@ Body:
           - Arrow_Of_Wind
     Script: |
       bonus bLongAtkRate,25;
-      bonus3 bAutoSpell,"NJ_HUUJIN",5,(readparam(bInt) > 39) ? 300 : 100;
+      bonus3 bAutoSpell,"NJ_HUUJIN",5,(readparam(bInt) > 39) ? 200 : 100;
   - Combos:
       - Combo:
           - Gust_Bow
@@ -26523,18 +26526,19 @@ Body:
       bonus2 bCriticalAddRace,RC_Undead,50;
       bonus2 bCriticalAddRace,RC_Demon,50;
       bonus2 bCriticalAddRace,RC_DemiHuman,50;
-      /* todo auto spell */
+      bonus5 bAutoSpell,"CR_HOLYCROSS",getskilllv("CR_HOLYCROSS"),20,BF_WEAPON|BF_MAGIC,1;
+      bonus5 bAutoSpell,"AB_DUPLELIGHT",getskilllv("AB_DUPLELIGHT"),20,BF_WEAPON|BF_MAGIC,1;
+      autobonus2 "{ bonus3 bAutoSpellWhenHit,\"NPC_HELLJUDGEMENT\",3,1000; }",20,5000,BF_WEAPON,"{ active_transform 1871,5000; }";
       if (.@r >= 7) {
-         bonus2 bAddClass,Class_All,5;
+         bonus bAtkRate,5;
          bonus bMatkRate,5;
          bonus2 bSkillAtk,"CR_HOLYCROSS",50;
       }
       if (.@r >= 9) {
-         bonus2 bAddClass,Class_All,15;
+         bonus bAtkRate,15;
          bonus bMatkRate,15;
          bonus2 bSkillAtk,"CR_HOLYCROSS",100;
       }
-      /* todo CR_HOLYCROSS skill */
   - Combos:
       - Combo:
           - ShoesOfHero     # 22129
@@ -30393,32 +30397,44 @@ Body:
       bonus2 bMagicAddRace,RC_All,7*(.@r/3);
   - Combos:
       - Combo:
+          - Two_Hand_Spear_170   # 21018
           - Palace_Ring   # 490208
+      - Combo:
           - Two_Hand_Spear_170   # 21018
+          - aegis_490514   # 490514
     Script: |
       .@r = getequiprefinerycnt(EQI_HAND_R);
       bonus2 bSkillCooldown,"RK_IGNITIONBREAK",-1500;
       bonus bShortAtkRate,3*(.@r/2);
   - Combos:
       - Combo:
+          - Katar_170   # 28010
           - Palace_Ring   # 490208
+      - Combo:
           - Katar_170   # 28010
+          - aegis_490514   # 490514
     Script: |
       .@r = getequiprefinerycnt(EQI_HAND_R);
       bonus2 bSkillCooldown,"GC_DARKCROW",-8000;
       bonus bShortAtkRate,3*(.@r/2);
   - Combos:
       - Combo:
+          - Staff_170   # 2027
           - Palace_Ring   # 490208
+      - Combo:
           - Staff_170   # 2027
+          - aegis_490514   # 490514
     Script: |
       .@r = getequiprefinerycnt(EQI_HAND_R);
       bonus2 bSkillAtk,"WL_TETRAVORTEX",30;
       bonus2 bMagicAddRace,RC_All,4*(.@r/2);
   - Combos:
       - Combo:
+          - As_Ragged_Golem_Card   # 31026
           - Palace_Ring   # 490208
+      - Combo:
           - As_Ragged_Golem_Card   # 31026
+          - aegis_490514   # 490514
     Script: |
       bonus2 bAddRace,RC_All,10;
       bonus2 bMagicAddRace,RC_All,10;
@@ -36550,15 +36566,6 @@ Body:
           - Golden_Bug_Card    # 4128
     Script: |
       autobonus3 "{ bonus bAbsorbDmgMaxHP2,10; }",1000,10000,"ALL_FULL_THROTTLE";
-  - Combos:
-      - Combo:
-          - Battle_Hook_    # 1440
-          - Tournament_Shield    # 2133
-    Script: |
-      bonus bDef,2;
-      bonus bAtkRate,4;
-      if (Class == 4008 || Class == 4054 || Class == 4060 || Class == 4252)
-         bonus bAspdRate,-5;
   - Combos:
       - Combo:
           - Spiritual_Ring_    # 28432
@@ -45014,7 +45021,7 @@ Body:
           - Chonchon_Card    # 4009
           - aegis_400412    # 400412
     Script: |
-      .@r = getequiprefinerycnt(EQI_SHADOW_SHOES);
+      .@r = getequiprefinerycnt(EQI_SHOES);
       bonus bMaxHPrate,4+.@r;
       bonus bMaxSPrate,4+.@r;
   - Combos:
@@ -48714,3 +48721,1200 @@ Body:
           - IDTest_gun   # 800000
     Script: |
       bonus bDex,1;
+  - Combos:
+      - Combo:
+          - aegis_312418    # 312418
+          - aegis_410284    # 410284
+      - Combo:
+          - aegis_312418    # 312418
+          - aegis_410285    # 410285
+    Script: |
+      bonus2 bSubRace,RC_Player_Doram,5;
+      bonus2 bSubRace,RC_Player_Human,5;
+      bonus2 bSubEle,Ele_Ghost,5;
+      bonus2 bSubEle,Ele_Holy,5;
+  - Combos:
+      - Combo:
+          - aegis_29725    # 29725
+          - aegis_420270    # 420270
+    Script: |
+      bonus bAllStats,10;
+      bonus2 bSubRace,RC_Player_Doram,3;
+      bonus2 bSubRace,RC_Player_Human,3;
+      bonus bNoCastCancel;
+  - Combos:
+      - Combo:
+          - aegis_300389    # 300389
+          - aegis_450338    # 450338
+    Script: |
+      bonus2 bSubEle,Ele_Ghost,15;
+      bonus2 bAddRace,RC_All,30;
+      bonus2 bMagicAddRace,RC_All,30;
+  - Combos:
+      - Combo:
+          - Tha_Anger_1    # 310197
+          - aegis_470243    # 470243
+    Script: |
+      bonus bAllStats,30;
+      bonus bAtkRate,30;
+      bonus bMatkRate,30;
+  - Combos:
+      - Combo:
+          - EvilDragon_Armor_BR    # 15238
+          - Vanargand_Helm    # 18652
+    Script: |
+      .@r = getequiprefinerycnt(EQI_HEAD_TOP);
+      .@a = getequiprefinerycnt(EQI_ARMOR);
+      if (.@a>=12) {
+         bonus2 bHPDrainRate,-60,6;
+         bonus2 bSPDrainRate,-60,5;
+      }
+      else if (.@r>=9) {
+         bonus2 bHPDrainRate,-60,8;
+         bonus2 bSPDrainRate,-20,4;
+      }
+      else if (.@a>=9) {
+         bonus2 bHPDrainRate,-40,4;
+         bonus2 bSPDrainRate,-40,3;
+      }
+      else if (.@r>= 8) {
+         bonus2 bHPDrainRate,-50,5;
+         bonus2 bSPDrainRate,-10,2;
+      } 
+      else if (.@r >= 7) {
+         bonus2 bHPDrainRate,-30,5;
+         bonus2 bSPDrainRate,-10,2;
+      }
+      else if (.@a >=6) {
+         bonus2 bHPDrainRate,-30,3;
+         bonus2 bSPDrainRate,-30,2;
+      }
+      else if (.@r >= 5) {
+         bonus2 bHPDrainRate,-10,3;
+         bonus2 bSPDrainRate,-10,1;
+      }
+      else {
+         bonus2 bHPDrainRate,-10,1;
+         bonus2 bSPDrainRate,-10,1;
+      }
+  - Combos:
+      - Combo:
+          - Rideword_Hat    # 5208
+          - EvilDragon_Armor_BR    # 15238
+    Script: |
+      .@r = getequiprefinerycnt(EQI_ARMOR);
+      if (.@r>=12) {
+         bonus2 bHPDrainRate,-60,6;
+         bonus2 bSPDrainRate,-60,5;
+      }
+      else if (.@r>=9) {
+         bonus2 bHPDrainRate,-40,4;
+         bonus2 bSPDrainRate,-40,3;
+      }
+      else if (.@r>=6) {
+         bonus2 bHPDrainRate,-30,3;
+         bonus2 bSPDrainRate,-30,2;
+      }
+      else {
+         bonus2 bHPDrainRate,-50,8;
+         bonus2 bSPDrainRate,-10,4;
+      }
+  - Combos:
+      - Combo:
+          - Piece_Of_Angent_Skin    # 2554
+          - EvilDragon_Armor_BR    # 15238
+    Script: |
+      .@r = getequiprefinerycnt(EQI_ARMOR);
+      if (.@r>=12) {
+         bonus2 bHPDrainRate,-60,6;
+         bonus2 bSPDrainRate,-60,5;
+      }
+      else if (.@r>=9) {
+         bonus2 bHPDrainRate,-40,4;
+         bonus2 bSPDrainRate,-40,3;
+      }
+      else if (.@r>=6) {
+         bonus2 bHPDrainRate,-30,3;
+         bonus2 bSPDrainRate,-30,2;
+      }
+      else
+         bonus2 bSPDrainRate,-10,1;
+  - Combos:
+      - Combo:
+          - Majestic_Evil_Horn    # 5584
+          - EvilDragon_Armor_BR    # 15238
+    Script: |
+      .@r = getequiprefinerycnt(EQI_ARMOR);
+      if (.@r>=12) {
+         bonus2 bHPDrainRate,-60,6;
+         bonus2 bSPDrainRate,-60,5;
+      }
+      else if (.@r>=9) {
+         bonus2 bHPDrainRate,-40,4;
+         bonus2 bSPDrainRate,-40,3;
+      }
+      else if (.@r>=6) {
+         bonus2 bHPDrainRate,-30,3;
+         bonus2 bSPDrainRate,-30,2;
+      }
+      else {
+         bonus2 bHPDrainRate,30,15;
+         bonus2 bSPDrainRate,10,7;
+      }
+  - Combos:
+      - Combo:
+          - EvilDragon_Armor_BR    # 15238
+          - Cursed_Book    # 18752
+    Script: |
+      .@a = getequiprefinerycnt(EQI_HEAD_TOP);
+      .@r = getequiprefinerycnt(EQI_ARMOR);
+      if (.@r>=12) {
+         bonus2 bHPDrainRate,-60,6;
+         bonus2 bSPDrainRate,-60,5;
+      }
+      else if (.@r>=9) {
+         bonus2 bHPDrainRate,-40,4;
+         bonus2 bSPDrainRate,-40,3;
+      }
+      else if (.@r>=6) {
+         bonus2 bHPDrainRate,-30,3;
+         bonus2 bSPDrainRate,-30,2;
+      }
+      else {
+         bonus2 bHPDrainRate,-40,4+(.@a/2);
+         bonus2 bSPDrainRate,-10,1+(.@a/3);
+      }
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_LG_2    # 310941
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"LG_EARTHDRIVE\",83; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - Amp_SO_4    # 310947
+    Script: |
+      bonus2 bSkillCooldown,"SO_VARETYR_SPEAR",-1000;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_RA_2    # 310949
+    Script: |
+      bonus2 bSkillCooldown,"RA_ARROWSTORM",-300;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - Amp_AB_2    # 310953
+    Script: |
+      bonus4 bAutoSpellOnSkill,"AB_JUDEX","MG_SAFETYWALL",max(getskilllv("MG_SAFETYWALL"),3),100;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_RK_3    # 310956
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"RK_SONICWAVE\",56; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_GN_2    # 310962
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"GN_CARTCANNON\",49; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_GC_2    # 310964
+    Script: |
+      autobonus3 "{ bonus2 bSkillAtk,\"GC_ROLLINGCUTTER\",150; }",1000,10000,"GC_CROSSRIPPERSLASHER";
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_SC_1    # 310965
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"SC_TRIANGLESHOT\",17; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_SC_2    # 310966
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"SC_FATALMENACE\",46; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_KGOB_1    # 310967
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"KO_HUUMARANKA\",59; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_KGOB_2    # 310968
+    Script: |
+      bonus2 bSkillCooldown,"KO_JYUMONJIKIRI",-600;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_SJ_2    # 310974
+    Script: |
+      bonus2 bSkillCooldown,"SJ_LIGHTOFSUN",-10000;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - Amp_SJ_3    # 310975
+    Script: |
+      bonus2 bSkillCooldown,"SJ_LIGHTOFMOON",-10000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - Amp_SU_3    # 310980
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"SU_SV_STEMSPEAR\",29; }",30,10000,BF_MAGIC;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312808    # 312808
+    Script: |
+      bonus2 bSkillCooldown,"WL_EARTHSTRAIN",-3000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312809    # 312809
+    Script: |
+      bonus2 bFixedCastrate,"WL_JACKFROST",-100;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312810    # 312810
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"WL_HELLINFERNO\",29; }",30,10000,BF_MAGIC;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312811    # 312811
+    Script: |
+      bonus2 bSkillCooldown,"RA_AIMEDBOLT",-250;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312813    # 312813
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"NC_POWERSWING\",27; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312814    # 312814
+    Script: |
+      bonus4 bAutoSpellOnSkill,"AB_ADORAMUS","MG_SAFETYWALL",max(getskilllv("MG_SAFETYWALL"),3),100;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312815    # 312815
+    Script: |
+      bonus2 bSkillCooldown,"LG_CANNONSPEAR",-1000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312816    # 312816
+    Script: |
+      bonus4 bAutoSpellOnSkill,"PA_PRESSURE","LG_RAYOFGENESIS",max(getskilllv("LG_RAYOFGENESIS"),3),100;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312817    # 312817
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"LG_SHIELDPRESS\",27; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312818    # 312818
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"LG_BANISHINGPOINT\",24; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312819    # 312819
+    Script: |
+      skill "TF_DOUBLE",10;
+      bonus2 bSkillCooldown,"MG_FIREBOLT",10000;
+      bonus2 bSkillCooldown,"MG_COLDBOLT",10000;
+      bonus2 bSkillCooldown,"MG_LIGHTNINGBOLT",10000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312820    # 312820
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"WM_METALICSOUND\",24; }",30,10000,BF_MAGIC;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312821    # 312821
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"GN_CART_TORNADO\",19; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312822    # 312822
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"GN_SPORE_EXPLOSION\",99; }",30,10000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312824    # 312824
+    Script: |
+      autobonus "{ bonus4 bAutoSpellOnSkill,\"SR_RIDEINLIGHTNING\",\"CH_SOULCOLLECT\",1,1000; }",30,15000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312826    # 312826
+    Script: |
+      bonus2 bSkillCooldown,"SJ_LIGHTOFSTAR",-10000;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312830    # 312830
+    Script: |
+      autobonus "{ .@val = max(100, (Hp/1000)); bonus2 bSkillAtk,\"SU_PICKYPECK\",.@val; bonus2 bSkillAtk,\"SU_SCAROFTAROU\",.@val; bonus2 bSkillAtk,\"SU_LUNATICCARROTBEAT\",.@val; bonus2 bSkillAtk,\"SU_SVG_SPIRIT\",.@val; }",30,15000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312831    # 312831
+    Script: |
+      bonus2 bSkillCooldown,"RK_IGNITIONBREAK",-300;
+      bonus2 bSkillCooldown,"RK_SONICWAVE",-200;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312832    # 312832
+    Script: |
+      bonus2 bSkillCooldown,"WL_CRIMSONROCK",-100;
+      bonus2 bSkillCooldown,"WL_TELEKINESIS_INTENSE",-185000;
+    UnEquipScript: |
+      sc_end SC_TELEKINESIS_INTENSE;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312833    # 312833
+    Script: |
+      bonus2 bSkillCooldown,"RA_ARROWSTORM",-200;
+      bonus2 bSkillCooldown,"RA_UNLIMIT",-240000;
+    UnEquipScript: |
+      sc_end SC_UNLIMIT;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312834    # 312834
+    Script: |
+      bonus2 bSkillCooldown,"NC_AXETORNADO",-2000;
+      bonus2 bSkillCooldown,"NC_MAGMA_ERUPTION",-200;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312835    # 312835
+    Script: |
+      bonus2 bSkillCooldown,"GC_DARKCROW",-35000;
+      bonus2 bSkillCooldown,"GC_ROLLINGCUTTER",-200;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312836    # 312836
+    Script: |
+      bonus2 bSkillCooldown,"AB_ORATIO",-1500;
+      bonus2 bSkillCooldown,"AB_SILENTIUM",-14000;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312837    # 312837
+    Script: |
+      bonus2 bSkillCooldown,"LG_EARTHDRIVE",-1000;
+      bonus2 bSkillCooldown,"LG_SHIELDSPELL",-1500;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312838    # 312838
+    Script: |
+      bonus2 bFixedCastrate,"SO_PSYCHIC_WAVE",-100;
+      bonus2 bSkillCooldown,"SO_VARETYR_SPEAR",-1000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312839    # 312839
+    Script: |
+      bonus2 bSkillCooldown,"WM_METALICSOUND",-200;
+      bonus2 bSkillCooldown,"WM_LULLABY_DEEPSLEEP",-2000;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312840    # 312840
+    Script: |
+      bonus2 bSkillCooldown,"GN_CART_TORNADO",-200;
+      autobonus3 "{ bonus bPerfectHitRate,100; }",1000,3000,"GN_CART_TORNADO";
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312841    # 312841
+    Script: |
+      autobonus3 "{}",30,100,"SC_TRIANGLESHOT","{ sc_start SC_UNLIMIT,20000,5; }";
+    UnEquipScript: |
+      sc_end SC_UNLIMIT;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312842    # 312842
+    Script: |
+      bonus2 bSkillCooldown,"SR_ASSIMILATEPOWER",-3000;
+      autobonus3 "{ bonus bFlee2,95; }",1000,3000,"SR_SKYNETBLOW";
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312843    # 312843
+    Script: |
+      bonus2 bSkillCooldown,"SJ_NEWMOONKICK",-200;
+      bonus2 bSkillFixedCast,"SJ_FULLMOONKICK",-1000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312844    # aegis_312844
+    Script: |
+      bonus2 bFixedCastrate,"SP_SPA",-100;
+      bonus2 bFixedCastrate,"SP_SWHOO",-100;
+      bonus2 bSkillCooldown,"SP_CURSEEXPLOSION",-500;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312845    # aegis_312845
+    Script: |
+      bonus2 bSkillCooldown,"KO_IZAYOI",-30000;
+      bonus2 bSkillCooldown,"KO_HUUMARANKA",-200;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312846    # aegis_312846
+    Script: |
+      bonus2 bSkillCooldown,"RL_R_TRIP",-200;
+      bonus2 bSkillCooldown,"RL_RICHS_COIN",-3000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312847    # aegis_312847
+    Script: |
+      autobonus3 "{ bonus2 bSkillUseSP,\"SU_CN_METEOR\",79; bonus2 bSkillUseSP,\"SU_SV_STEMSPEAR\",29; }",1000,10000,"SU_NYANGGRASS";
+  - Combos:
+      - Combo:
+          - aegis_450336    # 450336
+          - aegis_470241    # 470241
+          - aegis_480390    # 480390
+    Script: |
+      bonus bFlee,250;
+      bonus bPerfectHitAddRate,50;
+  - Combos:
+      - Combo:
+          - aegis_450333    # 450333
+          - aegis_470239   # 470239
+          - aegis_480389    # 480389
+    Script: |
+      bonus bCritical,100;
+      bonus bCritAtkRate,50;
+  - Combos:
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_450333    # 450333
+          - aegis_470239   # 470239
+          - aegis_480389    # 480389
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_450335    # 450335
+          - aegis_470240    # 470240
+          - aegis_480388    # 480388
+    Script: |
+      bonus2 bSubEle,Ele_Ghost,20;
+      bonus2 bResEff,Eff_Freeze,10000;
+  - Combos:
+      - Combo:
+          - aegis_450335    # 450335
+          - aegis_470240    # 470240
+          - aegis_480388    # 480388
+    Script: |
+      bonus bVariableCastrate,-100;
+      bonus bNoGemStone;
+  - Combos:
+      - Combo:
+          - aegis_450337    # 450337
+          - aegis_470242    # 470242
+          - aegis_480391    # 480391
+    Script: |
+      bonus bFlee,250;
+      bonus bFixedCastrate,-70;
+  - Combos:
+      - Combo:
+          - aegis_490454    # 490454
+          - aegis_490456    # 490456
+      - Combo:
+          - aegis_490458    # 490458
+          - aegis_490460    # 490460
+    Script: |
+      bonus bIgnoreDefRace,RC_All;
+  - Combos:
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_490454    # 490454
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_490456    # 490456
+    Script: |
+      bonus bAtkRate,15;
+  - Combos:
+      - Combo:
+          - aegis_490455    # 490455
+          - aegis_490457    # 490457
+      - Combo:
+          - aegis_490459    # 490459
+          - aegis_490461    # 490461
+    Script: |
+      bonus bIgnoreMDefRace,RC_All;
+  - Combos:
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_490455    # 490455
+      - Combo:
+          - Wild_Beast    # 400409
+          - aegis_490457    # 490457
+    Script: |
+      bonus bMatkRate,15;
+  - Combos:
+      - Combo:
+          - Illusion_Box_Garden    # 311075
+          - aegis_470254    # 470254
+    Script: |
+      bonus bCritical,25;
+      bonus bCritAtkRate,30;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312396    # 312396
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"SHC_IMPACT_CRATER\",209; bonus2 bSkillUseSP,\"SHC_SAVAGE_IMPACT\",209; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312474    # 312474
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"DK_HACKANDSLASHER\",189; bonus2 bSkillUseSP,\"DK_MADNESS_CRUSHER\",189; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312647    # 312647
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"ABC_CHAIN_REACTION_SHOT\",169; bonus2 bSkillUseSP,\"ABC_FRENZY_SHOT\",109; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312927    # 312927
+    Script: |
+      bonus2 bSkillFixedCast,"AG_ALL_BLOOM",-500;
+      bonus2 bSkillFixedCast,"AG_CRYSTAL_IMPACT",-500;
+      bonus2 bSkillFixedCast,"AG_DESTRUCTIVE_HURRICANE",-500;
+      bonus2 bSkillFixedCast,"AG_VIOLENT_QUAKE",-500;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312932    # 312932
+    Script: |
+      bonus2 bSkillCooldown,"IQ_MASSIVE_F_BLASTER",-100;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312935    # 312935
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"IG_OVERSLASH\",239; bonus2 bSkillUseSP,\"IG_GRAND_JUDGEMENT\",429; bonus2 bSkillUseSP,\"IG_SHIELD_SHOOTING\",159; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312938    # 312938
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"WH_CRESCIVE_BOLT\",119; bonus2 bSkillUseSP,\"WH_GALESTORM\",169; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312941    # 312941
+    Script: |
+      bonus2 bSkillFixedCast,"EM_CONFLAGRATION",-1000;
+      bonus2 bSkillFixedCast,"EM_LIGHTNING_LAND",-1000;
+      bonus2 bSkillFixedCast,"EM_VENOM_SWAMP",-1000;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312944    # 312944
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"CD_ARBITRIUM\",439; bonus2 bSkillUseSP,\"CD_PNEUMATICUS_PROCELLA\",659; bonus2 bSkillUseSP,\"CD_FRAMEN\",439; }",30,20000,BF_MAGIC;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312951    # 312951
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"TR_RHYTHMSHOOTING\",109; bonus2 bSkillUseSP,\"TR_ROSEBLOSSOM\",229; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312955    # 312955
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"BO_ACIDIFIED_ZONE_FIRE\",539; bonus2 bSkillUseSP,\"BO_ACIDIFIED_ZONE_WIND\",539; bonus2 bSkillUseSP,\"BO_ACIDIFIED_ZONE_WATER\",479; bonus2 bSkillUseSP,\"BO_ACIDIFIED_ZONE_GROUND\",479; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312958    # 312958
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"MT_AXE_STOMP\",299; bonus2 bSkillUseSP,\"MT_RUSH_QUAKE\",439; }",30,20000,BF_WEAPON;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312960    # 312960
+    Script: |
+      bonus2 bSkillFixedCast,"HN_METEOR_STORM_BUSTER",-1500;
+  - Combos:
+      - Combo:
+          - Release_Of_Magic    # 29371
+          - aegis_312961    # 312961
+    Script: |
+      autobonus "{ bonus2 bSkillUseSP,\"HN_JUPITEL_THUNDER_STORM\",79; bonus2 bSkillUseSP,\"HN_HELLS_DRIVE\",69; }",30,20000,BF_MAGIC;
+  - Combos:
+      - Combo:
+          - aegis_311883    # 311883
+          - aegis_410302    # 410302
+    Script: |
+      bonus bSpeedRate,25;
+      bonus2 bSubRace,RC_Player_Human,5;
+      bonus2 bSubRace,RC_Player_Doram,5;
+  - Combos:
+      - Combo:
+          - Shecil_Memory    # 29600
+          - aegis_470263    # 470263
+      - Combo:
+          - Shecil_Memory    # 29600
+          - aegis_470264    # 470264
+    Script: |
+      .@r = getequiprefinerycnt(EQI_HAND_R);
+      bonus2 bSkillCooldown,"RA_ARROWSTORM",-700;
+      bonus bFixedCast,-200*(.@r/4);
+      bonus bDelayrate,-5*(.@r/4);
+      bonus2 bVariableCastrate,"RA_ARROWSTORM",-35*(.@r/4);
+      bonus2 bVariableCastrate,"RA_AIMEDBOLT",-35*(.@r/4);
+  - Combos:
+      - Combo:
+          - Tren_Memory    # 29606
+          - aegis_470263    # 470263
+      - Combo:
+          - Alpho_Memory    # 29607
+          - aegis_470263    # 470263
+      - Combo:
+          - Tren_Memory    # 29606
+          - aegis_470264    # 470264
+      - Combo:
+          - Alpho_Memory    # 29607
+          - aegis_470264    # 470264
+    Script: |
+      bonus2 bSkillCooldown,"WM_METALICSOUND",-500;
+      bonus2 bMagicAtkEle,Ele_Neutral,15*(getequiprefinerycnt(EQI_HAND_R)/4);
+  - Combos:
+      - Combo:
+          - Shecil_Memory    # 29600
+          - BioWeapon_Helm_RA    # 400116
+          - aegis_470263    # 470263
+      - Combo:
+          - Shecil_Memory    # 29600
+          - BioWeapon_Helm_RA    # 400116
+          - aegis_470264    # 470264
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HEAD_TOP) + getequiprefinerycnt(EQI_HAND_R) + getequiprefinerycnt(EQI_SHOES);
+      if (.@sum >= 33) {
+         autobonus3 "{ bonus2 bSkillAtk,\"RA_AIMEDBOLT\",250; }",1000,30000,"RA_UNLIMIT";
+         if (.@sum >= 35) {
+              bonus2 bIgnoreDefRaceRate,RC_All,40;
+              bonus2 bIgnoreDefRaceRate,RC_Player_Doram,-40;
+              bonus2 bIgnoreDefRaceRate,RC_Player_Human,-40;
+         }
+      }
+  - Combos:
+      - Combo:
+          - Tren_Memory    # 29606
+          - BioWeapon_Helm_WM    # 400117
+          - aegis_470263    # 470263
+      - Combo:
+          - Alpho_Memory    # 29607
+          - BioWeapon_Helm_WM    # 400117
+          - aegis_470263    # 470263
+      - Combo:
+          - Tren_Memory    # 29606
+          - BioWeapon_Helm_WM    # 400117
+          - aegis_470264    # 470264
+      - Combo:
+          - Alpho_Memory    # 29607
+          - BioWeapon_Helm_WM    # 400117
+          - aegis_470264    # 470264
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HEAD_TOP) + getequiprefinerycnt(EQI_HAND_R) + getequiprefinerycnt(EQI_SHOES);
+      if (.@sum >= 33) {
+         bonus4 bAutoSpellOnSkill,"WM_METALICSOUND","WM_METALICSOUND",10,350;
+         if (.@sum >= 35) {
+              bonus2 bIgnoreDefRaceRate,RC_All,40;
+              bonus2 bIgnoreDefRaceRate,RC_Player_Doram,-40;
+              bonus2 bIgnoreDefRaceRate,RC_Player_Human,-40;
+         }
+      }
+  - Combos:
+      - Combo:
+          - aegis_490515    # 490515
+          - Up_Sword_Of_Bluefire    # 500013
+      - Combo:
+          - aegis_490516    # 490516
+          - Up_Sword_Of_Bluefire    # 500013
+    Script: |
+      bonus bLongAtkRate,8;
+      if (getequiprefinerycnt(EQI_HAND_R)>=11)
+         bonus2 bSkillAtk,"GN_CARTCANNON",(readparam(bStr)+readparam(bDex))/12;
+  - Combos:
+      - Combo:
+          - aegis_490515    # 490515
+          - Up_Slate_Sword    # 500014
+      - Combo:
+          - aegis_490516    # 490516
+          - Up_Slate_Sword    # 500014
+    Script: |
+      bonus2 bAddRace,RC_All,8;
+      if (getequiprefinerycnt(EQI_HAND_R)>=11)
+         bonus2 bSkillAtk,"GN_CART_TORNADO",(readparam(bStr)+readparam(bDex))/12;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312959    # 312959
+    Script: |
+      bonus2 bSkillCooldown,"MT_SPARK_BLASTER",-100;
+      bonus2 bSkillCooldown,"MT_TRIPLE_LASER",-100;
+  - Combos:
+      - Combo:
+          - Hero    # 29509
+          - aegis_312971    # 312971
+    Script: |
+      bonus2 bSkillCooldown,"NW_THE_VIGILANTE_AT_NIGHT",-300;
+  - Combos:
+      - Combo:
+          - aegis_300515   # 300515
+          - aegis_300524   # 300524
+    Script: |
+      bonus2 bAddEle,Ele_All,15;
+      bonus bShortAtkRate,15;
+  - Combos:
+      - Combo:
+          - aegis_300515   # 300515
+          - aegis_300525   # 300525
+    Script: |
+      bonus2 bAddEle,Ele_All,15;
+      bonus bShortAtkRate,15;
+  - Combos:
+      - Combo:
+          - aegis_300517   # 300517
+          - aegis_300524   # 300524
+    Script: |
+      bonus2 bAddEle,Ele_All,15;
+      bonus bLongAtkRate,15;
+  - Combos:
+      - Combo:
+          - aegis_300517   # 300517
+          - aegis_300525   # 300525
+    Script: |
+      bonus2 bAddEle,Ele_All,15;
+      bonus bLongAtkRate,15;
+  - Combos:
+      - Combo:
+          - aegis_300519   # 300519
+          - aegis_300506   # 300506
+    Script: |
+      if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_WEAPONLEVEL)==5) {
+         bonus2 bAddSize,Size_All,25+15;
+         bonus bPAtk,5;
+      }
+  - Combos:
+      - Combo:
+          - aegis_300520   # 300520
+          - aegis_300507   # 300507
+    Script: |
+      if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_WEAPONLEVEL)==5) {
+         bonus2 bMagicAddSize,Size_All,25+15;
+         bonus bSMatk,5;
+      }
+  - Combos:
+      - Combo:
+          - aegis_300521   # 300521
+          - aegis_300529   # 300529
+    Script: |
+      bonus2 bMagicAddEle,Ele_All,15;
+      bonus2 bMagicAtkEle,Ele_Ghost,15;
+      bonus2 bMagicAtkEle,Ele_Fire,15;
+      bonus2 bMagicAtkEle,Ele_Neutral,15;
+      bonus2 bMagicAtkEle,Ele_Holy,15;
+      bonus2 bMagicAtkEle,Ele_Dark,15;
+  - Combos:
+      - Combo:
+          - aegis_300522   # 300522
+          - aegis_300529   # 300529
+    Script: |
+      bonus2 bMagicAddEle,Ele_All,15;
+      bonus2 bMagicAtkEle,Ele_Undead,15;
+      bonus2 bMagicAtkEle,Ele_Earth,15;
+      bonus2 bMagicAtkEle,Ele_Water,15;
+      bonus2 bMagicAtkEle,Ele_Wind,15;
+      bonus2 bMagicAtkEle,Ele_Poison,15;
+  - Combos:
+      - Combo:
+          - aegis_300527   # 300527
+          - aegis_300526   # 300526
+    Script: |
+      bonus bCritAtkRate,12;
+      bonus bCRate,2;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_IG   # 400650
+          - OverSpear_Furious   # 530057
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_IG   # 400650
+          - Lance_Furious   # 530058
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SHC   # 400651
+          - RightShape_Furious   # 510152
+          - LeftShape_Furious   # 510153
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SHC   # 400651
+          - Impact_Furious   # 610071
+    Script: |
+      bonus2 bSkillCooldown,"SHC_SAVAGE_IMPACT",-120;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SS   # 400652
+          - Humma_Furious   # 610072
+    Script: |
+      bonus2 bSkillCooldown,"SS_KUNAIKAITEN",-300;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SS   # 400652
+          - WheelHumma_Furious   # 650049
+    Script: |
+      bonus2 bSkillAtk,"SS_KINRYUUHOU",15;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_MT   # 400661
+          - Hammer_Furious   # 590087
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_MT   # 400661
+          - GiganticAxe_Furious   # 620040
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_EM   # 400662
+          - MasterSpellBook_Furious   # 540090
+    Script: |
+      bonus2 bMagicAddRace,RC_All,10;
+      bonus2 bMagicAddRace,RC_Player_Human,-10;
+      bonus2 bMagicAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_EM   # 400662
+          - Grimoire_Furious   # 540091
+    Script: |
+      bonus2 bSkillAtk,"EM_TERRA_DRIVE",15;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SOA   # 400663
+          - Soul_Furious   # 550145
+    Script: |
+      bonus2 bMagicAddRace,RC_All,10;
+      bonus2 bMagicAddRace,RC_Player_Human,-10;
+      bonus2 bMagicAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - FuriousCirclet_SOA   # 400663
+          - SpiritStick_Furious   # 550146
+    Script: |
+      bonus2 bMagicAddRace,RC_All,10;
+      bonus2 bMagicAddRace,RC_Player_Human,-10;
+      bonus2 bMagicAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Armor   # 450350
+          - Gaebolg_Boots   # 470260
+          - Gaebolg_Manteau   # 480415
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Armor   # 450350
+          - Gaebolg_Manteau   # 480415
+    Script: |
+      bonus2 bAddEle,Ele_All,10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Robe   # 450351
+          - Gaebolg_Shoes   # 470261
+          - Gaebolg_Muffler   # 480416
+    Script: |
+      bonus2 bMagicAddRace,RC_All,10;
+      bonus2 bMagicAddRace,RC_Player_Human,-10;
+      bonus2 bMagicAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Robe   # 450351
+          - Gaebolg_Muffler   # 480416
+    Script: |
+      bonus2 bMagicAddEle,Ele_All,10;
+  - Combos:
+      - Combo:
+          - Shield_Furious   # 460072
+          - Lance_Furious   # 530058
+    Script: |
+      bonus2 bAddEle,Ele_All,5;
+  - Combos:
+      - Combo:
+          - Gaebolg_Boots   # 470260
+          - Gaebolg_Armor   # 450350
+    Script: |
+      bonus2 bAddEle,Ele_All,10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Shoes   # 470261
+          - Gaebolg_Robe   # 450351
+    Script: |
+      bonus2 bMagicAddEle,Ele_All,10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Manteau   # 480415
+          - Gaebolg_Boots   # 470260
+    Script: |
+      bonus2 bAddRace,RC_All,10;
+      bonus2 bAddRace,RC_Player_Human,-10;
+      bonus2 bAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Muffler   # 480416
+          - Gaebolg_Shoes   # 470261
+    Script: |
+      bonus2 bMagicAddRace,RC_All,10;
+      bonus2 bMagicAddRace,RC_Player_Human,-10;
+      bonus2 bMagicAddRace,RC_Player_Doram,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Ring   # 490507
+          - Gaebolg_Glove   # 490508
+    Script: |
+      bonus bDelayrate,-5;
+      bonus bVariableCastrate,-10;
+  - Combos:
+      - Combo:
+          - Gaebolg_Earring   # 490509
+          - Gaebolg_Necklace   # 490510
+    Script: |
+      bonus bDelayrate,-5;
+      bonus bVariableCastrate,-10;
+  - Combos:
+      - Combo:
+          - RightShape_Furious   # 510152
+          - FuriousBoots   # 470265
+          - LeftShape_Furious   # 510153
+    Script: |
+      if (getequipid(EQI_HAND_L) == 510153) {
+         bonus2 bSkillAtk,"SHC_SHADOW_STAB",15;
+      }
+  - Combos:
+      - Combo:
+          - RightShape_Furious   # 510152
+          - LeftShape_Furious   # 510153
+    Script: |
+      if (getequipid(EQI_HAND_L) == 510153) {
+         .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_HAND_L);
+         bonus2 bSkillAtk,"SHC_SHADOW_STAB",5;
+         if (BaseLevel>=210) {
+            bonus bAtkRate,7;
+            bonus bBaseAtk,70;
+         }
+         if (BaseLevel>=220) {
+            bonus2 bSkillAtk,"SHC_SHADOW_STAB",5;
+         }
+         if (BaseLevel>=230) {
+            bonus2 bAddSize,Size_All,10;
+         }
+         if (.@sum>=14) {
+            bonus bShortAtkRate,10;
+            if (.@sum>=17) {
+               bonus2 bSkillAtk,"SHC_SHADOW_STAB",10;
+               if (.@sum>=19) {
+                  bonus bDelayrate,-10;
+                  if (.@sum>=21) {
+                     bonus2 bSkillAtk,"SHC_SHADOW_STAB",10;
+                  }
+               }
+            }
+         }
+      }
+  - Combos:
+      - Combo:
+          - OverSpear_Furious   # 530057
+          - FuriousBoots   # 470265
+    Script: |
+      bonus2 bSkillAtk,"IG_OVERSLASH",.@sum;
+  - Combos:
+      - Combo:
+          - Lance_Furious   # 530058
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_SHOES);
+      bonus2 bSkillAtk,"IG_SHIELD_SHOOTING",.@sum;
+  - Combos:
+      - Combo:
+          - MasterSpellBook_Furious   # 540090
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_SHOES);
+      bonus2 bSkillAtk,"EM_VENOM_SWAMP",.@sum;
+  - Combos:
+      - Combo:
+          - Grimoire_Furious   # 540091
+          - FuriousBoots   # 470265
+    Script: |
+      if (getenchantgrade()>=ENCHANTGRADE_B) {
+         bonus2 bSkillAtk,"EM_DIAMOND_STORM",15;
+      }
+  - Combos:
+      - Combo:
+          - Soul_Furious   # 550145
+          - FuriousBoots   # 470265
+    Script: |
+      bonus2 bSkillAtk,"SOA_EXORCISM_OF_MALICIOUS_SOUL",20;
+  - Combos:
+      - Combo:
+          - SpiritStick_Furious   # 550146
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_SHOES);
+      bonus2 bSkillAtk,"SOA_TALISMAN_OF_FOUR_BEARING_GOD",.@sum;
+  - Combos:
+      - Combo:
+          - Hammer_Furious   # 590087
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_HEAD_TOP);
+      bonus2 bSkillAtk,"MT_SPARK_BLASTER",20;
+      bonus2 bSkillAtk,"NC_ARMSCANNON",25;
+  - Combos:
+      - Combo:
+          - Impact_Furious   # 610071
+          - FuriousBoots   # 470265
+    Script: |
+      bonus bShortAtkRate,10;
+      bonus bCritical,10;
+  - Combos:
+      - Combo:
+          - Humma_Furious   # 610072
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_SHOES);
+      bonus2 bSkillAtk,"SS_KUNAIKUSSETSU",.@sum;
+      if (getenchantgrade(EQI_SHOES)>=ENCHANTGRADE_B) {
+         bonus2 bSkillCooldown,"SS_KUNAIKAITEN",-200;
+      }
+  - Combos:
+      - Combo:
+          - GiganticAxe_Furious   # 620040
+          - FuriousBoots   # 470265
+    Script: |
+      if (getenchantgrade()>=ENCHANTGRADE_B) {
+         bonus2 bSkillAtk,"MT_MIGHTY_SMASH",20;
+         bonus2 bSkillAtk,"MT_AXE_STOMP",20;
+      }
+  - Combos:
+      - Combo:
+          - Biolo_Robe   # 313324
+          - Genetic_Top3   # 311008
+    Script: |
+      bonus2 bAddEle,Ele_All,3*getskilllv("BO_BIONIC_PHARMACY");
+  - Combos:
+      - Combo:
+          - Biolo_Robe   # 313324
+          - Genetic_Middle3   # 311009
+    Script: |
+      bonus2 bSkillAtk,"BO_MAYHEMIC_THORNS",10;
+  - Combos:
+      - Combo:
+          - Biolo_Robe   # 313324
+          - Genetic_Bottom3   # 311010
+    Script: |
+      bonus2 bSkillAtk,"BO_ACIDIFIED_ZONE_WIND",10;
+      bonus2 bSkillAtk,"BO_ACIDIFIED_ZONE_FIRE",10;
+      bonus2 bSkillAtk,"BO_ACIDIFIED_ZONE_WATER",10;
+      bonus2 bSkillAtk,"BO_ACIDIFIED_ZONE_GROUND",10;
+  - Combos:
+      - Combo:
+          - Inquisitor_Robe   # 313325
+          - aegis_311427   # 311427
+    Script: |
+      bonus2 bAddEle,Ele_All,3*(getskilllv("IQ_WILL_OF_FAITH")/2);
+  - Combos:
+      - Combo:
+          - Inquisitor_Robe   # 313325
+          - aegis_311428   # 311428
+    Script: |
+      bonus2 bSkillAtk,"IQ_EXPOSION_BLASTER",10;
+  - Combos:
+      - Combo:
+          - Inquisitor_Robe   # 313325
+          - aegis_311429   # 311429
+    Script: |
+      bonus bPAtk,3;
+      bonus2 bSkillAtk,"IQ_OLEUM_SANCTUM",10;
+  - Combos:
+      - Combo:
+          - SpiritHandler_Robe   # 313326
+          - aegis_311918   # 311918
+    Script: |
+      bonus2 bSkillAtk,"SH_CHUL_HO_SONIC_CLAW",15;
+  - Combos:
+      - Combo:
+          - SpiritHandler_Robe   # 313326
+          - aegis_311919   # 311919
+    Script: |
+      bonus2 bAddRace,RC_All,3*(getskilllv("SH_MYSTICAL_CREATURE_MASTERY")/2);
+      bonus2 bAddRace,RC_Player_Human,-3*(getskilllv("SH_MYSTICAL_CREATURE_MASTERY")/2);
+      bonus2 bAddRace,RC_Player_Doram,-3*(getskilllv("SH_MYSTICAL_CREATURE_MASTERY")/2);
+  - Combos:
+      - Combo:
+          - SpiritHandler_Robe   # 313326
+          - aegis_311920   # 311920
+    Script: |
+      bonus2 bSkillAtk,"SH_HOGOGONG_STRIKE",10;
+  - Combos:
+      - Combo:
+          - WheelHumma_Furious   # 650049
+          - FuriousBoots   # 470265
+    Script: |
+      .@sum = getequiprefinerycnt(EQI_HAND_R)+getequiprefinerycnt(EQI_HEAD_TOP);
+      bonus2 bSkillAtk,"SS_KINRYUUHOU",.@sum;

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 1032 - 19
db/re/item_db_equip.yml


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 1271 - 3
db/re/item_db_etc.yml


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 352 - 88
db/re/item_db_usable.yml


+ 711 - 1
db/re/item_enchant.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2022 rAthena Development Team
+#   Copyright(C) 2024 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify
@@ -31469,6 +31469,698 @@ Body:
 #                Chance: 500
 #              - Item: Signet_Of_Wis2
 #                Chance: 500
+  - Id: 143
+    TargetItems:
+      Gaebolg_Armor: true
+      Gaebolg_Robe: true
+    Order:
+      - Slot: 3
+      - Slot: 2
+      - Slot: 1
+    Slots:
+      - Slot: 3
+        PerfectEnchants:
+          - Item: Ep21_4_Def
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Mdef
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Warrior
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Archer
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Assassin
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Magician
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+      - Slot: 2
+        PerfectEnchants:
+          - Item: Ep21_3_Berserker
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_3_Marksman
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_3_Executioner
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_3_Wizard
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+      - Slot: 1
+        PerfectEnchants:
+          - Item: Ep21_2_P_Force
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_M_Force
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_G_Cooldown
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Armor_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+  - Id: 144
+    TargetItems:
+      Gaebolg_Manteau: true
+      Gaebolg_Muffler: true
+    Order:
+      - Slot: 3
+      - Slot: 2
+      - Slot: 1
+    Slots:
+      - Slot: 3
+        PerfectEnchants:
+          - Item: Ep21_4_Def
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Mdef
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+      - Slot: 2
+        PerfectEnchants:
+          - Item: Ep21_3_Speed
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_3_Caster
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+      - Slot: 1
+        PerfectEnchants:
+          - Item: Ep21_2_Melee
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Range
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Critical
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Spell
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Ab_All
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Robe_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+  - Id: 145
+    TargetItems:
+      Gaebolg_Boots: true
+      Gaebolg_Shoes: true
+    Order:
+      - Slot: 3
+      - Slot: 2
+      - Slot: 1
+    Slots:
+      - Slot: 3
+        PerfectEnchants:
+          - Item: Ep21_4_Hp
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Sp
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Phy_Force
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+          - Item: Ep21_4_Mag_Force
+            Price: 1000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone1
+                Amount: 50
+              - Material: EP19_S_F_1_Extract
+                Amount: 20
+              - Material: EP19_S_F_2_Extract
+                Amount: 20
+              - Material: EP19_Gla_Extract
+                Amount: 20
+              - Material: EP19_S_F_3_Extract
+                Amount: 10
+              - Material: EP20_D_P_Extract
+                Amount: 10
+      - Slot: 2
+        PerfectEnchants:
+          - Item: Ep21_3_Size_Atk
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_3_Size_Matk
+            Price: 2000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone2
+                Amount: 25
+              - Material: EP19_S_F_1_Extract
+                Amount: 30
+              - Material: EP19_S_F_2_Extract
+                Amount: 30
+              - Material: EP19_Gla_Extract
+                Amount: 30
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+      - Slot: 1
+        PerfectEnchants:
+          - Item: Ep21_2_Ov_Power
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Fi_Shot
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Luk_Strike
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+          - Item: Ep21_2_Spl_Buster
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Shoes_E_Stone3
+                Amount: 15
+              - Material: EP19_S_F_1_Extract
+                Amount: 40
+              - Material: EP19_S_F_2_Extract
+                Amount: 40
+              - Material: EP19_Gla_Extract
+                Amount: 40
+              - Material: EP19_S_F_3_Extract
+                Amount: 20
+              - Material: EP20_D_P_Extract
+                Amount: 20
+  - Id: 146
+    TargetItems:
+      Gaebolg_Ring: true
+      Gaebolg_Earring: true
+      Gaebolg_Glove: true
+      Gaebolg_Necklace: true
+    Order:
+      - Slot: 3
+      - Slot: 2
+      - Slot: 1
+    Slots:
+      - Slot: 3
+        PerfectEnchants:
+          - Item: Ep21_4_F_Spirit
+            Price: 1500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone1
+                Amount: 70
+              - Material: EP19_S_F_1_Extract
+                Amount: 35
+              - Material: EP19_S_F_2_Extract
+                Amount: 35
+              - Material: EP19_Gla_Extract
+                Amount: 35
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_4_E_Archer
+            Price: 1500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone1
+                Amount: 70
+              - Material: EP19_S_F_1_Extract
+                Amount: 35
+              - Material: EP19_S_F_2_Extract
+                Amount: 35
+              - Material: EP19_Gla_Extract
+                Amount: 35
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_4_Fatal
+            Price: 1500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone1
+                Amount: 70
+              - Material: EP19_S_F_1_Extract
+                Amount: 35
+              - Material: EP19_S_F_2_Extract
+                Amount: 35
+              - Material: EP19_Gla_Extract
+                Amount: 35
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+          - Item: Ep21_4_Sp_Power
+            Price: 1500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone1
+                Amount: 70
+              - Material: EP19_S_F_1_Extract
+                Amount: 35
+              - Material: EP19_S_F_2_Extract
+                Amount: 35
+              - Material: EP19_Gla_Extract
+                Amount: 35
+              - Material: EP19_S_F_3_Extract
+                Amount: 15
+              - Material: EP20_D_P_Extract
+                Amount: 15
+      - Slot: 2
+        PerfectEnchants:
+          - Item: Ep21_3_Tenacity
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Acc_E_Stone2
+                Amount: 35
+              - Material: EP19_S_F_1_Extract
+                Amount: 45
+              - Material: EP19_S_F_2_Extract
+                Amount: 45
+              - Material: EP19_Gla_Extract
+                Amount: 45
+              - Material: EP19_S_F_3_Extract
+                Amount: 25
+              - Material: EP20_D_P_Extract
+                Amount: 25
+          - Item: Ep21_3_M_Archer
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Acc_E_Stone2
+                Amount: 35
+              - Material: EP19_S_F_1_Extract
+                Amount: 45
+              - Material: EP19_S_F_2_Extract
+                Amount: 45
+              - Material: EP19_Gla_Extract
+                Amount: 45
+              - Material: EP19_S_F_3_Extract
+                Amount: 25
+              - Material: EP20_D_P_Extract
+                Amount: 25
+          - Item: Ep21_3_Acute
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Acc_E_Stone2
+                Amount: 35
+              - Material: EP19_S_F_1_Extract
+                Amount: 45
+              - Material: EP19_S_F_2_Extract
+                Amount: 45
+              - Material: EP19_Gla_Extract
+                Amount: 45
+              - Material: EP19_S_F_3_Extract
+                Amount: 25
+              - Material: EP20_D_P_Extract
+                Amount: 25
+          - Item: Ep21_3_M_Eessence
+            Price: 3000000
+            Materials:
+              - Material: Ep21_Acc_E_Stone2
+                Amount: 35
+              - Material: EP19_S_F_1_Extract
+                Amount: 45
+              - Material: EP19_S_F_2_Extract
+                Amount: 45
+              - Material: EP19_Gla_Extract
+                Amount: 45
+              - Material: EP19_S_F_3_Extract
+                Amount: 25
+              - Material: EP20_D_P_Extract
+                Amount: 25
+      - Slot: 1
+        PerfectEnchants:
+          - Item: Ep21_2_Phy_Power
+            Price: 4500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone3
+                Amount: 20
+              - Material: EP19_S_F_1_Extract
+                Amount: 65
+              - Material: EP19_S_F_2_Extract
+                Amount: 65
+              - Material: EP19_Gla_Extract
+                Amount: 65
+              - Material: EP19_S_F_3_Extract
+                Amount: 35
+              - Material: EP20_D_P_Extract
+                Amount: 35
+          - Item: Ep21_2_Mag_Power
+            Price: 4500000
+            Materials:
+              - Material: Ep21_Acc_E_Stone3
+                Amount: 20
+              - Material: EP19_S_F_1_Extract
+                Amount: 65
+              - Material: EP19_S_F_2_Extract
+                Amount: 65
+              - Material: EP19_Gla_Extract
+                Amount: 65
+              - Material: EP19_S_F_3_Extract
+                Amount: 35
+              - Material: EP20_D_P_Extract
+                Amount: 35
   - Id: 147
     TargetItems:
       StormBow_Furious: true
@@ -31483,6 +32175,18 @@ Body:
       Demonsword_Furious: true
       Foxtail_Furious: true
       Setaria_Furious: true
+      OverSpear_Furious: true
+      Lance_Furious: true
+      Impact_Furious: true
+      RightShape_Furious: true
+      Humma_Furious: true
+      WheelHumma_Furious: true
+      GiganticAxe_Furious: true
+      Hammer_Furious: true
+      MasterSpellBook_Furious: true
+      Grimoire_Furious: true
+      Soul_Furious: true
+      SpiritStick_Furious: true
     Reset:
       Chance: 80000
       Price: 500000
@@ -31647,6 +32351,12 @@ Body:
       FuriousCirclet_DK: true
       FuriousCirclet_ABC: true
       FuriousCirclet_SH: true
+      FuriousCirclet_IG: true
+      FuriousCirclet_SHC: true
+      FuriousCirclet_SS: true
+      FuriousCirclet_MT: true
+      FuriousCirclet_EM: true
+      FuriousCirclet_SOA: true
     Reset:
       Chance: 80000
       Price: 500000

+ 618 - 0
db/re/item_group_db.yml

@@ -112357,3 +112357,621 @@ Body:
           - Index: 2
             Item: Enchant_Stone_Box34
             Amount: 10
+  - Group: AEGIS_102947
+    SubGroups:
+      - SubGroup: 6
+        List:
+          - Index: 0
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 1
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 2
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 3
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 4
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 5
+            Item: Gaebolg_Armor
+            Rate: 150
+          - Index: 6
+            Item: Gaebolg_Robe
+            Rate: 150
+          - Index: 7
+            Item: Gaebolg_Boots
+            Rate: 150
+          - Index: 8
+            Item: Gaebolg_Shoes
+            Rate: 150
+          - Index: 9
+            Item: Gaebolg_Manteau
+            Rate: 150
+          - Index: 10
+            Item: Gaebolg_Muffler
+            Rate: 150
+          - Index: 11
+            Item: Gaebolg_Armor
+            Rate: 100
+          - Index: 12
+            Item: Gaebolg_Robe
+            Rate: 100
+          - Index: 13
+            Item: Gaebolg_Boots
+            Rate: 100
+          - Index: 14
+            Item: Gaebolg_Shoes
+            Rate: 100
+          - Index: 15
+            Item: Gaebolg_Manteau
+            Rate: 100
+          - Index: 16
+            Item: Gaebolg_Muffler
+            Rate: 100
+          - Index: 17
+            Item: Gaebolg_Armor
+            Rate: 20
+          - Index: 18
+            Item: Gaebolg_Robe
+            Rate: 20
+          - Index: 19
+            Item: Gaebolg_Boots
+            Rate: 20
+          - Index: 20
+            Item: Gaebolg_Shoes
+            Rate: 20
+          - Index: 21
+            Item: Gaebolg_Manteau
+            Rate: 20
+          - Index: 22
+            Item: Gaebolg_Muffler
+            Rate: 20
+          - Index: 23
+            Item: Gaebolg_Glove
+            Rate: 60
+          - Index: 24
+            Item: Gaebolg_Ring
+            Rate: 60
+          - Index: 25
+            Item: Gaebolg_Earring
+            Rate: 60
+          - Index: 26
+            Item: Gaebolg_Necklace
+            Rate: 60
+          - Index: 27
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 28
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 29
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 30
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 31
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 32
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 33
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 34
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 35
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 36
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 37
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 38
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 39
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 40
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 41
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 42
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 43
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 44
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 45
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 46
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 47
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 48
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 49
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 50
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 51
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 52
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 53
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 54
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 55
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 56
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 57
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 58
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 59
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 60
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 61
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 62
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 63
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 64
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 65
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 66
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 67
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 68
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 69
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 70
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 71
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 72
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 73
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 74
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 75
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 76
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 77
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 78
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 79
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 80
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 81
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 82
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 83
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 84
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 85
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 86
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 87
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 88
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 89
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 90
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 91
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+          - Index: 92
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+          - Index: 93
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+  - Group: AEGIS_102948
+    SubGroups:
+      - SubGroup: 6
+        List:
+          - Index: 0
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 1
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 2
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 3
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 4
+            Item: aegis_1001480
+            Rate: 800
+          - Index: 5
+            Item: Gaebolg_Armor
+            Rate: 150
+          - Index: 6
+            Item: Gaebolg_Robe
+            Rate: 150
+          - Index: 7
+            Item: Gaebolg_Boots
+            Rate: 150
+          - Index: 8
+            Item: Gaebolg_Shoes
+            Rate: 150
+          - Index: 9
+            Item: Gaebolg_Manteau
+            Rate: 150
+          - Index: 10
+            Item: Gaebolg_Muffler
+            Rate: 150
+          - Index: 11
+            Item: Gaebolg_Armor
+            Rate: 100
+          - Index: 12
+            Item: Gaebolg_Robe
+            Rate: 100
+          - Index: 13
+            Item: Gaebolg_Boots
+            Rate: 100
+          - Index: 14
+            Item: Gaebolg_Shoes
+            Rate: 100
+          - Index: 15
+            Item: Gaebolg_Manteau
+            Rate: 100
+          - Index: 16
+            Item: Gaebolg_Muffler
+            Rate: 100
+          - Index: 17
+            Item: Gaebolg_Armor
+            Rate: 20
+          - Index: 18
+            Item: Gaebolg_Robe
+            Rate: 20
+          - Index: 19
+            Item: Gaebolg_Boots
+            Rate: 20
+          - Index: 20
+            Item: Gaebolg_Shoes
+            Rate: 20
+          - Index: 21
+            Item: Gaebolg_Manteau
+            Rate: 20
+          - Index: 22
+            Item: Gaebolg_Muffler
+            Rate: 20
+          - Index: 23
+            Item: Gaebolg_Glove
+            Rate: 60
+          - Index: 24
+            Item: Gaebolg_Ring
+            Rate: 60
+          - Index: 25
+            Item: Gaebolg_Earring
+            Rate: 60
+          - Index: 26
+            Item: Gaebolg_Necklace
+            Rate: 60
+          - Index: 27
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 28
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 29
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 30
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 31
+            Item: Ep21_Armor_E_Stone1
+            Rate: 100
+          - Index: 32
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 33
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 34
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 35
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 36
+            Item: Ep21_Armor_E_Stone2
+            Rate: 50
+          - Index: 37
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 38
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 39
+            Item: Ep21_Armor_E_Stone3
+            Rate: 20
+          - Index: 40
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 41
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 42
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 43
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 44
+            Item: Ep21_Robe_E_Stone1
+            Rate: 100
+          - Index: 45
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 46
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 47
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 48
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 49
+            Item: Ep21_Robe_E_Stone2
+            Rate: 50
+          - Index: 50
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 51
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 52
+            Item: Ep21_Robe_E_Stone3
+            Rate: 20
+          - Index: 53
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 54
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 55
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 56
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 57
+            Item: Ep21_Shoes_E_Stone1
+            Rate: 100
+          - Index: 58
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 59
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 60
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 61
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 62
+            Item: Ep21_Shoes_E_Stone2
+            Rate: 50
+          - Index: 63
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 64
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 65
+            Item: Ep21_Shoes_E_Stone3
+            Rate: 20
+          - Index: 66
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 67
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 68
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 69
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 70
+            Item: Ep21_Acc_E_Stone1
+            Rate: 100
+          - Index: 71
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 72
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 73
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 74
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 75
+            Item: Ep21_Acc_E_Stone2
+            Rate: 50
+          - Index: 76
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 77
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 78
+            Item: Ep21_Acc_E_Stone3
+            Rate: 20
+          - Index: 79
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 80
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 81
+            Item: EP19_Gla_Extract
+            Rate: 60
+          - Index: 82
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 83
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 84
+            Item: EP19_S_F_1_Extract
+            Rate: 60
+          - Index: 85
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 86
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 87
+            Item: EP20_D_P_Extract
+            Rate: 60
+          - Index: 88
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 89
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 90
+            Item: EP19_S_F_2_Extract
+            Rate: 60
+          - Index: 91
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+          - Index: 92
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+          - Index: 93
+            Item: EP19_S_F_3_Extract
+            Rate: 60
+  - Group: AEGIS_103033
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Index: 0
+            Item: Lance_Furious
+          - Index: 1
+            Item: Shield_Furious
+  - Group: AEGIS_103034
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Index: 0
+            Item: RightShape_Furious
+          - Index: 1
+            Item: LeftShape_Furious
+  - Group: P_BOOSTER_CALL_PACKAGE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Index: 0
+            Item: P_Booster_Call
+          - Index: 1
+            Item: Booster_Pack_1
+          - Index: 2
+            Item: Booster_Hat_Box
+          - Index: 3
+            Item: Booster_Back_Box
+          - Index: 4
+            Item: Reset_Stat_Ticket
+          - Index: 5
+            Item: Reset_Skill_Ticket
+          - Index: 6
+            Item: E_Boarding_Halter_Box2
+          - Index: 7
+            Item: Boost_C_Enchant_2
+  - Group: P_COMPENSATION_BOX
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Index: 0
+            Item: P_Booster_Call_Package
+          - Index: 1
+            Item: E_EXP_Drop_Up_7days
+          - Index: 2
+            Item: Comp_AID_Buff_Box

+ 494 - 0
db/re/item_reform.yml

@@ -10701,3 +10701,497 @@ Body:
             Amount: 20
         ResultItem: FuriousCirclet_SH
         ChangeRefine: 1
+      - BaseItem: OverSpear_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: OverSpear_Furious
+        ChangeRefine: 1
+      - BaseItem: Lance_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Lance_Furious
+        ChangeRefine: 1
+      - BaseItem: Impact_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Impact_Furious
+        ChangeRefine: 1
+      - BaseItem: RightShape_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: RightShape_Furious
+        ChangeRefine: 1
+      - BaseItem: Humma_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Humma_Furious
+        ChangeRefine: 1
+      - BaseItem: WheelHumma_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: WheelHumma_Furious
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_IG
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_IG
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_SHC
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_SHC
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_SS
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_SS
+        ChangeRefine: 1
+      - BaseItem: Shield_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: Shield_Furious
+        ChangeRefine: 1
+      - BaseItem: LeftShape_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: LeftShape_Furious
+        ChangeRefine: 1
+      - BaseItem: GiganticAxe_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: GiganticAxe_Furious
+        ChangeRefine: 1
+      - BaseItem: Hammer_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Hammer_Furious
+        ChangeRefine: 1
+      - BaseItem: MasterSpellBook_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: MasterSpellBook_Furious
+        ChangeRefine: 1
+      - BaseItem: Grimoire_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Grimoire_Furious
+        ChangeRefine: 1
+      - BaseItem: Soul_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: Soul_Furious
+        ChangeRefine: 1
+      - BaseItem: SpiritStick_Furious
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Etherdeocon
+            Amount: 10
+          - Material: Enriched_Etherdeocon
+            Amount: 20
+        ResultItem: SpiritStick_Furious
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_MT
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_MT
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_EM
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_EM
+        ChangeRefine: 1
+      - BaseItem: FuriousCirclet_SOA
+        MinimumRefine: 9
+        MaximumRefine: 11
+        Materials:
+          - Material: HD_Ethernium
+            Amount: 10
+          - Material: Enriched_Ethernium
+            Amount: 20
+        ResultItem: FuriousCirclet_SOA
+        ChangeRefine: 1
+  - Item: Gaebolg_A_Hammer_1
+    BaseItems:
+      - BaseItem: Gaebolg_Armor
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Armor
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Robe
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Robe
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Manteau
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Manteau
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Muffler
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Muffler
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Boots
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Boots
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Shoes
+        MinimumRefine: 9
+        MaximumRefine: 9
+        Materials:
+          - Material: Zelunium
+            Amount: 150
+          - Material: Ep21_Armor_E_Stone1
+            Amount: 20
+          - Material: Ep21_Robe_E_Stone1
+            Amount: 20
+          - Material: Ep21_Shoes_E_Stone1
+            Amount: 20
+          - Material: Ep21_Acc_E_Stone1
+            Amount: 20
+        ResultItem: Gaebolg_Shoes
+        ChangeRefine: 1
+  - Item: Gaebolg_A_Hammer_2
+    BaseItems:
+      - BaseItem: Gaebolg_Armor
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Armor
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Robe
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Robe
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Manteau
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Manteau
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Muffler
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Muffler
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Boots
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Boots
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Shoes
+        MinimumRefine: 10
+        MaximumRefine: 10
+        Materials:
+          - Material: Zelunium
+            Amount: 200
+          - Material: Ep21_Armor_E_Stone2
+            Amount: 7
+          - Material: Ep21_Robe_E_Stone2
+            Amount: 7
+          - Material: Ep21_Shoes_E_Stone2
+            Amount: 7
+          - Material: Ep21_Acc_E_Stone2
+            Amount: 7
+        ResultItem: Gaebolg_Shoes
+        ChangeRefine: 1
+  - Item: Gaebolg_A_Hammer_3
+    BaseItems:
+      - BaseItem: Gaebolg_Armor
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Armor
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Robe
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Robe
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Manteau
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Manteau
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Muffler
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Muffler
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Boots
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Boots
+        ChangeRefine: 1
+      - BaseItem: Gaebolg_Shoes
+        MinimumRefine: 11
+        MaximumRefine: 11
+        Materials:
+          - Material: Zelunium
+            Amount: 250
+          - Material: Ep21_Armor_E_Stone3
+            Amount: 5
+          - Material: Ep21_Robe_E_Stone3
+            Amount: 5
+          - Material: Ep21_Shoes_E_Stone3
+            Amount: 5
+          - Material: Ep21_Acc_E_Stone3
+            Amount: 5
+        ResultItem: Gaebolg_Shoes
+        ChangeRefine: 1

+ 102 - 0
db/re/mob_db.yml

@@ -108047,6 +108047,62 @@ Body:
 #    AegisName: 2401_EV_IMOOGI
 #  - Id: 22299
 #    AegisName: VR_CHAO
+#  - Id: 22300
+#    AegisName: EP21_NPC_SERPENT
+#  - Id: 22301
+#    AegisName: EP21_NPC_TRIS
+#  - Id: 22302
+#    AegisName: EP21_NPC_TAN
+#  - Id: 22303
+#    AegisName: EP21_NPC_NADOYO
+#  - Id: 22304
+#    AegisName: EP21_NPC_REINHARDT
+#  - Id: 22305
+#    AegisName: EP21_NPC_WILHELM
+#  - Id: 22306
+#    AegisName: EP21_NPC_MARISTELLA
+#  - Id: 22307
+#    AegisName: EP21_NPC_YOHAN
+#  - Id: 22308
+#    AegisName: EP21_NPC_RICHARD
+#  - Id: 22309
+#    AegisName: EP21_NPC_EIBA
+#  - Id: 22310
+#    AegisName: EP21_NPC_GUNTER
+#  - Id: 22311
+#    AegisName: EP21_NPC_IVAN
+#  - Id: 22312
+#    AegisName: EP21_NPC_GALAXIA
+#  - Id: 22313
+#    AegisName: EP21_SEAWIND
+#  - Id: 22314
+#    AegisName: EP21_SCALLEG
+#  - Id: 22315
+#    AegisName: EP21_VELELLING
+#  - Id: 22316
+#    AegisName: EP21_LETTERSTER
+#  - Id: 22317
+#    AegisName: EP21_ROCKSTRIKER
+#  - Id: 22318
+#    AegisName: EP21_ICESEAHORSE
+#  - Id: 22319
+#    AegisName: EP21_SKIPSKIPPER
+#  - Id: 22320
+#    AegisName: EP21_CLIOLIMA
+#  - Id: 22321
+#    AegisName: EP21_YORKER_A
+#  - Id: 22322
+#    AegisName: EP21_YORKER_B
+#  - Id: 22323
+#    AegisName: EP21_YOSTER_A
+#  - Id: 22324
+#    AegisName: EP21_YOSTER_B
+#  - Id: 22325
+#    AegisName: EP21_YOSTER_C
+#  - Id: 22326
+#    AegisName: EP21_YOSTER_D
+#  - Id: 22327
+#    AegisName: EP21_YOSTER_E
 #  - Id: 22328
 #    AegisName: DESERT_WOLF_RAC
 #  - Id: 22329
@@ -108097,6 +108153,52 @@ Body:
 #    AegisName: MQ_KIND_OF_BEETLE3
 #  - Id: 22352
 #    AegisName: MQ_KIND_OF_BEETLE4
+#  - Id: 22353
+#    AegisName: EP21_YORMI_A
+#  - Id: 22354
+#    AegisName: EP21_YORMI_B
+#  - Id: 22355
+#    AegisName: EP21_YORDOS_A
+#  - Id: 22356
+#    AegisName: EP21_YORDOS_B
+#  - Id: 22357
+#    AegisName: EP21_YORDOS_C
+#  - Id: 22358
+#    AegisName: EP21_YOSCOPUS_A
+#  - Id: 22359
+#    AegisName: EP21_YOSCOPUS_B
+#  - Id: 22360
+#    AegisName: EP21_YORTUS_A
+#  - Id: 22361
+#    AegisName: EP21_YORTUS_B
+#  - Id: 22362
+#    AegisName: EP21_ICEHORN
+#  - Id: 22363
+#    AegisName: EP21_B_YORTUS_A
+#  - Id: 22364
+#    AegisName: EP21_B_YORTUS_B
+#  - Id: 22365
+#    AegisName: G_EP21_ICESEAHORSE
+#  - Id: 22366
+#    AegisName: G_EP21_YORDOS_A
+#  - Id: 22367
+#    AegisName: G_EP21_YORDOS_B
+#  - Id: 22368
+#    AegisName: G_EP21_YORDOS_C
+#  - Id: 22369
+#    AegisName: EP21_MD_SAILOR
+#  - Id: 22370
+#    AegisName: EP21_MD_CAPTAIN
+#  - Id: 22371
+#    AegisName: EP21_YOR_TAN
+#  - Id: 22372
+#    AegisName: EP21_MD_CAPTAIN_B
+#  - Id: 22373
+#    AegisName: EP21_YOR_TAN_B
+#  - Id: 22374
+#    AegisName: EP21_MD_BOX1
+#  - Id: 22378
+#    AegisName: MD_Airboat_Boss5
 #  - Id: 23000
 #    AegisName: DARK_ILLUSION2
 #  - Id: 23001

+ 21 - 0
db/re/pet_db.yml

@@ -3102,3 +3102,24 @@ Body:
 #         bonus bMaxSP,30;
 #      }
 #
+#  - Mob: EP21_ICESEAHORSE
+#    TameItem: Ep21_Fatty_Shrimp
+#    EggItem: aegis_9157
+#    FoodItem: Pet_Food
+#    Fullness: 2   # unknown
+#    HungryDelay: 120   # unknown
+#    IntimacyFed: 15   # unknown
+#    CaptureRate: 2000   # unknown
+#    SpecialPerformance: false   # unknown
+#    Script: >
+#      .@i = getpetinfo(PETINFO_INTIMATE);
+#      
+#      if (.@i == PET_INTIMATE_CORDIAL) {
+#         bonus bMRes,5;
+#         bonus bRes,5;
+#      }
+#      else if (.@i == PET_INTIMATE_LOYAL) {
+#         bonus bMRes,10;
+#         bonus bRes,10;
+#      }
+#

+ 7 - 2
src/map/atcommand.cpp

@@ -37,6 +37,7 @@
 #include "instance.hpp"
 #include "intif.hpp"
 #include "itemdb.hpp" // MAX_ITEMGROUP
+#include "cashshop.hpp"
 #include "log.hpp"
 #include "mail.hpp"
 #include "map.hpp"
@@ -4214,6 +4215,9 @@ ACMD_FUNC(reload) {
 	if (strstr(command, "itemdb") || strncmp(message, "itemdb", 4) == 0) {
 		itemdb_reload();
 		clif_displaymessage(fd, msg_txt(sd,97)); // Item database has been reloaded.
+	} else if (strstr(command, "cashdb") || strncmp(message, "cashdb", 4) == 0) {
+		cashshop_reloaddb();
+		clif_displaymessage( fd, msg_txt( sd, 832 ) ); // Cash shop database has been reloaded.
 	} else if (strstr(command, "mobdb") || strncmp(message, "mobdb", 3) == 0) {
 		mob_reload();
 		pet_db.reload();
@@ -4333,7 +4337,7 @@ ACMD_FUNC(reload) {
 		clif_displaymessage(fd, msg_txt(sd, 830)); // Barter database has been reloaded.
 	} else if (strstr(command, "zonedb") || strncmp(message, "zonedb", 4) == 0) {
 		map_zone_db.reload();
-		clif_displaymessage(fd, msg_txt(sd, 833)); // Map Zone database has been reloaded.
+		clif_displaymessage(fd, msg_txt(sd, 834)); // Map Zone database has been reloaded.
 	}
 
 	return 0;
@@ -11092,6 +11096,7 @@ void atcommand_basecommands(void) {
 		ACMD_DEF(recallall),
 		ACMD_DEFR(reload,ATCMD_NOSCRIPT),
 		ACMD_DEF2("reloaditemdb", reload),
+		ACMD_DEF2("reloadcashdb", reload),
 		ACMD_DEF2("reloadmobdb", reload),
 		ACMD_DEF2("reloadskilldb", reload),
 		ACMD_DEF2R("reloadscript", reload, ATCMD_NOSCRIPT),
@@ -11580,7 +11585,7 @@ bool is_atcommand(const int fd, map_session_data* sd, const char* message, int t
 	struct map_data *mapdata = map_getmapdata(sd->bl.m);
 
 	if (mapdata->zone->isCommandDisabled(info->command, *sd)) {
-		clif_messagecolor(&sd->bl, color_table[COLOR_RED], msg_txt(sd, 832), false, SELF); // This command is disabled on this map.
+		clif_messagecolor(&sd->bl, color_table[COLOR_RED], msg_txt(sd, 833), false, SELF); // This command is disabled on this map.
 		return true;
 	}
 

+ 3 - 2
src/map/battle.cpp

@@ -5889,9 +5889,10 @@ static int battle_calc_attack_skill_ratio(struct Damage* wd, struct block_list *
 			RE_LVL_DMOD(100);
 			break;
 		case SHC_SHADOW_STAB:
-			skillratio += -100 + 550 * skill_lv + 5 * sstatus->pow;
+			skillratio += -100 + 550 * skill_lv;
+			skillratio += 5 * sstatus->pow;
 
-			if( sc && sc->getSCE( SC_CLOAKINGEXCEED ) ){
+			if (wd->miscflag & SKILL_ALTDMG_FLAG) {
 				skillratio += 100 * skill_lv + 2 * sstatus->pow;
 			}
 

+ 12 - 9
src/map/clif.cpp

@@ -7037,27 +7037,30 @@ void clif_upgrademessage( map_session_data* sd, int result, t_itemid item_id ){
 /// 0097 <packet len>.W <nick>.24B <message>.?B
 /// 0097 <packet len>.W <nick>.24B <isAdmin>.L <message>.?B (PACKETVER >= 20091104)
 void clif_wis_message(map_session_data* sd, const char* nick, const char* mes, size_t mes_len, int gmlvl){
-	PACKET_ZC_WHISPER p;
+	PACKET_ZC_WHISPER* p = reinterpret_cast<PACKET_ZC_WHISPER*>( packet_buffer );
 
-	p.PacketType = HEADER_ZC_WHISPER;
-	p.PacketLength = static_cast<decltype(p.PacketLength)>( mes_len );
-	safestrncpy(p.sender, nick, NAME_LENGTH);
-	safestrncpy(p.message, mes, mes_len);
+	p->PacketType = HEADER_ZC_WHISPER;
+	p->PacketLength = sizeof( *p );
+	safestrncpy( p->sender, nick, NAME_LENGTH );
+	safestrncpy( p->message, mes, mes_len );
+	p->PacketLength += static_cast<decltype( p->PacketLength )>( mes_len );
 
 #if PACKETVER >= 20091104
 	map_session_data* ssd = map_nick2sd(nick, false);
+
 	// If it is not a message from the server or a player from another map-server
 	if (ssd) {
 		gmlvl = pc_get_group_level(ssd);
 	}
-	p.isAdmin = (gmlvl == 99) ? 1 : 0;
+
+	p->isAdmin = (gmlvl == 99) ? 1 : 0;
 #endif
 
 #if PACKETVER_MAIN_NUM >= 20131204 || PACKETVER_RE_NUM >= 20131120 || defined(PACKETVER_ZERO)
-	p.senderGID = ssd->bl.id;
+	p->senderGID = ssd->bl.id;
 #endif
 
-	clif_send( &p, sizeof( p ), &sd->bl, SELF );
+	clif_send( p, p->PacketLength, &sd->bl, SELF );
 }
 
 
@@ -10450,7 +10453,7 @@ void clif_viewequip_ack( map_session_data* sd, map_session_data* tsd ){
 
 			clif_item_equip( client_index( k ), &p->list[equip], &tsd->inventory.u.items_inventory[k], tsd->inventory_data[k], pc_equippoint( tsd, k ) );
 
-			p->PacketLength = sizeof( p->list[0] );
+			p->PacketLength += sizeof( p->list[0] );
 			equip++;
 		}
 	}

+ 6 - 0
src/map/itemdb.hpp

@@ -2818,6 +2818,12 @@ enum e_random_item_group {
 	IG_COSTUMEMILEPACK_34_1,
 	IG_COSTUMEMILEPACK_34_2,
 	IG_COSTUMEMILEPACK_34_3,
+	IG_AEGIS_102947,
+	IG_AEGIS_102948,
+	IG_AEGIS_103033,
+	IG_AEGIS_103034,
+	IG_P_BOOSTER_CALL_PACKAGE,
+	IG_P_COMPENSATION_BOX,
 
 	IG_MAX,
 };

+ 32 - 0
src/map/npc.hpp

@@ -1495,6 +1495,38 @@ enum e_job_types
 	JT_4_EVT_SULKI,
 	JT_4_EVT_KKAT,
 
+	JT_4_EP21_SOLDIER_A = 10564,
+	JT_4_EP21_SOLDIER_B,
+	JT_4_EP21_M_WORKER_A,
+	JT_4_EP21_M_WORKER_B,
+	JT_4_EP21_F_WORKER_A,
+	JT_4_EP21_F_WORKER_B,
+	JT_4_EP21_WORKER_KID_A,
+	JT_4_EP21_WORKER_KID_B,
+	JT_4_EP21_TAN,
+	JT_4_EP21_TRIS,
+	JT_4_EP21_NADOYO,
+	JT_4_EP21_REINHARDT,
+	JT_4_EP21_WILHELM,
+	JT_4_EP21_MARISTELLA,
+	JT_4_EP21_YOHAN,
+	JT_4_EP21_RICHARD,
+	JT_4_EP21_VALDARIS,
+	JT_4_EP21_GUNTER,
+	JT_4_EP21_GALAXIA_A,
+	JT_4_EP21_GALAXIA_B,
+	JT_4_EP21_IVAN,
+	JT_4_EP21_LALAILA,
+	JT_4_EP21_ILSE,
+	JT_4_EP21_HOWELL,
+	JT_4_EP21_EPESTO,
+	JT_4_EP21_HEINE_TAB,
+	JT_4_EP21_IANA,
+	JT_4_EP21_LEE,
+	JT_4_EP21_AURELIE,
+	JT_4_EP21_HOWELL_S,
+	JT_4_EP21_TAN_S,
+
 	JT_ROZ_MQ_XAVIER = 13000,
 	JT_ROZ_MQ_MOCLORD,
 	JT_ROZ_MQ_SKULD,

+ 37 - 0
src/map/script_constants.hpp

@@ -7791,6 +7791,12 @@
 	export_constant(IG_COSTUMEMILEPACK_34_1);
 	export_constant(IG_COSTUMEMILEPACK_34_2);
 	export_constant(IG_COSTUMEMILEPACK_34_3);
+	export_constant(IG_AEGIS_102947);
+	export_constant(IG_AEGIS_102948);
+	export_constant(IG_AEGIS_103033);
+	export_constant(IG_AEGIS_103034);
+	export_constant(IG_P_BOOSTER_CALL_PACKAGE);
+	export_constant(IG_P_COMPENSATION_BOX);
 
 	/* unit stop walking */
 	export_constant(USW_NONE);
@@ -9098,6 +9104,37 @@
 	export_constant_npc(JT_4_EVT_LAMMIR);
 	export_constant_npc(JT_4_EVT_SULKI);
 	export_constant_npc(JT_4_EVT_KKAT);
+	export_constant_npc(JT_4_EP21_SOLDIER_A);
+	export_constant_npc(JT_4_EP21_SOLDIER_B);
+	export_constant_npc(JT_4_EP21_M_WORKER_A);
+	export_constant_npc(JT_4_EP21_M_WORKER_B);
+	export_constant_npc(JT_4_EP21_F_WORKER_A);
+	export_constant_npc(JT_4_EP21_F_WORKER_B);
+	export_constant_npc(JT_4_EP21_WORKER_KID_A);
+	export_constant_npc(JT_4_EP21_WORKER_KID_B);
+	export_constant_npc(JT_4_EP21_TAN);
+	export_constant_npc(JT_4_EP21_TRIS);
+	export_constant_npc(JT_4_EP21_NADOYO);
+	export_constant_npc(JT_4_EP21_REINHARDT);
+	export_constant_npc(JT_4_EP21_WILHELM);
+	export_constant_npc(JT_4_EP21_MARISTELLA);
+	export_constant_npc(JT_4_EP21_YOHAN);
+	export_constant_npc(JT_4_EP21_RICHARD);
+	export_constant_npc(JT_4_EP21_VALDARIS);
+	export_constant_npc(JT_4_EP21_GUNTER);
+	export_constant_npc(JT_4_EP21_GALAXIA_A);
+	export_constant_npc(JT_4_EP21_GALAXIA_B);
+	export_constant_npc(JT_4_EP21_IVAN);
+	export_constant_npc(JT_4_EP21_LALAILA);
+	export_constant_npc(JT_4_EP21_ILSE);
+	export_constant_npc(JT_4_EP21_HOWELL);
+	export_constant_npc(JT_4_EP21_EPESTO);
+	export_constant_npc(JT_4_EP21_HEINE_TAB);
+	export_constant_npc(JT_4_EP21_IANA);
+	export_constant_npc(JT_4_EP21_LEE);
+	export_constant_npc(JT_4_EP21_AURELIE);
+	export_constant_npc(JT_4_EP21_HOWELL_S);
+	export_constant_npc(JT_4_EP21_TAN_S);
 	export_constant_npc(JT_ROZ_MQ_XAVIER);
 	export_constant_npc(JT_ROZ_MQ_MOCLORD);
 	export_constant_npc(JT_ROZ_MQ_SKULD);

+ 8 - 4
src/map/skill.cpp

@@ -5288,6 +5288,9 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
 		break;
 
 	case SHC_SHADOW_STAB:
+		if (sc && sc->getSCE(SC_CLOAKINGEXCEED))
+			flag |= SKILL_ALTDMG_FLAG;
+
 		status_change_end(src, SC_CLOAKING);
 		status_change_end(src, SC_CLOAKINGEXCEED);
 
@@ -6935,14 +6938,15 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
 				break;
 			}
 			// Triggered by RL_FLICKER
-			if (sd && sd->flicker && tsc && tsc->getSCE(SC_H_MINE) && tsc->getSCE(SC_H_MINE)->val2 == src->id) {
+			if (sd && sd->flicker) {
 				// Splash damage around it!
 				map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR|BL_SKILL,
 					src, skill_id, skill_lv, tick, flag|BCT_ENEMY|1, skill_castend_damage_id);
 				flag |= 1; // Don't consume requirement
-				tsc->getSCE(SC_H_MINE)->val3 = 1; // Mark the SC end because not expired
-				status_change_end(bl, SC_H_MINE);
-				sc_start4(src, bl, SC_BURNING, 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id,skill_lv));
+				if (tsc &&tsc->getSCE(SC_H_MINE) && tsc->getSCE(SC_H_MINE)->val2 == src->id) {
+					status_change_end(bl, SC_H_MINE);
+					sc_start4(src, bl, SC_BURNING, 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id,skill_lv));
+				}
 			}
 		}
 		else

+ 7 - 5
src/map/status.cpp

@@ -13684,22 +13684,24 @@ int status_change_end(struct block_list* bl, enum sc_type type, int tid)
 			}
 			break;
 		case SC_H_MINE:
-			{
-				// Drop the material from target if expired
-				struct item it;
+			// Only drop the material from target if expired naturally
+			if( tid != INVALID_TIMER ){
 				map_session_data *caster = nullptr;
 
-				if (sce->val3 || status_isdead(bl) || !(caster = map_id2sd(sce->val2)))
+				if (status_isdead(bl) || !(caster = map_id2sd(sce->val2)))
 					break;
 
 				std::shared_ptr<s_skill_db> skill = skill_db.find(RL_H_MINE);
 
 				if (!item_db.exists(skill->require.itemid[0]))
 					break;
-				memset(&it, 0, sizeof(it));
+
+				struct item it = {};
+
 				it.nameid = skill->require.itemid[0];
 				it.amount = max(skill->require.amount[0],1);
 				it.identify = 1;
+
 				map_addflooritem(&it, it.amount, bl->m,bl->x, bl->y, caster->status.char_id, 0, 0, 4, 0);
 			}
 			break;

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä