浏览代码

Merge branch 'master' into itemskill

Jittapan Pluemsumran 8 年之前
父节点
当前提交
9d51221f33

+ 22 - 0
db/pre-re/skill_db.txt

@@ -865,6 +865,28 @@
 //725,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION,Reverberation 2
 //725,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION,Reverberation 2
 //726,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION_ATK,Reverberation Attack
 //726,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION_ATK,Reverberation Attack
 //727,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEX_AETERNA,Lex Aeterna 2
 //727,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEX_AETERNA,Lex Aeterna 2
+//728,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_ARROWSTORM,NPC Arrow Storm
+//729,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_CHEAL,NPC Coluceo Heal
+//730,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_SR_CURSEDCIRCLE,NPC 
+//731,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_DRAGONBREATH,NPC Dragon Breath
+//732,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_FATALMENACE,NPC Fatal Menace
+//733,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MAGMA_ERUPTION,NPC Magma Eruption
+//734,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MAGMA_ERUPTION_DOTDAMAGE,NPC Magma Eruption Dot Damage
+//735,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MANDRAGORA,NPC Howling of Mandragora
+//736,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_PSYCHIC_WAVE,NPC Psychic Wave
+//737,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_RAYOFGENESIS,NPC Ray of Genesis
+//738,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_VENOMIMPRESS,NPC Venom Impress
+//739,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_CLOUD_KILL,NPC Cloud Kill
+//740,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_IGNITIONBREAK,NPC Ignition Break
+//741,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_PHANTOMTHRUST,NPC Phantom Thrust
+//742,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_POISON_BUSTER,NPC Poison Blaster
+//743,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_HALLUCINATIONWALK,NPC Hallucination Walk
+//744,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_ELECTRICWALK,NPC Electric Walk
+//745,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_FIREWALK,NPC Fire Walk
+//746,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDEDISPEL,Wide Dispell
+//747,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEASH,Leash
+//748,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDELEASH,Wide Leash
+//749,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDECRITICALWOUND,Wide Critical Wound
 
 
 //****
 //****
 // 2nd Quest Skills
 // 2nd Quest Skills

+ 31 - 0
db/re/item_combo_db.txt

@@ -32,6 +32,7 @@
 1490:19021,{ bonus2 bSkillAtk,"LK_SPIRALPIERCE",getequiprefinerycnt(EQI_HAND_R)*5; bonus4 bAutoSpellOnSkill,"LK_JOINTBEAT","LK_SPIRALPIERCE",max(getskilllv("LK_SPIRALPIERCE"),1),50+(getskilllv("LK_JOINTBEAT")*10); /* Confirm: Success rate */ }
 1490:19021,{ bonus2 bSkillAtk,"LK_SPIRALPIERCE",getequiprefinerycnt(EQI_HAND_R)*5; bonus4 bAutoSpellOnSkill,"LK_JOINTBEAT","LK_SPIRALPIERCE",max(getskilllv("LK_SPIRALPIERCE"),1),50+(getskilllv("LK_JOINTBEAT")*10); /* Confirm: Success rate */ }
 15141:19033,{ bonus bMaxSP,100; bonus bNoCastCancel,1; }
 15141:19033,{ bonus bMaxSP,100; bonus bNoCastCancel,1; }
 15141:20779:22075,{ .@r = getequiprefinerycnt(EQI_ARMOR)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_SHOES); bonus bMaxHP,1000; bonus bHealPower,min(5+.@r,30); bonus bHealPower2,min(5+.@r,30); }
 15141:20779:22075,{ .@r = getequiprefinerycnt(EQI_ARMOR)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_SHOES); bonus bMaxHP,1000; bonus bHealPower,min(5+.@r,30); bonus bHealPower2,min(5+.@r,30); }
+15186:19168,{ bonus2 bExpAddClass,Class_All,5; bonus2 bDropAddClass,Class_All,5; }
 1535:4361,{ bonus bBreakArmorRate,900; bonus bBreakWeaponRate,900; }
 1535:4361,{ bonus bBreakArmorRate,900; bonus bBreakWeaponRate,900; }
 1559:5467,{ bonus bAspd,1; bonus bFlee2,3; }
 1559:5467,{ bonus bAspd,1; bonus bFlee2,3; }
 1572:2716:2717,{ bonus bInt,5; bonus bMaxHP,700; bonus bAspdRate,5; }
 1572:2716:2717,{ bonus bInt,5; bonus bMaxHP,700; bonus bAspdRate,5; }
@@ -426,6 +427,21 @@
 15156:20790:22085:28380:28418,{ bonus bMaxHPrate,20; bonus bMaxSPrate,20; bonus2 bSkillAtk,"SU_CN_METEOR",200; }
 15156:20790:22085:28380:28418,{ bonus bMaxHPrate,20; bonus bMaxSPrate,20; bonus2 bSkillAtk,"SU_CN_METEOR",200; }
 15156:20790:22085:28380:28421,{ bonus bMaxHPrate,30; bonus bMaxSPrate,9; bonus2 bSkillAtk,"SU_LUNATICCARROTBEAT",200; }
 15156:20790:22085:28380:28421,{ bonus bMaxHPrate,30; bonus bMaxSPrate,9; bonus2 bSkillAtk,"SU_LUNATICCARROTBEAT",200; }
 15156:20790:22085:28381:28415,{ bonus bMaxHPrate,25; bonus bMaxSPrate,15; bonus bHealPower,30; skill "AL_HEAL",9,1; }
 15156:20790:22085:28381:28415,{ bonus bMaxHPrate,25; bonus bMaxSPrate,15; bonus bHealPower,30; skill "AL_HEAL",9,1; }
+15181:28443:28444,{ bonus bAtk,20; bonus2 bSubEle,Ele_All,2; bonus2 bSubEle,Ele_Neutral,-2; }
+15182:28445:28446,{ bonus bAtk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; }
+15183:28447:28448,{ bonus bAtk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; bonus2 bExpAddClass,Class_All,2; }
+15184:28449:28450,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; }
+15185:28451:28452,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; bonus bNoCastCancel,1; }
+15181:28453:28454,{ bonus bMatk,20; bonus2 bSubEle,Ele_All,2; bonus2 bSubEle,Ele_Neutral,-2; }
+15182:28455:28456,{ bonus bMatk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; }
+15183:28457:28458,{ bonus bMatk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; bonus2 bExpAddClass,Class_All,2; }
+15184:28459:28460,{ bonus bMatk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; }
+15185:28461:28462,{ bonus bMatk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; bonus bNoCastCancel,1; }
+15181:28463:28464,{ bonus bAtk,20; bonus2 bSubEle,Ele_All,2; bonus2 bSubEle,Ele_Neutral,-2; }
+15182:28465:28466,{ bonus bAtk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; }
+15183:28467:28468,{ bonus bAtk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; bonus2 bExpAddClass,Class_All,2; }
+15184:28469:28470,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; }
+15185:28471:28472,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; bonus bNoCastCancel,1; }
 18137:1752,{ bonus bLongAtkRate,25; }
 18137:1752,{ bonus bLongAtkRate,25; }
 18137:1752:19048,{ bonus bLongAtkRate,20; bonus2 bSubEle,Ele_Fire,-10; if (getequiprefinerycnt(EQI_HAND_R) >= 10) bonus bAspd,1; }
 18137:1752:19048,{ bonus bLongAtkRate,20; bonus2 bSubEle,Ele_Fire,-10; if (getequiprefinerycnt(EQI_HAND_R) >= 10) bonus bAspd,1; }
 18137:19019,{ bonus bLongAtkRate,45; }
 18137:19019,{ bonus bLongAtkRate,45; }
@@ -453,6 +469,21 @@
 20797:4174,{ bonus2 bSubEle,Ele_All,50; bonus2 bSubEle,Ele_Neutral,-50; }
 20797:4174,{ bonus2 bSubEle,Ele_All,50; bonus2 bSubEle,Ele_Neutral,-50; }
 22069:2195,{ bonus2 bSubEle,Ele_Neutral,5; bonus2 bAddEle,Ele_Neutral,getequiprefinerycnt(EQI_HAND_L); }
 22069:2195,{ bonus2 bSubEle,Ele_Neutral,5; bonus2 bAddEle,Ele_Neutral,getequiprefinerycnt(EQI_HAND_L); }
 22069:20753,{ bonus2 bAddEle,Ele_Neutral,5; .@r = getequiprefinerycnt(EQI_GARMENT); bonus bMaxHPrate,.@r; bonus bMaxSPrate,.@r; }
 22069:20753,{ bonus2 bAddEle,Ele_Neutral,5; .@r = getequiprefinerycnt(EQI_GARMENT); bonus bMaxHPrate,.@r; bonus bMaxSPrate,.@r; }
+22122:28443:28444,{ bonus bAspdRate,4; bonus bHit,4; }
+22123:28445:28446,{ bonus bAspdRate,8; bonus bHit,8; }
+22124:28447:28448,{ bonus bAspdRate,8; bonus bHit,8; bonus2 bExpAddClass,Class_All,2; }
+22125:28449:28450,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; }
+22126:28451:28452,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; bonus bSpeedAddRate,25; }
+22122:28453:28454,{ bonus bVariableCastrate,-3; bonus bDelayrate,-3; }
+22123:28455:28456,{ bonus bVariableCastrate,-6; bonus bDelayrate,-6; }
+22124:28457:28458,{ bonus bVariableCastrate,-6; bonus bDelayrate,-6; bonus2 bExpAddClass,Class_All,2; }
+22125:28459:28460,{ bonus bVariableCastrate,-6; bonus bDelayrate,-6; bonus2 bExpAddClass,Class_All,2; }
+22126:28461:28462,{ bonus bVariableCastrate,-8; bonus bDelayrate,-8; bonus2 bExpAddClass,Class_All,2; bonus bSpeedAddRate,25; }
+22122:28463:28464,{ bonus bAspdRate,4; bonus bHit,4; }
+22123:28465:28466,{ bonus bAspdRate,8; bonus bHit,8; }
+22124:28467:28468,{ bonus bAspdRate,8; bonus bHit,8; bonus2 bExpAddClass,Class_All,2; }
+22125:28469:28470,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; }
+22126:28471:28472,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; bonus bSpeedAddRate,25; }
 24012:24013:24014:24015:24016:24017,{ bonus bAllStats,9; }
 24012:24013:24014:24015:24016:24017,{ bonus bAllStats,9; }
 24018:24019:24020,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus bAtkRate,1; } }
 24018:24019:24020,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus bAtkRate,1; } }
 24021:24022:24023,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus bMatkRate,1; } }
 24021:24022:24023,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus bMatkRate,1; } }

+ 58 - 0
db/re/item_db.txt

@@ -8637,6 +8637,12 @@
 15163,Fictitious_Robe,Fictitious Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ skill "SA_SPELLBREAKER",1; .@i = BaseLevel; bonus bMatkRate,(.@i>=140)?(14):((.@i>=120)?(9):(5)); },{},{}
 15163,Fictitious_Robe,Fictitious Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ skill "SA_SPELLBREAKER",1; .@i = BaseLevel; bonus bMatkRate,(.@i>=140)?(14):((.@i>=120)?(9):(5)); },{},{}
 15164,Consultative_Robe,Consultative Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,getrefine()*3; bonus2 bSubEle,Ele_Fire,getrefine()*3; },{},{}
 15164,Consultative_Robe,Consultative Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,getrefine()*3; bonus2 bSubEle,Ele_Fire,getrefine()*3; },{},{}
 15174,Surfer_Swimsuit,Surfer Swimsuit,4,20,,100,,1,,1,0xFFFFFFFF,63,2,16,,40,1,,{ bonus bMaxHPrate,(getrefine()/3)+5; bonus bMaxSPrate,(getrefine()/3)+5; },{},{}
 15174,Surfer_Swimsuit,Surfer Swimsuit,4,20,,100,,1,,1,0xFFFFFFFF,63,2,16,,40,1,,{ bonus bMaxHPrate,(getrefine()/3)+5; bonus bMaxSPrate,(getrefine()/3)+5; },{},{}
+15181,Para_Team_Uniform100,Awakened Eden Group Uniform I,4,20,,0,,80,,0,0xFFFFFFFF,63,2,16,,100,,,{ bonus bAllStats,1; bonus bMaxHP,700; bonus bMaxSP,100; bonus bMdef,7; },{},{}
+15182,Para_Team_Uniform115,Awakened Eden Group Uniform II,4,20,,0,,85,,0,0xFFFFFFFF,63,2,16,,115,,,{ bonus bAllStats,1; bonus bMaxHP,1100; bonus bMaxSP,120; bonus bMdef,11; },{},{}
+15183,Para_Team_Uniform130,Awakened Eden Group Uniform III,4,20,,0,,90,,0,0xFFFFFFFF,63,2,16,,130,,,{ bonus bAllStats,2; bonus bMaxHP,1100; bonus bMaxSP,120; bonus bMdef,11; },{},{}
+15184,Para_Team_Uniform145,Awakened Eden Group Uniform IV,4,20,,0,,100,,0,0xFFFFFFFF,63,2,16,,145,,,{ bonus bAllStats,2; bonus bMaxHP,1500; bonus bMaxSP,150; bonus bMdef,15; },{},{}
+15185,Para_Team_Uniform160,Awakened Eden Group Uniform V,4,20,,0,,100,,0,0xFFFFFFFF,63,2,16,,160,,,{ bonus bAllStats,2; bonus bMaxHP,1500; bonus bMaxSP,150; bonus bMdef,15; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; },{},{}
+15186,Kafra_Uniform,Kafra Uniform,4,20,,500,,40,,1,0xFFFFFFFF,63,2,16,,1,1,,{ bonus2 bExpAddClass,Class_All,5; bonus2 bDropAddClass,Class_All,5; .@r = getrefine(); bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; bonus bMaxHPrate,(3*(.@r>=7)+5*(.@r>=9)); bonus bMaxSPrate,(3*(.@r>=7)+5*(.@r>=9)); if(.@r>=12){ bonus bHPrecovRate,100; bonus bSPrecovRate,100; } },{},{}
 //===================================================================
 //===================================================================
 // More Maces
 // More Maces
 //===================================================================
 //===================================================================
@@ -9852,7 +9858,10 @@
 19158,C_GeminiS58_Eyes_Blue,Costume GeminiS58 Eyes Blue,4,0,,0,,0,,0,0xFFFFFFFF,63,2,2048,,0,0,1456,{},{},{}
 19158,C_GeminiS58_Eyes_Blue,Costume GeminiS58 Eyes Blue,4,0,,0,,0,,0,0xFFFFFFFF,63,2,2048,,0,0,1456,{},{},{}
 19159,Barrel_Helm,Barrel Helm,4,20,,420,,59,,1,0xFFFFFFFF,63,2,769,,60,1,1498,{ bonus bVit,5; bonus bHPrecovRate,-10; .@r = getrefine(); if (.@r >= 7) { bonus bDef,100; skill "CR_AUTOGUARD",1; } if (.@r >= 8) { bonus2 bSubRace,RC_DemiHuman,10; bonus2 bSubRace,RC_Player,10; if(BaseJob==Job_SuperNovice) { skill "CR_AUTOGUARD",5; } } },{},{}
 19159,Barrel_Helm,Barrel Helm,4,20,,420,,59,,1,0xFFFFFFFF,63,2,769,,60,1,1498,{ bonus bVit,5; bonus bHPrecovRate,-10; .@r = getrefine(); if (.@r >= 7) { bonus bDef,100; skill "CR_AUTOGUARD",1; } if (.@r >= 8) { bonus2 bSubRace,RC_DemiHuman,10; bonus2 bSubRace,RC_Player,10; if(BaseJob==Job_SuperNovice) { skill "CR_AUTOGUARD",5; } } },{},{}
 19162,Scuba_Mask_,Scuba Mask,4,20,,100,,0,,1,0xFFFFFFFF,63,2,512,,40,1,400,{ bonus bBaseAtk,5; bonus bMatk,5; },{},{}
 19162,Scuba_Mask_,Scuba Mask,4,20,,100,,0,,1,0xFFFFFFFF,63,2,512,,40,1,400,{ bonus bBaseAtk,5; bonus bMatk,5; },{},{}
