Skip to content

Blessed enchant rate Interlude

Featured Replies

Hello guys, how can i make the enchant rate for blessed different in interlude l2j server?

Strange Question, there is config for Blessed Enchants succes rate.

Config for blessed,normal,safe and max enchant ;p

Strange Question, there is config for Blessed Enchants succes rate.

no @ l2jserver packs.

  • Author

for interlude l2j nop, so how can i change it, java modification or smt?

Index: /Server/GameServer/java/config/other.properties
===================================================================
--- /Server/GameServer/java/config/other.properties (revision 2)
+++ /Server/GameServer/java/config/other.properties (revision 10)
@@ -45,8 +45,20 @@
EnchantChanceArmor = 52
EnchantChanceJewelry = 54
+
+# Chance a Crystal Enchant Scroll will succeed after safe enchant.
+EnchantChanceWeaponCrystal = 100
+EnchantChanceArmorCrystal = 100
+EnchantChanceJewelryCrystal = 100
+
+# Chance a Blessed Enchant Scroll will succeed after safe enchant.
+EnchantChanceWeaponBlessed = 85
+EnchantChanceArmorBlessed = 85
+EnchantChanceJewelryBlessed = 85
+
# Enchant limit [default = 0 (unlimited)]
EnchantMaxWeapon = 0
EnchantMaxArmor = 0
EnchantMaxJewelry = 0
+
# if EnchantSafeMax is set to for ex '8' the item will be safly enchanted to '8'
# regardless of enchant chance(default = 3 for EnchantSafeMax and default = 4 for EnchantSafeMaxFull)
Index: /Server/GameServer/java/net/sf/l2j/Config.java
===================================================================
--- /Server/GameServer/java/net/sf/l2j/Config.java (revision 8)
+++ /Server/GameServer/java/net/sf/l2j/Config.java (revision 10)
@@ -948,4 +948,12 @@
     public static int ENCHANT_MAX_ARMOR;
     public static int ENCHANT_MAX_JEWELRY;
+    
+    public static int ENCHANT_CHANCE_WEAPON_CRYSTAL;
+	public static int ENCHANT_CHANCE_ARMOR_CRYSTAL;
+	public static int ENCHANT_CHANCE_JEWELRY_CRYSTAL;
+	public static int ENCHANT_CHANCE_WEAPON_BLESSED;
+	public static int ENCHANT_CHANCE_ARMOR_BLESSED;
+	public static int ENCHANT_CHANCE_JEWELRY_BLESSED;
+    
     /** maximum level of safe enchantment for normal items*/
     public static int ENCHANT_SAFE_MAX;
@@ -1490,4 +1498,10 @@
                 ENCHANT_MAX_ARMOR = Integer.parseInt(otherSettings.getProperty("EnchantMaxArmor", "255"));
                 ENCHANT_MAX_JEWELRY = Integer.parseInt(otherSettings.getProperty("EnchantMaxJewelry", "255"));
+                ENCHANT_CHANCE_WEAPON_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceWeaponCrystal", "100")); 
+                ENCHANT_CHANCE_ARMOR_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceArmorCrystal", "100")); 
+                ENCHANT_CHANCE_JEWELRY_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceJewelryCrystal", "100")); 
+	            ENCHANT_CHANCE_WEAPON_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceWeaponBlessed", "85")); 
+	            ENCHANT_CHANCE_ARMOR_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceArmorBlessed", "85")); 
+	            ENCHANT_CHANCE_JEWELRY_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceJewelryBlessed", "85"));
                 /*limit of safe enchant normal */
                 ENCHANT_SAFE_MAX = Integer.parseInt(otherSettings.getProperty("EnchantSafeMax", "3"));
Index: /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java
===================================================================
--- /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 2)
+++ /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 10)
@@ -41,6 +41,9 @@
     protected static final Logger _log = Logger.getLogger(Inventory.class.getName());
     private static final String _C__58_REQUESTENCHANTITEM = "[C] 58 RequestEnchantItem";
