Jump to content

[L2.NET Script] Auto Learn all those pesky skills!


Recommended Posts

Posted

Its pretty simple, start the script then talk to your skill manager. The script does the rest... This script will only work with L2.NET of course.

 

Sometimes lag will cause the script to miss the update packet, just learn one skill manually and it'll keep going.

 

Tested on an L2OFF ct1.5 server.

 

//v2
//Made entirely by mpj123
//Come visit me at the forums for more cool scripts and join us!
//www.ltwonet.com
SET_EVENT "<&SCRIPTEVENT_SERVERPACKET&>" "<&SYSTEM_CURRENTFILE&>" STARTLEARN 144

DEFINE_GLOBAL INT AlreadyStarted 0

WHILE ZERO == ZERO
SLEEP 10000
WEND

FUNCTION STARTLEARN
PRINT_TEXT "RECIEVED FIRST PACKET, LEARNING SKILLS"

IF AlreadyStarted == ONE
  PRINT_TEXT "Function already started, rejecting!"
  RETURN VOID
ENDIF

AlreadyStarted = ONE

//Define all needed variables
DEFINE INT Skillcurrent 1
DEFINE INT IDENT1 0
DEFINE INT IDENT2 0
DEFINE INT NumberOfSkills 0
DEFINE INT Skill_ID 0
DEFINE INT Skill_Level 0
DEFINE INT NOTHING 0
//End of defining variables

//Reading first bits of the packet I need
PACKET.READ_BYTE IDENT1
PACKET.READ_INT32 IDENT2
PACKET.READ_INT32 NumberOfSkills
//Done reading needed bytes

PRINT_TEXT "We have <&NumberOfSkills&> skills to learn"
//If we have 0 skills, dont inject anything
IF NumberOfSkills == ZERO
  PRINT_TEXT "You have 0 skills to learn... terminating script"
  SCRIPT_END
ENDIF

//Learning only the amount of skills needed.
WHILE Skillcurrent <= NumberOfSkills
PRINT_TEXT "Currently learning skill: <&Skillcurrent&>"
Skillcurrent = Skillcurrent + ONE
DEFINE bytebuffer ClickSkill 256
DEFINE bytebuffer LearnSkill 256

//Reading needed information
PACKET.READ_INT32 Skill_ID
PACKET.READ_INT32 Skill_Level
PACKET.READ_INT32 NOTHING
PACKET.READ_INT32 NOTHING
PACKET.READ_INT32 NOTHING

//Buffering ClickSkill
ClickSkill.WRITE_BYTE #i115
ClickSkill.WRITE_INT32 Skill_ID
ClickSkill.WRITE_INT32 Skill_Level
ClickSkill.WRITE_INT32 #i0
//Buffering LearnSkill
LearnSkill.WRITE_BYTE #i124
LearnSkill.WRITE_INT32 Skill_ID
LearnSkill.WRITE_INT32 Skill_Level
LearnSkill.WRITE_INT32 #i0

LearnSkill.TRIM_TO_INDEX
ClickSkill.TRIM_TO_INDEX


//Injecting packets
injectbb ClickSkill
SLEEP 500
injectbb LearnSkill
SLEEP 500
//End of packet injection

//Deleting
DELETE ClickSkill
DELETE LearnSkill
//End of Deletion
WEND
AlreadyStarted = ZERO
PRINT_TEXT "Session ended"
RETURN VOID

 

Output:

05:05:07 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:07 :[We have 8 skills to learn

05:05:07 :[Currently learning skill: 1

05:05:07 :[You have earned Poison.

05:05:08 :[Currently learning skill: 2

05:05:08 :[You have earned Aura of Hate.

05:05:08 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:08 :[Function already started, rejecting!

05:05:08 :[OnlyCraFt: WTB CRY S

05:05:09 :[Currently learning skill: 3

05:05:09 :[You have earned Aggression.

05:05:09 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:09 :[Function already started, rejecting!

05:05:10 :[Currently learning skill: 4

05:05:10 :[You have earned Drain Health.

05:05:10 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:10 :[Function already started, rejecting!

05:05:11 :[Currently learning skill: 5

05:05:11 :[You have earned Freezing Strike.

05:05:11 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:11 :[Function already started, rejecting!

05:05:11 :[OnlyCraFt: WTB CRY S

05:05:12 :[You have earned Magic Resistance.

05:05:12 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:12 :[Function already started, rejecting!

05:05:12 :[Currently learning skill: 6

05:05:13 :[Currently learning skill: 7

05:05:13 :[You have earned Sword/Blunt Weapon Mastery.

05:05:13 :[RECIEVED FIRST PACKET, LEARNING SKILLS

05:05:13 :[Function already started, rejecting!

05:05:14 :[Currently learning skill: 8

05:05:14 :[You have earned Sting.

05:05:15 :[session ended

Posted

L2.Net is not safe at all on retail servers.. is there any free and safe bot for retail servers?

And your mom isn't safe for nightly affairs...

 

Any evidence to back up your equally retarded claim?

Posted

Just to clarify a few things... L2.NET IG dosen't emulate GG replys like walker/superman. It actually uses the real GG client to reply with correct querys. L2.NET also uses the mouse movements instead of keyboard movements, L2.NET dosen't send the /GMLIST command once logged in.

 

I'm curious to know how L2.NET isn't safe on retail.

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.



×
×
  • Create New...