+19164,Para_Team_Hat100,Awakened Eden Group Hat I,4,20,,0,,10,,1,0xFFFFFFFF,63,2,256,,100,1,1529,{ autobonus "{ bonus bBaseAtk,15; }",70,5000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,15; }",50,5000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }"; .@r = getrefine(); if(.@r >= 7){ bonus bAtk,10; bonus bMatk,10; if(.@r >= 9){ bonus bAllStats,1; if(.@r >= 12){ bonus2 bRegenPercentSP,1,10000; } } } },{},{}
+19165,Para_Team_Hat160,Awakened Eden Group Hat II,4,20,,0,,10,,1,0xFFFFFFFF,63,2,256,,160,1,1530,{ autobonus "{ bonus bBaseAtk,30; }",70,5000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,30; }",50,5000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }"; .@r = getrefine(); if(.@r >= 7){ bonus bAtk,15; bonus bMatk,15; if(.@r >= 9){ bonus bAllStats,2; if(.@r >= 12){ bonus2 bRegenPercentHP,2,10000; bonus2 bRegenPercentSP,1,10000; } } } },{},{}
 19166,RO_Celebration_Hat,RO Celebration Hat,4,20,,140,,14,,1,0xFFFFFFFF,63,2,256,,14,1,1541,{ bonus bMaxSP,140; bonus2 bSPRegenRate,6,4000; },{},{}
 19166,RO_Celebration_Hat,RO Celebration Hat,4,20,,140,,14,,1,0xFFFFFFFF,63,2,256,,14,1,1541,{ bonus bMaxSP,140; bonus2 bSPRegenRate,6,4000; },{},{}
+19168,Band_Of_Kafra_,Kafra Staff Headband,4,20,,500,,0,,1,0xFFFFFFFF,63,2,256,,,1,106,{ bonus2 bSubClass,Class_All,5; .@r = getrefine()*10; bonus2 bAddMonsterDropItem,23177,10+.@r; bonus2 bAddMonsterDropItem,7059,10+.@r; bonus2 bAddMonsterDropItem,7060,10+.@r; },{},{}
 //===================================================================
 //===================================================================
 // Costume System
 // Costume System
 //===================================================================
 //===================================================================
@@ -10737,6 +10746,9 @@
 20797,Etran_Shirt,Etran Shirt,4,0,,150,,,,1,0xFFFFFFFF,63,2,4,1,1,1,,{ bonus bMdef,10; bonus bMaxHPrate,2; .@r = getrefine(); if (.@r >= 6) bonus bMaxHPrate,4; if (.@r >= 7) bonus bMaxHPrate,6; if (.@r >= 8) bonus bMaxHPrate,8; if (.@r >= 9) bonus bNoKnockback,1; },{},{}
 20797,Etran_Shirt,Etran Shirt,4,0,,150,,,,1,0xFFFFFFFF,63,2,4,1,1,1,,{ bonus bMdef,10; bonus bMaxHPrate,2; .@r = getrefine(); if (.@r >= 6) bonus bMaxHPrate,4; if (.@r >= 7) bonus bMaxHPrate,6; if (.@r >= 8) bonus bMaxHPrate,8; if (.@r >= 9) bonus bNoKnockback,1; },{},{}
 20798,C_Grim_Reaper_Protection,Costume Grim Reaper Protection,4,0,,0,,,,0,0xFFFFFFFF,63,2,4096,,1,0,1450,{},{},{}
 20798,C_Grim_Reaper_Protection,Costume Grim Reaper Protection,4,0,,0,,,,0,0xFFFFFFFF,63,2,4096,,1,0,1450,{},{},{}
 20819,Oxygen_Bottle,Oxygen Bottle,4,0,,500,,0,,1,0xFFFFFFFF,63,2,4,,40,0,0,{ bonus bFlee,12+getrefine(); bonus bHit,getrefine(); },{},{}
 20819,Oxygen_Bottle,Oxygen Bottle,4,0,,500,,0,,1,0xFFFFFFFF,63,2,4,,40,0,0,{ bonus bFlee,12+getrefine(); bonus bHit,getrefine(); },{},{}
+20823,Para_Team_Manteau100,Awakened Eden Group Manteau I,4,0,,0,,20,,0,0xFFFFFFFF,63,2,4,,100,1,0,{ bonus2 bSubEle,Ele_Neutral,10; bonus bFlee,12; .@r = getrefine(); if(.@r >= 7){ bonus bMaxHP,500; bonus bFlee2,2; if(.@r >= 9){ bonus bMaxHP,500; bonus2 bSubEle,Ele_All,10; bonus2 bSubEle,Ele_Neutral,-10; } } },{},{}
+20824,Para_Team_Manteau130,Awakened Eden Group Manteau II,4,0,,0,,25,,0,0xFFFFFFFF,63,2,4,,130,1,0,{ bonus2 bSubEle,Ele_Neutral,10; bonus bFlee,12; bonus bMaxHP,500; bonus bFlee2,2; .@r = getrefine(); if(.@r >= 7){ bonus bMaxHP,500; bonus2 bSubEle,Ele_All,10; bonus2 bSubEle,Ele_Neutral,-10; if(.@r >= 9){ bonus2 bSubEle,Ele_Neutral,5; } } },{},{}
+20825,Para_Team_Manteau160,Awakened Eden Group Manteau III,4,0,,0,,30,,0,0xFFFFFFFF,63,2,4,,160,1,0,{ bonus2 bSubEle,Ele_All,10; bonus bFlee,12; bonus bMaxHP,1000; bonus bFlee2,2; .@r = getrefine(); if(.@r >= 7){ bonus2 bSubEle,Ele_Neutral,5; if(.@r >= 9){ skill "BS_GREED",1; } } },{},{}
 //===================================================================
 //===================================================================
 // More 2-Handed Swords
 // More 2-Handed Swords
 //===================================================================
 //===================================================================
@@ -10800,6 +10812,11 @@
 22084,Luxury_Doram_Shoes,Luxury Doram Shoes,4,20,,600,,30,,1,0x80000000,7,2,64,,140,1,,{ bonus bMaxHP,300; bonus bMaxSP,100; .@r = getrefine()/3; bonus bHPrecovRate,20*.@r; bonus bSPrecovRate,20*.@r; },{},{}
 22084,Luxury_Doram_Shoes,Luxury Doram Shoes,4,20,,600,,30,,1,0x80000000,7,2,64,,140,1,,{ bonus bMaxHP,300; bonus bMaxSP,100; .@r = getrefine()/3; bonus bHPrecovRate,20*.@r; bonus bSPrecovRate,20*.@r; },{},{}
 22085,Elegant_Doram_Shoes,Elegant Doram Shoes,4,20,,700,,35,,1,0x80000000,7,2,64,,175,1,,{ bonus bMaxHPrate,10; bonus bMaxSPrate,5; .@r = getrefine()/2; bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; if(.@r >= 4) bonus2 bSkillUseSP,"SU_LOPE",5; },{},{}
 22085,Elegant_Doram_Shoes,Elegant Doram Shoes,4,20,,700,,35,,1,0x80000000,7,2,64,,175,1,,{ bonus bMaxHPrate,10; bonus bMaxSPrate,5; .@r = getrefine()/2; bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; if(.@r >= 4) bonus2 bSkillUseSP,"SU_LOPE",5; },{},{}
 22103,Excelion_Leg,Excelion Leg,4,0,,500,,13,,0,0xFFFFFFFF,63,2,64,1,100,1,,{ .@r = getrefine(); bonus bMaxHP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; bonus bMaxSP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; },{},{}
 22103,Excelion_Leg,Excelion Leg,4,0,,500,,13,,0,0xFFFFFFFF,63,2,64,1,100,1,,{ .@r = getrefine(); bonus bMaxHP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; bonus bMaxSP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; },{},{}
+22122,Para_Team_Boots100,Awakened Eden Group Boots I,4,0,,0,,22,,0,0xFFFFFFFF,63,2,64,,100,1,,{ bonus bAllStats,1; bonus bHPrecovRate,30; bonus bSPrecovRate,14; },{},{}
+22123,Para_Team_Boots115,Awakened Eden Group Boots II,4,0,,0,,25,,0,0xFFFFFFFF,63,2,64,,115,1,,{ bonus bAllStats,1; bonus bHPrecovRate,36; bonus bSPrecovRate,18; },{},{}
+22124,Para_Team_Boots130,Awakened Eden Group Boots III,4,0,,0,,27,,0,0xFFFFFFFF,63,2,64,,130,1,,{ bonus bAllStats,2; bonus bHPrecovRate,36; bonus bSPrecovRate,18; },{},{}
+22125,Para_Team_Boots145,Awakened Eden Group Boots IV,4,0,,0,,30,,0,0xFFFFFFFF,63,2,64,,145,1,,{ bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20; },{},{}
+22126,Para_Team_Boots160,Awakened Eden Group Boots V,4,0,,0,,30,,0,0xFFFFFFFF,63,2,64,,160,1,,{ bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20; bonus bUseSPrate,-5; },{},{}
 22508,Para_Team_Mark_,Eden Group Mark,11,0,,0,,,,0,0xFFFFFFFF,63,2,,,,,,{ unitskilluseid getcharid(3),"AL_TELEPORT",3; },{},{}
 22508,Para_Team_Mark_,Eden Group Mark,11,0,,0,,,,0,0xFFFFFFFF,63,2,,,,,,{ unitskilluseid getcharid(3),"AL_TELEPORT",3; },{},{}
 22507,Worn-Out-Scroll,Worn-Out-Scroll,3,10,,10,,,,0,,,,,,,,,{},{},{}
 22507,Worn-Out-Scroll,Worn-Out-Scroll,3,10,,10,,,,0,,,,,,,,,{},{},{}
 22510,King_Wolf_Scroll,King Wolf Scroll,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,,,,{ /*TODO, confirm the rates*/ getitem callfunc("F_Rand",6635,19598,5658,6238,6239),1; },{},{}
 22510,King_Wolf_Scroll,King Wolf Scroll,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,,,,{ /*TODO, confirm the rates*/ getitem callfunc("F_Rand",6635,19598,5658,6238,6239),1; },{},{}
@@ -11015,6 +11032,12 @@
 22901,Question_Old_Blue_Box,Question Old Blue Box,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ /*No info yet*/ },{},{}
 22901,Question_Old_Blue_Box,Question Old Blue Box,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ /*No info yet*/ },{},{}
 22902,Sealed_Card_Album_Scroll_II,Sealed Card Album Scroll II,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1; },{},{}
 22902,Sealed_Card_Album_Scroll_II,Sealed Card Album Scroll II,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1; },{},{}
 22985,Basil,Basil,0,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "{ bonus2 bSPRegenRate,5,10000; }",180,1,0,SI_DORAM_BUF_02; },{},{}
 22985,Basil,Basil,0,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "{ bonus2 bSPRegenRate,5,10000; }",180,1,0,SI_DORAM_BUF_02; },{},{}
+//
+23177,Kafra_Card_,Kafra Card,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ callfunc "F_CashStore"; },{},{}
+23191,Varetyr_Spear_Scroll_1_5,Level 5 Varetyr Spear,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "SO_VARETYR_SPEAR",5; },{},{}
+23192,Diamond_Dust_Scroll_1_5,Level 5 Diamond Dust,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "SO_DIAMONDDUST",5; },{},{}
+23193,Crimson_Rock_Scroll_1_5,Level 5 Crimson Rock,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "WL_CRIMSONROCK",5; },{},{}
+23194,Sienna_Execrate_Scroll_1_5,Level 5 Sienna Execrate,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "WL_SIENNAEXECRATE",5; },{},{}
 //===================================================================
 //===================================================================
 // Shadow Equipments
 // Shadow Equipments
 //===================================================================
 //===================================================================
@@ -11273,6 +11296,9 @@
 25148,Cute_Starved_Demon_Doll,Cute Starved Demon Doll,3,0,,0,,,,,,,,,,,,,{},{},{}
 25148,Cute_Starved_Demon_Doll,Cute Starved Demon Doll,3,0,,0,,,,,,,,,,,,,{},{},{}
 25149,Doll_With_Warm_Scarf,Doll With Warm Scarf,3,0,,0,,,,,,,,,,,,,{},{},{}
 25149,Doll_With_Warm_Scarf,Doll With Warm Scarf,3,0,,0,,,,,,,,,,,,,{},{},{}
 25150,Hugging_Alice_Pilow,Hugging Alice Pilow,3,0,,0,,,,,,,,,,,,,{},{},{}
 25150,Hugging_Alice_Pilow,Hugging Alice Pilow,3,0,,0,,,,,,,,,,,,,{},{},{}
+25223,Para_Team_Coin,Eden Group Coin,3,0,,0,,,,,,,,,,,,,{},{},{}
+25238,New_Normal_Lubricant,New Normal Lubricant,3,0,,0,,,,,,,,,,,,,{},{},{}
+25239,New_Advanced_Lubricant,New Advanced Lubricant,3,0,,0,,,,,,,,,,,,,{},{},{}
 //
 //
 26100,Paradise_Foxtail_Staff_II,Eden Group Foxtail Staff II,5,20,,0,135:165,,1,0,0x80000000,7,2,2,2,40,0,10,{ bonus bDex,4; bonus bInt,4; bonus bLongAtkRate,6; },{},{}
 26100,Paradise_Foxtail_Staff_II,Eden Group Foxtail Staff II,5,20,,0,135:165,,1,0,0x80000000,7,2,2,2,40,0,10,{ bonus bDex,4; bonus bInt,4; bonus bLongAtkRate,6; },{},{}
 26101,Paradise_Foxtail_Staff_III,Eden Group Foxtail Staff III,5,20,,0,150:195,,1,0,0x80000000,7,2,2,3,60,0,10,{ bonus bDex,5; bonus bInt,5; bonus bLongAtkRate,7; },{},{}
 26101,Paradise_Foxtail_Staff_III,Eden Group Foxtail Staff III,5,20,,0,150:195,,1,0,0x80000000,7,2,2,3,60,0,10,{ bonus bDex,5; bonus bInt,5; bonus bLongAtkRate,7; },{},{}
@@ -11347,6 +11373,37 @@
 28422,Shiny_Branch_Talisman,Shiny Branch Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */ },{},{}
 28422,Shiny_Branch_Talisman,Shiny Branch Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */ },{},{}
 28423,Fresh_Tuna_Talisman,Fresh Tuna Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10; },{},{}
 28423,Fresh_Tuna_Talisman,Fresh Tuna Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10; },{},{}
 28424,Chubby_Worm_Talisman,Chubby Worm Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */ },{},{}
 28424,Chubby_Worm_Talisman,Chubby Worm Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */ },{},{}
+28443,Para_Team_Str_Ring100,Awakened Eden Group Ring of Strength I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bAtkRate,2; },{},{}
+28444,Para_Team_Str_Necklace100,Awakened Eden Group Necklace of Strength I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bStr,1; },{},{}
+28445,Para_Team_Str_Ring115,Awakened Eden Group Ring of Strength II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bAtkRate,3; },{},{}
+28446,Para_Team_Str_Necklace115,Awakened Eden Group Necklace of Strength II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bStr,2; },{},{}
+28447,Para_Team_Str_Ring130,Awakened Eden Group Ring of Strength III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bAtkRate,4; },{},{}
+28448,Para_Team_Str_Necklace130,Awakened Eden Group Necklace of Strength III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bStr,3; },{},{}
+28449,Para_Team_Str_Ring145,Awakened Eden Group Ring of Strength IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bAtkRate,5; },{},{}
+28450,Para_Team_Str_Necklace145,Awakened Eden Group Necklace of Strength IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bStr,4; },{},{}
+28451,Para_Team_Str_Ring160,Awakened Eden Group Ring of Strength V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bAtkRate,5; skill "AL_HEAL",1; },{},{}
+28452,Para_Team_Str_Necklace160,Awakened Eden Group Necklace of Strength V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bStr,4; skill "AL_TELEPORT",1; },{},{}
+28453,Para_Team_Magic_Ring100,Awakened Eden Group Ring of Magic I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bMatkRate,2; },{},{}
+28454,Para_Team_Magic_Necklace100,Awakened Eden Group Necklace of Magic I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bInt,1; },{},{}
+28455,Para_Team_Magic_Ring115,Awakened Eden Group Ring of Magic II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bMatkRate,3; },{},{}
+28456,Para_Team_Magic_Necklace115,Awakened Eden Group Necklace of Magic II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bInt,2; },{},{}
+28457,Para_Team_Magic_Ring130,Awakened Eden Group Ring of Magic III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bMatkRate,4; },{},{}
+28458,Para_Team_Magic_Necklace130,Awakened Eden Group Necklace of Magic III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bInt,3; },{},{}
+28459,Para_Team_Magic_Ring145,Awakened Eden Group Ring of Magic IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bMatkRate,5; },{},{}
+28460,Para_Team_Magic_Necklace145,Awakened Eden Group Necklace of Magic IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bInt,4; },{},{}
+28461,Para_Team_Magic_Ring160,Awakened Eden Group Ring of Magic V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bMatkRate,5; skill "AL_HEAL",1; },{},{}
+28462,Para_Team_Magic_Necklace160,Awakened Eden Group Necklace of Magic V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bInt,4; skill "AL_TELEPORT",1; },{},{}
+28463,Para_Team_Agi_Ring100,Awakened Eden Group Ring of Agility I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bLongAtkRate,1; },{},{}
+28464,Para_Team_Agi_Necklace100,Awakened Eden Group Necklace of Agility I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bDex,1; },{},{}
+28465,Para_Team_Agi_Ring115,Awakened Eden Group Ring of Agility II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bLongAtkRate,2; },{},{}
+28466,Para_Team_Agi_Necklace115,Awakened Eden Group Necklace of Agility II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus bDex,2; },{},{}
+28467,Para_Team_Agi_Ring130,Awakened Eden Group Ring of Agility III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bLongAtkRate,3; },{},{}
+28468,Para_Team_Agi_Necklace130,Awakened Eden Group Necklace of Agility III,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bDex,3; },{},{}
+28469,Para_Team_Agi_Ring145,Awakened Eden Group Ring of Agility IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bLongAtkRate,4; },{},{}
+28470,Para_Team_Agi_Necklace145,Awakened Eden Group Necklace of Agility IV,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,145,,,{ bonus bDex,4; },{},{}
+28471,Para_Team_Agi_Ring160,Awakened Eden Group Ring of Agility V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bLongAtkRate,4; skill "AL_HEAL",1; },{},{}
+28472,Para_Team_Agi_Necklace160,Awakened Eden Group Necklace of Agility V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bDex,4; skill "AL_TELEPORT",1; },{},{}
+28483,Royal_Guardian_Ring,Royal Guardian Ring,4,0,,10,,1,,1,0xFFFFFFFF,63,2,136,,99,,,{ .@b = min(BaseLevel/25,7); bonus bMaxHPrate,.@b; bonus bMaxSPrate,.@b; },{},{}
 28600,Blue_Book,Blue Book,5,10,,500,160,,1,1,0x00000100,56,2,2,3,100,1,15,{ bonus bAgi,5; bonus bDex,5; },{},{}
 28600,Blue_Book,Blue Book,5,10,,500,160,,1,1,0x00000100,56,2,2,3,100,1,15,{ bonus bAgi,5; bonus bDex,5; },{},{}
 28601,Ru_Gold_Book,Ru Gold Book,5,0,,500,160,,1,2,0x00000008,63,2,2,3,120,1,15,{ bonus bVit,8; bonus bInt,8; },{},{}
 28601,Ru_Gold_Book,Ru Gold Book,5,0,,500,160,,1,2,0x00000008,63,2,2,3,120,1,15,{ bonus bVit,8; bonus bInt,8; },{},{}
 28602,Demon_Hunting_Bible,Demon Hunting Bible,5,0,,500,30:170,,1,2,0x00000008,63,2,2,3,110,1,15,{ bonus bInt,2; bonus bDex,2; .@b = readparam(bInt); bonus2 bSkillAtk,"PR_MAGNUS",30+min(.@b,120); },{},{}
 28602,Demon_Hunting_Bible,Demon Hunting Bible,5,0,,500,30:170,,1,2,0x00000008,63,2,2,3,110,1,15,{ bonus bInt,2; bonus bDex,2; .@b = readparam(bInt); bonus2 bSkillAtk,"PR_MAGNUS",30+min(.@b,120); },{},{}
