Jump to content

Recommended Posts

Posted

i was looking at this forums and found a lot of tricks/bugs to how to get out from jail

so i searched a little on the net and found this ! i hope it will be useful :

L2Extend.ini

[JailSystem]
ModEnabled=1
BlockChat=1
BlockParty=1
BlockItems=1
BlockAttack=1
BlockGeneralActions=1

 

CJailSystem.h

class CJailSystem
{
public:

	CJailSystem() { }
	~CJailSystem() { }
	static void Initialize();
	static bool IncommingPackets(CSocket *pSocket, CSPacket *pPacket, INT16 nPacketLen, BYTE nPacketID);
	static bool BlockPacket(CSocket *pSocket, BYTE *packet);
	static bool Say2(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length);
	static bool RequestSendFriendMsg(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length);
	static bool RequestJoinParty(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length);

private:

	bool bModEnabled;
	bool bBlockChat;
	bool bBlockParty;
	bool bBlockItems;
	bool bBlockAttack;
	bool bBlockGeneralActions;
};

CJailSystem *pJS = NULL;

void CJailSystem::Initialize()
{
// Initializing the Object
pJS = new CJailSystem();

// Parsing the Config File
pJS->bModEnabled = CIniFile::GetIntValue("ModEnabled","JailSystem","L2Extend.ini") == 1 ? true : false;
pJS->bBlockChat = CIniFile::GetIntValue("BlockChat","JailSystem","L2Extend.ini") == 1 ? true : false;
pJS->bBlockParty = CIniFile::GetIntValue("BlockParty","JailSystem","L2Extend.ini") == 1 ? true : false;
pJS->bBlockItems = CIniFile::GetIntValue("BlockItems","JailSystem","L2Extend.ini") == 1 ? true : false;
pJS->bBlockAttack = CIniFile::GetIntValue("BlockAttack","JailSystem","L2Extend.ini") == 1 ? true : false;
pJS->bBlockGeneralActions = CIniFile::GetIntValue("BlockGeneralActions","JailSystem","L2Extend.ini") == 1 ? true : false;

}

INT32 nJailSystemIncommingPackets = 0;
bool CJailSystem::IncommingPackets(CSocket *pSocket, CSPacket *pPacket, INT16 nPacketLen, BYTE nPacketID)
{
L2SERVER_SHARED_GUARD(nJailSystemIncommingPackets);
TLS_TRACE_BEGIN;

bool bResult = true;

if ( pJS->bModEnabled && pSocket->user->IsValidUser() )
{
	if ( !pSocket->user->SD->nBuilderLevel ) {

		// Is in jail
		if ( pSocket->user->IsInJail() ) {
			switch ( nPacketID )
			{
				case 0x21: //RequestBypassToServer
				case 0x2e: //RequestMagicSkillList
				case 0x33: //RequestShortCutReg
				case 0x34: //RequestShortCutUse
				case 0x35: //RequestShortCutDel
				case 0x3f: //RequestSkillList
				case 0x63: //RequestQuestList
				case 0x64: //RequestDestroyQuest
				case 0xcd: //RequestShowMiniMap
				case 0x5b: //SendBypassBuildCmd
				case 0x5e: //RequestFriendInvite
				case 0x5f: //RequestFriendAddReply
				case 0x61: //RequestFriendDel
				case 0x6d: //RequestRestartPoint
				case 0x6e: //RequestGMCommand
				case 0x81: //RequestGMList
				case 0x82: //RequestJoinAlly
				case 0x83: //RequestAnswerJoinAlly
				case 0x84: //RequestWithdrawAlly
				case 0x85: //RequestOustAlly
				case 0x86: //RequestDismissAlly
				case 0x87: //RequestSetAllyCrest
				case 0x88: //RequestAllyCrest
				case 0x89: //RequestChangePetName
				case 0xa0: //RequestBlock
				case 0xac: //RequestRecipeBookOpen
				case 0xad: //RequestRecipeBookDestroy
					if (pJS->bBlockGeneralActions) bResult = BlockPacket(pSocket, pPacket->GetBytes(0x00));
					break;

				case 0x1e: //RequestSellItem
				case 0x0f: //ItemList
				case 0x11: //RequestUnEquipItem
				case 0x12: //RequestDropItem 0x17 RequestDropItemFromPet (?)
				case 0x13: //GetItem (not used any more?)
				case 0x14: //UseItem
				case 0x15: //TradeRequest
				case 0x72: //RequestCrystallizeItem
				case 0x73: //RequestPrivateStoreManageSell
				case 0x74: //SetPrivateStoreListSell
				case 0x1f: //RequestBuyItem
				case 0x44: //AnswerTradeRequest
				case 0x58: //RequestEnchantItem
				case 0x59: //RequestDestroyItem
				case 0x8a: //RequestPetUseItem
				case 0x8b: //RequestGiveItemToPet
				case 0x76: //RequestPrivateStoreQuitSell
				case 0x91: //SetPrivateStoreListBuy
				case 0x92: //RequestPrivateStoreBuyManageCancel
				case 0x93: //RequestPrivateStoreBuyQuit
					if (pJS->bBlockItems) bResult = BlockPacket(pSocket, pPacket->GetBytes(0x00));
					break;

				case 0x0A: //Attack
				case 0x2F: //RequestMagicSkillUse
					if (pJS->bBlockAttack) bResult = BlockPacket(pSocket, pPacket->GetBytes(0x00));
					break;

				case 0x29: //RequestJoinParty
				case 0x2A: //RequestAnswerJoinParty
				case 0x2B: //RequestWithDrawalParty
					if (pJS->bBlockParty) bResult = BlockPacket(pSocket, pPacket->GetBytes(0x00));
					break;

				case 0xCC: //RequestSendFriendMsg
					if (pJS->bBlockChat) bResult = RequestSendFriendMsg(pSocket, pPacket, nPacketID, nPacketLen);
					break;
				case 0x38: //Say2
					if (pJS->bBlockChat) bResult = Say2(pSocket, pPacket, nPacketID, nPacketLen);
					break;

				default:
					bResult = true;
					break;
			}
		}
		// Try to interact with someone in jail
		else {
			switch ( nPacketID )
			{
				case 0xCC: //RequestSendFriendMsg
					if (pJS->bBlockChat) bResult = RequestSendFriendMsg(pSocket, pPacket, nPacketID, nPacketLen);
					break;
				case 0x38: //Say2
					if (pJS->bBlockChat) bResult = Say2(pSocket, pPacket, nPacketID, nPacketLen);
					break;
				case 0x29: //RequestJoinParty
					if (pJS->bBlockParty) bResult = RequestJoinParty(pSocket, pPacket, nPacketID, nPacketLen);
					break;

				default:
					bResult = true;
					break;
			}
		}
	}
}

if (!bResult) {
	//CLog::AddAnsi(1,"[%s] Blocked Pckt[0x%02X] from [%ls]",__FUNCTION__,nPacketID,pSocket->user->SD->wszName);
}

TLS_TRACE_END;
return bResult;
}

