Jump to content

Recommended Posts

Posted

Can anyone help me? i cant find the line  <<for (int scrollId : CRYSTAL_SCROLLS)>>

 

in java/net/sf/l2j/gameserver/network/clientpackets/RequestEnchantItem.java

 

I have gracia final l2j how can i find it?

 

 

seach for :

 

if (Rnd.get(100) < chance)

        {

            synchronized(item)

 

and paste the  code above it...

Posted

Can anyone help me? i cant find the line  <<for (int scrollId : CRYSTAL_SCROLLS)>>

 

in java/net/sf/l2j/gameserver/network/clientpackets/RequestEnchantItem.java

 

I have gracia final l2j how can i find it?

 

 

i think L2j make another code so the above can't apply it but in

com.l2jserver.gameserver.network.clientpackets;

you can edit any scroll you want

// itemId, (isWeapon, isBlessed, isCrystal, isSafe, grade, max enchant level, chance increase, allowed item IDs)

// allowed items list must be sorted by ascending order

_scrolls.put(729, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(730, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(731, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(732, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(947, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(948, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(949, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(950, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(951, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(952, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(953, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(954, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(955, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(956, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(957, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(958, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(959, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(960, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(961, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(962, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(6569, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(6570, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_A, 0, 0, null));

_scrolls.put(6571, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(6572, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_B, 0, 0, null));

_scrolls.put(6573, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(6574, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_C, 0, 0, null));

_scrolls.put(6575, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(6576, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_D, 0, 0, null));

_scrolls.put(6577, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(6578, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_S, 0, 0, null));

_scrolls.put(22006, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_D, 0, 10, null));

_scrolls.put(22007, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_C, 0, 10, null));

_scrolls.put(22008, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B, 0, 10, null));

_scrolls.put(22009, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A, 0, 10, null));

_scrolls.put(22010, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_D, 0, 10, null));

_scrolls.put(22011, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_C, 0, 10, null));

_scrolls.put(22012, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B, 0, 10, null));

_scrolls.put(22013, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A, 0, 10, null));

_scrolls.put(22014, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_B, 16, 10, null));

_scrolls.put(22015, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_A, 16, 10, null));

_scrolls.put(22016, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_B, 16, 10, null));

_scrolls.put(22017, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_A, 16, 10, null));

_scrolls.put(22018, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B, 0, 100, null));

_scrolls.put(22019, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A, 0, 100, null));

_scrolls.put(22020, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B, 0, 100, null));

_scrolls.put(22021, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A, 0, 100, null));

 

// Master Yogi's Scroll Enchant Weapon (event)

_scrolls.put(13540, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_NONE, 0, 0, new int[]{ 13539 }));

 

// itemId, (isWeapon, grade, max enchant level, chance increase)

_supports.put(12362, new EnchantItem(true, L2Item.CRYSTAL_D, 9, 20, null));

_supports.put(12363, new EnchantItem(true, L2Item.CRYSTAL_C, 9, 18, null));

_supports.put(12364, new EnchantItem(true, L2Item.CRYSTAL_B, 9, 15, null));

_supports.put(12365, new EnchantItem(true, L2Item.CRYSTAL_A, 9, 12, null));

_supports.put(12366, new EnchantItem(true, L2Item.CRYSTAL_S, 9, 10, null));

_supports.put(12367, new EnchantItem(false, L2Item.CRYSTAL_D, 9, 35, null));

_supports.put(12368, new EnchantItem(false, L2Item.CRYSTAL_C, 9, 27, null));

_supports.put(12369, new EnchantItem(false, L2Item.CRYSTAL_B, 9, 23, null));

_supports.put(12370, new EnchantItem(false, L2Item.CRYSTAL_A, 9, 18, null));

_supports.put(12371, new EnchantItem(false, L2Item.CRYSTAL_S, 9, 15, null));

_supports.put(14702, new EnchantItem(true, L2Item.CRYSTAL_D, 9, 20, null));

_supports.put(14703, new EnchantItem(true, L2Item.CRYSTAL_C, 9, 18, null));

_supports.put(14704, new EnchantItem(true, L2Item.CRYSTAL_B, 9, 15, null));

_supports.put(14705, new EnchantItem(true, L2Item.CRYSTAL_A, 9, 12, null));

_supports.put(14706, new EnchantItem(true, L2Item.CRYSTAL_S, 9, 10, null));

_supports.put(14707, new EnchantItem(false, L2Item.CRYSTAL_D, 9, 35, null));

_supports.put(14708, new EnchantItem(false, L2Item.CRYSTAL_C, 9, 27, null));

_supports.put(14709, new EnchantItem(false, L2Item.CRYSTAL_B, 9, 23, null));

_supports.put(14710, new EnchantItem(false, L2Item.CRYSTAL_A, 9, 18, null));

_supports.put(14711, new EnchantItem(false, L2Item.CRYSTAL_S, 9, 15, null));

 

Posted

Very useful for servers with donate because you can sell Crystal scrools for real money and the players may trade it in the game for other stuff with other players if they want. Double chance that the player will donate. :D

  • 2 weeks later...
Posted

Wonderful how easily people nowadays abuse karma for fixing 2 strings =]

The share is useless and the way it's coded is bad..

Anyway, thanks for sharing, I guess.

well no useless... bad coded :/ i dont know :P

wtvr...i dont get the thing only some strings...... if the outcome is usefull then why not?

well... ok... if it was really 2 strings it would be stupid but it's not...

  • 5 months later...
  • 1 month later...
  • 1 month later...
Posted

I have a better option:

 

java/com/l2jserver/gameserver/network/clientpackets/AbstractEnchantPacket.java

### Eclipse Workspace Patch 1.0
#P L2J_Server
Index: java/com/l2jserver/gameserver/network/clientpackets/AbstractEnchantPacket.java
===================================================================
--- java/com/l2jserver/gameserver/network/clientpackets/AbstractEnchantPacket.java	(revision 24)
+++ java/com/l2jserver/gameserver/network/clientpackets/AbstractEnchantPacket.java	(working copy)
@@ -55,32 +55,6 @@
			if (enchantItem == null)
				return false;

-			int type2 = enchantItem.getItem().getType2();
-			
-			// checking scroll type and configured maximum enchant level
-			switch (type2)
-			{
-				// weapon scrolls can enchant only weapons
-				case L2Item.TYPE2_WEAPON:
-					if (!_isWeapon
-							|| (Config.ENCHANT_MAX_WEAPON > 0 && enchantItem.getEnchantLevel() >= Config.ENCHANT_MAX_WEAPON))
-						return false;
-					break;
-					// armor scrolls can enchant only accessory and armors
-				case L2Item.TYPE2_SHIELD_ARMOR:
-					if (_isWeapon
-							|| (Config.ENCHANT_MAX_ARMOR > 0 && enchantItem.getEnchantLevel() >= Config.ENCHANT_MAX_ARMOR))
-						return false;
-					break;
-				case L2Item.TYPE2_ACCESSORY:
-					if (_isWeapon
-							|| (Config.ENCHANT_MAX_JEWELRY > 0 && enchantItem.getEnchantLevel() >= Config.ENCHANT_MAX_JEWELRY))
-						return false;
-					break;
-				default:
-					return false;
-			}
-			
			// check for crystal types
			if (_grade != enchantItem.getItem().getItemGradeSPlus())
				return false;
@@ -202,56 +188,56 @@
		// itemId, (isWeapon, isBlessed, isCrystal, isSafe, grade, max enchant level, chance increase, allowed item IDs)
		// allowed items IDs must be sorted by ascending order
		// Scrolls: Enchant Weapon
-		_scrolls.put(729, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(947, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(951, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(955, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(959, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(729, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_A, maxenchant(), 0, null));
+		_scrolls.put(947, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_B, maxenchant(), 0, null));
+		_scrolls.put(951, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_C, maxenchant(), 0, null));
+		_scrolls.put(955, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_D, maxenchant(), 0, null));
+		_scrolls.put(959, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_S, maxenchant(), 0, null));
		// Scrolls: Enchant Armor
-		_scrolls.put(730, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(948, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(952, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(956, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(960, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(730, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_A, maxenchant(), 0, null));
+		_scrolls.put(948, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_B, maxenchant(), 0, null));
+		_scrolls.put(952, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_C, maxenchant(), 0, null));
+		_scrolls.put(956, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_D, maxenchant(), 0, null));
+		_scrolls.put(960, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_S, maxenchant(), 0, null));

		// Blessed Scrolls: Enchant Weapon
-		_scrolls.put(6569, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(6571, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(6573, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(6575, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(6577, new EnchantScroll(true, true, false, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(6569, new EnchantScroll(true, true, false, true, L2Item.CRYSTAL_A, blessedmaxenchant(), 0, null));
+		_scrolls.put(6571, new EnchantScroll(true, true, false, true, L2Item.CRYSTAL_B, blessedmaxenchant(), 0, null));
+		_scrolls.put(6573, new EnchantScroll(true, true, false, true, L2Item.CRYSTAL_C, blessedmaxenchant(), 0, null));
+		_scrolls.put(6575, new EnchantScroll(true, true, false, true, L2Item.CRYSTAL_D, blessedmaxenchant(), 0, null));
+		_scrolls.put(6577, new EnchantScroll(true, true, false, true, L2Item.CRYSTAL_S, blessedmaxenchant(), 0, null));
		// Blessed Scrolls: Enchant Armor
-		_scrolls.put(6570, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(6572, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(6574, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(6576, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(6578, new EnchantScroll(false, true, false, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(6570, new EnchantScroll(false, true, false, true, L2Item.CRYSTAL_A, blessedmaxenchant(), 0, null));
+		_scrolls.put(6572, new EnchantScroll(false, true, false, true, L2Item.CRYSTAL_B, blessedmaxenchant(), 0, null));
+		_scrolls.put(6574, new EnchantScroll(false, true, false, true, L2Item.CRYSTAL_C, blessedmaxenchant(), 0, null));
+		_scrolls.put(6576, new EnchantScroll(false, true, false, true, L2Item.CRYSTAL_D, blessedmaxenchant(), 0, null));
+		_scrolls.put(6578, new EnchantScroll(false, true, false, true, L2Item.CRYSTAL_S, blessedmaxenchant(), 0, null));

		// Crystal Scrolls: Enchant Weapon
-		_scrolls.put(731, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(949, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(953, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(957, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(961, new EnchantScroll(true, false, true, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(731, new EnchantScroll(true, false, true, true, L2Item.CRYSTAL_A, crystalmaxenchant(), 0, null));
+		_scrolls.put(949, new EnchantScroll(true, false, true, true, L2Item.CRYSTAL_B, crystalmaxenchant(), 0, null));
+		_scrolls.put(953, new EnchantScroll(true, false, true, true, L2Item.CRYSTAL_C, crystalmaxenchant(), 0, null));
+		_scrolls.put(957, new EnchantScroll(true, false, true, true, L2Item.CRYSTAL_D, crystalmaxenchant(), 0, null));
+		_scrolls.put(961, new EnchantScroll(true, false, true, true, L2Item.CRYSTAL_S, crystalmaxenchant(), 0, null));
		// Crystal Scrolls: Enchant Armor
-		_scrolls.put(732, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_A, 0, 0, null));
-		_scrolls.put(950, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_B, 0, 0, null));
-		_scrolls.put(954, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_C, 0, 0, null));
-		_scrolls.put(958, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_D, 0, 0, null));
-		_scrolls.put(962, new EnchantScroll(false, false, true, false, L2Item.CRYSTAL_S, 0, 0, null));
+		_scrolls.put(732, new EnchantScroll(false, false, true, true, L2Item.CRYSTAL_A, crystalmaxenchant(), 0, null));
+		_scrolls.put(950, new EnchantScroll(false, false, true, true, L2Item.CRYSTAL_B, crystalmaxenchant(), 0, null));
+		_scrolls.put(954, new EnchantScroll(false, false, true, true, L2Item.CRYSTAL_C, crystalmaxenchant(), 0, null));
+		_scrolls.put(958, new EnchantScroll(false, false, true, true, L2Item.CRYSTAL_D, crystalmaxenchant(), 0, null));
+		_scrolls.put(962, new EnchantScroll(false, false, true, true, L2Item.CRYSTAL_S, crystalmaxenchant(), 0, null));

		// Weapon Enchant Scrolls
-		_scrolls.put(20517, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_S, 0, 10, null));
-		_scrolls.put(22006, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_D, 0, 10, null));
-		_scrolls.put(22007, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_C, 0, 10, null));
-		_scrolls.put(22008, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_B, 0, 10, null));
-		_scrolls.put(22009, new EnchantScroll(true, false, false, false, L2Item.CRYSTAL_A, 0, 10, null));
+		_scrolls.put(20517, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_S, crystalmaxenchant(), 10, null));
+		_scrolls.put(22006, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_D, crystalmaxenchant(), 10, null));
+		_scrolls.put(22007, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_C, crystalmaxenchant(), 10, null));
+		_scrolls.put(22008, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_B, crystalmaxenchant(), 10, null));
+		_scrolls.put(22009, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_A, crystalmaxenchant(), 10, null));
		// Armor Enchant Scrolls
-		_scrolls.put(20518, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_S, 0, 10, null));
-		_scrolls.put(22010, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_D, 0, 10, null));
-		_scrolls.put(22011, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_C, 0, 10, null));
-		_scrolls.put(22012, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_B, 0, 10, null));
-		_scrolls.put(22013, new EnchantScroll(false, false, false, false, L2Item.CRYSTAL_A, 0, 10, null));
+		_scrolls.put(20518, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_S, crystalmaxenchant(), 10, null));
+		_scrolls.put(22010, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_D, crystalmaxenchant(), 10, null));
+		_scrolls.put(22011, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_C, crystalmaxenchant(), 10, null));
+		_scrolls.put(22012, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_B, crystalmaxenchant(), 10, null));
+		_scrolls.put(22013, new EnchantScroll(false, false, false, true, L2Item.CRYSTAL_A, crystalmaxenchant(), 10, null));

		// Ancient Weapon Enchant Crystal
		_scrolls.put(20519, new EnchantScroll(true, false, false, true, L2Item.CRYSTAL_S, 16, 10, null));
