Jump to content

Recommended Posts

Posted

Hello Everybody, here is a simple Code. to Avoid Quest stucking and LAGS And more more Shits :)

 

Bypass Flood Protection:

 

### Eclipse Workspace Patch 1.0
#P L2_GameServer_It
Index: java/net/sf/l2j/gameserver/util/FloodProtector.java
===================================================================
--- java/net/sf/l2j/gameserver/util/FloodProtector.java	(revision 3695)
+++ java/net/sf/l2j/gameserver/util/FloodProtector.java	(working copy)
@@ -50,7 +50,7 @@
	// =========================================================

	// reuse delays for protected actions (in game ticks 1 tick = 100ms)
-	private static final int[] REUSEDELAY = new int[]{ 4, 42, 42, 16, 100 };
+	private static final int[] REUSEDELAY = new int[]{ 4, 42, 42, 16, 100, Config.PROTECTED_BYPASS };

	// protected actions
	public static final int PROTECTED_USEITEM		= 0;
@@ -58,6 +58,7 @@
	public static final int PROTECTED_FIREWORK		= 2;
	public static final int PROTECTED_ITEMPETSUMMON	= 3;
	public static final int PROTECTED_HEROVOICE		= 4;
+    public static final int PROTECTED_BYPASS        = 5;

	// =========================================================
	// Constructor
Index: java/config/options.properties
===================================================================
--- java/config/options.properties	(revision 3695)
+++ java/config/options.properties	(working copy)
@@ -16,6 +16,9 @@
# If next switch is set to true every newly created character will have access level 200.
EverybodyHasAdminRights = False

+# Protected Server Bypass.
+ProtectedBypass = 4
+
# Setting for serverList
# Displays [] in front of server name
ServerListBrackets = False
Index: java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java
===================================================================
--- java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java	(revision 3695)
+++ java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java	(working copy)
@@ -32,6 +32,7 @@
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.entity.L2Event;
+import net.sf.l2j.gameserver.util.FloodProtector;
import net.sf.l2j.gameserver.serverpackets.ActionFailed;
import net.sf.l2j.gameserver.serverpackets.NpcHtmlMessage;

@@ -64,6 +65,13 @@

		if (activeChar == null)
		    return;