INT32 nBlockPacket = 0;
bool CJailSystem::BlockPacket(CSocket *pSocket, BYTE *packet)
{
L2SERVER_SHARED_GUARD(nBlockPacket);
TLS_TRACE_BEGIN;

if(pSocket->user->IsValidUser()) {
	pSocket->Send("c", 0x25); // 0x1F - ActionFailed
	goto ACTION_FAILED;
}

TLS_TRACE_END;
return true;

ACTION_FAILED:
TLS_TRACE_END;
return false;

}

INT32 nSay2 = 0;
bool CJailSystem::Say2(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length)
{
L2SERVER_SHARED_GUARD(nSay2);
TLS_TRACE_BEGIN;

INT32 nPos = 0;
wstring sText		= pPacket->GetWString(nPos) ; nPos += ((sText.size()*2)+2);
INT32 nType			= pPacket->GetDWord(nPos) ; nPos += 4;
wstring sTarget     = pPacket->GetWString(nPos) ; nPos += ((sTarget.size()*2)+2);

if(pSocket->user->IsValidUser()) {
	if (pSocket->user->IsInJail() && nType>1) {
		pSocket->SendSystemMessage(1357); // You have been blocked from chatting with that contact.
		goto ACTION_FAILED;
	}
	else if (nType == 2) {
		CObjectEx *pTargetEx = CPlayerTracker::GetUserByName(sTarget);
		if ( pTargetEx && pTargetEx->pCreature->IsValidUser() ) {
			if ( pTargetEx->pCreature->IsInJail() && pTargetEx->pCreature->SD->nBuilderLevel==0 ) {
				pSocket->SendSystemMessage(1355); // That contact is currently blocked from chatting
				goto ACTION_FAILED;
			}
		}
	}
}

TLS_TRACE_END;
return true;

ACTION_FAILED:
TLS_TRACE_END;
return false;
}

