Jump to content
  • 0

[Help]L2j server blesesed, crystal and normal scrolls enchant chance configure.


Question

3 answers to this question

Recommended Posts

  • 0
Posted
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

  • 0
Posted

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

thank you man, please someone lock it

Guest
This topic is now closed to further replies.


×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock