AutoIt - Multibot Problem

04/09/2012 00:22 Rowsby#1
English

Hello community :awesome:,
I've following problem: I'm trying to make a Multibot for S4League.
I tried, to make some Func's with checkboxes, but when I start the Bot, a Error Window appears and says me "Error parsing function call"
What should I do?
My code ATM..

German

Hallo liebe Community :awesome:,
ich habe folgendes Problem: Ich versuche mich momentan an einem Multibot für das Spiel S4League.
Ich habe Func's zu den Checkboxen geaddet, allerdings bekomme ich beim Starten des Bots immer ein Error-Fenster welches mir sagt "Error parsing function call".
Naja schaut es euch mal an..:

Mein momentaner Code:


It'll be great if anyone can help me..

Ich würde mich über Hilfe freuen :o
04/09/2012 00:30 Azemo#2
Func uberLeetFunction()
Send({Space})
Sleep(500)
Send({1})
Sleep(50)
Send ({Space})
Send("{TAB}")



Send haste vergessen.
04/09/2012 00:30 lolkop#3
Quote:
Originally Posted by Rowsby View Post
if Checkbox1 == Checked Then
du benutzt hier strings im quellcode, welche den interpreter schonmal zum verzweifeln bringen dürften...

variablen in autoit beginnen immer mit $.

davon abgesehen enthält $Checkbox1 eine Control-Id. dementsprechend macht es wenig sinn hier einen vergleich mit einer contstanten zu machen.
04/09/2012 00:49 Rowsby#4
Quote:
Originally Posted by Azemo View Post
Func uberLeetFunction()
Send({Space})
Sleep(500)
Send({1})
Sleep(50)
Send ({Space})
Send("{TAB}")



Send haste vergessen.

Send habe ich überall eingefügt, nun bekomme ich folgenden Error:"Unable to parse Line" (Bezieht sich auf "Send({Space})

Quote:
du benutzt hier strings im quellcode, welche den interpreter schonmal zum verzweifeln bringen dürften...

variablen in autoit beginnen immer mit $.
Jo die Dollarzeichen habe ich auch eingefügt..

Quote:
davon abgesehen enthält $Checkbox1 eine Control-Id. dementsprechend macht es wenig sinn hier einen vergleich mit einer contstanten zu machen.
Ich verstehe nicht so ganz...


Hmm.. Hier noch mal der komplette abgeänderte Code:
Code:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=C:\Users\Tobias\AppData\Local\Temp\Rar$EX53.064\Forms\Form1.kxf
$Form1 = GUICreate("Multibot by Rowsby", 319, 248, 192, 124)
GUISetBkColor(0xE3E3E3)
$Checkbox1 = GUICtrlCreateCheckbox("RC Bot - Slot1", 32, 56, 97, 17)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 64, 40, 1, 9)
$Checkbox3 = GUICtrlCreateCheckbox("RC Bot - Slot2", 32, 88, 97, 17)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Checkbox4 = GUICtrlCreateCheckbox("RC Bot - Slot3", 32, 120, 97, 17)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Checkbox5 = GUICtrlCreateCheckbox("Airhug Bot", 32, 171, 97, 17)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Group1 = GUICtrlCreateGroup("Reload Cancel", 16, 24, 129, 129)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Airhug", 16, 155, 129, 41)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("Credits:", 200, 56, 113, 57)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Label1 = GUICtrlCreateLabel("Rowsby", 232, 80, 49, 19)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Help", 200, 16, 113, 41, 0)
GUICtrlSetFont(-1, 9, 800, 0, "Arial")
$Button2 = GUICtrlCreateButton("Start", 176, 128, 137, 81, 0)
GUICtrlSetFont(-1, 14, 800, 0, "LetterOMatic!")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


While 1
   if $Checkbox1 == $Checked Then
uberLeetFunction()
EndIf

   
   $nMsg = GUIGetMsg()
   Switch $nMsg
		 Case $GUI_EVENT_CLOSE
			Exit
	     Case $Button1
			MsgBox(64, "Help", "What should I do if I wan't to deactivate and activate some other bots? " & @CRLF & "Just deselect the bots you don't want to use, select the bots you want to use and click 'Start' again." & @CRLF & "" & @CRLF & "This MultiBot is detected from XTrap!" & @CRLF & "It's really unlikely if this happens. But if this happens, just use a Bypass." & @CRLF & @CRLF & @CRLF& @CRLF & "For more informations visit my Thread: 'Coming soon'" )
	     
			 
   EndSwitch
WEnd

Func uberLeetFunction()
   Send({Space})
   Sleep(500)
   Send({1})
   Sleep(50)
   Send({Space})