+		
+        if (!FloodProtector.getInstance().tryPerformAction(activeChar.getObjectId(), FloodProtector.PROTECTED_BYPASS))
+        {
+                activeChar.sendMessage("You cannot bypass so fast.");
+                activeChar.sendPacket(new ActionFailed());
+                return;
+        }

		try {
			if (_command.startsWith("admin_")) //&& activeChar.getAccessLevel() >= Config.GM_ACCESSLEVEL)
Index: java/net/sf/l2j/Config.java
===================================================================
--- java/net/sf/l2j/Config.java	(revision 3695)
+++ java/net/sf/l2j/Config.java	(working copy)
@@ -588,6 +588,8 @@

    /** FloodProtector initial capacity */
    public static int              FLOODPROTECTOR_INITIALSIZE;
+    
+    public static int           PROTECTED_BYPASS;

    /** Allow Discard item ?*/
    public static boolean         ALLOW_DISCARDITEM;
@@ -1259,6 +1261,8 @@

                ONLY_GM_ITEMS_FREE                = Boolean.valueOf(optionsSettings.getProperty("OnlyGMItemsFree", "True"));

+                PROTECTED_BYPASS        = Integer.parseInt(optionsSettings.getProperty("ProtectedBypass", "4"));
+                
                ALLOW_WAREHOUSE                 = Boolean.valueOf(optionsSettings.getProperty("AllowWarehouse", "True"));
                WAREHOUSE_CACHE                 = Boolean.valueOf(optionsSettings.getProperty("WarehouseCache", "False"));
                WAREHOUSE_CACHE_TIME            = Integer.parseInt(optionsSettings.getProperty("WarehouseCacheTime", "15"));

 

 

1Thousent -beep-ing Sorrys is is already Shared.

Posted

But won't this affect every single type of bypass in the server? :s

I mean, you'll try to buff, and if you do it fast you'll get pwned ;s

 

Anyway, added at the list.

Posted

But won't this affect every single type of bypass in the server? :s

I mean, you'll try to buff, and if you do it fast you'll get pwned ;s

 

Anyway, added at the list.

Heheh i can't understand you.. When you Buff fast you mean? ??

 

You will get a message you Cannot Bypass So Fast. and the action will fail ( You won't take the effect )

Posted

Heheh i can't understand you.. When you Buff fast you mean? ??

 

You will get a message you Cannot Bypass So Fast. and the action will fail ( You won't take the effect )

 

That's what I mean..

Look at this:

if (!FloodProtector.getInstance().------------>tryPerformAction<---------------(activeChar.getObjectId(), FloodProtector.PROTECTED_BYPASS))
       {
               activeChar.sendMessage("You cannot bypass so fast.");
               activeChar.sendPacket(new ActionFailed());
               return;
       }

 

It won't affect just quests to reduce the lag, it will affect every single action xD

And it can become annoying :P

But since it's a protection, it may be useful to provent a few bugs..

Posted

lol, soz but This is Absolutely Needed for all server ( it won't fail every action you do, the fast actions :) )

With this you can Avoid SERVER POWN :(

 

naaaah every single client packet can be used to right a script and pwn a server, but anyway :P

Posted

:@ :) You Don't Understand ::) This is a simple flood for Bypass ( Anti-Lag )

 

If i have time later i will share a FULL Flood Protection :)

 

Nah I know what this shit is, lol..

Half of IT + Gracia projects use this..

 

My point is that it may become quite annoying for other people, if the value is set to a number > 1

 

But as I told previously, it can become quite useful to prevent server crashes and other little exploits and bugs.

Posted

# ServerBypass - server bypass flooding

FloodProtectorServerBypassInterval = 5

FloodProtectorServerBypassLogFlooding = False

FloodProtectorServerBypassPunishmentLimit = 0

FloodProtectorServerBypassPunishmentType = none

FloodProtectorServerBypassPunishmentTime = 0

Posted

# ServerBypass - server bypass flooding

FloodProtectorServerBypassInterval = 5

FloodProtectorServerBypassLogFlooding = False

FloodProtectorServerBypassPunishmentLimit = 0

FloodProtectorServerBypassPunishmentType = none

FloodProtectorServerBypassPunishmentTime = 0

My Share, is for L2J - IL With no rework on FloodProtection.

 

And is simple.

Posted

# ServerBypass - server bypass flooding

FloodProtectorServerBypassInterval = 5

FloodProtectorServerBypassLogFlooding = False

FloodProtectorServerBypassPunishmentLimit = 0

FloodProtectorServerBypassPunishmentType = none

FloodProtectorServerBypassPunishmentTime = 0

 

L2jCT2.3 files have a few floodprotectors ready and of course reworked.

So you can't compare IT fps and ct2.3 ones.

Posted

Fail, fail fail. It stops just the requestbypasstoserver packet. Not every single packet, rofl. For that you need a flood protector in every packet file. Nubz! that tryPerformAction is just the timer.

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

    • LIVE VERIFICATION? SUMSUB? “IMPOSSIBLE”? ▪ Spoiler: it is possible — if you know who to work with. A client came in with a task to pass **live verification** on **WantToPay**, a Telegram virtual card service. On the platform side — **Sumsub**: liveness check, SMS, manual review. “Fast” and “by eye” simply don’t work here. › What was done: → analyzed the verification scenario and Sumsub requirements → built the correct flow: phone number, email, timing → **completed live verification remotely, without account handover** → handled SMS and confirmation codes → brought the process to final approval ▪ Result: → verification passed → access granted → no flags or repeat requests ▪ Live verification is not luck. It’s scenario-based preparation — not hope. › TG: @mustang_service ( https:// t.me/ mustang_service ) › Channel: Mustang Service ( https:// t.me/ +6RAKokIn5ItmYjEx ) *All data is published with the client’s consent.* #verification #sumsub #livecheck #kyc #case
    • IMPORTANT INFO: In a few days, I will switch to completely new code, written from scratch with a new download system, patch building and management system. The Updater will become true 2026 code with "foolproof systems". I'm going to create a Discord server for customers to request new ideas and features. FIRST CUSTOMERS ARE ALREADY USING THE NEW UPDATER ON LIVE SERVERS! Watch this topic for upcoming info because the new updater is around the corner! Yes, you can still use self-update on the previous updater! No, the new updater won't be compatible with the old patch system! A new build is required, but players who already have game files won't have to download the entire patch again! New templates and updates to existing templates are coming soon! Sneak peek:  
    • i used guytis IL project and source. i found in his project there are 3 Client version source... 1,CliExt_H5   --->this one cant be compiled in VS2005,i did know why..is it for H5 client? 2,CliExtNew  --->this one is IL version ,but when i compiled it and use it.player cant login game,MD5Checksum wrong.i check the source code,but not found any hints. 3,L2Server    --->this one for HB client?im not sure...   so my question is what are the differences between these three versions of cliext.dll?how can i fix the issue of the MD5Checksum not matching problem?   01/29/2026 21:04:11.366, [CCliExt::HandleCheckSum] Invalid Checksum[1130415144] vs [-721420287] packet[dd] len[29] sum[2698] key[30] HWID[] Account[]! 01/29/2026 21:04:11.366, SocketLimiter::UserSocketBadunknownprotocol 11111111111 01/29/2026 21:04:11.366, [usersocket]unknown protocol from ip[113.137.149.115]!      
  • 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..