Hercules WPE Free - June 14th Patch

Ind

Development Administrator
Staff member
Messages
1,655
Points
113
Hercules WPE Free - June 14th Patch

Made Possible Thanks to Yommy

  • We're only able to provide you with this feature thanks to Yommy, Thank you very much!
WPE Free - Official Packet Obfuscation Support
  • Packet spamming is no longer possible by normal means, with this feature each packet sent has its own id, so spamming (by sending the same packet more than once) is impossible.
  • For this feature to function you MUST NOT use the 'disable packet obfuscation' client diff.conf/battle/client.conf

    // Whether to enable the official packet obfuscation support (good vs WPE)// 0: disabled// 1: optional (not recommended) -- identifies whether it is required// 2: enabled (recommended)packet_obfuscation: <value>
  • Currently functional for over 44 clients (Thanks to Shakto!): 20110817, 20110824, 20110831, 20110906, 20111005, 20111012, 20111021, 20111025, 20111102, 20111109, 20111122, 20111207, 20111214, 20111220, 20111228, 20120104, 20120111, 20120120, 20120202, 20120207, 20120214, 20120229, 20120307, 20120314, 20120321, 20120328, 20120404, 20120410, 20120418, 20120424, 20120509, 20120515, 20120525, 20120605, 20120612, 20120618, 20120702, 20120716, 20130320, 20130514, 20130522, 20130529, 20130605, 20130612, 20130618
  • Currently functional for over 44 clients (Thanks to Shakto!): 2011-08-17 - 2015-05-13
Special Thanks to
  • Yommy
  • ..Yommy
  • ...The all-awesome Yommy~! Thank you again!
  • Shakto for the 44 PacketKeys!
Also - SQL DB Updates & DB2SQL
  • For logical and performance reasons we've modified the structure of the renewal item db tables, atk and matk no longer share the same column, equip_level was replaced by equip_level_min so that we could add equip_level_max which is required by new renewal items. Note however that because of the previous atk:matk format, it was not possible to provide a upgrade file that would save the matk data
  • Item script errors from sql dbs used to point to a inexistent line number, it was modified to display the item id instead.
  • This update has shrunk the sizes of the item db .sql files, making it possible for tools such as phpmyadmin to parse them, once again.
  • With this patch we're also introducing a new official plugin, db2sql, its purpose is to make it easier for our developers to keep the .sql db files up to date (but you may use that to convert your own if you so desire, too), to use this plugin (when it is enabled in plugins.conf) type server tools db2sql in the console.
Link~u!
 
Last edited by a moderator:
you awesome ! ~

 
for anyone who requires, the 3 keys are hardcoded to each client, you can search the keys in hex editor and modify for something unique.

for those with IDA / OllyDBG, the keys are pushed just before the PACKET_CZ_ENTER reference (not the actual string)

Code:
.text:007962A7 0F 84 77 FC FF FF                       jz      loc_795F24
.text:007962AD 8B 0D 04 0F 98 00                       mov     ecx, dword_980F04
.text:007962B3 68 05 22 05 22                          push    22052205h // key 3
.text:007962B8 68 05 22 05 22                          push    22052205h // key 2
.text:007962BD 68 05 22 05 76                          push    76052205h // key 1
.text:007962C2 E8 A9 64 E3 FF                          call    sub_5CC770
.text:007962C7 68 6C 30 89 00                          push    offset aPacket_cz_ente ; "PACKET_CZ_ENTER"
.text:007962CC E8 6F 19 C7 FF                          call    nullsub_1
.text:007962D1 B9 2D 02 00 00                          mov     ecx, 22Dh
.text:007962D6 83 C4 04                                add     esp, 4
.text:007962D9 66 89 4C 24 48                          mov     word ptr [esp+3ECh+cp+2], cx
 
Last edited by a moderator:
Just an update the structure is a bit different in the new clients. The 3 key pushes comes up a lot of instructions before

push PACKET_CZ_ENTER.

so just scroll up a bit once you find 

Code:
68 6C 30 89 00 (push offset aPacket_cz_ente)
 
  • Upvote
Reactions: Ind
. Amazing patch.

Great work Ind and Yommy.

 
If WPE are now able to counter,

- im hoping and looking forward also for DDos Protection..
default_smile.png


 
If WPE are now able to counter,

- im hoping and looking forward also for DDos Protection..
default_smile.png
DDOS will not be covered by the hercules dev and staff. It's the duty of your hosting to provide ddos protection since it's a hardware related and this project is a software related.

 
A thing is missing :

The possibility to configure our own packet key (3 key) in the conf file
default_smile.png


 
Even RPE blocks this update?

 
Yes, anything that may be used to send packets outside of the client will not function (if you send as much as 1 packet outside of the client the formula in the client and in the server will go off, and the server will disconnect you in the next packet).

 
Back
Top