* Added 'Eff_Burning' status, used in Banaspaty Card; fixed 'Eff_Fear'. (bugreport:7461, Hercules 5de6aab)

* Updates to SC_BURNING and SC_FREEZING durations. (Hercules 0395610)
* Minor fixes to Eden Quests 41-55.
* Fixed incorrect documentation for 'instance_id()'.
* Added Malaya instances to custom Warper.
* 'getmonsterinfo' no longer outputs an error when the supplied mob doesn't exist. (bugreport:7792)
* Follow-up r17410, fixed a typo in a label name.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17416 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
euphyy 2013-07-11 18:40:40 +00:00
parent 81430d2779
commit 4a8db1afe6
15 changed files with 70 additions and 56 deletions

View File

@ -643,7 +643,8 @@ Eff_Confusion 7
Eff_Blind 8
Eff_Bleeding 9
Eff_DPoison 10
Eff_Fear 11
Eff_Fear 309
Eff_Burning 310
Ele_Neutral 0
Ele_Water 1

View File

@ -2487,7 +2487,7 @@
4515,Alnoldi_Card,Alnoldi Card,6,20,,10,,,,,,,,32,,,,,{ bonus2 bSubRace,RC_Plant,30; },{},{}
4516,Comodo_Card,Comodo Card,6,20,,10,,,,,,,,16,,,,,{ bonus bDef,50; bonus bFlee,-25; },{},{}
4517,Cendrawasih_Card,Cendrawasih Card,6,20,,10,,,,,,,,769,,,,,{ bonus bInt,2; if(BaseClass==Job_Mage){ bonus bInt,getrefine()/3; } },{},{}
4518,Banaspaty_Card,Banaspaty Card,6,20,,10,,,,,,,,2,,,,,{},{},{}
4518,Banaspaty_Card,Banaspaty Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bAddEff,Eff_Burning,1500; },{},{}
4519,Butoijo_Card,Butoijo Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bAddRace,RC_Angel,20; },{},{}
4520,Leak_Card,Leak Card,6,20,,10,,,,,,,,4,,,,,{ bonus bStr,3; bonus2 bAddEff,Eff_Confusion,5000; bonus3 bAddEff,Eff_Confusion,5000,ATF_SKILL; },{},{}
4521,Sedora_Card,Sedora Card,6,20,,10,,,,,,,,2,,,,,{ bonus bCritAtkRate,15; },{},{}

View File

