Jump to content

Recommended Posts

Posted

Welcome to the topic of SkyLancer's new invention.

The Jail Breaker !

 

breaker.jpg

 

Description :

When you get jailed you earning that item autamaticly.

It's your choice to use it or no.

If you don't use it when you get out it will dissapear autamaticly.

There is chance that you will not success.

If you fail you will be jailed for 10 minutes more ;D,

but if you don't you will be free like a bird.

 

Core Part :

Index: /trunk/PvP-GS/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- /trunk/PvP-GS/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 18)
+++ /trunk/PvP-GS/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 20)
@@ -6246,5 +6246,5 @@
	}

-	private void storeCharBase()
+	public void storeCharBase()
	{
		java.sql.Connection con = null;
@@ -10277,4 +10277,9 @@

             teleToLocation(-114356, -249645, -2984, true);  // Jail
+            if (Config.JAIL_BREAKER_ENABLED)
+            {
+            	addItem("Loot", Config.JAIL_BREAKER_ID, 1, this, true);
+            	sendMessage("You have earned a jail breaker. Use it at your own risk.");
+            }
             if (Config.JAIL_SET_PARA)
			{
@@ -10296,4 +10301,9 @@

             teleToLocation(17836, 170178, -3507, true);  // Floran
+            if (Config.JAIL_BREAKER_ENABLED || getInventory().getInventoryItemCount(Config.JAIL_BREAKER_ID, 0) >= 1)
+            {
+            	getInventory().destroyItemByItemId("Breaker", Config.JAIL_BREAKER_ID, 1, this, this.getTarget());
+            	sendMessage("Your jail breaker has been removed.");
+            }
             if (Config.JAIL_SET_PARA)
			{
Index: /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/itemhandlers/JailBreaker.java
===================================================================
--- /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/itemhandlers/JailBreaker.java (revision 20)
+++ /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/itemhandlers/JailBreaker.java (revision 20)
@@ -0,0 +1,90 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+package net.sf.l2j.gameserver.handler.itemhandlers;
+
+import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.cache.HtmCache;
+import net.sf.l2j.gameserver.handler.IItemHandler;
+import net.sf.l2j.gameserver.model.L2Character;
+import net.sf.l2j.gameserver.model.L2ItemInstance;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+import net.sf.l2j.gameserver.model.actor.instance.L2PlayableInstance;
+import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUser;
+import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
+import net.sf.l2j.gameserver.network.serverpackets.SocialAction;
+import net.sf.l2j.util.Rnd;
+
+
+/**
+ * @author r3aLtEk aka SkyLanceR
+ */
+public class JailBreaker implements IItemHandler
+{
+	private static final int[] ITEM_IDS = { Config.JAIL_BREAKER_ID };
+	
+	public void useItem(L2PlayableInstance playable, L2ItemInstance item)
+	{
+		L2PcInstance activeChar = (L2PcInstance)playable;
+		if(Config.JAIL_BREAKER_ENABLED || activeChar.isInJail())
+		{
+			int chance = Config.JAIL_BREAKER_CHANCE;
+			if (Rnd.get(100) < chance)
+			{
+				MagicSkillUser  MSU = new MagicSkillUser(activeChar, activeChar, 2024, 1, 1, 0);
+				activeChar.broadcastPacket(MSU);
+				activeChar.getInventory().destroyItemByItemId("Breaker", Config.JAIL_BREAKER_ID, 1, activeChar, activeChar.getTarget());
+				activeChar.sendMessage("Congratulations your jail break was successful. You are free from now !");
+				activeChar.broadcastUserInfo();
+				activeChar.setInJail(false);
+				activeChar.stopJailTask(true);
+				activeChar.storeCharBase();
+				NpcHtmlMessage htmlMsg = new NpcHtmlMessage(0);
+	            String jailInfos = HtmCache.getInstance().getHtm("data/html/jail_out.htm");
+	            if (jailInfos != null)
+	                htmlMsg.setHtml(jailInfos);
+	            else
+	                htmlMsg.setHtml("<html><body>You are free for now, respect server rules!</body></html>");
+	            activeChar.sendPacket(htmlMsg);
+	            activeChar.teleToLocation(17836, 170178, -3507, true);
+			}
+			else
+			{
+				activeChar.getInventory().destroyItemByItemId("Breaker", Config.JAIL_BREAKER_ID, 1, activeChar, activeChar.getTarget());
+				activeChar.broadcastPacket(new SocialAction(activeChar.getObjectId(), 16));
+				activeChar.startAbnormalEffect(L2Character.ABNORMAL_EFFECT_HOLD_2);
+				activeChar.sendMessage("Oh no ! You did not success. You will be paralized and punished with 10 minutes more in jail.");
+				activeChar.broadcastUserInfo();
+				activeChar.setIsParalyzed(true);
+				activeChar.setInJail(true, 10);
+			}
+		}
+		else
+		{
+			activeChar.sendMessage("I'm sorry but you can't use items out of jail. Your breaker will be destroyed !");
+			activeChar.getInventory().destroyItemByItemId("Breaker", Config.JAIL_BREAKER_ID, 1, activeChar, activeChar.getTarget());
+			activeChar.broadcastUserInfo();
+			return;
+		}
+	}
+
+	public int[] getItemIds()
+	{
+		return ITEM_IDS;
+	}
+}
Index: /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/ItemHandler.java
===================================================================
--- /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/ItemHandler.java (revision 3)
+++ /trunk/PvP-GS/java/net/sf/l2j/gameserver/handler/ItemHandler.java (revision 20)
@@ -101,4 +101,5 @@
		registerItemHandler(new NobleCustomItem());
		registerItemHandler(new ClanRepsItem());
+		registerItemHandler(new JailBreaker());
         _log.config("ItemHandler: Loaded " + _datatable.size() + " handlers.");
	}
Index: /trunk/PvP-GS/java/net/sf/l2j/Config.java
===================================================================
--- /trunk/PvP-GS/java/net/sf/l2j/Config.java (revision 18)
+++ /trunk/PvP-GS/java/net/sf/l2j/Config.java (revision 20)
@@ -436,4 +436,7 @@
	public static boolean   ANTI_BUFF_SKILL;
	public static boolean   ANTI_PK_LOW_LEVEL;
+	public static boolean   JAIL_BREAKER_ENABLED;
+	public static int       JAIL_BREAKER_ID;
+	public static int       JAIL_BREAKER_CHANCE;
     
     /** Event Settings Parameters */
@@ -1835,4 +1838,7 @@
     	        ANTI_BUFF_SKILL                  = Boolean.parseBoolean(Modifications.getProperty("AntiBuffSkill", "False"));
     	        ANTI_PK_LOW_LEVEL                = Boolean.parseBoolean(Modifications.getProperty("AntiPkSystem", "False"));
+    	        JAIL_BREAKER_ENABLED             = Boolean.parseBoolean(Modifications.getProperty("JailBreakerEnabled", "False"));
+    	        JAIL_BREAKER_ID                  = Integer.parseInt(Modifications.getProperty("JailBreakerItemID", "9229"));
+    	        JAIL_BREAKER_CHANCE              = Integer.parseInt(Modifications.getProperty("JailBreakerChance", "40"));
             }
             catch (Exception e)
Index: /trunk/PvP-GS/Settings/Modifications/Modifications.properties
===================================================================
--- /trunk/PvP-GS/Settings/Modifications/Modifications.properties (revision 18)
+++ /trunk/PvP-GS/Settings/Modifications/Modifications.properties (revision 20)
@@ -443,4 +443,15 @@
CRItemID = 6673

+# Jail Breaker
+# This item will be gived to player once when he enter in jail.
+# He will have chance to get out or be there for long time paralized.
+JailBreakerEnabled = False
+
+# Id of the breaker
+JailBreakerItemID = 9229
+
+# Chance to break the jail walls
+JailBreakerChance = 40
+
# ========================== #
#       Scheme Buffer                       #

 

DataPack Part :

Execute by navicat:

 

INSERT INTO `etcitem` VALUES ('9229', 'Breaker', 'false', 'none', '0', 'stackable', 'steel', 'none', '-1', '100', '0', 'true', 'true', 'true', 'true', 'q_nias_silver_fairy', 'none');

 

Client Part :

Itemname-e:

 

9229	Jail Breaker		With this item you have chance to break the jail walls. If you fail you will be jailed for 10 minutes more !	-1					0	0	0	

 

EtcItemgdrp:

2	9229	0	3	5	3	0	dropitems.drop_spell_book_m00			dropitemstex.drop_spell_book_blue_t00			icon.skill0461					0	120	18	0	[i]0	1		1		ItemSound.itemdrop_etc_book		0	0	0

 

Credits :[/i]

By me

  • 3 weeks later...
Posted

wow i read all and i understund the modification is awsome i test this time to my server! thx for all +1 karma from me!

Posted

i didnt understand yet, what you mean jail breaker?

Lazy to read?

 

Description :

When you get jailed you earning that item autamaticly.

It's your choice to use it or no.

If you don't use it when you get out it will dissapear autamaticly.

There is chance that you will not success.

If you fail you will be jailed for 10 minutes more ,

but if you don't you will be free like a bird.

Posted

Цей хлопець виграв масової

 

You're not in Russian section.Please take care next time.

 

EDIT: User banned finally.

 

He seems to be the same guy as:

 

"author r3aLtEk aka SkyLanceR"

 

but karma already given, I'll leave the thread opened, so the author can provide support to members (since in the other topic he's banned).

