Jump to content
  • 0

Hammer Time for Middle Headgear 2: The Enchantment


johnbond

Question


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

Some of my players were requesting this new NPC. They linked me to the site of an official ragnarok server here: http://ragnarok.levelupgames.ph/main/enchantment-npc-guide-midheadgears/ . Its another NPC made specifically for mid gears enchantments which requires a "midgard coin" (#6242). This was out on the official server since last Sept 2012 so I was wondering if we already have the NPC for this by now?

 

Does anyone have the script/s for this? Or may I request to make one for me? I can pay for the service.

 

Let me know guys.

 

Thank you in advance! /no1

Link to comment
Share on other sites

Recommended Posts


  • Group:  Members
  • Topic Count:  14
  • Topics Per Day:  0.00
  • Content Count:  25
  • Reputation:   0
  • Joined:  11/08/13
  • Last Seen:  

hey how can i make the item delete when it fails?  i mean iwant the headgear to be deleted when it failed

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

 

If getequipid was returning 0 then yeah it would.

 

 

This is awesome!

 

But kindly can you make me an edit that instead of 1M zeny it will ask for 3 pcs of the item 6242,Midgard_Coin. And will also have a random chance of 30% of success. When fail the item will not break and will retain its previous enchantment/s.

 

I plan to use this NPC but I am afraid to touch it to include these mods as I might ruin it.

 

By the way, where can I see the list in this script what enchantments this NPC could give?

 

Thank you very much Mr. Skorm!

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

Posted · Hidden by Skorm, November 28, 2013 - Repeat request
Hidden by Skorm, November 28, 2013 - Repeat request

 

 

If getequipid was returning 0 then yeah it would.

prontera,201,188,4	script	Neo Enchanter	851,{
	mes .npc$;
	mes "Hello there!";
	mes "I can make Neo items even better!";
	mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,";
	mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,";
	mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000.";
	mes "I'll enchant it for 1,000,000z"; next;
	if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; }
	if(Zeny<.pric) { mes .npc$; mes "I'm sorry you don't have enough Zeny, please come back later."; close; }
	if(.note){
		mes "^a92435----------NOTICE----------";
		mes "The enchanted Neo armor will only";
		mes "be available during the event";
		mes "period. (October 17 - November 21)"; next;
	}
	
	mes .npc$;
	mes "Which Neo item would you like to enchant?"; next;
	while(set(.@a,.@a+1)<=.e_len) {
		if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|"))
			set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:";
		else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:";
	}
	
	select(.@menu$);
	set .@eq_loc, .e_loc[(@menu-1)];
	set .@eq_id, getequipid(.@eq_loc);
	set .@eq_rf, getequiprefinerycnt(.@eq_loc);
	if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) {
		set .@crd0, getequipcardid(.@eq_loc,0);
		while(getd(".menu"+.@b+"$")!="") {
			mes .npc$;
			mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next;
			select(getd(".menu"+.@b+"$"));
			setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1)));
			setd(".@n_crd"+(.@b+1),((.@b>1)?.itm2[@menu-1]:.itm1[0]+((@menu-1)*10)));
			set(.@b,.@b+1);
		}
	} else {
		mes .npc$;
		mes "Sorry I don't recoginze that equipment.";
		close;
	}
	
	set Zeny, Zeny-.pric;
	delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3;
	getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3;
	misceffect .efet;
	mes .npc$;
	mes "All done!";
	equip .@eq_id;
	close;

//NPC Constants
	OnInit:
		//=-=-=-=-=-=-=Configuration=-=-=-=-=-=-=
		set      .npc$  ,    "[Neo Enchanter]";                              // NPC Name
		set      .note  ,    1;                                              // Shows notice 1=on/0=off
		set      .pric  ,    1000000;                                        // Price
		set      .efet  ,    154;                                            // Effect Number
		setarray .itm1  ,    4704, 4764;                                     // Item Menu1 Range
		setarray .itm2  ,    4802, 4788, 4765, 4763, 4799;                   // Item Menu2
		setarray .itm_c$,    "st", "nd", "rd";                               // Numbers
		setarray .eqp$  ,    "Shield", "Garment", "Accessory1", "Accessory2";// Menu3
		setarray .e_itl$,    "2137", "2548", "2763", "2763";                 // Equip Items
		setarray .e_loc ,    3, 5, 7, 8;                                     // Equip Locations
		set      .e_itm$,    implode(.e_itl$,"|");
		set      .e_len ,    getarraysize(.eqp$);
		set      .i_len ,    getarraysize(.itm2);
		//=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-=
		for(set(.@a,.itm1[0]);.@a<=.itm1[1];set(.@a,.@a+10))
			set .menu0$, .menu0$+ getitemname(.@a)+":";
		set .menu1$, .menu0$;
		for(set(.@a,0);.@a<.i_len;set(.@a,.@a+1))
			set .menu2$, .menu2$+ getitemname(.itm2[.@a])+":";
}

 

 

