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.




  • Posts

    • What unique features ? 
    • Welcome to SmurfsZone   Buy League of Legends accounts across all servers and jump straight into Ranked Games with amazing quality and support.   Why Choose SmurfsZone? 24/7 Instant Delivery: Get your full access LoL smurf account immediately. 100% Hand-Leveled: High-quality accounts leveled by hand. Versatile MMR Options: High MMR, Standard MMR, Fresh MMR (ARAMs), and Ranked accounts available. Valorant Accounts: Expand your gaming experience. Our Commitment to You: Unopened Loot: Customize your champion pool. Lifetime Warranty: Valid if you change the email, username, and password upon purchase. Password Changeable: Ensure your account's security. Full Recovery Information: Complete access to account recovery details. Unverified and Changeable Email: Easy to personalize and secure your account. Completely Unranked: Fresh start with no ranked history in any season. Responsive Customer Support: Our dedicated team is available to assist you 24/7.   Experience the best place to buy League of Legends accounts with exceptional quality and dedicated support. We're here for YOU!
    • Thanks! I'll take a second look and let you know if my implementation of the clearCircle() helps with the stuttering once I find time for some extensive testing.
    • Thank you for your reply. I have removed it from the L2Server.exe file, but the L2Server still crashes. It doesn't crash if I don't start l2npc, otherwise it will crash within a few days at the latest.
    • Welcome to my store :  https://topestore.mysellix.io/fr/ 2015-2022 Aged Discord Account 2015 Discord Account : 50.99 $ 2016 Discord Account : 10$ 2017 Discord Account :3.99 $ 2018 Discord Account : 3.50$ 2019 Discord Account : 2.70 $ 2020 Discord Account :1.50$ 2021 Discord Account :0.99$ 2022 Discord Account :0.70$ Warranty :Lifetime Payment Methods : Crypto/ PayPal Contact Me On Discord Or Telegram Discord : @ultrasstore11 Telegram : https://t.me/ultrastore1 Welcome to my store :  https://topestore.mysellix.io/fr/ 2015-2022 Aged Discord Account 2015 Discord Account : 50.99 $ 2016 Discord Account : 10$ 2017 Discord Account :3.99 $ 2018 Discord Account : 3.50$ 2019 Discord Account : 2.70 $ 2020 Discord Account :1.50$ 2021 Discord Account :0.99$ 2022 Discord Account :0.70$ Warranty :Lifetime Payment Methods : Crypto/ PayPal Contact Me On Discord Or Telegram Discord : @ultrasstore11 Welcome to my store :  https://topestore.mysellix.io/fr/ 2015-2022 Aged Discord Account 2015 Discord Account : 50.99 $ 2016 Discord Account : 10$ 2017 Discord Account :3.99 $ 2018 Discord Account : 3.50$ 2019 Discord Account : 2.70 $ 2020 Discord Account :1.50$ 2021 Discord Account :0.99$ 2022 Discord Account :0.70$ Warranty :Lifetime Payment Methods : Crypto/ PayPal Contact Me On Discord Or Telegram Discord : @ultrasstore11
  • Topics

×
×
  • Create New...