@@ -11503,5 +11560,6 @@
 31088,C_Mad_Hatter,Costume Mad Hatter,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,1421,{},{},{}
 31088,C_Mad_Hatter,Costume Mad Hatter,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,1421,{},{},{}
 31089,C_Exploding_Crimson_Flame,Costume Exploding Crimson Flame,4,0,,0,,,,0,0xFFFFFFFF,63,2,2048,,1,0,1500,{},{},{}
 31089,C_Exploding_Crimson_Flame,Costume Exploding Crimson Flame,4,0,,0,,,,0,0xFFFFFFFF,63,2,2048,,1,0,1500,{},{},{}
 31090,C_Angelring_Hat,Costume Angelring Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,348,{},{},{}
 31090,C_Angelring_Hat,Costume Angelring Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,348,{},{},{}
+31092,C_Rabbit_Ribbon_Hat,Costume Bunny Ribbon Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,845,{},{},{}
 31093,C_Under_Lamp,Costume Under Lamp,4,0,,0,,,,0,0xFFFFFFFF,63,2,4096,,1,0,1531,{},{},{}
 31093,C_Under_Lamp,Costume Under Lamp,4,0,,0,,,,0,0xFFFFFFFF,63,2,4096,,1,0,1531,{},{},{}
 31105,C_RO_Celebration_Hat,Costume RO Celebration Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,1541,{},{},{}
 31105,C_RO_Celebration_Hat,Costume RO Celebration Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,1541,{},{},{}

+ 1 - 0
db/re/item_trade.txt

@@ -3857,6 +3857,7 @@
 //22950,475,100	//
 //22950,475,100	//
 //22951,475,100	//
 //22951,475,100	//
 //22952,475,100	//
 //22952,475,100	//
+23177,475,100	// Kafra_Card_
 25132,499,100	// Pumpkin_Deco
 25132,499,100	// Pumpkin_Deco
 25133,499,100	// Dried_White_Stem
 25133,499,100	// Dried_White_Stem
 25143,499,100	// Gift_Stuffed_Doll
 25143,499,100	// Gift_Stuffed_Doll

+ 22 - 0
db/re/skill_db.txt

@@ -865,6 +865,28 @@
 //725,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION,Reverberation 2
 //725,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION,Reverberation 2
 //726,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION_ATK,Reverberation Attack
 //726,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_REVERBERATION_ATK,Reverberation Attack
 //727,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEX_AETERNA,Lex Aeterna 2
 //727,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEX_AETERNA,Lex Aeterna 2
+//728,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_ARROWSTORM,NPC Arrow Storm
+//729,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_CHEAL,NPC Coluceo Heal
+//730,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_SR_CURSEDCIRCLE,NPC 
+//731,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_DRAGONBREATH,NPC Dragon Breath
+//732,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_FATALMENACE,NPC Fatal Menace
+//733,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MAGMA_ERUPTION,NPC Magma Eruption
+//734,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MAGMA_ERUPTION_DOTDAMAGE,NPC Magma Eruption Dot Damage
+//735,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_MANDRAGORA,NPC Howling of Mandragora
+//736,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_PSYCHIC_WAVE,NPC Psychic Wave
+//737,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_RAYOFGENESIS,NPC Ray of Genesis
+//738,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_VENOMIMPRESS,NPC Venom Impress
+//739,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_CLOUD_KILL,NPC Cloud Kill
+//740,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_IGNITIONBREAK,NPC Ignition Break
+//741,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_PHANTOMTHRUST,NPC Phantom Thrust
+//742,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_POISON_BUSTER,NPC Poison Blaster
+//743,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_HALLUCINATIONWALK,NPC Hallucination Walk
+//744,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_ELECTRICWALK,NPC Electric Walk
+//745,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_FIREWALK,NPC Fire Walk
+//746,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDEDISPEL,Wide Dispell
+//747,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_LEASH,Leash
+//748,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDELEASH,Wide Leash
+//749,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0,		NPC_WIDECRITICALWOUND,Wide Critical Wound
 
 
 //****
 //****
 // 2nd Quest Skills
 // 2nd Quest Skills

+ 2 - 0
doc/item_bonus.txt

@@ -155,6 +155,8 @@ bonus2 bHPRegenRate,n,t;		Gain n HP every t milliseconds
 bonus2 bHPLossRate,n,t; 		Lose n HP every t milliseconds
 bonus2 bHPLossRate,n,t; 		Lose n HP every t milliseconds
 bonus2 bSPRegenRate,n,t;		Gain n SP every t milliseconds
 bonus2 bSPRegenRate,n,t;		Gain n SP every t milliseconds
 bonus2 bSPLossRate,n,t; 		Lose n SP every t milliseconds
 bonus2 bSPLossRate,n,t; 		Lose n SP every t milliseconds
+bonus2 bRegenPercentHP,n,t;		Gain n% of max HP every t milliseconds
+bonus2 bRegenPercentSP,n,t;		Gain n% of max SP every t milliseconds
 bonus bNoRegen,x;       		Stops HP or SP regeneration (x: 1=HP, 2=SP)
 bonus bNoRegen,x;       		Stops HP or SP regeneration (x: 1=HP, 2=SP)
 
 
 bonus bUseSPrate,n;         		SP consumption + n%
 bonus bUseSPrate,n;         		SP consumption + n%

+ 3 - 3
npc/quests/first_class/tu_archer.txt

@@ -109,7 +109,7 @@ payon_in02,67,65,3	script	Bard Jet#tu	1_M_BARD,{
 		mes "You're...!";
 		mes "You're...!";
 		next;
 		next;
 		specialeffect2 EF_TALK_FROSTJOKE;
 		specialeffect2 EF_TALK_FROSTJOKE;
-		//specialeffect EF_TALK_FROSTJOKE,"Bard Jet#tu";
+		//specialeffect EF_TALK_FROSTJOKE,AREA,"Bard Jet#tu";
 		emotion e_no1;
 		emotion e_no1;
 		mes "[Jet]";
 		mes "[Jet]";
 		mes "Let's see...";
 		mes "Let's see...";
@@ -1172,11 +1172,11 @@ pay_arche,103,165,5	script	Reidin Corse#tu	4_M_REIDIN_KURS,{
 // Seisner
 // Seisner
 //============================================================
 //============================================================
 pay_arche,84,139,3	script	Seisner	4_F_JOB_HUNTER,{
 pay_arche,84,139,3	script	Seisner	4_F_JOB_HUNTER,{
-	specialeffect EF_HIT2,"#Target";
+	specialeffect EF_HIT2,AREA,"#Target";
 	mes "[Seisner]";
 	mes "[Seisner]";
 	mes "Aaaah!";
 	mes "Aaaah!";
 	mes "Double Strafe!";
 	mes "Double Strafe!";
-	specialeffect EF_HIT2,"#Target";
+	specialeffect EF_HIT2,AREA,"#Target";
 	next;
 	next;
 	mes "[Seisner]";
 	mes "[Seisner]";
 	mes "I did it!";
 	mes "I did it!";

+ 99 - 373
npc/re/instances/OldGlastHeim.txt

@@ -242,12 +242,12 @@ OnEnable:
 		next;
 		next;
 		mes "[Varmunt]";
 		mes "[Varmunt]";
 		mes "I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.";
 		mes "I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.";
-		donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk1";
+		npctalk "Varmunt : I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.", instance_npcname("Varmunt#ghinstance2");
 		cutin "gl_barmund2",2;
 		cutin "gl_barmund2",2;
 		next;
 		next;
 		mes "[Varmunt]";
 		mes "[Varmunt]";
 		mes "I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!";
 		mes "I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!";
-		donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk2";
+		npctalk "Varmunt : I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!", instance_npcname("Varmunt#ghinstance2");
 		next;
 		next;
 		select("Even if you do not believe...");
 		select("Even if you do not believe...");
 		mes "["+strcharinfo(0)+"]";
 		mes "["+strcharinfo(0)+"]";
@@ -298,27 +298,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Varmunt#ghinstance2");
 	hideoffnpc instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
-OnTalk1:
-	npctalk "Varmunt : I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.";
-	end;
-OnTalk2:
-	npctalk "Varmunt : I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!";
-	end;
-OnTalk3:
-	npctalk "Varmunt : Himmelmez!! Through the cracks!";
-	end;
-OnTalk4:
-	npctalk "Varmunt : Unbelievable. My men are...This kind of thing is not possible!";
-	end;
-OnTalk5:
-	npctalk "Varmunt : Heinrich, Sir! I need a quick decision.";
-	end;
-OnTalk6:
-	npctalk "Varmunt : To prevent other attacks, go chase her!";
-	end;
-OnTalk7:
-	npctalk "Varmunt : Now, your help is desperately needed. I hopefully ask you.";
-	end;
 }
 }
 
 
 1@gl_k,149,97,6	script	Heinrich#ghinstance2	652,{
 1@gl_k,149,97,6	script	Heinrich#ghinstance2	652,{
@@ -330,36 +309,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Heinrich#ghinstance2");
 	hideoffnpc instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
-OnTalk1:
-	npctalk "Heinrich : Who?!";
-	end;
-OnTalk2:
-	npctalk "Heinrich : That who rules the dead? No doubt, a pretty story. Here, some tea will be served to entertain the ladies. Unfortunately, I do not...";
-	end;
-OnTalk3:
-	npctalk "Heinrich : What did you say?";
-	end;
-OnTalk4:
-	npctalk "Heinrich : The King responded to the invitation of the Rune Midgard's Royal Family and hasn't come back yet.";
-	end;
-OnTalk5:
-	npctalk "Heinrich : Just leave before you get in trouble. This is the King's will!";
-	end;
-OnTalk6:
-	npctalk "Heinrich : Damn! She has detected the position of the Ymir's Heart pieces.";
-	end;
-OnTalk7:
-	npctalk "Heinrich : Now, Khalitzburg Crusaders and White Knights, follow me...";
-	end;
-OnTalk8:
-	npctalk "Heinrich : Unbelievable. My men are...This kind of thing is not possible!";
-	end;
-OnTalk9:
-	npctalk "Heinrich : I'm sorry...";
-	end;
-OnTalk10:
-	npctalk "Heinrich : I'm sorry, my lord! Do not forgive me!";
-	end;
 }
 }
 
 
 1@gl_k,149,100,6	script	Heinrich#ghinstance3	652,{
 1@gl_k,149,100,6	script	Heinrich#ghinstance3	652,{
@@ -371,30 +320,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Heinrich#ghinstance3");
 	hideoffnpc instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
-OnTalk1:
-	npctalk "Heinrich : I cannot believe I killed my men with my own hands!";
-	end;
-OnTalk2:
-	npctalk "Heinrich : Varmunt is right about that. Now is not the time to regret.";
-	end;
-OnTalk3:
-	npctalk "Heinrich : People, gather around and follow my orders.";
-	end;
-OnTalk4:
-	npctalk "Heinrich : Himmelmez is turning into monsters all the people she put to sleep.";
-	end;
-OnTalk5:
-	npctalk "Heinrich : I don't know if there are survivors around here yet.";
-	end;
-OnTalk6:
-	npctalk "Heinrich : If there are survivors from this evil thing, please rescue them.";
-	end;
-OnTalk7:
-	npctalk "Heinrich : With Varmunt by my side, I'm going to chase Himmelmez down.";
-	end;
-OnTalk8:
-	npctalk "Heinrich : Hurry up Varmunt, let's chase her down.";
-	end;
 }
 }
 
 
 1@gl_k,149,89,1	script	Himmelmez#ghinstance1	650,{
 1@gl_k,149,89,1	script	Himmelmez#ghinstance1	650,{
@@ -406,30 +331,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Himmelmez#ghinstance1");
 	hideoffnpc instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
-OnTalk1:
-	npctalk "Himmelmez : This~ Did I interrupt your conversation? The thing is, it's been too long since the last guests saw some sadness spread...";
-	end;
-OnTalk2:
-	npctalk "Himmelmez : My name is Lisa Kahn Himmelmez. I am called the Valkyrie of the dead, master of the Dullahan.";
-	end;
-OnTalk3:
-	npctalk "Himmelmez : There's no need to pretend to be so laid back. Don't bluff about the whereabouts of you Majesty and things will be alright.";
-	end;
-OnTalk4:
-	npctalk "Himmelmez : Hohoho, do you have any questions? You're a really mysterious man.";
-	end;
-OnTalk5:
-	npctalk "Himmelmez : Not coveting the king's throne, you're such a stupid man, only waiting for his return. Your innocence is true, I love it.";
-	end;
-Ontalk6:
-	npctalk "Himmelmez : You make me wish we hadn't met in this situation. Too bad we did.";
-	end;
-Ontalk7:
-	npctalk "Himmelmez : Well~ Today, with such a busy commandant, I won't be able to talk as much as I'd love for you to contemplate my explanation~";
-	end;
-OnTalk8:
-	npctalk "Himmelmez : I gotta get my job done. Meanwhile why don't you meet my men? Hohoho.";
-	end;
 }
 }
 
 
 // Control Timer
 // Control Timer
@@ -444,53 +345,53 @@ OnEnable:
 	initnpctimer;
 	initnpctimer;
 	end;
 	end;
 OnTimer5000:
 OnTimer5000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk1";
+	npctalk "Heinrich : Who?!", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer10000:
 OnTimer10000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk1";
+	npctalk "Himmelmez : This~ Did I interrupt your conversation? The thing is, it's been too long since the last guests saw some sadness spread...", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer15000:
 OnTimer15000:
-	donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk3";
+	npctalk "Varmunt : Himmelmez!! Through the cracks!", instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
 OnTimer20000:
 OnTimer20000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk2";
+	npctalk "Himmelmez : My name is Lisa Kahn Himmelmez. I am called the Valkyrie of the dead, master of the Dullahan.", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer25000:
 OnTimer25000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk2";
+	npctalk "Heinrich : That who rules the dead? No doubt, a pretty story. Here, some tea will be served to entertain the ladies. Unfortunately, I do not...", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer30000:
 OnTimer30000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk3";
+	npctalk "Himmelmez : There's no need to pretend to be so laid back. Don't bluff about the whereabouts of you Majesty and things will be alright.", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer35000:
 OnTimer35000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk3";
+	npctalk "Heinrich : What did you say?", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer45000:
 OnTimer45000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk4";
