Jump to content

Brynner

Community Contributors
  • Content Count

    559
  • Joined

  • Last visited

  • Days Won

    7

Posts posted by Brynner


  1. if you open that box. it will ask you which item class you want to get.

     

    choices.

     

    Swordsman

    Magician

    Archer

    Acolyte

    Merchant

    Thief

     

    for Swordsman.

    you'll get +7 Formal suit, +7 boots, +7 manteau, +7 shield.

    for Magician

    you'll get +7 Formal suit, +7 shoes, +7 muffler, +7 guard.

    for Archer

    you'll get +7 Formal suit, +7 boots, +7 muffler, +7 guard.

    for Merchant

    you'll get +7 Formal suit, +7 boots, +7 manteau, +7 buckler.

    for Thief

    you'll get +7 Formal suit, +7 boots, +7 manteau, +7 buckler.

     

    thanks in advance.


  2. You could try something like this:

    while (getrefine(EQI_ARMOR) < 6) {	successrefitem EQI_ARMOR;}

     

    Item script version:

    while (getrefine(EQI_ARMOR) < 6) { successrefitem EQI_ARMOR; }

     

    If you're using a "Guarantee_Armor_6Up", I would assume you're refining an armor lol. The only choice the user should have is wearing the desired equipment to be refined.

     

    how this thing works? you use the 6235 (Guarantee_Armor_6Up) and it will popup a refiner npc dialog?


  3. i just want this +6 Armor Refine Ticket will be usable. if you use it. it will ask you which item you want to safe refine. after you choose it will refine it to +6 without failed. it will consume the +6 Armor Refine Ticket if it was successfully refine. thanks in advance. 

     

     Item ID# 6235 (Guarantee_Armor_6Up)


  4. how to make this lotti girl announcer will announce only if you get item below 10%. and it will not announce the default reward item.

    	mes "[Lotti Girl]";	mes "It costs "+.Price+" Zeny to play.";	if (Zeny < .Price) close;	next;	if(select("Deal me in!:No way...")==2) close;	mes "[Lotti Girl]";	mes "Here we go...";	progressbar "",2;	set Zeny, Zeny-.Price;	set .@i, rand(1,.Total);	if (rand(1,100) > getd(".P"+.@i+"[0]")) {		for(set .@j,0; .@j<getarraysize(.Default); set .@j,.@j+2) {			getitem .Default[.@j], .Default[.@j+1];			if (!.@k[0]) setarray .@k[0], .Default[.@j], .Default[.@j+1]; } }	else {		for(set .@j,1; .@j<getarraysize(getd(".P"+.@i)); set .@j,.@j+2) {			getitem getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]");			if (!.@k[0]) setarray .@k[0], getd(".P"+.@i+"["+.@j+"]"), getd(".P"+.@i+"["+(.@j+1)+"]"); } }	announce "Congratulations to "+strcharinfo(0)+" for getting "+.@k[1]+"x "+getitemname(.@k[0])+"!",0;	specialeffect2 248;	close;

     


  5. im using tr0n's Questboard [1.4.4]

    //===== rAthena Script =======================================//= tr0n's Questboard//===== By: ==================================================//= tr0n//===== Current Version: =====================================//= 1.4.4//===== 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//============================================================prontera,129,215,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;	}		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.";		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, 1;	set .hunting, 1;		//Quest Delay (seconds)	//24 hours = 86400 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>,...);				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;}}

     

    but the reward item is only one.

     

    i just want to make it two reward item.

     

    just like 10 Yggdrasil Berry and 10 Yggdrasil Seed.

     

    thanks in advance.


  6. Here is the @whosell  Plugin

     

    tested with Linux and  VS2010

     

     

    Current the Plugin is setted to show a Minimap Dot where the Vendor is Located , if you dont want this  just change this line

     

        change it to 0

    bool flag = 1; // place dot on the minimap?  

     

     

    for more info on how to to use HPM visit Here

     

     

     

    Download Link

    download link not working.


  7. neqste is correct. on the current version of harmony lots of hacks are still usable. specially for the no delay hacks. and luck of support from the developer. until now they don't have any updates. and no more news from the developer. he is not active on his own forum. his last visit is Tue Sep 24, 2013 1:44 am


  8. i see. open your accessoryid.lub

    look for ACCESSORY_GOLDEN_FISH = 1081 just add ,. just like this. ACCESSORY_GOLDEN_FISH = 1081,

     

    same for accname.lub

    loof for [ACCESSORY_IDs.ACCESSORY_GOLDEN_FISH] = "_ÀÔ¿¡¹®È²±Ý¹°°í±â" just add , again. [ACCESSORY_IDs.ACCESSORY_GOLDEN_FISH] = "_ÀÔ¿¡¹®È²±Ý¹°°í±â",


  9. just remove the , on your accessoryid.lub

    ACCESSORY_RED_INCUBUS_HORN = 1281, it should be ACCESSORY_RED_INCUBUS_HORN = 1281

     

    just remove the , on your accname.lub

    [ACCESSORY_IDs.ACCESSORY_RED_INCUBUS_HORN] = "_RED_INCUBUS_HORN", it should be [ACCESSORY_IDs.ACCESSORY_RED_INCUBUS_HORN] = "_RED_INCUBUS_HORN"

     

    i think your don't need the accname_eng.lub.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.