This is only for sharing purposes to a specific request.
It's simply a program structure, to link multiple Autoit Functions making them run at simultaneously, with a common *.ini file to communicate between them.
It could be useful to some, **** to others.
But, when you have to go into an "attack" function without disregarding the "watch HP & pot" function: It comes very handy.
The main advantage of this structure, is the posibility of adding new functions without major modifications to the general program.
Also, you lower the text size of all the proccesses as well.
Along with the sample compiled Scripts, theres a "Source" folder, to see how it works.
I think using adlibregister is better for this kind of stuff though i maybe wrong.
AdlibRegister ( "function" [, time] )
Every 250 ms (or time ms) the specified "function" is called--typically to check for unforeseen errors. For example, you could use adlib in a script which causes an error window to pop up unpredictably.
The adlib function should be kept simple as it is executed often and during this time the main script is paused. Also, the time parameter should be used carefully to avoid CPU load.
You can not register a function using parameters.
Several Adlib functions can be registered. Re-registering an already existing Adlib function will update it with a new time.
I think using adlibregister is better for this kind of stuff though i maybe wrong.
AdlibRegister ( "function" [, time] )
Every 250 ms (or time ms) the specified "function" is called--typically to check for unforeseen errors. For example, you could use adlib in a script which causes an error window to pop up unpredictably.
The adlib function should be kept simple as it is executed often and during this time the main script is paused. Also, the time parameter should be used carefully to avoid CPU load.
You can not register a function using parameters.
Several Adlib functions can be registered. Re-registering an already existing Adlib function will update it with a new time.
Indeed, youre wrong.
The usage of my structure, allows you to: (for example) run an Autopot script, an autoattack script, and a chatbot. Without pausing even any of them.
The Adlib, Pauses the main script, so... in case youre battling, and you have a skill that is deppendant of time to succesfully land a combo; if your HP goes low, the Adlib autopot would interrupt it. Messing it up.
Indeed, youre wrong.
The usage of my structure, allows you to: (for example) run an Autopot script, an autoattack script, and a chatbot. Without pausing even any of them.
The Adlib, Pauses the main script, so... in case youre battling, and you have a skill that is deppendant of time to succesfully land a combo; if your HP goes low, the Adlib autopot would interrupt it. Messing it up.
Code:
While True
; check HP state; if hp < x then use pot
; if timerdiff(attackTimer 1) >= attackDelay 1 then use attack 1
; [...]
; if timerdiff(attackTimer n) >= attackDelay n then use attack n
; if timerdiff(msgTimer 1) >= msgDelay 1 then send msg 1
; [...]
; if timerdiff(msgTimer n) >= msgDelay n then send msg n
WEnd
this would do exactly what you've just explained in a simply but effective way...
btw multitasking in pcs means:
do action one for x secs, do action two for x secs, ..., do action n for x secs, do action one for x secs, ...
the actions get done so fast, that it seems for the user, that all of them are done at the same time, which is not even possible in the reality :P
Indeed, youre wrong.
The usage of my structure, allows you to: (for example) run an Autopot script, an autoattack script, and a chatbot. Without pausing even any of them.
The Adlib, Pauses the main script, so... in case youre battling, and you have a skill that is deppendant of time to succesfully land a combo; if your HP goes low, the Adlib autopot would interrupt it. Messing it up.
I'll be honest ive not wrote a script for a battle game, and i do not know what happens with sleep timers when they collide, this is something ive not looked into yet. As for the script being paused and missing a combo, i think id prefer that then multiple sleep timers colliding with one another.
Maybe i will look into signing up for a battle game and seeing what happens with two versions of a script one day when im not re-writing my current script. (needs more error checks otherwise its good and runs for hours)
the actions get done so fast, that it seems for the user, that all of them are done at the same time, which is not even possible in the reality :P
In this case, they are done at the same time, not even with a millisecond of difference.
This is... you can have a 6th finger on each hand for an opponent in PvP
Quote:
Originally Posted by logical691
I'll be honest ive not wrote a script for a battle game, and i do not know what happens with sleep timers when they collide, this is something ive not looked into yet. As for the script being paused and missing a combo, i think id prefer that then multiple sleep timers colliding with one another.
Maybe i will look into signing up for a battle game and seeing what happens with two versions of a script one day when im not re-writing my current script. (needs more error checks otherwise its good and runs for hours)
They don't collide. just check the scripting, set timers that concord in different multipliers (2/3/4/6/12) And check it out.
In a future, you may like this structure, it comes very handy, since you can separate different "tasks" into individual files (that way, you dont need to rewrite the whole script for a simple mod)... BTW, you may want to do this:
Rename all but the main.exe to .dll (or any filetype you like)
Run ("*.dll")
That way, the leech users dont get confused on "what file should I run?"
In this case, they are done at the same time, not even with a millisecond of difference.
this is simply wrong.
real multitasking on pcs is infact not yet possible... (beside the fact that graphic cards and cpu can work side be side, which is some kind of multitasking)
They don't collide. just check the scripting, set timers that concord in different multipliers (2/3/4/6/12) And check it out.
In a future, you may like this structure, it comes very handy, since you can separate different "tasks" into individual files (that way, you dont need to rewrite the whole script for a simple mod)... BTW, you may want to do this:
Rename all but the main.exe to .dll (or any filetype you like)
Run ("*.dll")
That way, the leech users dont get confused on "what file should I run?"
Like i said ill have to try it out sometime when i have recoded my script and not farming diablo for better gear.
As for individual files thats something i DO like the idea of and might work on in the future when my coding is a little better. At moment its on giant au3 mess which i need to split into "tasks" with a main loop calling to the relevant files. Tbh i dont even know if what i want to do is possible with autoit i'll just try and see i guess if its not maybe i'll look into c++.
No OFC... dual, quad cores are just a name, not actual processors
Dude, its a sample, if you want to try it: do so. If you don't, then don't.
But please go flame on a chatroom
AutoIt Heilbot (Multi) 01/09/2012 - Last Chaos - 4 Replies Hallo liebe E*PVP community.
Würde es gerne mit AutoIt erreichen, das einzelne befehle an ein bestimmtes fenster von LC gesendet werden.
Hab da was gebastelt, bzw ein schon vorhandenes Grundgerüst bearbeitet, jedoch funktioniert es nich so wie es soll ( es startet, aber keine Funktion)
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "Terminate")
AutoItSetOption ("MouseCoordMode", 0)
AutoItSetOption ("MouseClickDownDelay", 50)
[AutoIt] Multi-client tutorial? 10/31/2010 - AutoIt - 1 Replies Hello e*pvp coders,
How would someone like me go about creating a multi-client in AutoIt? What methods are there? I've seen multi-clients made in AutoIt so I know it can be done. Any feedback is welcome, and appreciated. Thank you.
:)
Autoit multi naming question 05/17/2010 - AutoIt - 1 Replies Hello am looking for the command or some explanations, like i need that auto it send some word and then he send it again he use same name but add higher number at the end of him; like first he send word1 and then he gets same command he send word2.