Send("{^}")
EndFunc
04/09/2012 01:26 Lawliet#5
Um die Checkbox auszulesen musst du GuiCtrlRead($controlID) verwenden ;)
Quote:
Originally Posted by zur Checkbox Funktion
Return Value
Success: Returns the identifier (controlID) of the new control.
Code:
 if GuiCtrlRead($Checkbox1) = 1 Then
uberLeetFunction()
EndIf
Um das {Space} noch Hochkommas setzen
04/09/2012 02:40 Rowsby#6
Quote:
Originally Posted by Lawliet! View Post
Um die Checkbox auszulesen musst du GuiCtrlRead($controlID) verwenden ;)

Code:
 if GuiCtrlRead($Checkbox1) = 1 Then
uberLeetFunction()
EndIf
Um das {Space} noch Hochkommas setzen
Hm... Kay, allerdings.. Entweder blitzt der Haken bei der Checkbox dauerhaft nur auf (was meistens der Fall ist), oder er bleibt abgehakt, aber er führt die Tastenkombination automatisch aus und beendet sich dann wieder. Ich will allerdings dass er die Combo bei Strg ausführt v.v

Momentan sieht das ganze so aus:
Code:
While 1
   if GuiCtrlRead($Checkbox1) = 1 Then
uberLeetFunction()
EndIf

   
   $nMsg = GUIGetMsg()
   Switch $nMsg
		 Case $GUI_EVENT_CLOSE
			Exit
	     Case $Button1
			MsgBox(64, "Help", "What should I do if I wan't to deactivate and activate some other bots? " & @CRLF & "Just deselect the bots you don't want to use, select the bots you want to use and click 'Start' again." & @CRLF & "" & @CRLF & "This MultiBot is detected from XTrap!" & @CRLF & "It's really unlikely if this happens. But if this happens, just use a Bypass." & @CRLF & @CRLF & @CRLF& @CRLF & "For more informations visit my Thread: 'Coming soon'" )
	     
			 
   EndSwitch
WEnd

Func uberLeetFunction()
   Send('{Space}')
   Sleep(500)
   Send('{1}')
   Sleep(50)
   Send('{Space}')
Send("{^}")
EndFunc
04/09/2012 06:10 Azemo#7
Send("{Space}")
So meint er

Und so gehts auch.
04/09/2012 06:32 Rowsby#8
Quote:
Originally Posted by Azemo View Post
Send("{Space}")
So meint er

Und so gehts auch.
Gnaah, funktioniert auch so. v.v Und außerdem redete ich von etwas komplett anderem.. Guck's die mal genau an.

Quote:
Hm... Kay, allerdings.. Entweder blitzt der Haken bei der Checkbox dauerhaft nur auf (was meistens der Fall ist), oder er bleibt abgehakt, aber er führt die Tastenkombination automatisch aus und beendet sich dann wieder. Ich will allerdings dass er die Combo bei Strg ausführt v.v

Momentan sieht das ganze so aus:
Code:
While 1
   if GuiCtrlRead($Checkbox1) = 1 Then
uberLeetFunction()
EndIf

   
   $nMsg = GUIGetMsg()
   Switch $nMsg
		 Case $GUI_EVENT_CLOSE
			Exit
	     Case $Button1
			MsgBox(64, "Help", "What should I do if I wan't to deactivate and activate some other bots? " & @CRLF & "Just deselect the bots you don't want to use, select the bots you want to use and click 'Start' again." & @CRLF & "" & @CRLF & "This MultiBot is detected from XTrap!" & @CRLF & "It's really unlikely if this happens. But if this happens, just use a Bypass." & @CRLF & @CRLF & @CRLF& @CRLF & "For more informations visit my Thread: 'Coming soon'" )
	     
			 
   EndSwitch
WEnd

Func uberLeetFunction()
   Send('{Space}')
   Sleep(500)
   Send('{1}')
   Sleep(50)
   Send('{Space}')
Send("{^}")
EndFunc
04/09/2012 06:38 Azemo#9
Code:
HotkeySet("TASTE", FUNKTION)
Soweit ich weiß funzt da aber strg/ctrl nicht
Naja
04/09/2012 06:46 Rowsby#10
Quote:
Originally Posted by Azemo View Post
Code:
HotkeySet("TASTE", FUNKTION)
Soweit ich weiß funzt da aber strg/ctrl nicht
Naja
Doch, Statt Strg / Ctrl nimmt AutoIt "^".
Ich habe es nun so probiert.. Allerdings erkennt er dann schon wieder einen Fehler in der ersten Zeile.. "Error parsing function call" mal wieder.. v.v

Code:
While 1
   if GuiCtrlRead($Checkbox1) = 1 Then
