Jump to content

[Share]Custom Enchant System


Emrys

Recommended Posts

I dont know If it will work...

I just thought it :D

 

Easily and Funny (if it work...)

 

Look how it is work...

Every Time you enchant your weapon - Armor- Jewel, you will get -1% chance ....

For example Safe is 3.

Change is 100%.

at +4 to +5 u will have 99%

etc

etc

 

Index: java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java
===================================================================
--- java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java	(revision 3474)
+++ java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java	(working copy)
@@ -88,7 +88,7 @@
			// check for maximum enchant level
			if (_maxEnchantLevel != 0 && enchantItem.getEnchantLevel() >= _maxEnchantLevel)
				return false;
-
+			
			if(_itemIds != null && Arrays.binarySearch(_itemIds, enchantItem.getItemId()) < 0)
				return false;

@@ -172,22 +172,27 @@
					return -1;

				if (_isWeapon)
-					chance = Config.BLESSED_ENCHANT_CHANCE_WEAPON;
+					for(int x=-Config.ENCHANT_SAFE_MAX; x<Config.ENCHANT_MAX_WEAPON; x++) //By TheEnd
+					chance = Config.BLESSED_ENCHANT_CHANCE_WEAPON-x;
				else if (isAccessory)
-					chance = Config.BLESSED_ENCHANT_CHANCE_JEWELRY;
+					for(int z=-Config.ENCHANT_SAFE_MAX; z< Config.ENCHANT_MAX_JEWELRY; z++)
+					chance = Config.BLESSED_ENCHANT_CHANCE_JEWELRY-z;
				else
+					for(int v=-Config.ENCHANT_SAFE_MAX_FULL; v< Config.ENCHANT_MAX_ARMOR; v++)
-					chance = Config.BLESSED_ENCHANT_CHANCE_ARMOR;
+                                      chance = Config.BLESSED_ENCHANT_CHANCE_ARMOR-v;
			}
			else
			{
				if (_isWeapon)
-					chance = Config.ENCHANT_CHANCE_WEAPON;
-				else if (isAccessory)
-					chance = Config.ENCHANT_CHANCE_JEWELRY;
+					for(int i=-Config.ENCHANT_SAFE_MAX; i<Config.ENCHANT_MAX_WEAPON; i++) //By TheEnd
+					chance = Config.ENCHANT_CHANCE_WEAPON-i;
+				else	if (isAccessory)
+					for(int d=-Config.ENCHANT_SAFE_MAX; d< Config.ENCHANT_MAX_JEWELRY; d++)
+					chance = Config.ENCHANT_CHANCE_JEWELRY-d;				
				else
-					chance = Config.ENCHANT_CHANCE_ARMOR;
+					for(int a=-Config.ENCHANT_SAFE_MAX_FULL; a< Config.ENCHANT_MAX_ARMOR; a++)
+					chance = Config.ENCHANT_CHANCE_ARMOR-a;
			}
			chance += _chanceAdd;

			if (supportItem != null)

or:

Index: java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java
===================================================================
--- java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java	(revision 3474)
+++ java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java	(working copy)
@@ -88,7 +88,7 @@
			// check for maximum enchant level
			if (_maxEnchantLevel != 0 && enchantItem.getEnchantLevel() >= _maxEnchantLevel)
				return false;
-
+			
			if(_itemIds != null && Arrays.binarySearch(_itemIds, enchantItem.getItemId()) < 0)
				return false;

@@ -172,22 +172,27 @@
					return -1;

				if (_isWeapon)
-					chance = Config.BLESSED_ENCHANT_CHANCE_WEAPON;
+					for(int x=-Config.ENCHANT_SAFE_MAX; x<Config.ENCHANT_MAX_WEAPON; x++) //By TheEnd
+					chance = Config.BLESSED_ENCHANT_CHANCE_WEAPON-x;
				else if (isAccessory)
-					chance = Config.BLESSED_ENCHANT_CHANCE_JEWELRY;
+					for(int z=-Config.ENCHANT_SAFE_MAX; z< Config.ENCHANT_MAX_JEWELRY; z++)
+					chance = Config.BLESSED_ENCHANT_CHANCE_JEWELRY-z;
				else
+					for(int a=-Config.ENCHANT_SAFE_MAX_FULL; a< Config.ENCHANT_MAX_ARMOR; a++)
- 					chance = Config.BLESSED_ENCHANT_CHANCE_ARMOR;
+                                      chance = Config.BLESSED_ENCHANT_CHANCE_ARMOR-a;
			}
			else
			{
				if (_isWeapon)
-					chance = Config.ENCHANT_CHANCE_WEAPON;
-				else if (isAccessory)
-					chance = Config.ENCHANT_CHANCE_JEWELRY;
+					for(int x=-Config.ENCHANT_SAFE_MAX; i<Config.ENCHANT_MAX_WEAPON; i++) //By TheEnd
+					chance = Config.ENCHANT_CHANCE_WEAPON-i;
+				else	if (isAccessory)
+					for(int z=-Config.ENCHANT_SAFE_MAX; d< Config.ENCHANT_MAX_JEWELRY; d++)
+					chance = Config.ENCHANT_CHANCE_JEWELRY-d;				
				else
-					chance = Config.ENCHANT_CHANCE_ARMOR;
+					for(int a=-Config.ENCHANT_SAFE_MAX_FULL; a< Config.ENCHANT_MAX_ARMOR; a++)
+					chance = Config.ENCHANT_CHANCE_ARMOR-a;
			}
			chance += _chanceAdd;

			if (supportItem != null)

Not Tested.

Credits: TheEnd

how can i change rates for example +3 100% and +4 90% ?

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 months later...
  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   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...