Posted

You're not in Russian section.Please take care next time.

 

EDIT: User banned finally.

 

He seems to be the same guy as:

 

"author r3aLtEk aka SkyLanceR"

 

but karma already given, I'll leave the thread opened, so the author can provide support to members (since in the other topic he's banned).

 

lol ? he is not Im ...

You can check the IP's

btw its already posted so you can junk that topic

Posted

It didnt work for me <.<

Problem:

    [javac] F:\workspace\L2JTeon-Project\L2JTeon\java\net\sf\l2j\gameserver\model\actor\instance\L2PcInstance.java:11558: cannot find symbol
    [javac] symbol  : variable JAIL_SET_PARA
    [javac] location: class net.sf.l2j.Config
    [javac]             if (Config.JAIL_SET_PARA)  
    [javac]                       ^
    [javac] F:\workspace\L2JTeon-Project\L2JTeon\java\net\sf\l2j\gameserver\model\actor\instance\L2PcInstance.java:11583: cannot find symbol
    [javac] symbol  : variable JAIL_SET_PARA
    [javac] location: class net.sf.l2j.Config
    [javac]             if (Config.JAIL_SET_PARA)
    [javac]                       ^

 

Can someone help me?

Posted

http://www.maxcheaters.com/forum/index.php?topic=134838.0

 

 