+	npctalk "Himmelmez : Hohoho, do you have any questions? You're a really mysterious man.", instance_npcname("Himmelmez#ghinstance1");
 	end;	
 	end;	
 OnTimer50000:
 OnTimer50000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk5";
+	npctalk "Himmelmez : Not coveting the king's throne, you're such a stupid man, only waiting for his return. Your innocence is true, I love it.", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer55000:
 OnTimer55000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk6";
+	npctalk "Himmelmez : You make me wish we hadn't met in this situation. Too bad we did.", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer60000:
 OnTimer60000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk4";
+	npctalk "Heinrich : The King responded to the invitation of the Rune Midgard's Royal Family and hasn't come back yet.", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer65000:
 OnTimer65000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk5";
+	npctalk "Heinrich : Just leave before you get in trouble. This is the King's will!", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer70000:
 OnTimer70000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk7";
+	npctalk "Himmelmez : Well~ Today, with such a busy commandant, I won't be able to talk as much as I'd love for you to contemplate my explanation~", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer75000:
 OnTimer75000:
-	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk8";
+	npctalk "Himmelmez : I gotta get my job done. Meanwhile why don't you meet my men? Hohoho.", instance_npcname("Himmelmez#ghinstance1");
 	end;
 	end;
 OnTimer80000:
 OnTimer80000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk6";
+	npctalk "Heinrich : Damn! She has detected the position of the Ymir's Heart pieces.", instance_npcname("Heinrich#ghinstance2");
 	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnDisable";
 	donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnDisable";
 	end;
 	end;
 OnTimer85000:
 OnTimer85000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk7";
+	npctalk "Heinrich : Now, Khalitzburg Crusaders and White Knights, follow me...", instance_npcname("Heinrich#ghinstance2");
 	hideonnpc instance_npcname("Varmunt#ghinstance1");
 	hideonnpc instance_npcname("Varmunt#ghinstance1");
 
 
 	for(set .@i,1; .@i<=20; set .@i,.@i+4) {
 	for(set .@i,1; .@i<=20; set .@i,.@i+4) {
@@ -518,21 +419,21 @@ OnTimer85000:
 	for(set .@i,1; .@i<=22; set .@i,.@i+1)
 	for(set .@i,1; .@i<=22; set .@i,.@i+1)
 		hideoffnpc instance_npcname(".#ghinstance"+.@i);
 		hideoffnpc instance_npcname(".#ghinstance"+.@i);
 
 
-	donpcevent instance_npcname(".#ghinstance22")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance21")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance18")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance17")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance14")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance13")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance10")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance9")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance6")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance5")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance2")+"::OnTalkK";
-	donpcevent instance_npcname(".#ghinstance1")+"::OnTalkK";
+	npctalk ". : I'm so thirsty!", instance_npcname(".#ghinstance22");
+	npctalk ". : Uhh... My body.", instance_npcname(".#ghinstance21");
+	npctalk ". : Who am I...", instance_npcname(".#ghinstance18");
+	npctalk ". : This is so uncomfortable. Eww!", instance_npcname(".#ghinstance17");
+	npctalk ". : Oh... No... I cannot die...", instance_npcname(".#ghinstance14");
+	npctalk ". : I'm thirsty.", instance_npcname(".#ghinstance13");
+	npctalk ". : Ack... Ugh.", instance_npcname(".#ghinstance10");
+	npctalk ". : Heinrich Sir, help!", instance_npcname(".#ghinstance9");
+	npctalk ". : My stomach hurts...", instance_npcname(".#ghinstance6");
+	npctalk ". : Help.", instance_npcname(".#ghinstance5");
+	npctalk ". : Mom...", instance_npcname(".#ghinstance2");
+	npctalk ". : I do not want to die.", instance_npcname(".#ghinstance1");
 	end;
 	end;
 OnTimer88000:
 OnTimer88000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk8";
+	npctalk "Heinrich : Unbelievable. My men are...This kind of thing is not possible!", instance_npcname("Heinrich#ghinstance2");
 
 
 	for(set .@i,1; .@i<=20; set .@i,.@i+4) {
 	for(set .@i,1; .@i<=20; set .@i,.@i+4) {
 		hideonnpc instance_npcname(".#ghinstance"+.@i);
 		hideonnpc instance_npcname(".#ghinstance"+.@i);
@@ -559,13 +460,13 @@ OnTimer88000:
 	monster .@map$,154,104,"Khalitzburg",2471,1,.@label$;
 	monster .@map$,154,104,"Khalitzburg",2471,1,.@label$;
 	end;
 	end;
 OnTimer93000:
 OnTimer93000:
-	donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk4";
+	npctalk "Varmunt : Unbelievable. My men are...This kind of thing is not possible!", instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
 OnTimer97000:
 OnTimer97000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk9";
+	npctalk "Heinrich : I'm sorry...", instance_npcname("Heinrich#ghinstance2");
 	end;
 	end;
 OnTimer105000:
 OnTimer105000:
-	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk10";
+	npctalk "Heinrich : I'm sorry, my lord! Do not forgive me!", instance_npcname("Heinrich#ghinstance2");
 	mapannounce instance_mapname("1@gl_k"), "Heinrich's Shout: Dead men, dead men all over the place!",bc_map,"0xFFFF00";
 	mapannounce instance_mapname("1@gl_k"), "Heinrich's Shout: Dead men, dead men all over the place!",bc_map,"0xFFFF00";
 	end;
 	end;
 OnTimer107000:
 OnTimer107000:
@@ -636,40 +537,40 @@ OnTimer114750: //custom time
 OnTimer115000:
 OnTimer115000:
 	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnEnable";
 	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnEnable";
 	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnDisable";
 	donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnDisable";
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk1";
+	npctalk "Heinrich : I cannot believe I killed my men with my own hands!", instance_npcname("Heinrich#ghinstance3");
 	donpcevent instance_npcname(".#ghinstance2")+"::OnEffect1";
 	donpcevent instance_npcname(".#ghinstance2")+"::OnEffect1";
 	donpcevent instance_npcname(".#ghinstance1")+"::OnEffect1";
 	donpcevent instance_npcname(".#ghinstance1")+"::OnEffect1";
 	killmonster instance_mapname("1@gl_k"),instance_npcname("#talkinstance1")+"::OnMyMobDead";
 	killmonster instance_mapname("1@gl_k"),instance_npcname("#talkinstance1")+"::OnMyMobDead";
 	end;
 	end;
 OnTimer120000:
 OnTimer120000:
-	donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk5";
+	npctalk "Varmunt : Heinrich, Sir! I need a quick decision.", instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
 OnTimer125000:
 OnTimer125000:
-	donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk6";
+	npctalk "Varmunt : To prevent other attacks, go chase her!", instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
 OnTimer130000:
 OnTimer130000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk2";
+	npctalk "Heinrich : Varmunt is right about that. Now is not the time to regret.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer135000:
 OnTimer135000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk3";
+	npctalk "Heinrich : People, gather around and follow my orders.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer140000:
 OnTimer140000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk4";
+	npctalk "Heinrich : Himmelmez is turning into monsters all the people she put to sleep.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer145000:
 OnTimer145000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk5";
+	npctalk "Heinrich : I don't know if there are survivors around here yet.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer150000:
 OnTimer150000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk6";
+	npctalk "Heinrich : If there are survivors from this evil thing, please rescue them.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer155000:
 OnTimer155000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk7";
+	npctalk "Heinrich : With Varmunt by my side, I'm going to chase Himmelmez down.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer160000:
 OnTimer160000:
-	donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk7";
+	npctalk "Varmunt : Now, your help is desperately needed. I hopefully ask you.", instance_npcname("Varmunt#ghinstance2");
 	end;
 	end;
 OnTimer165000:
 OnTimer165000:
-	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk8";
+	npctalk "Heinrich : Hurry up Varmunt, let's chase her down.", instance_npcname("Heinrich#ghinstance3");
 	end;
 	end;
 OnTimer167000:
 OnTimer167000:
 	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnDisable";
 	donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnDisable";
@@ -701,22 +602,6 @@ OnEffect1:
 	specialeffect EF_GRANDCROSS;
 	specialeffect EF_GRANDCROSS;
 	specialeffect EF_LEXAETERNA;
 	specialeffect EF_LEXAETERNA;
 	end;
 	end;
-OnTalkK:
-	switch(atoi(replacestr(strnpcinfo(2),"ghinstance",""))) {
-		case 1: npctalk ". : I do not want to die."; break;
-		case 2: npctalk ". : Mom..."; break;
-		case 5: npctalk ". : Help."; break;
-		case 6: npctalk ". : My stomach hurts..."; break;
-		case 9: npctalk ". : Heinrich Sir, help!"; break;
-		case 10: npctalk ". : Ack... Ugh."; break;
-		case 13: npctalk ". : I'm thirsty."; break;
-		case 14: npctalk ". : Oh... No... I cannot die..."; break;
-		case 17: npctalk ". : This is so uncomfortable. Eww!"; break;
-		case 18: npctalk ". : Who am I..."; break;
-		case 21: npctalk ". : Uhh... My body."; break;
-		case 22: npctalk ". : I'm so thirsty!"; break;
-	}
-	end;
 }
 }
 1@gl_k,154,54,3	duplicate(.#ghinstance1)	.#ghinstance2	2471
 1@gl_k,154,54,3	duplicate(.#ghinstance1)	.#ghinstance2	2471
 1@gl_k,145,64,6	duplicate(.#ghinstance1)	.#ghinstance5	2471
 1@gl_k,145,64,6	duplicate(.#ghinstance1)	.#ghinstance5	2471
@@ -1072,7 +957,7 @@ OnMyMobDead:
 	if (mobcount(.@map$,instance_npcname("#ghmemorialmob04")+"::OnMyMobDead") < 1) {
 	if (mobcount(.@map$,instance_npcname("#ghmemorialmob04")+"::OnMyMobDead") < 1) {
 		mapannounce .@map$, "12 o'clock warp leading to the Chivalry's Second Floor is now open.",bc_map,"0xFFFF00";
 		mapannounce .@map$, "12 o'clock warp leading to the Chivalry's Second Floor is now open.",bc_map,"0xFFFF00";
 		donpcevent instance_npcname("#ghinstancewarp7")+"::OnEnable";
 		donpcevent instance_npcname("#ghinstancewarp7")+"::OnEnable";
-		donpcevent instance_npcname("Varmunt#ghinstance3")+"::OnTalk2";
+		npctalk "Varmunt : From the monster I picked up some great stuff. People who are interested, talk to me.", instance_npcname("Varmunt#ghinstance3");
 		donpcevent instance_npcname("#effectGH01")+"::OnEnable";
 		donpcevent instance_npcname("#effectGH01")+"::OnEnable";
 		donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnEnable";
 		donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnEnable";
 		donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnEnable";
 		donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnEnable";
@@ -1112,37 +997,37 @@ OnEnable:
 	initnpctimer;
 	initnpctimer;
 	end;
 	end;
 OnTimer3000:
 OnTimer3000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk1";
+	npctalk "Himmelmez : What an awfully lucky, I flew all the way over here and just one of them is really powerful.", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer6000:
 OnTimer6000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk2";
+	npctalk "Himmelmez : But it doesn't matter to me.", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer9000:
 OnTimer9000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk3";
+	npctalk "Himmelmez : Now, all of you will die.", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer12000:
 OnTimer12000:
-	donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk1";
+	npctalk "Heinrich : Himmelmez! I won't let you take even a single more step here.", instance_npcname("Heinrich#ghinstance4");
 	end;
 	end;
 OnTimer15000:
 OnTimer15000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk4";
+	npctalk "Himmelmez : Hahaha, so you guys thought I would come alone?", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer18000:
 OnTimer18000:
-	donpcevent instance_npcname("Varmunt#ghinstance3")+"::OnTalk1";
+	npctalk "Varmunt : Heinrich Sir! Something unknown holds an inexplicably powerful force!", instance_npcname("Varmunt#ghinstance3");
 	end;
 	end;
 OnTimer21000:
 OnTimer21000:
-	donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk2";
+	npctalk "Heinrich : What... is this?!", instance_npcname("Heinrich#ghinstance4");
 	end;
 	end;
 OnTimer24000:
 OnTimer24000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk5";
+	npctalk "Himmelmez : This is my new toy to keep you at my feet. Why don't you guys play while I entertain?", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer27000:
 OnTimer27000:
-	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk6";
+	npctalk "Himmelmez : Sincerely~, If I am given the opportunity I'd like to meet you again, Heinrich.", instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
 OnTimer28000:
 OnTimer28000:
 	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnDisable";
 	donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnDisable";
 	end;
 	end;
 OnTimer31000:
 OnTimer31000:
-	donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk3";
+	npctalk "Heinrich : Varmunt Sir! Help the adventurers and I'll chase Himmelmez!", instance_npcname("Heinrich#ghinstance4");
 	end;
 	end;
 OnTimer32000:
 OnTimer32000:
 	donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnDisable";
 	donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnDisable";
@@ -1171,15 +1056,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Heinrich#ghinstance4");
 	hideoffnpc instance_npcname("Heinrich#ghinstance4");
 	end;
 	end;
-OnTalk1:
-	npctalk "Heinrich : Himmelmez! I won't let you take even a single more step here.";
-	end;
-OnTalk2:
-	npctalk "Heinrich : What... is this?!";
-	end;
-OnTalk3:
-	npctalk "Heinrich : Varmunt Sir! Help the adventurers and I'll chase Himmelmez!";
-	end;
 }
 }
 
 
 1@gl_k,150,257,3	script	Himmelmez#ghinstance2	650,{
 1@gl_k,150,257,3	script	Himmelmez#ghinstance2	650,{
@@ -1196,24 +1072,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Himmelmez#ghinstance2");
 	hideoffnpc instance_npcname("Himmelmez#ghinstance2");
 	end;
 	end;
-OnTalk1:
-	npctalk "Himmelmez : What an awfully lucky, I flew all the way over here and just one of them is really powerful.";
-	end;
-OnTalk2:
-	npctalk "Himmelmez : But it doesn't matter to me.";
-	end;
-OnTalk3:
-	npctalk "Himmelmez : Now, all of you will die.";
-	end;
-OnTalk4:
-	npctalk "Himmelmez : Hahaha, so you guys thought I would come alone?";
-	end;
-OnTalk5:
-	npctalk "Himmelmez : This is my new toy to keep you at my feet. Why don't you guys play while I entertain?";
-	end;
-OnTalk6:
-	npctalk "Himmelmez : Sincerely~, If I am given the opportunity I'd like to meet you again, Heinrich.";
-	end;
 }
 }
 
 
 1@gl_k,156,259,3	script	Varmunt#ghinstance3	654,{
 1@gl_k,156,259,3	script	Varmunt#ghinstance3	654,{
@@ -1247,12 +1105,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Varmunt#ghinstance3");
 	hideoffnpc instance_npcname("Varmunt#ghinstance3");
 	end;
 	end;
-OnTalk1:
-	npctalk "Varmunt : Heinrich Sir! Something unknown holds an inexplicably powerful force!";
-	end;
-OnTalk2:
-	npctalk "Varmunt : From the monster I picked up some great stuff. People who are interested, talk to me.";
-	end;
 }
 }
 
 
 // Floor 2
 // Floor 2
@@ -1272,21 +1124,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Heinrich#ghinstance5");
 	hideoffnpc instance_npcname("Heinrich#ghinstance5");
 	end;
 	end;
-OnTalk1:
-	npctalk "Heinrich : These things have never been in the castle!";
-	end;
-OnTalk2:
-	npctalk "Heinrich : Trying to break this power with common weapons doesn't work. I tried it.";
-	end;
-OnTalk3:
-	npctalk "Heinrich : It is really unforgivable.";
-	end;
-OnTalk4:
-	npctalk "Heinrich : I, who already was a subordinate of genocide. How much more in the future...";
-	end;
-OnTalk5:
-	npctalk "Heinrich : ...";
-	end;
 }
 }
 
 
 2@gl_k,151,71,7	script	Varmunt#ghinstance4	654,{
 2@gl_k,151,71,7	script	Varmunt#ghinstance4	654,{
@@ -1303,54 +1140,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Varmunt#ghinstance4");
 	hideoffnpc instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