HotkeySet("{^}", uberLeetFunction()
EndIf

   
   $nMsg = GUIGetMsg()
   Switch $nMsg
		 Case $GUI_EVENT_CLOSE
			Exit
	     Case $Button1
			MsgBox(64, "Help", "What should I do if I wan't to deactivate and activate some other bots? " & @CRLF & "Just deselect the bots you don't want to use, select the bots you want to use and click 'Start' again." & @CRLF & "" & @CRLF & "This MultiBot is detected from XTrap!" & @CRLF & "It's really unlikely if this happens. But if this happens, just use a Bypass." & @CRLF & @CRLF & @CRLF& @CRLF & "For more informations visit my Thread: 'Coming soon'" )
	     
			 
   EndSwitch
WEnd

Func uberLeetFunction()
   Send('{Space}')
   Sleep(500)
   Send('{1}')
   Sleep(50)
   Send('{Space}')
EndFunc
Edit: Ich habe nun noch eine Klammer hinzugefügt, funzt aber immer noch nicht mit dem Hotkey.
Ich klicke die Checkbox normal an, es tut sich nichts. D.h. es zeigt keinen Haken in der Checkbox.
Noch dazu führt er den Bot komplett automatisch aus und nach dem er ihn einmal komplett durchgeführt hat wird alles wieder deaktiviert.
04/09/2012 11:14 lolkop#11
1. der interpreter zeigt dir exakt die fehlerstelle an.
2. lies dir die anfänger tutorials durch.
3. verwende die autoit hilfe.

sollten dir alle 3 punkte nicht weiterhelfen, dann, und nur dann, kannst du gerne hier im forum nach hilfe fragen.

es bringt dir absolut garnichts, wenn du dir hier codeschnipsel zusammenkopierst, letztendlich aber nicht den hintergrund verstehst.
04/09/2012 14:24 Rowsby#12
Quote:
Originally Posted by lolkop View Post
1. der interpreter zeigt dir exakt die fehlerstelle an.
2. lies dir die anfänger tutorials durch.
3. verwende die autoit hilfe.

sollten dir alle 3 punkte nicht weiterhelfen, dann, und nur dann, kannst du gerne hier im forum nach hilfe fragen.

es bringt dir absolut garnichts, wenn du dir hier codeschnipsel zusammenkopierst, letztendlich aber nicht den hintergrund verstehst.
Ich habe schon öfter mit anderen Script sprachen Programme gecodet..
Allerdings.. Einen Multibot mit AutoIt. Das ist neu für mich. Ich habe auch schon in der Dokumentation geschaut usw.
Die Begriffe die im Code vorkommen sind alle für mich verständlich.
Also sag nichts wenn du es nicht richtig weißt.
04/10/2012 12:50 K1ramoX#13
Ist dein Problem jetzt gelöst?

Und nur mal so nebenbei, da du dass ja für S4 League machst sag ich dir jetzt schon dass das detected sein wird. Du musst wenn du das umgehen willst einen Bypass machen oder du nutzt einen anderen AutoIt Compiler der die normale AutoIt Signatur nicht nutzt, denn die checkt XTrap ;<
04/13/2012 13:41 V8II#14
Quote:
HotkeySet("{^}", uberLeetFunction()
Wenn du nicht weißt wie man etwas schreibt, Befehl makieren und F1 drücken, bzw. Google nutzen.
Erstens hast du eine Klammer vergessen,zweitens musst du den Funktionsnamen per string übergeben, und ohne Klammern.

Edit:
Quote:
Ich habe schon öfter mit anderen Script sprachen Programme gecodet..
Du meinst wohl Autohotkey?
Und überhaupt wenn du einen richtig guten Bot incl. Bypass usw. schreiben willst, ist C++ vermutlich am Besten dafür geeignet ...
04/14/2012 06:35 BladeTiger12#15
So gut ich das jetzt sehe und gelessen habe
Soll das ein S4League Multi hack werden.

Kannst du das Programm überhaupt offen lassen wenn du S4League startest?
Weil S4League hat ein Hackschild(xTrap)
Und das verhindert das öffnen einer Au3 datei.
Wenn schon brauchst du ein Bypass oder sonstiges damit das Hackschild dein Programm
nicht detected.
Und so gut ich weiß nimmt S4League keine Send/ControlSend/Clicks an.
Und es gibt zurzeit keine Public Bypasse wo du in deinem Script einbauen könntest.
Also wenn dein Script fertig ist bringt es dir nicht viel.
Wenn du nicht weißt wie sich das Programm nicht schliesst :).
(Bei S4League start)
(Bei Bypasse wirst du sowieso nicht so schnell an die Source kommen)