Jump to content

Recommended Posts

Posted

i only know how to make easy scripts like f.e. mana pots, but if i want change weapon when i have hp under 30%, start skill, than eqip other weapon and start other skill and back to the 1st weapon??

or sth like that

 

plz any "good" guide HOW TO MAKE SCRIPTS;p

Posted

well..to make a script..you need 3 things : Knowing the Variables,Creativity,Patience.

 

i can only give you the variable..the rest you got to have by your self :P

 

i did not write them..but i also dunno who wrote them cuz its copied on all over the net by different authors...but it has been useful ;)

 

Variables:

 

MOVETO(x,Y,Z)

Moves to x,Y,Z. You can check your posistion by clicking: SETUP | OPTION - Pathing | .Cur

 

NPCSEL(name[iD=x])

Chooses NPC. Can select an NPC within the field of range. Noticed that you can select them even if you don't use ID. IE: NPCSEL(Sovin)

 

NPCDLG(name[iD=x])

With NPC dialogue. Opens up the dialog the NPC has.

 

USESKILL (name [iD=x], SELF|PLAYER|PARTY|NPC|PET, Target)

Example: USESKILL(Battle Heal, PLAYER, SE)

Note: It doesn't require ID's

 

Set(L2WALKER, ENABLE|DISABLE)

How it works: Disables/Enables feaures except the script function within L2Walker. Things like auto buff, auto follow, auto fish would quit working if disabled.

 

Set(RANGETYPE, RAND)

How it works: Your character will aimlessly attack the nearest monster, no matter how far the radii is.

 

Set(RANGETYPE, STARTPOS, radii)

How it works: First monster attacked is the central point. Anything outside the radii would not be attacked. Disables all other kinds of ranges.

 

Set(RANGETYPE, DEFPOS, x, y, z, radii)

How it works: Pre-sets the central point with radii. Anything outside the radii would not be attacked. Disables all other kinds of ranges.

 

Set(RANGETYPE, DEFRANGE)

How it works: Uses Ranges. Disables all other kinds of ranges.

 

Set(DEFRANGE, ADD, x, y, z)

How it works: Adds another Range Point to a specific location.

 

Set(DEFRANGE, CLEAR)

How it works: Clears all added Ranges.

 

Set(RANGETYPE, DEFPATH)

How it works: Uses Paths. Disables all other kinds of ranges.

 

Set(DEFPATH, ADD, x, y, z, radii)

How it works: Adds another Range Point to a specific location.

 

Set(DEFPATH, CLEAR)

How it works: Clears all added Paths.

 

 

Set(MON, ATTACK|NOATTACK|ATTACK ONE, Name [ ID=n ]; Name1 [ ID=n ]; |*)

How it works: Seems to crash L2Walker everytime its used. It might REQUIRE ID numbers unlike the rest.

 

Set(ITEM, PICK|NOPICK|SAVE, Name [ ID=n ]; Name1 [ ID=n ]; |*)

 

DLGSEL(name)

Dialogue choice. Look for certain words in dialog and select.

 

GOHOME()

Return to nearest town on death.

 

SAY(writing)

Speaks generally. Anyone in game can view.

 

MSG(writing)

Outside hangs the prompt, Only you can see.

 

UseItem(name[iD=x])

Uses the stage prop. ID is not required.

 

BuyItem(name [ ID=x ],Quantity)

Purchase goods. ID is required.

 

SellItem(name [ ID=x ],Quantity)

Sell goods. ID is required.

 

SaveItem(name [ ID=x ],Quantity)

No Clue what this is used for.

 

LoadItem(name [ ID=x ],Quantity)

No Clue what this is used for.

 

ChangeWaitType(x)

The character stands or sits down

 

StrInDlg(dialogue writing)

Judges in the NPC dialogue dialog box whether has the writing which assigns

 

StrNotInDlg (dialogue writing)

Judges in the NPC dialogue dialog box whether it doesn't have assigned writing

 

CharStatus([ CHP|CMP|HP|MP|WEIGHT|LV|SP|RACE|STAND ],[ >=|>|==|!=|<|<=],Num)

