Jump to content

Recommended Posts

Posted

well, i saw in some servers that custom armors and weapons are overpowered and if people enchant them are even more. so i was thinking. why not limiting the max enchant of custom items? (my test server i limited raid jewls) so i did this:

 

Index: config/enchant.properties
===================================================================
--- config/enchant.properties	(revision 5187)
+++ config/enchant.properties	(working copy)
@@ -26,6 +26,10 @@
EnchantBreakArmorBlessed = False
EnchantBreakJewelryBlessed = False

+#Limit Enchant
+LimitItemsEnchant=0
+EnchantMaxList=0
+
# Enchant limit (unlimited on default)
EnchantMaxWeapon = 25
EnchantMaxArmor = 25
Index: src/main/java/com/l2jfree/Config.java
===================================================================
--- src/main/java/com/l2jfree/Config.java	(revision 5187)
+++ src/main/java/com/l2jfree/Config.java	(working copy)
@@ -600,6 +600,9 @@
	public static int			ENCHANT_DWARF_1_CHANCE;								// Dwarf enchant System Dwarf 1 chance?
	public static int			ENCHANT_DWARF_2_CHANCE;								// Dwarf enchant System Dwarf 2 chance?
	public static int			ENCHANT_DWARF_3_CHANCE;								// Dwarf enchant System Dwarf 3 chance?
+public static String            ALT_LIST_ENCHANTS;
+public static int			ENCHANT_MAX_LIST;
+public static FastList<Integer>		ALT_ENCHANTS_LIST		= new FastList<Integer>();	

	public static boolean		AUGMENT_EXCLUDE_NOTDONE;
	public static int			AUGMENTATION_NG_SKILL_CHANCE; // Chance to get a skill while using a NoGrade Life Stone
@@ -624,6 +627,17 @@
			ENCHANT_CHANCE_WEAPON = Integer.parseInt(enchantSettings.getProperty("EnchantChanceWeapon", "65"));
			ENCHANT_CHANCE_ARMOR = Integer.parseInt(enchantSettings.getProperty("EnchantChanceArmor", "65"));
			ENCHANT_CHANCE_JEWELRY = Integer.parseInt(enchantSettings.getProperty("EnchantChanceJewelry", "65"));
+
+/*Max list enchant*/
+                   
+ALT_LIST_ENCHANTS = enchantSettings.getProperty("LimitItemsEnchant", "0");
+ENCHANT_MAX_LIST  = Integer.parseInt(enchantSettings.getProperty("EnchantMaxList", "10"));
+ALT_ENCHANTS_LIST = new FastList<Integer>();
+			for (String id : ALT_LIST_ENCHANTS.split(","))
+			{
+				ALT_ENCHANTS_LIST.add(Integer.parseInt(id));
+			}
+
			/* item may break normal scroll */
			ENCHANT_BREAK_WEAPON = Boolean.parseBoolean(enchantSettings.getProperty("EnchantBreakWeapon", "True"));
			ENCHANT_BREAK_ARMOR = Boolean.parseBoolean(enchantSettings.getProperty("EnchantBreakArmor", "True"));
Index: src/main/java/com/l2jfree/gameserver/model/L2ItemInstance.java
===================================================================
--- src/main/java/com/l2jfree/gameserver/model/L2ItemInstance.java	(revision 5187)
+++ src/main/java/com/l2jfree/gameserver/model/L2ItemInstance.java	(working copy)
@@ -1735,4 +1735,9 @@
	{
		return Config.ALT_LIST_OLY_RESTRICTED_ITEMS.contains(_itemId);
	}
+
+        public boolean isEnchantList()
+	{
+		return Config.ALT_ENCHANTS_LIST.contains(_itemId);
+	}
}
Index: src/main/java/com/l2jfree/gameserver/network/clientpackets/RequestEnchantItem.java
===================================================================
--- src/main/java/com/l2jfree/gameserver/network/clientpackets/RequestEnchantItem.java	(revision 5187)
+++ src/main/java/com/l2jfree/gameserver/network/clientpackets/RequestEnchantItem.java	(working copy)
@@ -45,6 +45,7 @@
															{ 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 };

	private int					_objectId;
