mpj123 Posted June 6, 2010 Posted June 6, 2010 RPG club official bypass. Follow the steps, YOU NEED L2.NET 385 or over to use this script. Currently in BETA, do not ask for the beta build, you will not have it. Remember to donate once 385 is released, the devs listen to their players and help them out with private servers, without that, botting would be impossible. Brought to you by insane-gamers.com L2.NET 385+ //credit to obce for half the code :P //finished by mpj123 //v1.3 Define_Global int step 0 Define_Global int ok 0 //////////////////////////////// define_global int pak_tar 0 define_global int pak_atk 0 define_global int move 0 define_global int validate 0 define_global int use_it 0 define_global int open_inv 0 define_global int save_inv2 0 define_global int save_inv1 0 define_global int open_skill 0 define_global int open_skill2 0 define_global int use_skill 0 // for a 0 255 1 SET_EVENT "<&SCRIPTEVENT_CLIENTPACKET&>" "<&SYSTEM_CURRENTFILE&>" opc "<&a&>" SET_EVENT "<&SCRIPTEVENT_CLIENTPACKETEX&>" "<&SYSTEM_CURRENTFILE&>" opc "<&a&>" next step = 1 print_text "Target something ..." SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Target something ..." do sleep 1000 loop ok == 0 ok = 0 step = 2 print_text "Move ..." SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Move ..." do sleep 1000 loop ok == 0 ok = 0 step = 3 print_text "Move again ..." SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Move again ..." do sleep 1000 loop ok == 0 ok = 0 step = 4 print_text "Use any item ... " SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Use any item ..." do sleep 1000 loop ok == 0 ok = 0 step = 5 print_text "Open inventory ... " SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Open inventory ..." do sleep 1000 loop ok == 0 ok = 0 step = 6 print_text "Open skills ..." SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Open skills ..." do sleep 1000 loop ok != 1 ok = 0 step = 7 print_text "Use a skill ... (any one of them, even if you cant use it)" SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Use a skill ... (any one of them, even if you cant use it)" do sleep 1000 loop ok != 1 ok = 0 step = 8 print_text "FORCE attack something using the CONTROL key!" SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "FORCE attack something using the CONTROL key!" do sleep 1000 loop ok != 1 ok = 0 print_text "Stop attacking and stay still somewhere to finish the last step, waiting 3 seconds" SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Stop attacking and stay still somewhere to finish the last step, waiting 3 seconds" sleep 3000 step = 9 print_text "Close inventory ... " SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "Close inventory ... " do sleep 1000 loop ok == 0 call block_packets step = 10 print_text " rdy - target <&pak_tar&>" print_text " rdy - target <&pak_atk&>" print_text " rdy - move <&move&> i validate <&validate&>" print_text " rdy - use _it <&use_it&>" print_text " rdy - open inv <&open_inv&>" print_text " rdy - save_inv2 <&save_inv2&>" print_text " rdy - open_skill <&open_skill&>" print_text " rdy - open_skill2 <&open_skill2&>" print_text " rdy - use_skill <&use_skill&>" SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "All Ready!" for a 0 255 1 SET_EVENT "<&SCRIPTEVENT_SELFPACKET&>" "<&SYSTEM_CURRENTFILE&>" opc "<&a&>" SET_EVENT "<&SCRIPTEVENT_SELFPACKETEX&>" "<&SYSTEM_CURRENTFILE&>" opc "<&a&>" next do sleep 10000 loop 1 == 1 END_SCRIPT function opc lock opc define int temp_ex 0 define int pak 0 //print_text " pakiet dlugosc <&packet.LENGTH&>" if step == 1 if packet.LENGTH == 18 packet.read_byte pak_tar Print_text " id stored <&pak_tar&>" ok = 1 unlock opc return void endif endif if step == 2 if packet.LENGTH == 29 packet.read_byte move Print_text " id stored <&move&>" ok = 1 unlock opc return void endif endif if step == 3 if packet.LENGTH == 21 packet.read_byte validate Print_text " id stored <&validate&>" ok = 1 unlock opc return void endif endif if step == 4 if packet.LENGTH == 9 packet.read_byte use_it Print_text " id stored <&use_it&>" ok = 1 unlock opc return void endif endif if step == 5 if packet.LENGTH == 1 packet.read_byte open_inv Print_text " id stored <&open_inv&>" ok = 1 unlock opc return void endif endif if step == 6 if ok == 0 if packet.LENGTH == 1 packet.read_byte open_skill Print_text " id stored <&open_skill&>" ok = 2 unlock opc return void endif endif if ok == 2 if packet.LENGTH == 1 packet.read_byte open_skill2 if open_skill2 != open_inv if open_skill2 != open_skill Print_text " id stored <&open_skill2&>" ok = 1 unlock opc return void endif endif endif endif endif if step == 7 if packet.LENGTH == 10 packet.read_byte use_skill Print_text " id stored <&use_skill&>" ok = 1 unlock opc return void endif endif if step == 8 if packet.LENGTH == 18 packet.read_byte pak_atk if pak_atk != pak_tar Print_text " id stored <&pak_atk&>" ok = 1 unlock opc return void endif endif endif if step == 9 if packet.LENGTH != 15 packet.read_byte save_inv1 packet.read_int16 save_inv2 if save_inv2 <= 0 SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "You need to stop attacking to be able to capture the close inventory packet!" print_text "You need to stop attacking to be able to capture the close inventory packet!" unlock opc return void endif if save_inv2 >= 257 SAY_TO_CLIENT "<&CHANNEL_PRIVATE&>" "You need to stop attacking to be able to capture the close inventory packet!" print_text "You need to stop attacking to be able to capture the close inventory packet!" unlock opc return void endif Print_text " id stored <&save_inv1&> i 2 byte <&save_inv2&>" ok = 1 unlock opc return void endif endif if step == 10 packet.read_byte pak if pak == 31 packet.RESET_INDEX packet.write_byte pak_tar injectbb packet unlock opc return void endif if pak == 1 packet.RESET_INDEX packet.write_byte pak_atk injectbb packet unlock opc return void endif if pak == 15 packet.RESET_INDEX packet.write_byte move injectbb packet unlock opc return void endif if pak == 89 packet.RESET_INDEX packet.write_byte validate injectbb packet unlock opc return void endif if pak == 25 packet.RESET_INDEX packet.write_byte use_it injectbb packet unlock opc return void endif if pak == 20 packet.RESET_INDEX packet.write_byte open_inv injectbb packet unlock opc return void endif if pak == 80 packet.RESET_INDEX packet.write_byte open_skill injectbb packet unlock opc return void endif if pak == 166 packet.RESET_INDEX packet.write_byte open_skill2 injectbb packet unlock opc return void endif if pak == 57 packet.RESET_INDEX packet.write_byte use_skill injectbb packet unlock opc return void endif if pak == 208 packet.read_int16 temp_ex if temp_ex == 36 //PRINT_TEXT "I fired!" packet.RESET_INDEX packet.write_byte save_inv1 packet.write_int16 save_inv2 injectbb packet unlock opc return void endif endif endif unlock opc return void function block_packets print_text " blocked" for a 0 255 1 block_SELF "<&a&>" blockex_SELF "<&a&>" next //BLOCK_SELF_ALL //BLOCKEX_SELF_ALL block_SELF 31 // target block_SELF 15 // move block_SELF 89 // vaidate block_SELF 25 // use item block_SELF 20 // open inv blockex_SELF 36 // save inv block_SELF 36 // save inv block_SELF 80 // open skill1 block_SELF 166 // open skill2 block_SELF 1 // force attack block_SELF 57 // force spell return void Quote
mpj123 Posted June 7, 2010 Author Posted June 7, 2010 updated to v1.2, bot now sends a message to the client with the instructions, ALL L2.NET packets are also blocked. Quote
magicpt Posted June 8, 2010 Posted June 8, 2010 nice! now lets just wait for the 385 to use the script :D Quote
YouWishToKnowMyNick Posted June 10, 2010 Posted June 10, 2010 wow mpj you and your dev friends put so much dedication into bypassing RPG-Club =P Quote
MasterBlaster Posted June 10, 2010 Posted June 10, 2010 wow mpj you and your dev friends put so much dedication into bypassing RPG-Club =P The point is that the changes made to make l2net work on rpg-club is also useful for other servers, so its a win-win situation :) Quote
mpj123 Posted June 10, 2010 Author Posted June 10, 2010 next step is to be able to start editing the login server process :P Quote
Recommended Posts
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.