Quote:
Originally Posted by partyxboy
I was thinking of the problem you had earlier with different machines different colours, so i thought of calling a global variable for the pixels before the bot actually kicked off. Basically storing the colours of that machine and inputting them manually.....................
Really good work, i was really bored last nite with the game going down and all so i decided to write a full script..... done a few tests and debugging 2day and it works well shall i say alittle to good. Have code for pet commands to work in game if you want it :D
|
Post the code and I will see if I can integrate it in one of the future releses. My only problem with that is currently I am trying to debug all of the features that I have included, and I would have to re-write the entire bot's core to change its method of handling colors. Every if and while statement in the bot has a Pixelgetcolor statement in it, so it would be a very daunting task. All of the possition variables are defined in the beggining of the bot, like possitions of the F keys and such. I was actually about to write the resolution detection script over the next few days and try to add support for more than one resolution. I kinda fixed the multiple OS problem by finding the more common colors between the two and using it to my advantage. I have several ideas that I have on the back-burner for color handling and like I have said before, I want to get close to perfection out of the current script before I play with that. I want to make sure that the current IF and WHILE loops are doing what they are supposed to do before I mess with thier logic.
here is an example of the multi OS healing script...
If $Heal1 = 1 Then
If PixelGetColor($XPHP,$YPHP) <> 2379018 Then ; Win XP
If PixelGetColor($XPHP,$YPHP) <> 2379274 Then ; Vista
If PixelGetColor($XPHP,$YPHP) <> 0 Then
ToolTip("Healing Yourself", $XPHP,$YPHP)
ControlClick("Rappelz", "", "", "left", 1,$XPHP,$YPHP ) ; Selects yourself
Sleep(500)
ControlClick("Rappelz", "", "", "left", 1,$XF4,$YF )
Sleep(4000)
ControlSend("Rappelz", "", "", "{ESC}")
Sleep(500)
EndIf
EndIf
EndIf
EndIf
It is kind of like a series of NOT statements. It checks to see what the colors are not. If you have green HP one of the first two lines are going to show false and not continue the functions and skip the script. If your HP goes orange or red both of the first two lines will show true because your color value is not going to be either shade of green, and as long as you're not dead the third check is also going to be true so it will complete the healing function as outline in the script. This is my most recent work-around.
I am also currently devising a better method of the bot keeping track of the ammount of time that has passed since you last casted a buff on yourself. I will be including that in the next release.
@Yubari:
I would have to look into that. My only concern with that is... the bot could potentially end up in a far off place than where you left it. With the current targeting system the bot is requred to stay where it fought the last target. While with a movement system your bot can actually travel to different areas and walk into someplace it could not handle a little bit at a time. It would be almost impossible to calculate how far and what direction you traveled when you attacked the last target, so you would never actually be walking in a "figure 8" but more of just traveling in random directions between fights.
Yes, the bot does currently attack targets that have already taken damage, but I have decided that this is not entirely a bad feature. I found out it is related to the while loops I have setup to wait until a target is dead. I figured it is more valuable to have the more efficient fighting system than the ability to filter already hurt targets. I use flame shield so some of my targets are already hurt when I am buffed.
I am very suprised at the lack of debugging feedback on this release... is everyone still sleeping? or did it work much better?