-    private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
-
+	private static final int[] ENCHANT_SCROLLS = { 729, 730, 947, 948, 951, 952, 955, 956, 959, 960 };
+	private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
+	private static final int[] BLESSED_SCROLLS = { 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 };
+
+    
     private int _objectId;

@@ -57,4 +60,12 @@
         if (activeChar == null || _objectId == 0) return;

+        		if (activeChar.isProcessingTransaction())
+        			{
+        				activeChar.sendPacket(new SystemMessage(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION));
+        				activeChar.setActiveEnchantItem(null);
+        				return;
+        			}
+
+        
         L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);
         L2ItemInstance scroll = activeChar.getActiveEnchantItem();
@@ -179,27 +190,93 @@
         }

-        // SystemMessage sm = new SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
-        // activeChar.sendPacket(sm);
-
-        SystemMessage sm;
-
-        int chance = 0;
-        int maxEnchantLevel = 0;
-
-        if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
-        {
-	        chance = Config.ENCHANT_CHANCE_WEAPON;
-	        maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
-        }
-        else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
-        {
-	        chance = Config.ENCHANT_CHANCE_ARMOR;
-	        maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
-        }
-        else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
-        {
-        	chance = Config.ENCHANT_CHANCE_JEWELRY;
-        	maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
-        }
+		// SystemMessage sm = new
+		// SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
+		// activeChar.sendPacket(sm);
+		SystemMessage sm;
+		int chance = 0;
+		int maxEnchantLevel = 0;
+		if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON_CRYSTAL;
+					;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON_BLESSED;
+					break;
+				}
+			}
+		} else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR_CRYSTAL;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR_BLESSED;
+					break;
+				}
+			}
+		} else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY_CRYSTAL;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY_BLESSED;
+					break;
+				}
+			}
+		}

         if (item.getEnchantLevel() < Config.ENCHANT_SAFE_MAX

  • Author

Index: /Server/GameServer/java/config/other.properties
===================================================================
--- /Server/GameServer/java/config/other.properties (revision 2)
+++ /Server/GameServer/java/config/other.properties (revision 10)
@@ -45,8 +45,20 @@
EnchantChanceArmor = 52
EnchantChanceJewelry = 54
+
+# Chance a Crystal Enchant Scroll will succeed after safe enchant.
+EnchantChanceWeaponCrystal = 100
+EnchantChanceArmorCrystal = 100
+EnchantChanceJewelryCrystal = 100
+
+# Chance a Blessed Enchant Scroll will succeed after safe enchant.
+EnchantChanceWeaponBlessed = 85
+EnchantChanceArmorBlessed = 85
+EnchantChanceJewelryBlessed = 85
+
# Enchant limit [default = 0 (unlimited)]
EnchantMaxWeapon = 0
EnchantMaxArmor = 0
EnchantMaxJewelry = 0
+
# if EnchantSafeMax is set to for ex '8' the item will be safly enchanted to '8'
# regardless of enchant chance(default = 3 for EnchantSafeMax and default = 4 for EnchantSafeMaxFull)
Index: /Server/GameServer/java/net/sf/l2j/Config.java
===================================================================
--- /Server/GameServer/java/net/sf/l2j/Config.java (revision 8)
+++ /Server/GameServer/java/net/sf/l2j/Config.java (revision 10)
@@ -948,4 +948,12 @@
     public static int ENCHANT_MAX_ARMOR;
     public static int ENCHANT_MAX_JEWELRY;
+    
+    public static int ENCHANT_CHANCE_WEAPON_CRYSTAL;
+	public static int ENCHANT_CHANCE_ARMOR_CRYSTAL;
+	public static int ENCHANT_CHANCE_JEWELRY_CRYSTAL;
+	public static int ENCHANT_CHANCE_WEAPON_BLESSED;
+	public static int ENCHANT_CHANCE_ARMOR_BLESSED;
+	public static int ENCHANT_CHANCE_JEWELRY_BLESSED;
+    
     /** maximum level of safe enchantment for normal items*/
     public static int ENCHANT_SAFE_MAX;
@@ -1490,4 +1498,10 @@
                 ENCHANT_MAX_ARMOR = Integer.parseInt(otherSettings.getProperty("EnchantMaxArmor", "255"));
                 ENCHANT_MAX_JEWELRY = Integer.parseInt(otherSettings.getProperty("EnchantMaxJewelry", "255"));
+                ENCHANT_CHANCE_WEAPON_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceWeaponCrystal", "100")); 
+                ENCHANT_CHANCE_ARMOR_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceArmorCrystal", "100")); 
+                ENCHANT_CHANCE_JEWELRY_CRYSTAL = Integer.parseInt(otherSettings.getProperty("EnchantChanceJewelryCrystal", "100")); 
+	            ENCHANT_CHANCE_WEAPON_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceWeaponBlessed", "85")); 
+	            ENCHANT_CHANCE_ARMOR_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceArmorBlessed", "85")); 
+	            ENCHANT_CHANCE_JEWELRY_BLESSED = Integer.parseInt(otherSettings.getProperty("EnchantChanceJewelryBlessed", "85"));
                 /*limit of safe enchant normal */
                 ENCHANT_SAFE_MAX = Integer.parseInt(otherSettings.getProperty("EnchantSafeMax", "3"));
Index: /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java
===================================================================
--- /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 2)
+++ /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 10)
@@ -41,6 +41,9 @@
     protected static final Logger _log = Logger.getLogger(Inventory.class.getName());
     private static final String _C__58_REQUESTENCHANTITEM = "[C] 58 RequestEnchantItem";
