Lilith 2014-01-03 23:56:13 -08:00
parent 357f1fd16c
commit a053ccea3f
14 changed files with 96 additions and 69 deletions

View File

@ -559,8 +559,8 @@ bSPDrainValue 1080
bWeaponAtk 1081
bWeaponAtkRate 1082
bDelayrate 1083
bHPDrainRateRace 1084
bSPDrainRateRace 1085
bHpDrainValueRace 1084
bSpDrainValueRace 1085
bIgnoreMdefRaceRate 1086
bIgnoreDefRaceRate 1087
bSkillHeal2 1088
@ -596,9 +596,9 @@ bHPLossRate 2023
bAddRace2 2024
bHPGainValue 2025
bSubSize 2026
bHPDrainValueRace 2027
bHPDrainValueClass 2027
bAddItemHealRate 2028
bSPDrainValueRace 2029
bSPDrainValueClass 2029
bExpAddRace 2030
bSPGainRace 2031
bSubRace2 2032
@ -640,9 +640,7 @@ bAddClass 2064
bSubClass 2065
bMagicAddClass 2066
bWeaponComaClass 2067
bHpDrainValueClass 2068
bSpDrainValueClass 2069
bIgnoreMdefClassRate 2070
bIgnoreMdefClassRate 2068
EQI_HEAD_TOP 1
EQI_ARMOR 2
@ -2655,14 +2653,13 @@ GUILD_AREA_WOS 20
GUILD_NOBG 21
DUEL 22
DUEL_WOS 23
CHAT_MAINCHAT 24
SELF 25
BG 26
BG_WOS 27
BG_SAMEMAP 28
BG_SAMEMAP_WOS 29
BG_AREA 30
BG_AREA_WOS 31
SELF 24
BG 25
BG_WOS 26
BG_SAMEMAP 27
BG_SAMEMAP_WOS 28
BG_AREA 29
BG_AREA_WOS 30
ARCH_MERC_GUILD 0
SPEAR_MERC_GUILD 1

View File

@ -748,7 +748,7 @@
1718,NOVUS_,Novus,Novus,43,5830,0,1411,1100,1,314,414,24,28,1,60,43,39,119,43,10,12,0,9,20,0x3885,100,252,816,480,0,0,0,0,0,0,0,508,2000,7053,1035,0,0,1036,589,0,0,0,0,0,0,0,0,0,0,4382,1
1719,DETALE,Detale,Detardeurus,90,960000,0,291850,123304,3,4560,5548,66,59,100,90,30,136,140,56,10,12,2,9,67,0x37B5,250,432,936,360,145925,617,5500,603,5000,732,2000,2649,1000,2648,1000,7444,5000,7451,3589,12080,1000,1417,100,5002,500,0,0,0,0,4386,1
1720,HYDRO,Hydro,Hydrolancer,89,308230,0,83450,2480,3,2554,3910,52,62,1,96,110,86,94,32,10,12,2,9,47,0x37B5,160,140,672,432,0,0,0,0,0,0,0,7123,4000,1035,4000,7443,3880,5126,500,5127,500,12085,300,5124,500,0,0,0,0,4384,1
1721,DRAGON_EGG,Dragon Egg,Dragon Egg,43,18322,0,6740,0,0,1,2,78,60,1,1,56,67,1,63,10,12,1,9,40,0x0,1000,24,0,0,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1
1721,DRAGON_EGG,Dragon Egg,Dragon Egg,43,18322,0,6740,0,0,1,2,78,60,1,1,56,67,1,63,10,12,1,9,40,0x0,1000,24,1,1,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1
1722,EVENT_JAKK,Jakk,Jakk,99,10310,0,103,100,1,115,182,5,11,1,28,18,13,35,45,10,12,1,0,43,0x81,240,1180,480,648,0,0,0,0,0,0,0,7225,1000,1062,1000,535,1000,0,0,0,0,0,0,0,0,0,0,0,0,5134,10000
1723,A_SHECIL,Shecil Damon,Cecil Damon,82,30000,0,0,0,14,600,900,25,15,1,145,27,32,134,80,10,12,1,7,64,0x3695,180,1008,384,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1724,A_POTON_CANON,Photon Cannon,Photon Cannon,66,8000,0,0,0,9,1000,1300,10,30,1,40,25,20,80,80,10,12,1,0,40,0x84,300,1536,960,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
@ -1067,7 +1067,7 @@
//2012,E_ZOMBIE,Zombie,Zombie,15,99999,0,50,33,1,335,395,100,10,1,8,7,0,60,0,10,12,1,1,29,0x120,150,2612,912,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
// Another World (13.2)
2013,DRACO,Draco,Draco,82,18300,0,6100,4100,1,410,710,10,5,1,23,30,34,62,2,10,12,1,9,22,0x1089,250,576,960,504,0,0,0,0,0,0,0,6073,3000,7123,100,1035,100,1037,1000,1036,1000,518,500,0,0,0,0,0,0,4444,1
2014,DRACO_EGG,Draco Egg,Draco Egg,67,9822,0,1200,1600,0,1,2,56,40,1,1,56,34,1,63,10,12,1,9,82,0x0,1000,24,0,0,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2014,DRACO_EGG,Draco Egg,Draco Egg,67,9822,0,1200,1600,0,1,2,56,40,1,1,56,34,1,63,10,12,1,9,82,0x0,1000,24,1,1,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2015,PINGUICULA_D,Dark Pinguicula,Dark Pinguicula,83,8780,0,7740,5200,1,600,1450,15,5,1,23,22,12,89,2,10,12,1,3,45,0x308D,290,1426,600,360,0,0,0,0,0,0,0,7100,5000,7198,2000,7188,3000,972,10,6086,1000,0,0,0,0,0,0,0,0,0,0
2016,AQUA_ELEMENTAL,Aqua Elemental,Aqua Elemental,83,33220,0,5430,15300,1,400,1600,8,12,1,23,19,87,77,2,10,12,2,0,81,0x3095,230,504,960,576,0,0,0,0,0,0,0,6075,1000,7326,5000,12353,100,0,0,0,0,0,0,0,0,0,0,0,0,4443,1
2017,RATA,Rata,Rata,107,216600,0,70012,34000,1,8000,15000,32,52,1,51,22,132,99,15,10,12,1,7,62,0x3295,150,792,540,420,0,0,0,0,0,0,0,12346,5000,1026,5000,6089,500,1548,100,0,0,0,0,0,0,0,0,0,0,0,0

