-
Posts
21 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by skyroofficial
-
Hi again ! I might ask as the title says.. Can a script or anything that could make any item created by a gm become un-trade/drop-able ? Thanks alot for the answers !
-
VIP Buff Command when have item
skyroofficial replied to skyroofficial's question in Script Requests
hi ! sorry for the late replies. tested .. but it didnt work -
So, hi again I would like to request an npc that looks like this If the player have this item 32508 , they can use command @vipbuff and also, if the player have vip status (group_id 5 as default on SQL) , they also can use command @vvipbuff Thanks for the replies !
-
omg thanks again !
-
yep . already solved it few hours ago and thus.. theres this one left
-
yes but you know.. there are alot.. lots of the list on the logs.. so thats why i tried to make a separate logs just to monitor those specified items in that specified npc that i made anyways , thanks for the reply tho
-
So i've made the script on THIS POST that have been helped by @Emistry and @Mephisto and i tried to modify them also.. and then i start trying to make a log on SQL .. but they didnt work So this is the script i have modified ( well.. i cut to the point on the errors ) .@count_20450 = countitem( 20450 ); delitem 20450, .@count_20450; getitem 32502, ( .@count_20450 * 10 ); .@count_32171 = countitem( 32171 ); delitem 32171, .@count_32171; getitem 32502, ( .@count_32171 * 7 ); mes "Exchanged "+.@count_20450+"x "+getitemname( 20450 )+" to "+( .@count_20450 * 10 )+"x "+getitemname( 32502 ); mes "Exchanged "+.@count_32171+"x "+getitemname( 32171 )+" to "+( .@count_32171 * 7 )+"x "+getitemname( 32502 ); close; OnInit: query_sql "CREATE TABLE IF NOT EXISTS `returned` (`code` TINYTEXT NOT NULL, `item_id` INT NOT NULL, `item_amount` INT NOT NULL, INDEX `code` (`code`(32)) ) ENGINE=MyISAM"; } Oh, and also.. the NPC need to make them to type " YES " before the script runs.. how do i put them ? Any helps ? XD
-
oh thanks i'll try xD and again.. thanks @Emistry ! well for the warning also xD
-
Woah.. thanks ! will try this ! i'll info them shortly xD So ive tested . and the npc didnt appear somehow
-
Hi ! so i would like to request a script.. if masters wouldnt mind xD so the scripts like this Any helps ? XD Thanks for the answers !
-
Need Help ! Giving Item to All players
skyroofficial replied to skyroofficial's question in Scripting Support
@Litro Endemic Thanks alot ! XD its dem sexy ikr .. ! anyways thanks @Technoken -
Need Help ! Giving Item to All players
skyroofficial replied to skyroofficial's question in Scripting Support
Hi @Technoken . Sorry for the late response.. I do as your say, but its not working . i get this error when i tried to sent an item to all users Any helps? -
// usage : // [npc:Sample]map#512#10 // [npc:Sample]all#512#123 - script Sample -1,{ OnWhisperGlobal: if( getgmlevel() >= 99 ){ // check map if( @whispervar0$ == "all" ) set .@type$,""; else if( @whispervar0$ == "map" ) set .@type$,strcharinfo(3); else { dispbottom "Error, pick 'map' or 'all' "; end; } // check item set .@itemid,atoi( @whispervar1$ ); set .@amount,atoi( @whispervar2$ ); if( getitemname( .@itemid ) == "null" || .@amount < 1 ){ dispbottom "Enter valid item id and amount."; } set .@self_id,getcharid(3); query_sql( "SELECT COUNT(`account_id`) FROM `char` WHERE `online` = 1 ", .@total ); while( .@count < .@total ){ query_sql( "SELECT `account_id`,`name` FROM `char` WHERE `online` = 1 ORDER BY `account_id` LIMIT 128 OFFSET "+.@offset, .@aid,.@name$ ); set .@i,0; set .@size,getarraysize( .@aid ); while( .@i < .@size ){ if( .@aid[.@i] != .@self_id ){ if( .@type$ != "" ){ getmapxy( .@map$,.@x,.@y,0,.@name$[.@i] ); if( .@map$ == .@type$ ){ getitem .@itemid,.@amount,.@aid[.@i]; set .@gave,.@gave + 1; } }else{ getitem .@itemid,.@amount,.@aid[.@i]; set .@gave,.@gave + 1; } } set .@count,.@count + 1; set .@i,.@i + 1; } set .@offset,.@offset + .@size; deletearray .@aid,.@size; deletearray .@name$,.@size; } dispbottom "Gave "+.@amount+" x "+getitemname( .@itemid )+" to "+.@gave+" Player(s)."; } end; } So i use this script to give all players items . But this script give rewards to all players online ( include afk , vending, idle, or create chat room ) how to exclude the AFK , Vending, Idle , or Creating Chat Room ( which is still considered afk ) to not get the rewards ? Thank you for the helps !
-
OMG i didnt see you xDD this also works like a charm ! Thanks <3
-
Sorry abit late response but... Thank you soo much
-
So i tested a 'separated' pvp room This is my script i using on the pvp room prontera,163,152,3 script PvP Battle Room#01::pvparena 810,{ waitingroom "PVP Room",0; mes "[PvP Battle Room]"; mes "Pilih Ruangan"; menu "All Class [" + getmapusers("pvp_y_1-2") + "]",pvp1, "Non Donate [" + getmapusers("pvp_n_8-5") + "]",spvp, "Trans Class [" + getmapusers("guild_vs1") + "]",pvp2, "Guild vs Guild [" + getmapusers("guild_vs3") + "]",gvg1, "Novice [" + getmapusers("guild_vs2") + "]",novc; pvp1: warp "pvp_y_1-2",0,0; announce ""+ strcharinfo(0) +" Has Entered The PVP Room.",bc_all; close; gvg1: warp "",0,0; announce ""+ strcharinfo(0) +" Has Entered The GVG Room.",bc_all; close; pvp2: if(Class >= 4008 && Class <= 4021){ warp "guild_vs1",0,0; announce ""+ strcharinfo(0) +" Has Entered The PVP Room Trans Class.",bc_all; close; } mes "Trans Class Only."; close; spvp: warp "pvp_n_8-5",0,0; announce ""+ strcharinfo(0) +" Has Entered The PVP Room Non Donate.",bc_all; close; novc: if (Class != 0) goto nchamp; warp "guild_vs2",0,0; announce ""+ strcharinfo(0) +" Has Entered The PVP Room Novice.",bc_all; close; nchamp: next; mes "[PvP Warper]"; mes "You're not a Novice."; close; } //Mapflag guild_vs1 mapflag pvp guild_vs1 mapflag nocommand 90 pvp_y_1-2 mapflag nocommand 90 guild_vs3 mapflag gvg guild_vs3 mapflag nocommand 90 guild_vs2 mapflag pvp guild_vs2 mapflag nocommand 90 //==================================================================================== ///Duplicates morocc,152,94,0 duplicate(pvparena) PvP Battle Room#2 810 geffen,127,63,0 duplicate(pvparena) PvP Battle Room#3 810 alberta,114,64,0 duplicate(pvparena) PvP Battle Room#5 810 izlude,123,147,0 duplicate(pvparena) PvP Battle Room#6 810 aldebaran,134,113,0 duplicate(pvparena) PvP Battle Room#7 810 xmas,141,127,0 duplicate(pvparena) PvP Battle Room#8 810 comodo,194,158,0 duplicate(pvparena) PvP Battle Room#9 810 yuno,150,184,0 duplicate(pvparena) PvP Battle Room#10 810 amatsu,101,143,0 duplicate(pvparena) PvP Battle Room#11 810 gonryun,152,114,0 duplicate(pvparena) PvP Battle Room#12 810 umbala,126,137,0 duplicate(pvparena) PvP Battle Room#13 810 louyang,214,106,0 duplicate(pvparena) PvP Battle Room#14 810 ayothaya,154,116,0 duplicate(pvparena) PvP Battle Room#15 810 einbroch,68,203,0 duplicate(pvparena) PvP Battle Room#16 810 lighthalzen,150,91,0 duplicate(pvparena) PvP Battle Room#17 810 jawaii,206,208,0 duplicate(pvparena) PvP Battle Room#18 810 hugel,99,161,4 duplicate(pvparena) PvP Battle Room#19 810 rachel,123,142,0 duplicate(pvparena) PvP Battle Room#20 810 veins,211,119,0 duplicate(pvparena) PvP Battle Room#21 810 brasilis,191,185,0 duplicate(pvparena) PvP Battle Room#22 810 dewata,191,185,0 duplicate(pvparena) PvP Battle Room#23 810 dicastes01,199,194,0 duplicate(pvparena) PvP Battle Room#24 810 malangdo,200,149,0 duplicate(pvparena) PvP Battle Room#25 810 malaya,271,364,0 duplicate(pvparena) PvP Battle Room#26 810 mora,121,113,0 duplicate(pvparena) PvP Battle Room#27 810 splendide,191,152,0 duplicate(pvparena) PvP Battle Room#28 810 eclage,277,289,0 duplicate(pvparena) PvP Battle Room#29 810 moscovia,217,193,0 duplicate(pvparena) PvP Battle Room#30 810 louyang,91,245,0 duplicate(pvparena) PvP Battle Room#31 810 moscovia,173,77,0 duplicate(pvparena) PvP Battle Room#32 810 manuk,292,181,0 duplicate(pvparena) PvP Battle Room#33 810 But i want to separate the Donators Room and Non-Donators room with these items 20450 32171 32422 32423 32424 32440 32441 32442 32210 32214 32202 1 . Where i should put them ? 2. Im getting annoyed with the Since its show error like this Cant it be like.. give password to the room ? so it wont show the errors on console? XD Thanks for the answers ! and btw.. im using rAthena v45 if needed
-
aaaaaaaaaaaaahhhhhhhhh so that one Thanks alot @Technoken !!
-
Heres the error the git hash
-
im using version 45 i just 'cut' to the point of the full questboard scripts , since when i run the emulator i got errors on adding quests part If needed .. this is my full questboard script //===== rAthena Script ======================================= //= tr0n's Questboard //===== By: ================================================== //= tr0n //===== Current Version: ===================================== //= 1.6.5 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= Easily add collection and hunting quests. //===== Additional Comments: ================================= // 1.0.0 Release // 1.1.0 Added zeny reward // 1.2.0 Rewrote checkmob and killcounter // 1.3.1 Added level restriction // 1.3.4 Added Reward Item Amount // 1.4.4 Added Quest delay // 1.5.4 Added repeatable Quests // 1.6.4 Added party support // 1.6.5 Bug fixes for party support //============================================================ prontera,141,210,5 script Questboard 857,{ if(c_run==1){ mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + currentquest$ + "_collectionname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ currentquest$ + "_collectionitem")); set .@j,.@j+2){ mes "^FF0000"+getitemname(getd("."+currentquest$+"_collectionitem["+.@j+"]"))+" - "+countitem(getd("."+currentquest$+"_collectionitem["+.@j+"]"))+"/"+getd("."+currentquest$+"_collectionitem["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +currentquest$+"_collectionprize"))?getitemname(getd("." +currentquest$+"_collectionprize"))+" - "+getd("." +currentquest$+"_collectionamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +currentquest$+"_collectionzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +currentquest$+"_collectionexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +currentquest$+"_collectionexp["+1+"]")+"^000000"; next; if(select("Finish:Abort") == 2){ mes "[^FF7700Questboard^000000]"; mes "Quest aborted."; set currentquest$, ""; set c_run, 0; close; } goto L_checkitems; } if(h_run==1){ mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + currentquest$ + "_huntingname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ currentquest$ + "_huntingmob")); set .@j,.@j+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@j)+"]"); mes "^FF0000"+strmobinfo(1,getd("."+currentquest$+"_huntingmob["+.@j+"]"))+" - "+getd(currentquest$+"_"+.@currentmob+"_"+(.@j+1)+"_killcount")+"/"+getd("."+currentquest$+"_huntingmob["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +currentquest$+"_huntingprize"))?getitemname(getd("." +currentquest$+"_huntingprize"))+" - "+getd("." +currentquest$+"_huntingamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +currentquest$+"_huntingzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +currentquest$+"_huntingexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +currentquest$+"_huntingexp["+1+"]")+"^000000"; next; if(select("Finish:Abort") == 2){ mes "[^FF7700Questboard^000000]"; mes "Quest aborted."; for(set .@x, 1; .@x < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@x,.@x+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@x-1)+"]"); setd(currentquest$+"_"+.@currentmob+"_"+.@x+"_killcount", 0); } set currentquest$, ""; set h_run, 0; close; } goto L_checkmobs; } mes "[^FF7700Questboard^000000]"; mes "Select category:"; next; switch(select((.collection)?"Collection Quests":"", (.hunting)?"Hunting Quests":"", "Exit")) { case 1: set .@collectmenu$, ""; for( set .@i,0; .@i < .collectionquestcount; set .@i,.@i+1){ if (.@i) set .@collectmenu$,.@collectmenu$+":"; set .@collectmenu$, .@collectmenu$ + "[" + getd("." +(.@i+1)+"_collectionmin") + " - " + getd("." +(.@i+1)+"_collectionmax") + "] " + getd("." + (.@i+1) + "_collectionname$"); } set .@selection,select(.@collectmenu$); if(.quest_repeat == 1){ if(gettimetick(2) < getd(.@selection + "_collection_delay")){ set .@time_left, getd(.@selection + "_collection_delay")-gettimetick(2); mes "[^FF7700Questboard^000000]"; if(.@time_left < 60) mes "You have to wait ^0000FF"+.@time_left+" seconds^000000 to do this quest again."; if(.@time_left < 3600) mes "You have to wait ^0000FF"+.@time_left/60+" minutes^000000 to do this quest again."; mes "You have to wait ^0000FF"+.@time_left/60/60+" hours^000000 to do this quest again."; close; } } else{ if(getd(.@selection + "_collection_repeat") == 1){ mes "[^FF7700Questboard^000000]"; mes "You already did this quest."; mes "Please choose another one."; close; } } mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + .@selection + "_collectionname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ .@selection + "_collectionitem")); set .@j,.@j+2){ mes "^FF0000"+getitemname(getd("."+.@selection+"_collectionitem["+.@j+"]"))+" - "+getd("."+.@selection+"_collectionitem["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +.@selection+"_collectionprize"))?getitemname(getd("." +.@selection+"_collectionprize"))+" - "+getd("." +.@selection+"_collectionamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +.@selection+"_collectionzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +.@selection+"_collectionexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +.@selection+"_collectionexp["+1+"]")+"^000000"; next; if(select("Accept:Decline") == 2){ close; } if(BaseLevel >= getd("." +.@selection+"_collectionmin") && BaseLevel <= getd("." +.@selection+"_collectionmax")){ mes "[^FF7700Questboard^000000]"; mes "Quest accepted."; set c_run, 1; set currentquest$, .@selection; close; } else{ mes "[^FF7700Questboard^000000]"; mes "You don't have the required"; mes "level to do this quest."; close; } case 2: set .@huntmenu$, ""; for( set .@i,0; .@i < .huntingquestcount; set .@i,.@i+1){ if (.@i) set .@huntmenu$,.@huntmenu$+":"; set .@huntmenu$, .@huntmenu$ + "[" + getd("." +(.@i+1)+"_huntingmin") + " - " + getd("." +(.@i+1)+"_huntingmax") + "] " + getd("." + (.@i+1) + "_huntingname$"); } set .@selection,select(.@huntmenu$); if(.quest_repeat == 1){ if(gettimetick(2) < getd(.@selection + "_hunting_delay")){ set .@time_left, getd(.@selection + "_hunting_delay")-gettimetick(2); mes "[^FF7700Questboard^000000]"; if(.@time_left < 60) mes "You have to wait ^0000FF"+.@time_left+" seconds^000000 to do this quest again."; if(.@time_left < 3600) mes "You have to wait ^0000FF"+.@time_left/60+" minutes^000000 to do this quest again."; mes "You have to wait ^0000FF"+.@time_left/60/60+" hours^000000 to do this quest again."; close; } } else{ if(getd(.@selection + "_hunting_repeat") == 1){ mes "[^FF7700Questboard^000000]"; mes "You already did this quest."; mes "Please choose another one."; close; } } mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + .@selection + "_huntingname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ .@selection + "_huntingmob")); set .@j,.@j+2){ mes "^FF0000"+strmobinfo(1,getd("."+.@selection+"_huntingmob["+.@j+"]"))+" - "+getd("."+.@selection+"_huntingmob["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +.@selection+"_huntingprize"))?getitemname(getd("." +.@selection+"_huntingprize"))+" - "+getd("." +.@selection+"_huntingamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +.@selection+"_huntingzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +.@selection+"_huntingexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +.@selection+"_huntingexp["+1+"]")+"^000000"; next; if(select("Accept:Decline") == 2){ close; } if(BaseLevel >= getd("." +.@selection+"_huntingmin") && BaseLevel <= getd("." +.@selection+"_huntingmax")){ mes "[^FF7700Questboard^000000]"; mes "Quest accepted."; set h_run, 1; set currentquest$, .@selection; close; } else{ mes "[^FF7700Questboard^000000]"; mes "You don't have the required"; mes "level to do this quest."; close; } case 3: close; } L_checkitems: for( set .@k,0; .@k < getarraysize(getd("."+currentquest$+"_collectionitem")); set .@k,.@k+2){ if(countitem(getd("."+currentquest$+"_collectionitem["+.@k+"]"))>=getd("."+currentquest$+"_collectionitem["+(.@k+1)+"]")){ set .@checkitem,.@checkitem+2; } } if(.@checkitem<getarraysize(getd("."+currentquest$+"_collectionitem"))){ mes "[^FF7700Questboard^000000]"; mes "You don't have everything."; close; } for( set .@delcount,0; .@delcount < getarraysize(getd("."+currentquest$+"_collectionitem")); set .@delcount,.@delcount+2){ delitem getd("."+currentquest$+"_collectionitem["+.@delcount+"]"),getd("."+currentquest$+"_collectionitem["+(.@delcount+1)+"]"); } mes "[^FF7700Questboard^000000]"; mes "Congratulation! Here is your Reward."; if(getd("." +currentquest$+"_collectionprize")!=0) getitem(getd("." +currentquest$+"_collectionprize"),getd("." +currentquest$+"_collectionamount")); set Zeny,Zeny+getd("." +currentquest$+"_collectionzeny"); getexp getd("." +currentquest$+"_collectionexp["+0+"]"),getd("." +currentquest$+"_collectionexp["+1+"]"); setd(currentquest$ + "_collection_delay"),gettimetick(2)+.quest_delay; setd(currentquest$ + "_collection_repeat"),1; set currentquest$, ""; set c_run, 0; close; L_checkmobs: set .@goal, (getarraysize(getd("."+currentquest$+"_huntingmob"))/2); for(set .@i, 1; .@i < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@i,.@i+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]"); if(getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")==getd("."+currentquest$+"_huntingmob["+.@i+"]")){ set .@checkmonster, .@checkmonster+1; if(.@checkmonster==.@goal){ goto L_checkmobs2; } continue; } goto L_checkmobs2; } L_checkmobs2: if(.@checkmonster<.@goal){ mes "[^FF7700Questboard^000000]"; mes "You didn't kill everything."; close; } mes "[^FF7700Questboard^000000]"; mes "Congratulation! Here is your Reward."; for(set .@x, 1; .@x < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@x,.@x+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@x-1)+"]"); setd(currentquest$+"_"+.@currentmob+"_"+.@x+"_killcount", 0); } if(getd("." +currentquest$+"_huntingprize")!=0) getitem(getd("." +currentquest$+"_huntingprize"),getd("." +currentquest$+"_huntingamount")); set Zeny, Zeny+getd("." +currentquest$+"_huntingzeny"); getexp getd("." +currentquest$+"_huntingexp["+0+"]"),getd("." +currentquest$+"_huntingexp["+1+"]"); setd(currentquest$ + "_hunting_delay"),gettimetick(2)+.quest_delay; setd(currentquest$ + "_hunting_repeat"),1; set currentquest$, ""; set h_run, 0; close; OnNPCKillEvent: if(h_run!=1) end; for(set .@i, 1; .@i < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@i,.@i+2){ if(killedrid==getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]")){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]"); if(getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")>=getd("."+currentquest$+"_huntingmob["+.@i+"]")) end; setd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount", getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+1); dispbottom getd("."+currentquest$+"_huntingname$")+": ["+strmobinfo(1,.@currentmob)+"] ("+ getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+"/"+getd("."+currentquest$+"_huntingmob["+.@i+"]")+")"; if(getcharid(1) != 0 && .party_support == 1){ getmapxy(.@map1$,.@x1,.@y1,0); set .@killerid, getcharid(3); set .@currentquest$, currentquest$; getpartymember getcharid(1),1; getpartymember getcharid(1),2; for(set .@j, 0; .@j < $@partymembercount; .@j++){ if(isloggedin($@partymemberaid[.@j], $@partymembercid[.@j])){ if(attachrid($@partymemberaid[.@j])){ if(h_run==1 && getcharid(3) != .@killerid && .@currentquest$ == currentquest$ && HP > 0){ getmapxy(.@map2$,.@x2,.@y2,0); if(.@map1$ == .@map2$ && distance(.@x1,.@y1,.@x2,.@y2) < .party_range){ if(getd(.@currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")<getd("."+.@currentquest$+"_huntingmob["+.@i+"]")) { setd(.@currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount", getd(.@currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+1); dispbottom getd("."+.@currentquest$+"_huntingname$")+": ["+strmobinfo(1,.@currentmob)+"] ("+ getd(.@currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+"/"+getd("."+.@currentquest$+"_huntingmob["+.@i+"]")+")"; } } } } } } attachrid(.@killerid); } } continue; } end; OnInit: function AddCollection; function AddHunting; //Activate/Deactivate quest categories (1 - activated, 0 - deactivated) set .collection, 1; set .hunting, 1; //Quest Delay (seconds) //24 hours = 86400 seconds set .quest_delay, 0; //Activate/Deactivate repeatable quests (1 - activated, 0 - deactivated) set .quest_repeat, 1; //Activate/Deactivate party support(1 - activated, 0 - deactivated) set .party_support, 1; //Max range for party support (+- x & y coordinations) set .party_range, 25; //Checks if quests are loaded (prevents out of index) if(.questsloaded==1) end; set .questsloaded, 1; //Add Collection Quests here (You can add as many required items as you want) //AddCollection("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Item ID>,<Item Amount>,...); ("Bloody Branch Wisdom",99,255,12103,1,500000,10000,2000,604,150,7939,5,7203,5); //Add Hunting Quests here (You can add as many required mobs as you want) //AddHunting("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Monster ID>,<Monster Amount>,...); ("Leveling Quest 150-200",150,200,32503,2,500000,300000,150000,1219,25); ("Leveling Quest 201-254",201,254,32503,2,750000,900000,300000,2085,20,2086,15); end; function AddCollection{ set .collectionquestcount,.collectionquestcount+1; setd ("." +.collectionquestcount+"_collectionname$", getarg(0)); setd ("." +.collectionquestcount+"_collectionmin", getarg(1)); setd ("." +.collectionquestcount+"_collectionmax", getarg(2)); setd ("." +.collectionquestcount+"_collectionprize", getarg(3)); setd ("." +.collectionquestcount+"_collectionamount", getarg(4)); setd ("." +.collectionquestcount+"_collectionzeny", getarg(5)); set .@argcount, 6; set .@size, getarraysize(getd("."+ .collectionquestcount + "_collectionexp")); setd ("." +.collectionquestcount+"_collectionexp["+.@size+"]",getarg(.@argcount)); setd ("." +.collectionquestcount+"_collectionexp["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; while(getarg(.@argcount,-1)!=-1 && getarg(.@argcount+1,-1)!=-1){ set .@size, getarraysize(getd("."+ .collectionquestcount + "_collectionitem")); setd ("."+.collectionquestcount+"_collectionitem["+.@size+"]",getarg(.@argcount)); setd ("."+.collectionquestcount+"_collectionitem["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount,.@argcount+2; } return; } function AddHunting{ set .huntingquestcount,.huntingquestcount+1; setd ("." +.huntingquestcount+"_huntingname$", getarg(0)); setd ("." +.huntingquestcount+"_huntingmin", getarg(1)); setd ("." +.huntingquestcount+"_huntingmax", getarg(2)); setd ("." +.huntingquestcount+"_huntingprize", getarg(3)); setd ("." +.huntingquestcount+"_huntingamount", getarg(4)); setd ("." +.huntingquestcount+"_huntingzeny", getarg(5)); set .@size, getarraysize(getd("."+ .huntingquestcount + "_huntingexp")); set .@argcount, 6; setd ("." +.huntingquestcount+"_huntingexp["+.@size+"]",getarg(.@argcount)); setd ("." +.huntingquestcount+"_huntingexp["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; while(getarg(.@argcount,-1)!=-1 && getarg(.@argcount+1,-1)!=-1){ set .@size, getarraysize(getd("."+ .huntingquestcount + "_huntingmob")); setd ("."+.huntingquestcount+"_huntingmob["+.@size+"]",getarg(.@argcount)); setd ("."+.huntingquestcount+"_huntingmob["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; } return; } } i got an error when adding the quest . and btw.. thanks for the fast reply and response
-
So , Referring to tr0n's POST about Questboard scripting I've tried to add some Quests on it . But i got the error inputing the Quests sorry about the newb questions... just trying to get back from 5years not touch scripts well.. im married stuff so.. yea Anyone can help? and Thanks for the help ! XD OnInit: function AddCollection; function AddHunting; //Activate/Deactivate quest categories (1 - activated, 0 - deactivated) set .collection, 1; set .hunting, 1; //Quest Delay (seconds) //24 hours = 86400 seconds set .quest_delay, 0; //Activate/Deactivate repeatable quests (1 - activated, 0 - deactivated) set .quest_repeat, 1; //Activate/Deactivate party support(1 - activated, 0 - deactivated) set .party_support, 1; //Max range for party support (+- x & y coordinations) set .party_range, 25; //Checks if quests are loaded (prevents out of index) if(.questsloaded==1) end; set .questsloaded, 1; //Add Collection Quests here (You can add as many required items as you want) //AddCollection("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Item ID>,<Item Amount>,...); AddCollection("Bloody Branch Wisdom",99,255,12103,1,500000,10000,2000,604,150,7939,5,7203,5); //Add Hunting Quests here (You can add as many required mobs as you want) //AddHunting("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Monster ID>,<Monster Amount>,...); AddHunting("Leveling Quest 150-200",150,200,32503,2,500000,300000,150000,1219,25); AddHunting("Leveling Quest 201-254",201,254,32503,2,750000,900000,300000,2085,20,2086,15); end;