INT32 nRequestSendFriendMsg = 0;
bool CJailSystem::RequestSendFriendMsg(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length)
{
L2SERVER_SHARED_GUARD(nRequestSendFriendMsg);
TLS_TRACE_BEGIN;

INT32 nPos = 0;
wstring sText		= pPacket->GetWString(nPos) ; nPos += ((sText.size()*2)+2);
wstring sTarget     = pPacket->GetWString(nPos) ; nPos += ((sTarget.size()*2)+2);

if(pSocket->user->IsValidUser()) {
	CObjectEx *pTargetEx = CPlayerTracker::GetUserByName(sTarget);
	if ( pTargetEx && pTargetEx->pCreature->IsValidUser() ) {
		if ( pSocket->user->IsInJail() ) {
			pSocket->SendSystemMessage(1357); // You have been blocked from chatting with that contact.
			goto ACTION_FAILED;
		}
		else if ( pTargetEx->pCreature->IsInJail() && pTargetEx->pCreature->SD->nBuilderLevel==0 ) {
			pSocket->SendSystemMessage(1355); // That contact is currently blocked from chatting
			goto ACTION_FAILED;
		}
	}
}

TLS_TRACE_END;
return true;

ACTION_FAILED:
TLS_TRACE_END;
return false;
}


INT32 nRequestJoinParty = 0;
bool CJailSystem::RequestJoinParty(CSocket *pSocket, CSPacket *pPacket, int nPacketID, int Length)
{
L2SERVER_SHARED_GUARD(nRequestJoinParty);
TLS_TRACE_BEGIN;

INT32 nPos = 0;
wstring sTarget         = pPacket->GetWString(nPos); nPos += ((sTarget.size()*2)+2);
INT32 nItemDistribution = pPacket->GetDWord(nPos);   nPos += 4;

if(pSocket->user->IsValidUser()) {
	CObjectEx *pTargetEx = CPlayerTracker::GetUserByName(sTarget);
	if ( pTargetEx && pTargetEx->pCreature->IsValidUser() ) {
		if ( pSocket->user->IsInJail() ) goto ACTION_FAILED;
		else if ( pTargetEx->pCreature->IsInJail() && pTargetEx->pCreature->SD->nBuilderLevel==0 ) goto ACTION_FAILED;
	}
}

TLS_TRACE_END;
return true;

ACTION_FAILED:
TLS_TRACE_END;
return false;
}

 

this will block almost everything a player can do

credits go to fidow for making it and me for share it here

Posted