Character condition judgment.

HP,MP,WEIGHT: is a percentage

CHP,CMP: Health current actual value

WEIGHT: is carries a heavy load the percentage

LV: Your Level

RACE: manner race (human=0, Demon=1,Dark Elf=2, Elf=3, Dwarf=4)

STAND:STAND==1 is standing and STAND==0 is sitting

 

PosInRange(x,Y,Z,Range)

Examines the character current coordinates whether by x,Y,Z is central point range is in the radius center of a circle

 

PosOutRange(x,Y,Z,Range)

Examines the character current coordinates whether by x,Y,Z is central point range is outside the radius center of a circle

 

ItemCount(name[iD=x],* ,Count)

>= Greater than or equal to

> Greater than

== Equal to

!= Does not equal

< Less than

<= Less than or equal to

Assigns the name or the ID stage prop quantity compared with thecharacter body on whether does satisfy the condition

 

CALL(LABEL name)

Transfers the LABEL marking the label address execution,Carries out returns, Must have to have the RETURN instruction

 

useskill (name[iD=x]) ---> Something isn't working here.

 

JMP(LABEL name)

Jumps changes to the LABEL marking the label address execution

 

RETURN()

When CALL transfer must use this to return

 

EXIT()

Conclusion script movement

 

DELAY(x)

Retards x millisecond

 

PAUSE()

Pause the Script

 

LABEL(Zone)

Definition Zone,Uses for JMP or CALL

 

SET([ FIGHTSTART|FIGHTSTOP ])

The establishment commencing of action or stops fighting

 

Posted

well..to make a script..you need 3 things : Knowing the Variables,Creativity,Patience.

 

i can only give you the variable..the rest you got to have by your self :P

 

i did not write them..but i also dunno who wrote them cuz its copied on all over the net by different authors...but it has been useful ;)

 

Variables:

 

MOVETO(x,Y,Z)

Moves to x,Y,Z. You can check your posistion by clicking: SETUP | OPTION - Pathing | .Cur

 

NPCSEL(name[iD=x])

Chooses NPC. Can select an NPC within the field of range. Noticed that you can select them even if you don't use ID. IE: NPCSEL(Sovin)

 

NPCDLG(name[iD=x])

With NPC dialogue. Opens up the dialog the NPC has.

 

USESKILL (name [iD=x], SELF|PLAYER|PARTY|NPC|PET, Target)

Example: USESKILL(Battle Heal, PLAYER, SE)

Note: It doesn't require ID's

 

Set(L2WALKER, ENABLE|DISABLE)

How it works: Disables/Enables feaures except the script function within L2Walker. Things like auto buff, auto follow, auto fish would quit working if disabled.

 

Set(RANGETYPE, RAND)

How it works: Your character will aimlessly attack the nearest monster, no matter how far the radii is.

 

Set(RANGETYPE, STARTPOS, radii)

How it works: First monster attacked is the central point. Anything outside the radii would not be attacked. Disables all other kinds of ranges.

 

Set(RANGETYPE, DEFPOS, x, y, z, radii)

How it works: Pre-sets the central point with radii. Anything outside the radii would not be attacked. Disables all other kinds of ranges.

 

Set(RANGETYPE, DEFRANGE)

How it works: Uses Ranges. Disables all other kinds of ranges.

 

Set(DEFRANGE, ADD, x, y, z)

How it works: Adds another Range Point to a specific location.

 

Set(DEFRANGE, CLEAR)

How it works: Clears all added Ranges.

 

Set(RANGETYPE, DEFPATH)

How it works: Uses Paths. Disables all other kinds of ranges.

 

Set(DEFPATH, ADD, x, y, z, radii)

How it works: Adds another Range Point to a specific location.

 

Set(DEFPATH, CLEAR)

How it works: Clears all added Paths.

 

 

Set(MON, ATTACK|NOATTACK|ATTACK ONE, Name [ ID=n ]; Name1 [ ID=n ]; |*)

How it works: Seems to crash L2Walker everytime its used. It might REQUIRE ID numbers unlike the rest.

 