View File

@ -774,7 +774,7 @@
1718,NOVUS_,Novus,Novus,84,5028,1,1080,1215,1,266,314,88,28,53,43,43,55,90,58,10,12,0,9,20,0x3885,100,252,816,480,0,0,0,0,0,0,0,508,2000,7053,1035,0,0,1036,589,0,0,0,0,0,0,0,0,0,0,4382,1
1719,DETALE,Detale,Detardeurus,135,6005000,1,4320000,3420000,3,4072,6734,364,166,165,153,171,136,185,72,10,12,2,9,67,0x37B5,250,432,936,360,2160000,617,5500,603,5000,732,2000,2649,1000,2648,1000,7444,5000,7451,3589,12080,1000,1417,100,5002,500,0,0,0,0,4386,1
1720,HYDRO,Hydro,Hydrolancer,121,41500,0,6285,4463,3,760,910,92,58,120,72,67,66,88,58,10,12,2,9,47,0x37B5,160,140,672,432,0,0,0,0,0,0,0,7123,4000,1035,4000,7443,3880,5126,500,5127,500,12085,300,5124,500,0,0,0,0,4384,1
1721,DRAGON_EGG,Dragon Egg,Dragon Egg,119,20990,1,2862,2147,0,503,653,172,85,84,59,85,40,118,65,10,12,1,9,40,0x0,1000,24,0,0,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1
1721,DRAGON_EGG,Dragon Egg,Dragon Egg,119,20990,1,2862,2147,0,503,653,172,85,84,59,85,40,118,65,10,12,1,9,40,0x0,1000,24,1,1,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1
1722,EVENT_JAKK,Jakk,Jakk,99,10310,0,93,90,1,115,182,8,11,1,28,18,13,35,45,10,12,1,0,43,0x81,240,1180,480,648,0,0,0,0,0,0,0,7225,1000,1062,1000,535,1000,0,0,0,0,0,0,0,0,0,0,0,0,5134,10000
1723,A_SHECIL,Shecil Damon,Cecil Damon,82,30000,0,0,0,14,600,900,40,15,1,145,27,32,134,80,10,12,1,7,64,0x3695,180,1008,384,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1724,A_POTON_CANON,Photon Cannon,Photon Cannon,66,8000,0,0,0,9,1000,1300,16,30,1,40,25,20,80,80,10,12,1,0,40,0x84,300,1536,960,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
@ -1112,7 +1112,7 @@
// Enter The Unknown (13.2)
2013,DRACO,Draco,Draco,114,20099,1,1995,1205,1,556,666,56,3,21,58,47,34,71,66,10,12,1,9,22,0x1089,250,576,960,504,0,0,0,0,0,0,0,6073,3000,7123,100,1035,100,1037,1000,1036,1000,518,500,2399,10,0,0,0,0,4444,1
2014,DRACO_EGG,Draco Egg,Draco Egg,101,100000,1,2000,1500,0,1,2,384,30,1,1,135,92,1,98,10,12,1,9,82,0x0,1000,24,0,0,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4471,1
2014,DRACO_EGG,Draco Egg,Draco Egg,101,100000,1,2000,1500,0,1,2,384,30,1,1,135,92,1,98,10,12,1,9,82,0x0,1000,24,1,1,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4471,1
2015,PINGUICULA_D,Dark Pinguicula,Dark Pinguicula,113,17002,1,2101,2419,1,251,640,59,35,89,55,55,95,66,12,10,12,1,3,45,0x308D,290,1426,600,360,0,0,0,0,0,0,0,7100,5000,7198,2000,7188,3000,972,10,6086,1000,7939,1500,2148,10,0,0,0,0,4468,1
2016,AQUA_ELEMENTAL,Aqua Elemental,Aqua Elemental,121,33209,1,4155,4155,1,616,1066,23,8,95,61,25,25,86,40,10,12,2,0,81,0x3095,230,504,960,576,0,0,0,0,0,0,0,6075,1000,7326,5000,12353,100,0,0,2787,10,0,0,0,0,0,0,0,0,4443,1
2017,RATA,Rata,Rata,131,58299,1,7787,6119,1,720,931,81,46,101,74,71,51,98,56,10,12,1,7,62,0x3295,150,792,540,420,0,0,0,0,0,0,0,12346,5000,1026,5000,6089,500,1548,100,6224,10,0,0,0,0,0,0,0,0,4459,1

