MikZ
Members-
Content Count
461 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Staff Applications
Calendar
Everything posted by MikZ
-
Try changing the currency.
-
Used this npc/custom/quests/quest_shop.txt //===== Hercules Script ====================================== //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6a //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.2 Added category support. //= 1.3 More options and fixes. //= 1.4 Added debug settings. //= 1.5 Replaced categories with shop IDs. //= 1.6 Added support for purchasing stackables. //= 1.6a Added support for previewing costumes and robes. //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ prontera,164,203,6 script Quest Shop#1 4_M_MOCASS2,{ callfunc "qshop"; } // Script Core //============================================================ - script quest_shop FAKE_NPC,{ function Add; function Chk; function Slot; function A_An; OnInit: freeloop(1); // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"#CASHPOINTS","Cash Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Headgears","Weapons","Other"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- Add(1,5022,1,0,0,7086,1,969,10,999,40,1003,50,984,2); Add(1,5032,1,0,0,1059,250,2221,1,2227,1,7063,600); Add(1,5027,1,0,0,2252,1,1036,400,7001,50,4052,1); Add(1,5045,1,0,0,2252,1,1054,450,943,1200); Add(2,1224,1,0,0,7297,30,969,10,999,50,714,10); Add(2,1225,1,0,0,7292,30,969,10,999,50,714,10); Add(3,531,1,3,0,512,1,713,1); Add(3,532,1,3,0,513,1,713,1); Add(3,533,1,3,0,514,1,713,1); Add(3,534,1,3,0,515,1,713,1); // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) { set .menu$, .menu$+.Shops$[.@i]+":"; npcshopdelitem "qshop"+.@i,909; } end; OnMenu: set .@size, getarraysize(@i); if (!.@size) set .@i, select(.menu$); else if (.@size == 1) set .@i, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set .@i, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[.@i] == "") { message strcharinfo(PC_NAME),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"+.@i,1; npcshopattach "qshop"+.@i; end; OnBuyItem: // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray .@q[3],getd(".q_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(PC_NAME),"You can't purchase that many "+getitemname(.@q[0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000"; if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000"; if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000"; next; setarray @qe[1], getiteminfo(.@q[0], ITEMINFO_LOC), getiteminfo(.@q[0], ITEMINFO_VIEWSPRITE); if (@qe[2] > 0 && ((@qe[1] & EQP_HEAD_LOW) || (@qe[1] & EQP_HEAD_TOP) || (@qe[1] & EQP_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_TOP) || (@qe[1] & EQP_COSTUME_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_LOW) || (@qe[1] & EQP_GARMENT) || (@qe[1] & EQP_COSTUME_GARMENT))) set .@preview,1; addtimer 1000, strnpcinfo(NPC_NAME)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+ getitemname(.@q[0]) +"^000000", ((.@preview && !@qe[7])?" ~ Preview...": ""), " ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[2])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[2] * getiteminfo(.@q[0], ITEMINFO_WEIGHT)) + Weight - MaxWeight) / 10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[4]) Zeny -= (.@q[4]*.@q[1]); if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]); if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]*.@q[1]; getitem .@q[0],.@q[2]; if (.Announce) announce strcharinfo(PC_NAME)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):A_An(getitemname(.@q[0])))+"!",0; specialeffect(EF_FLOWERLEAF, AREA, playerattached()); close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1; if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2]; else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2]; else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2]; else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; function Add { if (getitemname(getarg(1)) == "null") { consolemes(CONSOLEMES_WARNING, "Quest reward #"+getarg(1)+" invalid (skipped)."); return; } setarray .@j[0],getarg(2),getarg(3),getarg(4); for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) { if (getitemname(getarg(.@i)) == "null") { consolemes(CONSOLEMES_WARNING, "Quest requirement #"+getarg(.@i)+" invalid (skipped)."); return; } else setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1); } copyarray getd(".q_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0), ITEMINFO_TYPE) == IT_WEAPON || getiteminfo(getarg(0), ITEMINFO_TYPE) == IT_ARMOR) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } function A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); return "a "+getarg(0); } } function script qshop { deletearray @i[0],getarraysize(@i); for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) set @i[.@i],getarg(.@i); doevent "quest_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 FAKE_NPC,909:-1 - shop qshop2 FAKE_NPC,909:-1 - shop qshop3 FAKE_NPC,909:-1 - shop qshop4 FAKE_NPC,909:-1 - shop qshop5 FAKE_NPC,909:-1
-
Hi @Patskie, yes I am duplicating it. alberta,25,240,6 duplicate(Healer) Healer#alb 4_PORING aldebaran,135,118,6 duplicate(Healer) Healer#alde 4_PORING amatsu,200,79,4 duplicate(Healer) Healer#ama 4_PORING ayothaya,207,169,6 duplicate(Healer) Healer#ayo 4_PORING comodo,184,158,6 duplicate(Healer) Healer#com 4_PORING einbech,57,36,6 duplicate(Healer) Healer#einbe 4_PORING einbroch,57,202,6 duplicate(Healer) Healer#einbr 4_PORING geffen,115,72,6 duplicate(Healer) Healer#gef 4_PORING gonryun,156,122,6 duplicate(Healer) Healer#gon 4_PORING hugel,89,150,6 duplicate(Healer) Healer#hug 4_PORING izlude,125,118,5 duplicate(Healer) Healer#izl 4_PORING jawaii,250,139,4 duplicate(Healer) Healer#jaw 4_PORING lighthalzen,152,100,6 duplicate(Healer) Healer#lhz 4_PORING louyang,226,103,4 duplicate(Healer) Healer#lou 4_PORING manuk,272,144,6 duplicate(Healer) Healer#man 4_PORING mid_camp,203,289,6 duplicate(Healer) Healer#mid 4_PORING moc_ruins,72,164,4 duplicate(Healer) Healer#moc 4_PORING morocc,153,97,6 duplicate(Healer) Healer#mor 4_PORING moscovia,220,191,4 duplicate(Healer) Healer#mos 4_PORING niflheim,212,182,5 duplicate(Healer) Healer#nif 4_PORING payon,179,106,4 duplicate(Healer) Healer#pay 4_PORING prontera,163,185,4 duplicate(Healer) Healer#prt 4_PORING rachel,125,116,6 duplicate(Healer) Healer#rac 4_PORING splendide,201,153,4 duplicate(Healer) Healer#spl 4_PORING thor_camp,249,74,4 duplicate(Healer) Healer#thor 4_PORING umbala,105,148,3 duplicate(Healer) Healer#umb 4_PORING veins,217,121,4 duplicate(Healer) Healer#ve 4_PORING xmas,143,136,4 duplicate(Healer) Healer#xmas 4_PORING yuno,164,45,4 duplicate(Healer) Healer#yuno 4_PORING // Duplicates (Renewal) //============================================================ brasilis,194,221,6 duplicate(Healer) Healer#bra 4_PORING dewata,195,187,4 duplicate(Healer) Healer#dew 4_PORING dicastes01,201,194,4 duplicate(Healer) Healer#dic 4_PORING ecl_in01,45,60,4 duplicate(Healer) Healer#ecl 4_PORING malangdo,132,114,6 duplicate(Healer) Healer#mal 4_PORING malaya,205,205,6 duplicate(Healer) Healer#ma 4_PORING mora,55,152,4 duplicate(Healer) Healer#mora 4_PORING
-
8>ExtendedBG.c 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(2084,13): error C2039: 'skillitem': is not a member of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(187): message : see declaration of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(4052,37): error C2039: 'skillitem': is not a member of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(187): message : see declaration of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(4089,11): error C2039: 'skillitem': is not a member of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(187): message : see declaration of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(4102,6): error C2039: 'skillitem': is not a member of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(187): message : see declaration of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(4102,22): error C2039: 'skillitemlv': is not a member of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(187): message : see declaration of 'map_session_data' 8>D:\games\SQL\Hercules-stable\src\plugins\ExtendedBG.c(5466,19): error C2039: 'autocast': is not a member of '<unnamed-tag>' 8>D:\games\SQL\Hercules-stable\src\map\pc.h(198): message : see declaration of '<unnamed-tag>' 8>Done building project "ExtendedBG.vcxproj" -- FAILED. Someone please help. willing to pay if not that much. thanks!
-
Good day! I know i have been requesting for several times now. But again, may i request to clean this DOTA PVP script I kept getting error player not attached on it. Here's the script.
-
Good day! May I request to clean my script. I kept getting infinity loop error despite placing freeloop(true/false) Please help me. thanks! Here's the script. //===== Hercules Script ====================================== //= Healer //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.2 //===== Description: ========================================= //= Basic healer script. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.1 Aligned coordinates with @go. //= 1.2 Fix variables and character stuck at healing //============================================================ function script H_VIPBuff { query_sql( "SELECT CAST( `vip` AS DATE ),DATEDIFF( IFNULL(`vip`,NOW()),NOW() ), TIMESTAMPDIFF(SECOND, NOW(), `vip`) FROM `login` WHERE `account_id` = "+getcharid(3)+" LIMIT 1", .@vip_date$, .@day, .@vip_second); if ( .@day > 0 || .@vip_second > 0) { return true; end; } return false; } - script Healer FAKE_NPC,{ .@price = 0; // Zeny required for heal .@Buffs = 1; // Also buff players? (1: yes / 0: no) .@Delay = 2; // Heal delay, in seconds if (@HD > gettimetick(2)) end; if (.@price) { message strcharinfo(PC_NAME),"Healing costs "+.@price+" Zeny."; if (Zeny < .@price) end; if(select("^0055FFHeal^000000", "^777777Cancel^000000") == 2) close; Zeny -= .@price; } specialeffect(EF_HEAL2, AREA, playerattached()); percentheal 100,100; if (callfunc ("H_VIPBuff")) { sc_end SC_STONE; sc_end SC_FREEZE; sc_end SC_STUN; sc_end SC_SLEEP; sc_end SC_POISON; sc_end SC_CURSE; sc_end SC_SILENCE; sc_end SC_CONFUSION; sc_end SC_BLIND; sc_end SC_BLOODING; sc_end SC_DPOISON; sc_end SC_FEAR; sc_end SC_COLD; sc_end SC_BURNING; sc_end SC_DEEP_SLEEP; sc_end SC_DEC_AGI; sc_end SC_BROKENARMOR; sc_end SC_BROKENWEAPON; sc_end SC_NOEQUIPWEAPON; sc_end SC_NOEQUIPSHIELD; sc_end SC_NOEQUIPARMOR; sc_end SC_NOEQUIPHELM; sc_end SC__STRIPACCESSARY; sc_end SC_PROPERTYUNDEAD; sc_end SC_ORCISH; sc_end SC_BERSERK; sc_end SC_SKE; sc_end SC_SWOO; sc_end SC_SKA; sc_end SC_SLOWDOWN; sc_end SC_FROSTMISTY; sc_end SC_ILLUSION; sc_end SC_BITESCAR; //sc_start SC_CASH_PLUSEXP,.exp_bonus_duration,.bonus_vip_exp_rate; //sc_start SC_CASH_RECEIVEITEM,.bonus_duration,.bonus_vip_drop_rate; specialeffect(EF_INCAGILITY, AREA, playerattached()); sc_start SC_INC_AGI,240000,10; specialeffect(EF_BLESSING, AREA, playerattached()); sc_start SC_BLESSING,240000,10; specialeffect(EF_KYRIE, AREA, playerattached()); sc_start SC_KYRIE, 120000, 3; specialeffect( EF_IMPOSITIO, AREA, playerattached()); sc_start SC_IMPOSITIO, 60000, 3; specialeffect(EF_GLORIA, AREA, playerattached()); sc_start SC_GLORIA, 30000, 3; if( getbrokenid(1) ) repairall; getinventorylist; while( .@i < @inventorylist_count ){ getinventorylist; freeloop(true); for( .@i = 0; .@i < @inventorylist_count; .@i++ ) { if ( @inventorylist_identify[.@i] == 1 ) continue; else if ( getskilllv(MC_IDENTIFY) == 1 && Sp >= 10 ) heal 0,0; // lol... this is supposed to reduce their SP by 10, whatever else if ( countitem(Spectacles) ) delitem Spectacles,1; else if ( getskilllv(RG_COMPULSION) && Zeny >= ( 100 - ( 5 + 4 * getskilllv(RG_COMPULSION) ) )* 2/5 ) Zeny -= ( 100 - ( 5 + 4 * getskilllv(RG_COMPULSION) ) )* 2/5; else if ( getskilllv(MC_DISCOUNT) && Zeny >= ( 100 - ( 5 + 2 * getskilllv(MC_DISCOUNT) ) )* 2/5 ) Zeny -= ( 100 - ( 5 + 2 * getskilllv(MC_DISCOUNT) ) )* 2/5; else if ( Zeny >= 40 ) Zeny -= 40; else break; delitem2 @inventorylist_id[.@i], 1, 0, @inventorylist_refine[.@i], @inventorylist_attribute[.@i], @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; getitem2 @inventorylist_id[.@i], 1, 1, @inventorylist_refine[.@i], 0, @inventorylist_card1[.@i], @inventorylist_card2[.@i], @inventorylist_card3[.@i], @inventorylist_card4[.@i]; .@icount++; } freeloop(false); if ( .@icount ) message strcharinfo(0), "Identified "+ .@icount +" Items."; } } else { if (.@Buffs) { specialeffect(EF_INCAGILITY, AREA, playerattached()); sc_start SC_INC_AGI,240000,5; specialeffect(EF_BLESSING, AREA, playerattached()); sc_start SC_BLESSING,240000,5; } if (.@Delay) @HD = gettimetick(2)+.@Delay; end; } }
-
Good day! May I know if this is bug, at some point pecopeco head band only give +1 asp in stat if you reach 185 aspd but below 180 aspd it give you +2. Cant reach the 190 aspd. Can someone please confirm or explain why? Here's the item and script i am running pre-renewal server. already diable renewal aspd. bonus bSpeedRate,25; bonus bAspdRate,5; bonus bVariableCastrate,5;
-
I'm using 20141022, this is my problem. I really don't know any from src and got gepard. I think i mixed my update.
-
Good day! Since I upgraded to latest git, i am getting tons of error. Is this an error from the latest git or I made a wrong update?
-
Up please. Can Some one help me. It sometimes crash the MAP-SERVER
-
Good day! May I request help, I don't know how to get rid of these error. I am running PRE-RE but im getting error for RENEWAL MONSTER THAT are not included in the script. Please help me. thanks! Script: prontera,164,165,4 script MVP Checker::convex 2_BULLETIN_BOARD,{ for( .@i = 0; .@i < getarraysize( $MVP_MobID ); .@i++ ) { if($MVP_Status[.@i] == 2){ .status$[.@i] = "^008000ALIVE^000000"; } else .status$[.@i] = "^ff0000DEAD^000000"; mes ""+getmonsterinfo($MVP_MobID[.@i],MOB_NAME)+"" + "^000000 (^008080" + $MVP_Maps$[.@i] + "^000000) "+.status$[.@i]+""; } close; OnNPCKillEvent: if( getmonsterinfo(killedrid, MOB_MVPEXP) > 0 ) for( set .@i,0; .@i < getarraysize($MVP_MobID); set .@i, .@i+1 ) { if( (killedrid == $MVP_MobID[.@i]) && (strcharinfo(3) == $MVP_Maps$[.@i])) { $MVP_Status[.@i] = 1; $MVP_TimeStamp[.@i] = gettimetick(2); } } end; OnInit: setarray $MVP_MobID[0], 1511,1785,1785,1785,1785,1785,1039,1272,1272,1719, 1046,1046,1389,1112,1115,1115,1418,1252,1768,1086, 1885,1832,1734,1688,1373,1147,1147,1059,1150,1087, 1087,1190,1038,1157,1159,1623,1492,1251,1583,1312, 1751,1685,1630,1871,1873,1658; setarray $MVP_Maps$[0],"moc_pryd06","ra_fild02","ra_fild03","ra_fild04","ve_fild01","ve_fild02","prt_maze03","gl_chyard","gld_dun04","abyss_03", "gef_dun02","gld_dun02","gef_dun01","treasure02","gld_dun01","pay_fild11","gon_dun03","xmas_fild01","ra_san05","prt_sewb4", "mosk_dun03","thor_v03","kh_dun02","ayo_dun02","niflheim","gld_dun03","anthell02","mjolnir_04","pay_dun04","gef_fild02", "gef_fild14","gef_fild10","moc_pryd04","in_sphinx5","moc_fild17","ein_dun02","ama_dun03","xmas_dun02","beach_dun","tur_dun04", "odin_tem03","jupe_core","lou_dun03","abbey02","abbey03","lhz_dun02"; setarray $MVP_ResTime[0],60,240,180,300,180,360,120,60,480,180, 120,480,60,120,480,120,94,120,300,60, 120,660,120,420,91,480,120,120,60,1440, 60,120,60,60,120,125,91,60,300,60, 480,120,117,120,730,120; //Respawn only undead MVP's on server start or reload for( set .@i,0; .@i < getarraysize($MVP_MobID); set .@i, .@i+1 ) { //check whether MPV is alive or $MVP_Status variable is not yet set. //1 - Dead, 2 - Alive if ( $MVP_Status[.@i] == 2 || $MVP_Status[.@i] == 0 || $MVP_TimeStamp[.@i] == 0 ) { //monster $MVP_maps$[.@i],0,0,"--ja--",$MVP_MobID[.@i],1; $MVP_Status[.@i] = 2; } else { // don't respawn MVP and wait for next spawn time $MVP_Status[.@i] = 1; } } startnpctimer; OnTimer60000: //check every 60 seconds for( set .@i,0; .@i < getarraysize($MVP_MobID); set .@i, .@i+1 ) { set .@time, $MVP_ResTime[.@i]*60; if( ($MVP_TimeStamp[.@i] + .@time) <= gettimetick(2) && $MVP_Status[.@i] == 1 ) { //monster $MVP_Maps$[.@i],0,0,"--ja--",$MVP_MobID[.@i],1; //Defines last respawn $MVP_TimeStamp[.@i] = gettimetick(2); $MVP_Status[.@i] = 2; } } setnpctimer 0; end; }
-
Yes, I am sure. because what I did is just extract my.grf then use the data. Which folder should I check? By the way I am patching file as ASCII, would it affect?
-
I tried locating the monster but I can't find that sprite. even downloading the latest KRO. data.grf and rdata.grf I cant find that sprite name. Where can I also locate it in my folder to change it?
-
Do you have idea why my client crashed If I use my .grf my client crashes and have these sprite error but if I just use the data folder works fine. 00# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.act [266 ms] 01# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.act [266 ms] 02# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.spr [266 ms] 03# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.spr [266 ms] Client crashed. 1=my.grf 2=palletes.grf 3=data.grf 4=rdata.grf Vs 1=data (consisting all in my.grf) 2=palletes.grf 3=data.grf 4=rdata.grf
-
up please. Already updated to latest GIT
-
Good day! I am getting this error. was this known issue?
-
Good day Master Scripters! Please help me how to make this accurate, script say red(DeadMVP) but upon checking in MAP MVP is ALIVE and KICKING. // https://www.eathena.ws/board/index.php?&act=attach&type=post&id=5866 //===== eAthena Script ======================================= //= Super Convex Mirror //===== By: ================================================== //= Brian //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= //= Detects if every MVP is alive or dead. //===== Additional Comments: ================================= //= http://www.eathena.ws/board/index.php?showtopic=242050 //============================================================ geffen,140,173,5 script MVP Checker::convex 882,{ for( .@i = 0; .@i < getarraysize( .mvp_name$ ); .@i++ ) { switch (.@i) { case 42: .@alive = ( $@thana_summon < 6 || mobcount( "thana_boss", "#Death::OnThanaDead" ) ); break; default: .@alive = mobcount( .mvp_map$[.@i], "" ); break; } if ( .display_type == 2 ) .@menu$ = .@menu$ + ( ( .@alive ) ? "^008000" : "^FF0000" ) + .mvp_name$[.@i] + "^000000 (" + .mvp_map$[.@i] + "):"; else if ( .display_type == 1 ) mes ( ( .@alive ) ? "^FF0000" : "^008000" ) + .mvp_name$[.@i] + "^000000 (" + .mvp_map$[.@i] + ")"; } if ( .display_type == 1 ) close; .@num = select( .@menu$ ) - 1; if (.warp_to_mvp == 1) warp .mvp_map$[.@num],0,0; else if(.warp_to_mvp == 2) { sleep2 1000; sc_start SC_BOSSMAPINFO,600000,0; } end; OnInit: // 0 = disabled, 1 = enabled, 2 = enabled + SC_BOSSMAPINFO .warp_to_mvp = 0; setarray .mvp_map$, "moc_pryd06","ra_fild03","ra_fild04","ve_fild01","ve_fild02", "lou_dun03","prt_maze03","abbey03", "gl_chyard","abyss_03","gef_dun02","gef_dun01","treasure02", "pay_fild10","gon_dun03","abbey02","xmas_fild01","ra_san05", "prt_sewb4","mosk_dun03","thor_v03","ama_dun03", "kh_dun02","ayo_dun02","niflheim","anthell02", "mjolnir_04","pay_dun04","gef_fild03","gef_fild10", "moc_pryd04","in_sphinx5","moc_fild17","ein_dun02","xmas_dun02", "beach_dun","thana_boss","tur_dun04","odin_tem03", "jupe_core","lhz_dun02"; setarray .mvp_name$, "AmonRa","Atroce","Atroce","Atroce","Atroce", "Bacsojin","Baphomet","Beelzebub", "DarkLord","Detale","Doppelganger","Dracula","Drake", "Eddga","EvilSnakeLord","FallenBishop","Garm","GloomUnderNight", "GoldenThiefBug","Gopinich","Ifrit","IncantationSamurai", "KielD01","LadyTanee","LordofDeath","Maya", "Mistress","MoonlightFlower","OrcHero","OrcLord", "Osiris","Pharaoh","Phreeoni","RSX0806","Stormy Knight", "TaoGunka","Thanatos","TurtleGeneral","ValkyrieRandgris", "Vesper","Ygnizem"; .display_type = 1; if( .warp_to_mvp > 0 ) .display_type = 2; end; }
-
Good day! For clarification is it necessary to have @reloadmobdb in floating rate? I am only changing the exp rate and not the drop rate. Thanks! - script WeekFloatingRates -1,{ OnInit: set $@brate,rand(15000,25000); set $@jrate,rand(15000,25000); OnMon1100: OnMon2300: OnTue0600: OnTue1500: OnWed0000: OnWed1000: OnWed1900: OnThu0200: OnThu1200: OnThu2100: OnFri0600: OnFri1500: OnFri2300: setbattleflag "base_exp_rate", 10000; setbattleflag "job_exp_rate", 10000; atcommand "@reloadmobdb"; announce "Bonus Happy Hour Experience has ended.",bc_all,0x00FFFF; end; OnMon0600: OnMon1800: OnTue0200: OnTue1100: OnTue2000: OnWed0400: OnWed1400: OnWed2300: OnThu0600: OnThu1600: OnFri0000: OnFri1100: OnFri1900: setbattleflag "base_exp_rate", $@brate; setbattleflag "job_exp_rate", $@jrate; announce "Happy Hour Experience bonus has just started! Check @rates for rate info!!",bc_all,0x00FFFF; end; }
-
Good day! May I know what spr and act is this? I can't seem to find in data.grf and rdata.grf. thanks! 00# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.act [266 ms] 01# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.act [266 ms] 02# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.spr [266 ms] 03# [FAIL] sprite\¸ó½ºÅÍ\Ãʺ¸ÀÚ.spr [266 ms]
-
Good day! May I request to place weekly reward of Top 10 players in this PVP ladder by @AnnieRuru. and can also view previous weeks ranking. please tnx.
-
Will check on this. once i do server maintenance. Yes have gepard modification. Just don't know on the array thing.
-
sorry but i really cant understand. please help me with it. The error is on this part. if ( inarray( .@unique_id, get_unique_id() ) == -1 ) {
-
Good day! I need it has something to do with this but honestly I really cant understand it. tried everything. Please help me. - script WoE Reward FAKE_NPC,{ OnAgitEnd: callsub S_AgitEnd, 0, 20; OnAgitEnd2: callsub S_AgitEnd, 20, 30; S_AgitEnd: .@start = getarg(0); .@end = getarg(1); for ( .@i = .@start; .@i < .@end; ++.@i ) { .@guild_id = getcastledata( .castle$[.@i], CD_GUILD_ID ); if ( .@guild_id ) { deletearray .@unique_id; getguildmember .@guild_id, 1; getguildmember .@guild_id, 2; for ( .@j = 0; .@j < $@guildmembercount; ++.@j ) { if ( isloggedin( $@guildmemberaid[.@j], $@guildmembercid[.@j] ) ) { attachrid $@guildmemberaid[.@j]; if ( inarray( .@unique_id, get_unique_id() ) == -1 ) { dispbottom "Reward given for conquered "+ getcastlename(.castle$[.@i]) +"("+ .castle$[.@i] +")"; getitem 31509, 1; getitem 12103, 1; getitem 16770, 1; getitem 6380, 15; getitem 31510, 1; .@unique_id[ getarraysize(.@unique_id) ] = get_unique_id(); } } } } } end; OnInit: setarray .castle$[0], "aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05", "gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05", "payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05", "prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05", "arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05", "schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05"; end; }
-
Yes, will try again next update. I don't know why. I just copy paste your snippet. Will get back to you. thanks!