Set(ITEM, PICK|NOPICK|SAVE, Name [ ID=n ]; Name1 [ ID=n ]; |*)

 

DLGSEL(name)

Dialogue choice. Look for certain words in dialog and select.

 

GOHOME()

Return to nearest town on death.

 

SAY(writing)

Speaks generally. Anyone in game can view.

 

MSG(writing)

Outside hangs the prompt, Only you can see.

 

UseItem(name[iD=x])

Uses the stage prop. ID is not required.

 

BuyItem(name [ ID=x ],Quantity)

Purchase goods. ID is required.

 

SellItem(name [ ID=x ],Quantity)

Sell goods. ID is required.

 

SaveItem(name [ ID=x ],Quantity)

No Clue what this is used for.

 

LoadItem(name [ ID=x ],Quantity)

No Clue what this is used for.

 

ChangeWaitType(x)

The character stands or sits down

 

StrInDlg(dialogue writing)

Judges in the NPC dialogue dialog box whether has the writing which assigns

 

StrNotInDlg (dialogue writing)

Judges in the NPC dialogue dialog box whether it doesn't have assigned writing

 

CharStatus([ CHP|CMP|HP|MP|WEIGHT|LV|SP|RACE|STAND ],[ >=|>|==|!=|<|<=],Num)

Character condition judgment.

HP,MP,WEIGHT: is a percentage

CHP,CMP: Health current actual value

WEIGHT: is carries a heavy load the percentage

LV: Your Level

RACE: manner race (human=0, Demon=1,Dark Elf=2, Elf=3, Dwarf=4)

STAND:STAND==1 is standing and STAND==0 is sitting

 

PosInRange(x,Y,Z,Range)

Examines the character current coordinates whether by x,Y,Z is central point range is in the radius center of a circle

 

PosOutRange(x,Y,Z,Range)

Examines the character current coordinates whether by x,Y,Z is central point range is outside the radius center of a circle

 

ItemCount(name[iD=x],* ,Count)

>= Greater than or equal to

> Greater than

== Equal to

!= Does not equal

< Less than

<= Less than or equal to

Assigns the name or the ID stage prop quantity compared with thecharacter body on whether does satisfy the condition

 

CALL(LABEL name)

Transfers the LABEL marking the label address execution,Carries out returns, Must have to have the RETURN instruction

 

useskill (name[iD=x]) ---> Something isn't working here.

 

JMP(LABEL name)

Jumps changes to the LABEL marking the label address execution

 

RETURN()

When CALL transfer must use this to return

 

EXIT()

Conclusion script movement

 

DELAY(x)

Retards x millisecond

 

PAUSE()

Pause the Script

 

LABEL(Zone)

Definition Zone,Uses for JMP or CALL

 

SET([ FIGHTSTART|FIGHTSTOP ])

The establishment commencing of action or stops fighting

 

 

so to use f.e frenzy (with dagger to faster reuse) do i have to write sth like that:

 

call(what i have to write here exacly?)

{

characterstatus(hp,<=,30)

useitem(that dagger what i have)

useskill(fezny)

useitem(my main sword or blunt or pole)

}

return

 

??

 

anyway thx for help^^

  • 3 months later...
Posted

so to use f.e frenzy (with dagger to faster reuse) do i have to write sth like that:

 

call(what i have to write here exacly?)

{

characterstatus(hp,<=,30)

useitem(that dagger what i have)

useskill(fezny)

useitem(my main sword or blunt or pole)

}

return

 

??

 

anyway thx for help^^

 

 

Open Walker, Go to Heal Options:

HP < 20%, use pots.

HP < 31%, Item "Cursed Dagger [Rsk.Haste]"  Check "Use in Combat".

HP < 29%, use "Frenzy" Check "Use in Combat".

HP < 27%, use "Zealot" Check "Use in Combat".

--

Buffs:

Buff Skill 1 "Rage" Check "Auto Detect" and "In Fight"

--

Policy:

Check "Equip Weapon" - "Select your PvE weapon"

