Jump to content

Eross

Members
  • Posts

    349
  • Joined

  • Last visited

Posts posted by Eross

  1. 6 hours ago, sader1992 said:

    /showname  nope ,  you mostly can't control graphic options from the server

     

    /w , you can easily create something like this

    
    -	script	jstrrjstsrjt	-1,{
    OnCommand:
    	message strcharinfo(0),"There are " + getusers(0) + " Players Currently Connected.";
    end;
    OnInit:
    	bindatcmd("players",strnpcinfo(3)+"::OnCommand",0,99);
    end;
    }

     

    Hi senpai @sader1992 thankyou for your response .. how about /am command ?? most players nowadays doesnt know that command so im planning to make it @afk thankyou !

  2. Hi can you give me a working LUA files with working sites for the said version ? I'm having trouble with chatbox and hotkeys ..When I tried to diff my client to read LUB files I got item problems and I cant edit it coz it has guiberrish words ..Thanks

  3. Hi ! Is it possible to make vending fixed price ..to avoid over priced items on vending merchants ..let's say I want to sell knife ,,I will suggest a price depending on how much demand that item and you can just add or lessen the price slightly . Just like in auctions and tradehouse in some mobile and pc games .. thankyou

  4. Hi, I'm using @Rytech's 2012 client. when I tested the item 20316 which is Seraph's Costume. I checked my accname and idres and I found Seraph Wing Helm which is weird because the client is having error yet I have the required sprite codes. The error of missing file also different on the sprite's name, it should be looking for "_Áöõ»ç³¯°³Åõ±¸" not on the image below. Please help thankyou 

    Quote

    ACCESSORY_Seraph_Wing_Helm = 1352,

    Quote

    [ACCESSORY_IDs.ACCESSORY_Seraph_Wing_Helm] = "_Áöõ»ç³¯°³Åõ±¸",

    Quote

    20316#Áöõ»ç³¯°³Åõ±¸#

    accname.lubaccessoryid.lubidnum2itemresnametable.txt

     

    image.thumb.png.3031d1d98584d8662888b411cc8017ac.png

     

     

     

     

    EDIT: I SOLVED THIS PROBLEM BY ADDING HEADGEAR VIEW ID ON NEMO 

     

    image.thumb.png.898956c6e8a98a308f6cd648e6f38fc6.png

  5. Hi, Im not sure if this is the right section but i need help guys. Im using client 2012 version, and i tested item 20316 which is Seraph wing helm ..then ive got an error message looking for .act and .spr file, ive already added seraph's sprite on my grf "Áöõ»ç³¯°³Åõ±¸" ..I dont understand why its looking for sigh.spr and act.spr ..Please helo 

    received_2558314704484793.png

  6. Hi guys, can you help me on Hunting Mission script by @Euphy? This npc originally give you 1 quest and then starts the countdown timer before you get another. What I need is to make it : able to give you 3 quest in a row and then after finishing 3 quest then the timer will start ticking instead of ticking every after finishing 1 quest . Thankyou 

    //===== rAthena Script =======================================
    //= Hunting Missions
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.4
    //===== Compatible With: ===================================== 
    //= rAthena Project
    //===== Description: =========================================
    //= Random hunting missions.
    //= Rewards are based on quest difficulty.
    //= 
    //= NOTE: Requires SQL mob database.
    //===== Additional Comments: =================================
    //= 1.0 Initial script.
    //= 1.1 Small improvements and fixes.
    //= 1.2 Added party support and replaced blacklists with an
    //=     SQL query, both thanks to AnnieRuru.
    //= 1.3 Re-added a blacklist adapted for the SQL query.
    //= 1.3a Added mission reset options.
    //= 1.3b Function updates.
    //= 1.4 Check for deleted characters, thanks to AnnieRuru.
    //=     Syntax updates and style cleaning.
    //============================================================
    
    prontera,152,187,6	script	Hunting Missions	4_F_EDEN_MASTER,{
    function Chk;
    	mes "[Hunting Missions]";
    	mes "Hello, " + strcharinfo(0) + "!";
    	if (!#Mission_Delay) {
    		next;
    		mes "[Hunting Missions]";
    		mes "I can't find any records...";
    		mes "You must be new here!";
    		emotion ET_HUK;
    		next;
    		callsub Mission_Info;
    		emotion ET_GO;
    		#Mission_Delay = 1;
    		close;
    	}
    	mes F_Rand("Working hard, as always...", "Not slacking, I hope...");
    	mes "Is there anything I can help";
    	mes "you with?";
    	mes " ";
    	mes "^777777~ You've completed " + F_InsertPlural(Mission_Total,"mission",0,"^0055FF%d^777777 %s") + ". ~^000000";
    	next;
    	switch(select(
    		((!Mission0) ? " ~ New Mission::" : ": ~ Mission Status: ~ Abandon Mission") +
    		": ~ Information: ~ Mission Shop: ~ View Top Hunters: ~ ^777777Cancel^000000"
    	)) {
    	case 1:
    		mes "[Hunting Missions]";
    		if (#Mission_Count) {
    			mes "You've started a mission";
    			mes "on another character.";
    			if (!@hm_char_del_check) {  // check for deleted character
    				query_sql("SELECT 1 FROM `char_reg_num` WHERE `key` = 'Mission0' AND `char_id` IN(SELECT `char_id` FROM `char` WHERE `account_id` = " + getcharid(3) + ")", .@i);
    				if (!.@i) {
    					next;
    					mes "[Hunting Missions]";
    					mes "I can't seem to find any records";
    					mes "for that character, though...";
    					mes "One moment, please.";
    					emotion ET_SCRATCH;
    					#Mission_Count = 0;
    				}
    				@hm_char_del_check = true;
    			}
    			close;
    		}
    		if (#Mission_Delay > gettimetick(2) && .Delay) {
    			mes "I'm afraid you'll have to wait " + Time2Str(#Mission_Delay) + " before taking another mission.";
    			close;
    		}
    		mes "You must hunt:";
    		query_sql("SELECT ID FROM `" + .mob_db$ + "` WHERE left(Sprite, 4) != 'meta' AND left(Sprite, 2) != 'E_' AND ~Mode & 32 AND EXP > 0 AND MVP1id = 0 AND DropCardid > 4000 AND DropCardid < 5000 AND ID < 2000 AND instr('"+.Blacklist$+"',ID) = 0 ORDER BY rand() LIMIT " + .Quests, .@mob);
    		for (.@i = 0; .@i < .Quests; .@i++) {
    			setd "Mission" + .@i, .@mob[.@i];
    			setd "Mission" + .@i +"_", 0;
    		}
    		#Mission_Count = rand(.Count[0], .Count[1]);
    		callsub Mission_Status;
    		next;
    		mes "[Hunting Missions]";
    		mes "Report back when";
    		mes "you've finished.";
    		mes "Good luck!";
    		close;
    	case 2:
    		mes "[Hunting Missions]";
    		mes "Mission status:";
    		callsub Mission_Status;
    		close;
    	case 3:
    		mes "[Hunting Missions]";
    		mes "Do you really want to";
    		mes "abandon your mission?";
    		if (.Reset < 0 && .Delay)
    			mes "Your delay time will not be reset.";
    		else if (.Reset > 0)
    			mes "It will cost " + F_InsertComma(.Reset) + " Zeny.";
    		next;
    		switch(select(" ~ Abandon...: ~ ^777777Cancel^000000")) {
    		case 1:
    			if (.Reset > 0) {
    				if (Zeny < .Reset) {
    					mes "[Hunting Missions]";
    					mes "You don't have enough";
    					mes "Zeny to drop this mission.";
    					emotion ET_SORRY;
    					close;
    				}
    				Zeny -= .Reset;
    				emotion ET_MONEY;
    			}
    			mes "[Hunting Missions]";
    			mes "Alright, I've dropped";
    			mes "your current mission.";
    			specialeffect2 EF_STORMKICK4;
    			for (.@i = 0; .@i < .Quests; .@i++) {
    				setd "Mission"+.@i, 0;
    				setd "Mission"+.@i+"_", 0;
    			}
    			#Mission_Count = 0;
    			if (.Reset < 0 && .Delay)
    				#Mission_Delay = gettimetick(2) + (.Delay * 3600);
    			close;
    		case 2:
    			mes "[Hunting Missions]";
    			mes "I knew you were kidding!";
    			mes "Keep up the good work.";
    			emotion ET_SMILE;
    			close;
    		}
    	case 4:
    		callsub Mission_Info;
    		close;
    	case 5:
    		mes "[Hunting Missions]";
    		mes "You have ^0055FF" + #Mission_Points + "^000000 Mission Points.";
    		mes "Use them well!";
    		callshop "mission_shop",1;
    		npcshopattach "mission_shop";
    		end;
    	case 6:
    		mes "[Hunting Missions]";
    		mes "The top hunters are:";
    		query_sql("SELECT char_id AS id, (SELECT `name` FROM `char` WHERE char_id = id),`value` FROM `char_reg_num` WHERE `key` = 'Mission_Total' ORDER BY CAST(`value` AS SIGNED) DESC LIMIT 5", .@id, .@name$, .@val);
    		for (.@i = 0; .@i < 5; .@i++)
    			mes "  [Rank " + (.@i+1) + "]  " + ((.@name$[.@i] == "") ? "^777777none" : "^0055FF" + .@name$[.@i]+"^000000 : ^FF0000" + .@val[.@i] + " pt.") + "^000000";
    		close;
    	case 7:
    		mes "[Hunting Missions]";
    		mes "Nothing? Okay...";
    		emotion ET_SCRATCH;
    		close;
    	}
    	end;
    
    Mission_Status:
    	@f = false;
    	deletearray .@j[0], getarraysize(.@j);
    	for (.@i = 0; .@i < .Quests; .@i++) {
    		.@j[.@i] = getd("Mission" + .@i);
    		.@j[.Quests] = .@j[.Quests] + strmobinfo(3,.@j[.@i]);
    		.@j[.Quests+1] = .@j[.Quests+1] + (strmobinfo(6,.@j[.@i]) / (getbattleflag("base_exp_rate") / 100) * .Modifier[0]);
    		.@j[.Quests+2] = .@j[.Quests+2] + (strmobinfo(7,.@j[.@i]) / (getbattleflag("job_exp_rate") / 100) * .Modifier[1]);
    		mes " > "+Chk(getd("Mission"+.@i+"_"),#Mission_Count) + strmobinfo(1,.@j[.@i]) + " (" + getd("Mission"+.@i+"_") + "/" + #Mission_Count + ")^000000";
    	}
    
    	// Reward formulas:
    	.@Mission_Points = 3 + (.@j[.Quests] / .Quests / 6);
    	.@Base_Exp = #Mission_Count * .@j[.Quests+1] / 5;
    	.@Job_Exp = #Mission_Count * .@j[.Quests+2] / 5;
    	.@Zeny = #Mission_Count * .Quests * .@j[.@i] * .Modifier[2];
    
    	next;
    	mes "[Hunting Missions]";
    	mes "Mission rewards:";
    	mes " > Mission Points: ^0055FF" + .@Mission_Points + "^000000";
    	mes " > Base Experience: ^0055FF" + F_InsertComma(.@Base_Exp) + "^000000";
    	mes " > Job Experience: ^0055FF" + F_InsertComma(.@Job_Exp) + "^000000";
    	mes " > Zeny: ^0055FF" + F_InsertComma(.@Zeny) + "^000000";
    	if (@f) {
    		@f = false;
    		return;
    	}
    	next;
    	mes "[Hunting Missions]";
    	mes "Oh, you're done!";
    	mes "Good work.";
    	mes "Here's your reward.";
    	emotion ET_BEST;
    	specialeffect2 EF_ANGEL;
    	specialeffect2 EF_TRUESIGHT;
    	#Mission_Points += .@Mission_Points;
    	BaseExp += .@Base_Exp;
    	JobExp += .@Job_Exp;
    	Zeny += .@Zeny;
    	for (.@i = 0; .@i < .Quests; .@i++) {
    		setd "Mission" + .@i, 0;
    		setd "Mission" + .@i+"_", 0;
    	}
    	#Mission_Count = 0;
    	if (.Delay)
    		#Mission_Delay = gettimetick(2) + (.Delay * 3600);
    	Mission_Total++;
    	if (Mission_Total == 1)
    		query_sql("INSERT INTO `char_reg_num` (`char_id`,`key`,`index`,`value`) VALUES (" + getcharid(0) + ",'Mission_Total','0',1)");
    	else
    		query_sql("UPDATE `char_reg_num` SET `value` = " + Mission_Total + " WHERE `char_id` = " + getcharid(0) + " AND `key` = 'Mission_Total'");
    	close;
    
    Mission_Info:
    	mes "[Hunting Missions]";
    	mes "If you so choose, I can assign";
    	mes "you a random hunting quest.";
    	mes "Some are easier than others, but";
    	mes "the rewards increase with difficulty.";
    	next;
    	mes "[Hunting Missions]";
    	mes "Missions points are shared";
    	mes "amongst all your characters.";
    	if (.Delay)
    		mes "Delay time is, too.";
    	mes "You can't take missions on";
    	mes "multiple characters at once.";
    	next;
    	mes "[Hunting Missions]";
    	mes "You can start a quest";
    	mes (.Delay ? "every " + ((.Delay == 1) ? "hour." : .Delay + " hours.") : "whenever you want.");
    	mes "That's everything~";
    	return;
    
    function Chk {
    	if (getarg(0) < getarg(1)) {
    		@f = true;
    		return "^FF0000";
    	} else
    		return "^00FF00";
    }
    
    OnBuyItem:
    	.@size = getarraysize(@bought_nameid);
    	for (.@i = 0; .@i < .@size; .@i++) {
    		.@j = inarray(.Shop, @bought_nameid[.@i]);
    		.@cost += (.Shop[.@j+1] * @bought_quantity[.@i]);
    	}
    	mes "[Hunting Missions]";
    	if (.@cost > #Mission_Points)
    		mes "You don't have enough Mission Points.";
    	else {
    		for (.@i = 0; .@i < .@size; .@i++) {
    			getitem @bought_nameid[.@i], @bought_quantity[.@i];
    			dispbottom "Purchased " + @bought_quantity[.@i] + "x " + getitemname(@bought_nameid[.@i]) + ".";
    		}
    		#Mission_Points -= .@cost;
    		mes "Deal completed.";
    		emotion ET_MONEY;
    	}
    	deletearray @bought_nameid[0], .@size;
    	deletearray @bought_quantity[0], .@size;
    	close;
    
    OnNPCKillEvent:
    	if (!getcharid(1) || !.Party) {
    		if (!#Mission_Count || !Mission0) end;
    		for (.@i = 0; .@i < .Quests; .@i++) {
    			if (strmobinfo(1,killedrid) == strmobinfo(1,getd("Mission" + .@i))) {
    				if (getd("Mission" + .@i + "_") < #Mission_Count) {
    					dispbottom "[Hunting Mission] Killed " + (set(getd("Mission" + .@i + "_"),getd("Mission" + .@i + "_") + 1)) +
    					           " of " + #Mission_Count + " " + strmobinfo(1,killedrid) + ".";
    					end;
    				}
    			}
    		}
    	} else if (.Party) {
    		.@mob = killedrid;
    		getmapxy(.@map1$,.@x1,.@y1);
    		getpartymember getcharid(1),1;
    		getpartymember getcharid(1),2;
    		for (.@i = 0; .@i < $@partymembercount; .@i++) {
    			if (isloggedin($@partymemberaid[.@i], $@partymembercid[.@i])) {
    				set .@Mission_Count, getvar(#Mission_Count, $@partymembercid[.@i]);
    				set .@Mission0, getvar(Mission0, $@partymembercid[.@i]);
    				set .@HP, readparam(HP, $@partymembercid[.@i]);
    
    				if (.@Mission_Count && .@Mission0 && .@HP > 0) {
    					getmapxy(.@map2$,.@x2,.@y2,BL_PC,rid2name($@partymemberaid[.@i]));
    					if ((.@map1$ == .@map2$ || .Party == 1) && (distance(.@x1,.@y1,.@x2,.@y2) <= 30 || .Party < 3)) {
    						for (.@j = 0; .@j < .Quests; .@j++) {
    							.@my_mob_id = getvar( getd("Mission"+.@j),$@partymembercid[.@i] );
    							.@my_count = getvar( getd("Mission"+.@j+"_"), $@partymembercid[.@i] );
    							if (strmobinfo(1,.@mob) == strmobinfo(1,.@my_mob_id)) {
    								if (.@my_count < .@Mission_Count) {
    									setd "Mission"+.@j+"_", (.@my_count+1), $@partymembercid[.@i];
    									dispbottom "[Hunting Mission] Killed " + (.@my_count+1) + " of " + .@Mission_Count + " " + strmobinfo(1,.@mob) + ".", 0x777777, $@partymembercid[.@i];
    									break;
    								}
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    	end;
    
    OnInit:
    	.Delay = 12;            // Quest delay, in hours (0 to disable).
    	.Quests = 4;            // Number of subquests per mission (increases rewards).
    	.Party = 3;             // Party options: 0 (exclude party kills), 1 (include party kills), 2 (same map only), 3 (screen area only)
    	.Reset = -1;            // Reset options: -1 (abandoning mission sets delay time), 0 (no delay time), [Zeny] (cost to abandon mission, no delay time)
    	setarray .Count[0],     // Min and max monsters per subquest (increases rewards).
    		40,70;
    	setarray .Modifier[0],  // Multipliers for Base Exp, Job Exp, and Zeny rewards.
    		getbattleflag("base_exp_rate")/100,getbattleflag("job_exp_rate")/100,60;
    	.mob_db$ =              // Table name of SQL mob database
    		(checkre(0))?"mob_db_re":"mob_db";
    	setarray .Shop[0],      // Reward items: <ID>,<point cost> (about 10~20 points per hunt).
    		512,1,513,1,514,1,538,5,539,5,558,10,561,10;
    	.Blacklist$ =           // Blacklisted mob IDs.
    		"1062,1088,1183,1186,1200,1212,1220,1221,1234,1235,"+
    		"1244,1245,1250,1268,1290,1293,1294,1296,1298,1299,"+
    		"1300,1301,1303,1304,1305,1306,1308,1309,1311,1313,"+
    		"1515,1588,1618,1676,1677,1678,1679,1796,1797,1974,"+
    		"1975,1976,1977,1978,1979";
    
    	npcshopdelitem "mission_shop",512;
    	for (.@i = 0; .@i < getarraysize(.Shop); .@i += 2)
    		npcshopadditem "mission_shop", .Shop[.@i], .Shop[.@i+1];
    	end;
    }
    -	shop	mission_shop	-1,512:-1

     

  7. How'r ya guys , I would like to request for an NPC that will ask for 3 normal cards (any cards spare you have on your inventory) ..you will put it on npc and the npc will randomly give you 1 new card. For example I have Hydra, Skel Worker and Drops card ... I'll put it on NPC and it will draw a new card as an exchange .thankyou 

    • Upvote 1
  8. 3 hours ago, Haruka Mayumi said:

    Here it is.
     

    
    prontera,155,181,5	script	Sample	4_F_KAFRA1,{
    
        if (#Crafting_Delay > gettimetick(2) && .Delay) {
                mes .name$;
                mes "I'm afraid you'll have to wait ^0055FF"+callfunc("Time2Str",#Crafting_Delay)+"^000000 before taking another mission.";
                close;
            }    
        if (!quest_random) {
            quest_random = rand(1,3);
            mes .name$;
            mes "You have been assigned with a new quest.";
            next;
        }
        switch(quest_random) {
            case 1:
                setarray .@reward, 4001, 1;
                setarray .@item, 512;
                setarray .@amount, 100;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            case 2:
                setarray .@reward, 4002, 1;
                setarray .@item, 501, 502, 503;
                setarray .@amount, 3, 1, 2;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            case 3:
                setarray .@reward, 4003, 1;
                setarray .@item, 512, 503;
                setarray .@amount, 300, 100;
                //set #crafting_quest,0;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            default:
                mes "invalid quest.";
                close;
        }
        mes "Quest Requirement(s):";
        .@size = getarraysize(.@item);
        for (.@i = 0; .@i < .@size; .@i++) {
            mes " > "+.@amount[.@i]+"x "+getitemname(.@item[.@i]);
            if (countitem(.@item[.@i]) < .@amount[.@i])
                .@fail++;
        }
        if (!.@fail) {
            next;
            if (select("Submit Quest", "Cancel") == 1) {
                for (.@i = 0; .@i < .@size; .@i++)
                    delitem .@item[.@i], .@amount[.@i];
                getitem .@reward[0], .@reward[1];
                quest_random = 0;
            }
        }
        close;
        
        OnInit:
        set .Delay,24;        // Quest delay, in hours (0 to disable).
        .name$ = "[ ^FF0000Craft Collector^000000 ]";
    }

    EDIT: Please use Code Box instead of QOUTE.

    thankyou !!!!

  9. Hi, is it possible to show how many hours,minutes and seconds left before you can take the quest again ? I set it on 24hours and I want to see how many minutes are left with countdown ...heres my npc script credits to @Emistry and added some lines from hunting mission thanks

    prontera,155,181,5    script    Sample    4_F_KAFRA1,{
    
        if (#Crafting_Delay > gettimetick(2) && .Delay) {
                set .@i, #Crafting_Delay-gettimetick(2);
                if (.@i > 3600) set .@j$, (.@i/3600)+" hour"+(((.@i/3600) == 1)?"":"s");
                else if (.@i > 60) set .@j$, (.@i/60)+" minute"+(((.@i/60) == 1)?"":"s");
                else set .@j$, (.@i)+" second"+((.@i == 1)?"":"s");
                mes .name$;
                mes "I'm afraid you'll have to wait ^0055FF"+getd(".Delay")+"^000000 hours before taking another mission.";
                close;
            }    
        if (!quest_random) {
            quest_random = rand(1,3);
            mes .name$;
            mes "You have been assigned with a new quest.";
            next;
        }
        switch(quest_random) {
            case 1:
                setarray .@reward, 4001, 1;
                setarray .@item, 512;
                setarray .@amount, 100;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            case 2:
                setarray .@reward, 4002, 1;
                setarray .@item, 501, 502, 503;
                setarray .@amount, 3, 1, 2;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            case 3:
                setarray .@reward, 4003, 1;
                setarray .@item, 512, 503;
                setarray .@amount, 300, 100;
                //set #crafting_quest,0;
                if (.Delay) set #Crafting_Delay, gettimetick(2)+(.Delay*3600);
                break;
            default:
                mes "invalid quest.";
                close;
        }
        mes "Quest Requirement(s):";
        .@size = getarraysize(.@item);
        for (.@i = 0; .@i < .@size; .@i++) {
            mes " > "+.@amount[.@i]+"x "+getitemname(.@item[.@i]);
            if (countitem(.@item[.@i]) < .@amount[.@i])
                .@fail++;
        }
        if (!.@fail) {
            next;
            if (select("Submit Quest", "Cancel") == 1) {
                for (.@i = 0; .@i < .@size; .@i++)
                    delitem .@item[.@i], .@amount[.@i];
                getitem .@reward[0], .@reward[1];
                quest_random = 0;
            }
        }
        close;
        
        OnInit:
        set .Delay,24;        // Quest delay, in hours (0 to disable).
        .name$ = "[ ^FF0000Craft Collector^000000 ]";
    }

     

  10. On 8/24/2019 at 3:10 PM, Emistry said:
    
    
    prontera,155,181,5	script	Sample	4_F_KAFRA1,{
    	if (!quest_random) {
    		quest_random = rand(1, 3);
    		mes "You have been assigned with a new quest.";
    		next;
    	}
    	switch(quest_random) {
    		case 1:
    			setarray .@reward, 4001, 1;
    			setarray .@item, 512;
    			setarray .@amount, 100;
    			break;
    		case 2:
    			setarray .@reward, 4002, 1;
    			setarray .@item, 501, 502, 503;
    			setarray .@amount, 3, 1, 2;
    			break;
    		case 3:
    			setarray .@reward, 4003, 1;
    			setarray .@item, 512, 503;
    			setarray .@amount, 300, 100;
    			break;
    		default:
    			mes "invalid quest.";
    			close;
    	}
    	mes "Quest Requirement(s):";
    	.@size = getarraysize(.@item);
    	for (.@i = 0; .@i < .@size; .@i++) {
    		mes " > "+.@amount[.@i]+"x "+getitemname(.@item[.@i]);
    		if (countitem(.@item[.@i]) < .@amount[.@i])
    			.@fail++;
    	}
    	if (!.@fail) {
    		next;
    		if (select("Submit Quest", "Cancel") == 1) {
    			for (.@i = 0; .@i < .@size; .@i++)
    				delitem .@item[.@i], .@amount[.@i];
    			getitem .@reward[0], .@reward[1];
    			quest_random = 0;
    		}
    	}
    	close;
    }

    try

    Hi I know this thread is old ..I just sent you a message regarding this @Emistry thankyou 

  11. Hi, can I request for a script that ask player to craft items like dyestuff, poison bottle, and other like food and reward him with exp and zeny ? ..GM can add all crating items thru script  and it will randomly ask player just 1 item and ads countdown timer for 3 hours to finish the said quest or it will expire and the quest cooldown will be after 24hours... Thankyou

  12. 1 minute ago, Akkarin said:

    That's a hard one to answer.

    Technically it's possible to use a client that's more than 10 years old, but in all honesty, I wouldn't. An awful lot of code has changed since those old clients were supported, so if something breaks you wouldn't find much in the way of support from anyone, unless one of us oldies slide into your topic because we used to have a server back then and remember how they're set-up  /meh

    Thankyou for your quick and honest response sir .I will use 2012 then keepsafe

     

×
×
  • Create New...