Jump to content
  • 0
Sign in to follow this  
Ink

1 quick refiner and rough converter

Question

Does anyone have the following:

 

1. A quick refiner like "you got a sword[4] equipped, do you want all sword[4] in your inventory at once? Do you want me to refine it to save, if not enter the ammount you want me to refine. This consumes "ammount" of "phracon/oridecon/hd"

 

2. you got 123 rough elu/ori/carnium/ or whatever else. I can make "ammount" elu/ori/etc. out of it

 

Using renewal mechanics, max refine is +20

 

Share this post


Link to post
Share on other sites

3 answers to this question

Recommended Posts

  • 0

I remember I made it once

and mine ... search for every single piece in the inventory, you don't have to equip it to be listed

http://rathena.org/board/topic/91508-multi-item-refine/

 

I just done reading some official refiner scripts and ... I just found out

its best to refine the weapon or armor into +7 with normal refiner

then go to MightyHammer to get it into +10

then go to Basta to get it into +20

3 of them using different types of material, might be tricky

 

is this 100% success rate ?

I can only make this if it is 100% success rate

Share this post


Link to post
Share on other sites
  • 0

no, it's using official success rate :(

 

the search for all in the inventory is good. Maybe it is possible to:

 

1 npc for 0 to 10 with ori/elu

1 npc using hd items for 10-20

1 npc using refined items

 

its's not about to have all in 1 npcs, its more you dont have to upgrade one gear after another... that takes so long and is annoying (same for the rough material conversion)

Edited by Medusalem

Share this post


Link to post
Share on other sites
  • 0

Ripped from Kenedos script