Skill1 "Battle Roar / Elixir Life" Self:HP<20% MP> 33 (Not really necessary if you have vampire buffs)

--

The problem is that some times, it doesn't activate the skills fast enough, so if you are being attacked it will switch back to the PvE weapon and use zealot with it, depends on the damage you are under, your attack speed, but it's most likely that it will always activate frenzy with the dagger.

 

I'm sorry, this is the only way I know, i hope it helps you, not sure if a script would do it better anyway.

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

    • 🔹 Join the Lineage II Expose Team! 🔹 🚀 Lineage II Expose - High Five x100 has been a passion-driven project since 2020, and we are now in Season II, continuously evolving and improving! As we expand, we are looking for dedicated individuals who are serious about contributing to our growing community and project. 🔥 What We’re Looking For: ✔️ Active & serious team members willing to invest time and effort into the project. ✔️ Fluent English speakers for clear communication. ✔️ Engaged Discord presence to interact with players and assist with community management. ✔️ Passion for Lineage II and the ability to help improve and grow the server. 💡 Why Join Us? ✅ Be part of a long-standing, well-developed server with an active player base. ✅ Work with a dedicated team that continuously innovates and improves gameplay. ✅ Help shape the future of Season II and beyond! 💬 If you are interested, reach out to us on Discord! Let’s make Lineage II Expose even bigger and better together! 🚀 ❓ If you have any questions about Lineage II Expose - High Five x100, feel free to leave a reply below! Lineage II Expose, Admin Kontrol
    • - Improved Classic, starting from 1.0 - Improved Buff system with support classes - New skills added to all Classes - No Dualboxing, No Bots - Rates x1 - Vitality system https://l2einhovant.net Discord Link: https://discord.com/invite/9y3BaSsnmC Opened today 20+00 GMT +2
    • I believe it was 406 (back in mid 2023?), I apologized profusely to Tryskell for my mistake as I wasn't completely aware of the damage I was doing at the time & immediately removed the post once I arrived home from work. After seeing 1st hand how much effort that guy puts into his project, it was indeed a dick move on my end and by far the biggest regret I have. Wont shy away from that mistake at all. At that point in time, we had spoken a fair bit and was given a 2nd chance in the donators section which I still appreciate him for doing to this day. I'd never be as silly as to share anyone's private sources again. Strange attempt to taint my reputation on your behalf though considering its completely unrelated to the topic at hand.   You're answering your own question if you think about it hard enough  --  I don't particularly want to share sources at the moment, but people are welcomed to the compiled version for free and if they want to report any issues found, they will be periodically fixed and updated. People are always welcome to ya know, not use them at all? Any issues that are stemming from the original aCis branch will be forwarded to Tryskell (or his discord) as well as any possible fixes if I find a solution. Though at the moment, as expected, people that are using it are more focused on the mods.   Taking time out of your day to research who I am (as mentioned in the first quote) instead of moving on with your day demonstrates how gay you are and proves you care a great deal. I provided my reasons for posting from the moment you asked, which led you to believe the post was sketchy & I was being dramatic. Dunno what else to tell you man, we're just talking in circles at this point. If you want a more detailed reason:  I'd guess that most people in the l2 scene are 30+ years old with jobs/kids and don't have time to learn java, then take on the task of developing an l2j server on the side. Anything I share is made with those types of people in mind, not meant to be some hotshot dev (I'm far from it) or con people in to paying for things (don't need anyone's money), just nerds having fun taking a trip down memory lane while hopefully bringing some enjoyment to a few people in the process.   If it manages to get the attention of any half-decent developer in the process that want to contribute in some way, that's just a bonus.
    • Bump NEW USER IN TELEGRAM AND DISCORD IS "mileanum"  NEW USER IN TELEGRAM AND DISCORD IS "mileanum"  NEW USER IN TELEGRAM AND DISCORD IS "mileanum" NEW USER IN TELEGRAM AND DISCORD IS "mileanum" 
    • try write to https://acis.i-live.eu/ or acis discord...
  • Topics

×
×
  • Create New...