Jump to content

Quesooo

Members
  • Posts

    883
  • Joined

  • Last visited

Posts posted by Quesooo

  1. can i request a npc PLUTO_09 and MARS_01 npc who enchant and give Excellion gears

    image.png.d3484257e8db7ca68e90070b7100edcc.png

    this are the details for this npc's

    The Excellion set is an armour group created from lost technology of a ruined laboratory, consisting of a suit and garment. Unlike other Verus equipment, these can be used by every job and have a level requirement of 99 to equip. They are highly customizable by using reactor blueprints to enchant each piece. The quest for Excellion equipment begins at Verus

     

    daT9nxp.gif Firstly, speak with MARS_01 and supply it with 6962.png 1 Old Fuel Tank to get both units up and running. Afterwards, MARS_01 will enchant your Excellion gears.

    63XqDLH.gif PLUTO_09 will make Excellion gears and produce reactor blueprints (enchants). For 6961.png 10 Huge Metal Scraps and 6962.png 5 Old Fuel Tanks , PLUTO_09 will give one of 15128.png Excellion Suit or 20773.png Excellion Wing at random.

     

    Enchantments

    The Excellion set can be enchanted by using reactor blueprints created by PLUTO_09. To create a blueprint, you must supply 6962.png 5 Old Fuel Tanks . PLUTO_09 will give you a random reactor blueprint or fail to create one entirely.

    With an Excellion armour piece and blueprints in your inventory, you can then speak to MARS_01 to apply them as desired. The enchanting process consumes the blueprint, but will never fail.

    The following table lists the available blueprints, their effects and their enchantment limitations.

    Reactor Blueprint Effect Location Max Count
    4970.png Fire Property Reactor 6965.png Fire Property Blueprint Enchant an armour with fire property. Suit 1
    4971.png Water Property Reactor 6966.png Water Property Blueprint Enchant an armour with water property. Suit 1
    4972.png Earth Property Reactor 6967.png Earth Property Blueprint Enchant an armour with earth property. Suit 1
    4973.png Wind Property Reactor 6968.png Wind Property Blueprint Enchant an armour with wind property. Suit 1
    4974.png Fire Resistance Reactor 6969.png Fire Resistance Blueprint Reduce damage from fire property by 25%. Receive more damage from water property by 25%. Wing 3
    4975.png Water Resistance Reactor 6970.png Water Resistance Blueprint Reduce damage from water property by 25%. Receive more damage from wind property by 25%. Wing 3
    4976.png Earth Resistance Reactor 6971.png Earth Resistance Blueprint Reduce damage from earth property by 25%. Receive more damage from fire property by 25%. Wing 3
    4977.png Wind Resistance Reactor 6972.png Wind Resistance Blueprint Reduce damage from wind property by 25%. Receive more damage from earth property by 25%. Wing 3
    4978.png Recovery 101 Reactor 6973.png Recovery 101 Blueprint Restore 50 HP every 5 seconds. If refine is 7 or higher, gives an additional 50 HP every 5 seconds. Both 3
    4979.png Recovery 102 Reactor 6974.png Recovery 102 Blueprint Restore 3 SP every 5 seconds. If refine rate is 7 or higher, gives an additional 2 SP every 5 seconds. Both 3
    4980.png Recovery 201 Reactor 6975.png Recovery 201 Blueprint Increase HP recovery rate by 50%. When refine rate is 7 or higher, further increase HP recovery rate by 50%. Both 3
    4981.png Recovery 202 Reactor 6976.png Recovery 202 Blueprint Increase SP recovery rate by 50%. When refine rate is 7 or higher, further increase SP recovery rate by 50%. Both 3
    4982.png STR Supplement Reactor 6977.png STR Supplement Blueprint ATK +5 for every 10 base STR. When refine rate is 7 or higher, add an additional ATK +10. Suit 1
    4983.png INT Supplement Reactor 6978.png INT Supplement Blueprint MATK +5 for every 10 base INT. When refine rate is 7 or higher, add an additional MATK +10. Suit 1
    4984.png DEF Supplement Reactor 6979.png DEF Supplement Blueprint DEF +100. Both 3
    4985.png PD Supplement Reactor 6980.png PD Supplement Blueprint Perfect Dodge +3. Both 1
    4986.png Attack Supplement Reactor 6981.png Attack Supplement Blueprint ATK +20. Both 3
    4987.png Magic Supplement Reactor 6982.png Magic Supplement Blueprint MATK +20. Both 3
    4988.png HP Supplement Reactor 6983.png HP Supplement Blueprint Max HP +5%. Both 3
    4989.png SP Supplement Reactor 6984.png SP Supplement Blueprint Max SP +3%. Both 3
    4990.png Frozen Supplement Reactor 6985.png Frozen Supplement Blueprint Grants immunity to being frozen. Suit 1
    4991.png ASPD Supplement Reactor 6986.png ASPD Supplement Blueprint ASPD +1. Both 1

     

    i have a complete npc's on verus04 map but this thing are missing ;( please help

     

    btw credit to owner of this wiki @Nova thank you so much

  2. @yuchinin i got error on fishing script can you please check it thank you ^_^

    [Error]:  Loading NPC file: npc/custom/FishingSimulation.txt
    script error on npc/custom/FishingSimulation.txt line 84
        parse_callfunc: expected ')' to close argument list
        80 : {
        81 :        .@fishchk$ = getarg(0);
        82 :        .@varname$ = getarg(1);
        83 :        .@npc$ = strnpcinfo(3);
    *   84 :        for(.@x=0;.@x<getarraysize(getVariable'('".fish_list$"));.@x++){
        85 :                if(getVariable(".fish_name$["+.@x+"]")==.@fishchk$){
        86 :                        return getVariable(.@varname$+"["+.@x+"]");
        87 :                }
        88 :        }
        89 :        debugmes "Local_Fish_Val_Get return null";
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 97
        parse_callfunc: expected ')' to close argument list
        93 : {
        94 :        .@fishchk$ = getarg(0);
        95 :        .@varname$ = getarg(1);
        96 :        .@npc$ = strnpcinfo(3);
    *   97 :        for(.@x=0;.@x<getarraysize(getVariable'('".fish_list$"));.@x++){
        98 :                if(getVariable(".fish_name$["+.@x+"]")==.@fishchk$){
        99 :                        setVariable(.@varname$+"["+.@x+"]",getVariable(.@varname$+"["+.@x+"]")+getarg(2));
       100 :                        break;
       101 :                }
       102 :        }
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 109
        parse_simpleexpr: unmatched ')'
       106 : {
       107 :        .@npc$ = strnpcinfo(3);
       108 :
    *  109 :        if(getVariable'('".status"+.@npc$) == 0){
       110 :                .@delay = getarg(0,100);
       111 :                .@variation = getarg(1,0);
       112 :                .@hook_timeout = getarg(2,750);
       113 :                .@bait_timeout = getarg(3,rand(10,20));
       114 :
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 277
        script:add_word: invalid word. A word consists of undercores and/or alphanumeric characters, and valid variable prefixes/postfixes.
       275 : {
       276 :        .@npc$ = strnpcinfo(3);
    *  277 :        .@fish$ = getVariable('"'.fish"+.@npc$+"$");
       278 :        for(.@x=0;.@x<getarraysize(getVariable(".fish_list$"));.@x++){
       279 :                if(getVariable(".fish_amt["+.@x+"]") < getVariable(".fish_max["+.@x+"]")){
       280 :                        if(getVariable(".fish_timetick["+.@x+"]")==0){
       281 :                                setVariable(".fish_timetick["+.@x+"]",gettimetick(2));
       282 :                        }else if(gettimetick(2)>getVariable(".fish_timetick["+.@x+"]")){
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 307
        parse_callfunc: expected ')' to close argument list
       302 : {
       303 :        .@arrvarname$ = getarg(0);
       304 :        .@message$ = getarg(1);
       305 :        .@isconsumed = getarg(2,0);
       306 :        .@mstr$ = "Leave:";
    *  307 :        for(.@x=0;.@x<getarraysize(getVariable'('.@arrvarname$));.@x++){
       308 :                .@temp$ = .@arrvarname$+"["+.@x+"]";
       309 :                .@optional$ = "";
       310 :                if(.@arrvarname$==".rod_list"){
       311 :                        .@index = arrfind_db("$@rod_data$",getVariable(.@temp$));
       312 :                        .@indicator_slow_bonus = atoi(arrget_db("$@rod_data$",.@index,1));
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 338
        parse_callfunc: expected ')' to close argument list
       336 : {
       337 :        .@name$ = "";
    *  338 :        if(getarraysize(getVariable'('".fish_list$"))==1){
       339 :                if(rand(1,10000) <= getVariable(".fish_rate[0]") && getVariable(".fish_amt[0]")>0) .@name$ = getVariable(".fish_name$[0]");
       340 :        }else{
       341 :                .@count = 0;
       342 :                do{
       343 :                        .@index = rand(getarraysize(getVariable(".fish_rate")));
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 373
        parse_simpleexpr: unmatched ')'
       368 : {
       369 :        .@npc$ = strnpcinfo(3);
       370 :        .@arrname1$ = getarg(0);
       371 :        .@arrname2$ = getarg(1);
       372 :
    *  373 :        if( getVariable'('".status"+.@npc$) == 0 && @bindspot$ == "" ){
       374 :                mes "[ "+CStr(strnpcinfo(0),"RED")+" ]";
       375 :                .@rod = Fishing_Item_Check_Func(.@arrname1$,"Select a rod");
       376 :                if(!.@rod || getVariable(".status"+.@npc$)!= 0){
       377 :                        mes "You don't have the selected item or someone is using this spot, please try again later.";
       378 :                        end;
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 428
        script:add_word: invalid word. A word consists of undercores and/or alphanumeric characters, and valid variable prefixes/postfixes.
       424 : {
       425 :        //.@sleepduration = getarg(0);
       426 :        .@npc$ = strnpcinfo(3);
       427 :        delwaitingroom .@npc$;
    *  428 :        .@name$ = getVariable('"'.charname"+.@npc$+"$");
       429 :        .@aid = getcharid2(3,.@name$);
       430 :        .@charid = getcharid2(0,.@name$);
       431 :        if(isloggedin(.@aid,.@charid)){
       432 :                setd "@bindspot$","",getcharid2(0,getVariable(".charname"+.@npc$+"$"));
       433 :        }
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 451
        parse_line: expect command, missing function name or calling undeclared function
       449 : {
       450 :        sleep2 1000;
    *  451 :        if(!playerattached()) 'F'ishing_End_Func();     // add check to counter unexpected player not attach (server reload/disconnect/logout)
       452 :        showscript "It's a "+getVariable(".fish"+strnpcinfo(3)+"$")+"!",getcharid2(3,getVariable(".charname"+strnpcinfo(3)+"$"));
       453 :        sleep2 1000;
       454 :        if(!playerattached()) Fishing_End_Func();       // add check to counter unexpected player not attach (server reload/disconnect/logout)
       455 :        .@fish$ = getVariable(".fish"+strnpcinfo(3)+"$");
       456 :        .@fish_index = arrfind_db("$@fish_data$",.@fish$);
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 538
        parse_simpleexpr: unmatched ')'
       536 : {
       537 :        while(1){
    *  538 :                if(getnpctimer(0) || getVariable'('".status"+strnpcinfo(3)) > 0){
       539 :                        sleep 5000;
       540 :                        continue;
       541 :                }
       542 :                specialeffect EF_BUBBLE;
       543 :                specialeffect 199;
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 552
        parse_line: expect command, missing function name or calling undeclared function
       549 : {
       550 :        .@npc$ = strnpcinfo(3);
       551 :        getmapxy(.@map$,.@mapx,.@mapy,UNITTYPE_NPC);
    *  552 :        's'etVariable(".npcx"+.@npc$,.@mapx);
       553 :        setVariable(".npcy"+.@npc$,.@mapy);
       554 :        setVariable(".npcname"+.@npc$+"$",strnpcinfo(0));
       555 :
       556 :        for(.@x=0;.@x<getarraysize(getVariable(".fish_list$"));.@x++){
       557 :                deletearray .@T$,getarraysize(.@T$);
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 569
        parse_line: expect command, missing function name or calling undeclared function
       568 : {
    *  569 : 'F'ishing_Start_Func(".rod_list",".bait_list");
       570 : end;
       571 :
       572 : OnSuccess:
       573 :        emotion ET_BLABLA,getcharid(3,getVariable(".charname"+strnpcinfo(3)+"$"));
       574 :        showscript "I got it!",getcharid2(3,getVariable(".charname"+strnpcinfo(3)+"$"));
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 629
        parse_line: expect command, missing function name or calling undeclared function
       628 : {
    *  629 : 'F'ishing_Start_Func(".rod_list",".bait_list");
       630 : end;
       631 :
       632 : OnSuccess:
       633 :        emotion ET_BLABLA,getcharid(3,getVariable(".charname"+strnpcinfo(3)+"$"));
       634 :        showscript "I got it!",getcharid2(3,getVariable(".charname"+strnpcinfo(3)+"$"));
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 689
        parse_line: expect command, missing function name or calling undeclared function
       688 : {
    *  689 : 'F'ishing_Start_Func(".rod_list",".bait_list");
       690 : end;
       691 :
       692 : OnSuccess:
       693 :        emotion ET_BLABLA,getcharid(3,getVariable(".charname"+strnpcinfo(3)+"$"));
       694 :        showscript "I got it!",getcharid2(3,getVariable(".charname"+strnpcinfo(3)+"$"));
    [Error]:
    script error on npc/custom/FishingSimulation.txt line 749
        parse_line: expect command, missing function name or calling undeclared function
       748 : {
    *  749 : 'F'ishing_Start_Func(".rod_list",".bait_list");
       750 : end;
       751 :
       752 : OnSuccess:
       753 :        emotion ET_BLABLA,getcharid(3,getVariable(".charname"+strnpcinfo(3)+"$"));
       754 :        showscript "I got it!",getcharid2(3,getVariable(".charname"+strnpcinfo(3)+"$"));

     

  3. can anyone help me whats wrong with the script?

     

    can tell also what will be the solution? here's the script

    heres the error

    [Error]: get_val_: fatal error ! player not attached!
    [Debug]: Source (NPC): Class C+ Quest 1-99#Welga at roy_in01 (131,44)
    [Warning]: script:get_val: cannot access player variable 'Baselvl', defaulting to 0
    //===== rAthena Script =======================================
    //= tr0n's Questboard
    //===== By: ==================================================
    //= tr0n
    //===== Current Version: =====================================
    //= 1.4.4
    //===== Compatible With: ===================================== 
    //= rAthena Project
    //===== 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
    //============================================================
    
    roy_in01,131,44,4	script	Class C+ Quest 1-99#Welga	837,{
    		
    	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;
    	}
    		
    L_questmenu:
    	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(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;
    	}
    	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(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;
    	}
    	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.";
    		specialeffect2 328;
    		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;
    	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;
    	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+"]")+")";
    			end;
    		}
    		continue;
    	}
    	end;
    	
    OnInit:
    
    	function AddCollection;
    	function AddHunting;
    
    	//Activate/Deactive quest categories here
    	set .collection, 0;
    	set .hunting, 1;
    	
    	//Quest Delay (seconds)
    	//24 hours = 3600 seconds
    	set .quest_delay, 0;
    	
    	//Checks if quests are loaded (prevents out of index)
    	if(.questsloaded==1) end;
    		set .questsloaded, 1;
    		
    		//Add Collection Quests here
    		//AddCollection("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Item ID>,<Item Amount>,...);		
    		
    		//Add Hunting Quests here
    		//AddHunting("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Monster ID>,<Monster Amount>,...);
    		AddHunting("Wolf",1,99,32008,5,1000,1152725,1152725,1013,30);
    		AddHunting("Archer Skeleton",1,99,32008,5,1200,1152725,1154300,1016,30);
    		AddHunting("Orc Warrior",1,99,32008,5,1500,1152725,1158225,1023,30);
    		AddHunting("Munak",1,99,32008,5,1000,1152725,1154300,1026,30);
    		AddHunting("Isis",1,99,32008,5,2500,1152725,1155975,1029,30);
    		AddHunting("Golem",1,99,32008,5,1000,1152725,1157100,1040,30);
    		AddHunting("Steel Chonchon",1,99,32008,5,1200,1152725,1155975,1042,30);
    		AddHunting("Marc",1,99,32008,5,1500,1152725,1150475,1045,30);
    		AddHunting("Kukre",1,99,32008,5,1000,1152725,1154200,1070,30);
    		waitingroom "Quest C+ 1-99",0;
    		if(Baselvl < 100);
    		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;
    }
    }

    credits to owner thank you

  4. 1 hour ago, yoonjunho said:

    Hello quesooo you can try this for item on server (item_db)

    
    5898,Autumn_Headband,Autumn Headband,4,20,,200,,10,,1,0x00000800,56,2,256,,100,1,1119,{ bonus2 bSkillUseSP,"SN_WINDWALK",20; bonus bLongAtkRate,5; if(getrefine()>=6) { bonus bAtk,2*(readparam(bInt)/5); } if(getrefine()>=8) { bonus2 bSkillAtk,"RA_ARROWSTORM",2*(BaseLevel/10); } },{},{}

    and this for item on client (iteminfo)

    
    [5898] = {
    		unidentifiedDisplayName = "Hairband",
    		unidentifiedResourceName = "머리띠",
    		unidentifiedDescriptionName = {
    			"Unknown Item, can be identified by using a ^6666CCMagnifier^000000."
    		},
    		identifiedDisplayName = "Autumn Headband",
    		identifiedResourceName = "가을머리띠",
    		identifiedDescriptionName = {
    			"A hairband with an array of autumn leaves attached to it. It displays the beauty of an autumn forest for all to see.",
    			"------------------------",
    			"Reduces SP cost of ^0000FFWind Walk^000000 by 20.",
    			"------------------------",
    			"Increases long range physical attacks by 5%.",
    			"------------------------",
    			"Refine Level ^0000FF+7^000000:",
    			"Increases ATK by 2 for every 5 base INT.",
    			"Refine Level ^0000FF+9^000000:",
    			"Increases ^0000FFArrow Storm^000000 damage by 2% for every 10 Base Level.",
    			"------------------------",
    			"Class:^6666CC Headgear^000000",
    			"Defense:^0000FF 10^000000",
    			"Location:^6666CC Upper^000000",
    			"Weight:^006600 20^000000",
    			"Level Requirement:^006600 100^000000",
    			"Jobs:^6666CC Ranger^000000"
    		},
    		slotCount = 1,
    		ClassNum = 1119

     

    thank you problem solve ! ^_^

     

    how about other ranger sets?

  5. On 12/3/2017 at 9:15 PM, noobzter003 said:

    im asking about the WordEvent Script not WorldBoss event..

    do u know how to fix this

    Untitled.png.03f5562db2c391959d1a5dbf3473e7ea.png

    oops sorry haahhaha

     

    @noobzter003

    search this line and change the item id to your item id as a prize

    Quote
    set .prize,675;
      set .prizeAmt,15;
      set .rewardMode,0;
      setarray .letters$[0],"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z";
      setarray .lettersC$[0],"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z";
      end;

     

  6. 38 minutes ago, Dabstar said:

    I need a game that supports Thai language.

    Can you help me

     

    thank you so much   T   T

    thai languange you mean player can type on message board a thai format?

     

    just change you lang inside client info

     

    i suggest use <langtype>19</langtype>

×
×
  • Create New...