@ -3,7 +3,7 @@
//===== By: ==================================================
//= rAthena Dev Team
//===== Current Version: =====================================
//= 20121219
//= 20130711
//===== Description: =========================================
//= List of script instructions used in item bonuses,
//= mainly bonus/bonus2/bonus3/bonus4/bonus5 arguments.
@ -77,11 +77,11 @@ bonus bIgnoreMDefRace,n; Disregard MDEF against enemies of race n
bonus bIgnoreMDefEle,n; Disregard MDEF against enemies of element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead
bonus bIgnoreMdefRate,n; Disregard n% of the target's MDEF
bonus bDefRatioAtkRace,n; Does more damage depending on monster Defense against race n (defense disregard) :
bonus bDefRatioAtkRace,n; Does more damage depending on monster Defense against race n (defense disregard)
n: 0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
bonus bDefRatioAtkEle,n; n attribute if defensive power is high the high extent big damage is given, (defense disregard) :
bonus bDefRatioAtkEle,n; n attribute if defensive power is high the high extent big damage is given, (defense disregard)
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead
bonus bAtkEle,n; Gives the player's attacks element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead
@ -101,9 +101,13 @@ bonus bIntravision,n; Always see Hiding and Cloaking players/mobs (n is meanin
bonus bHealPower,n; Increase heal amount of all heal skills by n%
bonus bHealPower2,n; Increase heal amount if you are healed by any skills by n%
bonus2 bAddEff,e,x; Adds a x/100 chance to cause effect e to the target when attacking (e.g. x=100 makes 1% chance, x=10000 makes 100% chance, etc)
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence, Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence,
Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding,
Eff_DPoison, Eff_Fear, Eff_Burning
bonus2 bResEff,e,x; Adds a x/100 tolerance to effect e (e.g. x=100 makes 1% tolerance, x=10000 makes 100% tolerance, etc)
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence, Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence,
Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding,
Eff_DPoison, Eff_Fear, Eff_Burning
bonus2 bCastrate,n,x; Adjust casting time of skill n by x% (supports skill names)
bonus2 bAddSize,n,x; +x% physical damage against size n.
n: 0=Small 1=Medium 2=Large
@ -143,7 +147,7 @@ bonus2 bAddDefClass,n,x; x% physical damage reduction against monsters of class
Against players, n is their job id.
bonus2 bAddMDefClass,n,x; x% magical damage reduction against monsters of class n
Against players, n is their job id.
bonus2 bIgnoreMdefRate,n,x; Disregard x% of the target's MDEF if the target belongs to race n;
bonus2 bIgnoreMdefRate,n,x; Disregard x% of the target's MDEF if the target belongs to race n
bonus2 bHPDrainRate,n,x; n/10 % probability to drain x% HP when attacking
bonus2 bSPDrainRate,n,x; n/10 % probability to drain x% SP when attacking
bonus2 bSPVanishRate,n,x; Add the (n/10)% chance of decreasing enemy's SP (player) amount by x% when attacking
@ -307,7 +311,7 @@ bonus2 bSPDrainValue,n,x; When hitting a monster by physical attack, ...
x:
0=you gain n SP, 1=you drain n SP from target
bonus2 bIgnoreDefRate,n,x; Disregard x% of the target's DEF if the target belongs to race n;
bonus2 bIgnoreDefRate,n,x; Disregard x% of the target's DEF if the target belongs to race n
bonus3 bAddEle,n,x,t; +x% physical damage against element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
@ -372,9 +376,10 @@ bonus bLongWeaponDamageReturn,n; Reflects n% of received ranged damage back to t
bonus2 bWeaponComaEle,x,n; Adds a n/100% chance to cause Coma when attacking a monster of element x with normal attack.
x: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
6=Holy, 7=Dark, 8=Spirit, 9=Undead
bonus2 bAddEff2,x,n; Adds a n/100% chance to cause status change x on self when attacking.
x: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence,
Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding
bonus2 bAddEff2,e,n; Adds a n/100% chance to cause status change e on self when attacking.
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence,
Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding,
Eff_DPoison, Eff_Fear, Eff_Burning
bonus bMagicDamageReturn,n; Adds a n% chance to reflect targetted magic spells back to the enemy that caused it.
bonus bPerfectHide,n; Hidden/cloaked character is no longer detected by monsters with 'detector' mode (n is meaningless).
bonus bNoKnockback,n; Character is no longer knocked back by enemy skills with such effect (n is meaningless).

View File

@ -7204,11 +7204,11 @@ that fails, the command returns an empty string instead.
---------------------------------------
*instance_id({<type>});
*instance_id();
Returns the unique instance id depending on <type>:
0: Instance ID of the attached script (default).
1: Instance ID of the currently attached player's party.
Returns the unique instance id of the attached script. If the script is not
attached to an instance, the instance of the currently attached player's party is
used. If that fails, the function will return 0.
---------------------------------------
@ -7712,9 +7712,10 @@ current invoking character.
*mercenary_create <class>,<contract time>;
This command summons a mercenary of given class, for given amount of
time in milliseconds. Typically used in item scripts of mercenary
scrolls.
This command summons a mercenary for a given time (in milliseconds). For a
list of all available classes, see 'db/mercenary_db'.
This command is typically used in item scripts of mercenary scrolls.
---------------------------------------
@ -7977,15 +7978,14 @@ The command returns 1 upon success, and these values upon failure:
*party_changeleader(<party id>,<character id>);
Transfers leadership of a party to the specified character. The original
party leader doesn't need be online.
Transfers leadership of a party to the specified character.
The command returns 1 upon success, and these values upon failure:
0: Unknown error.
-1: Party not found.
-2: Player not found.
-3: Player is not in the party.
-4: Player is already party leader
-4: Player is already party leader.
---------------------------------------

View File

@ -413,19 +413,26 @@ G6: Go("schg_dun01",200,124);
Instances:
// --------------------------------------------------
menu "Endless Tower",I1, "Hazy Forest",I2, "Malangdo Culvert",I3,
"Nidhoggur's Nest",I4, "Octopus Cave",I5, "Orc's Memory",I6, "Sealed Shrine",I7;
menu "Bakonawa Lake",I1, "Bangungot Hospital 2F",I2, "Buwaya Cave",I3,
"Endless Tower",I4, "Hazy Forest",I5, "Malangdo Culvert",I6,
"Nidhoggur's Nest",I7, "Octopus Cave",I8, "Orc's Memory",I9, "Sealed Shrine",I10;
I1: Go("e_tower",72,112);
I1: Restrict("RE");
Go("ma_scene01",172,175);
I2: Restrict("RE");
Go("bif_fild01",161,334);
Go("ma_dun01",151,8);
I3: Restrict("RE");
Go("mal_in01",164,21);
I4: Go("nyd_dun02",95,193);
Go("ma_fild02",316,317);
I4: Go("e_tower",72,112);
I5: Restrict("RE");
Go("bif_fild01",161,334);
I6: Restrict("RE");
Go("mal_in01",164,21);
I7: Go("nyd_dun02",95,193);
I8: Restrict("RE");
Go("mal_dun01",152,230);
I6: Go("gef_fild10",240,198);
I7: Go("monk_test",306,143);
I9: Go("gef_fild10",240,198);
I10: Go("monk_test",306,143);
// --------------------------------------------------
Special:

View File

@ -951,7 +951,7 @@ prt_are_in,25,188,3 script Staff#50-2 67,{
close2;
}
specialeffect2 EF_EXIT;
donpcevent "cast#50::OnNormal1";
donpcevent "cast#50::OnNomal1";
warp "arena_room",100,75;
donpcevent "#arn_timer_50::OnStop";
donpcevent "alloff#50::OnEnable";
@ -1002,7 +1002,7 @@ prt_are_in,25,188,3 script Staff#50-2 67,{
close2;
}
specialeffect2 EF_HIT5;
donpcevent "cast#50::OnNormal2";
donpcevent "cast#50::OnNomal2";
warp "arena_room",100,75;
donpcevent "#arn_timer_50::OnStop";
donpcevent "alloff#50::OnEnable";
@ -1057,10 +1057,10 @@ OnTimeOver1:
OnTimeOver2:
mapannounce "force_1-1","Arena will be activated due to an error occurred in the waiting room.",0,0xFFCE00;
end;
OnNormal1:
OnNomal1:
mapannounce "force_1-1","Arena will be reactivated.",0,0xFFCE00;
end;
OnNormal2:
OnNomal2:
mapannounce "force_1-1","Arena will be reactivated.",0,0xFFCE00;
end;
}