try the original share and give me feedback again...

couse when I coded it i dont have any errors

 

 

PS:

--- /trunk/PvP-GS/java/net/sf/l2j/Config.java (revision 18)
+++ /trunk/PvP-GS/java/net/sf/l2j/Config.java (revision 20)
@@ -436,4 +436,7 @@
	public static boolean   ANTI_BUFF_SKILL;
	public static boolean   ANTI_PK_LOW_LEVEL;
+	public static boolean   JAIL_BREAKER_ENABLED;
+	public static int       JAIL_BREAKER_ID;
+	public static int       JAIL_BREAKER_CHANCE;

Did you add that part?

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

    • 🏆 UPDATE: CLAN RACE — R$ 300 (PIX in Brazil, or the equivalent in USDT/PayPal) for the first clan ready for World B PvP Worlds opens on Friday, September 25, 19:00 BRT (GMT-3). Everyone starts together, from scratch. The challenge: the first clan with 9 members ready to enter World B wins. Ready = level 51, World C registered and the full C set equipped (weapon, armor and jewelry) with at least 3 attributes on each piece. Only Queen Ant stands between you and World B. Rules: main character only; 9 different people, each on their own PC; the server records the exact time each member became ready. Deadline: October 14. Sign up your clan on our Discord (link on the site): l2mog.com/pvp
    • 🚀 L2-Gold Custom PvP – Beta Test is LIVE! 🚀 Hey guys! We are opening a brand new Custom PvP server and looking for passionate players to help us test it out before the official grand opening! 💥 What we offer: High Rates & Custom PvP Gameplay Custom NPC Buffer, GM Shop & Global GK Balanced classes and epic custom items Interlude with c4 skills 🎁 Beta Rewards: Every active tester who reports bugs or gives feedback will receive Exclusive Custom Rewards on the official launch day! 🛑 No website needed yet! All files, patch, and support are inside our Discord. 🔗 Join Beta Test Here: [https://discord.gg/9qkSxQtTq]
    • "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.
  • 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..