3rd Class 2011 Post Balance Update

* Contains remaining formula updates for 3rd class skills.
* There are a few bug fixes and corrections to broken skills.
This commit is contained in:
aleos89 2014-01-10 10:36:53 -05:00
parent 32713b9526
commit 0f7ecd0c4d
24 changed files with 949 additions and 760 deletions

View File

@ -4929,7 +4929,7 @@
12380,Desert_Wolf_Babe_Scroll,Job Change Flute,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ mercenary_create 2034,1800000; },{},{} 12380,Desert_Wolf_Babe_Scroll,Job Change Flute,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ mercenary_create 2034,1800000; },{},{}
12381,ValkyrieA_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; } },{},{} 12381,ValkyrieA_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; } },{},{}
12382,ValkyrieB_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; } },{},{} 12382,ValkyrieB_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; } },{},{}
12383,Vulcan_Bullet_Magazine,Vulcan Bullet Magazine,2,11000,,500,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12383,Vulcan_Bullet_Magazine,Vulcan Bullet Magazine,2,11000,,500,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 6145,1000; },{},{}
12384,Rainbow_Ruby_Water,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } */ },{},{} 12384,Rainbow_Ruby_Water,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } */ },{},{}
12385,Rainbow_Ruby_Fire,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } */ },{},{} 12385,Rainbow_Ruby_Fire,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } */ },{},{}
12386,Rainbow_Ruby_Wind,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } */ },{},{} 12386,Rainbow_Ruby_Wind,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } */ },{},{}
@ -4938,9 +4938,9 @@
12389,Runstone_Storm,Pertz Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } */ },{},{} 12389,Runstone_Storm,Pertz Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } */ },{},{}
12390,Runstone_Millennium,Verkana Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } */ },{},{} 12390,Runstone_Millennium,Verkana Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ /* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } */ },{},{}
12391,Lucky_Egg_C,Lucky Egg,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12391,Lucky_Egg_C,Lucky Egg,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12392,Repair_A,Repair A,0,220,,70,,,,,0x00000400,8,2,,,,,,{/* madoheal rand(200,300),0; */},{},{} 12392,Repair_A,Repair A,2,220,,100,,,,,0x00000400,8,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(200,300),0; } },{},{}
12393,Repair_B,Repair B,0,500,,70,,,,,0x00000400,8,2,,,,,,{/* madoheal rand(300,400),0; */},{},{} 12393,Repair_B,Repair B,2,500,,140,,,,,0x00000400,8,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(300,400),0; } },{},{}
12394,Repair_C,Repair C,0,1100,,70,,,,,0x00000400,8,2,,,,,,{/* madoheal rand(400,500),0; */},{},{} 12394,Repair_C,Repair C,2,1100,,180,,,,,0x00000400,8,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(400,500),0; } },{},{}
12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ pet 1519; },{},{} 12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ pet 1519; },{},{}
12396,Fools_Day_Box,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10; },{},{} 12396,Fools_Day_Box,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10; },{},{}
12397,Fools_Day_Box2,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196; },{},{} 12397,Fools_Day_Box2,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196; },{},{}
@ -4963,11 +4963,11 @@
12414,Guarana_Candy,Guarana Candy,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0; },{},{} 12414,Guarana_Candy,Guarana Candy,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0; },{},{}
12415,Siege_Teleport_Scroll2,Siege Teleport Scroll Silver,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12415,Siege_Teleport_Scroll2,Siege Teleport Scroll Silver,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12416,Lucky_Egg_C3,Lucky Egg C3,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12416,Lucky_Egg_C3,Lucky Egg C3,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12417,Boost500,Boost500,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12417,Boost500,Boost500,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_BOOST500,500000,10; },{},{}
12418,Full_SwingK,Full SwingK,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12418,Full_SwingK,Full SwingK,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_FULL_SWING_K,500000,50; },{},{}
12419,Mana_Plus,Mana Plus,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12419,Mana_Plus,Mana Plus,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_MANA_PLUS,500000,50; },{},{}
12420,Stamina_Up_M,Stamina Up M,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{} 12420,Stamina_Up_M,Stamina Up M,2,100,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_MUSTLE_M,500000,5; },{},{}
12421,Falmons_F,Falmons F,3,10,,10,,,,,,,,,,,,,{},{},{} 12421,Falmons_F,Falmons F,3,10,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_LIFE_FORCE_F,500000,5; },{},{}
12422,HP_Increase_Potion_(Small),HP Increase Potion (Small),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0; },{},{} 12422,HP_Increase_Potion_(Small),HP Increase Potion (Small),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0; },{},{}
12423,HP_Increase_Potion_(Medium),HP Increase Potion (Medium),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0; },{},{} 12423,HP_Increase_Potion_(Medium),HP Increase Potion (Medium),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0; },{},{}
12424,HP_Increase_Potion_(Large),HP Increase Potion (Large),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0; },{},{} 12424,HP_Increase_Potion_(Large),HP Increase Potion (Large),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0; },{},{}

View File

@ -1083,12 +1083,10 @@
2005,0,0,0,15000,0,2000 2005,0,0,0,15000,0,2000
//-- RK_IGNITIONBREAK //-- RK_IGNITIONBREAK
2006,1000,0,0,0,0,2000 2006,1000,0,0,0,0,2000
//-- RK_DRAGONBREATH //-- RK_DRAGONBREATH
2008,0:0:0:1000:1000:1000:1500:1500:2000:2000,2000,0,10000,0,0 2008,0:0:0:1000:1000:1000:1500:1500:2000:2000,2000,0,10000,0,0
//-- RK_DRAGONHOWLING //-- RK_DRAGONHOWLING
2009,0,0,0,15000,0,10000 2009,0,0,0,15000,0,10000
//-- RK_MILLENNIUMSHIELD //-- RK_MILLENNIUMSHIELD
2011,0,1000,0,180000,0,60000 2011,0,1000,0,180000,0,60000
//-- RK_CRUSHSTRIKE //-- RK_CRUSHSTRIKE
@ -1116,11 +1114,8 @@
2022,0,2500:2000:1500:1000:500,0,0,0,0 2022,0,2500:2000:1500:1000:500,0,0,0,0
//-- GC_DARKILLUSION //-- GC_DARKILLUSION
2023,0,1500,0,0,0,0 2023,0,1500,0,0,0,0
//-- GC_CREATENEWPOISON //-- GC_CREATENEWPOISON
2025,0,500,0,0,0,0 2025,0,500,0,0,0,0
//-- GC_ANTIDOTE
2026,0,0,0,0,0,0
//-- GC_POISONINGWEAPON //-- GC_POISONINGWEAPON
2027,0,1000,0,60000:120000:180000:240000:300000,300000,0 2027,0,1000,0,60000:120000:180000:240000:300000,300000,0
//-- GC_WEAPONBLOCKING //-- GC_WEAPONBLOCKING
@ -1128,11 +1123,11 @@
//-- GC_COUNTERSLASH //-- GC_COUNTERSLASH
2029,0,2000,0,0,0,0 2029,0,2000,0,0,0,0
//-- GC_WEAPONCRUSH //-- GC_WEAPONCRUSH
2030,0,1000,0,60000,0,0 2030,0,1000,0,75000:90000:105000:120000:135000,0,0
//-- GC_VENOMPRESSURE //-- GC_VENOMPRESSURE
2031,0,1000,0,0,0,0 2031,0,1000,0,0,0,0
//-- GC_POISONSMOKE //-- GC_POISONSMOKE
2032,0,2000,0,6000:8000:10000:12000:14000,0,0 2032,0,2000,0,10000:12000:14000:16000:18000,0,0
//-- GC_CLOAKINGEXCEED //-- GC_CLOAKINGEXCEED
2033,0,2000,0,0,0,0 2033,0,2000,0,0,0,0
//-- GC_PHANTOMMENACE //-- GC_PHANTOMMENACE
@ -1168,7 +1163,6 @@
2047,1000,0,0,60000,0,3000 2047,1000,0,0,60000,0,3000
//-- AB_LAUDARAMUS //-- AB_LAUDARAMUS
2048,1000,0,0,60000,0,3000 2048,1000,0,0,60000,0,3000
//-- AB_RENOVATIO //-- AB_RENOVATIO
2050,3000,0,0,90000,0,0 2050,3000,0,0,90000,0,0
//-- AB_HIGHNESSHEAL //-- AB_HIGHNESSHEAL
@ -1179,7 +1173,6 @@
2053,1000,0,0,150000:180000:210000:240000:270000,0,0 2053,1000,0,0,150000:180000:210000:240000:270000,0,0
//-- AB_DUPLELIGHT //-- AB_DUPLELIGHT
2054,2000,1000,0,90000:120000:150000:180000:210000:240000:270000:300000:330000:360000,0,0 2054,2000,1000,0,90000:120000:150000:180000:210000:240000:270000:300000:330000:360000,0,0
//-- AB_SILENTIUM //-- AB_SILENTIUM
2057,4000,0,0,20000:30000:40000:50000:60000,0,15000 2057,4000,0,0,20000:30000:40000:50000:60000,0,15000
//========================================== //==========================================
@ -1199,7 +1192,6 @@
2206,1000,1000,0,60000:90000:120000:150000:180000,0,50000:80000:110000:140000:170000 2206,1000,1000,0,60000:90000:120000:150000:180000,0,50000:80000:110000:140000:170000
//-- WL_SIENNAEXECRATE //-- WL_SIENNAEXECRATE
2207,2000,2000,0,10000:12000:14000:16000:18000,0,0 2207,2000,2000,0,10000:12000:14000:16000:18000,0,0
//-- WL_STASIS //-- WL_STASIS
2209,3000,1000,0,10000:15000:20000:25000:30000,0,300000 2209,3000,1000,0,10000:15000:20000:25000:30000,0,300000
//-- WL_DRAINLIFE //-- WL_DRAINLIFE
@ -1212,12 +1204,10 @@
2213,10000:11000:12000:13000:14000,0,0,15000,0,60000 2213,10000:11000:12000:13000:14000,0,0,15000,0,60000
//-- WL_CHAINLIGHTNING //-- WL_CHAINLIGHTNING
2214,3500:4000:4500:5000:5500,0,0,100,0,3000 2214,3500:4000:4500:5000:5500,0,0,100,0,3000
//-- WL_EARTHSTRAIN //-- WL_EARTHSTRAIN
2216,2000:3000:4000:5000:6000,1000,0,150,75000:90000:105000:120000:135000,10000 2216,2000:3000:4000:5000:6000,1000,0,150,75000:90000:105000:120000:135000,10000
//-- WL_TETRAVORTEX //-- WL_TETRAVORTEX
2217,5000:6000:7000:8000:9000,2000,0,20000,0,15000 2217,5000:6000:7000:8000:9000,2000,0,20000,0,15000
//-- WL_SUMMONFB //-- WL_SUMMONFB
2222,2000,0,0,120000:160000:200000:240000:280000,0,0 2222,2000,0,0,120000:160000:200000:240000:280000,0,0
//-- WL_SUMMONBL //-- WL_SUMMONBL
@ -1226,38 +1216,33 @@
2224,2000,0,0,120000:160000:200000:240000:280000,0,0 2224,2000,0,0,120000:160000:200000:240000:280000,0,0
//-- WL_SUMMONSTONE //-- WL_SUMMONSTONE
2229,2000,0,0,120000:160000:200000:240000:280000,0,0 2229,2000,0,0,120000:160000:200000:240000:280000,0,0
//-- WL_READING_SB //-- WL_READING_SB
2231,5000,500,0,0,0,0 2231,5000,500,0,0,0,0
//========================================== //==========================================
//===== Ranger ============================= //===== Ranger =============================
//-- RA_ARROWSTORM //-- RA_ARROWSTORM
2233,2000:2200:2400:2600:2800,0,0,0,0,5400:5600:5800:6000:6400 2233,2000:2200:2400:2600:2800:3000:3200:3400:3600:3800,0,0,0,0,5000:4800:4600:4400:4200:4000:3800:3600:3400:3200
//-- RA_FEARBREEZE //-- RA_FEARBREEZE
2234,2000,0,0,60000:90000:120000:150000:180000,0,0 2234,2000,0,0,60000:90000:120000:150000:180000,0,0
//-- RA_AIMEDBOLT //-- RA_AIMEDBOLT
2236,4000,1000,0,0,0,0 2236,4000,1000,0,0,0,0
//-- RA_DETONATOR //-- RA_DETONATOR
2237,0,0,0,1000,0,0 2237,0,0,0,1000,0,0
//-- RA_ELECTRICSHOCKER //-- RA_ELECTRICSHOCKER
2238,0,0,0,15000,20000:22000:24000:26000,0 2238,0,0,0,15000,20000:22000:24000:26000:28000,0
//-- RA_CLUSTERBOMB //-- RA_CLUSTERBOMB
2239,0,0,0,15000,0,0 2239,0,0,0,15000,0,0
//-- RA_WUGMASTERY //-- RA_WUGMASTERY
2240,0,1000,0,0,0,0 2240,0,1000,0,0,0,0
//-- RA_WUGRIDER //-- RA_WUGRIDER
2241,0,500,0,0,0,0 2241,0,500,0,0,0,0
//-- RA_WUGBITE //-- RA_WUGBITE
2244,0,2000,0,1000:2000:3000:4000:5000,0,4000:6000:8000:10000:12000 2244,0,2000,0,1000:2000:3000:4000:5000,0,4000:6000:8000:10000:12000
//-- RA_SENSITIVEKEEN //-- RA_SENSITIVEKEEN
2246,0,3000,0,0,0,0 2246,0,3000,0,0,0,0
//-- RA_CAMOUFLAGE //-- RA_CAMOUFLAGE
2247,0,0,0,10000,0,0 2247,0,0,0,10000,0,0
//-- RA_MAGENTATRAP //-- RA_MAGENTATRAP
2249,0,2000,0,15000,10000,0 2249,0,2000,0,15000,10000,0
//-- RA_COBALTTRAP //-- RA_COBALTTRAP
@ -1280,20 +1265,19 @@
//-- NC_VULCANARM //-- NC_VULCANARM
2258,0,300:200:100,0,0,0,0 2258,0,300:200:100,0,0,0,0
//-- NC_FLAMELAUNCHER //-- NC_FLAMELAUNCHER
2259,1000:1500:2000,1500:1000:500,0,7000:14000:21000,0,0 2259,500:1000:1500,1500:1000:500,0,7000:14000:21000,0,0
//-- NC_COLDSLOWER //-- NC_COLDSLOWER
2260,1000,1000:2000:3000,0,7000:14000:21000,0,0 2260,1000,1000:2000:3000,0,7000:14000:21000,0,0
// -- NC_ARMSCANNON // -- NC_ARMSCANNON
2261,1400:1600:1800,500:1000:2000,0,0,0,0 2261,1400:1600:1800,500:1000:2000,0,0,0,0
//-- NC_ACCELERATION //-- NC_ACCELERATION
2262,0,0,0,30000:60000:90000,0,0 2262,0,0,0,60000:90000:120000,0,0
//-- NC_HOVERING //-- NC_HOVERING
2263,0,0,0,90000,0,0 2263,0,0,0,90000,0,0
//-- NC_F_SIDESLIDE //-- NC_F_SIDESLIDE
2264,0,500,0,0,0,0 2264,0,500,0,0,0,0
//-- NC_B_SIDESLIDE //-- NC_B_SIDESLIDE
2265,0,500,0,0,0,0 2265,0,500,0,0,0,0
//-- NC_SELFDESTRUCTION //-- NC_SELFDESTRUCTION
2267,2000:1500:1000,0,0,0,0,300000 2267,2000:1500:1000,0,0,0,0,300000
//-- NC_SHAPESHIFT //-- NC_SHAPESHIFT
@ -1305,14 +1289,13 @@
//-- NC_ANALYZE //-- NC_ANALYZE
2271,0,1000,0,20000,0,0 2271,0,1000,0,20000,0,0
//-- NC_MAGNETICFIELD //-- NC_MAGNETICFIELD
2272,500:1000:1500,0,0,15000,0,20000:15000:10000 2272,0,0,0,4000:6000:8000,0,20000:15000:10000
//-- NC_NEUTRALBARRIER //-- NC_NEUTRALBARRIER
2273,500:1000:1500,0,0,30000:45000:60000,0,20000:15000:10000 2273,0,0,0,30000:45000:60000,0,20000:15000:10000
//-- NC_STEALTHFIELD //-- NC_STEALTHFIELD
2274,500:1000:1500,0,0,15000:20000:25000,0,20000:15000:10000 2274,0,0,0,15000:20000:25000,0,20000:15000:10000
//-- NC_REPAIR //-- NC_REPAIR
2275,200:300:400:500:600,1000,0,0,0,0 2275,200:300:400:500:600,1000,0,0,0,0
//-- NC_AXEBOOMERANG //-- NC_AXEBOOMERANG
2278,0,0,0,0,0,5000:4500:4000:3500:3000 2278,0,0,0,0,0,5000:4500:4000:3500:3000
//-- NC_POWERSWING //-- NC_POWERSWING
@ -1341,7 +1324,7 @@
//-- SC_BODYPAINT //-- SC_BODYPAINT
2289,0,1000,0,5000:7000:9000:11000:13000,0,2000 2289,0,1000,0,5000:7000:9000:11000:13000,0,2000
//-- SC_INVISIBILITY //-- SC_INVISIBILITY
2290,1000,1000,0,20000,0,20000:30000:40000:50000:60000 2290,1000,1000,0,0,0,20000:30000:40000:50000:60000
//-- SC_DEADLYINFECT //-- SC_DEADLYINFECT
2291,0,1000,0,10000:15000:20000:25000:30000,0,2000 2291,0,1000,0,10000:15000:20000:25000:30000,0,2000
//-- SC_ENERVATION //-- SC_ENERVATION
@ -1375,7 +1358,6 @@
//==== Royal Guard skills ================== //==== Royal Guard skills ==================
//-- LG_CANNONSPEAR //-- LG_CANNONSPEAR
2307,0,0,0,0,0,2000 2307,0,0,0,0,0,2000
//-- LG_TRAMPLE //-- LG_TRAMPLE
2309,0,0,0,0,0,1000 2309,0,0,0,0,0,1000
//-- LG_SHIELDPRESS //-- LG_SHIELDPRESS
@ -1423,7 +1405,6 @@
2329,0,0,0,500:1000:1500:2000:2500,0,0 2329,0,0,0,500:1000:1500:2000:2500,0,0
//-- SR_TIGERCANNON //-- SR_TIGERCANNON
2330,1100:1200:1300:1400:1500:1600:1700:1800:1900:2000,1000,0,0,0,5000 2330,1100:1200:1300:1400:1500:1600:1700:1800:1900:2000,1000,0,0,0,5000
//-- SR_RAMPAGEBLASTER //-- SR_RAMPAGEBLASTER
2332,0,1000,0,0,0,10000 2332,0,1000,0,0,0,10000
//-- SR_CRESCENTELBOW //-- SR_CRESCENTELBOW
@ -1438,12 +1419,10 @@
2337,1000,500,0,0,0,3000 2337,1000,500,0,0,0,3000
//-- SR_RAISINGDRAGON //-- SR_RAISINGDRAGON
2338,0,1000,0,30000:45000:60000:75000:90000:105000:120000:135000:150000:165000,0,30000 2338,0,1000,0,30000:45000:60000:75000:90000:105000:120000:135000:150000:165000,0,30000
//-- SR_ASSIMILATEPOWER //-- SR_ASSIMILATEPOWER
2340,0,1000,0,0,0,5000 2340,0,1000,0,0,0,5000
//-- SR_POWERVELOCITY //-- SR_POWERVELOCITY
2341,1500,0,0,0,0,0 2341,1500,0,0,0,0,0
//-- SR_GATEOFHELL //-- SR_GATEOFHELL
2343,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,100:200:300:400:500:600:700:800:900:1000,0,0,0,0 2343,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,100:200:300:400:500:600:700:800:900:1000,0,0,0,0
//-- SR_GENTLETOUCH_QUIET //-- SR_GENTLETOUCH_QUIET
@ -1485,7 +1464,7 @@
//-- WM_DOMINION_IMPULSE //-- WM_DOMINION_IMPULSE
2417,0,1000,0,0,0,0 2417,0,1000,0,0,0,0
//-- WM_SEVERE_RAINSTORM //-- WM_SEVERE_RAINSTORM
2418,1000:1500:2000:2500:3000,1000,0,900:1500:2100:2700:3000,0,5000:5500:6000:6500:7000 2418,1500:2000:2500:3000:3500,1000,0,900:1500:2100:2700:3000,0,5000:5500:6000:6500:7000
//-- WM_POEMOFNETHERWORLD //-- WM_POEMOFNETHERWORLD
2419,3000,0,0,9000:11000:13000:15000:17000,8000:10000:12000:14000:16000,0 2419,3000,0,0,9000:11000:13000:15000:17000,8000:10000:12000:14000:16000,0
//-- WM_VOICEOFSIREN //-- WM_VOICEOFSIREN
@ -1507,13 +1486,13 @@
//-- WM_DANCE_WITH_WUG //-- WM_DANCE_WITH_WUG
2428,1500:2000:2500:3000:3500,1000,0,30000:60000:90000:120000:150000,0,90000 2428,1500:2000:2500:3000:3500,1000,0,30000:60000:90000:120000:150000,0,90000
//-- WM_SOUND_OF_DESTRUCTION //-- WM_SOUND_OF_DESTRUCTION
2429,0:500:1000:1500:2000,1000,0,0,0,20000 2429,0:500:1000:1500:2000,1000,0,0,0,6000:7000:8000:9000:10000
//-- WM_SATURDAY_NIGHT_FEVER //-- WM_SATURDAY_NIGHT_FEVER
2430,1000:2000:3000:4000:5000,1000,0,10000:15000:20000:25000:30000,10000:8000:6000:4000:2000,180000 2430,1000:2000:3000:4000:5000,1000,0,10000:15000:20000:25000:30000,10000:8000:6000:4000:2000,180000
//-- WM_LERADS_DEW //-- WM_LERADS_DEW
2431,1000,1000,0,20000:30000:40000:50000:60000,0,180000 2431,1000,1000,0,20000:30000:40000:50000:60000,0,180000
//-- WM_MELODYOFSINK //-- WM_MELODYOFSINK
2432,100,1000,0,20000:30000:40000:50000:60000,0,180000 2432,1000,1000,0,20000:30000:40000:50000:60000,0,180000
//-- WM_BEYOND_OF_WARCRY //-- WM_BEYOND_OF_WARCRY
2433,1000,1000,0,20000:30000:40000:50000:60000,0,180000 2433,1000,1000,0,20000:30000:40000:50000:60000,0,180000
//-- WM_UNLIMITED_HUMMING_VOICE //-- WM_UNLIMITED_HUMMING_VOICE
@ -1561,7 +1540,6 @@
2461,0,0,0,0,0,5000 2461,0,0,0,0,0,5000
//-- SO_EL_ANALYSIS //-- SO_EL_ANALYSIS
2462,0,0,0,0,0,0 2462,0,0,0,0,0,0
//-- SO_EL_CURE //-- SO_EL_CURE
2464,2000,1000,0,0,0,0 2464,2000,1000,0,0,0,0
//-- SO_FIRE_INSIGNIA //-- SO_FIRE_INSIGNIA
@ -1593,16 +1571,14 @@
2483,3000:3500:4000:4500:5000:5500:6000:6500:7000:7500,500,0,0,0,5000 2483,3000:3500:4000:4500:5000:5500:6000:6500:7000:7500,500,0,0,0,5000
//-- GN_CRAZYWEED_ATK //-- GN_CRAZYWEED_ATK
2484,0,0,0,100,0,0 2484,0,0,0,100,0,0
//-- GN_DEMONIC_FIRE //-- GN_DEMONIC_FIRE
2485,3000:3500:4000:4500:5000,500,0,10000:12000:14000:16000:18000,15000,5000 2485,3000:3500:4000:4500:5000,500,0,10000:12000:14000:16000:18000,8000:16000:24000:32000:40000,5000
//-- GN_FIRE_EXPANSION //-- GN_FIRE_EXPANSION
2486,2000,500,0,0,0,0 2486,2000,500,0,0,0,0
//-- GN_FIRE_EXPANSION_SMOKE_POWDER //-- GN_FIRE_EXPANSION_SMOKE_POWDER
2487,0,0,0,10000:12000:14000:16000:18000,0,0 2487,0,0,0,10000:12000:14000:16000:18000,0,0
//-- GN_FIRE_EXPANSION_TEAR_GAS //-- GN_FIRE_EXPANSION_TEAR_GAS
2488,0,0,0,10000:12000:14000:16000:18000,0,0 2488,0,0,0,10000:12000:14000:16000:18000,0,0
//-- GN_HELLS_PLANT //-- GN_HELLS_PLANT
2490,3000:3500:4000:4500:5000,500,0,14000:21000:28000:35000:42000,0,0 2490,3000:3500:4000:4500:5000,500,0,14000:21000:28000:35000:42000,0,0
//-- GN_HELLS_PLANT_ATK //-- GN_HELLS_PLANT_ATK
@ -1610,20 +1586,18 @@
//-- GN_MANDRAGORA //-- GN_MANDRAGORA
2492,1000,500,0,10000:15000:20000:25000:30000,0,15000 2492,1000,500,0,10000:15000:20000:25000:30000,0,15000
//-- GN_SLINGITEM //-- GN_SLINGITEM
2493,0,0,0,77000,10000,1000 2493,0,0,0,0,0,1000
//-- GN_SLINGITEM_RANGEMELEEATK //-- GN_SLINGITEM_RANGEMELEEATK
2498,0,0,0,3000,0,0 2498,0,0,0,5000:10000:60000:60000:3000,0,0
//========================================== //==========================================
//===== Extra 3rd Class Skills ============= //===== Extra 3rd Class Skills =============
//-- AB_SECRAMENT //-- AB_SECRAMENT
2515,1000,500,0,60000:90000:120000:150000:180000,0,0 2515,1000,500,0,60000:90000:120000:150000:180000,0,0
//-- SR_HOWLINGOFLION //-- SR_HOWLINGOFLION
2517,1000,0,0,12000:14000:16000:18000:20000,0,10000 2517,1000,0,0,12000:14000:16000:18000:20000,0,10000
//-- SR_RIDEINLIGHTNING //-- SR_RIDEINLIGHTNING
2518,1000:2000:3000:4000:5000,200,0,0,0,1000 2518,1000:2000:3000:4000:5000,0,0,0,0,1000
//========================================== //==========================================
//===== Misc. Skills ======================= //===== Misc. Skills =======================

View File

@ -36,6 +36,22 @@
512,3 //GS_TRACKING 512,3 //GS_TRACKING
1014,1 //PR_REDEMPTIO 1014,1 //PR_REDEMPTIO
2012,7 //RK_CRUSHSTRIKE
2013,7 //RK_REFRESH
2014,7 //RK_GIANTGROWTH
2015,7 //RK_STONEHARDSKIN
2022,0,2 //GC_CROSSIMPACT
2032,7 //GC_POISONSMOKE
2234,7 //RA_FEARBREEZE
//2267,7 //NC_SELFDESTRUCTION
2268,7 //NC_SHAPESHIFT
//2270,7 //NC_INFRAREDSCAN
2271,7 //NC_ANALYZE
2281,7 //NC_SILVERSNIPER
2282,7 //NC_MAGICDECOY
2313,7 //LG_FORCEOFVANGUARD
2462,7 //SO_EL_ANALYSIS
2534,7,7 //RETURN_TO_ELDICASTES 2534,7,7 //RETURN_TO_ELDICASTES
2536,7,7 //ALL_GUARDIAN_RECALL 2536,7,7 //ALL_GUARDIAN_RECALL
2537,0,7 //ALL_ODINS_POWER 2537,0,7 //ALL_ODINS_POWER

View File

@ -1,4 +1,4 @@
//id,range,hit,inf,element,nk,splash,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count,name,description //id,range,hit,inf,element,nk,splash,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count,inf3,name,description
// 01 ID // 01 ID
// 02 range (combo skills do not check for range when used, // 02 range (combo skills do not check for range when used,
// if range is < 5, the skill is considered melee-range) // if range is < 5, the skill is considered melee-range)
@ -135,7 +135,6 @@
51,1,6,4,0,1,0,10,1,no,0,0,0,none,0,0x64, TF_HIDING,Hiding 51,1,6,4,0,1,0,10,1,no,0,0,0,none,0,0x64, TF_HIDING,Hiding
52,-2,6,1,5,0,0,10,1,no,0,0,0,weapon,0,0x0, TF_POISON,Envenom 52,-2,6,1,5,0,0,10,1,no,0,0,0,weapon,0,0x0, TF_POISON,Envenom
53,9,6,16,5,0x1,0,1,1,no,0,0,0,weapon,0,0x0, TF_DETOXIFY,Detoxify 53,9,6,16,5,0x1,0,1,1,no,0,0,0,weapon,0,0x0, TF_DETOXIFY,Detoxify
// //
54,9,6,16,6,0x1,0,4,1,yes,0,0,0,magic,0,0x20, ALL_RESURRECTION,Resurrection 54,9,6,16,6,0x1,0,4,1,yes,0,0,0,magic,0,0x20, ALL_RESURRECTION,Resurrection
@ -870,7 +869,7 @@
1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, BA_PANGVOICE,Pang Voice 1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, BA_PANGVOICE,Pang Voice
1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, DC_WINKCHARM,Wink of Charm 1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, DC_WINKCHARM,Wink of Charm
1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000, BS_UNFAIRLYTRICK,Unfair Trick 1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000, BS_UNFAIRLYTRICK,Unfair Trick
1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x4000, BS_GREED,Greed 1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x0, BS_GREED,Greed
1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0, PR_REDEMPTIO,Redemptio 1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0, PR_REDEMPTIO,Redemptio
1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0, MO_KITRANSLATION,Ki Translation 1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0, MO_KITRANSLATION,Ki Translation
1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0, MO_BALKYOUNG,Ki Explosion 1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0, MO_BALKYOUNG,Ki Explosion
@ -905,8 +904,8 @@
// WL Warlock // WL Warlock
2201,11,6,16,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_WHITEIMPRISON,White Imprison 2201,11,6,16,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_WHITEIMPRISON,White Imprison
2202,11,8,1,8,0x2,1:1:1:2:2,5,-2,yes,0,0,0,magic,0,0x420, WL_SOULEXPANSION,Soul Expansion 2202,11,8,1,8,0x2,1:1:1:2:2,5,-2,yes,0,0,0,magic,0,0x420, WL_SOULEXPANSION,Soul Expansion
2203,0,8,4,1,0x2,13,5,-3:-4:-5:-6:-7,yes,0,0,0,magic,0,0x400, WL_FROSTMISTY,Frosty Misty 2203,0,8,4,1,0x2,9,5,-3:-4:-5:-6:-7,yes,0,0,0,magic,0,0x400, WL_FROSTMISTY,Frosty Misty
2204,0,8,4,1,0x2,13,5,-5,yes,0,0,0,magic,0,0x0, WL_JACKFROST,Jack Frost 2204,0,8,4,1,0x2,5:6:7:8:9,5,-5,yes,0,0,0,magic,0,0x0, WL_JACKFROST,Jack Frost
2205,11,6,1,0,0x1,0,5,1,yes,0,0,0,magic,0,0x400, WL_MARSHOFABYSS,Marsh of Abyss 2205,11,6,1,0,0x1,0,5,1,yes,0,0,0,magic,0,0x400, WL_MARSHOFABYSS,Marsh of Abyss
2206,0,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, WL_RECOGNIZEDSPELL,Recognized Spell 2206,0,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, WL_RECOGNIZEDSPELL,Recognized Spell
2207,7,6,1,2,0x3,1:2:2:3:3,5,1,yes,0,0,0,magic,0,0x420, WL_SIENNAEXECRATE,Sienna Execrate 2207,7,6,1,2,0x3,1:2:2:3:3,5,1,yes,0,0,0,magic,0,0x420, WL_SIENNAEXECRATE,Sienna Execrate
@ -915,10 +914,10 @@
2210,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_DRAINLIFE,Drain Life 2210,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_DRAINLIFE,Drain Life
2211,11,8,1,3,0x2,3,5,-7,yes,0,0,0,magic,3,0x400, WL_CRIMSONROCK,Crimson Rock 2211,11,8,1,3,0x2,3,5,-7,yes,0,0,0,magic,3,0x400, WL_CRIMSONROCK,Crimson Rock
2212,11,6,1,3,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_HELLINFERNO,Hell Inferno 2212,11,6,1,3,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_HELLINFERNO,Hell Inferno
2213,11,8,2,0,0x2,7,5,-20,yes,0,0,0,magic,2,0x400, WL_COMET,Comet 2213,11,8,2,0,0x2,9,5,-20,yes,0,0,0,magic,2,0x400, WL_COMET,Comet
2214,11,6,1,0,0,3,5,1,yes,0,0,0,magic,0,0x400, WL_CHAINLIGHTNING,Chain Lightning //CHECK Is the splash being used for the target search? 2214,11,6,1,0,0x2,3,5,1,yes,0,0,0,magic,0,0x400, WL_CHAINLIGHTNING,Chain Lightning //CHECK Is the splash being used for the target search?
2215,11,6,1,4,0,0,5,1,no,0,0,0,magic,0,0x0, WL_CHAINLIGHTNING_ATK,Chain Lightning Attack 2215,11,6,1,4,0,0,5,1,no,0,0,0,magic,0,0x0, WL_CHAINLIGHTNING_ATK,Chain Lightning Attack
2216,3,8,2,2,0,0,5,-6:-7:-8:-9:-10,yes,0,0,0,magic,0,0x20, WL_EARTHSTRAIN,Earth Strain 2216,6,8,2,2,0,0,5,-6:-7:-8:-9:-10,yes,0,0,0,magic,0,0x20, WL_EARTHSTRAIN,Earth Strain
2217,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_TETRAVORTEX,Tetra Vortex 2217,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_TETRAVORTEX,Tetra Vortex
2218,11,6,1,3,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_FIRE,Tetra Vortex Fire 2218,11,6,1,3,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_FIRE,Tetra Vortex Fire
2219,11,6,1,1,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_WATER,Tetra Vortex Water 2219,11,6,1,1,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_WATER,Tetra Vortex Water
@ -939,19 +938,19 @@
//**** //****
// GC Guillotine Cross // GC Guillotine Cross
2021,10,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_VENOMIMPRESS,Venom Impress 2021,10,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_VENOMIMPRESS,Venom Impress
2022,3,8,1,-1,0,0,5,-7,no,0,0,0,weapon,0,0x0, GC_CROSSIMPACT,Cross Impact 2022,3,8,1,-1,0,0,5,-7,no,0,0,0,weapon,0,0x0, GC_CROSSIMPACT,Cross Impact
2023,3:4:5:6:7,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_DARKILLUSION,Dark Illusion 2023,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_DARKILLUSION,Dark Illusion
2024,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, GC_RESEARCHNEWPOISON,Research New Poison 2024,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, GC_RESEARCHNEWPOISON,Research New Poison
2025,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_CREATENEWPOISON,Create New Poison 2025,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_CREATENEWPOISON,Create New Poison
2026,5,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_ANTIDOTE,Antidote 2026,5,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_ANTIDOTE,Antidote
2027,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_POISONINGWEAPON,Poisoning Weapon 2027,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_POISONINGWEAPON,Poisoning Weapon
2028,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_WEAPONBLOCKING,Weapon Blocking 2028,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_WEAPONBLOCKING,Weapon Blocking
2029,-2,6,4,-1,0x2,1,5,1,no,0,0,0,weapon,3,0x0, GC_COUNTERSLASH,Counter Slash 2029,0,6,4,-1,0x22,1,5,1,no,0,0,0,weapon,3,0x0, GC_COUNTERSLASH,Counter Slash
2030,-2,6,4,-1,0x1,0,5,1,no,0,0x200,0,weapon,0,0x0, GC_WEAPONCRUSH,Weapon Crush //CHECK SHould this and the above skill have INF2 0x200? 2030,-2,6,4,-1,0x1,0,5,1,no,0,0x200,0,weapon,0,0x0, GC_WEAPONCRUSH,Weapon Crush
2031,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_VENOMPRESSURE,Venom Pressure 2031,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_VENOMPRESSURE,Venom Pressure
2032,5,6,2,0,0x1,0,5,1,yes,0,0,1,none,0,0x0, GC_POISONSMOKE,Poison Smoke 2032,5,6,2,0,0x1,0,5,1,yes,0,0,1,none,0,0x0, GC_POISONSMOKE,Poison Smoke
2033,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x40, GC_CLOAKINGEXCEED,Cloaking Exceed 2033,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x40, GC_CLOAKINGEXCEED,Cloaking Exceed
2034,0,6,4,-1,0x2,3,1,1,no,0,0,0,weapon,0,0x0, GC_PHANTOMMENACE,Phantom Menace 2034,0,6,4,-1,0x2,3,1,1,no,0,0,0,weapon,0,0x0, GC_PHANTOMMENACE,Phantom Menace
2035,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_HALLUCINATIONWALK,Hallucination Walk 2035,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_HALLUCINATIONWALK,Hallucination Walk
2036,0,6,4,-1,0x2,1:1:1:1:2,5,1,no,0,0,0,weapon,0,0x0, GC_ROLLINGCUTTER,Rolling Cutter 2036,0,6,4,-1,0x2,1:1:1:1:2,5,1,no,0,0,0,weapon,0,0x0, GC_ROLLINGCUTTER,Rolling Cutter
@ -984,7 +983,7 @@
//**** //****
// RA Ranger // RA Ranger
2233,9,8,1,-1,0x2,3:3:3:3:3:4:4:4:4:5,10,-3,yes,0,0,0,weapon,0,0x80, RA_ARROWSTORM,Arrow Storm 2233,9,8,1,-1,0x2,3:3:3:3:3:4:4:4:4:5,10,-3,yes,0,0,0,weapon,0,0x80, RA_ARROWSTORM,Arrow Storm
2234,0,6,4,0,0,0,5,1,yes,0,0,0,none,0,0x0, RA_FEARBREEZE,Fear Breeze 2234,0,6,4,0,0,0,5,1,yes,0,0,0,none,0,0x0, RA_FEARBREEZE,Fear Breeze
2235,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_RANGERMAIN,Ranger Main 2235,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_RANGERMAIN,Ranger Main
2236,9,8,1,-1,0,0,10,1,yes,0,0,0,weapon,0,0x80, RA_AIMEDBOLT,Aimed Bolt 2236,9,8,1,-1,0,0,10,1,yes,0,0,0,weapon,0,0x80, RA_AIMEDBOLT,Aimed Bolt
@ -994,8 +993,8 @@
2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0, RA_WUGMASTERY,Warg Mastery 2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0, RA_WUGMASTERY,Warg Mastery
2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000, RA_WUGRIDER,Warg Rider 2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000, RA_WUGRIDER,Warg Rider
2242,0,6,4,-1,0x2,1,1,0,no,0,0,0,weapon,0,0x2000, RA_WUGDASH,Warg Dash 2242,0,6,4,-1,0x2,1,1,0,no,0,0,0,weapon,0,0x2000, RA_WUGDASH,Warg Dash
2243,9,6,1,0,0,0,5,1,no,0,0,0,weapon,0,0x2000, RA_WUGSTRIKE,Warg Strike 2243,9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x2000, RA_WUGSTRIKE,Warg Strike
2244,9,6,1,0,0,0,5,1,no,0,0,0,weapon,0,0x80, RA_WUGBITE,Warg Bite 2244,9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x80, RA_WUGBITE,Warg Bite
2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_TOOTHOFWUG,Tooth of Warg 2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_TOOTHOFWUG,Tooth of Warg
2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, RA_SENSITIVEKEEN,Sensitive Keen 2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, RA_SENSITIVEKEEN,Sensitive Keen
2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x42, RA_CAMOUFLAGE,Camouflage 2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x42, RA_CAMOUFLAGE,Camouflage
@ -1012,32 +1011,32 @@
2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_MADOLICENCE,Mado License 2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_MADOLICENCE,Mado License
2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_BOOSTKNUCKLE,Boost Knuckle 2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_BOOSTKNUCKLE,Boost Knuckle
2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_PILEBUNKER,Pile Bunker 2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_PILEBUNKER,Pile Bunker
2258,13,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_VULCANARM,Vulcan Arm 2258,13,6,1,-1,0x2,1,3,1,no,0,0,0,weapon,0,0x0, NC_VULCANARM,Vulcan Arm
2259,5,6,1,3,0,2,3,1,no,0,0,5,weapon,0,0x0, NC_FLAMELAUNCHER,Flame Launcher 2259,7,6,1,3,0,2,3,1,no,0,0,5,weapon,0,0x0, NC_FLAMELAUNCHER,Flame Launcher
2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0,0,weapon,0,0x0, NC_COLDSLOWER,Cold Slower 2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0,0,weapon,0,0x0, NC_COLDSLOWER,Cold Slower
2261,7,6,2,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0, NC_ARMSCANNON,Arm Cannon 2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0, NC_ARMSCANNON,Arm Cannon
2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_ACCELERATION,Acceleration 2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_ACCELERATION,Acceleration
2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_HOVERING,Hovering 2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_HOVERING,Hovering
2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_F_SIDESLIDE,Front-Side Slide 2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_F_SIDESLIDE,Front-Side Slide
2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_B_SIDESLIDE,Back-Side Slide 2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_B_SIDESLIDE,Back-Side Slide
2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0, NC_MAINFRAME,Mainframe Restructure // Check me. Part of the code notes translated to "The amount of fuel have". 2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0, NC_MAINFRAME,Mainframe Restructure // Check me. Part of the code notes translated to "The amount of fuel have".
2267,0,6,4,-1,0x42,2:3:4,3,1,no,0,0,0,misc,5,0x0, NC_SELFDESTRUCTION,Self Destruction 2267,0,6,4,-1,0x4A,2:3:4,3,1,no,0,0,0,misc,5,0x0, NC_SELFDESTRUCTION,Self Destruction
2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, NC_SHAPESHIFT,Shape Shift 2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, NC_SHAPESHIFT,Shape Shift
2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_EMERGENCYCOOL,Emergency Cool 2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_EMERGENCYCOOL,Emergency Cool
2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0, NC_INFRAREDSCAN,Infrared Scan 2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0, NC_INFRAREDSCAN,Infrared Scan
2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_ANALYZE,Analyze 2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_ANALYZE,Analyze
2272,0,6,4,0,0x3,1:2:3,3,1,yes,0,0,0,none,0,0x0, NC_MAGNETICFIELD,Magnetic Field 2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x0, NC_MAGNETICFIELD,Magnetic Field
2273,0,6,4,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_NEUTRALBARRIER,Neutral Barrier 2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_NEUTRALBARRIER,Neutral Barrier
2274,0,6,4,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_STEALTHFIELD,Stealth Field 2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_STEALTHFIELD,Stealth Field
2275,5,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, NC_REPAIR,Repair 2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, NC_REPAIR,Repair
2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, NC_TRAININGAXE,Axe Training 2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, NC_TRAININGAXE,Axe Training
2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_RESEARCHFE,Research Fire/Earth 2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_RESEARCHFE,Research Fire/Earth
2278,4:5:6:7:8,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, NC_AXEBOOMERANG,Axe Boomerang 2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, NC_AXEBOOMERANG,Axe Boomerang
2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_POWERSWING,Power Swing 2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_POWERSWING,Power Swing
2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0,0,weapon,0,0x0, NC_AXETORNADO,Axe Tornado // Check me. Takes 20 * Skill LV amount of HP each use. 2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0,0,weapon,0,0x0, NC_AXETORNADO,Axe Tornado // Check me. Takes 20 * Skill LV amount of HP each use.
2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_SILVERSNIPER,FAW - Silver Sniper 2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_SILVERSNIPER,FAW - Silver Sniper
2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_MAGICDECOY,FAW - Magic Decoy //CHECK FIX ME!!!! Wind and Earth stones spawning opposite decoys. 2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_MAGICDECOY,FAW - Magic Decoy //CHECK FIX ME!!!! Wind and Earth stones spawning opposite decoys.
2283,2,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_DISJOINT,FAW Removal 2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_DISJOINT,FAW Removal
//**** //****
// SC Shadow Chaser // SC Shadow Chaser
@ -1060,7 +1059,7 @@
2300,7,6,2,0,0x1,0,3,1,yes,0,0,1,none,0,0x0, SC_DIMENSIONDOOR,Dimension Door 2300,7,6,2,0,0x1,0,3,1,yes,0,0,1,none,0,0x0, SC_DIMENSIONDOOR,Dimension Door
2301,7,6,2,0,0x1,0,3,1,yes,0,0x20000,0,none,0,0x0, SC_CHAOSPANIC,Chaos Panic 2301,7,6,2,0,0x1,0,3,1,yes,0,0x20000,0,none,0,0x0, SC_CHAOSPANIC,Chaos Panic
2302,7,6,2,0,0x1,0,3,1,yes,0,0x20000,0,none,0,0x0, SC_MAELSTROM,Maelstrom 2302,7,6,2,0,0x1,0,3,1,yes,0,0x20000,0,none,0,0x0, SC_MAELSTROM,Maelstrom
2303,7,6,2,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, SC_BLOODYLUST,Bloody Lust 2303,7,6,2,0,0x1,3,3,1,yes,0,0,1,none,0,0x0, SC_BLOODYLUST,Bloody Lust
2304,0,6,4,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, SC_FEINTBOMB,Feint Bomb 2304,0,6,4,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, SC_FEINTBOMB,Feint Bomb
//**** //****
@ -1073,11 +1072,11 @@
2312,5,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, LG_PINPOINTATTACK,Pinpoint Attack 2312,5,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, LG_PINPOINTATTACK,Pinpoint Attack
2313,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_FORCEOFVANGUARD,Force of Vanguard 2313,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_FORCEOFVANGUARD,Force of Vanguard
2314,1,6,1,-1,0,0,1,1,no,0,0,0,weapon,0,0x0, LG_RAGEBURST,Rage Burst 2314,1,6,1,-1,0,0,1,1,no,0,0,0,weapon,0,0x0, LG_RAGEBURST,Rage Burst
2315,0,6,4,0,0x2,3,3,1,yes,0,0,0,none,2,0x0, LG_SHIELDSPELL,Shield Spell 2315,0,6,4,0:6:0,0x2,0,3,1,yes,0,0,0,none,2:0:0,0x0, LG_SHIELDSPELL,Shield Spell
2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_EXEEDBREAK,Exceed Break 2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_EXEEDBREAK,Exceed Break
2317,1,6,2,-1,0x2,5,5,1,yes,0,0,0,none,3:4:5:6:7,0x0, LG_OVERBRAND,Over Brand //CHECK I know the splash is needed somehow for the strange AoE it gives. 2317,1,6,2,-1,0x2,5,5,1,yes,0,0,0,none,3:4:5:6:7,0x0, LG_OVERBRAND,Over Brand
2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_PRESTIGE,Prestige 2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_PRESTIGE,Prestige
2319,0,6,4,0,0x1,3,5,1,no,0,0,0,weapon,0,0x0, LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID. 2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0, LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID.
2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x0, LG_MOONSLASHER,Moon Slasher 2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x0, LG_MOONSLASHER,Moon Slasher
2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0, LG_RAYOFGENESIS,Ray of Genesis 2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0, LG_RAYOFGENESIS,Ray of Genesis
2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0, LG_PIETY,Piety 2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0, LG_PIETY,Piety
@ -1087,15 +1086,15 @@
//**** //****
// SR Sura // SR Sura
2326,-2,8,1,-1,0,0,10,2,no,0,0,0,weapon,0,0x0, SR_DRAGONCOMBO,Dragon Combo //CHECK Is this 2 regular hits or sub hits? Yes its 2 sub hits. 2326,-2,8,1,-1,0,0,10,-2,no,0,0,0,weapon,0,0x0, SR_DRAGONCOMBO,Dragon Combo
2327,0,8,4,-1,0x2,2,5,-3,no,0,0,0,weapon,3,0x0, SR_SKYNETBLOW,Sky Net Blow //CHECK Video shows 3 hits. Its sub hits right? Data check shows no sub, one source shows 3 hits, another shows 5. 2327,0,8,4,-1,0x2,2,5,-3,no,0,0,0,weapon,3,0x0, SR_SKYNETBLOW,Sky Net Blow
2328,0,6,4,-1,0x2,1:2:3:4:5,5,1,no,0,0,0,weapon,0,0x0, SR_EARTHSHAKER,Earth Shaker //CHECK Must add a check in battle.c to triple damage if hitting a hidden target. 2328,0,6,4,-1,0x2,1:2:3:4:5,5,1,no,0,0,0,weapon,0,0x0, SR_EARTHSHAKER,Earth Shaker
2329,-2,8,4,-1,0,0,5,-2,no,0,0x200,0,weapon,0,0x0, SR_FALLENEMPIRE,Fallen Empire //CHECK Video shows 2 hits. Is it sub hits? Yes its divided between 2 hits. 2329,-2,8,4,-1,0,0,5,-2,no,0,0x200,0,weapon,0,0x0, SR_FALLENEMPIRE,Fallen Empire
2330,-2,6,1,-1,0x42,1:1:1:1:1:2:2:2:2:2,10,1,yes,0,0,0,weapon,0,0x0, SR_TIGERCANNON,Tiger Cannon //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire. 2330,-2,6,1,-1,0x42,1:1:1:1:1:2:2:2:2:2,10,1,yes,0,0,0,weapon,0,0x0, SR_TIGERCANNON,Tiger Cannon //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire.
2331,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, SR_HELLGATE,Hell Gate 2331,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, SR_HELLGATE,Hell Gate
2332,5,6,4,-1,0x2,3,5,1,no,0,0,0,weapon,0,0x0, SR_RAMPAGEBLASTER,Rampage Blaster 2332,0,6,4,-1,0x2,3,5,1,no,0,0,0,weapon,0,0x0, SR_RAMPAGEBLASTER,Rampage Blaster
2333,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_CRESCENTELBOW,Crescent Elbow //CHECK Check the autospell ID. 2333,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_CRESCENTELBOW,Crescent Elbow //CHECK Check the autospell ID.
2334,0,6,4,0,0x3,1:1:2:2:3,5,1,no,0,0,0,none,0,0x0, SR_CURSEDCIRCLE,Cursed Circle //CHECK Code shows it takes up to 5% of your HP upon use? 2334,0,6,4,0,0x3,1:1:2:2:3,5,1,no,0,0,0,none,0,0x0, SR_CURSEDCIRCLE,Cursed Circle
2335,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_LIGHTNINGWALK,Lightning Walk 2335,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_LIGHTNINGWALK,Lightning Walk
2336,7:8:9:10:11,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, SR_KNUCKLEARROW,Knuckle Arrow 2336,7:8:9:10:11,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, SR_KNUCKLEARROW,Knuckle Arrow
2337,0,6,4,-1,0x2,2,1,1,yes,0,0,0,weapon,0,0x0, SR_WINDMILL,Windmill 2337,0,6,4,-1,0x2,2,1,1,yes,0,0,0,weapon,0,0x0, SR_WINDMILL,Windmill
@ -1106,13 +1105,13 @@
2342,1,6,1,-1,0x20,0,5,1,no,0,0,0,weapon,3,0x0, SR_CRESCENTELBOW_AUTOSPELL,Crescent Elbow Autospell //CHECK Does this ignore defense? 2342,1,6,1,-1,0x20,0,5,1,no,0,0,0,weapon,3,0x0, SR_CRESCENTELBOW_AUTOSPELL,Crescent Elbow Autospell //CHECK Does this ignore defense?
2343,1:2:3:3:4:4:5:5:6:7,8,1,0,0,0,10,-7,yes,0,0,0,weapon,0,0x0, SR_GATEOFHELL,Gate of Hell //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire 2343,1:2:3:3:4:4:5:5:6:7,8,1,0,0,0,10,-7,yes,0,0,0,weapon,0,0x0, SR_GATEOFHELL,Gate of Hell //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire
2344,2,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, SR_GENTLETOUCH_QUIET,Gentle Touch - Quiet 2344,2,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, SR_GENTLETOUCH_QUIET,Gentle Touch - Quiet
2345,2,6,16,0,0x1,0,5,1,no,0,0,0,magic,0,0x0, SR_GENTLETOUCH_CURE,Gentle Touch - Cure //CHECK Its a healing skill. Guessing it has to be magic type? Healing isnt working. 2345,2,6,16,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_GENTLETOUCH_CURE,Gentle Touch - Cure
2346,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_ENERGYGAIN,Gentle Touch - Energy Gain 2346,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_ENERGYGAIN,Gentle Touch - Energy Gain
2347,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_CHANGE,Gentle Touch - Change 2347,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_CHANGE,Gentle Touch - Change
2348,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_REVITALIZE,Gentle Touch - Revitalize 2348,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_REVITALIZE,Gentle Touch - Revitalize
//More from Sura but not following ID order //More from Sura but not following ID order
2517,0,6,4,-1,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, SR_HOWLINGOFLION,Howling of Lion 2517,0,6,4,-1,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, SR_HOWLINGOFLION,Howling of Lion
2518,11,6,2,-1,0x2,2:2:3:3:4,5,1,no,0,0,0,weapon,0,0x0, SR_RIDEINLIGHTNING,Ride In Lightening 2518,11,6,2,-1,0x2,1:1:2:2:3,5,1,no,0,0,0,weapon,0,0x0, SR_RIDEINLIGHTNING,Ride In Lightening
//**** //****
// WA Wanderer // WA Wanderer
@ -1131,26 +1130,26 @@
2412,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, WM_LESSON,Lesson 2412,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, WM_LESSON,Lesson
2413,9,8,1,-1,0,0,5,-2:-2:-3:-3:-4,yes,0,0,0,magic,0,0x0, WM_METALICSOUND,Metallic Sound 2413,9,8,1,-1,0,0,5,-2:-2:-3:-3:-4,yes,0,0,0,magic,0,0x0, WM_METALICSOUND,Metallic Sound
2414,9,6,2,-1,0x3,1,5,1,yes,0,0x80,3,none,0,0x0, WM_REVERBERATION,Reverberation 2414,9,6,2,-1,0x3,1,5,1,yes,0,0x80,3,none,0,0x0, WM_REVERBERATION,Reverberation
2415,0,6,1,-1,0x6,1,5,1,no,0,0,0,weapon,0,0x0, WM_REVERBERATION_MELEE,Reverberation Melee 2415,0,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, WM_REVERBERATION_MELEE,Reverberation Melee
2416,0,6,1,0,0x6,1,5,1,no,0,0,0,magic,0,0x0, WM_REVERBERATION_MAGIC,Reverberation Magic 2416,0,6,1,-1,0,0,5,1,no,0,0,0,magic,0,0x0, WM_REVERBERATION_MAGIC,Reverberation Magic
2417,11,6,2,0,0x3,5,1,1,no,0,0,0,none,0,0x0, WM_DOMINION_IMPULSE,Dominion Impulse 2417,11,6,2,0,0x3,5,1,1,no,0,0,0,none,0,0x0, WM_DOMINION_IMPULSE,Dominion Impulse
2418,9,6,2,-1,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_SEVERE_RAINSTORM,Severe Rainstorm 2418,9,6,2,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_SEVERE_RAINSTORM,Severe Rainstorm
2419,9,6,2,0,0x3,1,5,1,yes,0,0x80,5,none,0,0x0, WM_POEMOFNETHERWORLD,Poem of The Netherworld //CHECK May need to recode too. 2419,9,6,2,0,0x3,1,5,1,yes,0,0x80,5,none,0,0x0, WM_POEMOFNETHERWORLD,Poem of The Netherworld //CHECK May need to recode too.
2420,0,6,4,0,0x2,2:3:4:5:6,5,1,yes,0,0,0,none,0,0x0, WM_VOICEOFSIREN,Voice of Siren 2420,0,6,4,0,0x2,2:3:4:5:6,5,1,yes,0,0,0,none,0,0x0, WM_VOICEOFSIREN,Voice of Siren
2421,7,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_DEADHILLHERE,Valley of Death 2421,7,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_DEADHILLHERE,Valley of Death
2422,7,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0,0,none,0,0x0, WM_LULLABY_DEEPSLEEP,Deep Sleep Lullaby 2422,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0,0,none,0,0x0, WM_LULLABY_DEEPSLEEP,Deep Sleep Lullaby
2423,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0,0,none,0,0x0, WM_SIRCLEOFNATURE,Circle of Nature's Sound 2423,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0,0,none,0,0x0, WM_SIRCLEOFNATURE,Circle of Nature's Sound
2424,9,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, WM_RANDOMIZESPELL,Improvised Song 2424,9,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, WM_RANDOMIZESPELL,Improvised Song
2425,9,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_GLOOMYDAY,Gloomy Day 2425,9,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_GLOOMYDAY,Gloomy Day
2426,9,6,2,0,0x2,2:3:3:4:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_GREAT_ECHO,Great Echo 2426,9,6,2,0,0x2,2:3:3:4:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_GREAT_ECHO,Great Echo
2427,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_SONG_OF_MANA,Song of Mana 2427,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_SONG_OF_MANA,Song of Mana
2428,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_DANCE_WITH_WUG,Dance With A Warg 2428,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_DANCE_WITH_WUG,Dance With A Warg
2429,9,6,1,0,0x2,2:2:3:3:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_SOUND_OF_DESTRUCTION,Sound of Destruction //CHECK Source shows its magic attack. Need to confirm before changing. 2429,9,6,1,0,0x42,4:4:5:5:6,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_SOUND_OF_DESTRUCTION,Sound of Destruction //CHECK Source shows its magic attack. Need to confirm before changing.
2430,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_SATURDAY_NIGHT_FEVER,Saturday Night Fever 2430,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_SATURDAY_NIGHT_FEVER,Saturday Night Fever
2431,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,magic,0,0x0, WM_LERADS_DEW,Lerad's Dew 2431,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,magic,0,0x0, WM_LERADS_DEW,Lerad's Dew
2432,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_MELODYOFSINK,Melody of Sink 2432,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_MELODYOFSINK,Melody of Sink
2433,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_BEYOND_OF_WARCRY,Warcry of Beyond 2433,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_BEYOND_OF_WARCRY,Warcry of Beyond
2434,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_UNLIMITED_HUMMING_VOICE,Unlimited Humming Voice 2434,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_UNLIMITED_HUMMING_VOICE,Unlimited Humming Voice
2516,11,6,1,-1,0x2,5,5,1,no,0,0,0,weapon,0,0x0, WM_SEVERE_RAINSTORM_MELEE,Severe Rainstorm Melee 2516,11,6,1,-1,0x2,5,5,1,no,0,0,0,weapon,0,0x0, WM_SEVERE_RAINSTORM_MELEE,Severe Rainstorm Melee
//**** //****
@ -1167,7 +1166,7 @@
2452,9,6,2,3,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_WARMER,Warmer 2452,9,6,2,3,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_WARMER,Warmer
2453,9,6,2,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_VACUUM_EXTREME,Vacuum Extreme 2453,9,6,2,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_VACUUM_EXTREME,Vacuum Extreme
2454,9,6,1,4,0x2,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_VARETYR_SPEAR,Varetyr Spear 2454,9,6,1,4,0x2,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_VARETYR_SPEAR,Varetyr Spear
2455,9,6,2,0,0x3,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_ARRULLO,Arrullo 2455,7:7:7:7:9,6,2,0,0x3,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_ARRULLO,Arrullo
2456,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, SO_EL_CONTROL,Spirit Control 2456,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, SO_EL_CONTROL,Spirit Control
2457,0,6,4,3,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AGNI,Summon Fire Spirit Agni 2457,0,6,4,3,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AGNI,Summon Fire Spirit Agni
2458,0,6,4,1,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AQUA,Summon Water Spirit Aqua 2458,0,6,4,1,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AQUA,Summon Water Spirit Aqua
@ -1194,16 +1193,16 @@
2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0, GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm. 2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0, GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm.
2482,11,6,16,0,0,0,5,1,yes,0,0,1,weapon,2,0x0, GN_WALLOFTHORN,Wall of Thorns 2482,11,6,16,0,0,0,5,1,yes,0,0,1,weapon,2,0x0, GN_WALLOFTHORN,Wall of Thorns
2483,11,6,2,0,0x3,4,10,1,yes,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED,Crazy Weed 2483,11,6,2,0,0x3,4,10,1,yes,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED,Crazy Weed
2484,0,6,2,2,0x2,3,10,1,no,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED_ATK,Crazy Weed Attack 2484,0,6,2,2,0x2,2,10,1,no,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED_ATK,Crazy Weed Attack
2485,9,6,2,3,0,0,5,1,yes,0,0,0,magic,0,0x0, GN_DEMONIC_FIRE,Demonic Fire 2485,9,6,2,3,0,0,5,1,yes,0,0,0,magic,0,0x0, GN_DEMONIC_FIRE,Demonic Fire
2486,9,6,2,0,0,0,5,1,yes,0,0,0,none,0,0x0, GN_FIRE_EXPANSION,Fire Expansion //CHECK FIX ME!!!! Level 1 is reducing the damage. Should increase it by 50% 2486,9,6,2,0,0,0,5,1,yes,0,0,0,none,0,0x0, GN_FIRE_EXPANSION,Fire Expansion //CHECK FIX ME!!!! Level 1 is reducing the damage. Should increase it by 50%
2487,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_SMOKE_POWDER,Fire Expansion Smoke Powder 2487,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_SMOKE_POWDER,Fire Expansion Smoke Powder
2488,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_TEAR_GAS,Fire Expansion Tear Gas 2488,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_TEAR_GAS,Fire Expansion Tear Gas
2489,11,6,1,0,0,0,10,1:2:3:4:5:6:7:8:9:10,no,0,0,0,weapon,0,0x0, GN_FIRE_EXPANSION_ACID,Fire Expansion Acid 2489,11,6,1,0,0,0,10,1:2:3:4:5:6:7:8:9:10,no,0,0,0,weapon,0,0x0, GN_FIRE_EXPANSION_ACID,Fire Expansion Acid
2490,9,6,2,0,0x3,1,5,1,yes,0,0x80,2:3:4:5:6,none,0,0x0, GN_HELLS_PLANT,Hell's Plant 2490,9,6,2,0,0x3,1,5,1,yes,0,0x80,2:3:4:5:6,none,0,0x0, GN_HELLS_PLANT,Hell's Plant
2491,0,6,1,0,0xC0,0,5,1,no,0,0,0,misc,0,0x0, GN_HELLS_PLANT_ATK,Hell's Plant Attack 2491,0,6,1,0,0x90,0,5,1,no,0,0,0,misc,0,0x0, GN_HELLS_PLANT_ATK,Hell's Plant Attack
2492,0,6,4,0,0x3,6:7:8:9:10,5,1,yes,0,0,0,none,0,0x0, GN_MANDRAGORA,Howling of Mandragora 2492,0,6,4,0,0x3,5:6:6:7:7,5,1,yes,0,0,0,none,0,0x0, GN_MANDRAGORA,Howling of Mandragora
2493,11,6,16,0,0x1,0,1,1,yes,0,0,0,none,0,0x0, GN_SLINGITEM,Sling Item 2493,11,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_SLINGITEM,Sling Item
2494,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_CHANGEMATERIAL,Change Material 2494,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_CHANGEMATERIAL,Change Material
2495,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MIX_COOKING,Mix Cooking 2495,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MIX_COOKING,Mix Cooking
2496,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MAKEBOMB,Create Bomb 2496,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MAKEBOMB,Create Bomb

View File

@ -598,14 +598,14 @@
2203,0,0,40:48:56:64:72,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FROSTMISTY#Frosty Misty# 2203,0,0,40:48:56:64:72,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FROSTMISTY#Frosty Misty#
2204,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_JACKFROST#Jack Frost# 2204,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_JACKFROST#Jack Frost#
2205,0,0,40:42:44:46:48,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_MARSHOFABYSS#Marsh of Abyss# 2205,0,0,40:42:44:46:48,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_MARSHOFABYSS#Marsh of Abyss#
2206,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_RECOGNIZEDSPELL#Recognized Spell# 2206,0,0,100:120:140:160:180,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_RECOGNIZEDSPELL#Recognized Spell#
2207,0,0,32:34:36:38:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_SIENNAEXECRATE#Sienna Execrate# 2207,0,0,32:34:36:38:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_SIENNAEXECRATE#Sienna Execrate#
2209,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_STASIS#Stasis# 2209,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_STASIS#Stasis#
2210,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_DRAINLIFE#Drain Life# 2210,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_DRAINLIFE#Drain Life#
2211,0,0,60:70:80:90:100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CRIMSONROCK#Crimson Rock# 2211,0,0,60:70:80:90:100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CRIMSONROCK#Crimson Rock#
2212,0,0,35:40:45:50:55,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_HELLINFERNO#Hell Inferno# 2212,0,0,35:40:45:50:55,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_HELLINFERNO#Hell Inferno#
2213,0,0,240:280:320:360:400,0,0,0,99,0,0,none,0,0,716,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_COMET#Comet# 2213,0,0,480:560:640:720:800,0,0,0,99,0,0,none,0,0,716,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_COMET#Comet#
2214,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING#Chain Lightning# 2214,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING#Chain Lightning#
2215,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING_ATK#Chain Lightning Attack# 2215,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING_ATK#Chain Lightning Attack#
2216,0,0,70:78:86:94:102,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_EARTHSTRAIN#Earth Strain# 2216,0,0,70:78:86:94:102,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_EARTHSTRAIN#Earth Strain#
@ -654,25 +654,25 @@
//**** //****
// RA Ranger // RA Ranger
2233,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,10,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ARROWSTORM#Arrow Storm# 2233,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,10,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ARROWSTORM#Arrow Storm#
2234,0,0,36:40:44:48:52,0,0,0,11,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FEARBREEZE#Fear Breeze# 2234,0,0,55:60:65:70:75,0,0,0,11,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FEARBREEZE#Fear Breeze#
2236,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_AIMEDBOLT#Aimed Bolt# //How many arrows does it require??? 2236,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_AIMEDBOLT#Aimed Bolt# //How many arrows does it require???
2237,0,0,15,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_DETONATOR#Detonator# 2237,0,0,15,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_DETONATOR#Detonator#
2238,0,0,35,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ELECTRICSHOCKER#Electric Shocker# 2238,0,0,35,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ELECTRICSHOCKER#Electric Shocker#
2239,0,0,20,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CLUSTERBOMB#Cluster Bomb# 2239,0,0,20,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CLUSTERBOMB#Cluster Bomb#
2240,0,0,5,0,0,0,99,0,0,none,0,0,6124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGMASTERY#Warg Mastery# 2240,0,0,5,0,0,0,99,0,0,none,0,0,6124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGMASTERY#Warg Mastery#
2241,0,0,20,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGRIDER#Warg Rider# 2241,0,0,2,0,0,0,99,0,0,ridingwarg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGRIDER#Warg Rider#
2242,0,0,40,0,0,0,99,0,0,move_enable,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGDASH#Warg Dash# 2242,0,0,4,0,0,0,99,0,0,move_enable,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGDASH#Warg Dash#
2243,0,0,20:22:24:26:28,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGSTRIKE#Warg Strike# 2243,0,0,20:22:24:26:28,0,0,0,99,0,0,ridingwarg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGSTRIKE#Warg Strike#
2244,0,0,42:44:46:48:50,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGBITE#Warg Bite# 2244,0,0,40:42:44:46:48,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGBITE#Warg Bite#
2246,0,0,12,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_SENSITIVEKEEN#Sensitive Keen# 2246,0,0,12,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_SENSITIVEKEEN#Sensitive Keen#
2247,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CAMOUFLAGE#Camouflage# 2247,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CAMOUFLAGE#Camouflage#
2249,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,990,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAGENTATRAP#Magenta Trap# 2249,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6360,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAGENTATRAP#Magenta Trap#
2250,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,991,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_COBALTTRAP#Cobalt Trap# 2250,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6361,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_COBALTTRAP#Cobalt Trap#
2251,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,993,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAIZETRAP#Maize Trap# 2251,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6363,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAIZETRAP#Maize Trap#
2252,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,992,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_VERDURETRAP#Verdure Trap# 2252,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6362,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_VERDURETRAP#Verdure Trap#
2253,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FIRINGTRAP#Firing Trap# 2253,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FIRINGTRAP#Firing Trap#
2254,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ICEBOUNDTRAP#Icebound Trap# 2254,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ICEBOUNDTRAP#Icebound Trap#
@ -680,35 +680,35 @@
// NC Mechanic // NC Mechanic
2256,0,0,3:6:9:12:15,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_BOOSTKNUCKLE#Boost Knuckle# 2256,0,0,3:6:9:12:15,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_BOOSTKNUCKLE#Boost Knuckle#
2257,0,0,50,0,0,0,99,0,0,mado,0,0,1549,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_PILEBUNKER#Pile Bunker# 2257,0,0,50,0,0,0,99,0,0,mado,0,0,1549,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_PILEBUNKER#Pile Bunker#
2258,0,0,2,0,0,0,99,0,0,mado,0,0,6145,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_VULCANARM#Vulcan Arm# 2258,0,0,2:4:6,0,0,0,99,0,0,mado,0,0,6145,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_VULCANARM#Vulcan Arm#
2259,0,0,20,0,0,0,99,0,0,mado,0,0,2139,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_FLAMELAUNCHER#Flame Launcher# 2259,0,0,20,0,0,0,99,0,0,mado,0,0,2139,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_FLAMELAUNCHER#Flame Launcher#
2260,0,0,20,0,0,0,99,0,0,mado,0,0,6147,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_COLDSLOWER#Cold Slower# 2260,0,0,20,0,0,0,99,0,0,mado,0,0,6146,1,6147,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_COLDSLOWER#Cold Slower#
2261,0,0,30:45:60,0,0,0,99,8,1,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ARMSCANNON#Arm Cannon# 2261,0,0,40:45:50,0,0,0,99,8,1,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ARMSCANNON#Arm Cannon#
2262,0,0,20:40:60,0,0,0,99,0,0,mado,0,0,6146,1,2800,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ACCELERATION#Acceleration# 2262,0,0,20:40:60,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2800 //NC_ACCELERATION#Acceleration#
2263,0,0,25,0,0,0,99,0,0,mado,0,0,6146,1,2801,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_HOVERING#Hovering# 2263,0,0,25,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2801 //NC_HOVERING#Hovering#
2264,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_F_SIDESLIDE#Front - Side Slide# 2264,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_F_SIDESLIDE#Front - Side Slide#
2265,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_B_SIDESLIDE#Back - Side Slide# 2265,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_B_SIDESLIDE#Back - Side Slide#
2267,0,0,200,0,0,0,99,0,0,mado,0,0,6146,5,2802,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_SELFDESTRUCTION#Self Destruction# 2267,0,0,1,0,0,0,99,0,0,mado,0,0,6146,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2802 //NC_SELFDESTRUCTION#Self Destruction#
2268,0,0,100,0,0,0,99,0,0,mado,0,0,994,1,997,1,996,1,995,1,6146,2,2803,0,0,0,0,0,0,0,0,0,0 //NC_SHAPESHIFT#Shape Shift# //CHECK Shouldnt the different stones all be in the same slot? 2268,0,0,100,0,0,0,99,0,0,mado,0,0,6360,1,6363,1,6362,1,6361,1,6146,2,0,0,0,0,0,0,0,0,0,0,2803 //NC_SHAPESHIFT#Shape Shift#
2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,2,2804,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_EMERGENCYCOOL#Emergency Cool# 2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2804 //NC_EMERGENCYCOOL#Emergency Cool#
2270,0,0,45,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_INFRAREDSCAN#Infrared Scan# 2270,0,0,45,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_INFRAREDSCAN#Infrared Scan#
2271,0,0,30,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ANALYZE#Analyze# 2271,0,0,30,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ANALYZE#Analyze#
2272,0,0,90,0,0,0,99,0,0,mado,0,0,6146,3,2805,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_MAGNETICFIELD#Magnetic Field# 2272,0,0,90,0,0,0,99,0,0,mado,0,0,2805,0,6146,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2805 //NC_MAGNETICFIELD#Magnetic Field#
2273,0,0,90,0,0,0,99,0,0,mado,0,0,6146,1,2806,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_NEUTRALBARRIER#Neutral Barrier# 2273,0,0,90,0,0,0,99,0,0,mado,0,0,2806,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2806 //NC_NEUTRALBARRIER#Neutral Barrier#
2274,0,0,100:150:200,0,0,0,99,0,0,mado,0,0,6146,2,2808,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_STEALTHFIELD#Stealth Field# 2274,0,0,100:150:200,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2808 //NC_STEALTHFIELD#Stealth Field#
2275,0,0,25:30:35:40:45,0,0,0,99,0,0,mado,0,0,2807,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_REPAIR#Repair# 2275,0,0,25:30:35:40:45,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2807 //NC_REPAIR#Repair#
2278,0,0,20:22:24:26:28,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXEBOOMERANG#Axe Boomerang# 2278,0,0,20:22:24:26:28,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXEBOOMERANG#Axe Boomerang#
2279,0,0,10:12:14:16:18,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_POWERSWING#Power Swing# 2279,0,0,20:22:24:26:28,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_POWERSWING#Power Swing#
2280,0,0,18:20:22:24:26,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXETORNADO#Axe Tornado# 2280,20:40:60:80:100,0,18:20:22:24:26,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXETORNADO#Axe Tornado#
2281,0,0,25:30:35:40:45,0,0,0,99,0,0,none,0,0,998,1,999,2,612,0,615,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_SILVERSNIPER#FAW - Silver Sniper# 2281,0,0,25:30:35:40:45,0,0,0,99,0,0,none,0,0,612,0,615,0,998,1,999,5,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_SILVERSNIPER#FAW - Silver Sniper#
2282,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,998,2,7054,1,612,0,615,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_MAGICDECOY#FAW - Magic Decoy# 2282,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,612,0,615,0,998,2,7054,1,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_MAGICDECOY#FAW - Magic Decoy#
2283,0,0,15,0,0,0,99,0,0,none,0,0,6186,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 2283,0,0,15,0,0,0,99,0,0,none,0,0,6186,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal#
//**** //****
// SC Shadow Chaser // SC Shadow Chaser
2284,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_FATALMENACE#Fatal Menace# 2284,0,0,20:25:30:35:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_FATALMENACE#Fatal Menace#
2285,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_REPRODUCE#Reproduce# 2285,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_REPRODUCE#Reproduce#
2286,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_AUTOSHADOWSPELL#Auto Shadow Spell# 2286,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_AUTOSHADOWSPELL#Auto Shadow Spell#
2287,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_SHADOWFORM#Shadow Form# 2287,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_SHADOWFORM#Shadow Form#
@ -736,21 +736,22 @@
2308,0,0,20:20:20:20:20:25:25:25:25:25,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANISHINGPOINT#Banishing Point# 2308,0,0,20:20:20:20:20:25:25:25:25:25,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANISHINGPOINT#Banishing Point#
2309,0,0,30:45:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_TRAMPLE#Trample# 2309,0,0,30:45:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_TRAMPLE#Trample#
2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press# 2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press#
2311,0,0,40:50:60:70:80,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage# 2311,0,0,60:80:100:120:140,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage#
2312,0,0,30,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack# 2312,0,0,50,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack#
2313,0,0,30,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_FORCEOFVANGUARD#Force of Vanguard# 2313,0,0,30,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_FORCEOFVANGUARD#Force of Vanguard#
2314,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAGEBURST#Rage Burst# 2314,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAGEBURST#Rage Burst#
2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell# 2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell#
2316,0,0,24:28:32:36:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EXEEDBREAK#Exceed Break# 2316,0,0,20:32:44:56:68,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EXEEDBREAK#Exceed Break#
2317,0,0,42:44:46:48:50,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_OVERBRAND#Over Brand# 2317,0,0,20:30:40:50:60,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_OVERBRAND#Over Brand#
2318,0,0,75:80:85:90:95,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PRESTIGE#Prestige# 2318,0,0,75:80:85:90:95,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PRESTIGE#Prestige#
2319,0,0,30:36:42:48:54,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANDING#Banding# 2319,0,0,30:36:42:48:54,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANDING#Banding#
2320,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_MOONSLASHER#Moon Slasher# 2320,0,0,20:24:28:32:36,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_MOONSLASHER#Moon Slasher#
2321,0,0,60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAYOFGENESIS#Ray of Genesis# 2321,0,0,60:65:70:75:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAYOFGENESIS#Ray of Genesis#
2322,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,523,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PIETY#Piety# 2322,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,523,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PIETY#Piety#
2323,0,0,52:60:68:76:84,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EARTHDRIVE#Earth Drive# 2323,0,0,52:60:68:76:84,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EARTHDRIVE#Earth Drive#
2324,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_HESPERUSLIT#Hesperus Lit# 2324,0,0,80:90:100:110:120,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_HESPERUSLIT#Hesperus Lit#
2325,0,0,100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_INSPIRATION#Inspiration# 2325,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_INSPIRATION#Inspiration#
//**** //****
// SR Sura // SR Sura
2326,0,0,3:4:5:6:7:8:9:10:11:12,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_DRAGONCOMBO#Dragon Combo# 2326,0,0,3:4:5:6:7:8:9:10:11:12,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_DRAGONCOMBO#Dragon Combo#
@ -759,7 +760,7 @@
2329,0,0,20:30:40:50:60,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_FALLENEMPIRE#Fallen Empire# 2329,0,0,20:30:40:50:60,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_FALLENEMPIRE#Fallen Empire#
2330,0,0,1:2:3:4:5:6:7:8:9:10,-12:-14:-16:-18:-20:-22:-24:-26:-28:-30,-6:-7:-8:-9:-10:-11:-12:-13:-14:-15,0,99,0,0,none,SC_EXPLOSIONSPIRITS,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_TIGERCANNON#Tiger Cannon# 2330,0,0,1:2:3:4:5:6:7:8:9:10,-12:-14:-16:-18:-20:-22:-24:-26:-28:-30,-6:-7:-8:-9:-10:-11:-12:-13:-14:-15,0,99,0,0,none,SC_EXPLOSIONSPIRITS,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_TIGERCANNON#Tiger Cannon#
2331,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HELLGATE#Hell Gate# 2331,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HELLGATE#Hell Gate#
2332,0,0,110:120:130:140:150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RAMPAGEBLASTER#Rampage Blaster# 2332,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RAMPAGEBLASTER#Rampage Blaster#
2333,0,0,80,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CRESCENTELBOW#Crescent Elbow# 2333,0,0,80,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CRESCENTELBOW#Crescent Elbow#
2334,0,0,40:60:80:100:120,-1:-2:-3:-4:-5,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CURSEDCIRCLE#Cursed Circle# 2334,0,0,40:60:80:100:120,-1:-2:-3:-4:-5,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CURSEDCIRCLE#Cursed Circle#
2335,0,0,80:70:60:50:40,-5:-4:-3:-2:-1,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_LIGHTNINGWALK#Lightning Walk# 2335,0,0,80:70:60:50:40,-5:-4:-3:-2:-1,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_LIGHTNINGWALK#Lightning Walk#
@ -777,8 +778,8 @@
2347,0,0,40:50:60:70:80,-2:-4:-6:-8:-10,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_CHANGE#Gentle Touch - Change# 2347,0,0,40:50:60:70:80,-2:-4:-6:-8:-10,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_CHANGE#Gentle Touch - Change#
2348,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_REVITALIZE#Gentle Touch - Revitalize# 2348,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_REVITALIZE#Gentle Touch - Revitalize#
//More from SR Sura (but not following ID order) //More from SR Sura (but not following ID order)
2517,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HOWLINGOFLION#Howling of Lion# 2517,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HOWLINGOFLION#Howling of Lion#
2518,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RIDEINLIGHTNING#Ride In Lightening# 2518,0,0,22:24:26:28:30,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RIDEINLIGHTNING#Ride In Lightening#
//**** //****
// WA Wanderer // WA Wanderer
@ -800,22 +801,22 @@
2416,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_REVERBERATION_MAGIC#Reverberation Magic# 2416,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_REVERBERATION_MAGIC#Reverberation Magic#
2417,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DOMINION_IMPULSE#Dominion Impulse# 2417,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DOMINION_IMPULSE#Dominion Impulse#
2418,0,0,80:90:100:110:120,0,0,0,11,1,20,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SEVERE_RAINSTORM#Severe Rainstorm# 2418,0,0,80:90:100:110:120,0,0,0,11,1,20,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SEVERE_RAINSTORM#Severe Rainstorm#
2419,0,0,12:16:20:24:28,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_POEMOFNETHERWORLD#Poem of Netherworld# 2419,0,0,12:16:20:24:28,0,0,0,13:14,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_POEMOFNETHERWORLD#Poem of Netherworld#
2420,0,0,48:56:64:72:80,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_VOICEOFSIREN#Voice of Siren# 2420,0,0,48:56:64:72:80,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_VOICEOFSIREN#Voice of Siren#
2421,0,0,50:53:56:59:62,0,0,0,99,0,0,none,0,0,6144,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DEADHILLHERE#Valley of Death# 2421,0,0,50:53:56:59:62,0,0,0,13:14,0,0,none,0,0,6144,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DEADHILLHERE#Valley of Death#
2422,0,0,80:90:100:110:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LULLABY_DEEPSLEEP#Deep Sleep Lullaby# 2422,0,0,80:90:100:110:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LULLABY_DEEPSLEEP#Deep Sleep Lullaby#
2423,0,0,42:46:50:54:58,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SIRCLEOFNATURE#Circle of Nature's Sound# 2423,0,0,42:46:50:54:58,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SIRCLEOFNATURE#Circle of Nature's Sound#
2424,0,0,40:45:50:55:60,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_RANDOMIZESPELL#Improvised Song# 2424,0,0,40:45:50:55:60,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_RANDOMIZESPELL#Improvised Song#
2425,0,0,60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MW_GLOOMYDAY#Gloomy Day# 2425,0,0,60:75:90:105:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MW_GLOOMYDAY#Gloomy Day#
2426,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_GREAT_ECHO#Great Echo# - Missing 1 Lozange. Need item ID. 2426,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_GREAT_ECHO#Great Echo# - Missing 1 Lozange. Need item ID.
2427,0,0,120:140:160:180:200,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SONG_OF_MANA#Song of Mana# 2427,0,0,120:140:160:180:200,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SONG_OF_MANA#Song of Mana#
2428,0,0,120:140:160:180:200,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DANCE_WITH_WUG#Dance With Warg# 2428,0,0,120:140:160:180:200,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DANCE_WITH_WUG#Dance With Warg#
2429,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SOUND_OF_DESTRUCTION#Sound of Destruction# 2429,0,0,50:60:70:80:90,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SOUND_OF_DESTRUCTION#Sound of Destruction#
2430,0,0,150:160:170:180:190,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SATURDAY_NIGHT_FEVER#Saturday Night Fever# 2430,0,0,150:160:170:180:190,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SATURDAY_NIGHT_FEVER#Saturday Night Fever#
2431,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LERADS_DEW#Lerad's Dew# 2431,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LERADS_DEW#Lerad's Dew#
2432,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_MELODYOFSINK#Melody of Sink# 2432,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_MELODYOFSINK#Melody of Sink#
2433,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_WARCRY_OF_BEYOND#Warcry of Beyond# 2433,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_WARCRY_OF_BEYOND#Warcry of Beyond#
2434,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_UNLIMITED_HUMMING_VOICE#Unlimited Humming Voice# 2434,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_UNLIMITED_HUMMING_VOICE#Unlimited Humming Voice#
//**** //****
// SO Sorcerer // SO Sorcerer
@ -883,7 +884,7 @@
//2543,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_RAY_OF_PROTECTION#Ray of Protection# //2543,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_RAY_OF_PROTECTION#Ray of Protection#
//2544,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //2544,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate#
//*** //****
// Rebellion // Rebellion
2551,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RL_GLITTERING_GREED#Flip The Coin Greed# 2551,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RL_GLITTERING_GREED#Flip The Coin Greed#
2552,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RL_RICHS_COIN#Rich's Coin# 2552,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RL_RICHS_COIN#Rich's Coin#

View File

@ -101,12 +101,13 @@
//706,0xfd, , 0, 0,1000,all, 0x000 //NPC_VENOMFOG //706,0xfd, , 0, 0,1000,all, 0x000 //NPC_VENOMFOG
2044,0xca, , 0, 2,1000,all, 0x018 //AB_EPICLESIS 2044,0xca, , 0, 2,3000,all, 0x018 //AB_EPICLESIS
2032,0xe1, , 2, 0,1000,enemy, 0x018 //GC_POISONSMOKE 2032,0xe1, , 2, 0,1000,enemy, 0x018 //GC_POISONSMOKE
2213,0x86, , 0, 9,1000,enemy, 0x018 //WL_COMET
2214,0x86, , 0, 5, 100,enemy, 0x080 //WL_CHAINLIGHTNING 2214,0x86, , 0, 5, 100,enemy, 0x080 //WL_CHAINLIGHTNING
2216,0xcb, , -1, 0, 150,enemy, 0x018 //WL_EARTHSTRAIN 2216,0xcb, , -1, 2,2000,enemy, 0x018 //WL_EARTHSTRAIN
2238,0xd8, , 0, 1,1000,enemy, 0x006 //RA_ELECTRICSHOCKER 2238,0xd8, , 0, 1,1000,enemy, 0x006 //RA_ELECTRICSHOCKER
2239,0xd9, , 0, 1,1000,enemy, 0x006 //RA_CLUSTERBOMB 2239,0xd9, , 0, 1,1000,enemy, 0x006 //RA_CLUSTERBOMB
@ -117,19 +118,20 @@
2253,0xd6, , 0, 1,1000,enemy, 0x002 //RA_FIRINGTRAP 2253,0xd6, , 0, 1,1000,enemy, 0x002 //RA_FIRINGTRAP
2254,0xd7, , 0, 1,1000,enemy, 0x002 //RA_ICEBOUNDTRAP 2254,0xd7, , 0, 1,1000,enemy, 0x002 //RA_ICEBOUNDTRAP
2273,0xe2, , 1, 0, 500,friend,0x000 //NC_NEUTRALBARRIER 2273,0xe2, , 2, 0, 500,friend,0x000 //NC_NEUTRALBARRIER
2274,0xe3, , 1, 0, 500,all, 0x000 //NC_STEALTHFIELD 2274,0xe3, , 2, 0, 500,all, 0x000 //NC_STEALTHFIELD
2299,0xcc, , 0, 1,1000,all, 0x006 //SC_MANHOLE 2299,0xcc, , 0, 1,1000,all, 0x006 //SC_MANHOLE
2300,0xcd, , 0, 1,1000,all, 0x006 //SC_DIMENSIONDOOR 2300,0xcd, , 0, 1,1000,all, 0x006 //SC_DIMENSIONDOOR
2301,0xce, , 2, 0, -1,all, 0x200E //SC_CHAOSPANIC 2301,0xce, , 0, 2, -1,all, 0x200E //SC_CHAOSPANIC
2302,0xcf, , 0, 2, -1,enemy, 0x002 //SC_MAELSTROM 2302,0xcf, , 0, 2, -1,enemy, 0x002 //SC_MAELSTROM
2303,0xd0, , 3, 0, -1,all, 0x2018 //SC_BLOODYLUST 2303,0xd0, , 0, 2, -1,all, 0x2018 //SC_BLOODYLUST
2304,0xd1, , 0, 2, -1,enemy, 0x000 //SC_FEINTBOMB 2304,0xd1, , 0, 2,1000,enemy, 0x018 //SC_FEINTBOMB
2317,0x86, , -1, 0, -1,enemy, 0x010 //LG_OVERBRAND
2319,0xec, , 0, 3,5000,all, 0x000 //LG_BANDING 2319,0xec, , 0, 3,5000,all, 0x000 //LG_BANDING
2414,0xda, , 0, 0,1000,enemy, 0x008 //WM_REVERBERATION 2414,0xda, , 0, 1,1000,enemy, 0x008 //WM_REVERBERATION
2418,0xdb, , 0, 5, 300,enemy, 0x800 //WM_SEVERE_RAINSTORM 2418,0xdb, , 0, 5, 300,enemy, 0x800 //WM_SEVERE_RAINSTORM
2419,0xde, , 0, 1,1000,all, 0x014 //WM_POEMOFNETHERWORLD 2419,0xde, , 0, 1,1000,all, 0x014 //WM_POEMOFNETHERWORLD
@ -138,20 +140,20 @@
2446,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_EARTHGRAVE 2446,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_EARTHGRAVE
2447,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_DIAMONDDUST 2447,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_DIAMONDDUST
2449,0xdf, , 0, 3:3:4:4:5,500,enemy, 0x018 //SO_PSYCHIC_WAVE 2449,0xdf, , 0, 3:3:4:4:5,500,enemy, 0x018 //SO_PSYCHIC_WAVE
2450,0xe0, , 0, 3, 500,enemy, 0x010 //SO_CLOUD_KILL 2450,0xe0, , 3, 0, 500,enemy, 0x010 //SO_CLOUD_KILL
2452,0xe4, , 0, 3,3000,all, 0x010 //SO_WARMER 2452,0xe4, , 0, 3,3000,all, 0x010 //SO_WARMER
2453,0xeb, , 0, 1:1:2:2:3,1000,enemy,0x010 //SO_VACUUM_EXTREME 2453,0xeb, , 0, 1:1:2:2:3,500,enemy,0x010 //SO_VACUUM_EXTREME
2465,0xf1, , 0, 1,1000,all, 0x010 //SO_FIRE_INSIGNIA 2465,0xf1, , 0, 1,1000,all, 0x010 //SO_FIRE_INSIGNIA
2466,0xf2, , 0, 1,1000,all, 0x010 //SO_WATER_INSIGNIA 2466,0xf2, , 0, 1,1000,all, 0x010 //SO_WATER_INSIGNIA
2467,0xf3, , 0, 1,1000,all, 0x010 //SO_WIND_INSIGNIA 2467,0xf3, , 0, 1,1000,all, 0x010 //SO_WIND_INSIGNIA
2468,0xf4, , 0, 1,1000,all, 0x010 //SO_EARTH_INSIGNIA 2468,0xf4, , 0, 1,1000,all, 0x010 //SO_EARTH_INSIGNIA
2479,0xe5, , 0, 1,1000,enemy, 0x006 //GN_THORNS_TRAP 2479,0xe5, , 0, 1,1000,enemy, 0x006 //GN_THORNS_TRAP
2482,0xe6,0x7f, -1, 1, -1,all, 0x000 //GN_WALLOFTHORN 2482,0xe6,0x7f, -1, 1, 100,all, 0x000 //GN_WALLOFTHORN
2484,0x86, , 0, 1, 100,enemy, 0x080 //GN_CRAZYWEED_ATK 2484,0x86, , 0, 1, 100,enemy, 0x080 //GN_CRAZYWEED_ATK
2485,0xe7, , 0, 3,1000,enemy, 0x098 //GN_DEMONIC_FIRE 2485,0xe7, , 0, 2,2000,enemy, 0x098 //GN_DEMONIC_FIRE
2487,0xe8, , 0, 3,1000,enemy, 0x000 //GN_FIRE_EXPANSION_SMOKE_POWDER 2487,0xe8, , 0, 2, 500,enemy, 0x000 //GN_FIRE_EXPANSION_SMOKE_POWDER
2488,0xe9, , 0, 3,1000,enemy, 0x000 //GN_FIRE_EXPANSION_TEAR_GAS 2488,0xe9, , 0, 2, 500,enemy, 0x000 //GN_FIRE_EXPANSION_TEAR_GAS
2490,0xea, , 0, 1,1000,enemy, 0x002 //GN_HELLS_PLANT 2490,0xea, , 0, 1,1000,enemy, 0x002 //GN_HELLS_PLANT
2555,0x104, , 0, 1:2:2:3:3,500,enemy,0x006 //RL_B_TRAP 2555,0x104, , 0, 1:2:2:3:3,500,enemy,0x006 //RL_B_TRAP

View File

@ -5859,7 +5859,7 @@
12380,Desert_Wolf_Babe_Scroll,Job Change Flute,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ mercenary_create 2034,1800000; },{},{} 12380,Desert_Wolf_Babe_Scroll,Job Change Flute,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ mercenary_create 2034,1800000; },{},{}
12381,ValkyrieA_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; } },{},{} 12381,ValkyrieA_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; } },{},{}
12382,ValkyrieB_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; } },{},{} 12382,ValkyrieB_Scroll,Ancient Languages Scroll,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; } },{},{}
12383,Vulcan_Bullet_Magazine,Vulcan Bullet Magazine,2,11000,,500,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12383,Vulcan_Bullet_Magazine,Vulcan Bullet Magazine,2,11000,,500,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 6145,1000; },{},{}
12384,Rainbow_Ruby_Water,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } },{},{} 12384,Rainbow_Ruby_Water,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } },{},{}
12385,Rainbow_Ruby_Fire,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } },{},{} 12385,Rainbow_Ruby_Fire,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } },{},{}
12386,Rainbow_Ruby_Wind,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } },{},{} 12386,Rainbow_Ruby_Wind,Rainbow Ruby,11,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } },{},{}
@ -5868,9 +5868,9 @@
12389,Runstone_Storm,Pertz Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } },{},{} 12389,Runstone_Storm,Pertz Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } },{},{}
12390,Runstone_Millennium,Verkana Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } },{},{} 12390,Runstone_Millennium,Verkana Runestone For Apprentice,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } },{},{}
12391,Lucky_Egg_C,Lucky Egg C,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Lucky_Egg_C); },{},{} 12391,Lucky_Egg_C,Lucky Egg C,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Lucky_Egg_C); },{},{}
12392,Repair_A,Repair A,0,220,,70,,,,,0x00000400,56,2,,,,,,{/*madoheal rand(200,300),0; */},{},{} 12392,Repair_A,Repair A,2,220,,100,,,,,0x00000400,56,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(200,300),0; } },{},{}
12393,Repair_B,Repair B,0,500,,70,,,,,0x00000400,56,2,,,,,,{/*madoheal rand(300,400),0; */},{},{} 12393,Repair_B,Repair B,2,500,,140,,,,,0x00000400,56,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(300,400),0; } },{},{}
12394,Repair_C,Repair C,0,1100,,70,,,,,0x00000400,56,2,,,,,,{/*madoheal rand(400,500),0; */},{},{} 12394,Repair_C,Repair C,2,1100,,180,,,,,0x00000400,56,2,,,,,,{ if ( checkmadogear() ) { itemheal rand(400,500),0; } },{},{}
12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ pet 1519; },{},{} 12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ pet 1519; },{},{}
12396,Fools_Day_Box,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10; },{},{} 12396,Fools_Day_Box,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10; },{},{}
12397,Fools_Day_Box2,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196; },{},{} 12397,Fools_Day_Box2,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196; },{},{}
@ -5893,11 +5893,11 @@
12414,Guarana_Candy,Guarana Candy,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0; },{},{} 12414,Guarana_Candy,Guarana Candy,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0; },{},{}
12415,Siege_Teleport_Scroll2,Siege Teleport Scroll Silver,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12415,Siege_Teleport_Scroll2,Siege Teleport Scroll Silver,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
12416,Lucky_Egg_C3,Lucky Egg C3,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Lucky_Egg_C3); },{},{} 12416,Lucky_Egg_C3,Lucky Egg C3,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Lucky_Egg_C3); },{},{}
12417,Boost500,Boost500,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12417,Boost500,Boost500,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_BOOST500,500000,10; },{},{}
12418,Full_SwingK,Full SwingK,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12418,Full_SwingK,Full SwingK,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_FULL_SWING_K,500000,50; },{},{}
12419,Mana_Plus,Mana Plus,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12419,Mana_Plus,Mana Plus,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_MANA_PLUS,500000,50; },{},{}
12420,Stamina_Up_M,Stamina Up M,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{} 12420,Stamina_Up_M,Stamina Up M,2,100,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_MUSTLE_M,500000,5; },{},{}
12421,Falmons_F,Falmons F,3,10,,10,,,,,,,,,,,,,{},{},{} 12421,Falmons_F,Falmons F,3,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_LIFE_FORCE_F,500000,5; },{},{}
12422,HP_Increase_Potion_(Small),HP Increase Potion (Small),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0; },{},{} 12422,HP_Increase_Potion_(Small),HP Increase Potion (Small),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0; },{},{}
12423,HP_Increase_Potion_(Medium),HP Increase Potion (Medium),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0; },{},{} 12423,HP_Increase_Potion_(Medium),HP Increase Potion (Medium),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0; },{},{}
12424,HP_Increase_Potion_(Large),HP Increase Potion (Large),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0; },{},{} 12424,HP_Increase_Potion_(Large),HP Increase Potion (Large),0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0; },{},{}

View File

@ -1082,14 +1082,12 @@
2005,0,0,0,15000,0,2000,-1 2005,0,0,0,15000,0,2000,-1
//-- RK_IGNITIONBREAK //-- RK_IGNITIONBREAK
2006,1000,0,0,0,0,2000,-1 2006,1000,0,0,0,0,2000,-1
//-- RK_DRAGONBREATH //-- RK_DRAGONBREATH
2008,0:0:0:1000:1000:1000:1500:1500:2000:2000,2000,0,10000,0,0,500 2008,0:0:0:1000:1000:1000:1500:1500:2000:2000,2000,0,10000,0,0,500
//-- RK_DRAGONHOWLING //-- RK_DRAGONHOWLING
2009,0,0,0,15000,0,10000,-1 2009,0,0,0,15000,0,10000,-1
//-- RK_MILLENNIUMSHIELD //-- RK_MILLENNIUMSHIELD
2011,0,1000,0,180000,0,60000,-1 2011,0,1000,0,180000,1000,60000,-1
//-- RK_CRUSHSTRIKE //-- RK_CRUSHSTRIKE
2012,0,0,0,30000,0,30000,1000 2012,0,0,0,30000,0,30000,1000
//-- RK_REFRESH //-- RK_REFRESH
@ -1119,7 +1117,6 @@
2022,0,2500:2000:1500:1000:500,0,0,0,0,-1 2022,0,2500:2000:1500:1000:500,0,0,0,0,-1
//-- GC_DARKILLUSION //-- GC_DARKILLUSION
2023,0,1500,0,0,0,0,-1 2023,0,1500,0,0,0,0,-1
//-- GC_CREATENEWPOISON //-- GC_CREATENEWPOISON
2025,0,500,0,0,0,0,-1 2025,0,500,0,0,0,0,-1
//-- GC_POISONINGWEAPON //-- GC_POISONINGWEAPON
@ -1129,11 +1126,11 @@
//-- GC_COUNTERSLASH //-- GC_COUNTERSLASH
2029,0,2000,0,0,0,0,-1 2029,0,2000,0,0,0,0,-1
//-- GC_WEAPONCRUSH //-- GC_WEAPONCRUSH
2030,0,1000,0,60000,0,0,-1 2030,0,1000,0,75000:90000:105000:120000:135000,0,0,-1
//-- GC_VENOMPRESSURE //-- GC_VENOMPRESSURE
2031,0,1000,0,0,0,0,-1 2031,0,1000,0,0,0,0,-1
//-- GC_POISONSMOKE //-- GC_POISONSMOKE
2032,0,2000,0,6000:8000:10000:12000:14000,0,0,2000 2032,0,2000,0,10000:12000:14000:16000:18000,0,0,2000
//-- GC_CLOAKINGEXCEED //-- GC_CLOAKINGEXCEED
2033,0,2000,0,0,0,0,-1 2033,0,2000,0,0,0,0,-1
//-- GC_PHANTOMMENACE //-- GC_PHANTOMMENACE
@ -1171,7 +1168,6 @@
2047,1000,0,0,60000,0,3000,-1 2047,1000,0,0,60000,0,3000,-1
//-- AB_LAUDARAMUS //-- AB_LAUDARAMUS
2048,1000,0,0,60000,0,3000,-1 2048,1000,0,0,60000,0,3000,-1
//-- AB_RENOVATIO //-- AB_RENOVATIO
2050,3000,0,0,90000,0,0,2000 2050,3000,0,0,90000,0,0,2000
//-- AB_HIGHNESSHEAL //-- AB_HIGHNESSHEAL
@ -1182,7 +1178,6 @@
2053,1000,0,0,150000:180000:210000:240000:270000,0,0,1000 2053,1000,0,0,150000:180000:210000:240000:270000,0,0,1000
//-- AB_DUPLELIGHT //-- AB_DUPLELIGHT
2054,2000,1000,0,90000:120000:150000:180000:210000:240000:270000:300000:330000:360000,0,0,2000 2054,2000,1000,0,90000:120000:150000:180000:210000:240000:270000:300000:330000:360000,0,0,2000
//-- AB_SILENTIUM //-- AB_SILENTIUM
2057,4000,0,0,20000:30000:40000:50000:60000,0,15000,-1 2057,4000,0,0,20000:30000:40000:50000:60000,0,15000,-1
//-- AB_OFFERTORIUM //-- AB_OFFERTORIUM
@ -1204,7 +1199,6 @@
2206,1000,1000,0,60000:90000:120000:150000:180000,0,50000:80000:110000:140000:170000,1000 2206,1000,1000,0,60000:90000:120000:150000:180000,0,50000:80000:110000:140000:170000,1000
//-- WL_SIENNAEXECRATE //-- WL_SIENNAEXECRATE
2207,2000,2000,0,10000:12000:14000:16000:18000,0,0,-1 2207,2000,2000,0,10000:12000:14000:16000:18000,0,0,-1
//-- WL_STASIS //-- WL_STASIS
2209,3000,1000,0,10000:15000:20000:25000:30000,0,300000,1000 2209,3000,1000,0,10000:15000:20000:25000:30000,0,300000,1000
//-- WL_DRAINLIFE //-- WL_DRAINLIFE
@ -1217,12 +1211,10 @@
2213,10000:11000:12000:13000:14000,0,0,15000,0,60000,1000:1500:2000:2500:3000 2213,10000:11000:12000:13000:14000,0,0,15000,0,60000,1000:1500:2000:2500:3000
//-- WL_CHAINLIGHTNING //-- WL_CHAINLIGHTNING
2214,3500:4000:4500:5000:5500,0,0,100,0,3000,1000 2214,3500:4000:4500:5000:5500,0,0,100,0,3000,1000
//-- WL_EARTHSTRAIN //-- WL_EARTHSTRAIN
2216,2000:3000:4000:5000:6000,1000,0,150,75000:90000:105000:120000:135000,10000,2000 2216,2000:3000:4000:5000:6000,1000,0,150,75000:90000:105000:120000:135000,10000,2000
//-- WL_TETRAVORTEX //-- WL_TETRAVORTEX
2217,5000:6000:7000:8000:9000,2000,0,20000,0,15000,2000 2217,5000:6000:7000:8000:9000,2000,0,20000,0,15000,2000
//-- WL_SUMMONFB //-- WL_SUMMONFB
2222,2000,0,0,120000:160000:200000:240000:280000,0,0,-1 2222,2000,0,0,120000:160000:200000:240000:280000,0,0,-1
//-- WL_SUMMONBL //-- WL_SUMMONBL
@ -1231,7 +1223,6 @@
2224,2000,0,0,120000:160000:200000:240000:280000,0,0,-1 2224,2000,0,0,120000:160000:200000:240000:280000,0,0,-1
//-- WL_SUMMONSTONE //-- WL_SUMMONSTONE
2229,2000,0,0,120000:160000:200000:240000:280000,0,0,-1 2229,2000,0,0,120000:160000:200000:240000:280000,0,0,-1
//-- WL_READING_SB //-- WL_READING_SB
2231,5000,500,0,0,0,0,1000 2231,5000,500,0,0,0,0,1000
//-- WL_TELEKINESIS_INTENSE //-- WL_TELEKINESIS_INTENSE
@ -1243,28 +1234,24 @@
2233,2000:2200:2400:2600:2800:3000:3200:3400:3600:3800,0,0,0,0,5000:4800:4600:4400:4200:4000:3800:3600:3400:3200,-1 2233,2000:2200:2400:2600:2800:3000:3200:3400:3600:3800,0,0,0,0,5000:4800:4600:4400:4200:4000:3800:3600:3400:3200,-1
//-- RA_FEARBREEZE //-- RA_FEARBREEZE
2234,2000,0,0,60000:90000:120000:150000:180000,0,0,0 2234,2000,0,0,60000:90000:120000:150000:180000,0,0,0
//-- RA_AIMEDBOLT //-- RA_AIMEDBOLT
2236,4000,1000,0,0,0,0,500 2236,4000,1000,0,0,0,0,500
//-- RA_DETONATOR //-- RA_DETONATOR
2237,0,0,0,1000,0,0,-1 2237,0,0,0,1000,0,0,-1
//-- RA_ELECTRICSHOCKER //-- RA_ELECTRICSHOCKER
2238,0,0,0,15000,20000:22000:24000:26000,0,-1 2238,0,0,0,15000,20000:22000:24000:26000:28000,0,-1
//-- RA_CLUSTERBOMB //-- RA_CLUSTERBOMB
2239,0,0,0,15000,0,0,-1 2239,0,0,0,15000,0,0,-1
//-- RA_WUGMASTERY //-- RA_WUGMASTERY
2240,0,1000,0,0,0,0,-1 2240,0,1000,0,0,0,0,-1
//-- RA_WUGRIDER //-- RA_WUGRIDER
2241,0,500,0,0,0,0,-1 2241,0,500,0,0,0,0,-1
//-- RA_WUGBITE //-- RA_WUGBITE
2244,0,2000,0,1000:2000:3000:4000:5000,0,4000:6000:8000:10000:12000,-1 2244,0,2000,0,1000:2000:3000:4000:5000,0,4000:6000:8000:10000:12000,-1
//-- RA_SENSITIVEKEEN //-- RA_SENSITIVEKEEN
2246,0,3000,0,0,0,0,-1 2246,0,3000,0,0,0,0,-1
//-- RA_CAMOUFLAGE //-- RA_CAMOUFLAGE
2247,0,0,0,10000,0,0,-1 2247,0,0,0,10000,0,0,-1
//-- RA_MAGENTATRAP //-- RA_MAGENTATRAP
2249,0,2000,0,15000,10000,0,-1 2249,0,2000,0,15000,10000,0,-1
//-- RA_COBALTTRAP //-- RA_COBALTTRAP
@ -1274,7 +1261,7 @@
//-- RA_VERDURETRAP //-- RA_VERDURETRAP
2252,0,2000,0,15000,10000,0,-1 2252,0,2000,0,15000,10000,0,-1
//-- RA_FIRINGTRAP //-- RA_FIRINGTRAP
2253,0,0,0,20000,15000,0,-1 2253,0,0,0,15000,15000,0,-1
//-- RA_ICEBOUNDTRAP //-- RA_ICEBOUNDTRAP
2254,0,0,0,20000,15000,0,-1 2254,0,0,0,20000,15000,0,-1
//-- RA_UNLIMIT //-- RA_UNLIMIT
@ -1289,20 +1276,19 @@
//-- NC_VULCANARM //-- NC_VULCANARM
2258,0,300:200:100,0,0,0,0,-1 2258,0,300:200:100,0,0,0,0,-1
//-- NC_FLAMELAUNCHER //-- NC_FLAMELAUNCHER
2259,1000:1500:2000,1500:1000:500,0,7000:14000:21000,0,0,500 2259,500:1000:1500,1500:1000:500,0,7000:14000:21000,0,0,500
//-- NC_COLDSLOWER //-- NC_COLDSLOWER
2260,1000,1000:2000:3000,0,7000:14000:21000,0,0,-1 2260,1000,1000:2000:3000,0,7000:14000:21000,0,0,-1
// -- NC_ARMSCANNON // -- NC_ARMSCANNON
2261,1400:1600:1800,500:1000:2000,0,0,0,0,600:400:200 2261,1400:1600:1800,500:1000:2000,0,0,0,0,600:400:200
//-- NC_ACCELERATION //-- NC_ACCELERATION
2262,0,0,0,30000:60000:90000,0,0,-1 2262,0,0,0,60000:90000:120000,0,0,-1
//-- NC_HOVERING //-- NC_HOVERING
2263,0,0,0,90000,0,0,-1 2263,0,0,0,90000,0,0,-1
//-- NC_F_SIDESLIDE //-- NC_F_SIDESLIDE
2264,0,500,0,0,0,0,-1 2264,0,500,0,0,0,0,-1
//-- NC_B_SIDESLIDE //-- NC_B_SIDESLIDE
2265,0,500,0,0,0,0,-1 2265,0,500,0,0,0,0,-1
//-- NC_SELFDESTRUCTION //-- NC_SELFDESTRUCTION
2267,2000:1500:1000,0,0,0,0,300000,500 2267,2000:1500:1000,0,0,0,0,300000,500
//-- NC_SHAPESHIFT //-- NC_SHAPESHIFT
@ -1314,14 +1300,13 @@
//-- NC_ANALYZE //-- NC_ANALYZE
2271,0,1000,0,20000,0,0,-1 2271,0,1000,0,20000,0,0,-1
//-- NC_MAGNETICFIELD //-- NC_MAGNETICFIELD
2272,500:1000:1500,0,0,15000,0,20000:15000:10000,-1 2272,0,0,0,4000:6000:8000,0,20000:15000:10000,-1
//-- NC_NEUTRALBARRIER //-- NC_NEUTRALBARRIER
2273,0,0,0,30000:45000:60000,0,20000:15000:10000,500:1000:1500 2273,0,0,0,30000:45000:60000,0,20000:15000:10000,-1
//-- NC_STEALTHFIELD //-- NC_STEALTHFIELD
2274,0,0,0,15000:20000:25000,0,20000:15000:10000,500:1000:1500 2274,0,0,0,15000:20000:25000,0,20000:15000:10000,-1
//-- NC_REPAIR //-- NC_REPAIR
2275,200:300:400:500:600,1000,0,0,0,0,-1 2275,200:300:400:500:600,1000,0,0,0,0,-1
//-- NC_AXEBOOMERANG //-- NC_AXEBOOMERANG
2278,0,0,0,0,0,5000:4500:4000:3500:3000,-1 2278,0,0,0,0,0,5000:4500:4000:3500:3000,-1
//-- NC_POWERSWING //-- NC_POWERSWING
@ -1342,7 +1327,7 @@
//-- SC_FATALMENACE //-- SC_FATALMENACE
2284,0,500,0,0,0,0,-1 2284,0,500,0,0,0,0,-1
//-- SC_REPRODUCE //-- SC_REPRODUCE
2285,0,1000,0,60000,0,0,-1 2285,0,1000,0,300000,0,0,-1
//-- SC_AUTOSHADOWSPELL //-- SC_AUTOSHADOWSPELL
2286,4000:3600:3200:2800:2400:2000:1600:1200:800:400,0,0,60000:80000:100000:120000:140000:160000:180000:200000:220000:300000,0,0,2000 2286,4000:3600:3200:2800:2400:2000:1600:1200:800:400,0,0,60000:80000:100000:120000:140000:160000:180000:200000:220000:300000,0,0,2000
//-- SC_SHADOWFORM //-- SC_SHADOWFORM
@ -1388,7 +1373,6 @@
//==== Royal Guard skills ================== //==== Royal Guard skills ==================
//-- LG_CANNONSPEAR //-- LG_CANNONSPEAR
2307,0,0,0,0,0,2000,-1 2307,0,0,0,0,0,2000,-1
//-- LG_TRAMPLE //-- LG_TRAMPLE
2309,0,0,0,0,0,1000,-1 2309,0,0,0,0,0,1000,-1
//-- LG_SHIELDPRESS //-- LG_SHIELDPRESS
@ -1429,7 +1413,7 @@
//===== Sura Skills ======================== //===== Sura Skills ========================
//-- SR_DRAGONCOMBO //-- SR_DRAGONCOMBO
2326,0,0,0,3000,0,0,-1 2326,0,0,0,5000,0,0,-1
//-- SR_SKYNETBLOW //-- SR_SKYNETBLOW
2327,0,500,0,0,0,0,-1 2327,0,500,0,0,0,0,-1
//-- SR_EARTHSHAKER //-- SR_EARTHSHAKER
@ -1438,7 +1422,6 @@
2329,0,0,0,500:1000:1500:2000:2500,0,0,-1 2329,0,0,0,500:1000:1500:2000:2500,0,0,-1
//-- SR_TIGERCANNON //-- SR_TIGERCANNON
2330,1100:1200:1300:1400:1500:1600:1700:1800:1900:2000,1000,0,0,0,5000,-1 2330,1100:1200:1300:1400:1500:1600:1700:1800:1900:2000,1000,0,0,0,5000,-1
//-- SR_RAMPAGEBLASTER //-- SR_RAMPAGEBLASTER
2332,0,1000,0,0,0,10000,-1 2332,0,1000,0,0,0,10000,-1
//-- SR_CRESCENTELBOW //-- SR_CRESCENTELBOW
@ -1453,12 +1436,10 @@
2337,1000,500,0,0,0,3000,-1 2337,1000,500,0,0,0,3000,-1
//-- SR_RAISINGDRAGON //-- SR_RAISINGDRAGON
2338,0,1000,0,30000:45000:60000:75000:90000:105000:120000:135000:150000:165000,0,30000,-1 2338,0,1000,0,30000:45000:60000:75000:90000:105000:120000:135000:150000:165000,0,30000,-1
//-- SR_ASSIMILATEPOWER //-- SR_ASSIMILATEPOWER
2340,0,1000,0,0,0,5000,-1 2340,0,1000,0,0,0,5000,-1
//-- SR_POWERVELOCITY //-- SR_POWERVELOCITY
2341,1500,0,0,0,0,0,500 2341,1500,0,0,0,0,0,500
//-- SR_GATEOFHELL //-- SR_GATEOFHELL
2343,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,100:200:300:400:500:600:700:800:900:1000,0,0,0,0,-1 2343,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,100:200:300:400:500:600:700:800:900:1000,0,0,0,0,-1
//-- SR_GENTLETOUCH_QUIET //-- SR_GENTLETOUCH_QUIET
@ -1498,11 +1479,10 @@
2413,1000:1500:2000:2500:3000,1000,0,0,0,2000:2500:3000:3500:4000,-1 2413,1000:1500:2000:2500:3000,1000,0,0,0,2000:2500:3000:3500:4000,-1
//-- WM_REVERBERATION //-- WM_REVERBERATION
2414,1100:1200:1300:1400:1500,1000,0,9000:10000:11000:12000:13000,0,0,-1 2414,1100:1200:1300:1400:1500,1000,0,9000:10000:11000:12000:13000,0,0,-1
//-- WM_DOMINION_IMPULSE //-- WM_DOMINION_IMPULSE
2417,0,1000,0,0,0,0,-1 2417,0,1000,0,0,0,0,-1
//-- WM_SEVERE_RAINSTORM //-- WM_SEVERE_RAINSTORM
2418,1000:1500:2000:2500:3000,1000,0,900:1500:2100:2700:3000,0,5000:5500:6000:6500:7000,500 2418,1500:2000:2500:3000:3500,1000,0,900:1500:2100:2700:3000,0,5000:5500:6000:6500:7000,500
//-- WM_POEMOFNETHERWORLD //-- WM_POEMOFNETHERWORLD
2419,3000,0,0,9000:11000:13000:15000:17000,8000:10000:12000:14000:16000,0,-1 2419,3000,0,0,9000:11000:13000:15000:17000,8000:10000:12000:14000:16000,0,-1
//-- WM_VOICEOFSIREN //-- WM_VOICEOFSIREN
@ -1524,13 +1504,13 @@
//-- WM_DANCE_WITH_WUG //-- WM_DANCE_WITH_WUG
2428,1500:2000:2500:3000:3500,1000,0,30000:60000:90000:120000:150000,0,90000,500 2428,1500:2000:2500:3000:3500,1000,0,30000:60000:90000:120000:150000,0,90000,500
//-- WM_SOUND_OF_DESTRUCTION //-- WM_SOUND_OF_DESTRUCTION
2429,0:500:1000:1500:2000,1000,0,0,0,20000,500 2429,0:500:1000:1500:2000,1000,0,0,0,6000:7000:8000:9000:10000,500
//-- WM_SATURDAY_NIGHT_FEVER //-- WM_SATURDAY_NIGHT_FEVER
2430,1000:2000:3000:4000:5000,1000,0,10000:15000:20000:25000:30000,10000:8000:6000:4000:2000,180000,1000 2430,1000:2000:3000:4000:5000,1000,0,10000:15000:20000:25000:30000,10000:8000:6000:4000:2000,180000,1000
//-- WM_LERADS_DEW //-- WM_LERADS_DEW
2431,1000,1000,0,20000:30000:40000:50000:60000,0,180000,500 2431,1000,1000,0,20000:30000:40000:50000:60000,0,180000,500
//-- WM_MELODYOFSINK //-- WM_MELODYOFSINK
2432,100,1000,0,20000:30000:40000:50000:60000,0,180000,500 2432,1000,1000,0,20000:30000:40000:50000:60000,0,180000,500
//-- WM_BEYOND_OF_WARCRY //-- WM_BEYOND_OF_WARCRY
2433,1000,1000,0,20000:30000:40000:50000:60000,0,180000,500 2433,1000,1000,0,20000:30000:40000:50000:60000,0,180000,500
//-- WM_UNLIMITED_HUMMING_VOICE //-- WM_UNLIMITED_HUMMING_VOICE
@ -1580,7 +1560,6 @@
2461,0,0,0,0,0,5000,0 2461,0,0,0,0,0,5000,0
//-- SO_EL_ANALYSIS //-- SO_EL_ANALYSIS
2462,0,0,0,0,0,0,2000 2462,0,0,0,0,0,0,2000
//-- SO_EL_CURE //-- SO_EL_CURE
2464,2000,1000,0,0,0,0,-1 2464,2000,1000,0,0,0,0,-1
//-- SO_FIRE_INSIGNIA //-- SO_FIRE_INSIGNIA
@ -1614,16 +1593,14 @@
2483,3000:3500:4000:4500:5000:5500:6000:6500:7000:7500,500,0,0,0,5000,-1 2483,3000:3500:4000:4500:5000:5500:6000:6500:7000:7500,500,0,0,0,5000,-1
//-- GN_CRAZYWEED_ATK //-- GN_CRAZYWEED_ATK
2484,0,0,0,100,0,0,-1 2484,0,0,0,100,0,0,-1
//-- GN_DEMONIC_FIRE //-- GN_DEMONIC_FIRE
2485,3000:3500:4000:4500:5000,500,0,10000:12000:14000:16000:18000,15000,5000,-1 2485,3000:3500:4000:4500:5000,500,0,10000:12000:14000:16000:18000,8000:16000:24000:32000:40000,5000,-1
//-- GN_FIRE_EXPANSION //-- GN_FIRE_EXPANSION
2486,2000,500,0,0,0,0,-1 2486,2000,500,0,0,0,0,-1
//-- GN_FIRE_EXPANSION_SMOKE_POWDER //-- GN_FIRE_EXPANSION_SMOKE_POWDER
2487,0,0,0,10000:12000:14000:16000:18000,0,0,-1 2487,0,0,0,10000:12000:14000:16000:18000,0,0,-1
//-- GN_FIRE_EXPANSION_TEAR_GAS //-- GN_FIRE_EXPANSION_TEAR_GAS
2488,0,0,0,10000:12000:14000:16000:18000,0,0,-1 2488,0,0,0,10000:12000:14000:16000:18000,0,0,-1
//-- GN_HELLS_PLANT //-- GN_HELLS_PLANT
2490,3000:3500:4000:4500:5000,500,0,14000:21000:28000:35000:42000,0,0,-1 2490,3000:3500:4000:4500:5000,500,0,14000:21000:28000:35000:42000,0,0,-1
//-- GN_HELLS_PLANT_ATK //-- GN_HELLS_PLANT_ATK
@ -1631,8 +1608,7 @@
//-- GN_MANDRAGORA //-- GN_MANDRAGORA
2492,1000,500,0,10000:15000:20000:25000:30000,0,15000,-1 2492,1000,500,0,10000:15000:20000:25000:30000,0,15000,-1
//-- GN_SLINGITEM //-- GN_SLINGITEM
2493,0,0,0,77000,10000,1000,-1 2493,0,0,0,0,0,1000,-1
//-- GN_SLINGITEM_RANGEMELEEATK //-- GN_SLINGITEM_RANGEMELEEATK
2498,0,0,0,5000:10000:60000:60000:3000,0,0,-1 2498,0,0,0,5000:10000:60000:60000:3000,0,0,-1
//-- GN_ILLUSIONDOPING //-- GN_ILLUSIONDOPING
@ -1642,11 +1618,10 @@
//===== Extra 3rd Class Skills ============= //===== Extra 3rd Class Skills =============
//-- AB_SECRAMENT //-- AB_SECRAMENT
2515,1000,500,0,60000:90000:120000:150000:180000,0,0,1000 2515,1000,500,0,60000:90000:120000:150000:180000,0,0,1000
//-- SR_HOWLINGOFLION //-- SR_HOWLINGOFLION
2517,1000,0,0,12000:14000:16000:18000:20000,0,10000,500 2517,1000,0,0,12000:14000:16000:18000:20000,0,10000,500
//-- SR_RIDEINLIGHTNING //-- SR_RIDEINLIGHTNING
2518,1000:2000:3000:4000:5000,200,0,0,0,1000,-1 2518,1000:2000:3000:4000:5000,0,0,0,0,1000,-1
//========================================== //==========================================
//===== Misc. Skills ======================= //===== Misc. Skills =======================

View File

@ -36,6 +36,22 @@
512,3 //GS_TRACKING 512,3 //GS_TRACKING
1014,1 //PR_REDEMPTIO 1014,1 //PR_REDEMPTIO
2012,7 //RK_CRUSHSTRIKE
2013,7 //RK_REFRESH
2014,7 //RK_GIANTGROWTH
2015,7 //RK_STONEHARDSKIN
2022,0,2 //GC_CROSSIMPACT
2032,7 //GC_POISONSMOKE
2234,7 //RA_FEARBREEZE
//2267,7 //NC_SELFDESTRUCTION
2268,7 //NC_SHAPESHIFT
//2270,7 //NC_INFRAREDSCAN
2271,7 //NC_ANALYZE
2281,7 //NC_SILVERSNIPER
2282,7 //NC_MAGICDECOY
2313,7 //LG_FORCEOFVANGUARD
2462,7 //SO_EL_ANALYSIS
2534,7,7 //RETURN_TO_ELDICASTES 2534,7,7 //RETURN_TO_ELDICASTES
2536,7,7 //ALL_GUARDIAN_RECALL 2536,7,7 //ALL_GUARDIAN_RECALL
2537,0,7 //ALL_ODINS_POWER 2537,0,7 //ALL_ODINS_POWER

View File

@ -869,7 +869,7 @@
1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, BA_PANGVOICE,Pang Voice 1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, BA_PANGVOICE,Pang Voice
1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, DC_WINKCHARM,Wink of Charm 1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0, DC_WINKCHARM,Wink of Charm
1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000, BS_UNFAIRLYTRICK,Unfair Trick 1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000, BS_UNFAIRLYTRICK,Unfair Trick
1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x4000, BS_GREED,Greed 1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x0, BS_GREED,Greed
1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0, PR_REDEMPTIO,Redemptio 1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0, PR_REDEMPTIO,Redemptio
1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0, MO_KITRANSLATION,Ki Translation 1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0, MO_KITRANSLATION,Ki Translation
1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0, MO_BALKYOUNG,Ki Explosion 1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0, MO_BALKYOUNG,Ki Explosion
@ -904,8 +904,8 @@
// WL Warlock // WL Warlock
2201,11,6,16,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_WHITEIMPRISON,White Imprison 2201,11,6,16,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_WHITEIMPRISON,White Imprison
2202,11,8,1,8,0x2,1:1:1:2:2,5,-2,yes,0,0,0,magic,0,0x420, WL_SOULEXPANSION,Soul Expansion 2202,11,8,1,8,0x2,1:1:1:2:2,5,-2,yes,0,0,0,magic,0,0x420, WL_SOULEXPANSION,Soul Expansion
2203,0,8,4,1,0x2,13,5,-3:-4:-5:-6:-7,yes,0,0,0,magic,0,0x400, WL_FROSTMISTY,Frosty Misty 2203,0,8,4,1,0x2,9,5,-3:-4:-5:-6:-7,yes,0,0,0,magic,0,0x400, WL_FROSTMISTY,Frosty Misty
2204,0,8,4,1,0x2,13,5,-5,yes,0,0,0,magic,0,0x0, WL_JACKFROST,Jack Frost 2204,0,8,4,1,0x2,5:6:7:8:9,5,-5,yes,0,0,0,magic,0,0x0, WL_JACKFROST,Jack Frost
2205,11,6,1,0,0x1,0,5,1,yes,0,0,0,magic,0,0x400, WL_MARSHOFABYSS,Marsh of Abyss 2205,11,6,1,0,0x1,0,5,1,yes,0,0,0,magic,0,0x400, WL_MARSHOFABYSS,Marsh of Abyss
2206,0,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, WL_RECOGNIZEDSPELL,Recognized Spell 2206,0,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, WL_RECOGNIZEDSPELL,Recognized Spell
2207,7,6,1,2,0x3,1:2:2:3:3,5,1,yes,0,0,0,magic,0,0x420, WL_SIENNAEXECRATE,Sienna Execrate 2207,7,6,1,2,0x3,1:2:2:3:3,5,1,yes,0,0,0,magic,0,0x420, WL_SIENNAEXECRATE,Sienna Execrate
@ -914,10 +914,10 @@
2210,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_DRAINLIFE,Drain Life 2210,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x420, WL_DRAINLIFE,Drain Life
2211,11,8,1,3,0x2,3,5,-7,yes,0,0,0,magic,3,0x400, WL_CRIMSONROCK,Crimson Rock 2211,11,8,1,3,0x2,3,5,-7,yes,0,0,0,magic,3,0x400, WL_CRIMSONROCK,Crimson Rock
2212,11,6,1,3,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_HELLINFERNO,Hell Inferno 2212,11,6,1,3,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_HELLINFERNO,Hell Inferno
2213,11,8,2,0,0x2,7,5,-20,yes,0,0,0,magic,2,0x400, WL_COMET,Comet 2213,11,8,2,0,0x2,9,5,-20,yes,0,0,0,magic,2,0x400, WL_COMET,Comet
2214,11,6,1,0,0,3,5,1,yes,0,0,0,magic,0,0x400, WL_CHAINLIGHTNING,Chain Lightning //CHECK Is the splash being used for the target search? 2214,11,6,1,0,0x2,3,5,1,yes,0,0,0,magic,0,0x400, WL_CHAINLIGHTNING,Chain Lightning //CHECK Is the splash being used for the target search?
2215,11,6,1,4,0,0,5,1,no,0,0,0,magic,0,0x0, WL_CHAINLIGHTNING_ATK,Chain Lightning Attack 2215,11,6,1,4,0,0,5,1,no,0,0,0,magic,0,0x0, WL_CHAINLIGHTNING_ATK,Chain Lightning Attack
2216,3,8,2,2,0,0,5,-6:-7:-8:-9:-10,yes,0,0,0,magic,0,0x20, WL_EARTHSTRAIN,Earth Strain 2216,6,8,2,2,0,0,5,-6:-7:-8:-9:-10,yes,0,0,0,magic,0,0x20, WL_EARTHSTRAIN,Earth Strain
2217,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_TETRAVORTEX,Tetra Vortex 2217,11,6,1,0,0,0,5,1,yes,0,0,0,magic,0,0x400, WL_TETRAVORTEX,Tetra Vortex
2218,11,6,1,3,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_FIRE,Tetra Vortex Fire 2218,11,6,1,3,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_FIRE,Tetra Vortex Fire
2219,11,6,1,1,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_WATER,Tetra Vortex Water 2219,11,6,1,1,0,0,5,1,no,0,0,0,magic,0,0x0, WL_TETRAVORTEX_WATER,Tetra Vortex Water
@ -940,14 +940,14 @@
// GC Guillotine Cross // GC Guillotine Cross
2021,10,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_VENOMIMPRESS,Venom Impress 2021,10,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_VENOMIMPRESS,Venom Impress
2022,3,8,1,-1,0,0,5,-7,no,0,0,0,weapon,0,0x0, GC_CROSSIMPACT,Cross Impact 2022,3,8,1,-1,0,0,5,-7,no,0,0,0,weapon,0,0x0, GC_CROSSIMPACT,Cross Impact
2023,3:4:5:6:7,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_DARKILLUSION,Dark Illusion 2023,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_DARKILLUSION,Dark Illusion
2024,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, GC_RESEARCHNEWPOISON,Research New Poison 2024,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, GC_RESEARCHNEWPOISON,Research New Poison
2025,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_CREATENEWPOISON,Create New Poison 2025,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_CREATENEWPOISON,Create New Poison
2026,5,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_ANTIDOTE,Antidote 2026,5,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GC_ANTIDOTE,Antidote
2027,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_POISONINGWEAPON,Poisoning Weapon 2027,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_POISONINGWEAPON,Poisoning Weapon
2028,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_WEAPONBLOCKING,Weapon Blocking 2028,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, GC_WEAPONBLOCKING,Weapon Blocking
2029,-2,6,4,-1,0x2,1,5,1,no,0,0,0,weapon,3,0x0, GC_COUNTERSLASH,Counter Slash 2029,0,6,4,-1,0x22,1,5,1,no,0,0,0,weapon,3,0x0, GC_COUNTERSLASH,Counter Slash
2030,-2,6,4,-1,0,0,5,1,no,0,0x200,0,weapon,0,0x0, GC_WEAPONCRUSH,Weapon Crush 2030,-2,6,4,-1,0x1,0,5,1,no,0,0x200,0,weapon,0,0x0, GC_WEAPONCRUSH,Weapon Crush
2031,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_VENOMPRESSURE,Venom Pressure 2031,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, GC_VENOMPRESSURE,Venom Pressure
2032,5,6,2,0,0x1,0,5,1,yes,0,0,1,none,0,0x0, GC_POISONSMOKE,Poison Smoke 2032,5,6,2,0,0x1,0,5,1,yes,0,0,1,none,0,0x0, GC_POISONSMOKE,Poison Smoke
2033,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x40, GC_CLOAKINGEXCEED,Cloaking Exceed 2033,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x40, GC_CLOAKINGEXCEED,Cloaking Exceed
@ -993,8 +993,8 @@
2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0, RA_WUGMASTERY,Warg Mastery 2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0, RA_WUGMASTERY,Warg Mastery
2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000, RA_WUGRIDER,Warg Rider 2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000, RA_WUGRIDER,Warg Rider
2242,0,6,4,-1,0x2,1,1,0,no,0,0,0,weapon,0,0x2000, RA_WUGDASH,Warg Dash 2242,0,6,4,-1,0x2,1,1,0,no,0,0,0,weapon,0,0x2000, RA_WUGDASH,Warg Dash
2243,9,6,1,0,0,0,5,1,no,0,0,0,weapon,0,0x2000, RA_WUGSTRIKE,Warg Strike 2243,9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x2000, RA_WUGSTRIKE,Warg Strike
2244,9,6,1,0,0,0,5,1,no,0,0,0,weapon,0,0x80, RA_WUGBITE,Warg Bite 2244,9,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x80, RA_WUGBITE,Warg Bite
2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_TOOTHOFWUG,Tooth of Warg 2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, RA_TOOTHOFWUG,Tooth of Warg
2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, RA_SENSITIVEKEEN,Sensitive Keen 2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, RA_SENSITIVEKEEN,Sensitive Keen
2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x42, RA_CAMOUFLAGE,Camouflage 2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x42, RA_CAMOUFLAGE,Camouflage
@ -1011,32 +1011,32 @@
2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_MADOLICENCE,Mado License 2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_MADOLICENCE,Mado License
2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_BOOSTKNUCKLE,Boost Knuckle 2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_BOOSTKNUCKLE,Boost Knuckle
2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_PILEBUNKER,Pile Bunker 2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_PILEBUNKER,Pile Bunker
2258,13,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0, NC_VULCANARM,Vulcan Arm 2258,13,6,1,-1,0x2,1,3,1,no,0,0,0,weapon,0,0x0, NC_VULCANARM,Vulcan Arm
2259,5,6,1,3,0,2,3,1,no,0,0,5,weapon,0,0x0, NC_FLAMELAUNCHER,Flame Launcher 2259,7,6,1,3,0,2,3,1,no,0,0,5,weapon,0,0x0, NC_FLAMELAUNCHER,Flame Launcher
2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0,0,weapon,0,0x0, NC_COLDSLOWER,Cold Slower 2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0,0,weapon,0,0x0, NC_COLDSLOWER,Cold Slower
2261,7,6,2,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0, NC_ARMSCANNON,Arm Cannon 2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0, NC_ARMSCANNON,Arm Cannon
2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_ACCELERATION,Acceleration 2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_ACCELERATION,Acceleration
2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_HOVERING,Hovering 2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_HOVERING,Hovering
2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_F_SIDESLIDE,Front-Side Slide 2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_F_SIDESLIDE,Front-Side Slide
2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_B_SIDESLIDE,Back-Side Slide 2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0, NC_B_SIDESLIDE,Back-Side Slide
2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0, NC_MAINFRAME,Mainframe Restructure // Check me. Part of the code notes translated to "The amount of fuel have". 2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0, NC_MAINFRAME,Mainframe Restructure // Check me. Part of the code notes translated to "The amount of fuel have".
2267,0,6,4,-1,0x42,2:3:4,3,1,no,0,0,0,misc,5,0x0, NC_SELFDESTRUCTION,Self Destruction 2267,0,6,4,-1,0x4A,2:3:4,3,1,no,0,0,0,misc,5,0x0, NC_SELFDESTRUCTION,Self Destruction
2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, NC_SHAPESHIFT,Shape Shift 2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, NC_SHAPESHIFT,Shape Shift
2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_EMERGENCYCOOL,Emergency Cool 2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_EMERGENCYCOOL,Emergency Cool
2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0, NC_INFRAREDSCAN,Infrared Scan 2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0, NC_INFRAREDSCAN,Infrared Scan
2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_ANALYZE,Analyze 2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_ANALYZE,Analyze
2272,0,6,4,0,0x3,1:2:3,3,1,yes,0,0,0,none,0,0x0, NC_MAGNETICFIELD,Magnetic Field 2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x0, NC_MAGNETICFIELD,Magnetic Field
2273,0,6,4,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_NEUTRALBARRIER,Neutral Barrier 2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_NEUTRALBARRIER,Neutral Barrier
2274,0,6,4,0,0x1,0,3,1,yes,0,0,0,none,0,0x0, NC_STEALTHFIELD,Stealth Field 2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0, NC_STEALTHFIELD,Stealth Field
2275,5,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, NC_REPAIR,Repair 2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, NC_REPAIR,Repair
2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, NC_TRAININGAXE,Axe Training 2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, NC_TRAININGAXE,Axe Training
2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_RESEARCHFE,Research Fire/Earth 2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0, NC_RESEARCHFE,Research Fire/Earth
2278,4:5:6:7:8,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, NC_AXEBOOMERANG,Axe Boomerang 2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, NC_AXEBOOMERANG,Axe Boomerang
2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_POWERSWING,Power Swing 2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, NC_POWERSWING,Power Swing
2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0,0,weapon,0,0x0, NC_AXETORNADO,Axe Tornado // Check me. Takes 20 * Skill LV amount of HP each use. 2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0,0,weapon,0,0x0, NC_AXETORNADO,Axe Tornado // Check me. Takes 20 * Skill LV amount of HP each use.
2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_SILVERSNIPER,FAW - Silver Sniper 2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_SILVERSNIPER,FAW - Silver Sniper
2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_MAGICDECOY,FAW - Magic Decoy //CHECK FIX ME!!!! Wind and Earth stones spawning opposite decoys. 2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0, NC_MAGICDECOY,FAW - Magic Decoy
2283,2,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_DISJOINT,FAW Removal 2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0, NC_DISJOINT,FAW Removal
//**** //****
// SC Shadow Chaser // SC Shadow Chaser
@ -1072,11 +1072,11 @@
2312,5,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, LG_PINPOINTATTACK,Pinpoint Attack 2312,5,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, LG_PINPOINTATTACK,Pinpoint Attack
2313,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_FORCEOFVANGUARD,Force of Vanguard 2313,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_FORCEOFVANGUARD,Force of Vanguard
2314,1,6,1,-1,0,0,1,1,no,0,0,0,weapon,0,0x0, LG_RAGEBURST,Rage Burst 2314,1,6,1,-1,0,0,1,1,no,0,0,0,weapon,0,0x0, LG_RAGEBURST,Rage Burst
2315,0,6,4,0:6:0,0x2,3,3,1,yes,0,0,0,none,2,0x0, LG_SHIELDSPELL,Shield Spell 2315,0,6,4,0:6:0,0x2,0,3,1,yes,0,0,0,none,2:0:0,0x0, LG_SHIELDSPELL,Shield Spell
2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_EXEEDBREAK,Exceed Break 2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_EXEEDBREAK,Exceed Break
2317,0,6,2,-1,0x2,0,5,1,yes,0,0,0,none,3:4:5:6:7,0x0, LG_OVERBRAND,Over Brand 2317,1,6,2,-1,0x2,5,5,1,yes,0,0,0,none,3:4:5:6:7,0x0, LG_OVERBRAND,Over Brand
2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_PRESTIGE,Prestige 2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, LG_PRESTIGE,Prestige
2319,0,6,4,0,0x1,3,5,1,no,0,0,0,weapon,0,0x0, LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID. 2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0, LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID.
2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x0, LG_MOONSLASHER,Moon Slasher 2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x0, LG_MOONSLASHER,Moon Slasher
2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0, LG_RAYOFGENESIS,Ray of Genesis 2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0, LG_RAYOFGENESIS,Ray of Genesis
2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0, LG_PIETY,Piety 2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0, LG_PIETY,Piety
@ -1086,15 +1086,15 @@
//**** //****
// SR Sura // SR Sura
2326,-2,8,1,-1,0,0,10,2,no,0,0,0,weapon,0,0x0, SR_DRAGONCOMBO,Dragon Combo //CHECK Is this 2 regular hits or sub hits? Yes its 2 sub hits. 2326,-2,8,1,-1,0,0,10,-2,no,0,0,0,weapon,0,0x0, SR_DRAGONCOMBO,Dragon Combo
2327,0,8,4,-1,0x2,2,5,-3,no,0,0,0,weapon,3,0x0, SR_SKYNETBLOW,Sky Net Blow //CHECK Video shows 3 hits. Its sub hits right? Data check shows no sub, one source shows 3 hits, another shows 5. 2327,0,8,4,-1,0x2,2,5,-3,no,0,0,0,weapon,3,0x0, SR_SKYNETBLOW,Sky Net Blow
2328,0,6,4,-1,0x2,1:2:3:4:5,5,1,no,0,0,0,weapon,0,0x0, SR_EARTHSHAKER,Earth Shaker //CHECK Must add a check in battle.c to triple damage if hitting a hidden target. 2328,0,6,4,-1,0x2,1:2:3:4:5,5,1,no,0,0,0,weapon,0,0x0, SR_EARTHSHAKER,Earth Shaker
2329,-2,8,4,-1,0,0,5,-2,no,0,0x200,0,weapon,0,0x0, SR_FALLENEMPIRE,Fallen Empire //CHECK Video shows 2 hits. Is it sub hits? Yes its divided between 2 hits. 2329,-2,8,4,-1,0,0,5,-2,no,0,0x200,0,weapon,0,0x0, SR_FALLENEMPIRE,Fallen Empire
2330,-2,6,1,-1,0x42,1:1:1:1:1:2:2:2:2:2,10,1,yes,0,0,0,weapon,0,0x0, SR_TIGERCANNON,Tiger Cannon //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire. 2330,-2,6,1,-1,0x42,1:1:1:1:1:2:2:2:2:2,10,1,yes,0,0,0,weapon,0,0x0, SR_TIGERCANNON,Tiger Cannon //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire.
2331,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, SR_HELLGATE,Hell Gate 2331,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, SR_HELLGATE,Hell Gate
2332,5,6,4,-1,0x2,3,5,1,no,0,0,0,weapon,0,0x0, SR_RAMPAGEBLASTER,Rampage Blaster 2332,0,6,4,-1,0x2,3,5,1,no,0,0,0,weapon,0,0x0, SR_RAMPAGEBLASTER,Rampage Blaster
2333,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_CRESCENTELBOW,Crescent Elbow //CHECK Check the autospell ID. 2333,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_CRESCENTELBOW,Crescent Elbow //CHECK Check the autospell ID.
2334,0,6,4,0,0x3,1:1:2:2:3,5,1,no,0,0,0,none,0,0x0, SR_CURSEDCIRCLE,Cursed Circle //CHECK Code shows it takes up to 5% of your HP upon use? 2334,0,6,4,0,0x3,1:1:2:2:3,5,1,no,0,0,0,none,0,0x0, SR_CURSEDCIRCLE,Cursed Circle
2335,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_LIGHTNINGWALK,Lightning Walk 2335,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_LIGHTNINGWALK,Lightning Walk
2336,7:8:9:10:11,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, SR_KNUCKLEARROW,Knuckle Arrow 2336,7:8:9:10:11,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0, SR_KNUCKLEARROW,Knuckle Arrow
2337,0,6,4,-1,0x2,2,1,1,yes,0,0,0,weapon,0,0x0, SR_WINDMILL,Windmill 2337,0,6,4,-1,0x2,2,1,1,yes,0,0,0,weapon,0,0x0, SR_WINDMILL,Windmill
@ -1105,13 +1105,13 @@
2342,1,6,1,-1,0x20,0,5,1,no,0,0,0,weapon,3,0x0, SR_CRESCENTELBOW_AUTOSPELL,Crescent Elbow Autospell //CHECK Does this ignore defense? 2342,1,6,1,-1,0x20,0,5,1,no,0,0,0,weapon,3,0x0, SR_CRESCENTELBOW_AUTOSPELL,Crescent Elbow Autospell //CHECK Does this ignore defense?
2343,1:2:3:3:4:4:5:5:6:7,8,1,0,0,0,10,-7,yes,0,0,0,weapon,0,0x0, SR_GATEOFHELL,Gate of Hell //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire 2343,1:2:3:3:4:4:5:5:6:7,8,1,0,0,0,10,-7,yes,0,0,0,weapon,0,0x0, SR_GATEOFHELL,Gate of Hell //CHECK Need to fix to be enemy targeted and also combo after Fallen Empire
2344,2,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, SR_GENTLETOUCH_QUIET,Gentle Touch - Quiet 2344,2,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, SR_GENTLETOUCH_QUIET,Gentle Touch - Quiet
2345,2,6,16,0,0x1,0,5,1,no,0,0,0,magic,0,0x0, SR_GENTLETOUCH_CURE,Gentle Touch - Cure //CHECK Its a healing skill. Guessing it has to be magic type? Healing isnt working. 2345,2,6,16,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_GENTLETOUCH_CURE,Gentle Touch - Cure
2346,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_ENERGYGAIN,Gentle Touch - Energy Gain 2346,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_ENERGYGAIN,Gentle Touch - Energy Gain
2347,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_CHANGE,Gentle Touch - Change 2347,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_CHANGE,Gentle Touch - Change
2348,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_REVITALIZE,Gentle Touch - Revitalize 2348,2,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, SR_GENTLETOUCH_REVITALIZE,Gentle Touch - Revitalize
//More from Sura but not following ID order //More from Sura but not following ID order
2517,0,6,4,-1,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, SR_HOWLINGOFLION,Howling of Lion 2517,0,6,4,-1,0x2,3:4:5:6:7,5,1,no,0,0,0,weapon,0,0x0, SR_HOWLINGOFLION,Howling of Lion
2518,11,6,2,-1,0x2,2:2:3:3:4,5,1,no,0,0,0,weapon,0,0x0, SR_RIDEINLIGHTNING,Ride In Lightening 2518,11,6,2,-1,0x2,1:1:2:2:3,5,1,no,0,0,0,weapon,0,0x0, SR_RIDEINLIGHTNING,Ride In Lightening
//**** //****
// WA Wanderer // WA Wanderer
@ -1130,26 +1130,26 @@
2412,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, WM_LESSON,Lesson 2412,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0, WM_LESSON,Lesson
2413,9,8,1,-1,0,0,5,-2:-2:-3:-3:-4,yes,0,0,0,magic,0,0x0, WM_METALICSOUND,Metallic Sound 2413,9,8,1,-1,0,0,5,-2:-2:-3:-3:-4,yes,0,0,0,magic,0,0x0, WM_METALICSOUND,Metallic Sound
2414,9,6,2,-1,0x3,1,5,1,yes,0,0x80,3,none,0,0x0, WM_REVERBERATION,Reverberation 2414,9,6,2,-1,0x3,1,5,1,yes,0,0x80,3,none,0,0x0, WM_REVERBERATION,Reverberation
2415,0,6,1,-1,0x6,1,5,1,no,0,0,0,weapon,0,0x0, WM_REVERBERATION_MELEE,Reverberation Melee 2415,0,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0, WM_REVERBERATION_MELEE,Reverberation Melee
2416,0,6,1,0,0x6,1,5,1,no,0,0,0,magic,0,0x0, WM_REVERBERATION_MAGIC,Reverberation Magic 2416,0,6,1,-1,0,0,5,1,no,0,0,0,magic,0,0x0, WM_REVERBERATION_MAGIC,Reverberation Magic
2417,11,6,2,0,0x3,5,1,1,no,0,0,0,none,0,0x0, WM_DOMINION_IMPULSE,Dominion Impulse 2417,11,6,2,0,0x3,5,1,1,no,0,0,0,none,0,0x0, WM_DOMINION_IMPULSE,Dominion Impulse
2418,9,6,2,-1,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_SEVERE_RAINSTORM,Severe Rainstorm 2418,9,6,2,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_SEVERE_RAINSTORM,Severe Rainstorm
2419,9,6,2,0,0x3,1,5,1,yes,0,0x80,5,none,0,0x0, WM_POEMOFNETHERWORLD,Poem of The Netherworld //CHECK May need to recode too. 2419,9,6,2,0,0x3,1,5,1,yes,0,0x80,5,none,0,0x0, WM_POEMOFNETHERWORLD,Poem of The Netherworld //CHECK May need to recode too.
2420,0,6,4,0,0x2,2:3:4:5:6,5,1,yes,0,0,0,none,0,0x0, WM_VOICEOFSIREN,Voice of Siren 2420,0,6,4,0,0x2,2:3:4:5:6,5,1,yes,0,0,0,none,0,0x0, WM_VOICEOFSIREN,Voice of Siren
2421,7,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_DEADHILLHERE,Valley of Death 2421,7,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_DEADHILLHERE,Valley of Death
2422,7,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0,0,none,0,0x0, WM_LULLABY_DEEPSLEEP,Deep Sleep Lullaby 2422,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0,0,none,0,0x0, WM_LULLABY_DEEPSLEEP,Deep Sleep Lullaby
2423,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0,0,none,0,0x0, WM_SIRCLEOFNATURE,Circle of Nature's Sound 2423,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0,0,none,0,0x0, WM_SIRCLEOFNATURE,Circle of Nature's Sound
2424,9,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, WM_RANDOMIZESPELL,Improvised Song 2424,9,6,4,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0, WM_RANDOMIZESPELL,Improvised Song
2425,9,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_GLOOMYDAY,Gloomy Day 2425,9,6,16,0,0x1,0,5,1,yes,0,0,0,none,0,0x0, WM_GLOOMYDAY,Gloomy Day
2426,9,6,2,0,0x2,2:3:3:4:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_GREAT_ECHO,Great Echo 2426,9,6,2,0,0x2,2:3:3:4:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_GREAT_ECHO,Great Echo
2427,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_SONG_OF_MANA,Song of Mana 2427,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_SONG_OF_MANA,Song of Mana
2428,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_DANCE_WITH_WUG,Dance With A Warg 2428,0,6,4,0,0x3,5:6:7:8:9,5,1,yes,0,0x4000,0,none,0,0x0, WM_DANCE_WITH_WUG,Dance With A Warg
2429,9,6,1,0,0x2,2:2:3:3:4,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_SOUND_OF_DESTRUCTION,Sound of Destruction //CHECK Source shows its magic attack. Need to confirm before changing. 2429,9,6,1,0,0x42,4:4:5:5:6,5,1,yes,0,0x4000,0,weapon,0,0x0, WM_SOUND_OF_DESTRUCTION,Sound of Destruction //CHECK Source shows its magic attack. Need to confirm before changing.
2430,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_SATURDAY_NIGHT_FEVER,Saturday Night Fever 2430,0,6,4,0,0x3,3:4:5:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_SATURDAY_NIGHT_FEVER,Saturday Night Fever
2431,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,magic,0,0x0, WM_LERADS_DEW,Lerad's Dew 2431,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,magic,0,0x0, WM_LERADS_DEW,Lerad's Dew
2432,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_MELODYOFSINK,Melody of Sink 2432,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_MELODYOFSINK,Melody of Sink
2433,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_BEYOND_OF_WARCRY,Warcry of Beyond 2433,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_BEYOND_OF_WARCRY,Warcry of Beyond
2434,0,6,4,0,0x3,5,5,1,yes,0,0x4000,0,none,0,0x0, WM_UNLIMITED_HUMMING_VOICE,Unlimited Humming Voice 2434,0,6,4,0,0x3,5:5:6:6:7,5,1,yes,0,0x4000,0,none,0,0x0, WM_UNLIMITED_HUMMING_VOICE,Unlimited Humming Voice
2516,11,6,1,-1,0x2,5,5,1,no,0,0,0,weapon,0,0x0, WM_SEVERE_RAINSTORM_MELEE,Severe Rainstorm Melee 2516,11,6,1,-1,0x2,5,5,1,no,0,0,0,weapon,0,0x0, WM_SEVERE_RAINSTORM_MELEE,Severe Rainstorm Melee
//**** //****
@ -1166,7 +1166,7 @@
2452,9,6,2,3,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_WARMER,Warmer 2452,9,6,2,3,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_WARMER,Warmer
2453,9,6,2,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_VACUUM_EXTREME,Vacuum Extreme 2453,9,6,2,0,0x1,0,5,1,yes,0,0,0,magic,0,0x20, SO_VACUUM_EXTREME,Vacuum Extreme
2454,9,6,1,4,0x2,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_VARETYR_SPEAR,Varetyr Spear 2454,9,6,1,4,0x2,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_VARETYR_SPEAR,Varetyr Spear
2455,9,6,2,0,0x3,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_ARRULLO,Arrullo 2455,7:7:7:7:9,6,2,0,0x3,1:1:2:2:3,5,1,yes,0,0,0,magic,0,0x20, SO_ARRULLO,Arrullo
2456,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, SO_EL_CONTROL,Spirit Control 2456,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0, SO_EL_CONTROL,Spirit Control
2457,0,6,4,3,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AGNI,Summon Fire Spirit Agni 2457,0,6,4,3,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AGNI,Summon Fire Spirit Agni
2458,0,6,4,1,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AQUA,Summon Water Spirit Aqua 2458,0,6,4,1,0x1,0,3,1,yes,0,0,0,none,0,0x0, SO_SUMMON_AQUA,Summon Water Spirit Aqua
@ -1193,16 +1193,16 @@
2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0, GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm. 2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0, GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm.
2482,11,6,16,0,0,0,5,1,yes,0,0,1,weapon,2,0x0, GN_WALLOFTHORN,Wall of Thorns 2482,11,6,16,0,0,0,5,1,yes,0,0,1,weapon,2,0x0, GN_WALLOFTHORN,Wall of Thorns
2483,11,6,2,0,0x3,4,10,1,yes,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED,Crazy Weed 2483,11,6,2,0,0x3,4,10,1,yes,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED,Crazy Weed
2484,0,6,2,2,0x2,3,10,1,no,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED_ATK,Crazy Weed Attack 2484,0,6,2,2,0x2,2,10,1,no,0,0x2000,0,weapon,0,0x0, GN_CRAZYWEED_ATK,Crazy Weed Attack
2485,9,6,2,3,0,0,5,1,yes,0,0,0,magic,0,0x0, GN_DEMONIC_FIRE,Demonic Fire 2485,9,6,2,3,0,0,5,1,yes,0,0,0,magic,0,0x0, GN_DEMONIC_FIRE,Demonic Fire
2486,9,6,2,0,0,0,5,1,yes,0,0,0,none,0,0x0, GN_FIRE_EXPANSION,Fire Expansion //CHECK FIX ME!!!! Level 1 is reducing the damage. Should increase it by 50% 2486,9,6,2,0,0,0,5,1,yes,0,0,0,none,0,0x0, GN_FIRE_EXPANSION,Fire Expansion //CHECK FIX ME!!!! Level 1 is reducing the damage. Should increase it by 50%
2487,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_SMOKE_POWDER,Fire Expansion Smoke Powder 2487,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_SMOKE_POWDER,Fire Expansion Smoke Powder
2488,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_TEAR_GAS,Fire Expansion Tear Gas 2488,9,6,2,0,0,0,1,1,no,0,0,0,none,0,0x0, GN_FIRE_EXPANSION_TEAR_GAS,Fire Expansion Tear Gas
2489,11,6,1,0,0,0,10,1:2:3:4:5:6:7:8:9:10,no,0,0,0,weapon,0,0x0, GN_FIRE_EXPANSION_ACID,Fire Expansion Acid 2489,11,6,1,0,0,0,10,1:2:3:4:5:6:7:8:9:10,no,0,0,0,weapon,0,0x0, GN_FIRE_EXPANSION_ACID,Fire Expansion Acid
2490,9,6,2,0,0x3,1,5,1,yes,0,0x80,2:3:4:5:6,none,0,0x0, GN_HELLS_PLANT,Hell's Plant 2490,9,6,2,0,0x3,1,5,1,yes,0,0x80,2:3:4:5:6,none,0,0x0, GN_HELLS_PLANT,Hell's Plant
2491,0,6,1,0,0xC0,0,5,1,no,0,0,0,misc,0,0x0, GN_HELLS_PLANT_ATK,Hell's Plant Attack 2491,0,6,1,0,0x90,0,5,1,no,0,0,0,misc,0,0x0, GN_HELLS_PLANT_ATK,Hell's Plant Attack
2492,0,6,4,0,0x3,6:7:8:9:10,5,1,yes,0,0,0,none,0,0x0, GN_MANDRAGORA,Howling of Mandragora 2492,0,6,4,0,0x3,5:6:6:7:7,5,1,yes,0,0,0,none,0,0x0, GN_MANDRAGORA,Howling of Mandragora
2493,11,6,16,0,0x1,0,1,1,yes,0,0,0,none,0,0x0, GN_SLINGITEM,Sling Item 2493,11,6,16,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_SLINGITEM,Sling Item
2494,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_CHANGEMATERIAL,Change Material 2494,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GN_CHANGEMATERIAL,Change Material
2495,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MIX_COOKING,Mix Cooking 2495,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MIX_COOKING,Mix Cooking
2496,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MAKEBOMB,Create Bomb 2496,0,6,4,0,0x1,0,2,1,no,0,0,0,none,0,0x0, GN_MAKEBOMB,Create Bomb

View File

@ -598,14 +598,14 @@
2203,0,0,40:48:56:64:72,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FROSTMISTY#Frosty Misty# 2203,0,0,40:48:56:64:72,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FROSTMISTY#Frosty Misty#
2204,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_JACKFROST#Jack Frost# 2204,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_JACKFROST#Jack Frost#
2205,0,0,40:42:44:46:48,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_MARSHOFABYSS#Marsh of Abyss# 2205,0,0,40:42:44:46:48,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_MARSHOFABYSS#Marsh of Abyss#
2206,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_RECOGNIZEDSPELL#Recognized Spell# 2206,0,0,100:120:140:160:180,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_RECOGNIZEDSPELL#Recognized Spell#
2207,0,0,32:34:36:38:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_SIENNAEXECRATE#Sienna Execrate# 2207,0,0,32:34:36:38:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_SIENNAEXECRATE#Sienna Execrate#
2209,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_STASIS#Stasis# 2209,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_STASIS#Stasis#
2210,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_DRAINLIFE#Drain Life# 2210,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_DRAINLIFE#Drain Life#
2211,0,0,60:70:80:90:100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CRIMSONROCK#Crimson Rock# 2211,0,0,60:70:80:90:100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CRIMSONROCK#Crimson Rock#
2212,0,0,35:40:45:50:55,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_HELLINFERNO#Hell Inferno# 2212,0,0,35:40:45:50:55,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_HELLINFERNO#Hell Inferno#
2213,0,0,240:280:320:360:400,0,0,0,99,0,0,none,0,0,716,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_COMET#Comet# 2213,0,0,480:560:640:720:800,0,0,0,99,0,0,none,0,0,716,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_COMET#Comet#
2214,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING#Chain Lightning# 2214,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING#Chain Lightning#
2215,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING_ATK#Chain Lightning Attack# 2215,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_CHAINLIGHTNING_ATK#Chain Lightning Attack#
2216,0,0,70:78:86:94:102,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_EARTHSTRAIN#Earth Strain# 2216,0,0,70:78:86:94:102,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_EARTHSTRAIN#Earth Strain#
@ -626,7 +626,6 @@
2231,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_READING_SB#Reading Spellbook# 2231,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_READING_SB#Reading Spellbook#
//2232,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FREEZE_SP#Freeze Spell# (Passive Skill) //2232,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WL_FREEZE_SP#Freeze Spell# (Passive Skill)
//**** //****
// AB Arch Bishop // AB Arch Bishop
2038,0,0,20:23:26:29:32,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //AB_JUDEX#Judex# 2038,0,0,20:23:26:29:32,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //AB_JUDEX#Judex#
@ -655,25 +654,25 @@
//**** //****
// RA Ranger // RA Ranger
2233,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,10,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ARROWSTORM#Arrow Storm# 2233,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,10,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ARROWSTORM#Arrow Storm#
2234,0,0,36:40:44:48:52,0,0,0,11,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FEARBREEZE#Fear Breeze# 2234,0,0,55:60:65:70:75,0,0,0,11,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FEARBREEZE#Fear Breeze#
2236,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_AIMEDBOLT#Aimed Bolt# //How many arrows does it require??? 2236,0,0,30:32:34:36:38:40:42:44:46:48,0,0,0,11,1,1,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_AIMEDBOLT#Aimed Bolt# //How many arrows does it require???
2237,0,0,15,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_DETONATOR#Detonator# 2237,0,0,15,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_DETONATOR#Detonator#
2238,0,0,35,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ELECTRICSHOCKER#Electric Shocker# 2238,0,0,35,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ELECTRICSHOCKER#Electric Shocker#
2239,0,0,20,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CLUSTERBOMB#Cluster Bomb# 2239,0,0,20,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CLUSTERBOMB#Cluster Bomb#
2240,0,0,5,0,0,0,99,0,0,none,0,0,6124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGMASTERY#Warg Mastery# 2240,0,0,5,0,0,0,99,0,0,none,0,0,6124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGMASTERY#Warg Mastery#
2241,0,0,20,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGRIDER#Warg Rider# 2241,0,0,2,0,0,0,99,0,0,ridingwarg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGRIDER#Warg Rider#
2242,0,0,40,0,0,0,99,0,0,move_enable,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGDASH#Warg Dash# 2242,0,0,4,0,0,0,99,0,0,move_enable,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGDASH#Warg Dash#
2243,0,0,20:22:24:26:28,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGSTRIKE#Warg Strike# 2243,0,0,20:22:24:26:28,0,0,0,99,0,0,ridingwarg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGSTRIKE#Warg Strike#
2244,0,0,40:42:44:46:48,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGBITE#Warg Bite# 2244,0,0,40:42:44:46:48,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_WUGBITE#Warg Bite#
2246,0,0,12,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_SENSITIVEKEEN#Sensitive Keen# 2246,0,0,12,0,0,0,99,0,0,warg,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_SENSITIVEKEEN#Sensitive Keen#
2247,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CAMOUFLAGE#Camouflage# 2247,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_CAMOUFLAGE#Camouflage#
2249,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,990,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAGENTATRAP#Magenta Trap# 2249,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6360,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAGENTATRAP#Magenta Trap#
2250,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,991,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_COBALTTRAP#Cobalt Trap# 2250,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6361,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_COBALTTRAP#Cobalt Trap#
2251,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,993,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAIZETRAP#Maize Trap# 2251,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6363,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_MAIZETRAP#Maize Trap#
2252,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,992,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_VERDURETRAP#Verdure Trap# 2252,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,6362,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_VERDURETRAP#Verdure Trap#
2253,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FIRINGTRAP#Firing Trap# 2253,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_FIRINGTRAP#Firing Trap#
2254,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ICEBOUNDTRAP#Icebound Trap# 2254,0,0,10,0,0,0,99,0,0,none,0,0,7940,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RA_ICEBOUNDTRAP#Icebound Trap#
@ -681,35 +680,35 @@
// NC Mechanic // NC Mechanic
2256,0,0,3:6:9:12:15,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_BOOSTKNUCKLE#Boost Knuckle# 2256,0,0,3:6:9:12:15,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_BOOSTKNUCKLE#Boost Knuckle#
2257,0,0,50,0,0,0,99,0,0,mado,0,0,1549,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_PILEBUNKER#Pile Bunker# 2257,0,0,50,0,0,0,99,0,0,mado,0,0,1549,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_PILEBUNKER#Pile Bunker#
2258,0,0,2,0,0,0,99,0,0,mado,0,0,6145,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_VULCANARM#Vulcan Arm# 2258,0,0,2:4:6,0,0,0,99,0,0,mado,0,0,6145,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_VULCANARM#Vulcan Arm#
2259,0,0,20,0,0,0,99,0,0,mado,0,0,2139,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_FLAMELAUNCHER#Flame Launcher# 2259,0,0,20,0,0,0,99,0,0,mado,0,0,2139,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_FLAMELAUNCHER#Flame Launcher#
2260,0,0,20,0,0,0,99,0,0,mado,0,0,6147,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_COLDSLOWER#Cold Slower# 2260,0,0,20,0,0,0,99,0,0,mado,0,0,6146,1,6147,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_COLDSLOWER#Cold Slower#
2261,0,0,30:45:60,0,0,0,99,8,1,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ARMSCANNON#Arm Cannon# 2261,0,0,40:45:50,0,0,0,99,8,1,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ARMSCANNON#Arm Cannon#
2262,0,0,20:40:60,0,0,0,99,0,0,mado,0,0,6146,1,2800,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2800 //NC_ACCELERATION#Acceleration# 2262,0,0,20:40:60,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2800 //NC_ACCELERATION#Acceleration#
2263,0,0,25,0,0,0,99,0,0,mado,0,0,6146,1,2801,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2801 //NC_HOVERING#Hovering# 2263,0,0,25,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2801 //NC_HOVERING#Hovering#
2264,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_F_SIDESLIDE#Front - Side Slide# 2264,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_F_SIDESLIDE#Front - Side Slide#
2265,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_B_SIDESLIDE#Back - Side Slide# 2265,0,0,5,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_B_SIDESLIDE#Back - Side Slide#
2267,0,0,200,0,0,0,99,0,0,mado,0,0,6146,5,2802,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2802 //NC_SELFDESTRUCTION#Self Destruction# 2267,0,0,1,0,0,0,99,0,0,mado,0,0,6146,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2802 //NC_SELFDESTRUCTION#Self Destruction#
2268,0,0,100,0,0,0,99,0,0,mado,0,0,6360,1,6363,1,6362,1,6361,1,6146,2,2803,0,0,0,0,0,0,0,0,0,2803 //NC_SHAPESHIFT#Shape Shift# //CHECK Shouldnt the different stones all be in the same slot? 2268,0,0,100,0,0,0,99,0,0,mado,0,0,6360,1,6363,1,6362,1,6361,1,6146,2,0,0,0,0,0,0,0,0,0,0,2803 //NC_SHAPESHIFT#Shape Shift#
2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,2,2804,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2804 //NC_EMERGENCYCOOL#Emergency Cool# 2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2804 //NC_EMERGENCYCOOL#Emergency Cool#
2270,0,0,45,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_INFRAREDSCAN#Infrared Scan# 2270,0,0,45,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_INFRAREDSCAN#Infrared Scan#
2271,0,0,30,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ANALYZE#Analyze# 2271,0,0,30,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_ANALYZE#Analyze#
2272,0,0,90,0,0,0,99,0,0,mado,0,0,6146,3,2805,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2805 //NC_MAGNETICFIELD#Magnetic Field# 2272,0,0,90,0,0,0,99,0,0,mado,0,0,2805,0,6146,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2805 //NC_MAGNETICFIELD#Magnetic Field#
2273,0,0,90,0,0,0,99,0,0,mado,0,0,6146,1,2806,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2806 //NC_NEUTRALBARRIER#Neutral Barrier# 2273,0,0,90,0,0,0,99,0,0,mado,0,0,2806,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2806 //NC_NEUTRALBARRIER#Neutral Barrier#
2274,0,0,100:150:200,0,0,0,99,0,0,mado,0,0,6146,2,2808,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2808 //NC_STEALTHFIELD#Stealth Field# 2274,0,0,100:150:200,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2808 //NC_STEALTHFIELD#Stealth Field#
2275,0,0,25:30:35:40:45,0,0,0,99,0,0,mado,0,0,2807,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2807 //NC_REPAIR#Repair# 2275,0,0,25:30:35:40:45,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2807 //NC_REPAIR#Repair#
2278,0,0,20:22:24:26:28,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXEBOOMERANG#Axe Boomerang# 2278,0,0,20:22:24:26:28,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXEBOOMERANG#Axe Boomerang#
2279,0,0,10:12:14:16:18,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_POWERSWING#Power Swing# 2279,0,0,20:22:24:26:28,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_POWERSWING#Power Swing#
2280,0,0,18:20:22:24:26,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXETORNADO#Axe Tornado# 2280,20:40:60:80:100,0,18:20:22:24:26,0,0,0,6:7,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_AXETORNADO#Axe Tornado#
2281,0,0,25:30:35:40:45,0,0,0,99,0,0,none,0,0,998,1,999,2,612,0,615,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_SILVERSNIPER#FAW - Silver Sniper# 2281,0,0,25:30:35:40:45,0,0,0,99,0,0,none,0,0,612,0,615,0,998,1,999,5,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_SILVERSNIPER#FAW - Silver Sniper#
2282,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,998,2,7054,1,612,0,615,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_MAGICDECOY#FAW - Magic Decoy# 2282,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,612,0,615,0,998,2,7054,1,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_MAGICDECOY#FAW - Magic Decoy#
2283,0,0,15,0,0,0,99,0,0,none,0,0,6186,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 2283,0,0,15,0,0,0,99,0,0,none,0,0,6186,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal#
//**** //****
// SC Shadow Chaser // SC Shadow Chaser
2284,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_FATALMENACE#Fatal Menace# 2284,0,0,20:25:30:35:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_FATALMENACE#Fatal Menace#
2285,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_REPRODUCE#Reproduce# 2285,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_REPRODUCE#Reproduce#
2286,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_AUTOSHADOWSPELL#Auto Shadow Spell# 2286,0,0,40:45:50:55:60:65:70:75:80:85,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_AUTOSHADOWSPELL#Auto Shadow Spell#
2287,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_SHADOWFORM#Shadow Form# 2287,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SC_SHADOWFORM#Shadow Form#
@ -737,21 +736,21 @@
2308,0,0,20:20:20:20:20:25:25:25:25:25,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANISHINGPOINT#Banishing Point# 2308,0,0,20:20:20:20:20:25:25:25:25:25,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANISHINGPOINT#Banishing Point#
2309,0,0,30:45:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_TRAMPLE#Trample# 2309,0,0,30:45:60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_TRAMPLE#Trample#
2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press# 2310,0,0,10:12:14:16:18,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDPRESS#Shield Press#
2311,0,0,40:50:60:70:80,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage# 2311,0,0,60:80:100:120:140,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_REFLECTDAMAGE#Reflect Damage#
2312,0,0,30,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack# 2312,0,0,50,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PINPOINTATTACK#Pinpoint Attack#
2313,0,0,30,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_FORCEOFVANGUARD#Force of Vanguard# 2313,0,0,30,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_FORCEOFVANGUARD#Force of Vanguard#
2314,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAGEBURST#Rage Burst# 2314,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAGEBURST#Rage Burst#
2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell# 2315,0,0,50,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_SHIELDSPELL#Shield Spell#
2316,0,0,24:28:32:36:40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EXEEDBREAK#Exceed Break# 2316,0,0,20:32:44:56:68,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EXEEDBREAK#Exceed Break#
2317,0,0,42:44:46:48:50,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_OVERBRAND#Over Brand# 2317,0,0,20:30:40:50:60,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_OVERBRAND#Over Brand#
2318,0,0,75:80:85:90:95,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PRESTIGE#Prestige# 2318,0,0,75:80:85:90:95,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PRESTIGE#Prestige#
2319,0,0,30:36:42:48:54,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANDING#Banding# 2319,0,0,30:36:42:48:54,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_BANDING#Banding#
2320,0,0,20:24:28:32:36,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_MOONSLASHER#Moon Slasher# 2320,0,0,20:24:28:32:36,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_MOONSLASHER#Moon Slasher#
2321,0,0,60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAYOFGENESIS#Ray of Genesis# 2321,0,0,60:65:70:75:80,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_RAYOFGENESIS#Ray of Genesis#
2322,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,523,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PIETY#Piety# 2322,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,0,523,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_PIETY#Piety#
2323,0,0,52:60:68:76:84,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EARTHDRIVE#Earth Drive# 2323,0,0,52:60:68:76:84,0,0,0,99,0,0,shield,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_EARTHDRIVE#Earth Drive#
2324,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_HESPERUSLIT#Hesperus Lit# 2324,0,0,80:90:100:110:120,0,0,0,4:5,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_HESPERUSLIT#Hesperus Lit#
2325,0,0,100,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_INSPIRATION#Inspiration# 2325,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //LG_INSPIRATION#Inspiration#
//**** //****
// SR Sura // SR Sura
@ -761,7 +760,7 @@
2329,0,0,20:30:40:50:60,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_FALLENEMPIRE#Fallen Empire# 2329,0,0,20:30:40:50:60,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_FALLENEMPIRE#Fallen Empire#
2330,0,0,1:2:3:4:5:6:7:8:9:10,-12:-14:-16:-18:-20:-22:-24:-26:-28:-30,-6:-7:-8:-9:-10:-11:-12:-13:-14:-15,0,99,0,0,none,SC_EXPLOSIONSPIRITS,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_TIGERCANNON#Tiger Cannon# 2330,0,0,1:2:3:4:5:6:7:8:9:10,-12:-14:-16:-18:-20:-22:-24:-26:-28:-30,-6:-7:-8:-9:-10:-11:-12:-13:-14:-15,0,99,0,0,none,SC_EXPLOSIONSPIRITS,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_TIGERCANNON#Tiger Cannon#
2331,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HELLGATE#Hell Gate# 2331,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HELLGATE#Hell Gate#
2332,0,0,110:120:130:140:150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RAMPAGEBLASTER#Rampage Blaster# 2332,0,0,150,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RAMPAGEBLASTER#Rampage Blaster#
2333,0,0,80,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CRESCENTELBOW#Crescent Elbow# 2333,0,0,80,0,0,0,99,0,0,none,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CRESCENTELBOW#Crescent Elbow#
2334,0,0,40:60:80:100:120,-1:-2:-3:-4:-5,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CURSEDCIRCLE#Cursed Circle# 2334,0,0,40:60:80:100:120,-1:-2:-3:-4:-5,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_CURSEDCIRCLE#Cursed Circle#
2335,0,0,80:70:60:50:40,-5:-4:-3:-2:-1,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_LIGHTNINGWALK#Lightning Walk# 2335,0,0,80:70:60:50:40,-5:-4:-3:-2:-1,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_LIGHTNINGWALK#Lightning Walk#
@ -779,8 +778,8 @@
2347,0,0,40:50:60:70:80,-2:-4:-6:-8:-10,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_CHANGE#Gentle Touch - Change# 2347,0,0,40:50:60:70:80,-2:-4:-6:-8:-10,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_CHANGE#Gentle Touch - Change#
2348,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_REVITALIZE#Gentle Touch - Revitalize# 2348,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_GENTLETOUCH_REVITALIZE#Gentle Touch - Revitalize#
//More from SR Sura (but not following ID order) //More from SR Sura (but not following ID order)
2517,0,0,40:45:50:55:60,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HOWLINGOFLION#Howling of Lion# 2517,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_HOWLINGOFLION#Howling of Lion#
2518,0,0,40:50:60:70:80,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RIDEINLIGHTNING#Ride In Lightening# 2518,0,0,22:24:26:28:30,0,0,0,99,0,0,none,0,1:2:3:4:5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //SR_RIDEINLIGHTNING#Ride In Lightening#
//**** //****
// WA Wanderer // WA Wanderer
@ -802,22 +801,22 @@
2416,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_REVERBERATION_MAGIC#Reverberation Magic# 2416,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_REVERBERATION_MAGIC#Reverberation Magic#
2417,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DOMINION_IMPULSE#Dominion Impulse# 2417,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DOMINION_IMPULSE#Dominion Impulse#
2418,0,0,80:90:100:110:120,0,0,0,11,1,20,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SEVERE_RAINSTORM#Severe Rainstorm# 2418,0,0,80:90:100:110:120,0,0,0,11,1,20,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SEVERE_RAINSTORM#Severe Rainstorm#
2419,0,0,12:16:20:24:28,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_POEMOFNETHERWORLD#Poem of Netherworld# 2419,0,0,12:16:20:24:28,0,0,0,13:14,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_POEMOFNETHERWORLD#Poem of Netherworld#
2420,0,0,48:56:64:72:80,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_VOICEOFSIREN#Voice of Siren# 2420,0,0,48:56:64:72:80,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_VOICEOFSIREN#Voice of Siren#
2421,0,0,50:53:56:59:62,0,0,0,99,0,0,none,0,0,6144,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DEADHILLHERE#Valley of Death# 2421,0,0,50:53:56:59:62,0,0,0,13:14,0,0,none,0,0,6144,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DEADHILLHERE#Valley of Death#
2422,0,0,80:90:100:110:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LULLABY_DEEPSLEEP#Deep Sleep Lullaby# 2422,0,0,80:90:100:110:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LULLABY_DEEPSLEEP#Deep Sleep Lullaby#
2423,0,0,42:46:50:54:58,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SIRCLEOFNATURE#Circle of Nature's Sound# 2423,0,0,42:46:50:54:58,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SIRCLEOFNATURE#Circle of Nature's Sound#
2424,0,0,40:45:50:55:60,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_RANDOMIZESPELL#Improvised Song# 2424,0,0,40:45:50:55:60,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_RANDOMIZESPELL#Improvised Song#
2425,0,0,60,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MW_GLOOMYDAY#Gloomy Day# 2425,0,0,60:75:90:105:120,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MW_GLOOMYDAY#Gloomy Day#
2426,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_GREAT_ECHO#Great Echo# - Missing 1 Lozange. Need item ID. 2426,0,0,80:90:100:110:120,0,0,0,99,0,0,none,0,0,11513,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_GREAT_ECHO#Great Echo# - Missing 1 Lozange. Need item ID.
2427,0,0,120:140:160:180:200,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SONG_OF_MANA#Song of Mana# 2427,0,0,120:140:160:180:200,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SONG_OF_MANA#Song of Mana#
2428,0,0,120:140:160:180:200,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DANCE_WITH_WUG#Dance With Warg# 2428,0,0,120:140:160:180:200,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_DANCE_WITH_WUG#Dance With Warg#
2429,0,0,50:60:70:80:90,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SOUND_OF_DESTRUCTION#Sound of Destruction# 2429,0,0,50:60:70:80:90,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SOUND_OF_DESTRUCTION#Sound of Destruction#
2430,0,0,150:160:170:180:190,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SATURDAY_NIGHT_FEVER#Saturday Night Fever# 2430,0,0,150:160:170:180:190,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_SATURDAY_NIGHT_FEVER#Saturday Night Fever#
2431,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LERADS_DEW#Lerad's Dew# 2431,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_LERADS_DEW#Lerad's Dew#
2432,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_MELODYOFSINK#Melody of Sink# 2432,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_MELODYOFSINK#Melody of Sink#
2433,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_WARCRY_OF_BEYOND#Warcry of Beyond# 2433,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_WARCRY_OF_BEYOND#Warcry of Beyond#
2434,0,0,120:130:140:150:160,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_UNLIMITED_HUMMING_VOICE#Unlimited Humming Voice# 2434,0,0,120:130:140:150:160,0,0,0,13:14,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //WM_UNLIMITED_HUMMING_VOICE#Unlimited Humming Voice#
//**** //****
// SO Sorcerer // SO Sorcerer

View File

@ -103,12 +103,13 @@
//706,0xfd, , 0, 0,1000,all, 0x000 //NPC_VENOMFOG //706,0xfd, , 0, 0,1000,all, 0x000 //NPC_VENOMFOG
2044,0xca, , 0, 2,1000,all, 0x018 //AB_EPICLESIS 2044,0xca, , 0, 2,3000,all, 0x018 //AB_EPICLESIS
2032,0xe1, , 2, 0,1000,enemy, 0x018 //GC_POISONSMOKE 2032,0xe1, , 2, 0,1000,enemy, 0x018 //GC_POISONSMOKE
2213,0x86, , 0, 9,1000,enemy, 0x018 //WL_COMET
2214,0x86, , 0, 5, 100,enemy, 0x080 //WL_CHAINLIGHTNING 2214,0x86, , 0, 5, 100,enemy, 0x080 //WL_CHAINLIGHTNING
2216,0xcb, , -1, 0, 150,enemy, 0x018 //WL_EARTHSTRAIN 2216,0xcb, , -1, 2,2000,enemy, 0x018 //WL_EARTHSTRAIN
2238,0xd8, , 0, 1,1000,enemy, 0x006 //RA_ELECTRICSHOCKER 2238,0xd8, , 0, 1,1000,enemy, 0x006 //RA_ELECTRICSHOCKER
2239,0xd9, , 0, 1,1000,enemy, 0x006 //RA_CLUSTERBOMB 2239,0xd9, , 0, 1,1000,enemy, 0x006 //RA_CLUSTERBOMB
@ -124,15 +125,15 @@
2299,0xcc, , 0, 1,1000,all, 0x006 //SC_MANHOLE 2299,0xcc, , 0, 1,1000,all, 0x006 //SC_MANHOLE
2300,0xcd, , 0, 1,1000,all, 0x006 //SC_DIMENSIONDOOR 2300,0xcd, , 0, 1,1000,all, 0x006 //SC_DIMENSIONDOOR
2301,0xce, , 2, 0, -1,all, 0x200E //SC_CHAOSPANIC 2301,0xce, , 0, 2, -1,all, 0x200E //SC_CHAOSPANIC
2302,0xcf, , 0, 2, -1,enemy, 0x002 //SC_MAELSTROM 2302,0xcf, , 0, 2, -1,enemy, 0x002 //SC_MAELSTROM
2303,0xd0, , 3, 0, -1,all, 0x2018 //SC_BLOODYLUST 2303,0xd0, , 0, 2, -1,all, 0x2018 //SC_BLOODYLUST
2304,0xd1, , 0, 2, -1,enemy, 0x000 //SC_FEINTBOMB 2304,0xd1, , 0, 2,1000,enemy, 0x018 //SC_FEINTBOMB
2317,0x86, , -1, 0, -1,enemy, 0x010 //LG_OVERBRAND 2317,0x86, , -1, 0, -1,enemy, 0x010 //LG_OVERBRAND
2319,0xec, , 0, 3,5000,all, 0x000 //LG_BANDING 2319,0xec, , 0, 3,5000,all, 0x000 //LG_BANDING
2414,0xda, , 0, 0,1000,enemy, 0x008 //WM_REVERBERATION 2414,0xda, , 0, 1,1000,enemy, 0x008 //WM_REVERBERATION
2418,0xdb, , 0, 5, 300,enemy, 0x800 //WM_SEVERE_RAINSTORM 2418,0xdb, , 0, 5, 300,enemy, 0x800 //WM_SEVERE_RAINSTORM
2419,0xde, , 0, 1,1000,all, 0x014 //WM_POEMOFNETHERWORLD 2419,0xde, , 0, 1,1000,all, 0x014 //WM_POEMOFNETHERWORLD
@ -141,20 +142,20 @@
2446,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_EARTHGRAVE 2446,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_EARTHGRAVE
2447,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_DIAMONDDUST 2447,0x86, , 0, 3:3:3:4:4,1000,enemy, 0x018 //SO_DIAMONDDUST
2449,0xdf, , 0, 3:3:4:4:5,500,enemy, 0x018 //SO_PSYCHIC_WAVE 2449,0xdf, , 0, 3:3:4:4:5,500,enemy, 0x018 //SO_PSYCHIC_WAVE
2450,0xe0, , 0, 3, 500,enemy, 0x010 //SO_CLOUD_KILL 2450,0xe0, , 3, 0, 500,enemy, 0x010 //SO_CLOUD_KILL
2452,0xe4, , 0, 3,3000,all, 0x010 //SO_WARMER 2452,0xe4, , 0, 3,3000,all, 0x010 //SO_WARMER
2453,0xeb, , 0, 1:1:2:2:3,1000,enemy,0x010 //SO_VACUUM_EXTREME 2453,0xeb, , 0, 1:1:2:2:3,500,enemy,0x010 //SO_VACUUM_EXTREME
2465,0xf1, , 0, 1,1000,all, 0x010 //SO_FIRE_INSIGNIA 2465,0xf1, , 0, 1,1000,all, 0x010 //SO_FIRE_INSIGNIA
2466,0xf2, , 0, 1,1000,all, 0x010 //SO_WATER_INSIGNIA 2466,0xf2, , 0, 1,1000,all, 0x010 //SO_WATER_INSIGNIA
2467,0xf3, , 0, 1,1000,all, 0x010 //SO_WIND_INSIGNIA 2467,0xf3, , 0, 1,1000,all, 0x010 //SO_WIND_INSIGNIA
2468,0xf4, , 0, 1,1000,all, 0x010 //SO_EARTH_INSIGNIA 2468,0xf4, , 0, 1,1000,all, 0x010 //SO_EARTH_INSIGNIA
2479,0xe5, , 0, 1,1000,enemy, 0x006 //GN_THORNS_TRAP 2479,0xe5, , 0, 1,1000,enemy, 0x006 //GN_THORNS_TRAP
2482,0xe6,0x7f, -1, 1, -1,all, 0x000 //GN_WALLOFTHORN 2482,0xe6,0x7f, -1, 1, 100,all, 0x000 //GN_WALLOFTHORN
2484,0x86, , 0, 1, 100,enemy, 0x080 //GN_CRAZYWEED_ATK 2484,0x86, , 0, 1, 100,enemy, 0x080 //GN_CRAZYWEED_ATK
2485,0xe7, , 0, 3,1000,enemy, 0x098 //GN_DEMONIC_FIRE 2485,0xe7, , 0, 2,2000,enemy, 0x098 //GN_DEMONIC_FIRE
2487,0xe8, , 0, 3,1000,enemy, 0x000 //GN_FIRE_EXPANSION_SMOKE_POWDER 2487,0xe8, , 0, 2, 500,enemy, 0x000 //GN_FIRE_EXPANSION_SMOKE_POWDER
2488,0xe9, , 0, 3,1000,enemy, 0x000 //GN_FIRE_EXPANSION_TEAR_GAS 2488,0xe9, , 0, 2, 500,enemy, 0x000 //GN_FIRE_EXPANSION_TEAR_GAS
2490,0xea, , 0, 1,1000,enemy, 0x002 //GN_HELLS_PLANT 2490,0xea, , 0, 1,1000,enemy, 0x002 //GN_HELLS_PLANT
2555,0x104, , 0, 1:2:2:3:3,500,enemy,0x006 //RL_B_TRAP 2555,0x104, , 0, 1:2:2:3:3,500,enemy,0x006 //RL_B_TRAP

View File

@ -4960,7 +4960,7 @@ REPLACE INTO `item_db` VALUES (12379,'Pope\'s_Cookie','Pope Cookie',2,10,NULL,10
REPLACE INTO `item_db` VALUES (12380,'Desert_Wolf_Babe_Scroll','Job Change Flute',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'mercenary_create 2034,1800000;',NULL,NULL); REPLACE INTO `item_db` VALUES (12380,'Desert_Wolf_Babe_Scroll','Job Change Flute',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'mercenary_create 2034,1800000;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12381,'ValkyrieA_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; }',NULL,NULL); REPLACE INTO `item_db` VALUES (12381,'ValkyrieA_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; }',NULL,NULL);
REPLACE INTO `item_db` VALUES (12382,'ValkyrieB_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; }',NULL,NULL); REPLACE INTO `item_db` VALUES (12382,'ValkyrieB_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; }',NULL,NULL);
REPLACE INTO `item_db` VALUES (12383,'Vulcan_Bullet_Magazine','Vulcan Bullet Magazine',2,11000,NULL,500,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12383,'Vulcan_Bullet_Magazine','Vulcan Bullet Magazine',2,11000,NULL,500,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'getitem 6145,1000;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12384,'Rainbow_Ruby_Water','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } */',NULL,NULL); REPLACE INTO `item_db` VALUES (12384,'Rainbow_Ruby_Water','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; } */',NULL,NULL);
REPLACE INTO `item_db` VALUES (12385,'Rainbow_Ruby_Fire','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } */',NULL,NULL); REPLACE INTO `item_db` VALUES (12385,'Rainbow_Ruby_Fire','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; } */',NULL,NULL);
REPLACE INTO `item_db` VALUES (12386,'Rainbow_Ruby_Wind','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } */',NULL,NULL); REPLACE INTO `item_db` VALUES (12386,'Rainbow_Ruby_Wind','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; } */',NULL,NULL);
@ -4969,9 +4969,9 @@ REPLACE INTO `item_db` VALUES (12388,'Runstone_Crush','Rhydo Runestone For Appre
REPLACE INTO `item_db` VALUES (12389,'Runstone_Storm','Pertz Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } */',NULL,NULL); REPLACE INTO `item_db` VALUES (12389,'Runstone_Storm','Pertz Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; } */',NULL,NULL);
REPLACE INTO `item_db` VALUES (12390,'Runstone_Millennium','Verkana Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } */',NULL,NULL); REPLACE INTO `item_db` VALUES (12390,'Runstone_Millennium','Verkana Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'/* if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; } */',NULL,NULL);
REPLACE INTO `item_db` VALUES (12391,'Lucky_Egg_C','Lucky Egg',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12391,'Lucky_Egg_C','Lucky Egg',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
REPLACE INTO `item_db` VALUES (12392,'Repair_A','Repair A',0,220,NULL,70,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'/* madoheal rand(200,300),0; */',NULL,NULL); REPLACE INTO `item_db` VALUES (12392,'Repair_A','Repair A',0,220,NULL,100,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(200,300),0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12393,'Repair_B','Repair B',0,500,NULL,70,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'/* madoheal rand(300,400),0; */',NULL,NULL); REPLACE INTO `item_db` VALUES (12393,'Repair_B','Repair B',0,500,NULL,140,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(300,400),0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12394,'Repair_C','Repair C',0,1100,NULL,70,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'/* madoheal rand(400,500),0; */',NULL,NULL); REPLACE INTO `item_db` VALUES (12394,'Repair_C','Repair C',0,1100,NULL,180,NULL,NULL,NULL,NULL,0x00000400,8,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(400,500),0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12395,'Tantanmen','Tantan Noodle',2,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'pet 1519;',NULL,NULL); REPLACE INTO `item_db` VALUES (12395,'Tantanmen','Tantan Noodle',2,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'pet 1519;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12396,'Fools_Day_Box','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10;',NULL,NULL); REPLACE INTO `item_db` VALUES (12396,'Fools_Day_Box','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12397,'Fools_Day_Box2','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196;',NULL,NULL); REPLACE INTO `item_db` VALUES (12397,'Fools_Day_Box2','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196;',NULL,NULL);
@ -4994,11 +4994,11 @@ REPLACE INTO `item_db` VALUES (12413,'PCBang_Coupon_Box2','PCBang Coupon Box2',2
REPLACE INTO `item_db` VALUES (12414,'Guarana_Candy','Guarana Candy',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0;',NULL,NULL); REPLACE INTO `item_db` VALUES (12414,'Guarana_Candy','Guarana Candy',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12415,'Siege_Teleport_Scroll2','Siege Teleport Scroll Silver',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12415,'Siege_Teleport_Scroll2','Siege Teleport Scroll Silver',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
REPLACE INTO `item_db` VALUES (12416,'Lucky_Egg_C3','Lucky Egg C3',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12416,'Lucky_Egg_C3','Lucky Egg C3',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
REPLACE INTO `item_db` VALUES (12417,'Boost500','Boost500',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12417,'Boost500','Boost500',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_BOOST500,500000,10;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12418,'Full_SwingK','Full SwingK',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12418,'Full_SwingK','Full SwingK',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_FULL_SWING_K,500000,50;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12419,'Mana_Plus','Mana Plus',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12419,'Mana_Plus','Mana Plus',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_MANA_PLUS,500000,50;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12420,'Stamina_Up_M','Stamina Up M',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12420,'Stamina_Up_M','Stamina Up M',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_MUSTLE_M,500000,5;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12421,'Falmons_F','Falmons F',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db` VALUES (12421,'Falmons_F','Falmons F',3,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,7,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_LIFE_FORCE_F,500000,5;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12422,'HP_Increase_Potion_(Small)','HP Increase Potion (Small)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0;',NULL,NULL); REPLACE INTO `item_db` VALUES (12422,'HP_Increase_Potion_(Small)','HP Increase Potion (Small)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12423,'HP_Increase_Potion_(Medium)','HP Increase Potion (Medium)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0;',NULL,NULL); REPLACE INTO `item_db` VALUES (12423,'HP_Increase_Potion_(Medium)','HP Increase Potion (Medium)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0;',NULL,NULL);
REPLACE INTO `item_db` VALUES (12424,'HP_Increase_Potion_(Large)','HP Increase Potion (Large)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0;',NULL,NULL); REPLACE INTO `item_db` VALUES (12424,'HP_Increase_Potion_(Large)','HP Increase Potion (Large)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0;',NULL,NULL);

View File

@ -5890,7 +5890,7 @@ REPLACE INTO `item_db_re` VALUES (12379,'Pope\'s_Cookie','Pope Cookie',2,10,NULL
REPLACE INTO `item_db_re` VALUES (12380,'Desert_Wolf_Babe_Scroll','Job Change Flute',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'mercenary_create 2034,1800000;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12380,'Desert_Wolf_Babe_Scroll','Job Change Flute',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'mercenary_create 2034,1800000;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12381,'ValkyrieA_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12381,'ValkyrieA_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2037,1800000; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12382,'ValkyrieB_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12382,'ValkyrieB_Scroll','Ancient Languages Scroll',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_arch02") { mercenary_create 2038,1800000; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12383,'Vulcan_Bullet_Magazine','Vulcan Bullet Magazine',2,11000,NULL,500,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12383,'Vulcan_Bullet_Magazine','Vulcan Bullet Magazine',2,11000,NULL,500,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getitem 6145,1000;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12384,'Rainbow_Ruby_Water','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12384,'Rainbow_Ruby_Water','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_FROSTMISTY",5; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12385,'Rainbow_Ruby_Fire','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12385,'Rainbow_Ruby_Fire','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_CRIMSONROCK",5; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12386,'Rainbow_Ruby_Wind','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12386,'Rainbow_Ruby_Wind','Rainbow Ruby',11,0,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_war02") { itemskill "WL_CHAINLIGHTNING",5; }',NULL,NULL);
@ -5899,9 +5899,9 @@ REPLACE INTO `item_db_re` VALUES (12388,'Runstone_Crush','Rhydo Runestone For Ap
REPLACE INTO `item_db_re` VALUES (12389,'Runstone_Storm','Pertz Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12389,'Runstone_Storm','Pertz Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_rune02") { itemskill "RK_STORMBLAST",1; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12390,'Runstone_Millennium','Verkana Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; }',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12390,'Runstone_Millennium','Verkana Runestone For Apprentice',11,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(strcharinfo(3)=="job3_rune02") { itemskill "RK_MILLENNIUMSHIELD",1; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12391,'Lucky_Egg_C','Lucky Egg C',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getgroupitem(IG_Lucky_Egg_C);',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12391,'Lucky_Egg_C','Lucky Egg C',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getgroupitem(IG_Lucky_Egg_C);',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12392,'Repair_A','Repair A',0,220,NULL,70,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'/*madoheal rand(200,300),0; */',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12392,'Repair_A','Repair A',0,220,NULL,100,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(200,300),0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12393,'Repair_B','Repair B',0,500,NULL,70,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'/*madoheal rand(300,400),0; */',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12393,'Repair_B','Repair B',0,500,NULL,140,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(300,400),0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12394,'Repair_C','Repair C',0,1100,NULL,70,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'/*madoheal rand(400,500),0; */',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12394,'Repair_C','Repair C',0,1100,NULL,180,NULL,NULL,NULL,NULL,0x00000400,56,2,NULL,NULL,NULL,NULL,NULL,'if ( checkmadogear() ) { itemheal rand(400,500),0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12395,'Tantanmen','Tantan Noodle',2,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'pet 1519;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12395,'Tantanmen','Tantan Noodle',2,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'pet 1519;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12396,'Fools_Day_Box','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12396,'Fools_Day_Box','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12397,'Fools_Day_Box2','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12397,'Fools_Day_Box2','Gift Box?',11,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196;',NULL,NULL);
@ -5924,11 +5924,11 @@ REPLACE INTO `item_db_re` VALUES (12413,'PCBang_Coupon_Box2','PC Cafe Coupon Box
REPLACE INTO `item_db_re` VALUES (12414,'Guarana_Candy','Guarana Candy',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12414,'Guarana_Candy','Guarana Candy',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ASPDPOTION0,1800000,0; sc_start SC_INCREASEAGI,140000,5; skilleffect "AL_INCAGI",0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12415,'Siege_Teleport_Scroll2','Siege Teleport Scroll Silver',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12415,'Siege_Teleport_Scroll2','Siege Teleport Scroll Silver',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12416,'Lucky_Egg_C3','Lucky Egg C3',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getgroupitem(IG_Lucky_Egg_C3);',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12416,'Lucky_Egg_C3','Lucky Egg C3',2,20,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getgroupitem(IG_Lucky_Egg_C3);',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12417,'Boost500','Boost500',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12417,'Boost500','Boost500',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_BOOST500,500000,10;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12418,'Full_SwingK','Full SwingK',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12418,'Full_SwingK','Full SwingK',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_FULL_SWING_K,500000,50;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12419,'Mana_Plus','Mana Plus',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12419,'Mana_Plus','Mana Plus',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_MANA_PLUS,500000,50;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12420,'Stamina_Up_M','Stamina Up M',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12420,'Stamina_Up_M','Stamina Up M',2,100,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_MUSTLE_M,500000,5;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12421,'Falmons_F','Falmons F',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (12421,'Falmons_F','Falmons F',3,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_LIFE_FORCE_F,500000,5;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12422,'HP_Increase_Potion_(Small)','HP Increase Potion (Small)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12422,'HP_Increase_Potion_(Small)','HP Increase Potion (Small)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(500+(BaseLevel*10/3)); percentheal 1,0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12423,'HP_Increase_Potion_(Medium)','HP Increase Potion (Medium)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12423,'HP_Increase_Potion_(Medium)','HP Increase Potion (Medium)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(1500+(BaseLevel*10/3)); percentheal 2,0;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (12424,'HP_Increase_Potion_(Large)','HP Increase Potion (Large)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (12424,'HP_Increase_Potion_(Large)','HP Increase Potion (Large)',0,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_INCMHP,500000,(2500+(BaseLevel*10/3)); percentheal 5,0;',NULL,NULL);

View File

@ -4531,7 +4531,7 @@ int parse_char(int fd)
strcmp("a@a.com", sd->email) || //it is not default email, or strcmp("a@a.com", sd->email) || //it is not default email, or
(strcmp("a@a.com", email) && strcmp("", email)) //email sent does not matches default (strcmp("a@a.com", email) && strcmp("", email)) //email sent does not matches default
)) ))
|| !char_del_option&1 || !(char_del_option&1)
) { //Fail ) { //Fail
WFIFOHEAD(fd,3); WFIFOHEAD(fd,3);
WFIFOW(fd,0) = 0x70; WFIFOW(fd,0) = 0x70;

View File

@ -1156,29 +1156,9 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam
if (hd && (rnd()%100<50) ) hom_addspiritball(hd, 10); // According to WarpPortal, this is a flat 50% chance if (hd && (rnd()%100<50) ) hom_addspiritball(hd, 10); // According to WarpPortal, this is a flat 50% chance
} }
if( sc->data[SC__DEADLYINFECT] && damage > 0 && rnd()%100 < 65 + 5 * sc->data[SC__DEADLYINFECT]->val1 ) if( sc->data[SC__DEADLYINFECT] && damage > 0 && rnd()%100 < 30 + 10 * sc->data[SC__DEADLYINFECT]->val1 )
status_change_spread(bl, src); // Deadly infect attacked side status_change_spread(bl, src); // Deadly infect attacked side
if( sc && sc->data[SC__SHADOWFORM] ) {
struct block_list *s_bl = map_id2bl(sc->data[SC__SHADOWFORM]->val2);
if( !s_bl || s_bl->m != bl->m ) { // If the shadow form target is not present remove the sc.
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
} else if( status_isdead(s_bl) || !battle_check_target(src,s_bl,BCT_ENEMY)) { // If the shadow form target is dead or not your enemy remove the sc in both.
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
if( s_bl->type == BL_PC )
((TBL_PC*)s_bl)->shadowform_id = 0;
} else {
if( (--sc->data[SC__SHADOWFORM]->val3) < 0 ) { // If you have exceded max hits supported, remove the sc in both.
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
if( s_bl->type == BL_PC )
((TBL_PC*)s_bl)->shadowform_id = 0;
} else {
status_damage(bl, s_bl, damage, 0, clif_damage(s_bl, s_bl, gettick(), 500, 500, damage, -1, 0, 0), 0);
return ATK_NONE;
}
}
}
} //End of target SC_ check } //End of target SC_ check
//SC effects from caster side. //SC effects from caster side.
@ -1217,7 +1197,7 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam
&& ((flag&BF_WEAPON) && (!skill_id || skill_id == GC_VENOMPRESSURE)) //chk skill type poison_smoke is a unit && ((flag&BF_WEAPON) && (!skill_id || skill_id == GC_VENOMPRESSURE)) //chk skill type poison_smoke is a unit
&& (damage > 0 && rnd()%100 < sc->data[SC_POISONINGWEAPON]->val3 )) //did some dammage and chance ok (why no additional effect ?? && (damage > 0 && rnd()%100 < sc->data[SC_POISONINGWEAPON]->val3 )) //did some dammage and chance ok (why no additional effect ??
sc_start(src,bl,(enum sc_type)sc->data[SC_POISONINGWEAPON]->val2,100,sc->data[SC_POISONINGWEAPON]->val1,skill_get_time2(GC_POISONINGWEAPON, 1)); sc_start(src,bl,(enum sc_type)sc->data[SC_POISONINGWEAPON]->val2,100,sc->data[SC_POISONINGWEAPON]->val1,skill_get_time2(GC_POISONINGWEAPON, 1));
if( sc->data[SC__DEADLYINFECT] && damage > 0 && rnd()%100 < 65 + 5 * sc->data[SC__DEADLYINFECT]->val1 ) if( sc->data[SC__DEADLYINFECT] && damage > 0 && rnd()%100 < 30 + 10 * sc->data[SC__DEADLYINFECT]->val1 )
status_change_spread(src, bl); status_change_spread(src, bl);
if (sc->data[SC_STYLE_CHANGE] && sc->data[SC_STYLE_CHANGE]->val1 == MH_MD_FIGHTING) { if (sc->data[SC_STYLE_CHANGE] && sc->data[SC_STYLE_CHANGE]->val1 == MH_MD_FIGHTING) {
TBL_HOM *hd = BL_CAST(BL_HOM,src); //when attacking TBL_HOM *hd = BL_CAST(BL_HOM,src); //when attacking
@ -1422,7 +1402,7 @@ int64 battle_addmastery(struct map_session_data *sd,struct block_list *target,in
if( (skill = pc_checkskill(sd,NC_RESEARCHFE)) > 0 && (status->def_ele == ELE_FIRE || status->def_ele == ELE_EARTH) ) if( (skill = pc_checkskill(sd,NC_RESEARCHFE)) > 0 && (status->def_ele == ELE_FIRE || status->def_ele == ELE_EARTH) )
damage += (skill * 10); damage += (skill * 10);
if( pc_ismadogear(sd) ) if( pc_ismadogear(sd) )
damage += 20 + 20 * pc_checkskill(sd, NC_MADOLICENCE); damage += 15 + pc_checkskill(sd, NC_MADOLICENCE);
if((skill = pc_checkskill(sd,HT_BEASTBANE)) > 0 && (status->race==RC_BRUTE || status->race==RC_INSECT) ) { if((skill = pc_checkskill(sd,HT_BEASTBANE)) > 0 && (status->race==RC_BRUTE || status->race==RC_INSECT) ) {
damage += (skill * 4); damage += (skill * 4);
@ -3240,7 +3220,7 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
} }
break; break;
case RK_STORMBLAST: case RK_STORMBLAST:
skillratio = ((sd ? pc_checkskill(sd,RK_RUNEMASTERY) : 1) + (sstatus->int_ / 8)) * 100; // ATK = [{Rune Mastery Skill Level + (Caster's INT / 8)} x 100] % skillratio = (((sd) ? pc_checkskill(sd,RK_RUNEMASTERY) : skill_get_max(RK_RUNEMASTERY)) + (status_get_int(src) / 8)) * 100; // ATK = [{Rune Mastery Skill Level + (Caster's INT / 8)} x 100] %
break; break;
case RK_PHANTOMTHRUST: // ATK = [{(Skill Level x 50) + (Spear Master Level x 10)} x Caster's Base Level / 150] % case RK_PHANTOMTHRUST: // ATK = [{(Skill Level x 50) + (Spear Master Level x 10)} x Caster's Base Level / 150] %
skillratio = 50 * skill_lv + 10 * (sd ? pc_checkskill(sd,KN_SPEARMASTERY) : 5); skillratio = 50 * skill_lv + 10 * (sd ? pc_checkskill(sd,KN_SPEARMASTERY) : 5);
@ -3260,7 +3240,7 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
//ATK [{(Skill Level x 100) + 300} x Caster's Base Level / 120]% + ATK [(AGI x 2) + (Caster's Job Level x 4)]% //ATK [{(Skill Level x 100) + 300} x Caster's Base Level / 120]% + ATK [(AGI x 2) + (Caster's Job Level x 4)]%
skillratio += 200 + (100 * skill_lv); skillratio += 200 + (100 * skill_lv);
RE_LVL_DMOD(120); RE_LVL_DMOD(120);
skillratio += sstatus->agi + (sd?sd->status.job_level:0) * 4; skillratio += status_get_agi(src) * 2 + (sd?sd->status.job_level:0) * 4;
break; break;
case GC_ROLLINGCUTTER: case GC_ROLLINGCUTTER:
skillratio += -50 + 50 * skill_lv; skillratio += -50 + 50 * skill_lv;
@ -3270,7 +3250,7 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
skillratio += 300 + 80 * skill_lv; skillratio += 300 + 80 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_ROLLINGCUTTER] ) if( sc && sc->data[SC_ROLLINGCUTTER] )
skillratio += sc->data[SC_ROLLINGCUTTER]->val1 * sstatus->agi; skillratio += sc->data[SC_ROLLINGCUTTER]->val1 * status_get_agi(src);
break; break;
/** /**
* Arch Bishop * Arch Bishop
@ -3309,29 +3289,29 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
* Mechanic * Mechanic
**/ **/
case NC_BOOSTKNUCKLE: case NC_BOOSTKNUCKLE:
skillratio += 100 + 100 * skill_lv + sstatus->dex; skillratio += 100 + 100 * skill_lv + status_get_dex(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(120);
break; break;
case NC_PILEBUNKER: case NC_PILEBUNKER:
skillratio += 200 + 100 * skill_lv + sstatus->str; skillratio += 200 + 100 * skill_lv + status_get_str(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case NC_VULCANARM: case NC_VULCANARM:
skillratio = 70 * skill_lv + sstatus->dex; skillratio = 70 * skill_lv + status_get_dex(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(120);
break; break;
case NC_FLAMELAUNCHER: case NC_FLAMELAUNCHER:
case NC_COLDSLOWER: case NC_COLDSLOWER:
skillratio += 200 + 300 * skill_lv; skillratio += 200 + 300 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(150);
break; break;
case NC_ARMSCANNON: case NC_ARMSCANNON:
switch( tstatus->size ) { switch( tstatus->size ) {
case SZ_SMALL: skillratio += 100 + 500 * skill_lv; break;// Small case SZ_SMALL: skillratio += 200 + 400 * skill_lv; break;// Small
case SZ_MEDIUM: skillratio += 100 + 400 * skill_lv; break;// Medium case SZ_MEDIUM: skillratio += 200 + 350 * skill_lv; break;// Medium
case SZ_BIG: skillratio += 100 + 300 * skill_lv; break;// Large case SZ_BIG: skillratio += 200 + 300 * skill_lv; break;// Large
} }
RE_LVL_DMOD(100); RE_LVL_DMOD(120);
//NOTE: Their's some other factors that affects damage, but not sure how exactly. Will recheck one day. [Rytech] //NOTE: Their's some other factors that affects damage, but not sure how exactly. Will recheck one day. [Rytech]
break; break;
case NC_AXEBOOMERANG: case NC_AXEBOOMERANG:
@ -3344,60 +3324,63 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case NC_POWERSWING: // According to current sources, only the str + dex gets modified by level [Akinari] case NC_POWERSWING: // According to current sources, only the str + dex gets modified by level [Akinari]
skillratio = sstatus->str + sstatus->dex; skillratio = status_get_str(src) + status_get_dex(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
skillratio += 200 + 100 * skill_lv; skillratio += 200 + 100 * skill_lv;
break; break;
case NC_AXETORNADO: case NC_AXETORNADO:
skillratio += 100 + 100 * skill_lv + sstatus->vit; skillratio += 100 + 100 * skill_lv + status_get_vit(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SC_FATALMENACE: case SC_FATALMENACE:
skillratio += 100 * skill_lv; skillratio += 100 * skill_lv;
break; break;
case SC_TRIANGLESHOT: case SC_TRIANGLESHOT:
skillratio += ((skill_lv - 1) * (sstatus->agi / 2)) + 200; skillratio += ((skill_lv - 1) * (status_get_agi(src) / 2)) + 200;
RE_LVL_DMOD(120); RE_LVL_DMOD(120);
break; break;
case SC_FEINTBOMB: case SC_FEINTBOMB:
skillratio = (skill_lv + 1) * (sstatus->dex / 2) * (sd?(sd->status.job_level / 10):5); skillratio = (skill_lv + 1) * (status_get_dex(src) / 2) * (sd?(sd->status.job_level / 10):5);
RE_LVL_DMOD(120); RE_LVL_DMOD(120);
break; break;
case LG_CANNONSPEAR:// Stimated formula. Still need confirm it. case LG_CANNONSPEAR:
skillratio += -100 + (50 + sstatus->str) * skill_lv; skillratio = (50 * skill_lv) + (status_get_str(src) * skill_lv);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_BANISHINGPOINT: case LG_BANISHINGPOINT:
skillratio += -100 + ((50 * skill_lv) + (30 * ((sd)?pc_checkskill(sd,SM_BASH):1))); skillratio = (50 * skill_lv) + (30 * ((sd) ? pc_checkskill(sd,SM_BASH) : skill_get_max(SM_BASH)));
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_SHIELDPRESS: case LG_SHIELDPRESS:
skillratio = 150 * skill_lv + sstatus->str; skillratio = 150 * skill_lv + status_get_str(src);
if( sd ) { if( sd ) {
short index = sd->equip_index[EQI_HAND_L]; short index = sd->equip_index[EQI_HAND_L];
if( index >= 0 && sd->inventory_data[index] && sd->inventory_data[index]->type == IT_ARMOR ) { if( index >= 0 && sd->inventory_data[index] && sd->inventory_data[index]->type == IT_ARMOR ) {
skillratio += sd->inventory_data[index]->weight / 10; skillratio += sd->inventory_data[index]->weight / 10;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
skillratio += sstatus->vit * sd->status.inventory[index].refine; skillratio += status_get_vit(src) * sd->status.inventory[index].refine;
} }
} else { } else {
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
} }
break; break;
case LG_PINPOINTATTACK: case LG_PINPOINTATTACK:
skillratio = ((100 * skill_lv) + (10 * status_get_agi(src)) ); skillratio = (100 * skill_lv) + (5 * status_get_agi(src));
RE_LVL_DMOD(100); RE_LVL_DMOD(120);
break; break;
case LG_RAGEBURST: case LG_RAGEBURST:
if( sd && sd->spiritball_old ) if( sd && sd->spiritball_old )
skillratio += -100 + (sd->spiritball_old * 200); skillratio = sd->spiritball_old * 200 + (status_get_max_hp(src) - status_get_hp(src)) / 100;
else else
skillratio += -100 + 15 * 200; skillratio = 15 * 200;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_SHIELDSPELL:// [(Casters Base Level x 4) + (Shield DEF x 10) + (Casters VIT x 2)] % case LG_SHIELDSPELL:// [(Casters Base Level x 4) + (Shield DEF x 10) + (Casters VIT x 2)] %
if( sd ) { if( sd ) {
struct item_data *shield_data = sd->inventory_data[sd->equip_index[EQI_HAND_L]]; int index = sd->equip_index[EQI_HAND_L];
struct item_data *shield_data;
if( index >= 0 && sd->inventory_data[index] && sd->inventory_data[index]->type == IT_ARMOR )
shield_data = sd->inventory_data[index];
skillratio = status_get_lv(src) * 4 + status_get_vit(src) * 2; skillratio = status_get_lv(src) * 4 + status_get_vit(src) * 2;
if( shield_data ) if( shield_data )
skillratio += shield_data->def * 10; skillratio += shield_data->def * 10;
@ -3405,15 +3388,15 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
skillratio = 0; // Prevent damage since level 2 is MATK. [Aleos] skillratio = 0; // Prevent damage since level 2 is MATK. [Aleos]
break; break;
case LG_MOONSLASHER: case LG_MOONSLASHER:
skillratio += -100 + (120 * skill_lv + ((sd) ? pc_checkskill(sd,LG_OVERBRAND) : 5) * 80); skillratio = 120 * skill_lv + ((sd) ? pc_checkskill(sd,LG_OVERBRAND) : skill_get_max(LG_OVERBRAND)) * 80;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_OVERBRAND: case LG_OVERBRAND:
skillratio = 200 * skill_lv + (pc_checkskill(sd,CR_SPEARQUICKEN) * 50); skillratio = 200 * skill_lv + ((sd) ? pc_checkskill(sd,CR_SPEARQUICKEN) : skill_get_max(CR_SPEARQUICKEN)) * 50;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_OVERBRAND_BRANDISH: case LG_OVERBRAND_BRANDISH:
skillratio = 100 * skill_lv + (sstatus->str + sstatus->dex); skillratio = 100 * skill_lv + (status_get_str(src) + status_get_dex(src));
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_OVERBRAND_PLUSATK: // Only Piercing and Swing damage get RE_LVL_DMOD bonus damage case LG_OVERBRAND_PLUSATK: // Only Piercing and Swing damage get RE_LVL_DMOD bonus damage
@ -3424,11 +3407,18 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_EARTHDRIVE: case LG_EARTHDRIVE:
skillratio = (skillratio + 100) * skill_lv; skillratio += skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case LG_HESPERUSLIT: case LG_HESPERUSLIT:
skillratio += 120 * skill_lv - 100; skillratio = 120 * skill_lv;
if( sc && sc->data[SC_BANDING] )
skillratio += 200 * sc->data[SC_BANDING]->val2;
if( sc && sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 5 )
skillratio = skillratio * 150 / 100;
if( sc && sc->data[SC_INSPIRATION] )
skillratio += 600;
RE_LVL_DMOD(100);
break; break;
case SR_DRAGONCOMBO: case SR_DRAGONCOMBO:
skillratio += 40 * skill_lv; skillratio += 40 * skill_lv;
@ -3436,9 +3426,9 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
break; break;
case SR_SKYNETBLOW: case SR_SKYNETBLOW:
//ATK [{(Skill Level x 80) + (Caster AGI)} x Caster Base Level / 100] % //ATK [{(Skill Level x 80) + (Caster AGI)} x Caster Base Level / 100] %
skillratio = 80 * skill_lv + sstatus->agi; skillratio = 80 * skill_lv + status_get_agi(src);
if( sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_DRAGONCOMBO )//ATK [{(Skill Level x 100) + (Caster AGI) + 150} x Caster Base Level / 100] % if( sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_DRAGONCOMBO )//ATK [{(Skill Level x 100) + (Caster AGI) + 150} x Caster Base Level / 100] %
skillratio = 100 * skill_lv + sstatus->agi + 150; skillratio = 100 * skill_lv + status_get_agi(src) + 150;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SR_EARTHSHAKER: case SR_EARTHSHAKER:
@ -3446,11 +3436,11 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
tsc->data[SC_CHASEWALK] || tsc->data[SC_CLOAKINGEXCEED] || tsc->data[SC__INVISIBILITY]) ){ tsc->data[SC_CHASEWALK] || tsc->data[SC_CLOAKINGEXCEED] || tsc->data[SC__INVISIBILITY]) ){
skillratio = 150 * skill_lv; skillratio = 150 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
skillratio += sstatus->int_ * 3; skillratio += status_get_int(src) * 3;
}else{ //[(Skill Level x 50) x (Caster Base Level / 100) + (Caster INT x 2)] % }else{ //[(Skill Level x 50) x (Caster Base Level / 100) + (Caster INT x 2)] %
skillratio += 50 * (skill_lv-2); skillratio = 50 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
skillratio += sstatus->int_ * 2; skillratio += status_get_int(src) * 2;
} }
break; break;
case SR_FALLENEMPIRE:// ATK [(Skill Level x 150 + 100) x Caster Base Level / 150] % case SR_FALLENEMPIRE:// ATK [(Skill Level x 150 + 100) x Caster Base Level / 150] %
@ -3459,8 +3449,8 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
break; break;
case SR_TIGERCANNON:// ATK [((Caster consumed HP + SP) / 4) x Caster Base Level / 100] % case SR_TIGERCANNON:// ATK [((Caster consumed HP + SP) / 4) x Caster Base Level / 100] %
{ {
int hp = (int64)sstatus->max_hp * (10 + 2 * skill_lv) / 100, int hp = (int64)status_get_max_hp(src) * (10 + 2 * skill_lv) / 100,
sp = (int64)sstatus->max_sp * (6 + skill_lv) / 100; sp = (int64)status_get_max_sp(src) * (6 + skill_lv) / 100;
skillratio = ((int64)hp+sp) / 4; skillratio = ((int64)hp+sp) / 4;
if( sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE ) // ATK [((Caster consumed HP + SP) / 2) x Caster Base Level / 100] % if( sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE ) // ATK [((Caster consumed HP + SP) / 2) x Caster Base Level / 100] %
skillratio = (int64)hp+sp / 2; skillratio = (int64)hp+sp / 2;
@ -3468,7 +3458,7 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
} }
break; break;
case SR_RAMPAGEBLASTER: case SR_RAMPAGEBLASTER:
skillratio += 20 * skill_lv * (sd?sd->spiritball_old:5) - 100; skillratio = 20 * skill_lv * (sd?sd->spiritball_old:5);
if( sc && sc->data[SC_EXPLOSIONSPIRITS] ){ if( sc && sc->data[SC_EXPLOSIONSPIRITS] ){
skillratio += sc->data[SC_EXPLOSIONSPIRITS]->val1 * 20; skillratio += sc->data[SC_EXPLOSIONSPIRITS]->val1 * 20;
RE_LVL_DMOD(120); RE_LVL_DMOD(120);
@ -3477,74 +3467,75 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
break; break;
case SR_KNUCKLEARROW: case SR_KNUCKLEARROW:
if( wd.miscflag&4 ){ // ATK [(Skill Level x 150) + (1000 x Target current weight / Maximum weight) + (Target Base Level x 5) x (Caster Base Level / 150)] % if( wd.miscflag&4 ){ // ATK [(Skill Level x 150) + (1000 x Target current weight / Maximum weight) + (Target Base Level x 5) x (Caster Base Level / 150)] %
skillratio = 150 * skill_lv + status_get_lv(target) * 5 * (status_get_lv(src) / 100) ; skillratio = 150 * skill_lv + status_get_lv(target) * 5;
if( tsd && tsd->weight ) if( tsd && tsd->weight )
skillratio += 100 * (tsd->weight / tsd->max_weight); skillratio += 100 * (tsd->weight / tsd->max_weight);
}else // ATK [(Skill Level x 100 + 500) x Caster Base Level / 100] % RE_LVL_DMOD(150);
} else { // ATK [(Skill Level x 100 + 500) x Caster Base Level / 100] %
skillratio += 400 + (100 * skill_lv); skillratio += 400 + (100 * skill_lv);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
}
break; break;
case SR_WINDMILL: // ATK [(Caster Base Level + Caster DEX) x Caster Base Level / 100] % case SR_WINDMILL: // ATK [(Caster Base Level + Caster DEX) x Caster Base Level / 100] %
skillratio = status_get_lv(src) + sstatus->dex; skillratio = status_get_lv(src) + status_get_dex(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SR_GATEOFHELL: case SR_GATEOFHELL:
if( sc && sc->data[SC_COMBO] if( sc && sc->data[SC_COMBO]
&& sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE ) && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE )
skillratio += 800 * skill_lv -100; skillratio += 700 * skill_lv;
else else
skillratio += 500 * skill_lv -100; skillratio += 400 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SR_GENTLETOUCH_QUIET: case SR_GENTLETOUCH_QUIET:
skillratio += 100 * skill_lv - 100 + sstatus->dex; skillratio = 100 * skill_lv + status_get_dex(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SR_HOWLINGOFLION: case SR_HOWLINGOFLION:
skillratio += 300 * skill_lv - 100; skillratio += 200 * skill_lv;
RE_LVL_DMOD(150); RE_LVL_DMOD(150);
break; break;
case SR_RIDEINLIGHTNING: // ATK [{(Skill Level x 200) + Additional Damage} x Caster Base Level / 100] % case SR_RIDEINLIGHTNING: // ATK [{(Skill Level x 200) + Additional Damage} x Caster Base Level / 100] %
if( (sstatus->rhw.ele) == ELE_WIND || (sstatus->lhw.ele) == ELE_WIND ) if( (sstatus->rhw.ele) == ELE_WIND || (sstatus->lhw.ele) == ELE_WIND )
skillratio += skill_lv * 50; skillratio = skill_lv * 50;
skillratio += -100 + 200 * skill_lv; skillratio = 200 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case WM_REVERBERATION_MELEE: case WM_REVERBERATION_MELEE:
// ATK [{(Skill Level x 100) + 300} x Caster Base Level / 100] // ATK [{(Skill Level x 100) + 300} x Caster Base Level / 100]
skillratio += 200 + 100 * pc_checkskill(sd, WM_REVERBERATION); skillratio += 200 + 100 * ((sd) ? pc_checkskill(sd, WM_REVERBERATION) : skill_get_max(WM_REVERBERATION));
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case WM_SEVERE_RAINSTORM_MELEE: case WM_SEVERE_RAINSTORM_MELEE:
//ATK [{(Caster DEX + AGI) x (Skill Level / 5)} x Caster Base Level / 100] % //ATK [{(Caster DEX + AGI) x (Skill Level / 5)} x Caster Base Level / 100] %
skillratio = (sstatus->dex + sstatus->agi) * (skill_lv * 2); skillratio = (status_get_dex(src) + status_get_agi(src)) * (skill_lv / 5);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
skillratio /= 10;
break; break;
case WM_GREAT_ECHO: case WM_GREAT_ECHO:
skillratio += 800 + 100 * skill_lv; skillratio += 300 + 200 * skill_lv;
if( sd ) { // Still need official value [pakpil] if( sd ) {
uint16 lv = skill_lv; uint16 lv = skill_lv;
skillratio += 100 * skill_check_pc_partner(sd,skill_id,&lv,skill_get_splash(skill_id,skill_lv),0); skillratio += 100 * skill_check_pc_partner(sd,skill_id,&lv,skill_get_splash(skill_id,skill_lv),0);
} }
break; break;
case WM_SOUND_OF_DESTRUCTION: case WM_SOUND_OF_DESTRUCTION:
skillratio += 400; skillratio = (1000 * skill_lv) + (((sd) ? pc_checkskill(sd, WM_LESSON) : skill_get_max(WM_LESSON)) * status_get_int(src));
break; break;
case GN_CART_TORNADO: { // ATK [( Skill Level x 50 ) + ( Cart Weight / ( 150 - Caster Base STR ))] + ( Cart Remodeling Skill Level x 50 )] % case GN_CART_TORNADO: { // ATK [( Skill Level x 50 ) + ( Cart Weight / ( 150 - Caster Base STR ))] + ( Cart Remodeling Skill Level x 50 )] %
int str = status_get_base_status(src)->str; //only using base str skillratio = 50 * skill_lv;
skillratio += -100 + 50 * skill_lv;
if( sd && sd->cart_weight) if( sd && sd->cart_weight)
skillratio += sd->cart_weight/10 / (150-str) + pc_checkskill(sd, GN_REMODELING_CART) * 50; skillratio += sd->cart_weight/10 / max((150-status_get_base_status(src)->str),1) + pc_checkskill(sd, GN_REMODELING_CART) * 50;
} }
break; break;
case GN_CARTCANNON: case GN_CARTCANNON:
// ATK [{( Cart Remodeling Skill Level x 50 ) x ( INT / 40 )} + ( Cart Cannon Skill Level x 60 )] % // ATK [{( Cart Remodeling Skill Level x 50 ) x ( INT / 40 )} + ( Cart Cannon Skill Level x 60 )] %
skillratio = 60 * skill_lv; skillratio = 60 * skill_lv;
if( sd ) skillratio += pc_checkskill(sd, GN_REMODELING_CART) * 50 * (sstatus->int_ / 40); if( sd ) skillratio += (pc_checkskill(sd, GN_REMODELING_CART) * 50) * (status_get_int(src) / 40);
break; break;
case GN_SPORE_EXPLOSION: case GN_SPORE_EXPLOSION:
skillratio += 200 + 100 * skill_lv; skillratio = (100 * skill_lv) + (200 + status_get_int(src));
RE_LVL_DMOD(100);
break; break;
case GN_CRAZYWEED_ATK: case GN_CRAZYWEED_ATK:
skillratio += 400 + 100 * skill_lv; skillratio += 400 + 100 * skill_lv;
@ -3552,24 +3543,32 @@ static int battle_calc_attack_skill_ratio(struct Damage wd, struct block_list *s
case GN_SLINGITEM_RANGEMELEEATK: case GN_SLINGITEM_RANGEMELEEATK:
if( sd ) { if( sd ) {
switch( sd->itemid ) { switch( sd->itemid ) {
case 13260: // Apple Bomob case ITEMID_APPLE_BOMB:
case 13261: // Coconut Bomb skillratio = status_get_str(src) + status_get_dex(src) + 300;
case 13262: // Melon Bomb
case 13263: // Pinapple Bomb
skillratio += 400; // Unconfirded
break; break;
case 13264: // Banana Bomb 2000% case ITEMID_MELON_BOMB:
skillratio += 1900; skillratio = status_get_str(src) + status_get_dex(src) + 500;
case ITEMID_COCONUT_BOMB:
case ITEMID_PINEAPPLE_BOMB:
case ITEMID_BANANA_BOMB:
skillratio = status_get_str(src) + status_get_dex(src) + 800;
break; break;
case 13265: skillratio -= 75; break; // Black Lump 25% case ITEMID_BLACK_LUMP:
case 13266: skillratio -= 25; break; // Hard Black Lump 75% skillratio = (status_get_str(src) + status_get_agi(src) + status_get_dex(src)) / 3;
case 13267: skillratio += 100; break; // Extremely Hard Black Lump 200% break;
case ITEMID_BLACK_HARD_LUMP:
skillratio = (status_get_str(src) + status_get_agi(src) + status_get_dex(src)) / 2;
break;
case ITEMID_VERY_HARD_LUMP:
skillratio = status_get_str(src) + status_get_agi(src) + status_get_dex(src);
break;
} }
} else } else
skillratio += 300; // Bombs skillratio += 300; // Bombs
break; break;
case SO_VARETYR_SPEAR://ATK [{( Striking Level x 50 ) + ( Varetyr Spear Skill Level x 50 )} x Caster Base Level / 100 ] % case SO_VARETYR_SPEAR://ATK [{( Striking Level x 50 ) + ( Varetyr Spear Skill Level x 50 )} x Caster Base Level / 100 ] %
skillratio = 50 * skill_lv + ( sd ? pc_checkskill(sd, SO_STRIKING) * 50 : 0 ); skillratio = 50 * skill_lv + ((sd) ? pc_checkskill(sd, SO_STRIKING) * 50 : skill_get_max(SO_STRIKING));
RE_LVL_DMOD(100);
if( sc && sc->data[SC_BLAST_OPTION] ) if( sc && sc->data[SC_BLAST_OPTION] )
skillratio += sd ? sd->status.job_level * 5 : 0; skillratio += sd ? sd->status.job_level * 5 : 0;
break; break;
@ -3713,7 +3712,17 @@ static int battle_calc_skill_constant_addition(struct Damage wd, struct block_li
struct status_change *tsc = status_get_sc(target); struct status_change *tsc = status_get_sc(target);
struct status_data *sstatus = status_get_status_data(src); struct status_data *sstatus = status_get_status_data(src);
struct status_data *tstatus = status_get_status_data(target); struct status_data *tstatus = status_get_status_data(target);
int atk = 0; int atk = 0, chorusbonus = 0;
// Minstrel/Wanderer number check for chorus skills.
// Bonus remains 0 unless 3 or more Minstrels/Wanderers are in the party.
if( sd && sd->status.party_id ) {
chorusbonus = party_foreachsamemap(party_sub_count_class, sd, MAPID_THIRDMASK, MAPID_MINSTRELWANDERER);
if( chorusbonus > 7 )
chorusbonus = 5; // Maximum effect possible from 7 or more Minstrels/Wanderers
else if( chorusbonus > 2 )
chorusbonus = chorusbonus - 2; // Effect bonus from additional Minstrels/Wanderers if not above the max possible.
}
//Constant/misc additions from skills //Constant/misc additions from skills
switch (skill_id) { switch (skill_id) {
@ -3750,13 +3759,15 @@ static int battle_calc_skill_constant_addition(struct Damage wd, struct block_li
case RA_WUGBITE: case RA_WUGBITE:
if(sd) if(sd)
atk = (30*pc_checkskill(sd, RA_TOOTHOFWUG)); atk = (30*pc_checkskill(sd, RA_TOOTHOFWUG));
if( sc && sc->data[SC_DANCEWITHWUG] )
atk += skill_lv * 10 * chorusbonus; // Dance With Wug Bonus. ATK = [(Skill Level x 10) x Number of Maestro/Wanderer in party(Maximum of 7)] %
break; break;
case SR_GATEOFHELL: case SR_GATEOFHELL:
atk = (sstatus->max_hp - status_get_hp(src)); atk = (status_get_max_hp(src) - status_get_hp(src));
if(sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE) { if(sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE) {
atk += ( ((int64)sstatus->max_sp * (1 + skill_lv * 2 / 10)) + 40 * status_get_lv(src) ); atk += ( ((int64)status_get_max_sp(src) * (1 + skill_lv * 2 / 10)) + 40 * status_get_lv(src) );
} else { } else {
atk += ( ((int64)sstatus->sp * (1 + skill_lv * 2 / 10)) + 10 * status_get_lv(src) ); atk += ( ((int64)status_get_sp(src) * (1 + skill_lv * 2 / 10)) + 10 * status_get_lv(src) );
} }
break; break;
case SR_TIGERCANNON: // (Tiger Cannon skill level x 240) + (Target Base Level x 40) case SR_TIGERCANNON: // (Tiger Cannon skill level x 240) + (Target Base Level x 40)
@ -3766,11 +3777,11 @@ static int battle_calc_skill_constant_addition(struct Damage wd, struct block_li
atk = ( skill_lv * 500 + status_get_lv(target) * 40 ); atk = ( skill_lv * 500 + status_get_lv(target) * 40 );
break; break;
case SR_FALLENEMPIRE:// [(Target Size value + Skill Level - 1) x Caster STR] + [(Target current weight x Caster DEX / 120)] case SR_FALLENEMPIRE:// [(Target Size value + Skill Level - 1) x Caster STR] + [(Target current weight x Caster DEX / 120)]
atk = ( ((tstatus->size+1)*2 + skill_lv - 1) * sstatus->str); atk = ( ((tstatus->size+1)*2 + skill_lv - 1) * status_get_str(src));
if( tsd && tsd->weight ){ if( tsd && tsd->weight ){
atk = ( (tsd->weight/10) * sstatus->dex / 120 ); atk += ( (tsd->weight/10) * status_get_dex(src) / 120 );
}else{ }else{
atk = ( status_get_lv(target) * 50 ); //mobs atk += ( status_get_lv(target) * 50 ); //mobs
} }
break; break;
case KO_SETSUDAN: case KO_SETSUDAN:
@ -4113,7 +4124,7 @@ struct Damage battle_calc_attack_post_defense(struct Damage wd, struct block_lis
case NC_AXETORNADO: case NC_AXETORNADO:
if( (sstatus->rhw.ele) == ELE_WIND || (sstatus->lhw.ele) == ELE_WIND ) if( (sstatus->rhw.ele) == ELE_WIND || (sstatus->lhw.ele) == ELE_WIND )
ATK_ADDRATE(wd.damage, wd.damage2, 50); ATK_ADDRATE(wd.damage, wd.damage2, 25);
break; break;
} }
@ -4377,6 +4388,7 @@ static struct Damage initialize_weapon_data(struct block_list *src, struct block
{ {
struct status_data *sstatus = status_get_status_data(src); struct status_data *sstatus = status_get_status_data(src);
struct status_data *tstatus = status_get_status_data(target); struct status_data *tstatus = status_get_status_data(target);
struct status_change *sc = status_get_sc(src);
struct map_session_data *sd = BL_CAST(BL_PC, src); struct map_session_data *sd = BL_CAST(BL_PC, src);
struct Damage wd; struct Damage wd;
@ -4446,6 +4458,13 @@ static struct Damage initialize_weapon_data(struct block_list *src, struct block
case LK_SPIRALPIERCE: case LK_SPIRALPIERCE:
if (!sd) wd.flag=(wd.flag&~(BF_RANGEMASK|BF_WEAPONMASK))|BF_LONG|BF_MISC; if (!sd) wd.flag=(wd.flag&~(BF_RANGEMASK|BF_WEAPONMASK))|BF_LONG|BF_MISC;
break; break;
// The number of hits is set to 3 by default for use in Inspiration status.
// When in Banding, the number of hits is equal to the number of Royal Guards in Banding.
case LG_HESPERUSLIT:
if( sc && sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 3 )
wd.div_ = sc->data[SC_BANDING]->val2;
break;
} }
} else { } else {
wd.flag |= is_skill_using_arrow(src, skill_id)?BF_LONG:BF_SHORT; wd.flag |= is_skill_using_arrow(src, skill_id)?BF_LONG:BF_SHORT;
@ -4506,14 +4525,6 @@ void battle_do_reflect(int attack_type, struct Damage *wd, struct block_list* sr
if (ssc && ssc->data[SC_DEVOTION] && (d_bl = map_id2bl(ssc->data[SC_DEVOTION]->val1))) if (ssc && ssc->data[SC_DEVOTION] && (d_bl = map_id2bl(ssc->data[SC_DEVOTION]->val1)))
isDevotRdamage = true; isDevotRdamage = true;
} }
//if(tsc->data[SC__SHADOWFORM]) {
// struct block_list *s_bl = map_id2bl(tsc->data[SC__SHADOWFORM]->val2);
// if(s_bl)
// status_damage(src, s_bl, rdamage, 0, clif_damage(src, s_bl, gettick(), 500, 500, rdamage, -1, 0, 0), 0);
// wd->damage = wd->damage2 = 0;
// wd->dmg_lv = ATK_BLOCK;
//}
if(attack_type == BF_WEAPON && tsc->data[SC_REFLECTDAMAGE] ) // Don't reflect your own damage (Grand Cross) if(attack_type == BF_WEAPON && tsc->data[SC_REFLECTDAMAGE] ) // Don't reflect your own damage (Grand Cross)
map_foreachinshootrange(battle_damage_area,target,skill_get_splash(LG_REFLECTDAMAGE,1),BL_CHAR,tick,target,wd->amotion,sstatus->dmotion,rdamage,tstatus->race); map_foreachinshootrange(battle_damage_area,target,skill_get_splash(LG_REFLECTDAMAGE,1),BL_CHAR,tick,target,wd->amotion,sstatus->dmotion,rdamage,tstatus->race);
else if(attack_type == BF_WEAPON || attack_type == BF_MISC) { else if(attack_type == BF_WEAPON || attack_type == BF_MISC) {
@ -4968,7 +4979,7 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
case MG_COLDBOLT: case MG_COLDBOLT:
case MG_LIGHTNINGBOLT: case MG_LIGHTNINGBOLT:
if ( sc && sc->data[SC_SPELLFIST] && mflag&BF_SHORT ) { if ( sc && sc->data[SC_SPELLFIST] && mflag&BF_SHORT ) {
skillratio += (sc->data[SC_SPELLFIST]->val4 * 100) + (sc->data[SC_SPELLFIST]->val2 * 100) - 100;// val4 = used bolt level, val2 = used spellfist level. [Rytech] skillratio += (sc->data[SC_SPELLFIST]->val4 * 100) + (sc->data[SC_SPELLFIST]->val2 * 50) - 100;// val4 = used bolt level, val2 = used spellfist level. [Rytech]
ad.div_ = 1;// ad mods, to make it work similar to regular hits [Xazax] ad.div_ = 1;// ad mods, to make it work similar to regular hits [Xazax]
ad.flag = BF_WEAPON|BF_SHORT; ad.flag = BF_WEAPON|BF_SHORT;
ad.type = 0; ad.type = 0;
@ -5088,7 +5099,7 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
* Warlock * Warlock
**/ **/
case WL_SOULEXPANSION: case WL_SOULEXPANSION:
skillratio += 300 + 100 * skill_lv + sstatus->int_; skillratio += 300 + 100 * skill_lv + status_get_int(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case WL_FROSTMISTY: case WL_FROSTMISTY:
@ -5105,7 +5116,7 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
} }
break; break;
case WL_DRAINLIFE: case WL_DRAINLIFE:
skillratio = 200 * skill_lv + sstatus->int_; skillratio = 200 * skill_lv + status_get_int(src);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case WL_CRIMSONROCK: case WL_CRIMSONROCK:
@ -5149,8 +5160,10 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
} }
break; break;
case WL_CHAINLIGHTNING_ATK: case WL_CHAINLIGHTNING_ATK:
skillratio += 100 + 300 * skill_lv; skillratio += 400 + 100 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if (mflag > 0)
skillratio += 100 * mflag;
break; break;
case WL_EARTHSTRAIN: case WL_EARTHSTRAIN:
skillratio += 1900 + 100 * skill_lv; skillratio += 1900 + 100 * skill_lv;
@ -5185,51 +5198,46 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
skillratio += 1900; //2000% skillratio += 1900; //2000%
break; break;
case WM_METALICSOUND: case WM_METALICSOUND:
skillratio += 120 * skill_lv + 60 * ( sd? pc_checkskill(sd, WM_LESSON) : 10 ) - 100; skillratio = 120 * skill_lv + 60 * ((sd) ? pc_checkskill(sd, WM_LESSON) : skill_get_max(WM_LESSON));
RE_LVL_DMOD(100);
break; break;
/*case WM_SEVERE_RAINSTORM:
skillratio += 50 * skill_lv;
break;
WM_SEVERE_RAINSTORM just set a unit place,
refer to WM_SEVERE_RAINSTORM_MELEE to set the formula.
*/
case WM_REVERBERATION_MAGIC: case WM_REVERBERATION_MAGIC:
// MATK [{(Skill Level x 100) + 100} x Casters Base Level / 100] % // MATK [{(Skill Level x 100) + 100} x Casters Base Level / 100] %
skillratio += 100 * (sd ? pc_checkskill(sd, WM_REVERBERATION) : 1); skillratio += 100 * ((sd) ? pc_checkskill(sd, WM_REVERBERATION) : skill_get_max(WM_REVERBERATION));
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
break; break;
case SO_FIREWALK: case SO_FIREWALK:
skillratio = 300; skillratio = 60 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_HEATER_OPTION] ) if( sc && sc->data[SC_HEATER_OPTION] )
skillratio += sc->data[SC_HEATER_OPTION]->val3; skillratio += sc->data[SC_HEATER_OPTION]->val3;
break; break;
case SO_ELECTRICWALK: case SO_ELECTRICWALK:
skillratio = 300; skillratio = 60 * skill_lv;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_BLAST_OPTION] ) if( sc && sc->data[SC_BLAST_OPTION] )
skillratio += sd ? sd->status.job_level / 2 : 0; skillratio += sd ? sd->status.job_level / 2 : 0;
break; break;
case SO_EARTHGRAVE: case SO_EARTHGRAVE:
skillratio = ( 200 * ( sd ? pc_checkskill(sd, SA_SEISMICWEAPON) : 10 ) + sstatus->int_ * skill_lv ); skillratio = ( 200 * ((sd) ? pc_checkskill(sd, SA_SEISMICWEAPON) : skill_get_max(SA_SEISMICWEAPON)) + sstatus->int_ * skill_lv );
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_CURSED_SOIL_OPTION] ) if( sc && sc->data[SC_CURSED_SOIL_OPTION] )
skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2; skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2;
break; break;
case SO_DIAMONDDUST: case SO_DIAMONDDUST:
skillratio = ( 200 * ( sd ? pc_checkskill(sd, SA_FROSTWEAPON) : 10 ) + sstatus->int_ * skill_lv ); skillratio = ( 200 * ((sd) ? pc_checkskill(sd, SA_FROSTWEAPON) : skill_get_max(SA_FROSTWEAPON)) + sstatus->int_ * skill_lv );
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_COOLER_OPTION] ) if( sc && sc->data[SC_COOLER_OPTION] )
skillratio += sc->data[SC_COOLER_OPTION]->val3; skillratio += sc->data[SC_COOLER_OPTION]->val3;
break; break;
case SO_POISON_BUSTER: case SO_POISON_BUSTER:
skillratio += 1100 + 300 * skill_lv; skillratio += 900 + 300 * skill_lv;
RE_LVL_DMOD(120);
if( sc && sc->data[SC_CURSED_SOIL_OPTION] ) if( sc && sc->data[SC_CURSED_SOIL_OPTION] )
skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2; skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2;
break; break;
case SO_PSYCHIC_WAVE: case SO_PSYCHIC_WAVE:
skillratio += -100 + skill_lv * 70 + (sstatus->int_ * 3); skillratio = skill_lv * 70 + (sstatus->int_ * 3);
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc ){ if( sc ){
if( sc->data[SC_HEATER_OPTION] ) if( sc->data[SC_HEATER_OPTION] )
@ -5243,26 +5251,22 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
} }
break; break;
case SO_VARETYR_SPEAR: //MATK [{( Endow Tornado skill level x 50 ) + ( Caster INT x Varetyr Spear Skill level )} x Caster Base Level / 100 ] % case SO_VARETYR_SPEAR: //MATK [{( Endow Tornado skill level x 50 ) + ( Caster INT x Varetyr Spear Skill level )} x Caster Base Level / 100 ] %
skillratio = status_get_int(src) * skill_lv + ( sd ? pc_checkskill(sd, SA_LIGHTNINGLOADER) * 50 : 0 ); skillratio = status_get_int(src) * skill_lv + ((sd) ? pc_checkskill(sd, SA_LIGHTNINGLOADER) * 50 : skill_get_max(SA_LIGHTNINGLOADER));
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_BLAST_OPTION] ) if( sc && sc->data[SC_BLAST_OPTION] )
skillratio += sd ? sd->status.job_level * 5 : 0; skillratio += sd ? sd->status.job_level * 5 : 0;
break; break;
case SO_CLOUD_KILL: case SO_CLOUD_KILL:
skillratio += -100 + skill_lv * 40; skillratio = skill_lv * 40;
RE_LVL_DMOD(100); RE_LVL_DMOD(100);
if( sc && sc->data[SC_CURSED_SOIL_OPTION] ) if( sc && sc->data[SC_CURSED_SOIL_OPTION] )
skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2; skillratio += sc->data[SC_CURSED_SOIL_OPTION]->val2;
break; break;
case GN_DEMONIC_FIRE: case GN_DEMONIC_FIRE:
if( skill_lv > 20) if( skill_lv > 20) // Fire expansion Lv.2
{ // Fire expansion Lv.2
skillratio += 110 + 20 * (skill_lv - 20) + status_get_int(src) * 3; // Need official INT bonus. [LimitLine] skillratio += 110 + 20 * (skill_lv - 20) + status_get_int(src) * 3; // Need official INT bonus. [LimitLine]
} else if( skill_lv > 10 ) // Fire expansion Lv.1
else if( skill_lv > 10 )
{ // Fire expansion Lv.1
skillratio += 110 + 20 * (skill_lv - 10) / 2; skillratio += 110 + 20 * (skill_lv - 10) / 2;
}
else else
skillratio += 110 + 20 * skill_lv; skillratio += 110 + 20 * skill_lv;
break; break;
@ -5521,7 +5525,7 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list *
case HT_CLAYMORETRAP: case HT_CLAYMORETRAP:
md.damage = skill_lv * sstatus->dex * (3+status_get_lv(src)/100) * (1+sstatus->int_/35); md.damage = skill_lv * sstatus->dex * (3+status_get_lv(src)/100) * (1+sstatus->int_/35);
md.damage += md.damage * (rnd()%20-10) / 100; md.damage += md.damage * (rnd()%20-10) / 100;
md.damage += 40 * (sd?pc_checkskill(sd,RA_RESEARCHTRAP):0); md.damage += 40 * ((sd) ? pc_checkskill(sd,RA_RESEARCHTRAP) : skill_get_max(RA_RESEARCHTRAP));
break; break;
#else #else
case HT_LANDMINE: case HT_LANDMINE:
@ -5690,7 +5694,7 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list *
case RA_CLUSTERBOMB: case RA_CLUSTERBOMB:
case RA_FIRINGTRAP: case RA_FIRINGTRAP:
case RA_ICEBOUNDTRAP: case RA_ICEBOUNDTRAP:
md.damage = skill_lv * sstatus->dex + sstatus->int_ * 5 ; md.damage = skill_lv * status_get_dex(src) + status_get_int(src) * 5 ;
RE_LVL_TMDMOD(); RE_LVL_TMDMOD();
if(sd) if(sd)
{ {
@ -5705,18 +5709,18 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list *
break; break;
case NC_SELFDESTRUCTION: case NC_SELFDESTRUCTION:
{ {
short totaldef = tstatus->def2 + (short)status_get_def(target); short totaldef = status_get_def2(target) + (short)status_get_def(target);
md.damage = ( (sd?pc_checkskill(sd,NC_MAINFRAME):10) + 8 ) * ( skill_lv + 1 ) * ( status_get_sp(src) + sstatus->vit ); md.damage = ( ((sd) ? pc_checkskill(sd,NC_MAINFRAME) : skill_get_max(NC_MAINFRAME)) + 8 ) * ( skill_lv + 1 ) * ( status_get_sp(src) + status_get_vit(src) );
RE_LVL_MDMOD(100); RE_LVL_MDMOD(100);
md.damage += status_get_hp(src) - totaldef; md.damage += status_get_hp(src) - totaldef;
} }
break; break;
case GN_THORNS_TRAP: case GN_THORNS_TRAP:
md.damage = 100 + 200 * skill_lv + sstatus->int_; md.damage = 100 + 200 * skill_lv + status_get_int(src);
break; break;
case GN_HELLS_PLANT_ATK: case GN_HELLS_PLANT_ATK:
//[{( Hell Plant Skill Level x Casters Base Level ) x 10 } + {( Casters INT x 7 ) / 2 } x { 18 + ( Casters Job Level / 4 )] x ( 5 / ( 10 - Summon Flora Skill Level )) //[{( Hell Plant Skill Level x Casters Base Level ) x 10 } + {( Casters INT x 7 ) / 2 } x { 18 + ( Casters Job Level / 4 )] x ( 5 / ( 10 - Summon Flora Skill Level ))
md.damage = ( skill_lv * status_get_lv(src) * 10 ) + ( sstatus->int_ * 7 / 2 ) * ( 18 + (sd?sd->status.job_level:0) / 4 ) * ( 5 / (10 - (sd?pc_checkskill(sd,AM_CANNIBALIZE):0)) ); md.damage = ( skill_lv * status_get_lv(src) * 10 ) + ( status_get_int(src) * 7 / 2 ) * ( 18 + (sd?sd->status.job_level:0) / 4 ) * ( 5 / (10 - ((sd) ? pc_checkskill(sd,AM_CANNIBALIZE) : skill_get_max(AM_CANNIBALIZE))) );
break; break;
case KO_HAPPOKUNAI: case KO_HAPPOKUNAI:
{ {
@ -6308,7 +6312,13 @@ enum damage_lv battle_weapon_attack(struct block_list* src, struct block_list* t
} }
map_freeblock_lock(); map_freeblock_lock();
battle_delay_damage(tick, wd.amotion, src, target, wd.flag, 0, 0, damage, wd.dmg_lv, wd.dmotion, true); if( skill_check_shadowform(target, damage, wd.div_) ) {
if( !status_isdead(target) )
skill_additional_effect(src, target, 0, 0, wd.flag, wd.dmg_lv, tick);
if( wd.dmg_lv > ATK_BLOCK )
skill_counter_additional_effect(src, target, 0, 0, wd.flag, tick);
} else
battle_delay_damage(tick, wd.amotion, src, target, wd.flag, 0, 0, damage, wd.dmg_lv, wd.dmotion, true);
if( tsc ) { if( tsc ) {
if( tsc->data[SC_DEVOTION] ) { if( tsc->data[SC_DEVOTION] ) {
struct status_change_entry *sce = tsc->data[SC_DEVOTION]; struct status_change_entry *sce = tsc->data[SC_DEVOTION];

View File

@ -176,7 +176,7 @@ enum rune_item_list {
* Mechanic * Mechanic
*/ */
enum mechanic_item_list { enum mechanic_item_list {
ITEMID_ACCELERATOR = 2800, ITEMID_ACCELERATOR = 2800,
ITEMID_HOVERING_BOOSTER, ITEMID_HOVERING_BOOSTER,
ITEMID_SUICIDAL_DEVICE, ITEMID_SUICIDAL_DEVICE,
ITEMID_SHAPE_SHIFTER, ITEMID_SHAPE_SHIFTER,
@ -187,6 +187,10 @@ enum mechanic_item_list {
ITEMID_CAMOUFLAGE_GENERATOR, ITEMID_CAMOUFLAGE_GENERATOR,
ITEMID_HIGH_QUALITY_COOLER, ITEMID_HIGH_QUALITY_COOLER,
ITEMID_SPECIAL_COOLER, ITEMID_SPECIAL_COOLER,
ITEMID_SCARLET_PTS = 6360,
ITEMID_INDIGO_PTS,
ITEMID_YELLOW_WISH_PTS,
ITEMID_LIME_GREEN_PTS,
}; };
/** /**

View File

@ -53,35 +53,48 @@ void map_msg_reload(void);
/** Added definitions for WoESE objects and other [L0ne_W0lf], [aleos] */ /** Added definitions for WoESE objects and other [L0ne_W0lf], [aleos] */
enum MOBID { enum MOBID {
MOBID_PORING = 1002, MOBID_PORING = 1002,
MOBID_A_GUARDIAN = 1285,
MOBID_K_GUARDIAN,
MOBID_S_GUARDIAN,
MOBID_EMPERIUM,
MOBID_TREAS01 = 1324,
MOBID_TREAS40 = 1363,
MOBID_S_GUARDIAN_ = 1899,
MOBID_A_GUARDIAN_,
MOBID_BARRICADE1 = 1905,
MOBID_BARRICADE2,
MOBID_GUARIDAN_STONE1,
MOBID_GUARIDAN_STONE2,
MOBID_FOOD_STOR,
MOBID_BLUE_CRYST = 1914,
MOBID_PINK_CRYST,
MOBID_TREAS41 = 1938,
MOBID_TREAS49 = 1946,
MOBID_SILVERSNIPER = 2042,
MOBID_MAGICDECOY_FIRE,
MOBID_MAGICDECOY_WATER,
MOBID_MAGICDECOY_EARTH,
MOBID_MAGICDECOY_WIND,
MOBID_MARINE_SPHERE = 1142, MOBID_MARINE_SPHERE = 1142,
MOBID_A_GUARDIAN = 1285,
MOBID_K_GUARDIAN,
MOBID_S_GUARDIAN,
MOBID_EMPERIUM,
MOBID_TREAS01 = 1324,
MOBID_TREAS40 = 1363,
MOBID_G_PARASITE = 1555, MOBID_G_PARASITE = 1555,
MOBID_G_FLORA = 1575, MOBID_G_FLORA = 1575,
MOBID_G_HYDRA = 1579, MOBID_G_HYDRA = 1579,
MOBID_G_MANDRAGORA = 1589, MOBID_G_MANDRAGORA = 1589,
MOBID_G_GEOGRAPHER = 1590, MOBID_G_GEOGRAPHER = 1590,
MOBID_S_GUARDIAN_ = 1899,
MOBID_A_GUARDIAN_,
MOBID_BARRICADE1 = 1905,
MOBID_BARRICADE2,
MOBID_GUARIDAN_STONE1,
MOBID_GUARIDAN_STONE2,
MOBID_FOOD_STOR,
MOBID_BLUE_CRYST = 1914,
MOBID_PINK_CRYST,
MOBID_TREAS41 = 1938,
MOBID_TREAS49 = 1946,
MOBID_TATACHO = 1986,
MOBID_CENTIPEDE,
MOBID_NEPENTHES,
MOBID_HILLSRION,
MOBID_HARDROCK_MOMMOTH,
MOBID_TENDRILRION,
MOBID_CORNUS,
MOBID_NAGA,
MOBID_LUCIOLA_VESPA,
MOBID_PINGUICULA,
MOBID_G_TATACHO = 1997,
MOBID_G_HILLSRION,
MOBID_CENTIPEDE_LARVA,
MOBID_SILVERSNIPER = 2042,
MOBID_MAGICDECOY_FIRE,
MOBID_MAGICDECOY_WATER,
MOBID_MAGICDECOY_EARTH,
MOBID_MAGICDECOY_WIND,
MOBID_S_HORNET = 2158, MOBID_S_HORNET = 2158,
MOBID_S_GIANT_HORNET, MOBID_S_GIANT_HORNET,
MOBID_S_LUCIOLA_VESPA, MOBID_S_LUCIOLA_VESPA,

View File

@ -82,8 +82,8 @@ static struct {
} summon[MAX_RANDOMMONSTER]; } summon[MAX_RANDOMMONSTER];
//Defines the Manuk/Splendide mob groups for the status reductions [Epoque] //Defines the Manuk/Splendide mob groups for the status reductions [Epoque]
const int mob_manuk[8] = { 1986, 1987, 1988, 1989, 1990, 1997, 1998, 1999 }; const int mob_manuk[8] = { MOBID_TATACHO, MOBID_CENTIPEDE, MOBID_NEPENTHES, MOBID_HILLSRION, MOBID_HARDROCK_MOMMOTH, MOBID_G_TATACHO, MOBID_G_HILLSRION, MOBID_CENTIPEDE_LARVA };
const int mob_splendide[5] = { 1991, 1992, 1993, 1994, 1995 }; const int mob_splendide[5] = { MOBID_TENDRILRION, MOBID_CORNUS, MOBID_NAGA, MOBID_LUCIOLA_VESPA, MOBID_PINGUICULA };
/*========================================== /*==========================================
* Local prototype declaration (only required thing) * Local prototype declaration (only required thing)

View File

@ -1130,6 +1130,22 @@ int party_sub_count(struct block_list *bl, va_list ap)
return 1; return 1;
} }
// To use for counting classes in a party.
int party_sub_count_class(struct block_list *bl, va_list ap)
{
struct map_session_data *sd = (TBL_PC *)bl;
unsigned int mask = va_arg(ap, unsigned int);
unsigned int mapid_class = va_arg(ap, unsigned int);
if( !party_sub_count(bl, ap) )
return 0;
if( (sd->class_&mask) != mapid_class )
return 0;
return 1;
}
/// Executes 'func' for each party member on the same map and in range (0:whole map) /// Executes 'func' for each party member on the same map and in range (0:whole map)
int party_foreachsamemap(int (*func)(struct block_list*,va_list),struct map_session_data *sd,int range,...) int party_foreachsamemap(int (*func)(struct block_list*,va_list),struct map_session_data *sd,int range,...)
{ {

View File

@ -87,6 +87,7 @@ int party_exp_share(struct party_data *p,struct block_list *src,unsigned int bas
int party_share_loot(struct party_data* p, struct map_session_data* sd, struct item* item_data, int first_charid); int party_share_loot(struct party_data* p, struct map_session_data* sd, struct item* item_data, int first_charid);
int party_send_dot_remove(struct map_session_data *sd); int party_send_dot_remove(struct map_session_data *sd);
int party_sub_count(struct block_list *bl, va_list ap); int party_sub_count(struct block_list *bl, va_list ap);
int party_sub_count_class(struct block_list *bl, va_list ap);
int party_foreachsamemap(int (*func)(struct block_list *,va_list),struct map_session_data *sd,int range,...); int party_foreachsamemap(int (*func)(struct block_list *,va_list),struct map_session_data *sd,int range,...);
/*========================================== /*==========================================

View File

@ -369,9 +369,9 @@ int skill_calc_heal(struct block_list *src, struct block_list *target, uint16 sk
* Renewal Heal Formula * Renewal Heal Formula
* Formula: ( [(Base Level + INT) / 5] x 30 ) x (Heal Level / 10) x (Modifiers) + MATK * Formula: ( [(Base Level + INT) / 5] x 30 ) x (Heal Level / 10) x (Modifiers) + MATK
**/ **/
hp = (status_get_lv(src) + status_get_int(src)) / 5 * 30 * (skill_id == AB_HIGHNESSHEAL ? (sd ? pc_checkskill(sd,AL_HEAL) : 10 ) : skill_lv) / 10; hp = (status_get_lv(src) + status_get_int(src)) / 5 * 30 * (skill_id == AB_HIGHNESSHEAL ? ((sd) ? pc_checkskill(sd,AL_HEAL) : skill_get_max(AL_HEAL)) : skill_lv) / 10;
#else #else
hp = (status_get_lv(src) + status_get_int(src)) / 8 * (4 + ( (skill_id == AB_HIGHNESSHEAL ? (sd ? pc_checkskill(sd,AL_HEAL) : 10 ) : skill_lv) * 8)); hp = (status_get_lv(src) + status_get_int(src)) / 8 * (4 + ( (skill_id == AB_HIGHNESSHEAL ? ((sd) ? pc_checkskill(sd,AL_HEAL) : skill_get_max(AL_HEAL)) : skill_lv) * 8));
#endif #endif
if (skill_id == AB_HIGHNESSHEAL) if (skill_id == AB_HIGHNESSHEAL)
hp = hp * ( 17 + 3 * skill_lv ) / 10; hp = hp * ( 17 + 3 * skill_lv ) / 10;
@ -618,7 +618,6 @@ bool skill_isNotOk(uint16 skill_id, struct map_session_data *sd)
return true; return true;
} }
break; break;
case BS_GREED:
case WS_CARTBOOST: case WS_CARTBOOST:
case BS_HAMMERFALL: case BS_HAMMERFALL:
case BS_ADRENALINE: case BS_ADRENALINE:
@ -782,6 +781,7 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
enum sc_type status; enum sc_type status;
int skill; int skill;
int rate; int rate;
int chorusbonus = 0;
nullpo_ret(src); nullpo_ret(src);
nullpo_ret(bl); nullpo_ret(bl);
@ -804,6 +804,16 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
//So if the target can't be inflicted with statuses, this is pointless. //So if the target can't be inflicted with statuses, this is pointless.
return 0; return 0;
// Minstrel/Wanderer number check for chorus skills.
// Bonus remains 0 unless 3 or more Minstrels/Wanderers are in the party.
if( sd && sd->status.party_id ) {
chorusbonus = party_foreachsamemap(party_sub_count_class, sd, MAPID_THIRDMASK, MAPID_MINSTRELWANDERER);
if( chorusbonus > 7 )
chorusbonus = 5; // Maximum effect possible from 7 or more Minstrels/Wanderers
else if( chorusbonus > 2 )
chorusbonus = chorusbonus - 2; // Effect bonus from additional Minstrels/Wanderers if not above the max possible.
}
if( sd ) if( sd )
{ // These statuses would be applied anyway even if the damage was blocked by some skills. [Inkfish] { // These statuses would be applied anyway even if the damage was blocked by some skills. [Inkfish]
if( skill_id != WS_CARTTERMINATION && skill_id != AM_DEMONSTRATION && skill_id != CR_REFLECTSHIELD && skill_id != MS_REFLECTSHIELD && skill_id != ASC_BREAKER ) { if( skill_id != WS_CARTTERMINATION && skill_id != AM_DEMONSTRATION && skill_id != CR_REFLECTSHIELD && skill_id != MS_REFLECTSHIELD && skill_id != ASC_BREAKER ) {
@ -1284,47 +1294,56 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
case WL_JACKFROST: case WL_JACKFROST:
sc_start(src,bl,SC_FREEZE,100,skill_lv,skill_get_time(skill_id,skill_lv)); sc_start(src,bl,SC_FREEZE,100,skill_lv,skill_get_time(skill_id,skill_lv));
break; break;
case RA_WUGBITE: case RA_WUGBITE: {
sc_start(src,bl, SC_BITE, (sd ? pc_checkskill(sd,RA_TOOTHOFWUG)*2 : 0), skill_lv, (skill_get_time(skill_id,skill_lv) + (sd ? pc_checkskill(sd,RA_TOOTHOFWUG)*500 : 0)) ); int rate = (50 + 10 * skill_lv) + 2 * ((sd) ? pc_checkskill(sd,RA_TOOTHOFWUG)*2 : skill_get_max(RA_TOOTHOFWUG)) - (status_get_agi(bl) / 4);
if (rate < 50)
rate = 50;
sc_start(src,bl, SC_BITE, rate, skill_lv, (skill_get_time(skill_id,skill_lv) + ((sd) ? pc_checkskill(sd,RA_TOOTHOFWUG)*500 : skill_get_max(RA_TOOTHOFWUG))) );
}
break; break;
case RA_SENSITIVEKEEN: case RA_SENSITIVEKEEN:
if( rnd()%100 < 8 * skill_lv ) if( rnd()%100 < 8 * skill_lv )
skill_castend_damage_id(src, bl, RA_WUGBITE, sd ? pc_checkskill(sd, RA_WUGBITE):skill_lv, tick, SD_ANIMATION); skill_castend_damage_id(src, bl, RA_WUGBITE, ((sd) ? pc_checkskill(sd, RA_WUGBITE) : skill_get_max(RA_WUGBITE)), tick, SD_ANIMATION);
break; break;
case RA_FIRINGTRAP: case RA_FIRINGTRAP:
case RA_ICEBOUNDTRAP: case RA_ICEBOUNDTRAP:
sc_start(src,bl, (skill_id == RA_FIRINGTRAP) ? SC_BURNING:SC_FREEZING, 40 + 10 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); sc_start(src,bl, (skill_id == RA_FIRINGTRAP) ? SC_BURNING:SC_FREEZING, 40 + 10 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv));
break; break;
case NC_PILEBUNKER: case NC_PILEBUNKER:
//Deactivatable Statuses: Kyrie Eleison, Auto Guard, Steel Body, Assumptio, and Millennium Shield if( rnd()%100 < 25 + 15*skill_lv ) {
if( rnd()%100 < 5 + 15*skill_lv ) {
status_change_end(bl, SC_KYRIE, INVALID_TIMER); status_change_end(bl, SC_KYRIE, INVALID_TIMER);
status_change_end(bl, SC_AUTOGUARD, INVALID_TIMER);
status_change_end(bl, SC_STEELBODY, INVALID_TIMER);
status_change_end(bl, SC_ASSUMPTIO, INVALID_TIMER); status_change_end(bl, SC_ASSUMPTIO, INVALID_TIMER);
status_change_end(bl, SC_STEELBODY, INVALID_TIMER);
status_change_end(bl, SC_GT_CHANGE, INVALID_TIMER);
status_change_end(bl, SC_GT_REVITALIZE, INVALID_TIMER);
status_change_end(bl, SC_AUTOGUARD, INVALID_TIMER);
status_change_end(bl, SC_REFLECTDAMAGE, INVALID_TIMER);
status_change_end(bl, SC_DEFENDER, INVALID_TIMER);
status_change_end(bl, SC_PRESTIGE, INVALID_TIMER);
status_change_end(bl, SC_BANDING, INVALID_TIMER);
status_change_end(bl, SC_MILLENNIUMSHIELD, INVALID_TIMER); status_change_end(bl, SC_MILLENNIUMSHIELD, INVALID_TIMER);
} }
break; break;
case NC_FLAMELAUNCHER: case NC_FLAMELAUNCHER:
sc_start4(src,bl, SC_BURNING, 50 + 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id, skill_lv)); sc_start4(src,bl, SC_BURNING, 20 + 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id, skill_lv));
break; break;
case NC_COLDSLOWER: case NC_COLDSLOWER:
sc_start(src,bl, SC_FREEZE, 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_FREEZE, 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv));
sc_start(src,bl, SC_FREEZING, 20 + 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_FREEZING, 20 + 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv));
break; break;
case NC_POWERSWING: case NC_POWERSWING:
status_change_start(src,bl,SC_STUN,1000,skill_lv,0,0,0,skill_get_time(skill_id, skill_lv),10); sc_start(src,bl, SC_STUN, 10, skill_lv, skill_get_time(skill_id, skill_lv));
if( rnd()%100 < 5*skill_lv ) if( rnd()%100 < 5*skill_lv )
skill_castend_damage_id(src, bl, NC_AXEBOOMERANG, sd?pc_checkskill(sd, NC_AXEBOOMERANG):1, tick, 1); skill_castend_damage_id(src, bl, NC_AXEBOOMERANG, ((sd) ? pc_checkskill(sd, NC_AXEBOOMERANG) : skill_get_max(NC_AXEBOOMERANG)), tick, 1);
break; break;
case GC_WEAPONCRUSH: case GC_WEAPONCRUSH:
skill_castend_nodamage_id(src,bl,skill_id,skill_lv,tick,BCT_ENEMY); skill_castend_nodamage_id(src,bl,skill_id,skill_lv,tick,BCT_ENEMY);
break; break;
case LG_SHIELDPRESS: case LG_SHIELDPRESS:
sc_start(src,bl, SC_STUN, 30 + 8 * skill_lv, skill_lv, skill_get_time(skill_id,skill_lv)); sc_start(src,bl, SC_STUN, 30 + 8 * skill_lv + (status_get_dex(src) / 10) + (status_get_lv(src) / 4), skill_lv, skill_get_time(skill_id,skill_lv));
break; break;
case LG_PINPOINTATTACK: case LG_PINPOINTATTACK:
rate = 30 + (((5 * (sd?pc_checkskill(sd,LG_PINPOINTATTACK):skill_lv)) + (sstatus->agi + status_get_lv(src))) / 10); rate = 30 + (((5 * ((sd) ? pc_checkskill(sd,LG_PINPOINTATTACK) : skill_lv)) + (status_get_agi(src) + status_get_lv(src))) / 10);
switch( skill_lv ) { switch( skill_lv ) {
case 1: case 1:
sc_start2(src,bl,SC_BLEEDING,rate,skill_lv,src->id,skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,SC_BLEEDING,rate,skill_lv,src->id,skill_get_time(skill_id,skill_lv));
@ -1346,13 +1365,19 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
sc_start(src,bl,SC_STOP,100,skill_lv,skill_get_time(skill_id,skill_lv)); sc_start(src,bl,SC_STOP,100,skill_lv,skill_get_time(skill_id,skill_lv));
break; break;
case LG_RAYOFGENESIS: // 50% chance to cause Blind on Undead and Demon monsters. case LG_RAYOFGENESIS: // 50% chance to cause Blind on Undead and Demon monsters.
if ( battle_check_undead(tstatus->race, tstatus->def_ele) || tstatus->race == RC_DEMON ) if ( battle_check_undead(status_get_race(bl), status_get_element(bl)) || status_get_race(bl) == RC_DEMON )
sc_start(src,bl, SC_BLIND,50, skill_lv, skill_get_time(skill_id,skill_lv)); sc_start(src,bl, SC_BLIND, 50, skill_lv, skill_get_time(skill_id,skill_lv));
break; break;
case LG_EARTHDRIVE: case LG_EARTHDRIVE:
skill_break_equip(src,src, EQP_SHIELD, 500, BCT_SELF); skill_break_equip(src,src, EQP_SHIELD, 100 * skill_lv, BCT_SELF);
sc_start(src,bl, SC_EARTHDRIVE, 100, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_EARTHDRIVE, 100, skill_lv, skill_get_time(skill_id, skill_lv));
break; break;
case LG_HESPERUSLIT:
if( sc && sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 3 )
status_change_start(src,bl, SC_STUN, 10000, skill_lv, 0, 0, 0, rnd_value(4000, 8000), 2);
if( pc_checkskill(sd,LG_PINPOINTATTACK) > 0 && sc && sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 5 )
skill_castend_damage_id(src,bl,LG_PINPOINTATTACK,rnd_value(1, pc_checkskill(sd,LG_PINPOINTATTACK)),tick,0);
break;
case SR_DRAGONCOMBO: case SR_DRAGONCOMBO:
sc_start(src,bl, SC_STUN, 1 + skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_STUN, 1 + skill_lv, skill_lv, skill_get_time(skill_id, skill_lv));
break; break;
@ -1366,7 +1391,7 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
sc_start(src,bl, SC_STUN, 100, skill_lv, 1000 + 1000 * (rnd() %3)); sc_start(src,bl, SC_STUN, 100, skill_lv, 1000 + 1000 * (rnd() %3));
break; break;
case SR_GENTLETOUCH_QUIET: // [(Skill Level x 5) + (Caster?s DEX + Caster?s Base Level) / 10] case SR_GENTLETOUCH_QUIET: // [(Skill Level x 5) + (Caster?s DEX + Caster?s Base Level) / 10]
sc_start(src,bl, SC_SILENCE, 5 * skill_lv + (sstatus->dex + status_get_lv(src)) / 10, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_SILENCE, 5 * skill_lv + (status_get_dex(src) + status_get_lv(src)) / 10, skill_lv, skill_get_time(skill_id, skill_lv));
break; break;
case SR_EARTHSHAKER: case SR_EARTHSHAKER:
sc_start(src,bl,SC_STUN, 25 + 5 * skill_lv,skill_lv,skill_get_time(skill_id,skill_lv)); sc_start(src,bl,SC_STUN, 25 + 5 * skill_lv,skill_lv,skill_get_time(skill_id,skill_lv));
@ -1375,7 +1400,13 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
sc_start(src,bl, SC_FEAR, 5 + 5 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); sc_start(src,bl, SC_FEAR, 5 + 5 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv));
break; break;
case WM_SOUND_OF_DESTRUCTION: case WM_SOUND_OF_DESTRUCTION:
if( rnd()%100 < 5 + 5 * skill_lv ) { // Temporarly Check Until We Get the Official Formula if( tsc && ( tsc->data[SC_SWINGDANCE] || tsc->data[SC_SYMPHONYOFLOVER] || tsc->data[SC_MOONLITSERENADE] ||
tsc->data[SC_RUSHWINDMILL] || tsc->data[SC_ECHOSONG] || tsc->data[SC_HARMONIZE] ||
tsc->data[SC_VOICEOFSIREN] || tsc->data[SC_DEEPSLEEP] || tsc->data[SC_SIRCLEOFNATURE] ||
tsc->data[SC_GLOOMYDAY] || tsc->data[SC_GLOOMYDAY_SK] || tsc->data[SC_SONGOFMANA] ||
tsc->data[SC_DANCEWITHWUG] || tsc->data[SC_SATURDAYNIGHTFEVER] || tsc->data[SC_LERADSDEW] ||
tsc->data[SC_MELODYOFSINK] || tsc->data[SC_BEYONDOFWARCRY] || tsc->data[SC_UNLIMITEDHUMMINGVOICE] ) &&
rnd()%100 < 4 * skill_lv + 2 * ((sd) ? pc_checkskill(sd, WM_LESSON) : skill_get_max(WM_LESSON)) + 10 * chorusbonus) {
status_change_end(bl, SC_DANCING, INVALID_TIMER); status_change_end(bl, SC_DANCING, INVALID_TIMER);
status_change_end(bl, SC_RICHMANKIM, INVALID_TIMER); status_change_end(bl, SC_RICHMANKIM, INVALID_TIMER);
status_change_end(bl, SC_ETERNALCHAOS, INVALID_TIMER); status_change_end(bl, SC_ETERNALCHAOS, INVALID_TIMER);
@ -1416,29 +1447,29 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
sc_start(src,bl, SC_CRYSTALIZE, rate, skill_lv, skill_get_time2(skill_id, skill_lv)); sc_start(src,bl, SC_CRYSTALIZE, rate, skill_lv, skill_get_time2(skill_id, skill_lv));
break; break;
case SO_VARETYR_SPEAR: case SO_VARETYR_SPEAR:
sc_start(src,bl, SC_STUN, 5 + 5 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); sc_start(src,bl, SC_STUN, 5 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv));
break; break;
case GN_SLINGITEM_RANGEMELEEATK: case GN_SLINGITEM_RANGEMELEEATK:
if( sd ) { if( sd ) {
switch( sd->itemid ) { // Starting SCs here instead of do it in skill_additional_effect to simplify the code. switch( sd->itemid ) { // Starting SCs here instead of do it in skill_additional_effect to simplify the code.
case 13261: case ITEMID_COCONUT_BOMB:
sc_start(src,bl, SC_STUN, 100, skill_lv, skill_get_time2(GN_SLINGITEM, skill_lv)); sc_start(src,bl, SC_STUN, 100, skill_lv, skill_get_time2(GN_SLINGITEM, skill_lv));
sc_start2(src,bl, SC_BLEEDING, 100, skill_lv, src->id, skill_get_time2(GN_SLINGITEM, skill_lv)); sc_start2(src,bl, SC_BLEEDING, 100, skill_lv, src->id, skill_get_time2(GN_SLINGITEM, skill_lv));
break; break;
case 13262: case ITEMID_MELON_BOMB:
sc_start(src,bl, SC_MELON_BOMB, 100, skill_lv, skill_get_time(GN_SLINGITEM, skill_lv)); // Reduces ASPD and moviment speed sc_start(src,bl, SC_MELON_BOMB, 100, skill_lv, skill_get_time(GN_SLINGITEM, skill_lv));
break; break;
case 13264: case ITEMID_BANANA_BOMB:
sc_start(src,bl, SC_BANANA_BOMB, 100, skill_lv, skill_get_time(GN_SLINGITEM, skill_lv)); // Reduces LUK ??Needed confirm it, may be it's bugged in kRORE? sc_start(src,bl, SC_BANANA_BOMB, 100, skill_lv, skill_get_time(GN_SLINGITEM, skill_lv));
sc_start(src,bl, SC_BANANA_BOMB_SITDOWN, 75, skill_lv, skill_get_time(GN_SLINGITEM_RANGEMELEEATK,skill_lv)); // Sitdown for 3 seconds. sc_start(src,bl, SC_BANANA_BOMB_SITDOWN, 75, skill_lv, skill_get_time(GN_SLINGITEM_RANGEMELEEATK,skill_lv));
break; break;
} }
sd->itemid = -1; sd->itemid = -1;
} }
break; break;
case GN_HELLS_PLANT_ATK: case GN_HELLS_PLANT_ATK:
sc_start(src,bl, SC_STUN, 5 + 5 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); sc_start(src,bl, SC_STUN, 20 + 10 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv));
sc_start2(src,bl, SC_BLEEDING, 20 + 10 * skill_lv, skill_lv, src->id,skill_get_time2(skill_id, skill_lv)); sc_start2(src,bl, SC_BLEEDING, 5 + 5 * skill_lv, skill_lv, src->id,skill_get_time2(skill_id, skill_lv));
break; break;
case EL_WIND_SLASH: // Non confirmed rate. case EL_WIND_SLASH: // Non confirmed rate.
sc_start2(src,bl, SC_BLEEDING, 25, skill_lv, src->id, skill_get_time(skill_id,skill_lv)); sc_start2(src,bl, SC_BLEEDING, 25, skill_lv, src->id, skill_get_time(skill_id,skill_lv));
@ -1937,6 +1968,16 @@ int skill_counter_additional_effect (struct block_list* src, struct block_list *
case NPC_GRANDDARKNESS: case NPC_GRANDDARKNESS:
attack_type |= BF_WEAPON; attack_type |= BF_WEAPON;
break; break;
case LG_HESPERUSLIT:
{
struct status_change *sc = status_get_sc(src);
if( sc && sc->data[SC_FORCEOFVANGUARD] && sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 6 ) {
char i;
for( i = 0; i < sc->data[SC_FORCEOFVANGUARD]->val3; i++ )
pc_addspiritball(sd, skill_get_time(LG_FORCEOFVANGUARD,1),sc->data[SC_FORCEOFVANGUARD]->val3);
}
}
break;
} }
if(sd && (sd->class_&MAPID_UPPERMASK) == MAPID_STAR_GLADIATOR && if(sd && (sd->class_&MAPID_UPPERMASK) == MAPID_STAR_GLADIATOR &&
@ -2543,7 +2584,7 @@ int64 skill_attack (int attack_type, struct block_list* src, struct block_list *
struct map_session_data *sd, *tsd; struct map_session_data *sd, *tsd;
int64 damage; int64 damage;
int8 rmdamage=0;//magic reflected int8 rmdamage=0;//magic reflected
int type; int type, shadow_flag = 0;
bool additional_effects = true; bool additional_effects = true;
if(skill_id > 0 && !skill_lv) return 0; if(skill_id > 0 && !skill_lv) return 0;
@ -2850,9 +2891,11 @@ int64 skill_attack (int attack_type, struct block_list* src, struct block_list *
ud->attackabletime = tick + type; ud->attackabletime = tick + type;
} }
shadow_flag = skill_check_shadowform(bl, damage, dmg.div_);
if( !dmg.amotion ) { if( !dmg.amotion ) {
//Instant damage //Instant damage
if( !tsc || (!tsc->data[SC_DEVOTION] && skill_id != CR_REFLECTSHIELD) ) if( (!tsc || (!tsc->data[SC_DEVOTION] && skill_id != CR_REFLECTSHIELD)) && !shadow_flag )
status_fix_damage(src,bl,damage,dmg.dmotion); //Deal damage before knockback to allow stuff like firewall+storm gust combo. status_fix_damage(src,bl,damage,dmg.dmotion); //Deal damage before knockback to allow stuff like firewall+storm gust combo.
if( !status_isdead(bl) && additional_effects ) if( !status_isdead(bl) && additional_effects )
skill_additional_effect(src,bl,skill_id,skill_lv,dmg.flag,dmg.dmg_lv,tick); skill_additional_effect(src,bl,skill_id,skill_lv,dmg.flag,dmg.dmg_lv,tick);
@ -2921,8 +2964,15 @@ int64 skill_attack (int attack_type, struct block_list* src, struct block_list *
} }
//Delayed damage must be dealt after the knockback (it needs to know actual position of target) //Delayed damage must be dealt after the knockback (it needs to know actual position of target)
if (dmg.amotion) if (dmg.amotion) {
battle_delay_damage(tick, dmg.amotion,src,bl,dmg.flag,skill_id,skill_lv,damage,dmg.dmg_lv,dmg.dmotion, additional_effects); if( shadow_flag ) {
if( !status_isdead(bl) && additional_effects )
skill_additional_effect(src, bl, skill_id, skill_lv, dmg.flag, dmg.dmg_lv, tick);
if( dmg.flag > ATK_BLOCK )
skill_counter_additional_effect(src, bl, skill_id, skill_lv, dmg.flag, tick);
} else
battle_delay_damage(tick, dmg.amotion,src,bl,dmg.flag,skill_id,skill_lv,damage,dmg.dmg_lv,dmg.dmotion, additional_effects);
}
if( tsc && tsc->data[SC_DEVOTION] && skill_id != PA_PRESSURE ) { if( tsc && tsc->data[SC_DEVOTION] && skill_id != PA_PRESSURE ) {
struct status_change_entry *sce = tsc->data[SC_DEVOTION]; struct status_change_entry *sce = tsc->data[SC_DEVOTION];
@ -2990,10 +3040,7 @@ int64 skill_attack (int attack_type, struct block_list* src, struct block_list *
} }
break; break;
case WM_METALICSOUND: case WM_METALICSOUND:
status_zap(bl, 0, damage*100/(100*(110-pc_checkskill(sd,WM_LESSON)*10))); status_zap(bl, 0, damage*100/(100*(110-((sd) ? pc_checkskill(sd,WM_LESSON) : skill_get_max(WM_LESSON))*10)));
break;
case SR_TIGERCANNON:
status_zap(bl, 0, damage/10); // 10% of damage dealt
break; break;
} }
if( sd ) if( sd )
@ -3377,8 +3424,22 @@ static int skill_timerskill(int tid, unsigned int tick, int id, intptr_t data)
break; // Target not on Map break; // Target not on Map
if(src->m != target->m) if(src->m != target->m)
break; // Different Maps break; // Different Maps
if(status_isdead(src)) if(status_isdead(src)) {
break; // Caster is Dead switch(skl->skill_id) {
case WL_CHAINLIGHTNING_ATK:
case WL_TETRAVORTEX_FIRE:
case WL_TETRAVORTEX_WATER:
case WL_TETRAVORTEX_WIND:
case WL_TETRAVORTEX_GROUND:
case SR_FLASHCOMBO_ATK_STEP1:
case SR_FLASHCOMBO_ATK_STEP2:
case SR_FLASHCOMBO_ATK_STEP3:
case SR_FLASHCOMBO_ATK_STEP4:
break; // Exceptions
default:
continue; // Caster is Dead
}
}
if(status_isdead(target) && skl->skill_id != RG_INTIMIDATE && skl->skill_id != WZ_WATERBALL) if(status_isdead(target) && skl->skill_id != RG_INTIMIDATE && skl->skill_id != WZ_WATERBALL)
break; break;
@ -3430,19 +3491,17 @@ static int skill_timerskill(int tid, unsigned int tick, int id, intptr_t data)
struct block_list *nbl = NULL; // Next Target of Chain struct block_list *nbl = NULL; // Next Target of Chain
skill_attack(BF_MAGIC,src,src,target,skl->skill_id,skl->skill_lv,tick,skl->flag); // Hit a Lightning on the current Target skill_attack(BF_MAGIC,src,src,target,skl->skill_id,skl->skill_lv,tick,skl->flag); // Hit a Lightning on the current Target
skill_toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify skill_toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify
if( skl->type > 1 ) if( skl->type < (4 + skl->skill_lv - 1) && skl->x < 3 )
{ // Remaining Chains Hit { // Remaining Chains Hit
nbl = battle_getenemyarea(src,target->x,target->y,2,BL_CHAR|BL_SKILL,target->id); // Search for a new Target around current one... nbl = battle_getenemyarea(src, target->x, target->y, (skl->type>2)?2:3, // After 2 bounces, it will bounce to other targets in 7x7 range.
if( nbl == NULL && skl->x > 1 ) BL_CHAR|BL_SKILL, target->id); // Search for a new Target around current one...
{ if( nbl == NULL )
nbl = target; skl->x++;
skl->x--; else
} skl->x = 0;
else skl->x = 3;
skill_addtimerskill(src, tick + 651, (nbl?nbl:target)->id, skl->x, 0, WL_CHAINLIGHTNING_ATK, skl->skill_lv, skl->type + 1, skl->flag);
} }
if( nbl )
skill_addtimerskill(src,tick+status_get_adelay(src),nbl->id,skl->x,0,WL_CHAINLIGHTNING_ATK,skl->skill_lv,skl->type-1,skl->flag);
} }
break; break;
case WL_TETRAVORTEX_FIRE: case WL_TETRAVORTEX_FIRE:
@ -3473,7 +3532,7 @@ static int skill_timerskill(int tid, unsigned int tick, int id, intptr_t data)
status_change_start(src,target, i, 10000, skl->skill_lv, status_change_start(src,target, i, 10000, skl->skill_lv,
(i == SC_BURNING ? 1000 : (i == SC_BLEEDING ? src->id : 0)), (i == SC_BURNING ? 1000 : (i == SC_BLEEDING ? src->id : 0)),
(i == SC_BURNING ? src->id : 0), (i == SC_BURNING ? src->id : 0),
0, skill_get_time(WL_TETRAVORTEX,skl->skill_lv), 0); 0, skill_get_time(WL_TETRAVORTEX,skl->skill_lv)+1, 0);
} }
} }
} }
@ -3625,6 +3684,17 @@ int skill_cleartimerskill (struct block_list *src)
for(i=0;i<MAX_SKILLTIMERSKILL;i++) { for(i=0;i<MAX_SKILLTIMERSKILL;i++) {
if(ud->skilltimerskill[i]) { if(ud->skilltimerskill[i]) {
switch(ud->skilltimerskill[i]->skill_id) {
case WL_TETRAVORTEX_FIRE:
case WL_TETRAVORTEX_WATER:
case WL_TETRAVORTEX_WIND:
case WL_TETRAVORTEX_GROUND:
case SR_FLASHCOMBO_ATK_STEP1:
case SR_FLASHCOMBO_ATK_STEP2:
case SR_FLASHCOMBO_ATK_STEP3:
case SR_FLASHCOMBO_ATK_STEP4:
continue;
}
delete_timer(ud->skilltimerskill[i]->timer, skill_timerskill); delete_timer(ud->skilltimerskill[i]->timer, skill_timerskill);
ers_free(skill_timer_ers, ud->skilltimerskill[i]); ers_free(skill_timer_ers, ud->skilltimerskill[i]);
ud->skilltimerskill[i]=NULL; ud->skilltimerskill[i]=NULL;
@ -3855,7 +3925,6 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
**/ **/
case NC_BOOSTKNUCKLE: case NC_BOOSTKNUCKLE:
case NC_PILEBUNKER: case NC_PILEBUNKER:
case NC_VULCANARM:
case NC_COLDSLOWER: case NC_COLDSLOWER:
case NC_ARMSCANNON: case NC_ARMSCANNON:
if (sd) pc_overheat(sd,1); if (sd) pc_overheat(sd,1);
@ -4059,13 +4128,13 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
case WL_JACKFROST: case WL_JACKFROST:
case RA_ARROWSTORM: case RA_ARROWSTORM:
case RA_WUGDASH: case RA_WUGDASH:
case NC_VULCANARM:
case NC_SELFDESTRUCTION: case NC_SELFDESTRUCTION:
case NC_AXETORNADO: case NC_AXETORNADO:
case GC_ROLLINGCUTTER: case GC_ROLLINGCUTTER:
case GC_COUNTERSLASH: case GC_COUNTERSLASH:
case LG_MOONSLASHER: case LG_MOONSLASHER:
case LG_EARTHDRIVE: case LG_EARTHDRIVE:
case SR_TIGERCANNON:
case SR_RAMPAGEBLASTER: case SR_RAMPAGEBLASTER:
case SR_SKYNETBLOW: case SR_SKYNETBLOW:
case SR_WINDMILL: case SR_WINDMILL:
@ -4146,6 +4215,10 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
} }
if( skill_id == WM_REVERBERATION_MELEE || skill_id == WM_REVERBERATION_MAGIC ) if( skill_id == WM_REVERBERATION_MELEE || skill_id == WM_REVERBERATION_MAGIC )
skill_area_temp[1] = 0; skill_area_temp[1] = 0;
if( skill_id == NC_VULCANARM )
if (sd) pc_overheat(sd,1);
// if skill damage should be split among targets, count them // if skill damage should be split among targets, count them
//SD_LEVEL -> Forced splash damage for Auto Blitz-Beat -> count targets //SD_LEVEL -> Forced splash damage for Auto Blitz-Beat -> count targets
//special case: Venom Splasher uses a different range for searching than for splashing //special case: Venom Splasher uses a different range for searching than for splashing
@ -4510,7 +4583,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
case RK_HUNDREDSPEAR: case RK_HUNDREDSPEAR:
skill_attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag); skill_attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag);
if(rnd()%100 < (10 + 3*skill_lv)) { if(rnd()%100 < (10 + 3*skill_lv)) {
int skill_req = sd?pc_checkskill(sd,KN_SPEARBOOMERANG):1; int skill_req = ((sd) ? pc_checkskill(sd,KN_SPEARBOOMERANG) : skill_get_max(KN_SPEARBOOMERANG));
if( !skill_req ) if( !skill_req )
break; // Spear Boomerang auto cast chance only works if you have Spear Boomerang. break; // Spear Boomerang auto cast chance only works if you have Spear Boomerang.
skill_blown(src,bl,6,-1,0); skill_blown(src,bl,6,-1,0);
@ -4585,19 +4658,19 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
break; break;
case WL_CHAINLIGHTNING: case WL_CHAINLIGHTNING:
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
skill_addtimerskill(src,tick + 150,bl->id,3,0,WL_CHAINLIGHTNING_ATK,skill_lv,4+skill_lv,flag); skill_addtimerskill(src,tick + status_get_amotion(src),bl->id,0,0,WL_CHAINLIGHTNING_ATK,skill_lv,0,flag);
break; break;
case WL_DRAINLIFE: case WL_DRAINLIFE:
{ {
int heal = (int)skill_attack(skill_get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag); int heal = (int)skill_attack(skill_get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
int rate = 70 + 5 * skill_lv; int rate = 70 + 5 * skill_lv;
heal = heal * (5 + 5 * skill_lv) / 100; heal = heal * (5 + 5 * skill_lv) / 100;
if( bl->type == BL_SKILL ) if( bl->type == BL_SKILL )
heal = 0; // Don't absorb heal from Ice Walls or other skill units. heal = 0; // Don't absorb heal from Ice Walls or other skill units.
if( heal && rnd()%100 < rate ) if( heal && rnd()%100 < rate )
{ {
status_heal(src, heal, 0, 0); status_heal(src, heal, 0, 0);
clif_skill_nodamage(NULL, src, AL_HEAL, heal, 1); clif_skill_nodamage(NULL, src, AL_HEAL, heal, 1);
@ -4806,8 +4879,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
case NC_INFRAREDSCAN: case NC_INFRAREDSCAN:
if( flag&1 ) if( flag&1 )
{ //TODO: Need a confirmation if the other type of hidden status is included to be scanned. [Jobbie] { //TODO: Need a confirmation if the other type of hidden status is included to be scanned. [Jobbie]
if( rnd()%100 < 50 ) sc_start(src,bl, SC_INFRAREDSCAN, 10000, skill_lv, skill_get_time(skill_id, skill_lv));
sc_start(src,bl, SC_INFRAREDSCAN, 10000, skill_lv, skill_get_time(skill_id, skill_lv));
status_change_end(bl, SC_HIDING, INVALID_TIMER); status_change_end(bl, SC_HIDING, INVALID_TIMER);
status_change_end(bl, SC_CLOAKING, INVALID_TIMER); status_change_end(bl, SC_CLOAKING, INVALID_TIMER);
status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); // Need confirm it. status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); // Need confirm it.
@ -4879,9 +4951,14 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
status_change_end(bl, SC_RUSHWINDMILL, INVALID_TIMER); status_change_end(bl, SC_RUSHWINDMILL, INVALID_TIMER);
status_change_end(bl, SC_ECHOSONG, INVALID_TIMER); status_change_end(bl, SC_ECHOSONG, INVALID_TIMER);
status_change_end(bl, SC_HARMONIZE, INVALID_TIMER); status_change_end(bl, SC_HARMONIZE, INVALID_TIMER);
status_change_end(bl, SC_VOICEOFSIREN, INVALID_TIMER);
status_change_end(bl, SC_DEEPSLEEP, INVALID_TIMER);
status_change_end(bl, SC_SIRCLEOFNATURE, INVALID_TIMER); status_change_end(bl, SC_SIRCLEOFNATURE, INVALID_TIMER);
status_change_end(bl, SC_SATURDAYNIGHTFEVER, INVALID_TIMER); status_change_end(bl, SC_GLOOMYDAY, INVALID_TIMER);
status_change_end(bl, SC_GLOOMYDAY_SK, INVALID_TIMER);
status_change_end(bl, SC_SONGOFMANA, INVALID_TIMER);
status_change_end(bl, SC_DANCEWITHWUG, INVALID_TIMER); status_change_end(bl, SC_DANCEWITHWUG, INVALID_TIMER);
status_change_end(bl, SC_SATURDAYNIGHTFEVER, INVALID_TIMER);
status_change_end(bl, SC_LERADSDEW, INVALID_TIMER); status_change_end(bl, SC_LERADSDEW, INVALID_TIMER);
status_change_end(bl, SC_MELODYOFSINK, INVALID_TIMER); status_change_end(bl, SC_MELODYOFSINK, INVALID_TIMER);
status_change_end(bl, SC_BEYONDOFWARCRY, INVALID_TIMER); status_change_end(bl, SC_BEYONDOFWARCRY, INVALID_TIMER);
@ -4900,6 +4977,22 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint
} }
break; break;
case SR_TIGERCANNON:
if ( flag&1 ) {
skill_attack(BF_WEAPON, src, src, bl, skill_id, skill_lv, tick, flag);
status_zap(bl, 0, status_get_max_sp(bl) * 10 / 100);
} else if ( sd ) {
int hpcost = 10 + 2 * skill_lv, spcost = 5 + 1 * skill_lv;
if (!status_charge(src, status_get_max_hp(src) * hpcost / 100, status_get_max_sp(src) * spcost / 100)) {
if (sd)
clif_skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0);
break;
}
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), splash_target(src), src, skill_id, skill_lv, tick, flag|BCT_ENEMY|SD_SPLASH|1, skill_castend_damage_id);
status_zap(src, hpcost, spcost);
}
break;
case SO_POISON_BUSTER: { case SO_POISON_BUSTER: {
struct status_change *tsc = status_get_sc(bl); struct status_change *tsc = status_get_sc(bl);
if( tsc && tsc->data[SC_POISON] ) { if( tsc && tsc->data[SC_POISON] ) {
@ -5119,6 +5212,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
struct status_data *sstatus, *tstatus; struct status_data *sstatus, *tstatus;
struct status_change *tsc; struct status_change *tsc;
struct status_change_entry *tsce; struct status_change_entry *tsce;
int chorusbonus = 0;
int i = 0; int i = 0;
enum sc_type type; enum sc_type type;
@ -5162,6 +5256,16 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
tstatus = status_get_status_data(bl); tstatus = status_get_status_data(bl);
sstatus = status_get_status_data(src); sstatus = status_get_status_data(src);
// Minstrel/Wanderer number check for chorus skills.
// Bonus remains 0 unless 3 or more Minstrels/Wanderers are in the party.
if( sd && sd->status.party_id ) {
chorusbonus = party_foreachsamemap(party_sub_count_class, sd, MAPID_THIRDMASK, MAPID_MINSTRELWANDERER);
if( chorusbonus > 7 )
chorusbonus = 5; // Maximum effect possible from 7 or more Minstrels/Wanderers
else if( chorusbonus > 2 )
chorusbonus = chorusbonus - 2; // Effect bonus from additional Minstrels/Wanderers if not above the max possible.
}
//Check for undead skills that convert a no-damage skill into a damage one. [Skotlex] //Check for undead skills that convert a no-damage skill into a damage one. [Skotlex]
switch (skill_id) { switch (skill_id) {
case HLIF_HEAL: //[orn] case HLIF_HEAL: //[orn]
@ -5744,7 +5848,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case SO_STRIKING: case SO_STRIKING:
if (sd) { if (sd) {
int bonus = 25 + 10 * skill_lv; int bonus = 8 + 2 * skill_lv;
bonus += (pc_checkskill(sd, SA_FLAMELAUNCHER)+pc_checkskill(sd, SA_FROSTWEAPON)+pc_checkskill(sd, SA_LIGHTNINGLOADER)+pc_checkskill(sd, SA_SEISMICWEAPON))*5; bonus += (pc_checkskill(sd, SA_FLAMELAUNCHER)+pc_checkskill(sd, SA_FROSTWEAPON)+pc_checkskill(sd, SA_LIGHTNINGLOADER)+pc_checkskill(sd, SA_SEISMICWEAPON))*5;
clif_skill_nodamage( src, bl, skill_id, skill_lv, clif_skill_nodamage( src, bl, skill_id, skill_lv,
@ -8070,14 +8174,14 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
int atkbonus = 7 * party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,BCT_PARTY,skill_area_sub_count); int atkbonus = 7 * party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,BCT_PARTY,skill_area_sub_count);
if( flag&1 ) { if( flag&1 ) {
if( src == bl ) if( src == bl )
sc_start2(src,bl,type,100,atkbonus,10*(sd?pc_checkskill(sd,RK_RUNEMASTERY):10),skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,type,100,atkbonus,10*((sd) ? pc_checkskill(sd,RK_RUNEMASTERY) : skill_get_max(RK_RUNEMASTERY)),skill_get_time(skill_id,skill_lv));
else else
sc_start(src,bl,type,100,atkbonus / 4,skill_get_time(skill_id,skill_lv)); sc_start(src,bl,type,100,atkbonus / 4,skill_get_time(skill_id,skill_lv));
} else if( sd && pc_checkskill(sd,RK_RUNEMASTERY) >= 5 ) { } else if( sd && pc_checkskill(sd,RK_RUNEMASTERY) >= 5 ) {
if( sd->status.party_id ) if( sd->status.party_id )
party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,flag|BCT_PARTY|1,skill_castend_nodamage_id); party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,flag|BCT_PARTY|1,skill_castend_nodamage_id);
else else
sc_start2(src,bl,type,100,7,10*(sd?pc_checkskill(sd,RK_RUNEMASTERY):10),skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,type,100,7,10*((sd) ? pc_checkskill(sd,RK_RUNEMASTERY) : skill_get_max(RK_RUNEMASTERY)),skill_get_time(skill_id,skill_lv));
clif_skill_nodamage(src,bl,skill_id,1,1); clif_skill_nodamage(src,bl,skill_id,1,1);
} }
} }
@ -8238,8 +8342,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case AB_CLEMENTIA: case AB_CLEMENTIA:
case AB_CANTO: case AB_CANTO:
{ {
int bless_lv = pc_checkskill(sd,AL_BLESSING) + ((sd ? sd->status.job_level : 50) / 10); int bless_lv = ((sd) ? pc_checkskill(sd,AL_BLESSING) : skill_get_max(AL_BLESSING)) + (((sd) ? sd->status.job_level : 50) / 10);
int agi_lv = pc_checkskill(sd,AL_INCAGI) + ((sd ? sd->status.job_level : 50) / 10); int agi_lv = ((sd) ? pc_checkskill(sd,AL_INCAGI) : skill_get_max(AL_INCAGI)) + (((sd) ? sd->status.job_level : 50) / 10);
if( sd == NULL || sd->status.party_id == 0 || flag&1 ) if( sd == NULL || sd->status.party_id == 0 || flag&1 )
clif_skill_nodamage(bl, bl, skill_id, skill_lv, sc_start(src,bl,type,100, clif_skill_nodamage(bl, bl, skill_id, skill_lv, sc_start(src,bl,type,100,
(skill_id == AB_CLEMENTIA)? bless_lv : (skill_id == AB_CANTO)? agi_lv : skill_lv, skill_get_time(skill_id,skill_lv))); (skill_id == AB_CLEMENTIA)? bless_lv : (skill_id == AB_CANTO)? agi_lv : skill_lv, skill_get_time(skill_id,skill_lv)));
@ -8507,7 +8611,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
break; break;
case WL_MARSHOFABYSS: case WL_MARSHOFABYSS:
// Should marsh of abyss still apply half reduction to players after the 28/10 patch? [LimitLine]
clif_skill_nodamage(src, bl, skill_id, skill_lv, clif_skill_nodamage(src, bl, skill_id, skill_lv,
sc_start4(src,bl, type, 100, skill_lv, status_get_int(src), sd ? sd->status.job_level : 50, 0, sc_start4(src,bl, type, 100, skill_lv, status_get_int(src), sd ? sd->status.job_level : 50, 0,
skill_get_time(skill_id, skill_lv))); skill_get_time(skill_id, skill_lv)));
@ -8526,7 +8629,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
else else
status_change_start(src,bl,SC_STONE,10000,skill_lv,0,0,1000,skill_get_time(skill_id, skill_lv),2); status_change_start(src,bl,SC_STONE,10000,skill_lv,0,0,1000,skill_get_time(skill_id, skill_lv),2);
} else { } else {
int rate = 40 + 8 * skill_lv + ( sd? sd->status.job_level : 50 ) / 4; int rate = 45 + 5 * skill_lv + ( sd? sd->status.job_level : 50 ) / 4;
// IroWiki says Rate should be reduced by target stats, but currently unknown // IroWiki says Rate should be reduced by target stats, but currently unknown
if( rnd()%100 < rate ) { // Success on First Target if( rnd()%100 < rate ) { // Success on First Target
if( !tsc->data[SC_STONE] ) if( !tsc->data[SC_STONE] )
@ -8694,13 +8797,12 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case NC_REPAIR: case NC_REPAIR:
if( sd ) if( sd )
{ {
int heal; int heal = (skill_lv == 5 ? 23 : skill_lv == 4 ? 17 : skill_lv == 3 ? 13:skill_lv == 2 ? 7 : 4) / 100;
if( dstsd && pc_ismadogear(dstsd) ) if( dstsd && pc_ismadogear(dstsd) ) {
{ heal *= dstsd->status.max_hp;
heal = dstsd->status.max_hp * (3+3*skill_lv) / 100;
status_heal(bl,heal,0,2); status_heal(bl,heal,0,2);
} else { } else {
heal = sd->status.max_hp * (3+3*skill_lv) / 100; heal *= sd->status.max_hp;
status_heal(src,heal,0,2); status_heal(src,heal,0,2);
} }
@ -8793,7 +8895,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case LG_TRAMPLE: case LG_TRAMPLE:
clif_skill_damage(src,bl,tick, status_get_amotion(src), 0, -30000, 1, skill_id, skill_lv, 6); clif_skill_damage(src,bl,tick, status_get_amotion(src), 0, -30000, 1, skill_id, skill_lv, 6);
map_foreachinrange(skill_destroy_trap,bl,skill_get_splash(skill_id,skill_lv),BL_SKILL,tick); if (rnd()%100 < (25 + 25 * skill_lv))
map_foreachinrange(skill_destroy_trap,bl,skill_get_splash(skill_id,skill_lv),BL_SKILL,tick);
break; break;
case LG_REFLECTDAMAGE: case LG_REFLECTDAMAGE:
@ -8810,7 +8913,10 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
else if( sd ) { else if( sd ) {
int opt = rnd()%3 + 1; int opt = rnd()%3 + 1;
int val = 0, splash = 0; int val = 0, splash = 0;
struct item_data *shield_data = sd->inventory_data[sd->equip_index[EQI_HAND_L]]; int index = sd->equip_index[EQI_HAND_L];
struct item_data *shield_data;
if( index >= 0 && sd->inventory_data[index] && sd->inventory_data[index]->type == IT_ARMOR )
shield_data = sd->inventory_data[index];
if( !shield_data || shield_data->type != IT_ARMOR ) { // No shield? if( !shield_data || shield_data->type != IT_ARMOR ) { // No shield?
clif_skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0); clif_skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0);
break; break;
@ -8999,7 +9105,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
break; break;
} }
heal = 120 * skill_lv + status_get_max_hp(bl) * (2 + skill_lv) / 100; heal = 120 * skill_lv + status_get_max_hp(bl);
status_heal(bl, heal, 0, 0); status_heal(bl, heal, 0, 0);
if( (tsc && tsc->opt1) && (rnd()%100 < ((skill_lv * 5) + (status_get_dex(src) + status_get_lv(src)) / 4) - (1 + (rnd() % 10))) ) if( (tsc && tsc->opt1) && (rnd()%100 < ((skill_lv * 5) + (status_get_dex(src) + status_get_lv(src)) / 4) - (1 + (rnd() % 10))) )
@ -9011,8 +9117,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
status_change_end(bl, SC_SILENCE, INVALID_TIMER); status_change_end(bl, SC_SILENCE, INVALID_TIMER);
status_change_end(bl, SC_BLIND, INVALID_TIMER); status_change_end(bl, SC_BLIND, INVALID_TIMER);
status_change_end(bl, SC_HALLUCINATION, INVALID_TIMER); status_change_end(bl, SC_HALLUCINATION, INVALID_TIMER);
status_change_end(bl, SC_BURNING, INVALID_TIMER);
status_change_end(bl, SC_FREEZING, INVALID_TIMER);
} }
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
@ -9023,15 +9127,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
clif_skill_nodamage(src,bl,skill_id,skill_lv, clif_skill_nodamage(src,bl,skill_id,skill_lv,
sc_start2(src,bl,type,100,skill_lv,src->id,skill_get_time(skill_id,skill_lv))); sc_start2(src,bl,type,100,skill_lv,src->id,skill_get_time(skill_id,skill_lv)));
break; break;
case WA_SWING_DANCE:
case WA_MOONLIT_SERENADE:
if( sd == NULL || sd->status.party_id == 0 || (flag & 1) )
sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id,skill_lv));
else if( sd ) { // Only shows effects on caster.
clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
party_foreachsamemap(skill_area_sub, sd, skill_get_splash(skill_id, skill_lv), src, skill_id, skill_lv, tick, flag|BCT_PARTY|1, skill_castend_nodamage_id);
}
break;
case SR_FLASHCOMBO: case SR_FLASHCOMBO:
if( sd ) if( sd )
sd->ud.attackabletime = sd->canuseitem_tick = sd->ud.canact_tick; sd->ud.attackabletime = sd->canuseitem_tick = sd->ud.canact_tick;
@ -9041,13 +9136,16 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
skill_addtimerskill(src,tick + 500 * (i - SR_FLASHCOMBO_ATK_STEP1),bl->id,0,0,i,skill_lv,BF_WEAPON,flag|SD_LEVEL); skill_addtimerskill(src,tick + 500 * (i - SR_FLASHCOMBO_ATK_STEP1),bl->id,0,0,i,skill_lv,BF_WEAPON,flag|SD_LEVEL);
break; break;
case WA_SWING_DANCE:
case WA_MOONLIT_SERENADE:
case WA_SYMPHONY_OF_LOVER: case WA_SYMPHONY_OF_LOVER:
case MI_RUSH_WINDMILL: case MI_RUSH_WINDMILL:
case MI_ECHOSONG: case MI_ECHOSONG:
if( sd == NULL || sd->status.party_id == 0 || (flag & 1) ) if( sd == NULL || sd->status.party_id == 0 || (flag & 1) )
sc_start4(src,bl,type,100,skill_lv,6*skill_lv,(sd?pc_checkskill(sd,WM_LESSON):0),(sd?sd->status.job_level:0),skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,type,100,skill_lv,((sd) ? pc_checkskill(sd,WM_LESSON) : skill_get_max(WM_LESSON)),skill_get_time(skill_id,skill_lv));
else if( sd ) { // Only shows effects on caster. else if( sd ) { // Only shows effects on caster.
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
sc_start2(src,bl,type,100,skill_lv,pc_checkskill(sd,WM_LESSON),skill_get_time(skill_id,skill_lv));
party_foreachsamemap(skill_area_sub, sd, skill_get_splash(skill_id, skill_lv), src, skill_id, skill_lv, tick, flag|BCT_PARTY|1, skill_castend_nodamage_id); party_foreachsamemap(skill_area_sub, sd, skill_get_splash(skill_id, skill_lv), src, skill_id, skill_lv, tick, flag|BCT_PARTY|1, skill_castend_nodamage_id);
} }
break; break;
@ -9068,7 +9166,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
if( heal <= 0 ) if( heal <= 0 )
heal = 1; heal = 1;
tstatus->hp = heal; tstatus->hp = heal;
tstatus->sp -= tstatus->sp * ( 120 - 20 * skill_lv ) / 100; tstatus->sp -= tstatus->sp * ( 60 - 10 * skill_lv ) / 100;
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
pc_revive((TBL_PC*)bl,heal,0); pc_revive((TBL_PC*)bl,heal,0);
clif_resurrection(bl,1); clif_resurrection(bl,1);
@ -9082,7 +9180,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
{ {
int rate = 100; int rate = 100;
if( skill_id != WM_SIRCLEOFNATURE ) { if( skill_id != WM_SIRCLEOFNATURE ) {
rate = 6 * skill_lv + (sd ? pc_checkskill(sd,WM_LESSON)*2 + sd->status.job_level/2 : 0 ); rate = 6 * skill_lv + ((sd) ? pc_checkskill(sd,WM_LESSON)*2 + sd->status.job_level/2 : skill_get_max(WM_LESSON));
flag &= ~BCT_SELF; flag &= ~BCT_SELF;
} }
if( flag&1 ) { if( flag&1 ) {
@ -9133,15 +9231,14 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case WM_SONG_OF_MANA: case WM_SONG_OF_MANA:
case WM_DANCE_WITH_WUG: case WM_DANCE_WITH_WUG:
case WM_LERADS_DEW: case WM_LERADS_DEW:
case WM_UNLIMITED_HUMMING_VOICE:
if( flag&1 ) { // These affect to to all party members near the caster. if( flag&1 ) { // These affect to to all party members near the caster.
struct status_change *sc = status_get_sc(src); struct status_change *sc = status_get_sc(src);
if( sc && sc->data[type] ) { if( sc && sc->data[type] ) {
sc_start2(src,bl,type,100,skill_lv,sc->data[type]->val2,skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,type,100,skill_lv,chorusbonus,skill_get_time(skill_id,skill_lv));
} }
} else if( sd ) { } else if( sd ) {
uint16 lv = skill_lv; if( sc_start2(src,bl,type,100,skill_lv,chorusbonus,skill_get_time(skill_id,skill_lv)) )
int count = skill_check_pc_partner(sd,skill_id,&lv,skill_get_splash(skill_id,skill_lv),1);
if( sc_start2(src,bl,type,100,skill_lv,count,skill_get_time(skill_id,skill_lv)) )
party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,flag|BCT_PARTY|1,skill_castend_nodamage_id); party_foreachsamemap(skill_area_sub,sd,skill_get_splash(skill_id,skill_lv),src,skill_id,skill_lv,tick,flag|BCT_PARTY|1,skill_castend_nodamage_id);
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
} }
@ -9149,14 +9246,13 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case WM_MELODYOFSINK: case WM_MELODYOFSINK:
case WM_BEYOND_OF_WARCRY: case WM_BEYOND_OF_WARCRY:
case WM_UNLIMITED_HUMMING_VOICE:
if( flag&1 ) { if( flag&1 ) {
sc_start2(src,bl,type,100,skill_lv,skill_area_temp[0],skill_get_time(skill_id,skill_lv)); sc_start2(src,bl,type,100,skill_lv,chorusbonus,skill_get_time(skill_id,skill_lv));
} else { // These affect to all targets arround the caster. } else { // These affect to all targets arround the caster.
uint16 lv = skill_lv; if( rnd()%100 < 15 + 5 * skill_lv * 5 * chorusbonus ) {
skill_area_temp[0] = (sd) ? skill_check_pc_partner(sd,skill_id,&lv,skill_get_splash(skill_id,skill_lv),1) : 50; // 50% chance in non BL_PC (clones). map_foreachinrange(skill_area_sub, src, skill_get_splash(skill_id,skill_lv),BL_PC, src, skill_id, skill_lv, tick, flag|BCT_ENEMY|1, skill_castend_nodamage_id);
map_foreachinrange(skill_area_sub, src, skill_get_splash(skill_id,skill_lv),BL_PC, src, skill_id, skill_lv, tick, flag|BCT_ENEMY|1, skill_castend_nodamage_id); clif_skill_nodamage(src,bl,skill_id,skill_lv,1);
clif_skill_nodamage(src,bl,skill_id,skill_lv,1); }
} }
break; break;
@ -9298,7 +9394,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case WM_LULLABY_DEEPSLEEP: case WM_LULLABY_DEEPSLEEP:
if( flag&1 ){ if( flag&1 ){
//[(Skill Level x 4) + (Voice Lessons Skill Level x 2) + (Caster's Base Level / 15) + (Caster's Job Level / 5)] % //[(Skill Level x 4) + (Voice Lessons Skill Level x 2) + (Caster's Base Level / 15) + (Caster's Job Level / 5)] %
int rate = (4 * skill_lv) + ( (sd) ? pc_checkskill(sd,WM_LESSON)*2 + sd->status.job_level/5 : 0 ) + status_get_lv(src) / 15; int rate = (4 * skill_lv) + ((sd) ? pc_checkskill(sd,WM_LESSON)*2 + sd->status.job_level/5 : skill_get_max(WM_LESSON)) + status_get_lv(src) / 15;
if( bl != src ) if( bl != src )
sc_start(src,bl,type,rate,skill_lv,skill_get_time(skill_id,skill_lv)); sc_start(src,bl,type,rate,skill_lv,skill_get_time(skill_id,skill_lv));
}else { }else {
@ -9419,8 +9515,11 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
break; break;
case GN_MANDRAGORA: case GN_MANDRAGORA:
if( flag&1 ) { if( flag&1 ) {
int rate = (25 + 10 * skill_lv) - ((tstatus->vit + tstatus->luk) / 5);
if (rate < 10)
rate = 10;
if ( clif_skill_nodamage(bl, src, skill_id, skill_lv, if ( clif_skill_nodamage(bl, src, skill_id, skill_lv,
sc_start(src,bl, type, 25 + 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv))) ) sc_start(src,bl, type, rate, skill_lv, skill_get_time(skill_id, skill_lv))) )
status_zap(bl, 0, status_get_max_sp(bl) * (25 + 5 * skill_lv) / 100); status_zap(bl, 0, status_get_max_sp(bl) * (25 + 5 * skill_lv) / 100);
} else } else
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR, map_foreachinrange(skill_area_sub, bl, skill_get_splash(skill_id, skill_lv), BL_CHAR,
@ -9438,7 +9537,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
sd->itemid = ammo_id; sd->itemid = ammo_id;
if( itemdb_is_GNbomb(ammo_id) ) { if( itemdb_is_GNbomb(ammo_id) ) {
if(battle_check_target(src,bl,BCT_ENEMY) > 0) {// Only attack if the target is an enemy. if(battle_check_target(src,bl,BCT_ENEMY) > 0) {// Only attack if the target is an enemy.
if( ammo_id == 13263 ) if( ammo_id == ITEMID_PINEAPPLE_BOMB )
map_foreachincell(skill_area_sub,bl->m,bl->x,bl->y,BL_CHAR,src,GN_SLINGITEM_RANGEMELEEATK,skill_lv,tick,flag|BCT_ENEMY|1,skill_castend_damage_id); map_foreachincell(skill_area_sub,bl->m,bl->x,bl->y,BL_CHAR,src,GN_SLINGITEM_RANGEMELEEATK,skill_lv,tick,flag|BCT_ENEMY|1,skill_castend_damage_id);
else else
skill_attack(BF_WEAPON,src,src,bl,GN_SLINGITEM_RANGEMELEEATK,skill_lv,tick,flag); skill_attack(BF_WEAPON,src,src,bl,GN_SLINGITEM_RANGEMELEEATK,skill_lv,tick,flag);
@ -10857,7 +10956,6 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui
} }
clif_skill_damage(src,src,tick,status_get_amotion(src),0,-30000,1,skill_id,skill_lv,6); clif_skill_damage(src,src,tick,status_get_amotion(src),0,-30000,1,skill_id,skill_lv,6);
skill_unitsetting(src, skill_id, skill_lv, x, y, flag); skill_unitsetting(src, skill_id, skill_lv, x, y, flag);
//status_change_end(src,SC_POISONINGWEAPON,INVALID_TIMER); // 08/31/2011 - When using poison smoke, you no longer lose the poisoning weapon effect.
break; break;
/** /**
* Arch Bishop * Arch Bishop
@ -10923,7 +11021,7 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui
case NC_SILVERSNIPER: case NC_SILVERSNIPER:
{ {
int class_ = 2042; int class_ = MOBID_SILVERSNIPER;
struct mob_data *md; struct mob_data *md;
md = mob_once_spawn_sub(src, src->m, x, y, status_get_name(src), class_, "", SZ_SMALL, AI_NONE); md = mob_once_spawn_sub(src, src->m, x, y, status_get_name(src), class_, "", SZ_SMALL, AI_NONE);
@ -11020,7 +11118,7 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui
map_foreachinarea(skill_area_sub, src->m, map_foreachinarea(skill_area_sub, src->m,
ud->skillunit[i]->unit->bl.x - 3, ud->skillunit[i]->unit->bl.y - 3, ud->skillunit[i]->unit->bl.x - 3, ud->skillunit[i]->unit->bl.y - 3,
ud->skillunit[i]->unit->bl.x + 3, ud->skillunit[i]->unit->bl.y + 3, BL_CHAR, ud->skillunit[i]->unit->bl.x + 3, ud->skillunit[i]->unit->bl.y + 3, BL_CHAR,
src, CR_ACIDDEMONSTRATION, sd ? pc_checkskill(sd, CR_ACIDDEMONSTRATION) : skill_lv, tick, flag|BCT_ENEMY|1|SD_LEVEL, skill_castend_damage_id); src, CR_ACIDDEMONSTRATION, ((sd) ? pc_checkskill(sd, CR_ACIDDEMONSTRATION) : skill_get_max(CR_ACIDDEMONSTRATION)), tick, flag|BCT_ENEMY|1|SD_LEVEL, skill_castend_damage_id);
skill_delunit(ud->skillunit[i]->unit); skill_delunit(ud->skillunit[i]->unit);
break; break;
default: default:
@ -11781,7 +11879,7 @@ struct skill_unit_group* skill_unitsetting (struct block_list *src, uint16 skill
val1 = 1 + skill_lv; val1 = 1 + skill_lv;
break; break;
case GN_WALLOFTHORN: case GN_WALLOFTHORN:
val1 = 1000 * skill_lv; // Need official value. [LimitLine] val1 = 2000 + 2000 * skill_lv;
break; break;
default: default:
if (group->state.song_dance&0x1) if (group->state.song_dance&0x1)
@ -12288,12 +12386,9 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
if( status_get_mode(bl)&MD_BOSS ) if( status_get_mode(bl)&MD_BOSS )
break; break;
if( status_change_start(ss, bl,type,10000,sg->skill_lv,sg->group_id,0,0,skill_get_time2(sg->skill_id, sg->skill_lv), 8) ) { if( status_change_start(ss, bl,type,10000,sg->skill_lv,sg->group_id,0,0,skill_get_time2(sg->skill_id, sg->skill_lv), 8) ) {
map_moveblock(bl, src->bl.x, src->bl.y, tick); map_moveblock(bl, src->bl.x, src->bl.y, tick);
clif_fixpos(bl); clif_fixpos(bl);
} }
map_foreachinrange(skill_trap_splash, &src->bl, skill_get_splash(sg->skill_id, sg->skill_lv), sg->bl_flag, &src->bl, tick); map_foreachinrange(skill_trap_splash, &src->bl, skill_get_splash(sg->skill_id, sg->skill_lv), sg->bl_flag, &src->bl, tick);
sg->unit_id = UNT_USED_TRAPS; //Changed ID so it does not invoke a for each in area again. sg->unit_id = UNT_USED_TRAPS; //Changed ID so it does not invoke a for each in area again.
} }
@ -12619,9 +12714,8 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
break; break;
case 3: case 3:
skill_attack(skill_get_type(CR_ACIDDEMONSTRATION), ss, &src->bl, bl, skill_attack(skill_get_type(CR_ACIDDEMONSTRATION), ss, &src->bl, bl,
CR_ACIDDEMONSTRATION, sd ? pc_checkskill(sd, CR_ACIDDEMONSTRATION) : sg->skill_lv, tick, 0); CR_ACIDDEMONSTRATION, ((sd) ? pc_checkskill(sd, CR_ACIDDEMONSTRATION) : skill_get_max(CR_ACIDDEMONSTRATION)), tick, 0);
break; break;
} }
} }
break; break;
@ -12649,10 +12743,10 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
case UNT_WARMER: case UNT_WARMER:
if( bl->type == BL_PC && !battle_check_undead(tstatus->race, tstatus->def_ele) && tstatus->race != RC_DEMON ) { if( bl->type == BL_PC && !battle_check_undead(tstatus->race, tstatus->def_ele) && tstatus->race != RC_DEMON ) {
int hp = 125 * sg->skill_lv; // Officially is 125 * skill_lv. int hp = tstatus->max_hp * sg->skill_lv / 100;
struct status_change *ssc = status_get_sc(ss); struct status_change *ssc = status_get_sc(ss);
if( ssc && ssc->data[SC_HEATER_OPTION] ) if( ssc && ssc->data[SC_HEATER_OPTION] )
hp += hp * ssc->data[SC_HEATER_OPTION]->val3 / 100; hp *= 3 / 100;
if( tstatus->hp != tstatus->max_hp ) if( tstatus->hp != tstatus->max_hp )
clif_skill_nodamage(&src->bl, bl, AL_HEAL, hp, 0); clif_skill_nodamage(&src->bl, bl, AL_HEAL, hp, 0);
if( tsc && tsc->data[SC_AKAITSUKI] && hp ) if( tsc && tsc->data[SC_AKAITSUKI] && hp )
@ -14419,7 +14513,7 @@ struct skill_condition skill_get_requirement(struct map_session_data* sd, uint16
if( sc->data[SC__LAZINESS] ) if( sc->data[SC__LAZINESS] )
req.sp += req.sp + sc->data[SC__LAZINESS]->val1 * 10; req.sp += req.sp + sc->data[SC__LAZINESS]->val1 * 10;
if (sc->data[SC_UNLIMITEDHUMMINGVOICE]) if (sc->data[SC_UNLIMITEDHUMMINGVOICE])
req.sp += req.sp * sc->data[SC_UNLIMITEDHUMMINGVOICE]->val2 / 100; req.sp += req.sp * sc->data[SC_UNLIMITEDHUMMINGVOICE]->val3 / 100;
if( sc->data[SC_RECOGNIZEDSPELL] ) if( sc->data[SC_RECOGNIZEDSPELL] )
req.sp += req.sp / 4; req.sp += req.sp / 4;
if( sc->data[SC_OFFERTORIUM]) if( sc->data[SC_OFFERTORIUM])
@ -14833,6 +14927,8 @@ int skill_vfcastfix (struct block_list *bl, double time, uint16 skill_id, uint16
fixed = 0; fixed = 0;
if( sc->data[SC_GUST_OPTION] || sc->data[SC_BLAST_OPTION] || sc->data[SC_WILD_STORM_OPTION] ) if( sc->data[SC_GUST_OPTION] || sc->data[SC_BLAST_OPTION] || sc->data[SC_WILD_STORM_OPTION] )
fixed -= 1000; fixed -= 1000;
if (sc->data[SC_DANCEWITHWUG])
fixed -= fixed * sc->data[SC_DANCEWITHWUG]->val4 / 100;
} }
if( sd && !(skill_get_castnodex(skill_id, skill_lv)&4) ){ if( sd && !(skill_get_castnodex(skill_id, skill_lv)&4) ){
@ -15980,6 +16076,41 @@ bool skill_check_cloaking(struct block_list *bl, struct status_change_entry *sce
return wall; return wall;
} }
int skill_check_shadowform(struct block_list *bl, int64 damage, int hit) {
struct status_change *sc;
struct block_list *src;
nullpo_retr(0, bl);
sc = status_get_sc(bl);
if( sc && sc->data[SC__SHADOWFORM] && damage ) {
src = map_id2bl(sc->data[SC__SHADOWFORM]->val2);
if( !src || src->m != bl->m ) {
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
return 0;
}
if( src && (status_isdead(src) || !battle_check_target(bl,src,BCT_ENEMY)) ) {
if( src->type == BL_PC )
((TBL_PC*)src)->shadowform_id = 0;
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
return 0;
}
status_damage(bl, src, damage, 0, clif_damage(src, src, gettick(), 500, 500, damage, hit, (hit > 1 ? 8 : 0), 0), 0);
if( (--sc->data[SC__SHADOWFORM]->val3) <= 0 ) {
status_change_end(bl, SC__SHADOWFORM, INVALID_TIMER);
if( src->type == BL_PC )
((TBL_PC*)src)->shadowform_id = 0;
}
return 1;
}
return 0;
}
bool skill_check_camouflage(struct block_list *bl, struct status_change_entry *sce) bool skill_check_camouflage(struct block_list *bl, struct status_change_entry *sce)
{ {
bool wall = true; bool wall = true;
@ -17596,8 +17727,7 @@ int skill_poisoningweapon( struct map_session_data *sd, int nameid) {
clif_skill_fail(sd,GC_POISONINGWEAPON,USESKILL_FAIL_LEVEL,0); clif_skill_fail(sd,GC_POISONINGWEAPON,USESKILL_FAIL_LEVEL,0);
return 0; return 0;
} }
switch( nameid ) switch( nameid ) { // t_lv used to take duration from skill_get_time2
{ // t_lv used to take duration from skill_get_time2
case ITEMID_PARALYSE: type = SC_PARALYSE; break; case ITEMID_PARALYSE: type = SC_PARALYSE; break;
case ITEMID_PYREXIA: type = SC_PYREXIA; break; case ITEMID_PYREXIA: type = SC_PYREXIA; break;
case ITEMID_DEATHHURT: type = SC_DEATHHURT; break; case ITEMID_DEATHHURT: type = SC_DEATHHURT; break;
@ -17649,8 +17779,7 @@ int skill_magicdecoy(struct map_session_data *sd, int nameid) {
nullpo_ret(sd); nullpo_ret(sd);
skill = sd->menuskill_val; skill = sd->menuskill_val;
if( nameid <= 0 || !itemdb_is_element(nameid) || (i = pc_search_inventory(sd,nameid)) < 0 || !skill || pc_delitem(sd,i,1,0,0,LOG_TYPE_CONSUME) ) if( nameid <= 0 || !itemdb_is_element(nameid) || (i = pc_search_inventory(sd,nameid)) < 0 || !skill || pc_delitem(sd,i,1,0,0,LOG_TYPE_CONSUME) ) {
{
clif_skill_fail(sd,NC_MAGICDECOY,USESKILL_FAIL_LEVEL,0); clif_skill_fail(sd,NC_MAGICDECOY,USESKILL_FAIL_LEVEL,0);
return 0; return 0;
} }
@ -17663,10 +17792,13 @@ int skill_magicdecoy(struct map_session_data *sd, int nameid) {
// Item picked decides the mob class // Item picked decides the mob class
switch(nameid) { switch(nameid) {
case ITEMID_BLOODY_RED: class_ = 2043; break; case ITEMID_SCARLET_PTS: class_ = MOBID_MAGICDECOY_FIRE; break;
case ITEMID_CRYSTAL_BLUE: class_ = 2044; break; case ITEMID_INDIGO_PTS: class_ = MOBID_MAGICDECOY_WATER; break;
case ITEMID_WIND_OF_VERDURE: class_ = 2046; break; case ITEMID_YELLOW_WISH_PTS: class_ = MOBID_MAGICDECOY_WIND; break;
default: class_ = 2045; break; case ITEMID_LIME_GREEN_PTS: class_ = MOBID_MAGICDECOY_EARTH; break;
default:
clif_skill_fail(sd,NC_MAGICDECOY,USESKILL_FAIL_LEVEL,0);
return 0;
} }
md = mob_once_spawn_sub(&sd->bl, sd->bl.m, x, y, sd->status.name, class_, "", SZ_SMALL, AI_NONE); md = mob_once_spawn_sub(&sd->bl, sd->bl.m, x, y, sd->status.name, class_, "", SZ_SMALL, AI_NONE);
@ -17698,8 +17830,7 @@ int skill_spellbook (struct map_session_data *sd, int nameid) {
status_change_end(&sd->bl, SC_STOP, INVALID_TIMER); status_change_end(&sd->bl, SC_STOP, INVALID_TIMER);
for(i=SC_SPELLBOOK1; i <= SC_MAXSPELLBOOK; i++) if( sc && !sc->data[i] ) break; for(i=SC_SPELLBOOK1; i <= SC_MAXSPELLBOOK; i++) if( sc && !sc->data[i] ) break;
if( i > SC_MAXSPELLBOOK ) if( i > SC_MAXSPELLBOOK ) {
{
clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_READING, 0); clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_READING, 0);
return 0; return 0;
} }
@ -17707,8 +17838,7 @@ int skill_spellbook (struct map_session_data *sd, int nameid) {
ARR_FIND(0,MAX_SKILL_SPELLBOOK_DB,i,skill_spellbook_db[i].nameid == nameid); // Search for information of this item ARR_FIND(0,MAX_SKILL_SPELLBOOK_DB,i,skill_spellbook_db[i].nameid == nameid); // Search for information of this item
if( i == MAX_SKILL_SPELLBOOK_DB ) return 0; if( i == MAX_SKILL_SPELLBOOK_DB ) return 0;
if( !pc_checkskill(sd, (skill_id = skill_spellbook_db[i].skill_id)) ) if( !pc_checkskill(sd, (skill_id = skill_spellbook_db[i].skill_id)) ) { // User don't know the skill
{ // User don't know the skill
sc_start(&sd->bl,&sd->bl, SC_SLEEP, 100, 1, skill_get_time(WL_READING_SB, pc_checkskill(sd,WL_READING_SB))); sc_start(&sd->bl,&sd->bl, SC_SLEEP, 100, 1, skill_get_time(WL_READING_SB, pc_checkskill(sd,WL_READING_SB)));
clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_DIFFICULT_SLEEP, 0); clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_DIFFICULT_SLEEP, 0);
return 0; return 0;
@ -17717,9 +17847,8 @@ int skill_spellbook (struct map_session_data *sd, int nameid) {
max_preserve = 4 * pc_checkskill(sd, WL_FREEZE_SP) + status_get_int(&sd->bl) / 10 + sd->status.base_level / 10; max_preserve = 4 * pc_checkskill(sd, WL_FREEZE_SP) + status_get_int(&sd->bl) / 10 + sd->status.base_level / 10;
point = skill_spellbook_db[i].point; point = skill_spellbook_db[i].point;
if( sc && sc->data[SC_READING_SB] ){ if( sc && sc->data[SC_READING_SB] ) {
if( (sc->data[SC_READING_SB]->val2 + point) > max_preserve ) if( (sc->data[SC_READING_SB]->val2 + point) > max_preserve ) {
{
clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_PRESERVATION_POINT, 0); clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_PRESERVATION_POINT, 0);
return 0; return 0;
} }
@ -17730,7 +17859,7 @@ int skill_spellbook (struct map_session_data *sd, int nameid) {
break; break;
} }
} }
}else{ } else {
sc_start2(&sd->bl,&sd->bl, SC_READING_SB, 100, 0, point, INVALID_TIMER); sc_start2(&sd->bl,&sd->bl, SC_READING_SB, 100, 0, point, INVALID_TIMER);
sc_start4(&sd->bl,&sd->bl, SC_MAXSPELLBOOK, 100, skill_id, pc_checkskill(sd,skill_id), point, 0, INVALID_TIMER); sc_start4(&sd->bl,&sd->bl, SC_MAXSPELLBOOK, 100, skill_id, pc_checkskill(sd,skill_id), point, 0, INVALID_TIMER);
} }
@ -17754,7 +17883,7 @@ int skill_select_menu(struct map_session_data *sd,uint16 skill_id) {
lv = (aslvl + 1) / 2; // The level the skill will be autocasted lv = (aslvl + 1) / 2; // The level the skill will be autocasted
lv = min(lv,sd->status.skill[skill_id].lv); lv = min(lv,sd->status.skill[skill_id].lv);
prob = (aslvl == 10) ? 15 : (32 - 2 * aslvl); // Probability at level 10 was increased to 15. prob = (aslvl == 10) ? 15 : (30 - 2 * aslvl); // Probability at level 10 was increased to 15.
sc_start4(&sd->bl,&sd->bl,SC__AUTOSHADOWSPELL,100,id,lv,prob,0,skill_get_time(SC_AUTOSHADOWSPELL,aslvl)); sc_start4(&sd->bl,&sd->bl,SC__AUTOSHADOWSPELL,100,id,lv,prob,0,skill_get_time(SC_AUTOSHADOWSPELL,aslvl));
return 0; return 0;
} }
@ -17784,12 +17913,12 @@ int skill_elementalanalysis(struct map_session_data* sd, int n, uint16 skill_lv,
} }
switch( nameid ) { switch( nameid ) {
// Level 1 // Level 1
case ITEMID_FLAME_HEART: product = ITEMID_BLOODY_RED; break; case ITEMID_FLAME_HEART: product = ITEMID_BLOODY_RED; break;
case ITEMID_MISTIC_FROZEN: product = ITEMID_CRYSTAL_BLUE; break; case ITEMID_MISTIC_FROZEN: product = ITEMID_CRYSTAL_BLUE; break;
case ITEMID_ROUGH_WIND: product = ITEMID_WIND_OF_VERDURE; break; case ITEMID_ROUGH_WIND: product = ITEMID_WIND_OF_VERDURE; break;
case ITEMID_GREAT_NATURE: product = ITEMID_YELLOW_LIVE; break; case ITEMID_GREAT_NATURE: product = ITEMID_YELLOW_LIVE; break;
// Level 2 // Level 2
case ITEMID_BLOODY_RED: product = ITEMID_FLAME_HEART; break; case ITEMID_BLOODY_RED: product = ITEMID_FLAME_HEART; break;
case ITEMID_CRYSTAL_BLUE: product = ITEMID_MISTIC_FROZEN; break; case ITEMID_CRYSTAL_BLUE: product = ITEMID_MISTIC_FROZEN; break;
case ITEMID_WIND_OF_VERDURE: product = ITEMID_ROUGH_WIND; break; case ITEMID_WIND_OF_VERDURE: product = ITEMID_ROUGH_WIND; break;
@ -17809,7 +17938,6 @@ int skill_elementalanalysis(struct map_session_data* sd, int n, uint16 skill_lv,
return 1; return 1;
} }
memset(&tmp_item,0,sizeof(tmp_item)); memset(&tmp_item,0,sizeof(tmp_item));
tmp_item.nameid = product; tmp_item.nameid = product;
tmp_item.amount = add_amount; tmp_item.amount = add_amount;

View File

@ -1966,6 +1966,7 @@ struct s_skill_magicmushroom_db {
}; };
extern struct s_skill_magicmushroom_db skill_magicmushroom_db[MAX_SKILL_MAGICMUSHROOM_DB]; extern struct s_skill_magicmushroom_db skill_magicmushroom_db[MAX_SKILL_MAGICMUSHROOM_DB];
int skill_maelstrom_suction(struct block_list *bl, va_list ap); int skill_maelstrom_suction(struct block_list *bl, va_list ap);
int skill_check_shadowform(struct block_list *bl, int64 damage, int hit);
/** /**
* Ranger * Ranger
**/ **/

View File

@ -609,8 +609,8 @@ void initChangeTables(void)
/* Warlock */ /* Warlock */
add_sc( WL_WHITEIMPRISON , SC_WHITEIMPRISON ); add_sc( WL_WHITEIMPRISON , SC_WHITEIMPRISON );
set_sc_with_vfx( WL_FROSTMISTY , SC_FREEZING , SI_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF|SCB_DEF2 ); set_sc_with_vfx( WL_FROSTMISTY , SC_FREEZING , SI_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF|SCB_DEF2 );
set_sc( WL_MARSHOFABYSS , SC_MARSHOFABYSS , SI_MARSHOFABYSS , SCB_SPEED|SCB_FLEE|SCB_DEF|SCB_MDEF ); set_sc( WL_MARSHOFABYSS , SC_MARSHOFABYSS , SI_MARSHOFABYSS , SCB_AGI|SCB_DEX|SCB_SPEED );
set_sc(WL_RECOGNIZEDSPELL , SC_RECOGNIZEDSPELL , SI_RECOGNIZEDSPELL , SCB_MATK); set_sc( WL_RECOGNIZEDSPELL , SC_RECOGNIZEDSPELL , SI_RECOGNIZEDSPELL , SCB_MATK);
set_sc( WL_STASIS , SC_STASIS , SI_STASIS , SCB_NONE ); set_sc( WL_STASIS , SC_STASIS , SI_STASIS , SCB_NONE );
set_sc( WL_TELEKINESIS_INTENSE , SC_TELEKINESIS_INTENSE, SI_TELEKINESIS_INTENSE, SCB_MATK ); set_sc( WL_TELEKINESIS_INTENSE , SC_TELEKINESIS_INTENSE, SI_TELEKINESIS_INTENSE, SCB_MATK );
@ -618,7 +618,7 @@ void initChangeTables(void)
set_sc( RA_FEARBREEZE , SC_FEARBREEZE , SI_FEARBREEZE , SCB_NONE ); set_sc( RA_FEARBREEZE , SC_FEARBREEZE , SI_FEARBREEZE , SCB_NONE );
set_sc( RA_ELECTRICSHOCKER , SC_ELECTRICSHOCKER , SI_ELECTRICSHOCKER , SCB_NONE ); set_sc( RA_ELECTRICSHOCKER , SC_ELECTRICSHOCKER , SI_ELECTRICSHOCKER , SCB_NONE );
set_sc( RA_WUGDASH , SC_WUGDASH , SI_WUGDASH , SCB_SPEED ); set_sc( RA_WUGDASH , SC_WUGDASH , SI_WUGDASH , SCB_SPEED );
set_sc( RA_CAMOUFLAGE , SC_CAMOUFLAGE , SI_CAMOUFLAGE , SCB_SPEED ); set_sc( RA_CAMOUFLAGE , SC_CAMOUFLAGE , SI_CAMOUFLAGE , SCB_WATK|SCB_CRI|SCB_DEF|SCB_SPEED );
add_sc( RA_MAGENTATRAP , SC_ELEMENTALCHANGE ); add_sc( RA_MAGENTATRAP , SC_ELEMENTALCHANGE );
add_sc( RA_COBALTTRAP , SC_ELEMENTALCHANGE ); add_sc( RA_COBALTTRAP , SC_ELEMENTALCHANGE );
add_sc( RA_MAIZETRAP , SC_ELEMENTALCHANGE ); add_sc( RA_MAIZETRAP , SC_ELEMENTALCHANGE );
@ -658,7 +658,7 @@ void initChangeTables(void)
set_sc( SC_INVISIBILITY , SC__INVISIBILITY , SI_INVISIBILITY , SCB_ASPD|SCB_CRI|SCB_ATK_ELE ); set_sc( SC_INVISIBILITY , SC__INVISIBILITY , SI_INVISIBILITY , SCB_ASPD|SCB_CRI|SCB_ATK_ELE );
set_sc( SC_DEADLYINFECT , SC__DEADLYINFECT , SI_DEADLYINFECT , SCB_NONE ); set_sc( SC_DEADLYINFECT , SC__DEADLYINFECT , SI_DEADLYINFECT , SCB_NONE );
set_sc( SC_ENERVATION , SC__ENERVATION , SI_ENERVATION , SCB_BATK ); set_sc( SC_ENERVATION , SC__ENERVATION , SI_ENERVATION , SCB_BATK );
set_sc( SC_GROOMY , SC__GROOMY , SI_GROOMY , SCB_ASPD|SCB_HIT|SCB_SPEED ); set_sc( SC_GROOMY , SC__GROOMY , SI_GROOMY , SCB_ASPD|SCB_HIT );
set_sc( SC_IGNORANCE , SC__IGNORANCE , SI_IGNORANCE , SCB_NONE ); set_sc( SC_IGNORANCE , SC__IGNORANCE , SI_IGNORANCE , SCB_NONE );
set_sc( SC_LAZINESS , SC__LAZINESS , SI_LAZINESS , SCB_FLEE ); set_sc( SC_LAZINESS , SC__LAZINESS , SI_LAZINESS , SCB_FLEE );
set_sc( SC_UNLUCKY , SC__UNLUCKY , SI_UNLUCKY , SCB_CRI|SCB_FLEE2 ); set_sc( SC_UNLUCKY , SC__UNLUCKY , SI_UNLUCKY , SCB_CRI|SCB_FLEE2 );
@ -666,7 +666,7 @@ void initChangeTables(void)
set_sc( SC_STRIPACCESSARY , SC__STRIPACCESSORY , SI_STRIPACCESSARY , SCB_DEX|SCB_INT|SCB_LUK ); set_sc( SC_STRIPACCESSARY , SC__STRIPACCESSORY , SI_STRIPACCESSARY , SCB_DEX|SCB_INT|SCB_LUK );
set_sc_with_vfx( SC_MANHOLE , SC__MANHOLE , SI_MANHOLE , SCB_NONE ); set_sc_with_vfx( SC_MANHOLE , SC__MANHOLE , SI_MANHOLE , SCB_NONE );
add_sc( SC_CHAOSPANIC , SC_CONFUSION ); add_sc( SC_CHAOSPANIC , SC_CONFUSION );
add_sc( SC_BLOODYLUST , SC_BERSERK ); set_sc( SC_BLOODYLUST , SC_BERSERK , SI_BLOODYLUST , SCB_DEF|SCB_DEF2|SCB_BATK|SCB_WATK);
/* Sura */ /* Sura */
add_sc( SR_DRAGONCOMBO , SC_STUN ); add_sc( SR_DRAGONCOMBO , SC_STUN );
@ -676,7 +676,7 @@ void initChangeTables(void)
set_sc( SR_LIGHTNINGWALK , SC_LIGHTNINGWALK , SI_LIGHTNINGWALK , SCB_NONE ); set_sc( SR_LIGHTNINGWALK , SC_LIGHTNINGWALK , SI_LIGHTNINGWALK , SCB_NONE );
set_sc( SR_RAISINGDRAGON , SC_RAISINGDRAGON , SI_RAISINGDRAGON , SCB_REGEN|SCB_MAXHP|SCB_MAXSP ); set_sc( SR_RAISINGDRAGON , SC_RAISINGDRAGON , SI_RAISINGDRAGON , SCB_REGEN|SCB_MAXHP|SCB_MAXSP );
set_sc( SR_GENTLETOUCH_ENERGYGAIN , SC_GT_ENERGYGAIN , SI_GENTLETOUCH_ENERGYGAIN , SCB_NONE ); set_sc( SR_GENTLETOUCH_ENERGYGAIN , SC_GT_ENERGYGAIN , SI_GENTLETOUCH_ENERGYGAIN , SCB_NONE );
set_sc( SR_GENTLETOUCH_CHANGE , SC_GT_CHANGE , SI_GENTLETOUCH_CHANGE , SCB_ASPD|SCB_MDEF|SCB_MAXHP ); set_sc( SR_GENTLETOUCH_CHANGE , SC_GT_CHANGE , SI_GENTLETOUCH_CHANGE , SCB_WATK|SCB_MDEF|SCB_ASPD|SCB_MAXHP );
set_sc( SR_GENTLETOUCH_REVITALIZE , SC_GT_REVITALIZE , SI_GENTLETOUCH_REVITALIZE , SCB_MAXHP|SCB_REGEN ); set_sc( SR_GENTLETOUCH_REVITALIZE , SC_GT_REVITALIZE , SI_GENTLETOUCH_REVITALIZE , SCB_MAXHP|SCB_REGEN );
add_sc( SR_FLASHCOMBO , SC_FLASHCOMBO ); add_sc( SR_FLASHCOMBO , SC_FLASHCOMBO );
@ -696,8 +696,8 @@ void initChangeTables(void)
set_sc( WM_DANCE_WITH_WUG , SC_DANCEWITHWUG , SI_DANCEWITHWUG , SCB_ASPD ); set_sc( WM_DANCE_WITH_WUG , SC_DANCEWITHWUG , SI_DANCEWITHWUG , SCB_ASPD );
set_sc( WM_SATURDAY_NIGHT_FEVER , SC_SATURDAYNIGHTFEVER , SI_SATURDAYNIGHTFEVER , SCB_BATK|SCB_DEF|SCB_FLEE|SCB_REGEN ); set_sc( WM_SATURDAY_NIGHT_FEVER , SC_SATURDAYNIGHTFEVER , SI_SATURDAYNIGHTFEVER , SCB_BATK|SCB_DEF|SCB_FLEE|SCB_REGEN );
set_sc( WM_LERADS_DEW , SC_LERADSDEW , SI_LERADSDEW , SCB_MAXHP ); set_sc( WM_LERADS_DEW , SC_LERADSDEW , SI_LERADSDEW , SCB_MAXHP );
set_sc( WM_MELODYOFSINK , SC_MELODYOFSINK , SI_MELODYOFSINK , SCB_BATK|SCB_MATK ); set_sc( WM_MELODYOFSINK , SC_MELODYOFSINK , SI_MELODYOFSINK , SCB_INT );
set_sc( WM_BEYOND_OF_WARCRY , SC_BEYONDOFWARCRY , SI_WARCRYOFBEYOND , SCB_BATK|SCB_MATK ); set_sc( WM_BEYOND_OF_WARCRY , SC_BEYONDOFWARCRY , SI_WARCRYOFBEYOND , SCB_STR|SCB_CRI|SCB_MAXHP );
set_sc( WM_UNLIMITED_HUMMING_VOICE , SC_UNLIMITEDHUMMINGVOICE , SI_UNLIMITEDHUMMINGVOICE , SCB_NONE ); set_sc( WM_UNLIMITED_HUMMING_VOICE , SC_UNLIMITEDHUMMINGVOICE , SI_UNLIMITEDHUMMINGVOICE , SCB_NONE );
set_sc( WM_FRIGG_SONG , SC_FRIGG_SONG , SI_FRIGG_SONG , SCB_MAXHP ); set_sc( WM_FRIGG_SONG , SC_FRIGG_SONG , SI_FRIGG_SONG , SCB_MAXHP );
@ -721,8 +721,8 @@ void initChangeTables(void)
set_sc( GN_THORNS_TRAP , SC_THORNSTRAP , SI_THORNTRAP , SCB_NONE ); set_sc( GN_THORNS_TRAP , SC_THORNSTRAP , SI_THORNTRAP , SCB_NONE );
set_sc_with_vfx( GN_BLOOD_SUCKER , SC_BLOODSUCKER , SI_BLOODSUCKER , SCB_NONE ); set_sc_with_vfx( GN_BLOOD_SUCKER , SC_BLOODSUCKER , SI_BLOODSUCKER , SCB_NONE );
add_sc( GN_WALLOFTHORN , SC_STOP ); add_sc( GN_WALLOFTHORN , SC_STOP );
set_sc( GN_FIRE_EXPANSION_SMOKE_POWDER , SC_SMOKEPOWDER , SI_FIRE_EXPANSION_SMOKE_POWDER, SCB_NONE ); set_sc( GN_FIRE_EXPANSION_SMOKE_POWDER , SC_SMOKEPOWDER , SI_FIRE_EXPANSION_SMOKE_POWDER, SCB_FLEE );
set_sc( GN_FIRE_EXPANSION_TEAR_GAS , SC_TEARGAS , SI_FIRE_EXPANSION_TEAR_GAS , SCB_NONE ); set_sc( GN_FIRE_EXPANSION_TEAR_GAS , SC_TEARGAS , SI_FIRE_EXPANSION_TEAR_GAS , SCB_HIT|SCB_FLEE );
set_sc( GN_MANDRAGORA , SC_MANDRAGORA , SI_MANDRAGORA , SCB_INT ); set_sc( GN_MANDRAGORA , SC_MANDRAGORA , SI_MANDRAGORA , SCB_INT );
set_sc_with_vfx( GN_ILLUSIONDOPING , SC_ILLUSIONDOPING , SI_ILLUSIONDOPING , SCB_HIT ); set_sc_with_vfx( GN_ILLUSIONDOPING , SC_ILLUSIONDOPING , SI_ILLUSIONDOPING , SCB_HIT );
@ -2547,6 +2547,8 @@ static int status_get_hpbonus(struct block_list *bl, enum e_status_bonus type) {
//Decreasing //Decreasing
if(sc->data[SC_VENOMBLEED]) if(sc->data[SC_VENOMBLEED])
bonus -= 15; bonus -= 15;
if(sc->data[SC_BEYONDOFWARCRY])
bonus -= sc->data[SC_BEYONDOFWARCRY]->val4;
if(sc->data[SC__WEAKNESS]) if(sc->data[SC__WEAKNESS])
bonus -= sc->data[SC__WEAKNESS]->val2; bonus -= sc->data[SC__WEAKNESS]->val2;
if(sc->data[SC_MYSTERIOUS_POWDER]) if(sc->data[SC_MYSTERIOUS_POWDER])
@ -4666,10 +4668,12 @@ static unsigned short status_calc_str(struct block_list *bl, struct status_chang
str += ((sc->data[SC_MARIONETTE2]->val3)>>16)&0xFF; str += ((sc->data[SC_MARIONETTE2]->val3)>>16)&0xFF;
if(sc->data[SC_GIANTGROWTH]) if(sc->data[SC_GIANTGROWTH])
str += 30; str += 30;
if(sc->data[SC_BEYONDOFWARCRY])
str -= sc->data[SC_BEYONDOFWARCRY]->val3;
if(sc->data[SC_SAVAGE_STEAK]) if(sc->data[SC_SAVAGE_STEAK])
str += sc->data[SC_SAVAGE_STEAK]->val1; str += sc->data[SC_SAVAGE_STEAK]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
str += sc->data[SC_INSPIRATION]->val3; str += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
str -= sc->data[SC_STOMACHACHE]->val1; str -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -4728,10 +4732,12 @@ static unsigned short status_calc_agi(struct block_list *bl, struct status_chang
agi += ((sc->data[SC_MARIONETTE2]->val3)>>8)&0xFF; agi += ((sc->data[SC_MARIONETTE2]->val3)>>8)&0xFF;
if(sc->data[SC_ADORAMUS]) if(sc->data[SC_ADORAMUS])
agi -= sc->data[SC_ADORAMUS]->val2; agi -= sc->data[SC_ADORAMUS]->val2;
if(sc->data[SC_MARSHOFABYSS])
agi -= agi * sc->data[SC_MARSHOFABYSS]->val2 / 100;
if(sc->data[SC_DROCERA_HERB_STEAMED]) if(sc->data[SC_DROCERA_HERB_STEAMED])
agi += sc->data[SC_DROCERA_HERB_STEAMED]->val1; agi += sc->data[SC_DROCERA_HERB_STEAMED]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
agi += sc->data[SC_INSPIRATION]->val3; agi += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
agi -= sc->data[SC_STOMACHACHE]->val1; agi -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -4783,7 +4789,7 @@ static unsigned short status_calc_vit(struct block_list *bl, struct status_chang
if(sc->data[SC_MINOR_BBQ]) if(sc->data[SC_MINOR_BBQ])
vit += sc->data[SC_MINOR_BBQ]->val1; vit += sc->data[SC_MINOR_BBQ]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
vit += sc->data[SC_INSPIRATION]->val3; vit += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
vit -= sc->data[SC_STOMACHACHE]->val1; vit -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -4844,12 +4850,14 @@ static unsigned short status_calc_int(struct block_list *bl, struct status_chang
int_ -= ((sc->data[SC_MARIONETTE]->val4)>>16)&0xFF; int_ -= ((sc->data[SC_MARIONETTE]->val4)>>16)&0xFF;
if(sc->data[SC_MARIONETTE2]) if(sc->data[SC_MARIONETTE2])
int_ += ((sc->data[SC_MARIONETTE2]->val4)>>16)&0xFF; int_ += ((sc->data[SC_MARIONETTE2]->val4)>>16)&0xFF;
if(sc->data[SC_MELODYOFSINK])
int_ -= sc->data[SC_MELODYOFSINK]->val3;
if(sc->data[SC_MANDRAGORA]) if(sc->data[SC_MANDRAGORA])
int_ -= 5 + 5 * sc->data[SC_MANDRAGORA]->val1; int_ -= 4 * sc->data[SC_MANDRAGORA]->val1;
if(sc->data[SC_COCKTAIL_WARG_BLOOD]) if(sc->data[SC_COCKTAIL_WARG_BLOOD])
int_ += sc->data[SC_COCKTAIL_WARG_BLOOD]->val1; int_ += sc->data[SC_COCKTAIL_WARG_BLOOD]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
int_ += sc->data[SC_INSPIRATION]->val3; int_ += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
int_ -= sc->data[SC_STOMACHACHE]->val1; int_ -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -4918,7 +4926,7 @@ static unsigned short status_calc_dex(struct block_list *bl, struct status_chang
if(sc->data[SC_SIROMA_ICE_TEA]) if(sc->data[SC_SIROMA_ICE_TEA])
dex += sc->data[SC_SIROMA_ICE_TEA]->val1; dex += sc->data[SC_SIROMA_ICE_TEA]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
dex += sc->data[SC_INSPIRATION]->val3; dex += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
dex -= sc->data[SC_STOMACHACHE]->val1; dex -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -4926,6 +4934,8 @@ static unsigned short status_calc_dex(struct block_list *bl, struct status_chang
if(sc->data[SC__STRIPACCESSORY] && bl->type != BL_PC) if(sc->data[SC__STRIPACCESSORY] && bl->type != BL_PC)
dex -= dex * sc->data[SC__STRIPACCESSORY]->val2 / 100; dex -= dex * sc->data[SC__STRIPACCESSORY]->val2 / 100;
if(sc->data[SC_MARSHOFABYSS])
dex -= dex * sc->data[SC_MARSHOFABYSS]->val2 / 100;
if(sc->data[SC_FULL_THROTTLE]) if(sc->data[SC_FULL_THROTTLE])
dex += dex * 20 / 100; dex += dex * 20 / 100;
@ -4971,7 +4981,7 @@ static unsigned short status_calc_luk(struct block_list *bl, struct status_chang
if(sc->data[SC_PUTTI_TAILS_NOODLES]) if(sc->data[SC_PUTTI_TAILS_NOODLES])
luk += sc->data[SC_PUTTI_TAILS_NOODLES]->val1; luk += sc->data[SC_PUTTI_TAILS_NOODLES]->val1;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
luk += sc->data[SC_INSPIRATION]->val3; luk += sc->data[SC_INSPIRATION]->val2;
if(sc->data[SC_STOMACHACHE]) if(sc->data[SC_STOMACHACHE])
luk -= sc->data[SC_STOMACHACHE]->val1; luk -= sc->data[SC_STOMACHACHE]->val1;
if(sc->data[SC_KYOUGAKU]) if(sc->data[SC_KYOUGAKU])
@ -5047,14 +5057,12 @@ static unsigned short status_calc_batk(struct block_list *bl, struct status_chan
batk += batk * sc->data[SC_FLEET]->val3/100; batk += batk * sc->data[SC_FLEET]->val3/100;
if(sc->data[SC__ENERVATION]) if(sc->data[SC__ENERVATION])
batk -= batk * sc->data[SC__ENERVATION]->val2 / 100; batk -= batk * sc->data[SC__ENERVATION]->val2 / 100;
if(sc->data[SC__BLOODYLUST])
batk += batk * 32 / 100;
if(sc->data[SC_RUSHWINDMILL]) if(sc->data[SC_RUSHWINDMILL])
batk += batk * sc->data[SC_RUSHWINDMILL]->val2/100; batk += batk * sc->data[SC_RUSHWINDMILL]->val3/100;
if(sc->data[SC_SATURDAYNIGHTFEVER]) if(sc->data[SC_SATURDAYNIGHTFEVER])
batk += 100 * sc->data[SC_SATURDAYNIGHTFEVER]->val1; batk += 100 * sc->data[SC_SATURDAYNIGHTFEVER]->val1;
if(sc->data[SC_MELODYOFSINK])
batk -= batk * sc->data[SC_MELODYOFSINK]->val3/100;
if(sc->data[SC_BEYONDOFWARCRY])
batk += batk * sc->data[SC_BEYONDOFWARCRY]->val3/100;
if( sc->data[SC_ZANGETSU] ) if( sc->data[SC_ZANGETSU] )
batk += batk * sc->data[SC_ZANGETSU]->val2 / 100; batk += batk * sc->data[SC_ZANGETSU]->val2 / 100;
if(sc->data[SC_EQC]) if(sc->data[SC_EQC])
@ -5092,9 +5100,15 @@ static unsigned short status_calc_watk(struct block_list *bl, struct status_chan
if(sc->data[SC_SHIELDSPELL_DEF] && sc->data[SC_SHIELDSPELL_DEF]->val1 == 3) if(sc->data[SC_SHIELDSPELL_DEF] && sc->data[SC_SHIELDSPELL_DEF]->val1 == 3)
watk += sc->data[SC_SHIELDSPELL_DEF]->val2; watk += sc->data[SC_SHIELDSPELL_DEF]->val2;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
watk += sc->data[SC_INSPIRATION]->val2; watk += (sc->data[SC_INSPIRATION]->val1 * 40) + (sc->data[SC_INSPIRATION]->val2 * 3);
if( sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 0 ) if( sc->data[SC_BANDING] && sc->data[SC_BANDING]->val2 > 0 )
watk += (10 + 10 * sc->data[SC_BANDING]->val1) * (sc->data[SC_BANDING]->val2); watk += (10 + 10 * sc->data[SC_BANDING]->val1) * (sc->data[SC_BANDING]->val2);
if( sc->data[SC_GT_CHANGE] )
watk += sc->data[SC_GT_CHANGE]->val2;
if( sc->data[SC_CAMOUFLAGE] )
watk += 30 * sc->data[SC_CAMOUFLAGE]->val2;
if(sc->data[SC__BLOODYLUST])
watk += watk * 32 / 100;
if( sc->data[SC_TROPIC_OPTION] ) if( sc->data[SC_TROPIC_OPTION] )
watk += sc->data[SC_TROPIC_OPTION]->val2; watk += sc->data[SC_TROPIC_OPTION]->val2;
if( sc->data[SC_HEATER_OPTION] ) if( sc->data[SC_HEATER_OPTION] )
@ -5217,11 +5231,7 @@ static unsigned short status_calc_matk(struct block_list *bl, struct status_chan
if (sc->data[SC_INCMATKRATE]) if (sc->data[SC_INCMATKRATE])
matk += matk * sc->data[SC_INCMATKRATE]->val1/100; matk += matk * sc->data[SC_INCMATKRATE]->val1/100;
if (sc->data[SC_MOONLITSERENADE]) if (sc->data[SC_MOONLITSERENADE])
matk += matk * sc->data[SC_MOONLITSERENADE]->val2/100; matk += matk * sc->data[SC_MOONLITSERENADE]->val3;
if (sc->data[SC_MELODYOFSINK])
matk += matk * sc->data[SC_MELODYOFSINK]->val3/100;
if (sc->data[SC_BEYONDOFWARCRY])
matk -= matk * sc->data[SC_BEYONDOFWARCRY]->val3/100;
if (sc->data[SC_ZANGETSU]) if (sc->data[SC_ZANGETSU])
matk += matk * sc->data[SC_ZANGETSU]->val2 / 100; matk += matk * sc->data[SC_ZANGETSU]->val2 / 100;
if (sc->data[SC_MTF_MATK]) if (sc->data[SC_MTF_MATK])
@ -5253,16 +5263,19 @@ static signed short status_calc_critical(struct block_list *bl, struct status_ch
if (sc->data[SC_CLOAKING]) if (sc->data[SC_CLOAKING])
critical += critical; critical += critical;
if (sc->data[SC_STRIKING]) if (sc->data[SC_STRIKING])
critical += sc->data[SC_STRIKING]->val1*10; critical += critical * sc->data[SC_STRIKING]->val1 / 100;
#ifdef RENEWAL #ifdef RENEWAL
if (sc->data[SC_SPEARQUICKEN]) if (sc->data[SC_SPEARQUICKEN])
critical += 3*sc->data[SC_SPEARQUICKEN]->val1*10; critical += 3*sc->data[SC_SPEARQUICKEN]->val1*10;
#endif #endif
if(sc->data[SC_CAMOUFLAGE])
critical += critical * ( 10 * sc->data[SC_CAMOUFLAGE]->val2 ) / 100;
if (sc->data[SC__INVISIBILITY]) if (sc->data[SC__INVISIBILITY])
critical += critical * sc->data[SC__INVISIBILITY]->val3 / 100; critical += critical * sc->data[SC__INVISIBILITY]->val3 / 100;
if (sc->data[SC__UNLUCKY]) if (sc->data[SC__UNLUCKY])
critical -= critical * sc->data[SC__UNLUCKY]->val2 / 100; critical -= critical * sc->data[SC__UNLUCKY]->val2 / 100;
if(sc->data[SC_BEYONDOFWARCRY])
critical -= sc->data[SC_BEYONDOFWARCRY]->val3;
return (short)cap_value(critical,10,SHRT_MAX); return (short)cap_value(critical,10,SHRT_MAX);
} }
@ -5290,7 +5303,7 @@ static signed short status_calc_hit(struct block_list *bl, struct status_change
if(sc->data[SC_CONCENTRATION]) if(sc->data[SC_CONCENTRATION])
hit += sc->data[SC_CONCENTRATION]->val3; hit += sc->data[SC_CONCENTRATION]->val3;
if(sc->data[SC_INSPIRATION]) if(sc->data[SC_INSPIRATION])
hit += 5 * sc->data[SC_INSPIRATION]->val1; hit += (5 * sc->data[SC_INSPIRATION]->val1) + (sc->data[SC_INSPIRATION]->val3 / 2);
if(sc->data[SC_ADJUSTMENT]) if(sc->data[SC_ADJUSTMENT])
hit -= 30; hit -= 30;
if(sc->data[SC_INCREASING]) if(sc->data[SC_INCREASING])
@ -5308,6 +5321,8 @@ static signed short status_calc_hit(struct block_list *bl, struct status_change
hit -= hit * 20 / 100; hit -= hit * 20 / 100;
if (sc->data[SC_ASH]) if (sc->data[SC_ASH])
hit -= (hit * sc->data[SC_ASH]->val2) / 100; hit -= (hit * sc->data[SC_ASH]->val2) / 100;
if (sc->data[SC_TEARGAS])
hit -= hit * 50 / 100;
if(sc->data[SC_ILLUSIONDOPING]) if(sc->data[SC_ILLUSIONDOPING])
hit -= hit * (5 + sc->data[SC_ILLUSIONDOPING]->val1) / 100; // Custom hit -= hit * (5 + sc->data[SC_ILLUSIONDOPING]->val1) / 100; // Custom
if(sc->data[SC_HEAT_BARREL]) if(sc->data[SC_HEAT_BARREL])
@ -5371,8 +5386,6 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change
flee += sc->data[SC_HALLUCINATIONWALK]->val2; flee += sc->data[SC_HALLUCINATIONWALK]->val2;
if( sc->data[SC_WATER_BARRIER] ) if( sc->data[SC_WATER_BARRIER] )
flee -= sc->data[SC_WATER_BARRIER]->val3; flee -= sc->data[SC_WATER_BARRIER]->val3;
if( sc->data[SC_MARSHOFABYSS] )
flee -= (9 * sc->data[SC_MARSHOFABYSS]->val3 / 10 + sc->data[SC_MARSHOFABYSS]->val2 / 10) * (bl->type == BL_MOB ? 2 : 1);
#ifdef RENEWAL #ifdef RENEWAL
if( sc->data[SC_SPEARQUICKEN] ) if( sc->data[SC_SPEARQUICKEN] )
flee += 2 * sc->data[SC_SPEARQUICKEN]->val1; flee += 2 * sc->data[SC_SPEARQUICKEN]->val1;
@ -5395,7 +5408,7 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change
if( sc->data[SC__LAZINESS] ) if( sc->data[SC__LAZINESS] )
flee -= flee * sc->data[SC__LAZINESS]->val3 / 100; flee -= flee * sc->data[SC__LAZINESS]->val3 / 100;
if( sc->data[SC_GLOOMYDAY] ) if( sc->data[SC_GLOOMYDAY] )
flee -= flee * sc->data[SC_GLOOMYDAY]->val2 / 100; flee -= sc->data[SC_GLOOMYDAY]->val2;
if( sc->data[SC_SATURDAYNIGHTFEVER] ) if( sc->data[SC_SATURDAYNIGHTFEVER] )
flee -= flee * (40 + 10 * sc->data[SC_SATURDAYNIGHTFEVER]->val1) / 100; flee -= flee * (40 + 10 * sc->data[SC_SATURDAYNIGHTFEVER]->val1) / 100;
if( sc->data[SC_WIND_STEP_OPTION] ) if( sc->data[SC_WIND_STEP_OPTION] )
@ -5406,6 +5419,10 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change
flee -= flee * sc->data[SC_ASH]->val4 / 100; flee -= flee * sc->data[SC_ASH]->val4 / 100;
if (sc->data[SC_GOLDENE_FERSE]) if (sc->data[SC_GOLDENE_FERSE])
flee += flee * sc->data[SC_GOLDENE_FERSE]->val2 / 100; flee += flee * sc->data[SC_GOLDENE_FERSE]->val2 / 100;
if (sc->data[SC_SMOKEPOWDER])
flee += flee * 20 / 100;
if (sc->data[SC_TEARGAS])
flee -= flee * 50 / 100;
return (short)cap_value(flee,1,SHRT_MAX); return (short)cap_value(flee,1,SHRT_MAX);
} }
@ -5495,14 +5512,16 @@ static defType status_calc_def(struct block_list *bl, struct status_change *sc,
def -= def * (sc->data[SC_FLING]->val2)/100; def -= def * (sc->data[SC_FLING]->val2)/100;
if( sc->data[SC_FREEZING] ) if( sc->data[SC_FREEZING] )
def -= def * 10 / 100; def -= def * 10 / 100;
if( sc->data[SC_MARSHOFABYSS] ) if(sc->data[SC_CAMOUFLAGE])
def -= def * ( 6 + 6 * sc->data[SC_MARSHOFABYSS]->val3/10 + (bl->type == BL_MOB ? 5 : 3) * sc->data[SC_MARSHOFABYSS]->val2/36 ) / 100; def -= def * ( 5 * sc->data[SC_CAMOUFLAGE]->val2 ) / 100;
if( sc->data[SC_ANALYZE] ) if( sc->data[SC_ANALYZE] )
def -= def * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100; def -= def * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100;
if( sc->data[SC_FORCEOFVANGUARD] ) if( sc->data[SC_FORCEOFVANGUARD] )
def += def * 2 * sc->data[SC_FORCEOFVANGUARD]->val1 / 100; def += def * 2 * sc->data[SC_FORCEOFVANGUARD]->val1 / 100;
if( sc->data[SC_NEUTRALBARRIER] ) if( sc->data[SC_NEUTRALBARRIER] )
def += def * (10 + sc->data[SC_NEUTRALBARRIER]->val1 * 5) / 100; def += def * (10 + sc->data[SC_NEUTRALBARRIER]->val1 * 5) / 100;
if( sc->data[SC__BLOODYLUST] )
def -= def * 55 / 100;
if(sc->data[SC_SATURDAYNIGHTFEVER]) if(sc->data[SC_SATURDAYNIGHTFEVER])
def -= def * (10 + 10 * sc->data[SC_SATURDAYNIGHTFEVER]->val1) / 100; def -= def * (10 + 10 * sc->data[SC_SATURDAYNIGHTFEVER]->val1) / 100;
if(sc->data[SC_EARTHDRIVE]) if(sc->data[SC_EARTHDRIVE])
@ -5512,7 +5531,7 @@ static defType status_calc_def(struct block_list *bl, struct status_change *sc,
if( sc->data[SC_POWER_OF_GAIA] ) if( sc->data[SC_POWER_OF_GAIA] )
def += def * sc->data[SC_POWER_OF_GAIA]->val2 / 100; def += def * sc->data[SC_POWER_OF_GAIA]->val2 / 100;
if( sc->data[SC_PRESTIGE] ) if( sc->data[SC_PRESTIGE] )
def += def * sc->data[SC_PRESTIGE]->val1 / 100; def += sc->data[SC_PRESTIGE]->val1;
if(sc->data[SC_ASH]) if(sc->data[SC_ASH])
def -= def * sc->data[SC_ASH]->val3/100; def -= def * sc->data[SC_ASH]->val3/100;
if( sc->data[SC_OVERED_BOOST] ) if( sc->data[SC_OVERED_BOOST] )
@ -5570,11 +5589,11 @@ static signed short status_calc_def2(struct block_list *bl, struct status_change
if(sc->data[SC_FLING]) if(sc->data[SC_FLING])
def2 -= def2 * (sc->data[SC_FLING]->val3)/100; def2 -= def2 * (sc->data[SC_FLING]->val3)/100;
if( sc->data[SC_FREEZING] ) if( sc->data[SC_FREEZING] )
def2 -= def2 * 3 / 10; def2 -= def2 * 10 / 100;
if(sc->data[SC_ANALYZE]) if(sc->data[SC_ANALYZE])
def2 -= def2 * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100; def2 -= def2 * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100;
if( sc->data[SC_ECHOSONG] ) if( sc->data[SC_ECHOSONG] )
def2 += def2 * sc->data[SC_ECHOSONG]->val2/100; def2 += def2 * sc->data[SC_ECHOSONG]->val3 / 100;
if(sc->data[SC_ASH]) if(sc->data[SC_ASH])
def2 -= def2 * sc->data[SC_ASH]->val3/100; def2 -= def2 * sc->data[SC_ASH]->val3/100;
if (sc->data[SC_PARALYSIS]) if (sc->data[SC_PARALYSIS])
@ -5631,14 +5650,12 @@ static defType status_calc_mdef(struct block_list *bl, struct status_change *sc,
mdef += 25*mdef/100; mdef += 25*mdef/100;
if( sc->data[SC_NEUTRALBARRIER] ) if( sc->data[SC_NEUTRALBARRIER] )
mdef += mdef * (10 + sc->data[SC_NEUTRALBARRIER]->val1 * 5) / 100; mdef += mdef * (10 + sc->data[SC_NEUTRALBARRIER]->val1 * 5) / 100;
if( sc->data[SC_MARSHOFABYSS] )
mdef -= mdef * ( 6 + 6 * sc->data[SC_MARSHOFABYSS]->val3/10 + (bl->type == BL_MOB ? 5 : 3) * sc->data[SC_MARSHOFABYSS]->val2/36 ) / 100;
if(sc->data[SC_ANALYZE]) if(sc->data[SC_ANALYZE])
mdef -= mdef * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100; mdef -= mdef * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100;
if(sc->data[SC_SYMPHONYOFLOVER]) if(sc->data[SC_SYMPHONYOFLOVER])
mdef += mdef * sc->data[SC_SYMPHONYOFLOVER]->val2 / 100; mdef += mdef * sc->data[SC_SYMPHONYOFLOVER]->val3 / 100;
if(sc->data[SC_GT_CHANGE] && sc->data[SC_GT_CHANGE]->val4) if(sc->data[SC_GT_CHANGE] && sc->data[SC_GT_CHANGE]->val4)
mdef -= mdef * sc->data[SC_GT_CHANGE]->val4 / 100; mdef -= sc->data[SC_GT_CHANGE]->val4;
if (sc->data[SC_ODINS_POWER]) if (sc->data[SC_ODINS_POWER])
mdef -= 20; mdef -= 20;
@ -5698,7 +5715,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
if( sd && sd->ud.skilltimer != INVALID_TIMER && (pc_checkskill(sd,SA_FREECAST) > 0 || sd->ud.skill_id == LG_EXEEDBREAK) ) { if( sd && sd->ud.skilltimer != INVALID_TIMER && (pc_checkskill(sd,SA_FREECAST) > 0 || sd->ud.skill_id == LG_EXEEDBREAK) ) {
if( sd->ud.skill_id == LG_EXEEDBREAK ) if( sd->ud.skill_id == LG_EXEEDBREAK )
speed_rate = 100 + 60 - (sd->ud.skill_lv * 10); speed_rate = 160 - 10 * sd->ud.skill_lv;
else else
speed_rate = 175 - 5 * pc_checkskill(sd,SA_FREECAST); speed_rate = 175 - 5 * pc_checkskill(sd,SA_FREECAST);
} else { } else {
@ -5713,7 +5730,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
else if( pc_isridingwug(sd) ) else if( pc_isridingwug(sd) )
val = 15 + 5 * pc_checkskill(sd, RA_WUGRIDER); val = 15 + 5 * pc_checkskill(sd, RA_WUGRIDER);
else if( pc_ismadogear(sd) ) { else if( pc_ismadogear(sd) ) {
val = (- 10 * (5 - pc_checkskill(sd,NC_MADOLICENCE))); val = -(50 - 10 * pc_checkskill(sd,NC_MADOLICENCE));
if( sc->data[SC_ACCELERATION] ) if( sc->data[SC_ACCELERATION] )
val += 25; val += 25;
} }
@ -5761,13 +5778,11 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
if( sc->data[SC_SWOO] ) if( sc->data[SC_SWOO] )
val = max( val, 300 ); val = max( val, 300 );
if( sc->data[SC_FREEZING] ) if( sc->data[SC_FREEZING] )
val = max( val, 70 ); val = max( val, 50 );
if( sc->data[SC_MARSHOFABYSS] ) if( sc->data[SC_MARSHOFABYSS] )
val = max( val, 40 + 10 * sc->data[SC_MARSHOFABYSS]->val1 ); val = max( val, sc->data[SC_MARSHOFABYSS]->val3 );
if( sc->data[SC_CAMOUFLAGE] ) if( sc->data[SC_CAMOUFLAGE] )
val = max( val, sc->data[SC_CAMOUFLAGE]->val1 < 3 ? 0 : 25 * (5 - sc->data[SC_CAMOUFLAGE]->val1) ); val = max( val, sc->data[SC_CAMOUFLAGE]->val1 < 3 ? 0 : 25 * sc->data[SC_CAMOUFLAGE]->val1 );
if( sc->data[SC__GROOMY] )
val = max( val, sc->data[SC__GROOMY]->val2);
if( sc->data[SC_STEALTHFIELD_MASTER] ) if( sc->data[SC_STEALTHFIELD_MASTER] )
val = max( val, 30 ); val = max( val, 30 );
if( sc->data[SC_BANDING_DEFENCE] ) if( sc->data[SC_BANDING_DEFENCE] )
@ -5817,7 +5832,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
if( sc->data[SC_GN_CARTBOOST] ) if( sc->data[SC_GN_CARTBOOST] )
val = max( val, sc->data[SC_GN_CARTBOOST]->val2 ); val = max( val, sc->data[SC_GN_CARTBOOST]->val2 );
if( sc->data[SC_SWINGDANCE] ) if( sc->data[SC_SWINGDANCE] )
val = max( val, sc->data[SC_SWINGDANCE]->val2 ); val = max( val, sc->data[SC_SWINGDANCE]->val3 );
if( sc->data[SC_WIND_STEP_OPTION] ) if( sc->data[SC_WIND_STEP_OPTION] )
val = max( val, sc->data[SC_WIND_STEP_OPTION]->val2 ); val = max( val, sc->data[SC_WIND_STEP_OPTION]->val2 );
if( sc->data[SC_FULL_THROTTLE] ) if( sc->data[SC_FULL_THROTTLE] )
@ -5957,8 +5972,6 @@ static short status_calc_aspd(struct block_list *bl, struct status_change *sc, s
skills2 -= 2 + 5 * sc->data[SC__BODYPAINT]->val1; skills2 -= 2 + 5 * sc->data[SC__BODYPAINT]->val1;
if( sc->data[SC__INVISIBILITY] ) if( sc->data[SC__INVISIBILITY] )
skills2 -= sc->data[SC__INVISIBILITY]->val2 ; skills2 -= sc->data[SC__INVISIBILITY]->val2 ;
if( sc->data[SC__GROOMY] )
skills2 -= sc->data[SC__GROOMY]->val2;
if( sc->data[SC_SWINGDANCE] ) if( sc->data[SC_SWINGDANCE] )
skills2 += sc->data[SC_SWINGDANCE]->val2; skills2 += sc->data[SC_SWINGDANCE]->val2;
if( sc->data[SC_DANCEWITHWUG] ) if( sc->data[SC_DANCEWITHWUG] )
@ -7051,7 +7064,7 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
tick_def2 = status->agi*100; tick_def2 = status->agi*100;
break; break;
case SC_CRYSTALIZE: case SC_CRYSTALIZE:
tick_def2 = status->vit*100 + status_get_lv(bl)*20; tick_def2 = status->vit*100;
break; break;
case SC_MANDRAGORA: case SC_MANDRAGORA:
sc_def = (status->vit + status->luk)*20; sc_def = (status->vit + status->luk)*20;
@ -7063,7 +7076,7 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
tick_def2 = (status->vit + status->luk)*50; tick_def2 = (status->vit + status->luk)*50;
break; break;
case SC_VOICEOFSIREN: case SC_VOICEOFSIREN:
tick_def2 = (status_get_lv(bl) * 100) + ((bl->type == BL_PC)?((TBL_PC*)bl)->status.job_level : 0); tick_def2 = (status_get_lv(bl) * 100) + ((bl->type == BL_PC)?((TBL_PC*)bl)->status.job_level * 20 : 0);
break; break;
default: default:
// Effect that cannot be reduced? Likely a buff. // Effect that cannot be reduced? Likely a buff.
@ -8920,6 +8933,13 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
val2 = 50 * val1; // Evasion rate of physical attacks. Flee val2 = 50 * val1; // Evasion rate of physical attacks. Flee
val3 = 10 * val1; // Evasion rate of magical attacks. val3 = 10 * val1; // Evasion rate of magical attacks.
break; break;
case SC_MARSHOFABYSS:
if( bl->type == BL_PC )
val2 = 3 * val1; // AGI and DEX Reduction
else // BL_MOB
val2 = 6 * val1; // AGI and DEX Reduction
val3 = 10 * val1; // Movement Speed Reduction
break;
case SC_READING_SB: case SC_READING_SB:
// val2 = sp reduction per second // val2 = sp reduction per second
tick_time = 5000; // [GodLesZ] tick time tick_time = 5000; // [GodLesZ] tick time
@ -8984,7 +9004,7 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
if( sd ) pc_delspiritball(sd,sd->spiritball,0); if( sd ) pc_delspiritball(sd,sd->spiritball,0);
break; break;
case SC__GROOMY: case SC__GROOMY:
val2 = 20 + 10 * val1; // ASPD. Need to confirm if Movement Speed reduction is the same. [Jobbie] val2 = 20 + 10 * val1; // ASPD
val3 = 20 * val1; // HIT val3 = 20 * val1; // HIT
if( sd ) { // Removes Animals if( sd ) { // Removes Animals
if( pc_isriding(sd) ) pc_setriding(sd, 0); if( pc_isriding(sd) ) pc_setriding(sd, 0);
@ -8994,7 +9014,7 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
if( pc_isfalcon(sd) ) pc_setoption(sd, sd->sc.option&~OPTION_FALCON); if( pc_isfalcon(sd) ) pc_setoption(sd, sd->sc.option&~OPTION_FALCON);
if( sd->status.pet_id > 0 ) pet_menu(sd, 3); if( sd->status.pet_id > 0 ) pet_menu(sd, 3);
if( merc_is_hom_active(sd->hd) ) merc_hom_vaporize(sd,HOM_ST_REST); if( merc_is_hom_active(sd->hd) ) merc_hom_vaporize(sd,HOM_ST_REST);
if( sd->md ) merc_delete(sd->md,3); //if( sd->md ) merc_delete(sd->md,3); // Are Mercenaries removed? [aleos]
} }
break; break;
case SC__LAZINESS: case SC__LAZINESS:
@ -9046,17 +9066,17 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
tick_time = 100; // [GodLesZ] tick time tick_time = 100; // [GodLesZ] tick time
break; break;
case SC_SWINGDANCE: case SC_SWINGDANCE:
val2 = 4 * val1; // Walk speed and aspd reduction. val3 = (5 * val1) + val2; // Walk speed and aspd reduction.
break; break;
case SC_SYMPHONYOFLOVER: case SC_SYMPHONYOFLOVER:
case SC_RUSHWINDMILL: val3 = (12 * val1) + val2 + ((sd?sd->status.job_level:50) / 4); // MDEF Increase in %
case SC_ECHOSONG:
val2 = 6 * val1;
val2 += val3; // Adding 1% * Lesson Bonus
val2 += (int)(val4*2/10); // Adding 0.2% per JobLevel
break; break;
case SC_MOONLITSERENADE: case SC_MOONLITSERENADE: // MATK Increase
val2 = 10 * val1; case SC_RUSHWINDMILL: // ATK Increase
val3 = (6 * val1) + val2 + ((sd?sd->status.job_level:50) / 5);
break;
case SC_ECHOSONG:
val3 = (6 * val1) + val2 + ((sd?sd->status.job_level:50) / 4); // DEF Increase in %
break; break;
case SC_HARMONIZE: case SC_HARMONIZE:
val2 = 5 + 5 * val1; val2 = 5 + 5 * val1;
@ -9070,15 +9090,15 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
tick_time = 2000; // [GodLesZ] tick time tick_time = 2000; // [GodLesZ] tick time
break; break;
case SC_SIRCLEOFNATURE: case SC_SIRCLEOFNATURE:
val2 = 1 + val1; // SP consume val2 = 4 + val1; // SP consume
val3 = 40 * val1; // HP recovery val3 = 40 * val1; // HP recovery
val4 = tick / 1000; val4 = tick / 1000;
tick_time = 1000; // [GodLesZ] tick time tick_time = 1000; // [GodLesZ] tick time
break; break;
case SC_SONGOFMANA: case SC_SONGOFMANA:
val3 = 10 + (2 * val2); val3 = 10 + (5 * val2);
val4 = tick/3000; val4 = tick/5000;
tick_time = 3000; // [GodLesZ] tick time tick_time = 5000; // [GodLesZ] tick time
break; break;
case SC_SATURDAYNIGHTFEVER: case SC_SATURDAYNIGHTFEVER:
if (!val4) val4 = skill_get_time2(status_sc2skill(type),val1); if (!val4) val4 = skill_get_time2(status_sc2skill(type),val1);
@ -9108,23 +9128,27 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
} }
break; break;
case SC_DANCEWITHWUG: case SC_DANCEWITHWUG:
val3 = (5 * val1) + (1 * val2); // Still need official value. val3 = 5 + 5 * val2; // ASPD Increase
val4 = 20 + 10 * val2; // Fixed Cast Time Reduction
break; break;
case SC_LERADSDEW: case SC_LERADSDEW:
val3 = (5 * val1) + (1 * val2); val3 = 200 * val1 + 300 * val2; // MaxHP Increase
break; break;
case SC_MELODYOFSINK: case SC_MELODYOFSINK:
val3 = (5 * val1) + (1 * val2); val3 = val1 * 2 + val2; // INT Reduction.
val4 = tick/1000;
tick_time = 1000;
break; break;
case SC_BEYONDOFWARCRY: case SC_BEYONDOFWARCRY:
val3 = (5 * val1) + (1 * val2); val3 = val1 * (2 + val2); // STR and CRIT Reduction
val4 = 4 * val1 + 4 * val2; // MaxHP Reduction
break; break;
case SC_UNLIMITEDHUMMINGVOICE: case SC_UNLIMITEDHUMMINGVOICE:
{ {
struct unit_data *ud = unit_bl2ud(bl); struct unit_data *ud = unit_bl2ud(bl);
if( ud == NULL ) return 0; if( ud == NULL ) return 0;
ud->state.skillcastcancel = 0; ud->state.skillcastcancel = 0;
val3 = 15 - (2 * val2); val3 = 15 - (3 * val2);
} }
break; break;
case SC_REFLECTDAMAGE: case SC_REFLECTDAMAGE:
@ -9137,22 +9161,22 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
val2 = 8 + (12 * val1); // Chance val2 = 8 + (12 * val1); // Chance
val3 = 5 + (2 * val1); // Max rage counters val3 = 5 + (2 * val1); // Max rage counters
tick = -1; // Endless duration in the client tick = -1; // Endless duration in the client
tick_time = 6000; // [GodLesZ] tick time tick_time = 10000; // [GodLesZ] tick time
break; break;
case SC_EXEEDBREAK: case SC_EXEEDBREAK:
val1 *= 150; // 150 * skill_lv val1 *= 100; // 100 * skill_lv
if( sd && sd->inventory_data[sd->equip_index[EQI_HAND_R]] ) { // Chars. if( sd && sd->inventory_data[sd->equip_index[EQI_HAND_R]] ) { // Chars.
val1 += (sd->inventory_data[sd->equip_index[EQI_HAND_R]]->weight/10 * sd->inventory_data[sd->equip_index[EQI_HAND_R]]->wlv * status_get_lv(bl) / 100); val1 += (sd->inventory_data[sd->equip_index[EQI_HAND_R]]->weight/10 * sd->inventory_data[sd->equip_index[EQI_HAND_R]]->wlv * status_get_lv(bl) / 100);
val1 += 15 * (sd ? sd->status.job_level:50) + 100; val1 += 10 * sd->status.job_level;
} }
else // Mobs else // Mobs
val1 += (400 * status_get_lv(bl) / 100) + (15 * (status_get_lv(bl) / 2)); // About 1138% at mob_lvl 99. Is an aproximation to a standard weapon. [pakpil] val1 += 500;
break; break;
case SC_PRESTIGE: // Bassed on suggested formula in iRO Wiki and some test, still need more test. [pakpil] case SC_PRESTIGE:
val2 = ((status->int_ + status->luk) / 6) + 5; // Chance to evade magic damage. val2 = (status->int_ + status->luk) * (val1 / 20) * (status_get_lv(bl) / 200) + val1; // Chance to evade magic damage.
val1 *= 15; // Defence added val1 *= 15; // Defence added
if( sd ) if( sd )
val1 += 10 * pc_checkskill(sd,CR_DEFENDER); val1 += (10 * pc_checkskill(sd,CR_DEFENDER)) * (status_get_lv(bl) / 100);
break; break;
case SC_BANDING: case SC_BANDING:
tick_time = 5000; // [GodLesZ] tick time tick_time = 5000; // [GodLesZ] tick time
@ -9163,11 +9187,11 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
break; break;
case SC_INSPIRATION: case SC_INSPIRATION:
if( sd ) { if( sd ) {
val2 = (40 * val1) + (3 * sd->status.job_level); // ATK bonus val2 = (status_get_lv(bl) / 10) + ((sd?sd->status.job_level:50) / 5); // All stat bonus
val3 = (sd->status.job_level / 10) * 2 + 12; // All stat bonus val3 = (sd?sd->status.job_level:50);
} }
val4 = tick / 1000; val4 = tick / 5000;
tick_time = 1000; // [GodLesZ] tick time tick_time = 5000; // [GodLesZ] tick time
status_change_clear_buffs(bl,3); // Remove buffs/debuffs status_change_clear_buffs(bl,3); // Remove buffs/debuffs
break; break;
case SC_CRESCENTELBOW: case SC_CRESCENTELBOW:
@ -9184,15 +9208,18 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
case SC_GT_CHANGE: case SC_GT_CHANGE:
{ // Take note there is no def increase as skill desc says. [malufett] { // Take note there is no def increase as skill desc says. [malufett]
struct block_list * src; struct block_list * src;
val2 = (status->str / 2 + status->dex / 4) * val1 / 5; // Fixed amount of weapon attack increase.
val3 = status->agi * val1 / 60; // ASPD increase: [(Target AGI x Skill Level) / 60] % val3 = status->agi * val1 / 60; // ASPD increase: [(Target AGI x Skill Level) / 60] %
if( (src = map_id2bl(val2)) ) if( (src = map_id2bl(val2)) )
val4 = ( 200/status_get_int(src) ) * val1; // MDEF decrease: MDEF [(200 / Caster INT) x Skill Level] val4 = ( 200/status_get_int(src) ) * val1; // MDEF decrease: MDEF [(200 / Caster INT) x Skill Level]
if( val4 < 0 )
val4 = 0;
} }
break; break;
case SC_GT_REVITALIZE: case SC_GT_REVITALIZE:
{ // Take note there is no vit,aspd,speed increase as skill desc says. [malufett] { // Take note there is no vit,aspd,speed increase as skill desc says. [malufett]
struct block_list * src; struct block_list * src;
val3 = val1 * 30 + 150; // Natural HP recovery increase: [(Skill Level x 30) + 50] % val3 = val1 * 30 + 50; // Natural HP recovery increase: [(Skill Level x 30) + 50] %
if( (src = map_id2bl(val2)) ) // The stat def is not shown in the status window and it is process differently if( (src = map_id2bl(val2)) ) // The stat def is not shown in the status window and it is process differently
val4 = ( status_get_vit(src)/4 ) * val1; // STAT DEF increase: [(Caster VIT / 4) x Skill Level] val4 = ( status_get_vit(src)/4 ) * val1; // STAT DEF increase: [(Caster VIT / 4) x Skill Level]
} }
@ -11349,8 +11376,8 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
break; break;
case SC_DEEPSLEEP: case SC_DEEPSLEEP:
if( --(sce->val4) >= 0 ) { // Recovers 1% HP/SP every 2 seconds. if( --(sce->val4) >= 0 ) { // Recovers 3% HP/SP every 2 seconds.
status_heal(bl, status->max_hp / 100, status->max_sp / 100, 2); status_heal(bl, status->max_hp * 3 / 100, status->max_sp * 3 / 100, 2);
sc_timer_next(2000 + tick, status_change_timer, bl->id, data); sc_timer_next(2000 + tick, status_change_timer, bl->id, data);
return 0; return 0;
} }
@ -11358,9 +11385,9 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
case SC_SIRCLEOFNATURE: case SC_SIRCLEOFNATURE:
if( --(sce->val4) >= 0 ) { if( --(sce->val4) >= 0 ) {
if( !status_charge(bl,0,sce->val2) ) if( !status_charge(bl,0,sce->val3) )
break; break;
status_heal(bl, sce->val3, 0, 1); status_heal(bl, sce->val2, 0, 1);
sc_timer_next(1000 + tick, status_change_timer, bl->id, data); sc_timer_next(1000 + tick, status_change_timer, bl->id, data);
return 0; return 0;
} }
@ -11369,7 +11396,7 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
case SC_SONGOFMANA: case SC_SONGOFMANA:
if( --(sce->val4) >= 0 ) { if( --(sce->val4) >= 0 ) {
status_heal(bl,0,sce->val3,3); status_heal(bl,0,sce->val3,3);
sc_timer_next(3000 + tick, status_change_timer, bl->id, data); sc_timer_next(5000 + tick, status_change_timer, bl->id, data);
return 0; return 0;
} }
break; break;
@ -11378,15 +11405,21 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
case SC_SATURDAYNIGHTFEVER: case SC_SATURDAYNIGHTFEVER:
// 1% HP/SP drain every val4 seconds [Jobbie] // 1% HP/SP drain every val4 seconds [Jobbie]
if( --(sce->val3) >= 0 ) { if( --(sce->val3) >= 0 ) {
int hp = status->hp / 100; if( !status_charge(bl, status->hp / 100, status->sp / 100) )
int sp = status->sp / 100;
if( !status_charge(bl, hp, sp) )
break; break;
sc_timer_next(sce->val4+tick, status_change_timer, bl->id, data); sc_timer_next(sce->val4+tick, status_change_timer, bl->id, data);
return 0; return 0;
} }
break; break;
case SC_MELODYOFSINK:
if( --(sce->val4) >= 0 ) {
status_charge(bl, 0, status->max_sp * ( 2 * sce->val1 + 2 * sce->val2 ) / 100);
sc_timer_next(1000+tick, status_change_timer, bl->id, data);
return 0;
}
break;
case SC_CRYSTALIZE: case SC_CRYSTALIZE:
if( --(sce->val4) >= 0 ) { // Drains 2% of HP and 1% of SP every seconds. if( --(sce->val4) >= 0 ) { // Drains 2% of HP and 1% of SP every seconds.
if( bl->type != BL_MOB) // Doesn't work on mobs if( bl->type != BL_MOB) // Doesn't work on mobs
@ -11397,7 +11430,7 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
break; break;
case SC_FORCEOFVANGUARD: case SC_FORCEOFVANGUARD:
if( !status_charge(bl,0,24 - (4 * sce->val1)) ) if( !status_charge(bl,0,24 - 4 * sce->val1) )
break; break;
sc_timer_next(10000 + tick, status_change_timer, bl->id, data); sc_timer_next(10000 + tick, status_change_timer, bl->id, data);
return 0; return 0;
@ -11457,12 +11490,12 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data)
case SC_INSPIRATION: case SC_INSPIRATION:
if(--(sce->val4) >= 0) { if(--(sce->val4) >= 0) {
int hp = status->max_hp * (7-sce->val1) / 100; int hp = status->max_hp * (35 - 5 * sce->val1) / 1000;
int sp = status->max_sp * (9-sce->val1) / 100; int sp = status->max_sp * (45 - 5 * sce->val1) / 1000;
if( !status_charge(bl,hp,sp) ) break; if( !status_charge(bl,hp,sp) ) break;
sc_timer_next(1000+tick,status_change_timer,bl->id, data); sc_timer_next(5000+tick,status_change_timer,bl->id, data);
return 0; return 0;
} }
break; break;