+	private int maxEnchantList;

	/**
	 * packet type id 0x58
@@ -331,6 +332,15 @@
			return;
		}

+maxEnchantList = Config.ENCHANT_MAX_LIST;
+
+if (item.getEnchantLevel() >= maxEnchantList && item.isEnchantList())
+		{
+			activeChar.sendPacket(new SystemMessage(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION));
+			activeChar.setActiveEnchantItem(null);
+			return;
+		}
+
		scroll = activeChar.getInventory().destroyItem("Enchant", scroll.getObjectId(), 1, activeChar, item);
		if (scroll == null)
		{

Posted

In my opinion the costum things are op only if the admin is lame and make it overpowered with stats not with enchant also there are an easier way in datapack just remove the enchant line from the xml and its ready you dont get any enchant bonus.

 

Anyway nice share.

Posted

In my opinion the costum things are op only if the admin is lame and make it overpowered with stats not with enchant also there are an easier way in datapack just remove the enchant line from the xml and its ready you dont get any enchant bonus.

 

Anyway nice share.

 

yap i agree just remove that line but its still a good share...

Posted

well, i am not talking about really overpowered items like most of server. i am talking about items that giving some bonuses and some more p.def than usual so you may need to limit their enchant

Posted

Realy good share it can also be used for custum armors or custom weapons and jewels!

Im amazed last days with all those java shares!

PS: I need to learn java :P

Posted

well, i am not talking about really overpowered items like most of server. i am talking about items that giving some bonuses and some more p.def than usual so you may need to limit their enchant

 

Ok then..You are right because overpower items are not good in a server...

 

Im amazed last days with all those java shares!

PS: I need to learn java :P

 

Yap all these java shares are amazing but i agree with your PS because without java knowlege you can not use them..

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • "CAN YOU DO A BULGARIAN REVOLUT?" – WE DID. FIRST DRAFT, NO EDITS The request came in short: a photo of a bank card, Bulgaria, Revolut. We said yes and asked the only question that matters – what data. The client was on the road, asked for a couple of hours, then sent the lot: number, expiry, CVV, payment system, bank, cardholder name. Then came the part the client never sees: - ran the number through Luhn – the check digit has to add up, otherwise the card is dead the second anything automated looks at it - matched the BIN to the issuer: Revolut in Bulgaria isn't a "local bank", the cards run through Revolut Bank UAB. The number range has to actually belong there, not just start with the right digit - built the current design, not a five-year-old picture: vertical layout, flat laser print instead of embossing, correct chip module, contactless mark where it belongs - the payment system logo – with the right gradient where the circles overlap and the wordmark sitting exactly where it should. A small thing that kills half the fakes out there - and finally, physics. Plastic has to catch light: a highlight along the edge, a micro-shadow under the chip, a faint fingerprint. A phone shot, not a render Sent the draft for approval. The client looked it over, signed off with zero corrections – final files went out. One pass, no rework. A card is a deceptively simple document. Looks like a rectangle and sixteen digits. In reality it's maths in the number, a tie to the issuer, a current design and light on plastic. Miss any one of the four and the file gets exactly two seconds of attention. Need a card for a specific bank and country? Message us. We'll tell you straight what's realistic for your case – then build it. { all data published with the client's consent} › TG: @mustang_service_ms ( https:// t.me/ mustang_service_ms ) › Channel: Mustang Service ( https:// t.me/ +JPpJCETg-xM1NjNl ) #drawing #card #photoshop #revolut #case
    • ============================================================               CLExt Classic Interlude: v7.80 ============================================================   01. Fixed ValidateLocation handling and player/client position synchronization. 02. Added protection against invalid coordinates and characters falling under the map. 03. Improved XY/Z position and heading validation. 04. Fixed MoveToLocation and MoveToPawn packet conversion and target validation. 05. Fixed TargetSelected, TargetUnselected and MyTargetSelected packet handling. 06. Improved GeoData Z-location handling and disabled unsafe PathNode modifications. 07. Added ExUserInfoInventoryWeight support. 08. Fixed inventory weight and maximum load synchronization. 09. Fixed incorrect 0% inventory weight after character login. 10. Added automatic inventory weight updates after EnterWorld and inventory changes. 11. Added inventory weight packet spam protection and safe weight caching. 12. Fixed BuyList and SellList inventory, slot and weight synchronization. 13. Improved NPC target and Buy/Sell packet validation. 14. Reworked mail attachment inventory and weight validation. 15. Added all-or-nothing mail attachment receiving and safe retry handling. 16. Fixed stackable mail attachment validation and INT_MAX overflow protection. 17. Improved COD Adena validation and post-mail inventory weight refresh. 18. Improved Warehouse Deposit and Withdraw validation. 19. Added protection against malformed warehouse item counts, DBIDs and amounts. 20. Added warehouse INT_MAX, CItem and pSID validation. 21. Improved warehouse anti-dupe protection. 22. Reworked the HTML Cache system for improved stability and memory usage. 23. Added lazy HTML loading instead of loading ~20,000 files during startup. 24. Fixed HTML Cache startup crashes with large HTML collections. 25. Added thread-safe HTML Cache access and Clear/Reload support. 26. Added bad allocation, invalid HTML and oversized HTML protection. 27. Reduced HTML Cache RAM usage, startup allocations and disk I/O. 28. Added HTML Caching ON/OFF with live HTM loading support. 29. Fixed ToggleCachingHook and added VS2005-compatible live HTML handling. 30. Fixed ShortcutInit processing and skill synchronization order. 31. Improved shortcut item validation, augmentation handling and va_list safety. 32. Added LiveMode Ability Point system. 33. Added inventory-item-based Ability Points with configurable pointItemId. 34. Preserved the original level-based Ability Point system as fallback. 35. Fixed incorrect Ability Point display and inventory synchronization. 36. Improved Ability skill learning and point validation. 37. Improved OfflineShopRestore loading and FakePC/DBID handling. 38. Added safer OfflineShopRestore socket limits and batch processing. 39. Prevented thousands of restore sockets from loading simultaneously. 40. Added delayed, non-blocking OfflineShopRestore after server startup. 41. Improved OnEnterWorld initialization order and stability. 42. Improved inventory weight, SkillList and acquired-skill initialization after login. 43. Added VIP integration to the EnterWorld process. 44. Added safe UserExtData initialization without modifying the native User structure. 45. Improved duplicate Bronch Jewel and equipped-slot protection. 46. Improved Bracelet, Belt, Bronch and general UseItem validation. 47. Improved general packet, UserSocket, User, pSD and Creature validation. 48. Added safer INT32/INT64 packet handling and malformed-packet protection. 49. Improved L2Server startup memory usage and lazy resource loading. 50. Reduced unnecessary startup allocations. 51. Improved account-only KeyEngine authentication and remote account validation. 52. Removed account expiration-time requirements. 53. Added updater/restart design without requiring CLExtUpdate.exe. 54. Improved CLIEXT HWID, shared-memory and client/server version validation. 55. Improved ReadFile/WriteFile hooks and MemoryProtector handling. 56. Added UoPilot and Extreme Injector detection handling. 57. Reworked VIP point loading, saving and database synchronization. 58. Fixed VIP Level 0 initialization and first VIP activation. 59. Fixed vip.htm activation after login and from party-shared points. 60. Fixed VIP points being incorrectly reset before successful activation. 61. Improved VIP progression from Level 1 through Level 7. 62. Added proper VIP Level 7 MAX/DONE behavior with no Level 8 requirement. 63. Disabled further VIP point collection after reaching maximum level. 64. Reworked VIP BonusInfo/ReceiveVipInfo packet synchronization. 65. Fixed VIP tier, points, duration and level requirement packet fields. 66. Added VIP duration, tier, point and User validation protections. 67. Added safer 64-bit VIP EXP and party EXP calculations. 68. Preserved subclass maximum EXP protection. 69. Improved ItemDataEx validation during character loading. 70. Fixed augmentation loss during login, relog and server restart. 71. Added safe restoration of augmentation IDs directly from the database. 72. Added CItem, pSID, pExItem and User validation during ItemDataEx loading. 73. Improved Shadow Item mana and item lifetime loading. 74. Preserved item protection timeout data during character loading. 75. Added augmentation loading diagnostics and protected valid augmentation data. 76. Preserved database value 0 for genuinely non-augmented items. 77. Added RaidBoss Status synchronization with the World Map. 78. Fixed alive/dead RaidBoss status updates after spawn and death. 79. Added RaidBossStatus as the source of truth for RaidBoss map packets. 80. Fixed RaidBoss map status synchronization after server/database loading.
    • 🚀 L2AQUILA — GRAND OPENING TOMORROW! Lineage 2 Gracia Final — Like L2 Pride, but fresh. The server you've been waiting for opens tomorrow, Saturday 19/09, 16:00 (Greek time) — No Wipe · 24/7 · Anti-DDoS. ⚔️ What's inside: • EXP 9300x · SP 3000x · Adena 5500x · High drop • Max enchant +20 · Safe +3 · 24 buffs / 3 debuffs • 20 free Custom Coins for every new player on day one! • Custom farming zones (Cave of Trials, Cemetery, Ruins of Despair + more) • PvP Events · Olympiads · Offline Trading · Weddings · Balanced classes • Starter + Dynasty shops in every town — playable from minute one 📥 Download: Client + Patch at https://l2aquila.com/index.html 💬 Discord: discord.gg/5ZyBRvG4k · Facebook: facebook.com/l2aquila Be there at opening hour — bring your squad. See you at the Grand Opening! 🔥
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..