-    private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
-
+	private static final int[] ENCHANT_SCROLLS = { 729, 730, 947, 948, 951, 952, 955, 956, 959, 960 };
+	private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 };
+	private static final int[] BLESSED_SCROLLS = { 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 };
+
+    
     private int _objectId;

@@ -57,4 +60,12 @@
         if (activeChar == null || _objectId == 0) return;

+        		if (activeChar.isProcessingTransaction())
+        			{
+        				activeChar.sendPacket(new SystemMessage(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION));
+        				activeChar.setActiveEnchantItem(null);
+        				return;
+        			}
+
+        
         L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);
         L2ItemInstance scroll = activeChar.getActiveEnchantItem();
@@ -179,27 +190,93 @@
         }

-        // SystemMessage sm = new SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
-        // activeChar.sendPacket(sm);
-
-        SystemMessage sm;
-
-        int chance = 0;
-        int maxEnchantLevel = 0;
-
-        if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
-        {
-	        chance = Config.ENCHANT_CHANCE_WEAPON;
-	        maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
-        }
-        else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
-        {
-	        chance = Config.ENCHANT_CHANCE_ARMOR;
-	        maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
-        }
-        else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
-        {
-        	chance = Config.ENCHANT_CHANCE_JEWELRY;
-        	maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
-        }
+		// SystemMessage sm = new
+		// SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED);
+		// activeChar.sendPacket(sm);
+		SystemMessage sm;
+		int chance = 0;
+		int maxEnchantLevel = 0;
+		if (item.getItem().getType2() == L2Item.TYPE2_WEAPON)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_WEAPON;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON_CRYSTAL;
+					;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_WEAPON_BLESSED;
+					break;
+				}
+			}
+		} else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_ARMOR;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR_CRYSTAL;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_ARMOR_BLESSED;
+					break;
+				}
+			}
+		} else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY)
+		{
+			maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY;
+			for (int scrollId : ENCHANT_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY;
+					break;
+				}
+			}
+			for (int scrollId : CRYSTAL_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY_CRYSTAL;
+					break;
+				}
+			}
+			for (int scrollId : BLESSED_SCROLLS)
+			{
+				if (scroll.getItemId() == scrollId)
+				{
+					chance = Config.ENCHANT_CHANCE_JEWELRY_BLESSED;
+					break;
+				}
+			}
+		}

         if (item.getEnchantLevel() < Config.ENCHANT_SAFE_MAX

thx dude, works perfect

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.