View File

@ -949,7 +949,7 @@ prt_are_in,25,135,3 script Staff#60-2 67,{
close2;
}
specialeffect2 EF_EXIT;
donpcevent "cast#60::OnNormal1";
donpcevent "cast#60::OnNomal1";
warp "arena_room",100,75;
donpcevent "#arn_timer_60::OnStop";
donpcevent "alloff#60::OnEnable";
@ -1000,7 +1000,7 @@ prt_are_in,25,135,3 script Staff#60-2 67,{
close2;
}
specialeffect2 EF_HIT5;
donpcevent "cast#60::OnNormal2";
donpcevent "cast#60::OnNomal2";
warp "arena_room",100,75;
donpcevent "#arn_timer_60::OnStop";
donpcevent "alloff#60::OnEnable";
@ -1054,11 +1054,11 @@ OnTimeOver1:
mapannounce "force_2-1","Arena will be reactivated due to an error occurred during battle.",0,0xFFCE00;
end;
OnNormal1:
OnNomal1:
mapannounce "force_2-1","Arena will be reactivated.",0,0xFFCE00;
end;
OnNormal2:
OnNomal2:
mapannounce "force_2-1","Arena will be reactivated.",0,0xFFCE00;
end;

View File

@ -929,7 +929,7 @@ prt_are_in,25,84,3 script Staff#70-2 67,{
close2;
}
specialeffect2 EF_EXIT;
donpcevent "cast#70::OnNormal1";
donpcevent "cast#70::OnNomal1";
warp "arena_room",100,75;
donpcevent "#arn_timer_70::OnStop";
donpcevent "alloff#70::OnEnable";
@ -980,7 +980,7 @@ prt_are_in,25,84,3 script Staff#70-2 67,{
close2;
}
specialeffect2 EF_HIT5;
donpcevent "cast#70::OnNormal2";
donpcevent "cast#70::OnNomal2";
warp "arena_room",100,75;
donpcevent "#arn_timer_70::OnStop";
donpcevent "alloff#70::OnEnable";
@ -1035,10 +1035,10 @@ OnTimeOver1:
OnTimeOver2:
mapannounce "force_3-1","Arena will be activated due to an error occurred in the waiting room.",0,0xFFCE00;
end;
OnNormal1:
OnNomal1:
mapannounce "force_3-1","Arena will be reactivated.",0,0xFFCE00;
end;
OnNormal2:
OnNomal2:
mapannounce "force_3-1","Arena will be reactivated.",0,0xFFCE00;
end;
}