hmmmm this might work.... but is a funny way to get out from jail.....TESTED...in over 10 servers....low-mid-high-rate srvs......is a sort of bug that it cannot be resolved......if u want to know how to escape from jail send me a msg.....love this bug:X:X:X:X:X:X

  • 3 weeks later...
  • 5 weeks later...
  • 3 weeks later...
  • Vision changed the title to Gracia CT 2 jail system

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

    • Discord         :  utchiha_market Telegram        : https://t.me/utchiha_market Auto Buy Store  : https://utchiha-market.mysellauth.com/ Not sure if we’re legit? Check Our server — real reviews, real buyers https://discord.gg/4EPpYhe2HA  | https://campsite.bio/utchihaamkt
    • Price Update on TikTok Accounts and New Products. In traffic arbitrage, TikTok accounts play a key role. The success of advertising campaigns and, consequently, the income of an arbitrager directly depend on their quality. Reliable and high-quality accounts provide stability, trust, and long-term results in promotion. With us, you will find only verified TikTok accounts suitable for launching advertising campaigns, growing audiences, and scaling profits. The right account choice is the foundation of effective arbitrage! Full assortment of our online store: Accounts: Telegram, Facebook, Reddit, Twitter (X), Instagram, YouTube, TikTok, Discord, VK, LinkedIn, GitHub, Snapchat, Gmail, mail accounts (Outlook, Firstmail, Rambler, Onet, Gazeta, GMX, Yahoo, Proton, Web.de), Google Voice, Google Ads Premium Subscriptions: Telegram Premium, Twitter Premium X, YouTube Premium, Spotify Premium, Netflix Premium, Discord Nitro, ChatGPT Plus/PRO, XBOX Game Pass Additional Services: Telegram Stars, proxies (IPv4, IPv6, ISP, Mobile), VPN (Outline, WireGuard, others), VDS/RDP servers Promo code: AUGUST2025 (10% discount) Payment: bank cards · cryptocurrency · other popular methods Relevant links: ➡ Online store: Click ➡ Telegram bot: Click ➡ SMM Panel: Click – promotion of your social media accounts Use our SMM Panel to boost Facebook, Instagram, Telegram, Spotify, Soundcloud, YouTube, Reddit, Threads, Kick, Discord, LinkedIn, Likee, VK, Twitch, Kwai, Reddit, website traffic, TikTok, Trust Pilot, Apple Music, Tripadvisor, Snapchat, and other digital products. Get $1 for the first trial run of the SMM Panel: just open a ticket with the subject “Get Trial Bonus” on our website (Support). Updated TikTok account assortment and price changes: TIKTOK NEW ACCOUNTS TikTok Verified Account with a Blue Checkmark | Real account with genuine followers and activity | Officially verified by TikTok. Current price: $2500. TikTok High-Quality New AutoReg Account | Country: USA and Europe | Full access (email is included) | Price from $0.2 TIKTOK - Empty(clear) autoreg accounts II CONFIRMED BY @RAMBLER.RU/@FIRSTMAIL II EMAIL INCLUDED, Registered with RU IP | Price from $0.1 Autoreg TikTok accounts II Verified through email rambler.ru, email included II Gender MIX II Latin name II Empty profile II Registered with MIX IP | Price from $0.1 ACCOUNTS WITH FOLLOWERS Autoreg TikTok accounts II 100+ followers II Email verified @hotmail/@outlook/@firstmail/@rambler, email included in the package (working) II Gender: MIX II Latin name II Registered with MIX IP | Price from $0.39 Autoreg TikTok accounts II 1000+ followers II Email verified @hotmail/@outlook/@firstmail/@rambler, email included in the package (working) II Gender: MIX II Latin name II Open Stream + Can insert a link II Registered with MIX IP | Price from $2.5 Autoreg TikTok accounts II 5000 followers II Email verified @hotmail/@outlook/@firstmail/@rambler, email included in the package (working) II Gender: MIX II Latin name II Open Stream + Can insert a link II Registered with MIX IP | Price from $10 Autoreg TikTok accounts II 10,000+ followers II Email verified @hotmail/@outlook/@firstmail/@rambler, email included in the package (working) II Gender: MIX II Latin name II Open Stream + Can insert a link II Registered with MIX IP | Price from $19 OLD ACCOUNT WITHOUT/WITH FOLLOWERS TikTok High-Quality Account | Age: 2022-2024 | Country: MIX | Full access (email is included) | Price from $0.35 TikTok Old High-Quality Account with followers: 100-10,000 (amount of followers of your choice) | Age: 2022-2024 | Country: MIX | Full access (email is included) | Price from $0.89 TIKTOK ADS TIKTOK ADS ACCOUNTS | GEO: Europe | PREPAY | Manual Registration | Email access + Cookies + VAT Info | Price from $1 TIKTOK ADS ACCOUNTS | GEO: United States | PREPAY | Manual Registration | Email access + Cookies + VAT Info | Price from $1 TIKTOK ADS ACCOUNTS | GEO: United States | Business Verified + POSTPAY | Manual Registration | Email access + Cookies + VAT Info | Price from $3.5 TIKTOK ADS ACCOUNTS | GEO: Europe | Business Verified + POSTPAY | Manual Registration | Email access + Cookies + VAT Info | Price from $3.5 TIKTOK ADS ACCOUNTS | GEO: Europe | POSTPAY+BUSINESS CENTRE | 3 advertising accounts for running ads + 1 personal | May include coupons for advertising $20-$100 | Manual Registration | Email access + Cookies + VAT Info | Price from $8 TIKTOK ADS ACCOUNTS | GEO: United States | POSTPAY+BUSINESS CENTRE | 3 advertising accounts for running ads + 1 personal | May include coupons for advertising $20-$100 | Manual Registration | Email access + Cookies + VAT Info | Price from $8 For regular clients – additional discounts and promo codes! Discount 10% – 20% or BONUS $1 for registration If you want to receive a $1 BONUS for registration OR a 10% – 20% discount on your first purchase, you can leave a comment: "SEND ME BONUS, MY USERNAME IS..." You can also use a promo code for the first purchase: SOCNET (15% discount) Contacts and support: ➡ Telegram: https://t.me/socnet_support ➡ Telegram Channel: https://t.me/accsforyou_shop ➡ WhatsApp: https://wa.me/79051904467 ➡ WhatsApp Channel: https://whatsapp.com/channel/0029Vau0CMX002TGkD4uHa2n ➡ Discord: socnet_support ➡ Discord Server: https://discord.gg/y9AStFFsrh ➡ ✉ Email: solomonbog@socnet.store Also via these contacts you can: — Consult about wholesale purchases — Establish a partnership (current partners: https://socnet.bgng.io/partners ) — Become our supplier SocNet – Digital Goods and Premium Subscriptions Store  
    • Discord         :  utchiha_market Telegram        : https://t.me/utchiha_market Auto Buy Store  : https://utchiha-market.mysellauth.com/ Not sure if we’re legit? Check Our server — real reviews, real buyers https://discord.gg/4EPpYhe2HA  | https://campsite.bio/utchihaamkt
    • Discord         :  utchiha_market Telegram        : https://t.me/utchiha_market Auto Buy Store  : https://utchiha-market.mysellauth.com/ Not sure if we’re legit? Check Our server — real reviews, real buyers https://discord.gg/4EPpYhe2HA  | https://campsite.bio/utchihaamkt
  • Topics

×
×
  • 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