This is awesome!

 

But kindly can you make me an edit that instead of 1M zeny it will ask for 3 pcs of the item 6242,Midgard_Coin. And will also have a random chance of 30% of success. When fail the item will not break and will retain its previous enchantment/s.

 

I plan to use this NPC but I am afraid to touch it to include these mods as I might ruin it.

 

By the way, where can I see the list in this script what enchantments this NPC could give?

 

Thank you very much Mr. Skorm!

 

 

 

Anyone? :)

 

Thanks!

Link to comment

  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

 

This is awesome!

 

But kindly can you make me an edit that instead of 1M zeny it will ask for 3 pcs of the item 6242,Midgard_Coin. And will also have a random chance of 30% of success. When fail the item will not break and will retain its previous enchantment/s.

 

I plan to use this NPC but I am afraid to touch it to include these mods as I might ruin it.

 

By the way, where can I see the list in this script what enchantments this NPC could give?

 

Thank you very much Mr. Skorm!

 

 

I have no time to test, but the changes have been made.

prontera,201,188,4	script	Neo Enchanter	851,{
	mes .npc$;
	mes "Hello there!";
	mes "I can make Neo items even better!";
	mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,";
	mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,";
	mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000.";
	mes "I'll enchant it for "+.pric+" "+getitemname(.item)+"(s)"; next;
	if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; }
	if(countitem(.item)<.pric) { mes .npc$; mes "I'm sorry you don't have enough "+getitemname(.item)+", please come back later."; close; }
	if(.note){
		mes "^a92435----------NOTICE----------";
		mes "The enchanted Neo armor will only";
		mes "be available during the event";
		mes "period. (October 17 - November 21)"; next;
	}
	
	mes .npc$;
	mes "Which Neo item would you like to enchant?"; next;
	while(set(.@a,.@a+1)<=.e_len) {
		if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|"))
			set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:";
		else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:";
	}
	
	select(.@menu$);
	set .@eq_loc, .e_loc[(@menu-1)];
	set .@eq_id, getequipid(.@eq_loc);
	set .@eq_rf, getequiprefinerycnt(.@eq_loc);
	if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) {
		set .@crd0, getequipcardid(.@eq_loc,0);
		while(getd(".menu"+.@b+"$")!="") {
			mes .npc$;
			mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next;
			select(getd(".menu"+.@b+"$"));
			setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1)));
			setd(".@n_crd"+(.@b+1),((.@b>1)?.itm2[@menu-1]:.itm1[0]+((@menu-1)*10)));
			set(.@b,.@b+1);
		}
	} else {
		mes .npc$;
		mes "Sorry I don't recoginze that equipment.";
		close;
	}
	
	delitem(.item,.pric);
	if(rand(101)<=.rate) {
		delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3;
		getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3;
		misceffect .efet;
		mes .npc$;
		mes "All done!";
		emotion e_no1,0;
		equip .@eq_id;
	} else {
		misceffect 155;
		mes .npc$;
		mes "I'm sorry I've failed you";
		emotion e_sob,0;
	}
	close;

//NPC Constants
	OnInit:
		//=-=-=-=-=-=-=Configuration=-=-=-=-=-=-=
		set      .npc$  ,    "[Neo Enchanter]";                              // NPC Name
		set      .note  ,    1;                                              // Shows notice 1=on/0=off
		set      .pric  ,    3;                                              // Price
		set      .item  ,    6242;                                           // required item
		set      .rate  ,    30;
		set      .efet  ,    154;                                            // Effect Number
		setarray .itm1  ,    4704, 4764;                                     // Item Menu1 Range
		setarray .itm2  ,    4802, 4788, 4765, 4763, 4799;                   // Item Menu2
		setarray .itm_c$,    "st", "nd", "rd";                               // Numbers
		setarray .eqp$  ,    "Shield", "Garment", "Accessory1", "Accessory2";// Menu3
		setarray .e_itl$,    "2137", "2548", "2763", "2763";                 // Equip Items
		setarray .e_loc ,    3, 5, 7, 8;                                     // Equip Locations
		set      .e_itm$,    implode(.e_itl$,"|");
		set      .e_len ,    getarraysize(.eqp$);
		set      .i_len ,    getarraysize(.itm2);
		//=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-=
		for(set(.@a,.itm1[0]);.@a<=.itm1[1];set(.@a,.@a+10))
			set .menu0$, .menu0$+ getitemname(.@a)+":";
		set .menu1$, .menu0$;
		for(set(.@a,0);.@a<.i_len;set(.@a,.@a+1))
			set .menu2$, .menu2$+ getitemname(.itm2[.@a])+":";
}
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

 

 