prontera,150,150,0	script	Fulerr	4_M_LGTMAN,{	callfunc "BulkRefine","Fulerr";	end;}function	script	BulkRefine	{	mes "[" + getarg(0) + "]";	mes "I'm the Armsmith.";	mes "I can refine all kinds of weapons, armor and equipment, so let me";	mes "know what you want me to refine.";	next;	setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";	set .@menu$,"";	for(set .@i,1; .@i<=10; set .@i,.@i+1) {		if(getequipisequiped(.@i)) {			set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";			set .@equipped,1;		}		set .@menu$, .@menu$ + ":";	}	if (.@equipped == 0) {		mes "[" + getarg(0) + "]";		mes "I don't think I can refine any items you have...";		close;	}	set .@part, select(.@menu$);	if(!getequipisequiped(.@part)) { //custom check		mes "[" + getarg(0) + "]";		mes "You're not wearing";		mes "anything there that";		mes "I can refine.";		emotion e_an;		close;	}	//Check if the item is refinable...	if(!getequipisenableref(.@part)) {		mes "[" + getarg(0) + "]";		mes "I don't think I can";		mes "refine this item at all...";		close;	}	//Check to see if the items is already +10	if(getequiprefinerycnt(.@part) >= 10) {		mes "[" + getarg(0) + "]";		mes "I can't refine this";		mes "any more. This is as";		mes "refined as it gets!";		close;	}	set .@refineitemid, getequipid(.@part); // save id of the item	set .@refinerycnt, getequiprefinerycnt(.@part); //save refinery count	switch(getequipweaponlv(.@part)){	case 0: 	//Refine Armor		set .@price,2000;		set .@material,985;		set .@safe,4;		break;	case 1: 	//Refine Level 1 Weapon		set .@price,50;		set .@material,1010;		set .@safe,7;		break;	case 2: 	//Refine Level 2 Weapon		set .@price,200;		set .@material,1011;		set .@safe,6;		break;	case 3: 	//Refine Level 3 Weapon		set .@price,5000;		set .@material,984;		set .@safe,5;		break;	case 4: 	//Refine Level 4 Weapon		set .@price,20000;		set .@material,984;		set .@safe,4;		break;	case 5: 	//Refine other stuff?		set .@price,2000;		set .@material,985;		set .@safe,4;		break;	}	if(getequiprefinerycnt(.@part) < .@safe) {		mes "[" + getarg(0) + "]";		mes "I can refine this to the safe limit or a desired number of times. It's your choice.";		next;		set .@menu2,select("To the safe limit, please.","I'll decide how many times.","I've changed my mind...");	} else		set .@menu2,2;	switch(.@menu2){		case 1:			set .@refinecnt,.@safe - getequiprefinerycnt(.@part);			break;		case 2:			next;			mes "[" + getarg(0) + "]";			mes "So how many times would you like me to refine your item?";			next;			input .@refinecnt;			set .@refinecheck,.@refinecnt + getequiprefinerycnt(.@part);			if (.@refinecnt < 1 || .@refinecheck > 10) {				mes "[" + getarg(0) + "]";				mes "I can't refine this item that many times.";				close;			}			set .@refinecnt, getequiprefinerycnt(.@part) + .@refinecnt;			mes "Remember this will attempt to refine to ^009933+"+.@refinecnt+"^000000 ^FF0000ALL^000000 the ^0000FF"+getequipname(.@part)+"^000000 items you have in your inventory!!";			next;			if(select("Accept","Reject") == 2){				mes "[" + getarg(0) + "]";				mes "Smart kid....";				close;			}			break;		case 3:			next;			mes "[" + getarg(0) + "]";			mes "You said so..Hmm so be it...";			close;	}	deletearray @inventorylist_refine;	deletearray @inventorylist_id;	getinventorylist;	set .@i, 0;	for (set .@j, 0; .@j < @inventorylist_count; set .@j, .@j + 1) {		if ( @inventorylist_id[.@j] == getequipid(.@part) ) {			set .@temp[.@i], @inventorylist_refine[.@j];			set .@i, .@i + 1;		}	}	deletearray @inventorylist_refine;	deletearray @inventorylist_id;		.@fullprice = 0;	.@j = 0;	for ( set .@k, 0; .@k < .@i ; set .@k, .@k + 1) {		if ( .@temp[.@k] < .@refinecnt ) {			set .@fullprice, .@fullprice + ( ( .@refinecnt - .@temp[.@k] ) * .@price );			set .@j, .@j + (.@refinecnt - .@temp[.@k]);		}	}	deletearray .@temp;		mes "[" + getarg(0) + "]";	mes "That will cost you " + .@j + " " + getitemname(.@material) + " and " + .@fullprice + " Zeny. Is that ok?";	next;	if(select("Yes","No...") == 2){		mes "[" + getarg(0) + "]";		mes "You said so..Hmm so be it...";		close;	}	if ( getbrokenid (.@refineitemid) ) {		mes "[" + getarg(0) + "]";		mes "Sorry but I can't work to refine an equipment if you have another of the same kind of item that's not repaired in your inventory.";		close;	}	if(countitem(.@material) < .@j || Zeny < .@fullprice) {		mes "[" + getarg(0) + "]";		mes "Is that all you got? Unfortunately I can't work for you at a lower price. Try putting yourself in my shoes.";		close;	}	while(1){		for (set .@c, 0; .@c < .@re; set .@c, .@c + 1)			deletearray getd(".@equip_inf"+.@c);		if ( getequipisequiped(.@part) == 0 ) {			equip .@refineitemid;			set .@re, 0;			while ( getequiprefinerycnt(.@part) >= .@refinecnt ) {				for (set .@c, 0; .@c < 4; set .@c, .@c + 1)					if (getequipcardid(.@part,.@c) != 0)						setd ".@equip_inf"+.@re+"[.@c]", getequipcardid(.@part,.@c);				setd ".@equip_inf"+.@re+"[4]", getequiprefinerycnt(.@part);				unequip .@part;				delitem2 .@refineitemid,1,1,getd(".@equip_inf"+.@re+"[4]"),0,getd(".@equip_inf"+.@re+"[0]"),				getd(".@equip_inf"+.@re+"[1]"),getd(".@equip_inf"+.@re+"[2]"),getd(".@equip_inf"+.@re+"[3]");				equip .@refineitemid;				set .@re, .@re + 1;			}			if (.@re) {				for (set .@c, 0; .@c < .@re; set .@c, .@c + 1) {					getitem2 .@refineitemid,1,1,getd(".@equip_inf"+.@c+"[4]"),0,getd(".@equip_inf"+.@c+"[0]"),					getd(".@equip_inf"+.@c+"[1]"),getd(".@equip_inf"+.@c+"[2]"),getd(".@equip_inf"+.@c+"[3]");				}			}			for (set .@c, 0; .@c < .@re; set .@c, .@c + 1)				deletearray getd(".@equip_inf"+.@c);		}		set Zeny, Zeny - .@price;		delitem .@material, 1;		if(getequippercentrefinery(.@part) <= rand(100)) {			set .@breakgap, .@refinecnt - getequiprefinerycnt(.@part) ;			set .@j, .@j - .@breakgap ;			failedrefitem .@part;			if(.@j <= 0) close;		}		else {			successrefitem .@part;			set .@j, .@j - 1;			if(.@j <= 0) close;			set .@re, 0;			while ( getequiprefinerycnt(.@part) >= .@refinecnt ) {				for (set .@c, 0; .@c < 4; set .@c, .@c + 1)					if (getequipcardid(.@part,.@c) != 0)						setd ".@equip_inf"+.@re+"[.@c]", getequipcardid(.@part,.@c);				setd ".@equip_inf"+.@re+"[4]", getequiprefinerycnt(.@part);				unequip .@part;				delitem2 .@refineitemid,1,1,getd(".@equip_inf"+.@re+"[4]"),0,getd(".@equip_inf"+.@re+"[0]"),				getd(".@equip_inf"+.@re+"[1]"),getd(".@equip_inf"+.@re+"[2]"),getd(".@equip_inf"+.@re+"[3]");				equip .@refineitemid;				set .@re, .@re + 1;			}			if (.@re) {				for (set .@c, 0; .@c < .@re; set .@c, .@c + 1) {					getitem2 .@refineitemid,1,1,getd(".@equip_inf"+.@c+"[4]"),0,getd(".@equip_inf"+.@c+"[0]"),					getd(".@equip_inf"+.@c+"[1]"),getd(".@equip_inf"+.@c+"[2]"),getd(".@equip_inf"+.@c+"[3]");				}			}		}		set .@clang, .@clang + 1;		sleep2 300;	}}

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

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