View File

@ -365,8 +365,6 @@ bonus2 bWeaponAtk,x,n; Adds n ATK when weapon of type x is equipped.
bonus2 bWeaponAtkRate,x,n; Adds n% damage to normal attacks when weapon of type x is equipped.
x: see doc/item_db.txt -> view -> weapons for possible values
bonus bDelayrate,n; Increases skill delay by n%.
bonus3 bHPDrainRateRace,r,n,x; Adds a n/10% chance to receive x% of damage dealt as HP from a monster of race r with normal attack.
bonus3 bSPDrainRateRace,r,n,x; Adds a n/10% chance to receive x% of damage dealt as SP from a monster of race r with normal attack.
bonus3 bAddEffOnSkill,s,x,n; Adds a n/100% chance to cause status change x on enemy when using skill s (supports skill names)
bonus4 bAddEffOnSkill,s,x,n,t; Adds a n/100% chance to cause status change x when using skill s (supports skill names)
t: ATF_SELF = causes status change to oneself

View File

@ -814,7 +814,7 @@ REPLACE INTO `mob_db` VALUES (1717,'FERUS_','Ferus','Ferus',69,21182,0,6750,2230
REPLACE INTO `mob_db` VALUES (1718,'NOVUS_','Novus','Novus',43,5830,0,1411,1100,1,314,414,24,28,1,60,43,39,119,43,10,12,0,9,20,0x3885,100,252,816,480,0,0,0,0,0,0,0,508,2000,7053,1035,0,0,1036,589,0,0,0,0,0,0,0,0,0,0,4382,1);
REPLACE INTO `mob_db` VALUES (1719,'DETALE','Detale','Detardeurus',90,960000,0,291850,123304,3,4560,5548,66,59,100,90,30,136,140,56,10,12,2,9,67,0x37B5,250,432,936,360,145925,617,5500,603,5000,732,2000,2649,1000,2648,1000,7444,5000,7451,3589,12080,1000,1417,100,5002,500,0,0,0,0,4386,1);
REPLACE INTO `mob_db` VALUES (1720,'HYDRO','Hydro','Hydrolancer',89,308230,0,83450,2480,3,2554,3910,52,62,1,96,110,86,94,32,10,12,2,9,47,0x37B5,160,140,672,432,0,0,0,0,0,0,0,7123,4000,1035,4000,7443,3880,5126,500,5127,500,12085,300,5124,500,0,0,0,0,4384,1);
REPLACE INTO `mob_db` VALUES (1721,'DRAGON_EGG','Dragon Egg','Dragon Egg',43,18322,0,6740,0,0,1,2,78,60,1,1,56,67,1,63,10,12,1,9,40,0x0,1000,24,0,0,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1);
REPLACE INTO `mob_db` VALUES (1721,'DRAGON_EGG','Dragon Egg','Dragon Egg',43,18322,0,6740,0,0,1,2,78,60,1,1,56,67,1,63,10,12,1,9,40,0x0,1000,24,1,1,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1);
REPLACE INTO `mob_db` VALUES (1722,'EVENT_JAKK','Jakk','Jakk',99,10310,0,103,100,1,115,182,5,11,1,28,18,13,35,45,10,12,1,0,43,0x81,240,1180,480,648,0,0,0,0,0,0,0,7225,1000,1062,1000,535,1000,0,0,0,0,0,0,0,0,0,0,0,0,5134,10000);
REPLACE INTO `mob_db` VALUES (1723,'A_SHECIL','Shecil Damon','Cecil Damon',82,30000,0,0,0,14,600,900,25,15,1,145,27,32,134,80,10,12,1,7,64,0x3695,180,1008,384,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
REPLACE INTO `mob_db` VALUES (1724,'A_POTON_CANON','Photon Cannon','Photon Cannon',66,8000,0,0,0,9,1000,1300,10,30,1,40,25,20,80,80,10,12,1,0,40,0x84,300,1536,960,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
@ -1133,7 +1133,7 @@ REPLACE INTO `mob_db` VALUES (2010,'G_MAJORUROS','Ox','Ox',66,500000,0,10,10,1,1
#REPLACE INTO `mob_db` VALUES (2012,'E_ZOMBIE','Zombie','Zombie',15,99999,0,50,33,1,335,395,100,10,1,8,7,0,60,0,10,12,1,1,29,0x120,150,2612,912,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
# Another World (13.2)
REPLACE INTO `mob_db` VALUES (2013,'DRACO','Draco','Draco',82,18300,0,6100,4100,1,410,710,10,5,1,23,30,34,62,2,10,12,1,9,22,0x1089,250,576,960,504,0,0,0,0,0,0,0,6073,3000,7123,100,1035,100,1037,1000,1036,1000,518,500,0,0,0,0,0,0,4444,1);
REPLACE INTO `mob_db` VALUES (2014,'DRACO_EGG','Draco Egg','Draco Egg',67,9822,0,1200,1600,0,1,2,56,40,1,1,56,34,1,63,10,12,1,9,82,0x0,1000,24,0,0,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
REPLACE INTO `mob_db` VALUES (2014,'DRACO_EGG','Draco Egg','Draco Egg',67,9822,0,1200,1600,0,1,2,56,40,1,1,56,34,1,63,10,12,1,9,82,0x0,1000,24,1,1,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
REPLACE INTO `mob_db` VALUES (2015,'PINGUICULA_D','Dark Pinguicula','Dark Pinguicula',83,8780,0,7740,5200,1,600,1450,15,5,1,23,22,12,89,2,10,12,1,3,45,0x308D,290,1426,600,360,0,0,0,0,0,0,0,7100,5000,7198,2000,7188,3000,972,10,6086,1000,0,0,0,0,0,0,0,0,0,0);
REPLACE INTO `mob_db` VALUES (2016,'AQUA_ELEMENTAL','Aqua Elemental','Aqua Elemental',83,33220,0,5430,15300,1,400,1600,8,12,1,23,19,87,77,2,10,12,2,0,81,0x3095,230,504,960,576,0,0,0,0,0,0,0,6075,1000,7326,5000,12353,100,0,0,0,0,0,0,0,0,0,0,0,0,4443,1);
REPLACE INTO `mob_db` VALUES (2017,'RATA','Rata','Rata',107,216600,0,70012,34000,1,8000,15000,32,52,1,51,22,132,99,15,10,12,1,7,62,0x3295,150,792,540,420,0,0,0,0,0,0,0,12346,5000,1026,5000,6089,500,1548,100,0,0,0,0,0,0,0,0,0,0,0,0);

View File

@ -840,7 +840,7 @@ REPLACE INTO `mob_db_re` VALUES (1717,'FERUS_','Ferus','Ferus',126,39054,1,4185,
REPLACE INTO `mob_db_re` VALUES (1718,'NOVUS_','Novus','Novus',84,5028,1,1080,1215,1,266,314,88,28,53,43,43,55,90,58,10,12,0,9,20,0x3885,100,252,816,480,0,0,0,0,0,0,0,508,2000,7053,1035,0,0,1036,589,0,0,0,0,0,0,0,0,0,0,4382,1);
REPLACE INTO `mob_db_re` VALUES (1719,'DETALE','Detale','Detardeurus',135,6005000,1,4320000,3420000,3,4072,6734,364,166,165,153,171,136,185,72,10,12,2,9,67,0x37B5,250,432,936,360,2160000,617,5500,603,5000,732,2000,2649,1000,2648,1000,7444,5000,7451,3589,12080,1000,1417,100,5002,500,0,0,0,0,4386,1);
REPLACE INTO `mob_db_re` VALUES (1720,'HYDRO','Hydro','Hydrolancer',121,41500,0,6285,4463,3,760,910,92,58,120,72,67,66,88,58,10,12,2,9,47,0x37B5,160,140,672,432,0,0,0,0,0,0,0,7123,4000,1035,4000,7443,3880,5126,500,5127,500,12085,300,5124,500,0,0,0,0,4384,1);
REPLACE INTO `mob_db_re` VALUES (1721,'DRAGON_EGG','Dragon Egg','Dragon Egg',119,20990,1,2862,2147,0,503,653,172,85,84,59,85,40,118,65,10,12,1,9,40,0x0,1000,24,0,0,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1);
REPLACE INTO `mob_db_re` VALUES (1721,'DRAGON_EGG','Dragon Egg','Dragon Egg',119,20990,1,2862,2147,0,503,653,172,85,84,59,85,40,118,65,10,12,1,9,40,0x0,1000,24,1,1,0,0,0,0,0,0,0,985,5,7032,100,731,10,732,5,718,10,720,10,728,10,0,0,0,0,4385,1);
REPLACE INTO `mob_db_re` VALUES (1722,'EVENT_JAKK','Jakk','Jakk',99,10310,0,93,90,1,115,182,8,11,1,28,18,13,35,45,10,12,1,0,43,0x81,240,1180,480,648,0,0,0,0,0,0,0,7225,1000,1062,1000,535,1000,0,0,0,0,0,0,0,0,0,0,0,0,5134,10000);
REPLACE INTO `mob_db_re` VALUES (1723,'A_SHECIL','Shecil Damon','Cecil Damon',82,30000,0,0,0,14,600,900,40,15,1,145,27,32,134,80,10,12,1,7,64,0x3695,180,1008,384,288,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
REPLACE INTO `mob_db_re` VALUES (1724,'A_POTON_CANON','Photon Cannon','Photon Cannon',66,8000,0,0,0,9,1000,1300,16,30,1,40,25,20,80,80,10,12,1,0,40,0x84,300,1536,960,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
@ -1178,7 +1178,7 @@ REPLACE INTO `mob_db_re` VALUES (2010,'G_MAJORUROS','Ox','Ox',66,500000,0,9,9,1,
# Enter The Unknown (13.2)
REPLACE INTO `mob_db_re` VALUES (2013,'DRACO','Draco','Draco',114,20099,1,1995,1205,1,556,666,56,3,21,58,47,34,71,66,10,12,1,9,22,0x1089,250,576,960,504,0,0,0,0,0,0,0,6073,3000,7123,100,1035,100,1037,1000,1036,1000,518,500,2399,10,0,0,0,0,4444,1);
REPLACE INTO `mob_db_re` VALUES (2014,'DRACO_EGG','Draco Egg','Draco Egg',101,100000,1,2000,1500,0,1,2,384,30,1,1,135,92,1,98,10,12,1,9,82,0x0,1000,24,0,0,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4471,1);
REPLACE INTO `mob_db_re` VALUES (2014,'DRACO_EGG','Draco Egg','Draco Egg',101,100000,1,2000,1500,0,1,2,384,30,1,1,135,92,1,98,10,12,1,9,82,0x0,1000,24,1,1,0,0,0,0,0,0,0,7032,5000,5015,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4471,1);
REPLACE INTO `mob_db_re` VALUES (2015,'PINGUICULA_D','Dark Pinguicula','Dark Pinguicula',113,17002,1,2101,2419,1,251,640,59,35,89,55,55,95,66,12,10,12,1,3,45,0x308D,290,1426,600,360,0,0,0,0,0,0,0,7100,5000,7198,2000,7188,3000,972,10,6086,1000,7939,1500,2148,10,0,0,0,0,4468,1);
REPLACE INTO `mob_db_re` VALUES (2016,'AQUA_ELEMENTAL','Aqua Elemental','Aqua Elemental',121,33209,1,4155,4155,1,616,1066,23,8,95,61,25,25,86,40,10,12,2,0,81,0x3095,230,504,960,576,0,0,0,0,0,0,0,6075,1000,7326,5000,12353,100,0,0,2787,10,0,0,0,0,0,0,0,0,4443,1);
REPLACE INTO `mob_db_re` VALUES (2017,'RATA','Rata','Rata',131,58299,1,7787,6119,1,720,931,81,46,101,74,71,51,98,56,10,12,1,7,62,0x3295,150,792,540,420,0,0,0,0,0,0,0,12346,5000,1026,5000,6089,500,1548,100,6224,10,0,0,0,0,0,0,0,0,4459,1);

View File

@ -5976,40 +5976,65 @@ void battle_drain(TBL_PC *sd, struct block_list *tbl, int64 rdamage, int64 ldama
if (i < 2) { wd = &sd->right_weapon; damage = &rdamage; }
else { wd = &sd->left_weapon; damage = &ldamage; }
if (*damage <= 0) continue;
//First and Third iterations: race, other two boss/normal state
if( i == 1 || i == 3 )
{
hp = wd->hp_drain_class[class_].value;
if( i == 1 || i == 3 ) {
hp = wd->hp_drain_class[class_].value + wd->hp_drain_class[CLASS_ALL].value;
if (wd->hp_drain_class[class_].rate)
hp += battle_calc_drain(*damage, wd->hp_drain_class[class_].rate, wd->hp_drain_class[class_].per);
if (wd->hp_drain_class[CLASS_ALL].rate)
hp += battle_calc_drain(*damage, wd->hp_drain_class[CLASS_ALL].rate, wd->hp_drain_class[CLASS_ALL].per);
sp = wd->sp_drain_class[class_].value;
sp = wd->sp_drain_class[class_].value + wd->sp_drain_class[CLASS_ALL].value;
if (wd->sp_drain_class[class_].rate)
sp += battle_calc_drain(*damage, wd->sp_drain_class[class_].rate, wd->sp_drain_class[class_].per);
if (wd->sp_drain_class[CLASS_ALL].rate)
sp += battle_calc_drain(*damage, wd->sp_drain_class[CLASS_ALL].rate, wd->sp_drain_class[CLASS_ALL].per);
if( hp && wd->hp_drain_class[class_].type )
rhp += hp;
if( sp && wd->sp_drain_class[class_].type )
rsp += sp;
if( hp ) {
if( wd->hp_drain_class[class_].type )
rhp += hp;
if( wd->hp_drain_class[CLASS_ALL].type )
rhp += hp;
thp += hp;
}
if( sp ) {
if( wd->sp_drain_class[class_].type )
rsp += sp;
if( wd->sp_drain_class[CLASS_ALL].type )
rsp += sp;
tsp += sp;
}
} else {
hp = wd->hp_drain_race[race].value;
hp = wd->hp_drain_race[race].value + wd->hp_drain_race[RC_ALL].value;
if (wd->hp_drain_race[race].rate)
hp += battle_calc_drain(*damage, wd->hp_drain_race[race].rate, wd->hp_drain_race[race].per);
if (wd->hp_drain_race[RC_ALL].rate)
hp += battle_calc_drain(*damage, wd->hp_drain_race[RC_ALL].rate, wd->hp_drain_race[RC_ALL].per);
sp = wd->sp_drain_race[race].value;
sp = wd->sp_drain_race[race].value + wd->sp_drain_race[RC_ALL].value;
if (wd->sp_drain_race[race].rate)
sp += battle_calc_drain(*damage, wd->sp_drain_race[race].rate, wd->sp_drain_race[race].per);
if (wd->sp_drain_race[RC_ALL].rate)
sp += battle_calc_drain(*damage, wd->sp_drain_race[RC_ALL].rate, wd->sp_drain_race[RC_ALL].per);
if( hp && wd->hp_drain_race[race].type )
rhp += hp;
if( sp && wd->sp_drain_race[race].type)
rsp += sp;
if( hp ) {
if( wd->hp_drain_race[race].type )
rhp += hp;
if( wd->hp_drain_race[RC_ALL].type )
rhp += hp;
thp += hp;
}
if( sp ) {
if( wd->sp_drain_race[race].type )
rsp += sp;
if( wd->sp_drain_race[RC_ALL].type )
rsp += sp;
tsp += sp;
}
}
}
thp += hp;
tsp += sp;
if (sd->bonus.sp_vanish_rate && rnd()%1000 < sd->bonus.sp_vanish_rate)
status_percent_damage(&sd->bl, tbl, 0, (unsigned char)sd->bonus.sp_vanish_per, false);
@ -6019,8 +6044,12 @@ void battle_drain(TBL_PC *sd, struct block_list *tbl, int64 rdamage, int64 ldama
if( sd->sp_gain_race_attack[race] )
tsp += sd->sp_gain_race_attack[race];
if( sd->sp_gain_race_attack[RC_ALL] )
tsp += sd->sp_gain_race_attack[RC_ALL];
if( sd->hp_gain_race_attack[race] )
thp += sd->hp_gain_race_attack[race];
if( sd->hp_gain_race_attack[RC_ALL] )
thp += sd->hp_gain_race_attack[RC_ALL];
if (!thp && !tsp) return;

View File

@ -1345,6 +1345,10 @@ int clif_spawn(struct block_list *bl)
if( sd->talisman[i] > 0 )
clif_talisman(sd, i);
}
for( i = SC_SPHERE_1; i <= SC_SPHERE_5; i++ ) {
if( sd->sc.data[i] )
clif_status_change(bl,StatusIconChangeTable[i],1,0,sd->sc.data[i]->val1,sd->sc.data[i]->val2,0);
}
#ifdef NEW_CARTS
if( sd->sc.data[SC_PUSH_CART] )
clif_status_load_notick(&sd->bl, SI_ON_PUSH_CART, 2, sd->sc.data[SC_PUSH_CART]->val1, 0, 0);
@ -4152,6 +4156,10 @@ static void clif_getareachar_pc(struct map_session_data* sd,struct map_session_d
if( dstsd->talisman[i] > 0 )
clif_talisman_single(sd->fd, dstsd, i);
}
for( i = SC_SPHERE_1; i <= SC_SPHERE_5; i++ ) {
if( dstsd->sc.data[i] )
clif_status_load_single(sd->fd,dstsd->bl.id,StatusIconChangeTable[i],1,dstsd->sc.data[i]->val1,dstsd->sc.data[i]->val2,0);
}
if( dstsd->sc.option&OPTION_MOUNTING ) {
//New Mounts are not complaint to the original method, so we gotta tell this guy that I'm mounting.
clif_status_load_single(sd->fd,dstsd->bl.id,SI_ALL_RIDING,2,1,0,0);

View File

@ -431,7 +431,7 @@ enum _sp {
SP_NO_KNOCKBACK,SP_CLASSCHANGE, // 1077-1078
SP_HP_DRAIN_VALUE,SP_SP_DRAIN_VALUE, // 1079-1080
SP_WEAPON_ATK,SP_WEAPON_ATK_RATE, // 1081-1082
SP_DELAYRATE,SP_HP_DRAIN_RATE_RACE,SP_SP_DRAIN_RATE_RACE, // 1083-1085
SP_DELAYRATE,SP_HP_DRAIN_VALUE_RACE, SP_SP_DRAIN_VALUE_RACE, // 1083-1085
SP_IGNORE_MDEF_RACE_RATE,SP_IGNORE_DEF_RACE_RATE,SP_SKILL_HEAL2,SP_ADDEFF_ONSKILL, //1086-1089
SP_ADD_HEAL_RATE,SP_ADD_HEAL2_RATE, SP_EQUIP_ATK, //1090-1092
@ -442,7 +442,7 @@ enum _sp {
SP_CRIT_ATK_RATE, SP_CRITICAL_ADDRACE, SP_NO_REGEN, SP_ADDEFF_WHENHIT, SP_AUTOSPELL_WHENHIT, // 2013-2017
SP_SKILL_ATK, SP_UNSTRIPABLE, SP_AUTOSPELL_ONSKILL, // 2018-2020
SP_SP_GAIN_VALUE, SP_HP_REGEN_RATE, SP_HP_LOSS_RATE, SP_ADDRACE2, SP_HP_GAIN_VALUE, // 2021-2025
SP_SUBSIZE, SP_HP_DRAIN_VALUE_RACE, SP_ADD_ITEM_HEAL_RATE, SP_SP_DRAIN_VALUE_RACE, SP_EXP_ADDRACE, // 2026-2030
SP_SUBSIZE, SP_HP_DRAIN_VALUE_CLASS, SP_ADD_ITEM_HEAL_RATE, SP_SP_DRAIN_VALUE_CLASS, SP_EXP_ADDRACE, // 2026-2030
SP_SP_GAIN_RACE, SP_SUBRACE2, SP_UNBREAKABLE_SHOES, // 2031-2033
SP_UNSTRIPABLE_WEAPON,SP_UNSTRIPABLE_ARMOR,SP_UNSTRIPABLE_HELM,SP_UNSTRIPABLE_SHIELD, // 2034-2037
SP_INTRAVISION, SP_ADD_MONSTER_DROP_ITEMGROUP, SP_SP_LOSS_RATE, // 2038-2040
@ -453,7 +453,7 @@ enum _sp {
SP_DEF_SET,SP_MDEF_SET,SP_HP_VANISH_RATE, //2059-2061
SP_IGNORE_DEF_CLASS, SP_DEF_RATIO_ATK_CLASS, SP_ADDCLASS, SP_SUBCLASS, SP_MAGIC_ADDCLASS, //2062-2066
SP_WEAPON_COMA_CLASS, SP_HP_DRAIN_VALUE_CLASS, SP_SP_DRAIN_VALUE_CLASS, SP_IGNORE_MDEF_CLASS_RATE //2067-2070
SP_WEAPON_COMA_CLASS, SP_IGNORE_MDEF_CLASS_RATE //2067-2068
};
enum _look {

View File

@ -1641,7 +1641,10 @@ static bool mob_ai_sub_hard(struct mob_data *md, unsigned int tick)
if(tbl->type == BL_PC)
mob_log_damage(md, tbl, 0); //Log interaction (counts as 'attacker' for the exp bonus)
unit_attack(&md->bl,tbl->id,1);
if( !(md->sc.option&OPTION_HIDE) )
unit_attack(&md->bl,tbl->id,1);
else
mobskill_use(md, tick, -1);
return true;
}
@ -2828,6 +2831,17 @@ void mob_heal(struct mob_data *md,unsigned int heal)
{
if (battle_config.show_mob_info&3)
clif_charnameack (0, &md->bl);
#if PACKETVER >= 20120404
if( !(md->status.mode&MD_BOSS) ){
int i;
for(i = 0; i < DAMAGELOG_SIZE; i++)// must show hp bar to all char who already hit the mob.
if( md->dmglog[i].id ) {
struct map_session_data *sd = map_charid2sd(md->dmglog[i].id);
if( sd && check_distance_bl(&md->bl, &sd->bl, AREA_SIZE) ) // check if in range
clif_monster_hp_bar(md, sd->fd);
}
}
#endif
}
/*==========================================

View File

@ -3422,26 +3422,6 @@ int pc_bonus3(struct map_session_data *sd,int type,int type2,int type3,int val)
sd->left_weapon.sp_drain_class[CLASS_BOSS].type = val;
}
break;
case SP_HP_DRAIN_RATE_RACE:
if(!sd->state.lr_flag) {
sd->right_weapon.hp_drain_race[type2].rate += type3;
sd->right_weapon.hp_drain_race[type2].per += val;
}
else if(sd->state.lr_flag == 1) {
sd->left_weapon.hp_drain_race[type2].rate += type3;
sd->left_weapon.hp_drain_race[type2].per += val;
}
break;
case SP_SP_DRAIN_RATE_RACE:
if(!sd->state.lr_flag) {
sd->right_weapon.sp_drain_race[type2].rate += type3;
sd->right_weapon.sp_drain_race[type2].per += val;
}
else if(sd->state.lr_flag == 1) {
sd->left_weapon.sp_drain_race[type2].rate += type3;
sd->left_weapon.sp_drain_race[type2].per += val;
}
break;
case SP_ADD_MONSTER_DROP_ITEMGROUP:
if (sd->state.lr_flag != 2)
pc_bonus_item_drop(sd->add_drop, ARRAYLENGTH(sd->add_drop), 0, type2, -1, 1<<type3, val);

View File

@ -83,7 +83,7 @@ struct weapon_data {
short per;
short value;
unsigned type:1;
} hp_drain_race[RC_ALL], sp_drain_race[RC_ALL], hp_drain_class[CLASS_ALL], sp_drain_class[CLASS_ALL];
} hp_drain_race[RC_MAX], sp_drain_race[RC_MAX], hp_drain_class[CLASS_MAX], sp_drain_class[CLASS_MAX];
struct {
short class_, rate;

View File

@ -65,7 +65,6 @@ int current_equip_card_id; /// To prevent card-stacking (from jA) [Skotlex]
// We need it for new cards 15 Feb 2005, to check if the combo cards are insrerted into the CURRENT weapon only to avoid cards exploits
static sc_type SkillStatusChangeTable[MAX_SKILL]; /// skill -> status
static int StatusIconChangeTable[SC_MAX]; /// status -> "icon" (icon is a bit of a misnomer, since there exist values with no icon associated)
static unsigned int StatusChangeFlagTable[SC_MAX]; /// status -> flags
static int StatusSkillChangeTable[SC_MAX]; /// status -> skill
static int StatusRelevantBLTypes[SI_MAX]; /// "icon" -> enum bl_type (for clif_status_change to identify for which bl types to send packets)

View File

@ -1826,6 +1826,8 @@ int status_sc2skill(sc_type sc);
unsigned int status_sc2scb_flag(sc_type sc);
int status_type2relevant_bl_types(int type);
int StatusIconChangeTable[SC_MAX]; /// status -> "icon" (icon is a bit of a misnomer, since there exist values with no icon associated)
int status_damage(struct block_list *src,struct block_list *target,int64 dhp,int64 dsp, int walkdelay, int flag);
//Define for standard HP damage attacks.
#define status_fix_damage(src, target, hp, walkdelay) status_damage(src, target, hp, 0, walkdelay, 0)