-
Posts
957 -
Joined
-
Last visited
-
Days Won
18
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Everything posted by Start_
-
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
change all delitem3 to delitem should be okay. delitem .@e,1; -
Increasing Heal rate of all class that has heal || Not through item scrip
Start_ replied to AinsLord's question in General Support
src\custom\defines_pre.hpp put // Copyright (c) rAthena Dev Teams - Licensed under GNU GPL // For more information, see LICENCE in the main folder #ifndef _CONFIG_CUSTOM_DEFINES_PRE_HPP_ #define _CONFIG_CUSTOM_DEFINES_PRE_HPP_ /** * rAthena configuration file (http://rathena.org) * For detailed guidance on these check http://rathena.org/wiki/SRC/config/ **/ #define ADJUST_SKILL_DAMAGE #endif // _CONFIG_CUSTOM_DEFINES_PRE_HPP_ -
How to disable item bound, account bound items?
Start_ replied to vxy123's question in Database Requests
D:\rathena\db\re\item_flag.txt D:\rathena\db\re\item_trade.txt -
// Weapon/Armor Refiners //============================================================ prt_in,63,60,0 script Hollgrehenn 85,{ callfunc "refinemain","Hollgrehenn",0; end; } morocc_in,73,38,6 script Aragham 99,{ callfunc "refinemain","Aragham",0; end; } payon,144,173,5 script Antonio 88,{ callfunc "refinemain","Antonio",0; end; } alberta_in,28,58,0 script Fredrik 85,{ callfunc "refinemain","Fredrik",0; end; } yuno_in01,171,21,4 script Lambert 88,{ callfunc "refinemain","Lambert",0; end; } ein_in01,24,87,5 script Manthasman 826,{ callfunc "refinemain","Manthasman Pruhag",0; end; } lhz_in02,282,20,7 script Fulerr 869,{ callfunc "refinemain","Fulerr",0; end; } To // Weapon/Armor Refiners //============================================================ prt_in,63,60,0 script Hollgrehenn 85,{ callfunc "refinemain","Hollgrehenn",0; end; } morocc_in,73,38,6 script Aragham 99,{ callfunc "refinemain","Aragham",0; end; } payon,144,173,5 script Antonio 88,{ callfunc "refinemain","Antonio",0; end; } alberta_in,28,58,0 script Fredrik 85,{ callfunc "refinemain","Fredrik",1; end; } yuno_in01,171,21,4 script Lambert 88,{ callfunc "refinemain","Lambert",1; end; } ein_in01,24,87,5 script Manthasman 826,{ callfunc "refinemain","Manthasman Pruhag",1; end; } lhz_in02,282,20,7 script Fulerr 869,{ callfunc "refinemain","Fulerr",1; end; } at D:\rathena\npc\merchants\refine.txt
-
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
How did you test can you provide the step? -
Increasing Heal rate of all class that has heal || Not through item scrip
Start_ replied to AinsLord's question in General Support
D:\rathena\db\skill_damage_db.txt Add all heal skill here, and made it more heal power. -
setunitdata fail to update UMOB_SIZE and UMOB_LEVEL
Start_ replied to Litro Endemic's question in Scripting Support
prontera,152,150,0 script M2 112,{ monster "prontera",150,154,"Test",1002,10,strnpcinfo(0)+"::OnMobKilled",Size_Large; end; OnMobKilled: end; } Size display you need to use another command. Size in db is variable. -
setunitdata fail to update UMOB_SIZE and UMOB_LEVEL
Start_ replied to Litro Endemic's question in Scripting Support
Your scripts is working fine. I've added OnMobKilled Event to prevent error from killing it. prontera,150,150,0 script Mob Control 112,{ mes "input mob id"; input .@mob_id; if (getmonsterinfo(.@mob_id,MOB_NAME)=="null"){ mes "monster didn't exist"; close; } close2; monster(strnpcinfo(4),152,148,"Controlled Mob",.@mob_id,1,strnpcinfo(0)+"::OnMobKilled"); copyarray .gid[0],$@mobid[0],getarraysize($@mobid); .@size=getarraysize(.gid); //dispbottom "Size: "+.@size; getunitdata(.gid[0],.@data); setunitdata .gid[0],UMOB_MODE,.@data[UMOB_MODE]|MD_NORANDOM_WALK; setarray .@size2,Size_Small,Size_Medium,Size_Large; .@rand=rand(getarraysize(.@size2)); setunitdata .gid[0],UMOB_SIZE,0; //for(.@i=0;.@i<.@size;.@i++) //dispbottom "Mob: "+.@i+" ~ GID: "+.gid[.@i]; initnpctimer; end; OnTimer1000: if(unitexists(.gid[0])){ getunitdata(.gid[0],.@data); setarray .@size2,Size_Small,Size_Medium,Size_Large; .@rand = rand(getarraysize(.@size2)); setunitdata .gid[0],UMOB_SIZE,.@size2[.@rand]; setunitdata .gid[0],UMOB_LEVEL,.level++; unittalk .gid[0],"Size: "+.@size2[.@rand]+" ~ Level: "+.level; } initnpctimer; end; OnMobKilled: end; } -
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
- script Items_Conf -1,{ OnInit: //callsub Ids, 13040,1, 111, 1, 1203, 1, 111, 5, 1206, 1, 111, 15, 1209, 1, 111, 25, 1212, 1, 111, 30, 1215, 1, 111, 60, 1218, 1, 111, 70, 1221, 1, 111, 80, 1222, 1, 111, 90, 13048, 1, 111, 150 ; callsub Ids, 13415,1, 111, 1, 1103, 1, 111, 5, 1106, 1, 111, 15, 1109, 1, 111, 25, 1112, 1, 111, 30, 1115, 1, 111, 60, 1122, 1, 111, 70, 1123, 1, 111, 80, 1126, 1, 111, 90, 1121, 1, 111, 100, 1129, 1, 111, 125, 13422, 1, 111, 150 ; callsub Ids, 1118, 1, 111, 5, 1153, 1, 111, 15,1156, 1, 111, 25, 1160, 1, 111, 30, 1159, 1, 111, 60, 1163, 1, 111, 70, 1190, 1, 111, 100, 1188, 1, 111, 200 ; callsub Ids, 1381, 1, 111, 1, 1353, 1, 111, 5, 1356, 1, 111, 15, 1359, 1, 111, 25, 1362, 1, 111, 30, 1388, 1, 111, 100, 1384, 1, 111, 200 ; callsub Ids, 1545, 1, 111, 1, 1503, 1, 111, 5, 1506, 1, 111, 15, 1509, 1, 111, 25, 1512, 1, 111, 30, 1521, 1, 111, 60, 1515, 1, 111, 70, 1518, 1, 111, 80, 1548, 1, 111, 200 ; callsub Ids, 1742, 1, 111, 1, 1703, 1, 111, 5, 1706, 1, 111, 15, 1709, 1, 111, 25, 1712, 1, 111, 30, 1713, 1, 111, 60, 1714, 1, 111, 70, 1735, 1, 111, 80, 18128, 1, 111, 200 ; callsub Ids, 1639, 1, 111, 1, 1603, 1, 111, 5, 1606, 1, 111, 15, 1609, 1, 111, 25, 1612, 1, 111, 30, 1614, 1, 111, 60, 1615, 1, 111, 80, 1636, 1, 111, 100; callsub Ids, 1403, 1, 111,10, 1406, 1, 111,15, 1409, 1, 111, 30, 1430, 1, 111, 200; callsub Ids, 1453, 1, 111,20, 1456, 1, 111,30, 1459, 1, 111, 40, 1462, 1, 111, 50, 1465, 1, 111, 70, 1412, 1, 111, 100; callsub Ids, 1801, 1, 111,20, 1803, 1, 111,30, 1805, 1, 111, 40, 1809, 1, 111, 50, 1811, 1, 111, 60, 1807, 1, 111, 70, 1814, 1, 111, 80, 1829, 1, 111, 100; callsub Ids, 1901, 1, 111,20, 1903, 1, 111,30, 1905, 1, 111, 40, 1909, 1, 111, 50, 1911, 1, 111, 60, 1907, 1, 111, 80, 1925, 1, 111,100, 1918, 1, 111, 150; callsub Ids, 1950, 1, 111,20, 1952, 1, 111,30, 1954, 1, 111, 40, 1958, 1, 111, 50, 1960, 1, 111, 60, 1958, 1, 111, 80, 1994, 1, 111,100; callsub Ids, 1264, 1, 111,20, 1262, 1, 111,30, 1295, 1, 111, 40, 1250, 1, 111, 50, 1252, 1, 111, 60, 1283, 1, 111, 100; .auto = 1; setarray .c$[0],"09e2f9","d43438","e2f909"; setarray .slots[0],EQI_HEAD_TOP,EQI_HEAD_MID,EQI_HEAD_LOW,EQI_ARMOR,EQI_HAND_R,EQI_HAND_L,EQI_GARMENT,EQI_SHOES,EQI_ACC_R,EQI_ACC_L; .w1 = 0; end; Ids: .@index=.w1; .w1++; for (.@args=getargcount();.@a<.@args;.@a+=4) { .@i = ++.w2[.@index]; setd ".a1"+.w1+"_"+.@i,getarg(.@a); setd ".a2"+.w1+"_"+.@i,getarg(.@a+1); setd ".a3"+.w1+"_"+.@i,getarg(.@a+2); setd ".a4"+.w1+"_"+.@i,getarg(.@a+3); } return; OnNPCKillEvent: if (@wing[0]&&isequipped(@wing[0])) { .@c = 1; .@e = @wing[0]; .@w = @wing[1]; .@id = @wing[2]; } else { for (.@size=getarraysize(.slots);.@a<.@size&&!.@c;.@a++) { .@e = getequipid(.slots[.@a]); if (.@e<0) continue; .@id = 0; .@w = 1; while (.@id++<=.w2[.@w-1]&&!.@c) { if (.@id>.w2[.@w-1]) { .@id = 1; .@w++; } if (.@e==getd(".a1"+.@w+"_"+.@id)) if (getd(".a4"+.@w+"_"+.@id)>0&&(killedrid==getd(".a3"+.@w+"_"+.@id)||getd(".a3"+.@w+"_"+.@id)<1001)) { .@c = 1; setarray @wing[0],.@e,.@w,.@id; } } } } if (.@c) { if (getd(".a2"+.@w+"_"+.@id)==1) { .@amount = getd("mobs_"+.@e); setd "mobs_"+.@e,.@amount+1; if (getd("mobs_"+.@e)<getd(".a4"+.@w+"_"+.@id)) end; setd "evo"+.@e,getd("evo"+.@e)+1; setd "mobs_"+.@e,0; } else if(getd(".a2"+.@w+"_"+.@id)==2) { .@amount = getd("exp_"+.@e); setd "exp_"+.@e,.@amount+strmobinfo(6,killedrid); if (getd("exp_"+.@e)<getd(".a4"+.@w+"_"+.@id)) end; setd "evo"+.@e,getd("evo"+.@e)+1; setd "exp_"+.@e,0; } else debugmes "Script Items_Evo, error: wrong mode."; announce getitemname(.@e)+" está com "+getd("evo"+.@e)+"% para evoluir...",bc_self,"0x"+.c$[0]; specialeffect2 58; specialeffect2 383; if(getd("evo"+.@e)>=100&&.auto) { specialeffect2 263; specialeffect2 377; specialeffect2 542; announce getitemname(.@e)+" está evoluindo...",bc_self,"0x"+.c$[1]; .@i=3; while (.@i--) specialeffect2 521; specialeffect2 463; specialeffect2 665; .@refine=getequiprefinerycnt(EQI_HAND_R); .@card1=getequipcardid(EQI_HAND_R,0); .@card2=getequipcardid(EQI_HAND_R,1); .@card3=getequipcardid(EQI_HAND_R,2); .@card4=getequipcardid(EQI_HAND_R,3); .@optID01=0; if(getequiprandomoption(EQI_HAND_R,0,ROA_ID)>0) .@optID01=getequiprandomoption(EQI_HAND_R,0,ROA_ID); .@optID02=0; if(getequiprandomoption(EQI_HAND_R,1,ROA_ID)>0) .@optID02=getequiprandomoption(EQI_HAND_R,1,ROA_ID); .@optID03=0; if(getequiprandomoption(EQI_HAND_R,2,ROA_ID)>0) .@optID03=getequiprandomoption(EQI_HAND_R,2,ROA_ID); .@optID04=0; if(getequiprandomoption(EQI_HAND_R,3,ROA_ID)>0) .@optID04=getequiprandomoption(EQI_HAND_R,3,ROA_ID); .@optID05=0; if(getequiprandomoption(EQI_HAND_R,4,ROA_ID)>0) .@optID05=getequiprandomoption(EQI_HAND_R,4,ROA_ID); .@optVALUE01=0; if(getequiprandomoption(EQI_HAND_R,0,ROA_VALUE)>0) .@optVALUE01=getequiprandomoption(EQI_HAND_R,0,ROA_VALUE); .@optVALUE02=0; if(getequiprandomoption(EQI_HAND_R,1,ROA_VALUE)>0) .@optVALUE02=getequiprandomoption(EQI_HAND_R,1,ROA_VALUE); .@optVALUE03=0; if(getequiprandomoption(EQI_HAND_R,2,ROA_VALUE)>0) .@optVALUE03=getequiprandomoption(EQI_HAND_R,2,ROA_VALUE); .@optVALUE04=0; if(getequiprandomoption(EQI_HAND_R,3,ROA_VALUE)>0) .@optVALUE04=getequiprandomoption(EQI_HAND_R,3,ROA_VALUE); .@optVALUE05=0; if(getequiprandomoption(EQI_HAND_R,4,ROA_VALUE)>0) .@optVALUE05=getequiprandomoption(EQI_HAND_R,4,ROA_VALUE); setarray .@optId[0],.@optID01,.@optID02,.@optID03,.@optID04,.@optID05; setarray .@optVal[0],.@optVALUE01,.@optVALUE02,.@optVALUE03,.@optVALUE04,.@optVALUE05; setarray .@optParam[0],0; if(!getd(".a1"+.@w+"_"+(.@id+1)))//Null end; if(.@optID01>0||.@optID02>0||.@optID03>0||.@optID04>0||.@optID05>0){ delitem3 .@e,1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4,.@optID,.@optVal,.@optParam; getitem3 getd(".a1"+.@w+"_"+(.@id+1)),1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4,.@optID,.@optVal,.@optParam; } else if(.@refine>0||.@card1>0||.@card2>0||.@card3>0||.@card4>0){ delitem2 .@e,1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4; getitem2 getd(".a1"+.@w+"_"+(.@id+1)),1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4; } else{ delitem .@e,1; getitem getd(".a1"+.@w+"_"+(.@id+1)),1; } equip getd(".a1"+.@w+"_"+(.@id+1)); setd "evo"+.@e,0; deletearray @wing; announce "Parabéns seu item evoluiu para "+getitemname(getd(".a1"+.@w+"_"+(.@id+1)))+".",bc_self,"0x"+.c$[2]; } } end; } -
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
- script Items_Conf -1,{ OnInit: callsub Ids, 13040,1, 111, 1, 1203, 1, 111, 5, 1206, 1, 111, 15, 1209, 1, 111, 25, 1212, 1, 111, 30, 1215, 1, 111, 60, 1218, 1, 111, 70, 1221, 1, 111, 80, 1222, 1, 111, 90, 13048, 1, 111, 150 ; callsub Ids, 13415,1, 111, 1, 1103, 1, 111, 5, 1106, 1, 111, 15, 1109, 1, 111, 25, 1112, 1, 111, 30, 1115, 1, 111, 60, 1122, 1, 111, 70, 1123, 1, 111, 80, 1126, 1, 111, 90, 1121, 1, 111, 100, 1129, 1, 111, 125, 13422, 1, 111, 150 ; callsub Ids, 1118, 1, 111, 5, 1153, 1, 111, 15,1156, 1, 111, 25, 1160, 1, 111, 30, 1159, 1, 111, 60, 1163, 1, 111, 70, 1190, 1, 111, 100, 1188, 1, 111, 200 ; callsub Ids, 1381, 1, 111, 1, 1353, 1, 111, 5, 1356, 1, 111, 15, 1359, 1, 111, 25, 1362, 1, 111, 30, 1388, 1, 111, 100, 1384, 1, 111, 200 ; callsub Ids, 1545, 1, 111, 1, 1503, 1, 111, 5, 1506, 1, 111, 15, 1509, 1, 111, 25, 1512, 1, 111, 30, 1521, 1, 111, 60, 1515, 1, 111, 70, 1518, 1, 111, 80, 1548, 1, 111, 200 ; callsub Ids, 1742, 1, 111, 1, 1703, 1, 111, 5, 1706, 1, 111, 15, 1709, 1, 111, 25, 1712, 1, 111, 30, 1713, 1, 111, 60, 1714, 1, 111, 70, 1735, 1, 111, 80, 18128, 1, 111, 200 ; callsub Ids, 1639, 1, 111, 1, 1603, 1, 111, 5, 1606, 1, 111, 15, 1609, 1, 111, 25, 1612, 1, 111, 30, 1614, 1, 111, 60, 1615, 1, 111, 80, 1636, 1, 111, 100; callsub Ids, 1403, 1, 111,10, 1406, 1, 111,15, 1409, 1, 111, 30, 1430, 1, 111, 200; callsub Ids, 1453, 1, 111,20, 1456, 1, 111,30, 1459, 1, 111, 40, 1462, 1, 111, 50, 1465, 1, 111, 70, 1412, 1, 111, 100; callsub Ids, 1801, 1, 111,20, 1803, 1, 111,30, 1805, 1, 111, 40, 1809, 1, 111, 50, 1811, 1, 111, 60, 1807, 1, 111, 70, 1814, 1, 111, 80, 1829, 1, 111, 100; callsub Ids, 1901, 1, 111,20, 1903, 1, 111,30, 1905, 1, 111, 40, 1909, 1, 111, 50, 1911, 1, 111, 60, 1907, 1, 111, 80, 1925, 1, 111,100, 1918, 1, 111, 150; callsub Ids, 1950, 1, 111,20, 1952, 1, 111,30, 1954, 1, 111, 40, 1958, 1, 111, 50, 1960, 1, 111, 60, 1958, 1, 111, 80, 1994, 1, 111,100; callsub Ids, 1264, 1, 111,20, 1262, 1, 111,30, 1295, 1, 111, 40, 1250, 1, 111, 50, 1252, 1, 111, 60, 1283, 1, 111, 100; .auto = 1; setarray .c$[0], "09e2f9", "d43438", "e2f909"; setarray .slots[0],EQI_HEAD_TOP,EQI_HEAD_MID,EQI_HEAD_LOW,EQI_ARMOR,EQI_HAND_R,EQI_HAND_L,EQI_GARMENT,EQI_SHOES,EQI_ACC_R,EQI_ACC_L; .w1 = 0; end; Ids: .@index = .w1; .w1++; for ( .@args = getargcount ( ); .@a < .@args ; .@a+=4 ) { .@i = ++.w2[.@index]; setd ".a1"+ .w1 +"_"+ .@i, getarg ( .@a ); setd ".a2"+ .w1 +"_"+ .@i, getarg ( .@a + 1 ); setd ".a3"+ .w1 +"_"+ .@i, getarg ( .@a + 2 ); setd ".a4"+ .w1 +"_"+ .@i, getarg ( .@a + 3 ); } return; OnNPCKillEvent: if ( @wing[0] && isequipped ( @wing[0] ) ) { .@c = 1; .@e = @wing[0]; .@w = @wing[1]; .@id = @wing[2]; } else { for ( .@size = getarraysize ( .slots ); .@a < .@size && !.@c ; .@a++ ) { .@e = getequipid ( .slots[.@a] ); if ( .@e < 0 ) continue ; .@id = 0; .@w = 1; while ( .@id++ <= .w2[.@w - 1] && !.@c ) { if ( .@id > .w2[.@w - 1] ) { .@id = 1; .@w++; } if ( .@e == getd ( ".a1"+ .@w +"_"+ .@id ) ) if ( getd ( ".a4"+ .@w +"_"+ .@id ) > 0 && ( killedrid == getd ( ".a3"+ .@w +"_"+ .@id ) || getd ( ".a3"+ .@w +"_"+ .@id ) < 1001 ) ) { .@c = 1; setarray @wing[0], .@e, .@w, .@id; } } } } if (.@c) { if (getd(".a2"+.@w+"_"+.@id)==1) { .@amount = getd("mobs_"+.@e); setd "mobs_"+.@e,.@amount+1; if (getd("mobs_"+.@e)<getd(".a4"+.@w+"_"+.@id)) end ; setd "evo"+ .@e, getd ( "evo"+ .@e ) + 1; setd "mobs_"+ .@e, 0; } else if(getd(".a2"+.@w+"_"+.@id)==2) { .@amount = getd ( "exp_"+ .@e ); setd "exp_"+ .@e, .@amount + strmobinfo ( 6, killedrid ); if ( getd ( "exp_"+ .@e ) < getd ( ".a4"+ .@w +"_"+ .@id ) ) end ; setd "evo"+ .@e, getd ( "evo"+ .@e ) + 1; setd "exp_"+ .@e, 0; } else debugmes "Script Items_Evo, error: wrong mode."; announce getitemname ( .@e ) +" está com "+ getd ( "evo"+ .@e ) +"% para evoluir...", bc_self, "0x"+ .c$[0] ; specialeffect2 58 ; specialeffect2 383 ; if (getd("evo"+.@e) == 100 && .auto ) { specialeffect2 263 ; specialeffect2 377 ; specialeffect2 542 ; announce getitemname ( .@e ) +" está evoluindo..." , bc_self, "0x"+ .c$[1] ; .@i = 3; while ( .@i-- ) { specialeffect2 521 ; } specialeffect2 463 ; specialeffect2 665 ; .@refine = getequiprefinerycnt (.slots[.@a]); .@card1 = getequipcardid(.slots[.@a],0); .@card2 = getequipcardid(.slots[.@a],1); .@card3 = getequipcardid(.slots[.@a],2); .@card4 = getequipcardid(.slots[.@a],3); .@optID01 = 0; if(getequiprandomoption(.slots[.@a],0,ROA_ID)>0) .@optID01 = getequiprandomoption(.slots[.@a],0,ROA_ID); .@optID02 = 0; if(getequiprandomoption(.slots[.@a],1,ROA_ID)>0) .@optID02 = getequiprandomoption(.slots[.@a],1,ROA_ID); .@optID03 = 0; if(getequiprandomoption(.slots[.@a],2,ROA_ID)>0) .@optID03 = getequiprandomoption(.slots[.@a],2,ROA_ID); .@optID04 = 0; if(getequiprandomoption(.slots[.@a],3,ROA_ID)>0) .@optID04 = getequiprandomoption(.slots[.@a],3,ROA_ID); .@optID05 = 0; if(getequiprandomoption(.slots[.@a],4,ROA_ID)>0) .@optID05 = getequiprandomoption(.slots[.@a],4,ROA_ID); .@optVALUE01 = 0; if(getequiprandomoption(.slots[.@a],0,ROA_VALUE)>0) .@optVALUE01 = getequiprandomoption(.slots[.@a],0,ROA_VALUE); .@optVALUE02 = 0; if(getequiprandomoption(.slots[.@a],1,ROA_VALUE)>0) .@optVALUE02 = getequiprandomoption(.slots[.@a],1,ROA_VALUE); .@optVALUE03 = 0; if(getequiprandomoption(.slots[.@a],2,ROA_VALUE)>0) .@optVALUE03 = getequiprandomoption(.slots[.@a],2,ROA_VALUE); .@optVALUE04 = 0; if(getequiprandomoption(.slots[.@a],3,ROA_VALUE)>0) .@optVALUE04 = getequiprandomoption(.slots[.@a],3,ROA_VALUE); .@optVALUE05 = 0; if(getequiprandomoption(.slots[.@a],4,ROA_VALUE)>0) .@optVALUE05 = getequiprandomoption(.slots[.@a],4,ROA_VALUE); setarray .@optId[0],.@optID01,.@optID02,.@optID03,.@optID04,.@optID05; setarray .@optVal[0],.@optVALUE01,.@optVALUE02,.@optVALUE03,.@optVALUE04,.@optVALUE05; setarray .@optParam[0], 0; if(.@optID01>0||.@optID02>0||.@optID03>0||.@optID04>0||.@optID05>0) getitem3 getd(".a1"+.@w+"_"+(.@id+1)),1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4,.@optID,.@optVal,.@optParam; else if(.@refine>0||.@card1>0||.@card2>0||.@card3>0||.@card4>0) getitem2 getd(".a1"+.@w+"_"+(.@id+1)),1,1,.@refine,0,.@card1,.@card2,.@card3,.@card4; else getitem getd(".a1"+.@w+"_"+(.@id+1)),1; delitem .@e,1; //equip getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) ; setd "evo"+ .@e, 0; deletearray @wing; announce "Parabéns seu item evoluiu para "+ getitemname ( getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) ) +"." , bc_self , "0x"+ .c$[2] ; } } end; } -
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
setarray .@optId[0],getequiprandomoption(.slots[.@a],0,ROA_ID),getequiprandomoption(.slots[.@a],1,ROA_ID), getequiprandomoption(.slots[.@a],2,ROA_ID), getequiprandomoption(.slots[.@a],3,ROA_ID), getequiprandomoption(.slots[.@a],4,ROA_ID); setarray .@optVal[0], getequiprandomoption(.slots[.@a],0,ROA_VALUE), getequiprandomoption(.slots[.@a],1,ROA_VALUE), getequiprandomoption(.slots[.@a],2,ROA_VALUE), getequiprandomoption(.slots[.@a],3,ROA_VALUE), getequiprandomoption(.slots[.@a],4,ROA_VALUE); -
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
Yes, getitem3 is ok. Keep Random option command getequiprandomoption(.slots[.@a],2,ROA_ID), getequiprandomoption(.slots[.@a],3,ROA_ID), getequiprandomoption(.slots[.@a],4,ROA_ID); setarray .@optVal[0], getequiprandomoption(.slots[.@a],0,ROA_VALUE), getequiprandomoption(.slots[.@a],1,ROA_VALUE), getequiprandomoption(.slots[.@a],2,ROA_VALUE), getequiprandomoption(.slots[.@a],3,ROA_VALUE), getequiprandomoption(.slots[.@a],4,ROA_VALUE); change getitem2 to getitem3 getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) , 1, 1, .@refine, 0, .@card[1], .@card[2], .@card[3], .@card[4],.@optID, .@optVal, 0; -
That's missing sprite or act. You need to update your client data.
-
Try this if ( getcharid(1) ) { getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { .@partymemberaid[.@c] = $@partymemberaid[.@i]; .@c++; } } if (rand(100) < .chance) getitem .p_rwd[0], .p_rwd[1], .@partymemberaid[ rand( .@c ) ]; announce "[ System ] : Player ["+ strcharinfo(0) +"] of party ["+ strcharinfo(1) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" at "+ strcharinfo(3), bc_all; } to if ( getcharid(1) ) { getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { .@partymemberaid[.@c] = $@partymemberaid[.@i]; .@c++; } } if (rand(100) < .chance){ L_DoItAgain: .@sumC = rand(.@c); if(strcharinfo(3,.@partymemberaid[.@sumC])==.t_maps$[.@a]){ getitem .p_rwd[0], .p_rwd[1], .@partymemberaid[.@sumC]; }else goto L_DoItAgain; } announce "[ System ] : Player ["+ strcharinfo(0) +"] of party ["+ strcharinfo(1) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" at "+ strcharinfo(3), bc_all; } Not sure it's working but you can try.
-
Can't keep refine, cards and enchants after evolve
Start_ replied to Rizta's question in Scripting Support
Simply try to change setarray .@card[1], getequipcardid ( .slots[.@a], 0 ), getequipcardid ( .slots[.@a], 1 ), getequipcardid ( .slots[.@a], 2 ), getequipcardid ( .slots[.@a], 3 ); .@refine = getequiprefinerycnt (.slots[.@a]); delitem .@e, 1; getitem2 getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) , 1, 1, .@refine, 0, .@card[1], .@card[2], .@card[3], .@card[4];//.@Oid, .@Oval, .@Opam; to .@cardSlot1 = getequipcardid(.slots[.@a],0); .@cardSlot2 = getequipcardid(.slots[.@a],1); .@cardSlot3 = getequipcardid(.slots[.@a],2); .@cardSlot4 = getequipcardid(.slots[.@a],3); .@refine = getequiprefinerycnt (.slots[.@a]); dispbottom "Card slot 1: "+.@cardSlot1+""; dispbottom "Card slot 2: "+.@cardSlot2+""; dispbottom "Card slot 3: "+.@cardSlot3+""; dispbottom "Card slot 4: "+.@cardSlot4+""; dispbottom "Refine: "+.@refine+""; delitem .@e, 1; getitem2 getd(".a1"+.@w+"_"+(.@id+1)),1,1,.@refine,0,.@cardSlot1,.@cardSlot2,.@cardSlot3,.@cardSlot4; And see what happen. if card doesn't had value then you need to change above code. -
You need to enable VIP System in src. There are no official NPC of VIP NPC, You need to install VIP NPC Scripts from rAthena Download zone. Group ID you can handle it with your own scripts.
-
This happen to specific characters or everyone? If it's specific, Maybe this error came up along with map server crash. ( Sometime ) Map server crash > That character will be continue buggy > pick any item > map server showing error. Try to clean up db and update server to lastest version.
-
Thanks rAthena!
-
alb2trea mapflag nightenabled Change to your new maps.
-
Use 20151104 EXE Client Date will helped you from Error popup. ( Can be continue playing without freezing screen from error popup )
-
My solve is Clean Solution > Set build option to Debug > Build > Clean > Set build option to Release > Build
-
db > re > skill_db.txt // 13 maxcount: max amount of skill instances to place on the ground when // player_land_skill_limit/monster_land_skill_limit is enabled. For skills // that attack using a path, this is the path length to be used. Find Fire Pillar then change it to you wish. db > re > skill_unit_db.txt Find Fire Pillar then change flag to stackable.
-
Or you can use this Dress Changer : https://www.facebook.com/pg/secretroservice/shop/
-
npc > script_custom.conf // -- Warper that works only after locations are unlocked //npc: npc/custom/etc/quest_warper.txt