-OnTalk2:
-	npctalk "Varmunt : Himmelmez's enchantment has completely blocked the passage to each section.";
-	end;
-OnTalk3:
-	npctalk "Varmunt : Get out of the way for a moment. I'll try to somehow break the spell with magical powers.";
-	end;
-OnTalk4:
-	npctalk "Varmunt : The enchantment seems to be broken.";
-	end;
-OnTalk5:
-	npctalk "Varmunt : I've never seen this spell before.";
-	end;
-OnTalk6:
-	npctalk "Varmunt : Himmelmez doesn't use a seal on a person's body to turn it into an undead.";
-	end;
-OnTalk7:
-	npctalk "Varmunt : She uses enchantment stones.This way, the spell is probably maintained.";
-	end;
-OnTalk8:
-	npctalk "Varmunt : We should kill the people who have the enchantment stones to break the spell.";
-	end;
-OnTalk9:
-	npctalk "Varmunt : However, we can't identify them. The purification can only be done randomly.";
-	end;
-OnTalk10:
-	npctalk "Varmunt : Commandant...";
-	end;
-OnTalk11:
-	npctalk "Varmunt : Commandant, it seems too loose.";
-	end;
-OnTalk12:
-	npctalk "Varmunt : We are related to all these people, not just a few.";
-	end;
-OnTalk13:
-	npctalk "Varmunt : We can't deny that it's not their fault for what is going on.";
-	end;
-OnTalk14:
-	npctalk "Varmunt : Well, let's do it then.";
-	end;
-OnTalk15:
-	npctalk "Varmunt : You guys are of a great help. Try to follow us.";
-	end;
-OnTalk16:
-	npctalk "Varmunt : There can be a tough fight. Hold on, and it would be nice to eat something.";
-	end;
-OnTalk17:
-	npctalk "Varmunt : Guys. It is time to depart, Heinrich Sir.";
-	end;
 }
 }
 
 
 2@gl_k,150,67,0	script	#effectGH01	111,10,10,{
 2@gl_k,150,67,0	script	#effectGH01	111,10,10,{
@@ -1385,72 +1174,72 @@ OnEnable:
 	initnpctimer;
 	initnpctimer;
 	end;
 	end;
 OnTimer3000:
 OnTimer3000:
-	donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk1";
+	npctalk "Heinrich : These things have never been in the castle!", instance_npcname("Heinrich#ghinstance5");
 	donpcevent instance_npcname("#ghmemorialmob05")+"::OnEnable";
 	donpcevent instance_npcname("#ghmemorialmob05")+"::OnEnable";
 	end;
 	end;
 OnTimer6000:
 OnTimer6000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk2";
+	npctalk "Varmunt : Himmelmez's enchantment has completely blocked the passage to each section.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer9000:
 OnTimer9000:
-	donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk2";
+	npctalk "Heinrich : Trying to break this power with common weapons doesn't work. I tried it.", instance_npcname("Heinrich#ghinstance5");
 	end;
 	end;
 OnTimer12000:
 OnTimer12000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk3";
+	npctalk "Varmunt : Get out of the way for a moment. I'll try to somehow break the spell with magical powers.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer15000:
 OnTimer15000:
 	donpcevent instance_npcname("#effectGH01")+"::OnEffect";
 	donpcevent instance_npcname("#effectGH01")+"::OnEffect";
 	end;
 	end;
 OnTimer18000:
 OnTimer18000:
 	donpcevent instance_npcname("#effectGH01")+"::OnDisable";
 	donpcevent instance_npcname("#effectGH01")+"::OnDisable";
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk4";
+	npctalk "Varmunt : The enchantment seems to be broken.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer21000:
 OnTimer21000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk5";
+	npctalk "Varmunt : I've never seen this spell before.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer24000:
 OnTimer24000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk6";
+	npctalk "Varmunt : Himmelmez doesn't use a seal on a person's body to turn it into an undead.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer27000:
 OnTimer27000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk7";
+	npctalk "Varmunt : She uses enchantment stones.This way, the spell is probably maintained.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer30000:
 OnTimer30000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk8";
+	npctalk "Varmunt : We should kill the people who have the enchantment stones to break the spell.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer33000:
 OnTimer33000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk9";
+	npctalk "Varmunt : However, we can't identify them. The purification can only be done randomly.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer36000:
 OnTimer36000:
-	donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk3";
+	npctalk "Heinrich : It is really unforgivable.", instance_npcname("Heinrich#ghinstance5");
 	end;
 	end;
 OnTimer39000:
 OnTimer39000:
-	donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk4";
+	npctalk "Heinrich : I, who already was a subordinate of genocide. How much more in the future...", instance_npcname("Heinrich#ghinstance5");
 	end;
 	end;
 OnTimer42000:
 OnTimer42000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk10";
+	npctalk "Varmunt : Commandant...", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer45000:
 OnTimer45000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk11";
+	npctalk "Varmunt : Commandant, it seems too loose.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer48000:
 OnTimer48000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk12";
+	npctalk "Varmunt : We are related to all these people, not just a few.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer51000:
 OnTimer51000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk13";
+	npctalk "Varmunt : We can't deny that it's not their fault for what is going on.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer54000:
 OnTimer54000:
-	donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk5";
+	npctalk "Heinrich : ...", instance_npcname("Heinrich#ghinstance5");
 	end;
 	end;
 OnTimer57000:
 OnTimer57000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk14";
+	npctalk "Varmunt : Well, let's do it then.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer60000:
 OnTimer60000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk15";
+	npctalk "Varmunt : You guys are of a great help. Try to follow us.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer63000:
 OnTimer63000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk16";
+	npctalk "Varmunt : There can be a tough fight. Hold on, and it would be nice to eat something.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer66000:
 OnTimer66000:
-	donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk17";
+	npctalk "Varmunt : Guys. It is time to depart, Heinrich Sir.", instance_npcname("Varmunt#ghinstance4");
 	end;
 	end;
 OnTimer69000:
 OnTimer69000:
 	mapannounce instance_mapname("2@gl_k"), "9 o'clock positioned warp leading to the 1st zone has been opened. Move from the central hallway. A being with an evil aura seems to be appearing in this region.",bc_map,"0xFFFF00";
 	mapannounce instance_mapname("2@gl_k"), "9 o'clock positioned warp leading to the 1st zone has been opened. Move from the central hallway. A being with an evil aura seems to be appearing in this region.",bc_map,"0xFFFF00";
@@ -1669,24 +1458,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Heinrich#ghinstance6");
 	hideoffnpc instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
-OnTalk1:
-	npctalk "Heinrich : Gerhard!";
-	end;
-OnTalk2:
-	npctalk "Heinrich : What are you doing to my men, Himmelmez?!";
-	end;
-OnTalk3:
-	npctalk "Heinrich : Himmelmez! You don't need to make any more sacrifices!";
-	end;
-OnTalk4:
-	npctalk "Heinrich : Let him go! I don't want one more sacrifice!";
-	end;
-OnTalk5:
-	npctalk "Heinrich : I will not forgive you.";
-	end;
-OnTalk6:
-	npctalk "Heinrich : Just leave us alone, Himmelmez!!";
-	end;
 }
 }
 
 
 2@gl_k,162,250,1	script	Varmunt#ghinstance5	654,{
 2@gl_k,162,250,1	script	Varmunt#ghinstance5	654,{
@@ -1704,9 +1475,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Varmunt#ghinstance5");
 	hideoffnpc instance_npcname("Varmunt#ghinstance5");
 	end;
 	end;
-OnTalk1:
-	npctalk "Varmunt : What? This cannot be. We must prevent Amdarias's attacks!";
-	end;
 }
 }
 
 
 2@gl_k,158,252,3	script	Himmelmez#ghinstance4	650,4,4,{
 2@gl_k,158,252,3	script	Himmelmez#ghinstance4	650,4,4,{
@@ -1718,39 +1486,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Himmelmez#ghinstance4");
 	hideoffnpc instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
-OnTalk1:
-	npctalk "Himmelmez : Great~ I thought you wouldn't come near the end...";
-	end;
-OnTalk2:
-	npctalk "Himmelmez : Huhu, I have already found a piece of Ymir's Heart, Heinrich.";
-	end;
-OnTalk3:
-	npctalk "Himmelmez : It would've been faster if there were no distractions.";
-	end;
-OnTalk4:
-	npctalk "Himmelmez : What do you think? Making it look like an accidental disease infected the king and the people around...";
-	end;
-OnTalk5:
-	npctalk "Himmelmez : You want that?";
-	end;
-OnTalk6:
-	npctalk "Himmelmez : This one is your final blow, Heinrich.";
-	end;
-OnTalk7:
-	npctalk "Himmelmez : It is said that stopping me requires a skillfull person.";
-	end;
-OnTalk8:
-	npctalk "Himmelmez : Seems like a perfect scenario to make my new monster, Amdarias.";
-	end;
-OnTalk9:
-	npctalk "Himmelmez : Booh~ I'm scared.";
-	end;
-OnTalk10:
-	npctalk "Himmelmez : Anyway, it was nice talking to you. Maybe we'll have the chance to meet again in the next story.";
-	end;
-OnTalk11:
-	npctalk "Himmelmez : Well, make sure you will come back again.";
-	end;
 }
 }
 
 
 2@gl_k,150,179,0	script	#controlGH6	111,2,2,{
 2@gl_k,150,179,0	script	#controlGH6	111,2,2,{
@@ -1799,15 +1534,6 @@ OnDisable:
 OnEnable:
 OnEnable:
 	hideoffnpc instance_npcname("Gerhard#ghinstance1");
 	hideoffnpc instance_npcname("Gerhard#ghinstance1");
 	end;
 	end;
-OnTalk1:
-	npctalk "Gerhard : Damn it! Run away! I can't withstand anymore!";
-	end;
-OnTalk2:
-	npctalk "Gerhard : Commandant... Come on, you need to run away from here... Ugh.";
-	end;
-OnTalk3:
-	npctalk "Gerhard : Even if you defile my body, I won't let you take my soul, Himmelmez!";
-	end;
 OnEffect1:
 OnEffect1:
 	specialeffect EF_BARRIER;
 	specialeffect EF_BARRIER;
 	end;
 	end;
@@ -1835,61 +1561,61 @@ OnEnable:
 	initnpctimer;
 	initnpctimer;
 	end;
 	end;
 OnTimer3000:
 OnTimer3000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk1";
+	npctalk "Himmelmez : Great~ I thought you wouldn't come near the end...", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer6000:
 OnTimer6000:
-	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk1";
+	npctalk "Gerhard : Damn it! Run away! I can't withstand anymore!", instance_npcname("Gerhard#ghinstance1");
 	end;
 	end;
 OnTimer9000:
 OnTimer9000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk1";
+	npctalk "Heinrich : Gerhard!", instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
 OnTimer12000:
 OnTimer12000:
-	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk2";
+	npctalk "Gerhard : Commandant... Come on, you need to run away from here... Ugh.", instance_npcname("Gerhard#ghinstance1");
 	end;
 	end;
 OnTimer15000:
 OnTimer15000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk2";
+	npctalk "Heinrich : What are you doing to my men, Himmelmez?!", instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
 OnTimer18000:
 OnTimer18000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk2";
+	npctalk "Himmelmez : Huhu, I have already found a piece of Ymir's Heart, Heinrich.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer21000:
 OnTimer21000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk3";
+	npctalk "Himmelmez : It would've been faster if there were no distractions.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer24000:
 OnTimer24000:
-	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk3";
+	npctalk "Gerhard : Even if you defile my body, I won't let you take my soul, Himmelmez!", instance_npcname("Gerhard#ghinstance1");
 	end;
 	end;
 OnTimer27000:
 OnTimer27000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk4";
+	npctalk "Himmelmez : What do you think? Making it look like an accidental disease infected the king and the people around...", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer30000:
 OnTimer30000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk3";
+	npctalk "Heinrich : Himmelmez! You don't need to make any more sacrifices!", instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
 OnTimer33000:
 OnTimer33000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk4";
+	npctalk "Heinrich : Let him go! I don't want one more sacrifice!", instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
 OnTimer36000:
 OnTimer36000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk5";
+	npctalk "Himmelmez : You want that?", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer39000:
 OnTimer39000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk6";
+	npctalk "Himmelmez : This one is your final blow, Heinrich.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer42000:
 OnTimer42000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk7";
+	npctalk "Himmelmez : It is said that stopping me requires a skillfull person.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer45000:
 OnTimer45000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk8";
+	npctalk "Himmelmez : Seems like a perfect scenario to make my new monster, Amdarias.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer48000:
 OnTimer48000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk5";
+	npctalk "Heinrich : I will not forgive you.", instance_npcname("Heinrich#ghinstance6");
 	end;
 	end;
 OnTimer51000:
 OnTimer51000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk9";
+	npctalk "Himmelmez : Booh~ I'm scared.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer54000:
 OnTimer54000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk10";
+	npctalk "Himmelmez : Anyway, it was nice talking to you. Maybe we'll have the chance to meet again in the next story.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer57000:
 OnTimer57000:
-	donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk11";
+	npctalk "Himmelmez : Well, make sure you will come back again.", instance_npcname("Himmelmez#ghinstance4");
 	end;
 	end;
 OnTimer60000:
 OnTimer60000:
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect1";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect1";
@@ -1904,14 +1630,14 @@ OnTimer66000:
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect2";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect2";
 	end;
 	end;
 OnTimer67000:
 OnTimer67000:
-	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk6";
+	npctalk "Heinrich : Just leave us alone, Himmelmez!!", instance_npcname("Heinrich#ghinstance6");
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
 	end;
 	end;
 OnTimer70000:
 OnTimer70000:
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect3";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect3";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
 	donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
 	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnDisable";
 	donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnDisable";
-	donpcevent instance_npcname("Varmunt#ghinstance5")+"::OnTalk1";
+	npctalk "Varmunt : What? This cannot be. We must prevent Amdarias's attacks!", instance_npcname("Varmunt#ghinstance5");
 	end;
 	end;
 OnTimer73000:
 OnTimer73000:
 	mapannounce instance_mapname("2@gl_k"), "Leads toward Gerhard's body.",bc_map,"0xFFFFFF";
 	mapannounce instance_mapname("2@gl_k"), "Leads toward Gerhard's body.",bc_map,"0xFFFFFF";
@@ -1945,7 +1671,7 @@ OnTimer80000:
 		next;
 		next;
 		mes "[Hugin]";
 		mes "[Hugin]";
 		mes "Varmunt, I have arbitrarily stopped time. And soon, the time gap will be gone.";
 		mes "Varmunt, I have arbitrarily stopped time. And soon, the time gap will be gone.";
-		specialeffect2 EF_BLIND,AREA;
+		specialeffect2 EF_BLIND;
 		soundeffect "_blind.wav",0;
 		soundeffect "_blind.wav",0;
 		next;
 		next;
 		mes "[Hugin]";
 		mes "[Hugin]";

+ 21 - 91
npc/re/instances/SaraMemory.txt

@@ -268,7 +268,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "Hi Daddy!";
 		mes "Hi Daddy!";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk01";
+		npctalk "Sweetheart you look so happy.", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Sweetheart you look so happy.";
 		mes "Sweetheart you look so happy.";
 		next;
 		next;
@@ -278,7 +278,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "You said you would come back soon! I waited for you and you lied!";
 		mes "You said you would come back soon! I waited for you and you lied!";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk02";
+		npctalk "Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.";
 		mes "Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.";
 		next;
 		next;
@@ -288,7 +288,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "I hate those old fogeys.";
 		mes "I hate those old fogeys.";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk03";
+		npctalk "Don't say that sweetheart... Who is this with you?", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Don't say that sweetheart... Who is this with you?";
 		mes "Don't say that sweetheart... Who is this with you?";
 		next;
 		next;
@@ -304,7 +304,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "Here you go daddy!";
 		mes "Here you go daddy!";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk04";
+		npctalk "Oh Sara, may I have them?", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Oh Sara, may I have them?";
 		mes "Oh Sara, may I have them?";
 		next;
 		next;
@@ -317,7 +317,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "^FF0000After being given the flowers the Doyen's mood seems to greatly improve.^000000";
 		mes "^FF0000After being given the flowers the Doyen's mood seems to greatly improve.^000000";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk05";
+		npctalk "Alright my princess, where should we go now?", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Alright my princess, where should we go now?";
 		mes "Alright my princess, where should we go now?";
 		next;
 		next;
@@ -327,7 +327,7 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mes "Oh daddy! Lets go to the top of that hill over there!";
 		mes "Oh daddy! Lets go to the top of that hill over there!";
 		next;
 		next;
 		cutin "sara_elder_irine1",2;
 		cutin "sara_elder_irine1",2;