View File

@ -901,7 +901,7 @@ prt_are_in,77,187,3 script Staff#80-2 67,{
close2;
}
specialeffect2 EF_EXIT;
donpcevent "cast#80::OnNormal1";
donpcevent "cast#80::OnNomal1";
warp "arena_room",100,75;
donpcevent "#arn_timer_80::OnStop";
donpcevent "alloff#80::OnEnable";
@ -952,7 +952,7 @@ prt_are_in,77,187,3 script Staff#80-2 67,{
close2;
}
specialeffect2 EF_HIT5;
donpcevent "cast#80::OnNormal2";
donpcevent "cast#80::OnNomal2";
warp "arena_room",100,75;
donpcevent "#arn_timer_80::OnStop";
donpcevent "alloff#80::OnEnable";
@ -1007,10 +1007,10 @@ OnTimeOver1:
OnTimeOver2:
mapannounce "force_4-1","Arena will be activated due to an error occurred in the waiting room.",0,0xFFCE00;
end;
OnNormal1:
OnNomal1:
mapannounce "force_4-1","Arena will be reactivated.",0,0xFFCE00;
end;
OnNormal2:
OnNomal2:
mapannounce "force_4-1","Arena will be reactivated.",0,0xFFCE00;
end;
}

View File

@ -26,7 +26,7 @@ moc_para01,40,38,3 script Mission [41 - 55] 857,{
}
if (checkquest(12088) == -1) {
if (BaseLevel < 41 || BaseLevel > 55) {
mes "[41 ~ 55 Lv. Mission Board]";
mes "Mission bulletin board for Lv41~55 adventurers.";
close;
}
mes "[Mission Board]";
@ -50,7 +50,7 @@ moc_para01,40,38,3 script Mission [41 - 55] 857,{
case 11: callsub L_Quest,12082,"Don't ask why, but please hunt 30 Shellfish. It is a secret mission!";
case 12: callsub L_Quest,12083,"Marine Sphere? Do you know what a Marine Sphere is? I got a mission for you to hunt 15 Marine Sphere, so please do so.";
case 13: callsub L_Quest,12084,"The mayor wants to eat a delicious fish dish. Phen will be the perfect ingredient for it. Please hunt 20 Phen!";
case 14: callsub L_Quest,12085,"You have accepted the mission. For more details, please press 'alt + u' keys, you can get information from the Quest Window.";
case 14: callsub L_Quest,12085,"Dead Orc monsters got back to our town and they've revived as Orc Skeletons. We are in chaos! Please hunt 15 Orc Skeleton.";
case 15: callsub L_Quest,12086,"Some weird monsters called Zenorc are attacking us. Please hunt 30 Zenorc.";
case 16: callsub L_Quest,12087,"Be prepared! It is a cruel mission! Hunt 15 Mummies!! I tried once, but I couldn't succeed. It is too scary!";
}

View File

@ -2518,7 +2518,7 @@ REPLACE INTO `item_db_re` VALUES (4514,'Pom_Spider_Card','Pom Spider Card',6,20,
REPLACE INTO `item_db_re` VALUES (4515,'Alnoldi_Card','Alnoldi Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,32,NULL,NULL,NULL,NULL,'bonus2 bSubRace,RC_Plant,30;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4516,'Comodo_Card','Comodo Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,16,NULL,NULL,NULL,NULL,'bonus bDef,50; bonus bFlee,-25;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4517,'Cendrawasih_Card','Cendrawasih Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,769,NULL,NULL,NULL,NULL,'bonus bInt,2; if(BaseClass==Job_Mage){ bonus bInt,getrefine()/3; }',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4518,'Banaspaty_Card','Banaspaty Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4518,'Banaspaty_Card','Banaspaty Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,'bonus2 bAddEff,Eff_Burning,1500;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4519,'Butoijo_Card','Butoijo Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,'bonus2 bAddRace,RC_Angel,20;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4520,'Leak_Card','Leak Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,4,NULL,NULL,NULL,NULL,'bonus bStr,3; bonus2 bAddEff,Eff_Confusion,5000; bonus3 bAddEff,Eff_Confusion,5000,ATF_SKILL;',NULL,NULL);
REPLACE INTO `item_db_re` VALUES (4521,'Sedora_Card','Sedora Card',6,20,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,2,NULL,NULL,NULL,NULL,'bonus bCritAtkRate,15;',NULL,NULL);

View File

@ -15120,7 +15120,7 @@ BUILDIN_FUNC(getmonsterinfo)
mob_id = script_getnum(st,2);
if (!mobdb_checkid(mob_id)) {
ShowError("buildin_getmonsterinfo: Wrong Monster ID: %i\n", mob_id);
//ShowError("buildin_getmonsterinfo: Wrong Monster ID: %i\n", mob_id);
if ( !script_getnum(st,3) ) //requested a string
script_pushconststr(st,"null");
else

View File

@ -796,10 +796,10 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, uint
skill = skill_get_time2(status_sc2skill(type),7);
if (sd->addeff[i].flag&ATF_TARGET)
status_change_start(src,bl,type,rate,7,0,0,0,skill,0);
status_change_start(src,bl,type,rate,7,0,(type == SC_BURNING)?src->id:0,0,skill,0);
if (sd->addeff[i].flag&ATF_SELF)
status_change_start(src,src,type,rate,7,0,0,0,skill,0);
status_change_start(src,src,type,rate,7,0,(type == SC_BURNING)?src->id:0,0,skill,0);
}
}

View File

@ -6417,8 +6417,7 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
tick_def2 = (status->vit + status->luk)*50;
break;
case SC_BURNING:
// From iROwiki : http://forums.irowiki.org/showpost.php?p=577240&postcount=583
tick_def2 = 50*status->luk + 60*status->int_ + 170*status->vit;
tick_def2 = 75*status->luk + 125*status->agi;
break;
case SC_FREEZING:
tick_def2 = (status->vit + status->dex)*50;
@ -6541,8 +6540,10 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
tick = max(tick, 5000); //Minimum duration 5s
break;
case SC_BURNING:
tick = max(tick, 5000); //Minimum duration 5s
break;
case SC_FREEZING:
tick = max(tick, 10000); //Minimum duration 10s
tick = max(tick, 6000); //Minimum duration 6s
break;
default:
//Skills need to trigger even if the duration is reduced below 1ms

View File

@ -492,7 +492,7 @@ typedef enum sc_type {
/**
* Genetic
**/
SC_GN_CARTBOOST,//427
SC_GN_CARTBOOST,//421
SC_THORNSTRAP,
SC_BLOODSUCKER,
SC_SMOKEPOWDER,