This is awesome!

 

But kindly can you make me an edit that instead of 1M zeny it will ask for 3 pcs of the item 6242,Midgard_Coin. And will also have a random chance of 30% of success. When fail the item will not break and will retain its previous enchantment/s.

 

I plan to use this NPC but I am afraid to touch it to include these mods as I might ruin it.

 

By the way, where can I see the list in this script what enchantments this NPC could give?

 

Thank you very much Mr. Skorm!

 

 

I have no time to test, but the changes have been made.

 

 

Nice!

 

Buyt where can I set which enchants should it give? I believe the neo enchanter should give 3 enchants?

 

Thank you my friend!

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

Nice!

 

Buyt where can I set which enchants should it give? I believe the neo enchanter should give 3 enchants?

 

Thank you my friend!

 

		setarray .itm1  ,    4704, 4764;                                     // Item Menu1 Range
		setarray .itm2  ,    4802, 4788, 4765, 4763, 4799;                   // Item Menu2
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

 

Nice!

 

Buyt where can I set which enchants should it give? I believe the neo enchanter should give 3 enchants?

 

Thank you my friend!

 

		setarray .itm1  ,    4704, 4764;                                     // Item Menu1 Range
		setarray .itm2  ,    4802, 4788, 4765, 4763, 4799;                   // Item Menu2

Oh. Can we make it 3 enchants?

 

Thanks!

 

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

Oh. Can we make it 3 enchants?

 

Thanks!

 

 

This information has more than 3.

 

http://ragnarok.levelupgames.ph/main/neo-echantment-special-event/

 

I'll leave the rest up to you.

prontera,201,188,4	script	Neo Enchanter	851,{
	mes .npc$;
	mes "Hello there!";
	mes "I can make Neo items even better!";
	mes "If you have a ^0000FF"+getitemname(atoi(.e_itl$[1]))+"^000000,";
	mes "a ^0000FF"+getitemname(atoi(.e_itl$[0]))+"^000000,";
	mes "or a ^0000FF"+getitemname(atoi(.e_itl$[2]))+"^000000.";
	mes "I'll enchant it for "+.pric+" "+getitemname(.item)+"(s)."; next;
	if(select("Yes:No")&2) { mes .npc$; mes "Alright, thanks anyways!"; close; }
	if(countitem(.item)<.pric) { mes .npc$; mes "I'm sorry you don't have enough "+getitemname(.item)+", please come back later."; close; }
	if(.note){
		mes "^a92435----------NOTICE----------";
		mes "The enchanted Neo armor will only";
		mes "be available during the event";
		mes "period. (October 17 - November 21)"; next;
	}
	
	mes .npc$;
	mes "Which Neo item would you like to enchant?"; next;
	while(set(.@a,.@a+1)<=.e_len) {
		if(compare("|"+.e_itl$[.@a-1]+"|","|"+getequipid(.e_loc[.@a-1])+"|"))
			set .@menu$, .@menu$+.eqp$[.@a-1]+"- [^0000FF"+getitemname(getequipid(.e_loc[.@a-1]))+"^000000]:";
		else set .@menu$, .@menu$+"^adb4be"+.eqp$[.@a-1]+"- [Empty]^000000:";
	}
	
	select(.@menu$);
	set .@eq_loc, .e_loc[(@menu-1)];
	set .@eq_id, getequipid(.@eq_loc);
	set .@eq_rf, getequiprefinerycnt(.@eq_loc);
	if(compare("|"+.e_itm$+"|","|"+.@eq_id+"|")) {
		set .@crd0, getequipcardid(.@eq_loc,0);
		while(getd(".menu"+.@b+"$")!="") {
			mes .npc$;
			mes "Choose ^0000FF"+(.@b+1)+.itm_c$[.@b]+"^000000 enchantment for your item."; next;
			select(getd(".menu"+.@b+"$"));
			setd(".@crd"+(.@b+1),getequipcardid(.@eq_loc,(.@b+1)));
			setd(".@n_crd"+(.@b+1),getd(".itm"+(.@b+1)+"["+(@menu-1)+"]"));
			set(.@b,.@b+1);
		}
	} else {
		mes .npc$;
		mes "Sorry I don't recoginze that equipment.";
		close;
	}
	
	delitem(.item,.pric);
	if(rand(101)<=.rate) {
		delitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@crd1, .@crd2, .@crd3;
		getitem2 .@eq_id, 1, 1, .@eq_rf, 0, .@crd0, .@n_crd1, .@n_crd2, .@n_crd3;
		misceffect .efet;
		mes .npc$;
		mes "All done!";
		emotion e_no1,0;
		equip .@eq_id;
	} else {
		misceffect 155;
		mes .npc$;
		mes "I'm sorry I've failed you";
		emotion e_sob,0;
	}
	close;

//NPC Constants
	OnInit:
		//=-=-=-=-=-=-=Configuration=-=-=-=-=-=-=
		set      .npc$  ,    "[Neo Enchanter]";                              // NPC Name
		set      .note  ,    1;                                              // Shows notice 1=on/0=off
		set      .pric  ,    3;                                              // Price
		set      .item  ,    6242;                                           // required item
		set      .rate  ,    30;
		set      .efet  ,    154;                                            // Effect Number
		setarray .itm1  ,    4704;                                           // Item Menu1
		setarray .itm2  ,    4764;                                           // Item Menu2
		setarray .itm3  ,    4802, 4788, 4765, 4763, 4799;                   // Item Menu3
		setarray .itm_c$,    "st", "nd", "rd";                               // Numbers
		setarray .eqp$  ,    "Shield", "Garment", "Accessory1", "Accessory2";// Menu3
		setarray .e_itl$,    "2137", "2548", "2763", "2763";                 // Equip Items
		setarray .e_loc ,    3, 5, 7, 8;                                     // Equip Locations
		set      .e_itm$,    implode(.e_itl$,"|");
		set      .e_len ,    getarraysize(.eqp$);
		set      .len0  ,    getarraysize(.itm1);
		set      .len1  ,    getarraysize(.itm2);
		set      .len2  ,    getarraysize(.itm3);
		//=-=-=-=-=-=-=-=-Skorm-=-=-=-=-=-=-=-=-=
		while(getd(".len"+.@a)) {
			for(set(.@b,0);.@b<getd(".len"+.@a);set(.@b,.@b+1))
				setd ".menu"+.@a+"$", getd(".menu"+.@a+"$")+ getitemname(getd(".itm"+(.@a+1)+"["+.@b+"]"))+":";
			set(.@a,.@a+1);
		}
}
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  55
  • Topics Per Day:  0.01
  • Content Count:  107
  • Reputation:   1
  • Joined:  09/17/13
  • Last Seen:  