@@ -305,6 +291,22 @@
		return _scrolls.get(scroll.getItemId());
	}

+	
+	private static int maxenchant()
+	{
+		return Config.MAX_ENCHANT;
+	}
+
+	private static int blessedmaxenchant()
+	{
+		return Config.BLESSED_MAX_ENCHANT;
+	}
+	
+	private static int crystalmaxenchant()
+	{
+		return Config.CRYSTAL_MAX_ENCHANT;
+	}
+	
	/**
	 * Return enchant template for support item
	 */

 

Configs:

# Max enchant with Simple scrolls ?
MaxEnchant = 8

# Max enchant with Blessed scrolls ?
BlessedMaxEnchant = 16

# Max enchant with Crystal scrolls ?
CrystalMaxEnchant = 26

 

Working on Freya(L2jServer)

Posted
    ### Eclipse Workspace Patch 1.0
    #P L2_GameServer
    Index: java/config/Character.properties
    ===================================================================
    --- java/config/Character.properties   (revision 1)
    +++ java/config/Character.properties   (working copy)
    @@ -288,6 +288,12 @@
    BlessedEnchantChanceArmor = 66
    BlessedEnchantChanceJewelry = 66
     
    +# DEFAULT NEEDS TO BE VERIFIED, MUST BE CHANGED HERE AND IN CONFIG.JAVA IF NOT CORRECT
    +# Default: 50,50,50
    +CrystalEnchantChanceWeapon = 50
    +CrystalEnchantChanceArmor = 50
    +CrystalEnchantChanceJewelry = 50
    +
    # This is the enchant limit, if set to 0, there will be no limit.
    # Example: If this is set to 10, the maximum enchant will be 10.
    # Default: 0, 0, 0
    Index: java/net/sf/l2j/Config.java
    ===================================================================
    --- java/net/sf/l2j/Config.java   (revision 1)
    +++ java/net/sf/l2j/Config.java   (working copy)
    @@ -813,6 +823,9 @@
       public static int BLESSED_ENCHANT_CHANCE_WEAPON;
       public static int BLESSED_ENCHANT_CHANCE_ARMOR;
       public static int BLESSED_ENCHANT_CHANCE_JEWELRY;
    +   public static int CRYSTAL_ENCHANT_CHANCE_WEAPON;
    +   public static int CRYSTAL_ENCHANT_CHANCE_ARMOR;
    +   public static int CRYSTAL_ENCHANT_CHANCE_JEWELRY;
       public static int ENCHANT_MAX_WEAPON;
       public static int ENCHANT_MAX_ARMOR;
       public static int ENCHANT_MAX_JEWELRY;
    @@ -1237,6 +1250,9 @@
                   BLESSED_ENCHANT_CHANCE_WEAPON = Integer.parseInt(Character.getProperty("BlessedEnchantChanceWeapon", "66"));
                   BLESSED_ENCHANT_CHANCE_ARMOR = Integer.parseInt(Character.getProperty("BlessedEnchantChanceArmor", "66"));
                   BLESSED_ENCHANT_CHANCE_JEWELRY = Integer.parseInt(Character.getProperty("BlessedEnchantChanceJewelry", "66"));
    +               CRYSTAL_ENCHANT_CHANCE_WEAPON = Integer.parseInt(Character.getProperty("CrystalEnchantChanceWeapon", "50"));
    +               CRYSTAL_ENCHANT_CHANCE_ARMOR = Integer.parseInt(Character.getProperty("CrystalEnchantChanceArmor", "50"));
    +               CRYSTAL_ENCHANT_CHANCE_JEWELRY = Integer.parseInt(Character.getProperty("CrystalEnchantChanceJewelry", "50"));
                   ENCHANT_MAX_WEAPON = Integer.parseInt(Character.getProperty("EnchantMaxWeapon", "0"));
                   ENCHANT_MAX_ARMOR = Integer.parseInt(Character.getProperty("EnchantMaxArmor", "0"));
                   ENCHANT_MAX_JEWELRY = Integer.parseInt(Character.getProperty("EnchantMaxJewelry", "0"));
    Index: java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java
    ===================================================================
    --- java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java   (revision 1)
    +++ java/net/sf/l2j/gameserver/network/clientpackets/AbstractEnchantPacket.java   (working copy)
    @@ -178,6 +178,19 @@
                else
                   chance = Config.BLESSED_ENCHANT_CHANCE_ARMOR;
             }
    +         if (_isCrystal)
    +         {
    +            // crystal scrolls does not use support items
    +            if (supportItem != null)
    +               return -1;
    +
    +            if (_isWeapon)
    +               chance = Config.CRYSTAL_ENCHANT_CHANCE_WEAPON;
    +            else if (isAccessory)
    +               chance = Config.CRYSTAL_ENCHANT_CHANCE_JEWELRY;
    +            else
    +               chance = Config.CRYSTAL_ENCHANT_CHANCE_ARMOR;
    +         }
             else
             {
                if (_isWeapon)
     

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

    • the only thing you know how to do is to change drawings inside a lineage2 client and you decide to talk about the IQ of others? hahahaha
    • Web: https://cheatcenter.net/ Counter Strike 2 Nixware Hack With the Nixware cheat, you have powerful software in your hands for exciting battles in Counter-Strike 2! The perfect set of features for Rage and Semi-Rage games will provide you with confidence on the battlefield. Use antiaim to avoid being hit. Customize the world for yourself by adjusting the colors and the sky. Shoot through the walls and use other unique opportunities to defeat your rivals and become the leader of the team! Product Description LEGITBOT FOV Hitboxes Head Neck Chest Stomach Pelvis Smooth Shot delay Kill delay Lock target Lock mouse Draw FOV Disable when Smoke Flash Jump RAGEBOT Aimbot FOV changer Hitscan Head Neck Chest Stomach Pelvis HeadBody point scale Minimal damage Hitchance Force shoot PSilent Antiaim Autoscope Autostop (between shots) Bunnyhop Auto strafer with smooth adjustment Accurate walk ESP Box Glow Skeleton Footsteps Name Weapon name Health Health bar Ammo Chams Ragdoll chams Offscreen ESP Box Minimal and maximum radius customization Minimal and maximum size customization WORLD Bomb esp Timer Damage Name Weapons Icon Name Glow Grenades Color Trajectory Timer Grenade proximity warning SKINS Gloves Seed Paint kit Wear Knifes Seed Paint kit Wear Weapons Seed Paint kit Wear MISC View Model Editor View Model Chams Hand chams Glove chams Sleeve chams Weapon chams Auto Accept Show player money Spectator list World modulation (world, clouds, sky, sun) Spread circle TaserKnife range Hit markerHit effect Aspect ratio Third person REMOVALS Flash Smoke Visual recoil Scope borders Zoom Sniper crosshair check Team intro First person legs Model occlusion Shadows Fog Decals Particles Water effect Lightning  
    • Web: https://cheatcenter.net/ Counter Strike 2 Xone Hack Looking for a legit cheat for Counter-Strike 2? Xone is your perfect choice! Our product provides unsurpassed features that allow you to play legit and at the same time have an advantage over other players. Discover a new level of gaming efficiency with Xone! Product Description AIM Draw fov Draw target Only enemy Only visible Status Smooth Fov Hitbox Compensation Standalone Target switch Trigger Use aimbot Sticky mode Recoil compensation Delay Custom setting for all VISUAL Enable Box Skeleton Head Loot Health Weapon Name Defuser Bomb Visible check MISK Radar Only enemy Color Enemy/Team Scale Size Keybind Spectator list Bomb info  
    • Web: https://cheatcenter.net/ Apex Legends Phoenix Macro We are excited to introduce our new development, Phoenix private macros for Apex Legends. Recently, it has become harder to develop stable and undetectable cheats for Apex, so we decided to add a safer option to our range. Our macros offer a revolutionary solution in the world of Apex scripts and macros. Everything is launched and configured through a convenient menu and works with all weapons and computer mouse models. So, our program is very user-friendly. Phoenix Macros provide you with an advantage in the game while minimizing the risk of your account being banned. In addition, we offer our program at a very affordable price. If you don't want to risk using cheats, then Phoenix Macro is perfect for you! Product Description Weapon recoil control (Apex Macros) Enable - You can enable/disable the macro during the game Weapon - the choice of weapons with which the macro will work Works with all weapons in the game Scopes - works with all scopes in the game Attachments - works with all weapon mods in the game Control X / Y - adjustment of vertical and horizontal recoil Auto-detection of weapons in your arms Auto-detection of weapon modules Hipfire - macro works when you shoot from the hip (not aiming) Legit Mode - is a safer way to control recoil List of supported weapons (Script / Macros for All Weapons) R99 R301 Alternator RE45 Flatline Spitfire C.A.R. Hemlock Rampage Devotion Volt P2020 SCOUT G7 Havoc PDW L-Star w30-30 Nemesis List of supported modules for guns Double Tap Trigger Turbocharger 2x HCOG "Bruiser" 1x-2x Variable Holo 3x HCOG "Ranger" 2x-4x Variable AOG Barrel Stabilizer Laser Sight Add. Script Features (Phoenix Macro) Binds - bind keys to select the desired weapon Autodetection - automatic detection of weapons in hands when holding a key Selector Circle - a convenient window for selecting weapons (in the form of a circle / wheel) Anti OBS - hide the script window and menu on screenshots and when recording via OBS Languages - English, French, German, Italian, Polish, Portuguese (Brazilian), Russian, Spanish and Turkish Use Controller - phoenix macro for apex works with gamepads
  • Topics

×
×
  • Create New...