-		donpcevent instance_npcname("Doyen Irene#01", instance_id())+"::OnTalk06";
+		npctalk "Hah! Ok, hold onto me tight!", instance_npcname("Doyen Irene#01", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Hah! Ok, hold onto me tight!";
 		mes "Hah! Ok, hold onto me tight!";
 		next;
 		next;
@@ -339,23 +339,23 @@ dali,139,118,4	script	Dimensional Device#sara	10007,{
 		mapannounce instance_mapname("1@sara"), "As they wander off you hear strange voices from around the corner...",bc_area,"0xffffff";
 		mapannounce instance_mapname("1@sara"), "As they wander off you hear strange voices from around the corner...",bc_area,"0xffffff";
 		mes "^FF0000As they wander off you hear strange voices from around the corner...^000000";
 		mes "^FF0000As they wander off you hear strange voices from around the corner...^000000";
 		next;
 		next;
-		donpcevent instance_npcname("Strange Old Man#01", instance_id())+"::OnTalk01";
+		npctalk "I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!", instance_npcname("Strange Old Man#01", instance_id());
 		mes "[Strange Old Man]";
 		mes "[Strange Old Man]";
 		mes "I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!";
 		mes "I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!";
 		next;
 		next;
-		donpcevent instance_npcname("Mysterious Old Man#02", instance_id())+"::OnTalk01";
+		npctalk "She was born under a bad sign and her mother isn't even one of us!", instance_npcname("Mysterious Old Man#02", instance_id());
 		mes "[Mysterious Old Man]";
 		mes "[Mysterious Old Man]";
 		mes "She was born under a bad sign and her mother isn't even one of us!";
 		mes "She was born under a bad sign and her mother isn't even one of us!";
 		next;
 		next;
-		donpcevent instance_npcname("Mysterious Old Man#02", instance_id())+"::OnTalk02";
+		npctalk "Someday she will cause blood to flow in our streets.", instance_npcname("Mysterious Old Man#02", instance_id());
 		mes "[Mysterious Old Man]";
 		mes "[Mysterious Old Man]";
 		mes "Someday she will cause blood to flow in our streets.";
 		mes "Someday she will cause blood to flow in our streets.";
 		next;
 		next;
-		donpcevent instance_npcname("Strange Old Man#01", instance_id())+"::OnTalk02";
+		npctalk "We have to do something before the Holy creatures select her. I asked 'HIM' to take care of it.", instance_npcname("Strange Old Man#01", instance_id());
 		mes "[Strange Old Man]";
 		mes "[Strange Old Man]";
 		mes "We have to do something before the Holy creatures select her. I asked 'HIM' to take care of it.";
 		mes "We have to do something before the Holy creatures select her. I asked 'HIM' to take care of it.";
 		next;
 		next;
-		donpcevent instance_npcname("Mysterious Old Man#02", instance_id())+"::OnTalk03";
+		npctalk "We will see... I look forward to hearing the bad news that has befallen her...", instance_npcname("Mysterious Old Man#02", instance_id());
 		mes "[Mysterious Old Man]";
 		mes "[Mysterious Old Man]";
 		mes "We will see... I look forward to hearing the bad news that has befallen her...";
 		mes "We will see... I look forward to hearing the bad news that has befallen her...";
 		next;
 		next;
@@ -385,25 +385,6 @@ OnDisable:
 1@sara,268,158,4	script	Doyen Irene#01	684,{
 1@sara,268,158,4	script	Doyen Irene#01	684,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "Sweetheart you look so happy.";
-	end;
-OnTalk02:
-	npctalk "Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.";
-	end;
-OnTalk03:
-	npctalk "Don't say that sweetheart... Who is this with you?";
-	end;
-OnTalk04:
-	npctalk "Oh Sara, may I have them?";
-	end;
-OnTalk05:
-	npctalk "Alright my princess, where should we go now?";
-	end;
-OnTalk06:
-	npctalk "Hah! Ok, hold onto me tight!";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Doyen Irene#01");
 	disablenpc instance_npcname("Doyen Irene#01");
@@ -416,13 +397,6 @@ OnEnable:
 1@sara,260,156,4	script	Strange Old Man#01	-1,{
 1@sara,260,156,4	script	Strange Old Man#01	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!";
-	end;
-OnTalk02:
-	npctalk "We have to do something before the Holy creatures select her. I asked 'HIM' to take care of it.";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Strange Old Man#01");
 	disablenpc instance_npcname("Strange Old Man#01");
@@ -435,16 +409,6 @@ OnEnable:
 1@sara,260,156,4	script	Mysterious Old Man#02	-1,{
 1@sara,260,156,4	script	Mysterious Old Man#02	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "She was born under a bad sign and her mother isn't even one of us!";
-	end;
-OnTalk02:
-	npctalk "Someday she will cause blood to flow in our streets.";
-	end;
-OnTalk03:
-	npctalk "We will see... I look forward to hearing the bad news that has befallen her...";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Mysterious Old Man#02");
 	disablenpc instance_npcname("Mysterious Old Man#02");
@@ -482,7 +446,7 @@ OnEnable:
 		mes "[Sara Irene]";
 		mes "[Sara Irene]";
 		mes "...";
 		mes "...";
 		next;
 		next;
-		donpcevent instance_npcname("Sara's Mother", instance_id())+"::OnTalk01";
+		npctalk "Sara...Ru-...away...", instance_npcname("Sara's Mother", instance_id());
 		mes "[Sara's Mother]";
 		mes "[Sara's Mother]";
 		mes "Sara...Ru-...away...";
 		mes "Sara...Ru-...away...";
 		next;
 		next;
@@ -498,7 +462,7 @@ OnEnable:
 		next;
 		next;
 		cutin "sara_momdie",255;
 		cutin "sara_momdie",255;
 		cutin "sara_elder_irine4",2;
 		cutin "sara_elder_irine4",2;
-		donpcevent instance_npcname("Doyen Irene#02", instance_id())+"::OnTalk01";
+		npctalk "Ahh Sara! I was just looking for you...", instance_npcname("Doyen Irene#02", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Ahh Sara! I was just looking for you...";
 		mes "Ahh Sara! I was just looking for you...";
 		next;
 		next;
@@ -509,7 +473,7 @@ OnEnable:
 		next;
 		next;
 		switch(select("Escape with Sara.")) {}
 		switch(select("Escape with Sara.")) {}
 		cutin "sara_elder_irine3",2;
 		cutin "sara_elder_irine3",2;
-		donpcevent instance_npcname("Doyen Irene#02", instance_id())+"::OnTalk02";
+		npctalk "Guards! GUARDS!! There is a murderer here! Catch him!", instance_npcname("Doyen Irene#02", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Guards! GUARDS!! There is a murderer here! Catch him!";
 		mes "Guards! GUARDS!! There is a murderer here! Catch him!";
 		next;
 		next;
@@ -560,10 +524,6 @@ OnEnable:
 1@sara,107,325,4	script	Sara's Mother	-1,{
 1@sara,107,325,4	script	Sara's Mother	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "Sara...Ru-...away...";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Sara's Mother");
 	disablenpc instance_npcname("Sara's Mother");
@@ -576,13 +536,6 @@ OnEnable:
 1@sara,107,325,4	script	Doyen Irene#02	-1,{
 1@sara,107,325,4	script	Doyen Irene#02	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "Ahh Sara! I was just looking for you...";
-	end;
-OnTalk02:
-	npctalk "Guards! GUARDS!! There is a murderer here! Catch him!";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Doyen Irene#02");
 	disablenpc instance_npcname("Doyen Irene#02");
@@ -600,7 +553,7 @@ OnEnable:
 		mes "Mommy!";
 		mes "Mommy!";
 		next;
 		next;
 		cutin "sara_elder_irine4",2;
 		cutin "sara_elder_irine4",2;
-		donpcevent instance_npcname("Doyen Irene#03", instance_id())+"::OnTalk01";
+		npctalk "Sara...", instance_npcname("Doyen Irene#03", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "Sara...";
 		mes "Sara...";
 		next;
 		next;
@@ -610,7 +563,7 @@ OnEnable:
 		mes "No!";
 		mes "No!";
 		next;
 		next;
 		cutin "sara_elder_irine4",2;
 		cutin "sara_elder_irine4",2;
-		donpcevent instance_npcname("Doyen Irene#03", instance_id())+"::OnTalk02";
+		npctalk "I have been looking for you Sara. Please come with daddy, it is very dangerous here!", instance_npcname("Doyen Irene#03", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "I have been looking for you Sara. Please come with daddy, it is very dangerous here!";
 		mes "I have been looking for you Sara. Please come with daddy, it is very dangerous here!";
 		next;
 		next;
@@ -619,7 +572,7 @@ OnEnable:
 		mes "I won't let you take Sara!";
 		mes "I won't let you take Sara!";
 		next;
 		next;
 		cutin "sara_elder_irine3",2;
 		cutin "sara_elder_irine3",2;
-		donpcevent instance_npcname("Doyen Irene#03", instance_id())+"::OnTalk03";
+		npctalk "The murderer is here! Guards! We will finish him once and for all!", instance_npcname("Doyen Irene#03", instance_id());
 		mes "[Doyen Irene]";
 		mes "[Doyen Irene]";
 		mes "The murderer is here! Guards! We will finish him once and for all!";
 		mes "The murderer is here! Guards! We will finish him once and for all!";
 		next;
 		next;
@@ -654,16 +607,6 @@ OnEnable:
 1@sara,152,233,4	script	Doyen Irene#03	-1,{
 1@sara,152,233,4	script	Doyen Irene#03	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "Sara...";
-	end;
-OnTalk02:
-	npctalk "I have been looking for you Sara. Please come with daddy, it is very dangerous here!";
-	end;
-OnTalk03:
-	npctalk "The murderer is here! Guards! We will finish him once and for all!";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("Doyen Irene#03");
 	disablenpc instance_npcname("Doyen Irene#03");
@@ -759,18 +702,18 @@ OnEnable:
 		mes "^FF0000As you are about to call out to Sara, a sudden blow knocks you down from behind.^000000";
 		mes "^FF0000As you are about to call out to Sara, a sudden blow knocks you down from behind.^000000";
 		next;
 		next;
 		cutin "sara_beholder",2;
 		cutin "sara_beholder",2;
-		donpcevent instance_npcname("?????#01", instance_id())+"::OnTalk01";
+		npctalk "The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.", instance_npcname("?????#01", instance_id());
 		mes "[?????]";
 		mes "[?????]";
 		mes "The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.";
 		mes "The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.";
 		next;
 		next;
-		donpcevent instance_npcname("?????#01", instance_id())+"::OnTalk02";
+		npctalk "You should go back to the time where you belong.", instance_npcname("?????#01", instance_id());
 		mes "[?????]";
 		mes "[?????]";
 		mes "You should go back to the time where you belong.";
 		mes "You should go back to the time where you belong.";
 		next;
 		next;
 		mapannounce instance_mapname("1@sara"), "As you fall to the ground, two dark figures approach Sara.",bc_area,"0xffffff";
 		mapannounce instance_mapname("1@sara"), "As you fall to the ground, two dark figures approach Sara.",bc_area,"0xffffff";
 		mes "^FF0000As you fall to the ground, two dark figures approach Sara.^000000";
 		mes "^FF0000As you fall to the ground, two dark figures approach Sara.^000000";
 		next;
 		next;
-		donpcevent instance_npcname("?????#01", instance_id())+"::OnTalk03";
+		npctalk "A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.", instance_npcname("?????#01", instance_id());
 		mes "[?????]";
 		mes "[?????]";
 		mes "A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.";
 		mes "A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.";
 		next;
 		next;
@@ -780,7 +723,7 @@ OnEnable:
 		mes "...";
 		mes "...";
 		next;
 		next;
 		cutin "sara_beholder",2;
 		cutin "sara_beholder",2;
-		donpcevent instance_npcname("?????#01", instance_id())+"::OnTalk04";
+		npctalk "Sara Irene, 'he' will make your dreams come true.", instance_npcname("?????#01", instance_id());
 		mes "[?????]";
 		mes "[?????]";
 		mes "Sara Irene, 'he' will make your dreams come true.";
 		mes "Sara Irene, 'he' will make your dreams come true.";
 		next;
 		next;
@@ -810,19 +753,6 @@ OnEnable:
 1@sara,39,142,4	script	?????#01	-1,{
 1@sara,39,142,4	script	?????#01	-1,{
 	end;
 	end;
 
 
-OnTalk01:
-	npctalk "The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.";
-	end;
-OnTalk02:
-	npctalk "You should go back to the time where you belong.";
-	end;
-OnTalk03:
-	npctalk "A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.";
-	end;
-OnTalk04:
-	npctalk "Sara Irene, 'he' will make your dreams come true.";
-	end;
-
 OnInstanceInit:
 OnInstanceInit:
 OnDisable:
 OnDisable:
 	disablenpc instance_npcname("?????#01");
 	disablenpc instance_npcname("?????#01");

+ 8 - 8
npc/re/instances/WolfchevLaboratory.txt

@@ -570,42 +570,42 @@ OnEnable2:
 
 
 OnTimer1000:
 OnTimer1000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#01";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#01";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#01";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#01";
 	end;
 	end;
 
 
 OnTimer2000:
 OnTimer2000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#02";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#02";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#02";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#02";
 	end;
 	end;
 
 
 OnTimer3000:
 OnTimer3000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#03";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#03";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#03";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#03";
 	end;
 	end;
 
 
 OnTimer4000:
 OnTimer4000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#04";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#04";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#04";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#04";
 	end;
 	end;
 
 
 OnTimer5000:
 OnTimer5000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#05";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#05";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#05";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#05";
 	end;
 	end;
 
 
 OnTimer6000:
 OnTimer6000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#06";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#06";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#06";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#06";
 	end;
 	end;
 
 
 OnTimer7000:
 OnTimer7000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#07";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#07";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#07";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#07";
 	end;
 	end;
 
 
 OnTimer8000:
 OnTimer8000:
 	specialeffect EF_SUI_EXPLOSION,AREA, "#08";
 	specialeffect EF_SUI_EXPLOSION,AREA, "#08";
-	specialeffect EF_BEGINASURA, "Human Guinea pig#08";
+	specialeffect EF_BEGINASURA, AREA, "Human Guinea pig#08";
 	stopnpctimer;
 	stopnpctimer;
 	end;
 	end;
 
 

+ 1 - 1
npc/re/jobs/3-1/archbishop.txt

@@ -1637,7 +1637,7 @@ OnEnable:
 
 
 job3_arch02,290,221,0	script	#arch_end_eff	139,5,5,{
 job3_arch02,290,221,0	script	#arch_end_eff	139,5,5,{
 OnTouch:
 OnTouch:
-	specialeffect EF_MAPPILLAR2,"#arch_end";
+	specialeffect EF_MAPPILLAR2,AREA,"#arch_end";
 	end;
 	end;
 }
 }
 
 

+ 1 - 1
npc/re/jobs/novice/academy.txt

@@ -3116,7 +3116,7 @@ iz_ac01,36,52,3	script	Odd Novice#ac	4_M_SIT_NOVICE,{
 			mes "How about it? Newfangled.";
 			mes "How about it? Newfangled.";
 			mes "Idling away too long,";
 			mes "Idling away too long,";
 			mes "All the skills learnt over your shoulder could be used.";
 			mes "All the skills learnt over your shoulder could be used.";
-			specialeffect EF_SIGHT, "Odd Novice#nk1";
+			specialeffect EF_SIGHT, AREA, "Odd Novice#nk1";
 			next;
 			next;
 			mes "[Odd Novice]";
 			mes "[Odd Novice]";
 			mes "Ugh, all my SP is gone...";
 			mes "Ugh, all my SP is gone...";

+ 58 - 0
sql-files/item_db_re.sql

@@ -8669,6 +8669,12 @@ REPLACE INTO `item_db_re` VALUES (15162,'Lounge_Suit','Lounge Suit',4,20,NULL,30
 REPLACE INTO `item_db_re` VALUES (15163,'Fictitious_Robe','Fictitious Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'skill "SA_SPELLBREAKER",1; .@i = BaseLevel; bonus bMatkRate,(.@i>=140)?(14):((.@i>=120)?(9):(5));',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15163,'Fictitious_Robe','Fictitious Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'skill "SA_SPELLBREAKER",1; .@i = BaseLevel; bonus bMatkRate,(.@i>=140)?(14):((.@i>=120)?(9):(5));',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15164,'Consultative_Robe','Consultative Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,getrefine()*3; bonus2 bSubEle,Ele_Fire,getrefine()*3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15164,'Consultative_Robe','Consultative Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,getrefine()*3; bonus2 bSubEle,Ele_Fire,getrefine()*3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15174,'Surfer_Swimsuit','Surfer Swimsuit',4,20,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,16,NULL,'40',1,NULL,'bonus bMaxHPrate,(getrefine()/3)+5; bonus bMaxSPrate,(getrefine()/3)+5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15174,'Surfer_Swimsuit','Surfer Swimsuit',4,20,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,16,NULL,'40',1,NULL,'bonus bMaxHPrate,(getrefine()/3)+5; bonus bMaxSPrate,(getrefine()/3)+5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15181,'Para_Team_Uniform100','Awakened Eden Group Uniform I',4,20,NULL,0,NULL,80,NULL,0,0xFFFFFFFF,63,2,16,NULL,'100',NULL,NULL,'bonus bAllStats,1; bonus bMaxHP,700; bonus bMaxSP,100; bonus bMdef,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15182,'Para_Team_Uniform115','Awakened Eden Group Uniform II',4,20,NULL,0,NULL,85,NULL,0,0xFFFFFFFF,63,2,16,NULL,'115',NULL,NULL,'bonus bAllStats,1; bonus bMaxHP,1100; bonus bMaxSP,120; bonus bMdef,11;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15183,'Para_Team_Uniform130','Awakened Eden Group Uniform III',4,20,NULL,0,NULL,90,NULL,0,0xFFFFFFFF,63,2,16,NULL,'130',NULL,NULL,'bonus bAllStats,2; bonus bMaxHP,1100; bonus bMaxSP,120; bonus bMdef,11;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15184,'Para_Team_Uniform145','Awakened Eden Group Uniform IV',4,20,NULL,0,NULL,100,NULL,0,0xFFFFFFFF,63,2,16,NULL,'145',NULL,NULL,'bonus bAllStats,2; bonus bMaxHP,1500; bonus bMaxSP,150; bonus bMdef,15;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15185,'Para_Team_Uniform160','Awakened Eden Group Uniform V',4,20,NULL,0,NULL,100,NULL,0,0xFFFFFFFF,63,2,16,NULL,'160',NULL,NULL,'bonus bAllStats,2; bonus bMaxHP,1500; bonus bMaxSP,150; bonus bMdef,15; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15186,'Kafra_Uniform','Kafra Uniform',4,20,NULL,500,NULL,40,NULL,1,0xFFFFFFFF,63,2,16,NULL,'1',1,NULL,'bonus2 bExpAddClass,Class_All,5; bonus2 bDropAddClass,Class_All,5; .@r = getrefine(); bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; bonus bMaxHPrate,(3*(.@r>=7)+5*(.@r>=9)); bonus bMaxSPrate,(3*(.@r>=7)+5*(.@r>=9)); if(.@r>=12){ bonus bHPrecovRate,100; bonus bSPrecovRate,100; }',NULL,NULL);
 #===================================================================
 #===================================================================
 # More Maces
 # More Maces
 #===================================================================
 #===================================================================
@@ -9884,7 +9890,10 @@ REPLACE INTO `item_db_re` VALUES (19157,'Drooping_Rebellion_','Drooping Rebellio
 REPLACE INTO `item_db_re` VALUES (19158,'C_GeminiS58_Eyes_Blue','Costume GeminiS58 Eyes Blue',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,2048,NULL,'0',0,1456,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19158,'C_GeminiS58_Eyes_Blue','Costume GeminiS58 Eyes Blue',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,2048,NULL,'0',0,1456,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19159,'Barrel_Helm','Barrel Helm',4,20,NULL,420,NULL,59,NULL,1,0xFFFFFFFF,63,2,769,NULL,'60',1,1498,'bonus bVit,5; bonus bHPrecovRate,-10; .@r = getrefine(); if (.@r >= 7) { bonus bDef,100; skill "CR_AUTOGUARD",1; } if (.@r >= 8) { bonus2 bSubRace,RC_DemiHuman,10; bonus2 bSubRace,RC_Player,10; if(BaseJob==Job_SuperNovice) { skill "CR_AUTOGUARD",5; } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19159,'Barrel_Helm','Barrel Helm',4,20,NULL,420,NULL,59,NULL,1,0xFFFFFFFF,63,2,769,NULL,'60',1,1498,'bonus bVit,5; bonus bHPrecovRate,-10; .@r = getrefine(); if (.@r >= 7) { bonus bDef,100; skill "CR_AUTOGUARD",1; } if (.@r >= 8) { bonus2 bSubRace,RC_DemiHuman,10; bonus2 bSubRace,RC_Player,10; if(BaseJob==Job_SuperNovice) { skill "CR_AUTOGUARD",5; } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19162,'Scuba_Mask_','Scuba Mask',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,512,NULL,'40',1,400,'bonus bBaseAtk,5; bonus bMatk,5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19162,'Scuba_Mask_','Scuba Mask',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,512,NULL,'40',1,400,'bonus bBaseAtk,5; bonus bMatk,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (19164,'Para_Team_Hat100','Awakened Eden Group Hat I',4,20,NULL,0,NULL,10,NULL,1,0xFFFFFFFF,63,2,256,NULL,'100',1,1529,'autobonus "{ bonus bBaseAtk,15; }",70,5000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,15; }",50,5000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }"; .@r = getrefine(); if(.@r >= 7){ bonus bAtk,10; bonus bMatk,10; if(.@r >= 9){ bonus bAllStats,1; if(.@r >= 12){ bonus2 bRegenPercentSP,1,10000; } } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (19165,'Para_Team_Hat160','Awakened Eden Group Hat II',4,20,NULL,0,NULL,10,NULL,1,0xFFFFFFFF,63,2,256,NULL,'160',1,1530,'autobonus "{ bonus bBaseAtk,30; }",70,5000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; autobonus "{ bonus bMatk,30; }",50,5000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }"; .@r = getrefine(); if(.@r >= 7){ bonus bAtk,15; bonus bMatk,15; if(.@r >= 9){ bonus bAllStats,2; if(.@r >= 12){ bonus2 bRegenPercentHP,2,10000; bonus2 bRegenPercentSP,1,10000; } } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19166,'RO_Celebration_Hat','RO Celebration Hat',4,20,NULL,140,NULL,14,NULL,1,0xFFFFFFFF,63,2,256,NULL,'14',1,1541,'bonus bMaxSP,140; bonus2 bSPRegenRate,6,4000;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (19166,'RO_Celebration_Hat','RO Celebration Hat',4,20,NULL,140,NULL,14,NULL,1,0xFFFFFFFF,63,2,256,NULL,'14',1,1541,'bonus bMaxSP,140; bonus2 bSPRegenRate,6,4000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (19168,'Band_Of_Kafra_','Kafra Staff Headband',4,20,NULL,500,NULL,0,NULL,1,0xFFFFFFFF,63,2,256,NULL,NULL,1,106,'bonus2 bSubClass,Class_All,5; .@r = getrefine()*10; bonus2 bAddMonsterDropItem,23177,10+.@r; bonus2 bAddMonsterDropItem,7059,10+.@r; bonus2 bAddMonsterDropItem,7060,10+.@r;',NULL,NULL);
 #===================================================================
 #===================================================================
 # Costume System
 # Costume System
 #===================================================================
 #===================================================================
@@ -10769,6 +10778,9 @@ REPLACE INTO `item_db_re` VALUES (20790,'Elegant_Doram_Manteau','Elegant Doram M
 REPLACE INTO `item_db_re` VALUES (20797,'Etran_Shirt','Etran Shirt',4,0,NULL,150,NULL,NULL,NULL,1,0xFFFFFFFF,63,2,4,1,'1',1,NULL,'bonus bMdef,10; bonus bMaxHPrate,2; .@r = getrefine(); if (.@r >= 6) bonus bMaxHPrate,4; if (.@r >= 7) bonus bMaxHPrate,6; if (.@r >= 8) bonus bMaxHPrate,8; if (.@r >= 9) bonus bNoKnockback,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (20797,'Etran_Shirt','Etran Shirt',4,0,NULL,150,NULL,NULL,NULL,1,0xFFFFFFFF,63,2,4,1,'1',1,NULL,'bonus bMdef,10; bonus bMaxHPrate,2; .@r = getrefine(); if (.@r >= 6) bonus bMaxHPrate,4; if (.@r >= 7) bonus bMaxHPrate,6; if (.@r >= 8) bonus bMaxHPrate,8; if (.@r >= 9) bonus bNoKnockback,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (20798,'C_Grim_Reaper_Protection','Costume Grim Reaper Protection',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,4096,NULL,'1',0,1450,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (20798,'C_Grim_Reaper_Protection','Costume Grim Reaper Protection',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,4096,NULL,'1',0,1450,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (20819,'Oxygen_Bottle','Oxygen Bottle',4,0,NULL,500,NULL,0,NULL,1,0xFFFFFFFF,63,2,4,NULL,'40',0,0,'bonus bFlee,12+getrefine(); bonus bHit,getrefine();',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (20819,'Oxygen_Bottle','Oxygen Bottle',4,0,NULL,500,NULL,0,NULL,1,0xFFFFFFFF,63,2,4,NULL,'40',0,0,'bonus bFlee,12+getrefine(); bonus bHit,getrefine();',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (20823,'Para_Team_Manteau100','Awakened Eden Group Manteau I',4,0,NULL,0,NULL,20,NULL,0,0xFFFFFFFF,63,2,4,NULL,'100',1,0,'bonus2 bSubEle,Ele_Neutral,10; bonus bFlee,12; .@r = getrefine(); if(.@r >= 7){ bonus bMaxHP,500; bonus bFlee2,2; if(.@r >= 9){ bonus bMaxHP,500; bonus2 bSubEle,Ele_All,10; bonus2 bSubEle,Ele_Neutral,-10; } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (20824,'Para_Team_Manteau130','Awakened Eden Group Manteau II',4,0,NULL,0,NULL,25,NULL,0,0xFFFFFFFF,63,2,4,NULL,'130',1,0,'bonus2 bSubEle,Ele_Neutral,10; bonus bFlee,12; bonus bMaxHP,500; bonus bFlee2,2; .@r = getrefine(); if(.@r >= 7){ bonus bMaxHP,500; bonus2 bSubEle,Ele_All,10; bonus2 bSubEle,Ele_Neutral,-10; if(.@r >= 9){ bonus2 bSubEle,Ele_Neutral,5; } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (20825,'Para_Team_Manteau160','Awakened Eden Group Manteau III',4,0,NULL,0,NULL,30,NULL,0,0xFFFFFFFF,63,2,4,NULL,'160',1,0,'bonus2 bSubEle,Ele_All,10; bonus bFlee,12; bonus bMaxHP,1000; bonus bFlee2,2; .@r = getrefine(); if(.@r >= 7){ bonus2 bSubEle,Ele_Neutral,5; if(.@r >= 9){ skill "BS_GREED",1; } }',NULL,NULL);
 #===================================================================
 #===================================================================
 # More 2-Handed Swords
 # More 2-Handed Swords
 #===================================================================
 #===================================================================
@@ -10832,6 +10844,11 @@ REPLACE INTO `item_db_re` VALUES (22083,'Private_Doram_Shoes','Private Doram Sho
 REPLACE INTO `item_db_re` VALUES (22084,'Luxury_Doram_Shoes','Luxury Doram Shoes',4,20,NULL,600,NULL,30,NULL,1,0x80000000,7,2,64,NULL,'140',1,NULL,'bonus bMaxHP,300; bonus bMaxSP,100; .@r = getrefine()/3; bonus bHPrecovRate,20*.@r; bonus bSPrecovRate,20*.@r;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22084,'Luxury_Doram_Shoes','Luxury Doram Shoes',4,20,NULL,600,NULL,30,NULL,1,0x80000000,7,2,64,NULL,'140',1,NULL,'bonus bMaxHP,300; bonus bMaxSP,100; .@r = getrefine()/3; bonus bHPrecovRate,20*.@r; bonus bSPrecovRate,20*.@r;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22085,'Elegant_Doram_Shoes','Elegant Doram Shoes',4,20,NULL,700,NULL,35,NULL,1,0x80000000,7,2,64,NULL,'175',1,NULL,'bonus bMaxHPrate,10; bonus bMaxSPrate,5; .@r = getrefine()/2; bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; if(.@r >= 4) bonus2 bSkillUseSP,"SU_LOPE",5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22085,'Elegant_Doram_Shoes','Elegant Doram Shoes',4,20,NULL,700,NULL,35,NULL,1,0x80000000,7,2,64,NULL,'175',1,NULL,'bonus bMaxHPrate,10; bonus bMaxSPrate,5; .@r = getrefine()/2; bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; if(.@r >= 4) bonus2 bSkillUseSP,"SU_LOPE",5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22103,'Excelion_Leg','Excelion Leg',4,0,NULL,500,NULL,13,NULL,0,0xFFFFFFFF,63,2,64,1,'100',1,NULL,'.@r = getrefine(); bonus bMaxHP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; bonus bMaxSP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22103,'Excelion_Leg','Excelion Leg',4,0,NULL,500,NULL,13,NULL,0,0xFFFFFFFF,63,2,64,1,'100',1,NULL,'.@r = getrefine(); bonus bMaxHP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3; bonus bMaxSP,5+((BaseLevel > 129) ? 4 : 0)+(.@r/3)*3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (22122,'Para_Team_Boots100','Awakened Eden Group Boots I',4,0,NULL,0,NULL,22,NULL,0,0xFFFFFFFF,63,2,64,NULL,'100',1,NULL,'bonus bAllStats,1; bonus bHPrecovRate,30; bonus bSPrecovRate,14;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (22123,'Para_Team_Boots115','Awakened Eden Group Boots II',4,0,NULL,0,NULL,25,NULL,0,0xFFFFFFFF,63,2,64,NULL,'115',1,NULL,'bonus bAllStats,1; bonus bHPrecovRate,36; bonus bSPrecovRate,18;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (22124,'Para_Team_Boots130','Awakened Eden Group Boots III',4,0,NULL,0,NULL,27,NULL,0,0xFFFFFFFF,63,2,64,NULL,'130',1,NULL,'bonus bAllStats,2; bonus bHPrecovRate,36; bonus bSPrecovRate,18;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (22125,'Para_Team_Boots145','Awakened Eden Group Boots IV',4,0,NULL,0,NULL,30,NULL,0,0xFFFFFFFF,63,2,64,NULL,'145',1,NULL,'bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (22126,'Para_Team_Boots160','Awakened Eden Group Boots V',4,0,NULL,0,NULL,30,NULL,0,0xFFFFFFFF,63,2,64,NULL,'160',1,NULL,'bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20; bonus bUseSPrate,-5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22508,'Para_Team_Mark_','Eden Group Mark',11,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'unitskilluseid getcharid(3),"AL_TELEPORT",3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22508,'Para_Team_Mark_','Eden Group Mark',11,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'unitskilluseid getcharid(3),"AL_TELEPORT",3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22507,'Worn-Out-Scroll','Worn-Out-Scroll',3,10,NULL,10,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22507,'Worn-Out-Scroll','Worn-Out-Scroll',3,10,NULL,10,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22510,'King_Wolf_Scroll','King Wolf Scroll',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'/*TODO, confirm the rates*/ getitem callfunc("F_Rand",6635,19598,5658,6238,6239),1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22510,'King_Wolf_Scroll','King Wolf Scroll',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'/*TODO, confirm the rates*/ getitem callfunc("F_Rand",6635,19598,5658,6238,6239),1;',NULL,NULL);
@@ -11047,6 +11064,12 @@ REPLACE INTO `item_db_re` VALUES (22899,'Parchment_City','Parchment City',2,20,N
 REPLACE INTO `item_db_re` VALUES (22901,'Question_Old_Blue_Box','Question Old Blue Box',2,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'/*No info yet*/',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22901,'Question_Old_Blue_Box','Question Old Blue Box',2,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'/*No info yet*/',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22902,'Sealed_Card_Album_Scroll_II','Sealed Card Album Scroll II',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22902,'Sealed_Card_Album_Scroll_II','Sealed Card Album Scroll II',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22985,'Basil','Basil',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'bonus_script "{ bonus2 bSPRegenRate,5,10000; }",180,1,0,SI_DORAM_BUF_02;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (22985,'Basil','Basil',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'bonus_script "{ bonus2 bSPRegenRate,5,10000; }",180,1,0,SI_DORAM_BUF_02;',NULL,NULL);
+#
+REPLACE INTO `item_db_re` VALUES (23177,'Kafra_Card_','Kafra Card',2,2,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'callfunc "F_CashStore";',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23191,'Varetyr_Spear_Scroll_1_5','Level 5 Varetyr Spear',11,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemskill "SO_VARETYR_SPEAR",5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23192,'Diamond_Dust_Scroll_1_5','Level 5 Diamond Dust',11,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemskill "SO_DIAMONDDUST",5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23193,'Crimson_Rock_Scroll_1_5','Level 5 Crimson Rock',11,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemskill "WL_CRIMSONROCK",5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23194,'Sienna_Execrate_Scroll_1_5','Level 5 Sienna Execrate',11,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemskill "WL_SIENNAEXECRATE",5;',NULL,NULL);
 #===================================================================
 #===================================================================
 # Shadow Equipments
 # Shadow Equipments
 #===================================================================
 #===================================================================
@@ -11305,6 +11328,9 @@ REPLACE INTO `item_db_re` VALUES (25147,'Well_Eatenl_Rabbit_Doll','Well Eatenl R
 REPLACE INTO `item_db_re` VALUES (25148,'Cute_Starved_Demon_Doll','Cute Starved Demon Doll',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25148,'Cute_Starved_Demon_Doll','Cute Starved Demon Doll',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25149,'Doll_With_Warm_Scarf','Doll With Warm Scarf',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25149,'Doll_With_Warm_Scarf','Doll With Warm Scarf',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25150,'Hugging_Alice_Pilow','Hugging Alice Pilow',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25150,'Hugging_Alice_Pilow','Hugging Alice Pilow',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25223,'Para_Team_Coin','Eden Group Coin',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25238,'New_Normal_Lubricant','New Normal Lubricant',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25239,'New_Advanced_Lubricant','New Advanced Lubricant',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 #
 #
 REPLACE INTO `item_db_re` VALUES (26100,'Paradise_Foxtail_Staff_II','Eden Group Foxtail Staff II',5,20,NULL,0,'135:165',NULL,1,0,0x80000000,7,2,2,2,'40',0,10,'bonus bDex,4; bonus bInt,4; bonus bLongAtkRate,6;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26100,'Paradise_Foxtail_Staff_II','Eden Group Foxtail Staff II',5,20,NULL,0,'135:165',NULL,1,0,0x80000000,7,2,2,2,'40',0,10,'bonus bDex,4; bonus bInt,4; bonus bLongAtkRate,6;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26101,'Paradise_Foxtail_Staff_III','Eden Group Foxtail Staff III',5,20,NULL,0,'150:195',NULL,1,0,0x80000000,7,2,2,3,'60',0,10,'bonus bDex,5; bonus bInt,5; bonus bLongAtkRate,7;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26101,'Paradise_Foxtail_Staff_III','Eden Group Foxtail Staff III',5,20,NULL,0,'150:195',NULL,1,0,0x80000000,7,2,2,3,'60',0,10,'bonus bDex,5; bonus bInt,5; bonus bLongAtkRate,7;',NULL,NULL);
@@ -11379,6 +11405,37 @@ REPLACE INTO `item_db_re` VALUES (28421,'Greater_Rabbit_Talisman','Greater Rabbi
 REPLACE INTO `item_db_re` VALUES (28422,'Shiny_Branch_Talisman','Shiny Branch Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28422,'Shiny_Branch_Talisman','Shiny Branch Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28423,'Fresh_Tuna_Talisman','Fresh Tuna Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28423,'Fresh_Tuna_Talisman','Fresh Tuna Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28424,'Chubby_Worm_Talisman','Chubby Worm Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28424,'Chubby_Worm_Talisman','Chubby Worm Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28443,'Para_Team_Str_Ring100','Awakened Eden Group Ring of Strength I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bAtkRate,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28444,'Para_Team_Str_Necklace100','Awakened Eden Group Necklace of Strength I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bStr,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28445,'Para_Team_Str_Ring115','Awakened Eden Group Ring of Strength II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bAtkRate,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28446,'Para_Team_Str_Necklace115','Awakened Eden Group Necklace of Strength II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bStr,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28447,'Para_Team_Str_Ring130','Awakened Eden Group Ring of Strength III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bAtkRate,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28448,'Para_Team_Str_Necklace130','Awakened Eden Group Necklace of Strength III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bStr,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28449,'Para_Team_Str_Ring145','Awakened Eden Group Ring of Strength IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28450,'Para_Team_Str_Necklace145','Awakened Eden Group Necklace of Strength IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bStr,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28451,'Para_Team_Str_Ring160','Awakened Eden Group Ring of Strength V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bAtkRate,5; skill "AL_HEAL",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28452,'Para_Team_Str_Necklace160','Awakened Eden Group Necklace of Strength V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bStr,4; skill "AL_TELEPORT",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28453,'Para_Team_Magic_Ring100','Awakened Eden Group Ring of Magic I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bMatkRate,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28454,'Para_Team_Magic_Necklace100','Awakened Eden Group Necklace of Magic I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bInt,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28455,'Para_Team_Magic_Ring115','Awakened Eden Group Ring of Magic II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bMatkRate,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28456,'Para_Team_Magic_Necklace115','Awakened Eden Group Necklace of Magic II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bInt,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28457,'Para_Team_Magic_Ring130','Awakened Eden Group Ring of Magic III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bMatkRate,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28458,'Para_Team_Magic_Necklace130','Awakened Eden Group Necklace of Magic III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bInt,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28459,'Para_Team_Magic_Ring145','Awakened Eden Group Ring of Magic IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bMatkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28460,'Para_Team_Magic_Necklace145','Awakened Eden Group Necklace of Magic IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bInt,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28461,'Para_Team_Magic_Ring160','Awakened Eden Group Ring of Magic V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bMatkRate,5; skill "AL_HEAL",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28462,'Para_Team_Magic_Necklace160','Awakened Eden Group Necklace of Magic V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bInt,4; skill "AL_TELEPORT",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28463,'Para_Team_Agi_Ring100','Awakened Eden Group Ring of Agility I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bLongAtkRate,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28464,'Para_Team_Agi_Necklace100','Awakened Eden Group Necklace of Agility I',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'100',NULL,NULL,'bonus bDex,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28465,'Para_Team_Agi_Ring115','Awakened Eden Group Ring of Agility II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bLongAtkRate,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28466,'Para_Team_Agi_Necklace115','Awakened Eden Group Necklace of Agility II',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'115',NULL,NULL,'bonus bDex,2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28467,'Para_Team_Agi_Ring130','Awakened Eden Group Ring of Agility III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bLongAtkRate,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28468,'Para_Team_Agi_Necklace130','Awakened Eden Group Necklace of Agility III',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'130',NULL,NULL,'bonus bDex,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28469,'Para_Team_Agi_Ring145','Awakened Eden Group Ring of Agility IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bLongAtkRate,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28470,'Para_Team_Agi_Necklace145','Awakened Eden Group Necklace of Agility IV',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'145',NULL,NULL,'bonus bDex,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28471,'Para_Team_Agi_Ring160','Awakened Eden Group Ring of Agility V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bLongAtkRate,4; skill "AL_HEAL",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28472,'Para_Team_Agi_Necklace160','Awakened Eden Group Necklace of Agility V',4,0,NULL,0,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'160',NULL,NULL,'bonus bDex,4; skill "AL_TELEPORT",1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28483,'Royal_Guardian_Ring','Royal Guardian Ring',4,0,NULL,10,NULL,1,NULL,1,0xFFFFFFFF,63,2,136,NULL,'99',NULL,NULL,'.@b = min(BaseLevel/25,7); bonus bMaxHPrate,.@b; bonus bMaxSPrate,.@b;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28600,'Blue_Book','Blue Book',5,10,NULL,500,'160',NULL,1,1,0x00000100,56,2,2,3,'100',1,15,'bonus bAgi,5; bonus bDex,5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28600,'Blue_Book','Blue Book',5,10,NULL,500,'160',NULL,1,1,0x00000100,56,2,2,3,'100',1,15,'bonus bAgi,5; bonus bDex,5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28601,'Ru_Gold_Book','Ru Gold Book',5,0,NULL,500,'160',NULL,1,2,0x00000008,63,2,2,3,'120',1,15,'bonus bVit,8; bonus bInt,8;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28601,'Ru_Gold_Book','Ru Gold Book',5,0,NULL,500,'160',NULL,1,2,0x00000008,63,2,2,3,'120',1,15,'bonus bVit,8; bonus bInt,8;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28602,'Demon_Hunting_Bible','Demon Hunting Bible',5,0,NULL,500,'30:170',NULL,1,2,0x00000008,63,2,2,3,'110',1,15,'bonus bInt,2; bonus bDex,2; .@b = readparam(bInt); bonus2 bSkillAtk,"PR_MAGNUS",30+min(.@b,120);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28602,'Demon_Hunting_Bible','Demon Hunting Bible',5,0,NULL,500,'30:170',NULL,1,2,0x00000008,63,2,2,3,'110',1,15,'bonus bInt,2; bonus bDex,2; .@b = readparam(bInt); bonus2 bSkillAtk,"PR_MAGNUS",30+min(.@b,120);',NULL,NULL);
@@ -11535,6 +11592,7 @@ REPLACE INTO `item_db_re` VALUES (31087,'C_Dwarf_Beard','Costume Dwarf Beard',4,
 REPLACE INTO `item_db_re` VALUES (31088,'C_Mad_Hatter','Costume Mad Hatter',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,1421,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31088,'C_Mad_Hatter','Costume Mad Hatter',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,1421,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31089,'C_Exploding_Crimson_Flame','Costume Exploding Crimson Flame',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,2048,NULL,'1',0,1500,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31089,'C_Exploding_Crimson_Flame','Costume Exploding Crimson Flame',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,2048,NULL,'1',0,1500,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31090,'C_Angelring_Hat','Costume Angelring Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,348,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31090,'C_Angelring_Hat','Costume Angelring Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,348,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (31092,'C_Rabbit_Ribbon_Hat','Costume Bunny Ribbon Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,845,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31093,'C_Under_Lamp','Costume Under Lamp',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,4096,NULL,'1',0,1531,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31093,'C_Under_Lamp','Costume Under Lamp',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,4096,NULL,'1',0,1531,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31105,'C_RO_Celebration_Hat','Costume RO Celebration Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,1541,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (31105,'C_RO_Celebration_Hat','Costume RO Celebration Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,1541,NULL,NULL,NULL);
 
 

+ 19 - 1
sql-files/mob_db_re.sql

@@ -2878,6 +2878,24 @@ REPLACE INTO `mob_db_re` VALUES (3246,'V_B_TRENTINI','Wanderer Trentini','Wander
 #
 #
 #3656,B_THE_PAPER
 #3656,B_THE_PAPER
 #3657,B_THE_PAPER2
 #3657,B_THE_PAPER2
-#
+#3658,MD_LICH_LORD_100
+#3659,MD_LICH_LORD_160
+#3660,MD_NIGHTMARE_100
+#3661,MD_NIGHTMARE_160
+#3662,MD_JAKK_100
+#3663,MD_JAKK_160
+#3664,MD_GHOUL_100
+#3665,MD_GHOUL_160
+#3666,MD_DRAINLIAR_100
+#3667,MD_DRAINLIAR_160
 #3668,B_KIEL_
 #3668,B_KIEL_
+#3721,QE_PORING
+#3722,QE_POPORING
+#3723,QE_DROPS
+#3724,QE_LUNATIC
+#3725,QE_WILOW
+#3726,QE_PICKY
+#3727,QE_PICKY_
+#3728,QE_ZOMBIE
+#3729,QE_POISON_SPORE
 
 

+ 1 - 1
src/map/map.h

@@ -469,7 +469,7 @@ enum _sp {
 	SP_HP_VANISH_RACE_RATE, SP_SP_VANISH_RACE_RATE, SP_ABSORB_DMG_MAXHP, SP_SUB_SKILL, SP_SUBDEF_ELE, // 2074-2078
 	SP_HP_VANISH_RACE_RATE, SP_SP_VANISH_RACE_RATE, SP_ABSORB_DMG_MAXHP, SP_SUB_SKILL, SP_SUBDEF_ELE, // 2074-2078
 	SP_STATE_NORECOVER_RACE, SP_CRITICAL_RANGEATK, SP_MAGIC_ADDRACE2, SP_IGNORE_MDEF_RACE2_RATE, // 2079-2082
 	SP_STATE_NORECOVER_RACE, SP_CRITICAL_RANGEATK, SP_MAGIC_ADDRACE2, SP_IGNORE_MDEF_RACE2_RATE, // 2079-2082
 	SP_WEAPON_ATK_RATE, SP_WEAPON_MATK_RATE, SP_DROP_ADDRACE, SP_DROP_ADDCLASS, SP_NO_MADO_FUEL, // 2083-2087
 	SP_WEAPON_ATK_RATE, SP_WEAPON_MATK_RATE, SP_DROP_ADDRACE, SP_DROP_ADDCLASS, SP_NO_MADO_FUEL, // 2083-2087
-	SP_IGNORE_DEF_CLASS_RATE, //2088
+	SP_IGNORE_DEF_CLASS_RATE, SP_REGEN_PERCENT_HP, SP_REGEN_PERCENT_SP, //2088-2091
 };
 };
 
 
 enum _look {
 enum _look {

+ 28 - 0
src/map/pc.c

@@ -3413,6 +3413,18 @@ void pc_bonus2(struct map_session_data *sd,int type,int type2,int val)
 			sd->hp_regen.rate = val;
 			sd->hp_regen.rate = val;
 		}
 		}
 		break;
 		break;
+	case SP_REGEN_PERCENT_HP: // bonus2 bRegenPercentHP,n,t;
+		if (sd->state.lr_flag != 2) {
+			sd->percent_hp_regen.value = type2;
+			sd->percent_hp_regen.rate = val;
+		}
+		break;
+	case SP_REGEN_PERCENT_SP: // bonus2 bRegenPercentSP,n,t;
+		if (sd->state.lr_flag != 2) {
+			sd->percent_sp_regen.value = type2;
+			sd->percent_sp_regen.rate = val;
+		}
+		break;
 	case SP_ADDRACE2: // bonus2 bAddRace2,mr,x;
 	case SP_ADDRACE2: // bonus2 bAddRace2,mr,x;
 		PC_BONUS_CHK_RACE2(type2,SP_ADDRACE2);
 		PC_BONUS_CHK_RACE2(type2,SP_ADDRACE2);
 		if(sd->state.lr_flag != 2)
 		if(sd->state.lr_flag != 2)
@@ -10301,6 +10313,22 @@ void pc_regen (struct map_session_data *sd, unsigned int diff_tick)
 		}
 		}
 	}
 	}
 
 
+	if (sd->percent_hp_regen.value) {
+		sd->percent_hp_regen.tick += diff_tick;
+		while (sd->percent_hp_regen.tick >= sd->percent_hp_regen.rate) {
+			hp += (sd->percent_hp_regen.value * sd->status.max_hp);
+			sd->percent_hp_regen.tick -= sd->percent_hp_regen.rate;
+		}
+	}
+
+	if (sd->percent_sp_regen.value) {
+		sd->percent_sp_regen.tick += diff_tick;
+		while (sd->percent_sp_regen.tick >= sd->percent_sp_regen.rate) {
+			sp += (sd->percent_sp_regen.value * sd->status.max_sp);
+			sd->percent_sp_regen.tick -= sd->percent_sp_regen.rate;
+		}
+	}
+
 	if (hp > 0 || sp > 0)
 	if (hp > 0 || sp > 0)
 		status_heal(&sd->bl, hp, sp, 0);
 		status_heal(&sd->bl, hp, sp, 0);
 }
 }

+ 1 - 1
src/map/pc.h

@@ -396,7 +396,7 @@ struct map_session_data {
 		short value;
 		short value;
 		int rate;
 		int rate;
 		int tick;
 		int tick;
-	} hp_loss, sp_loss, hp_regen, sp_regen;
+	} hp_loss, sp_loss, hp_regen, sp_regen, percent_hp_regen, percent_sp_regen;
 	struct {
 	struct {
 		short class_, rate;
 		short class_, rate;
 	}	add_def[MAX_PC_BONUS], add_mdef[MAX_PC_BONUS], add_mdmg[MAX_PC_BONUS];
 	}	add_def[MAX_PC_BONUS], add_mdef[MAX_PC_BONUS], add_mdmg[MAX_PC_BONUS];

+ 2 - 0
src/map/script_constants.h

@@ -664,6 +664,8 @@
 	script_set_constant("bDropAddClass", SP_DROP_ADDCLASS, false);
 	script_set_constant("bDropAddClass", SP_DROP_ADDCLASS, false);
 	script_set_constant("bNoMadoFuel", SP_NO_MADO_FUEL, false);
 	script_set_constant("bNoMadoFuel", SP_NO_MADO_FUEL, false);
 	script_set_constant("bIgnoreDefClassRate", SP_IGNORE_DEF_CLASS_RATE, false);
 	script_set_constant("bIgnoreDefClassRate", SP_IGNORE_DEF_CLASS_RATE, false);
+	script_set_constant("bRegenPercentHP", SP_REGEN_PERCENT_HP, false);
+	script_set_constant("bRegenPercentSP", SP_REGEN_PERCENT_SP, false);
 
 
 	/* equip indices */
 	/* equip indices */
 	export_constant(EQI_HEAD_TOP);
 	export_constant(EQI_HEAD_TOP);

+ 22 - 0
src/map/skill.h

@@ -1318,6 +1318,28 @@ enum e_skill {
 	NPC_REVERBERATION,
 	NPC_REVERBERATION,
 	NPC_REVERBERATION_ATK,
 	NPC_REVERBERATION_ATK,
 	NPC_LEX_AETERNA,
 	NPC_LEX_AETERNA,
+	NPC_ARROWSTORM,
+	NPC_CHEAL,
+	NPC_SR_CURSEDCIRCLE,
+	NPC_DRAGONBREATH,
+	NPC_FATALMENACE,
+	NPC_MAGMA_ERUPTION,
+	NPC_MAGMA_ERUPTION_DOTDAMAGE,
+	NPC_MANDRAGORA,
+	NPC_PSYCHIC_WAVE,
+	NPC_RAYOFGENESIS,
+	NPC_VENOMIMPRESS,
+	NPC_CLOUD_KILL,
+	NPC_IGNITIONBREAK,
+	NPC_PHANTOMTHRUST,
+	NPC_POISON_BUSTER,
+	NPC_HALLUCINATIONWALK,
+	NPC_ELECTRICWALK,
+	NPC_FIREWALK,
+	NPC_WIDEDISPEL,
+	NPC_LEASH,
+	NPC_WIDELEASH,
+	NPC_WIDECRITICALWOUND,
 
 
 	KN_CHARGEATK = 1001,
 	KN_CHARGEATK = 1001,
 	CR_SHRINK,
 	CR_SHRINK,