Skorm in mid gear enchant Bling npc, How to  do this? When the enchant failed then the item will be deleted. Thank you.

Edited by gyroguevarra
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

Skorm in mid gear enchant Bling npc, How to  do this? When the enchant failed then the item will be deleted. Thank you.

if(rand(0,3)) { mes .npc$; mes "I'm sorry but I've failed you!"; misceffect 155; emotion e_sob,0; delitem .item,.pric; delitem2 .@geid, 1, 1, .@gerf, 0, .@crd1, .@crd2, .@crd3, .@crd4; close; }
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  1
  • Reputation:   0
  • Joined:  03/09/14
  • Last Seen:  

Posted · Hidden by Skorm, September 4, 2014 - No reason given
Hidden by Skorm, September 4, 2014 - No reason given

R> MID GEAR ENCHANTER NPC the code above is not working Please help!

Link to comment

  • Group:  Members
  • Topic Count:  25
  • Topics Per Day:  0.01
  • Content Count:  52
  • Reputation:   2
  • Joined:  01/07/13
  • Last Seen:  

my neo items are rentitem for 7 days. but when enchants, rentitem is gone. how to make it to still a rentitem for 7days?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  113
  • Topics Per Day:  0.03
  • Content Count:  457
  • Reputation:   11
  • Joined:  02/17/13
  • Last Seen:  

my neo items are rentitem for 7 days. but when enchants, rentitem is gone. how to make it to still a rentitem for 7days?

 

 

Use rentitem instead of getitem when giving out items after enchantments. Next problem is how to know current remaining "rent time" of the item when giving them out.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  25
  • Topics Per Day:  0.01
  • Content Count:  52
  • Reputation:   2
  • Joined:  01/07/13
  • Last Seen:  

 

my neo items are rentitem for 7 days. but when enchants, rentitem is gone. how to make it to still a rentitem for 7days?

 

 

Use rentitem instead of getitem when giving out items after enchantments. Next problem is how to know current remaining "rent time" of the item when giving them out.

 

dunno what will i edit :o need some help

Link to comment
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.   Paste as plain text instead

  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.

×
×
  • Create New...