[Scar Help] All in one Bot

02/17/2013 10:04 schecke02#16
heheheh^^ vergebliche mühe ^^
02/17/2013 11:46 SeaDoc#17
Quote:
Originally Posted by schecke02 View Post
heheheh^^ vergebliche mühe ^^
Ja hop hop schick ^^
02/26/2013 23:30 SeaDoc#18
So Langsam wird es Ganz gut :) habe immer mehr Erfahrung :)

Bin gerade dabei meinen glitzisucher zu basteln^^ er klickt auch bzw bewegt die maus aber er soll es in einer schleife machen , jemand ein tipp ? ich kenne es nur mit While , da wendet man bei AutoIt an While / Do bei scar ^^ aber so wirklich was gefunden habe ich nicht :( hier mal mein code :

Code:
if (FindBitmapTolerance(gl1,xx,yy,79)=true) Then begin
      MoveMouse(xx,yy)
      writeln('Glitzi erkannt auf : '+inttostr(xx)+' '+','+inttostr(yy));
    end;
das soll er die ganze zeit wiederholen
02/28/2013 10:19 CHR_MAR#19
ähm... wenn du nur diesen teil in einer schleife wiederholst, dann passiert folgendes:

er bewegt deine maus auf das gefundene glitzi solange es vorhanden und sollte es wer anderes einsammeln, dann macht er gar nichts mehr da kein entsprechendes glitzi (bitmap) in sichtweite gefunden wurde. mit "movemouse" bewegst ja nur zur koordi hin, aber es erfolgt kein klick. wenn kein glitzi in sichtweite und er in dieser schleife hängt, dann wechselt er ja auch keine position ;)

du hast ja bereits funktionierende scripts von anderen und da kann man sich bei solchen problemen durchaus ne logische ableitung und erläuterung her holen *grins*

Quote:
repeat
// code nach bedarf
if ...
...
..
until ......... (bedingung die erfüllt sein muss um schleife zu verlassen)
anhand deines beispiels:
Quote:
repeat
if (FindBitmapTolerance(gl1,xx,yy,79)=true) Then begin
clickmouse(xx,yy,true);
writeln('Glitzi erkannt auf : '+inttostr(xx)+' '+','+inttostr(yy));
end;
until (FindBitmapTolerance(gl1,xx,yy,79)=false)
kleiner nachtrag : je nachdem wie gross und welchen vergleichswert dein bitmap mit der position auf der karte hat, kann es sein, dass du die xx,yy koordinaten verändern musst, da er sonst um ein feld daneben klickt. das würde dann beispielsweise so aussehen:

Quote:
repeat
if (FindBitmapTolerance(gl1,xx,yy,79)=true) Then begin
clickmouse(xx+2,yy+3,true)
writeln('Glitzi erkannt auf : '+inttostr(xx)+' '+','+inttostr(yy));
end;
until (FindBitmapTolerance(gl1,xx,yy,79)=false)
03/01/2013 22:02 SeaDoc#20
Quote:
Originally Posted by CHR_MAR View Post
ähm... wenn du nur diesen teil in einer schleife wiederholst, dann passiert folgendes:

er bewegt deine maus auf das gefundene glitzi solange es vorhanden und sollte es wer anderes einsammeln, dann macht er gar nichts mehr da kein entsprechendes glitzi (bitmap) in sichtweite gefunden wurde. mit "movemouse" bewegst ja nur zur koordi hin, aber es erfolgt kein klick. wenn kein glitzi in sichtweite und er in dieser schleife hängt, dann wechselt er ja auch keine position ;)

du hast ja bereits funktionierende scripts von anderen und da kann man sich bei solchen problemen durchaus ne logische ableitung und erläuterung her holen *grins*



anhand deines beispiels:


kleiner nachtrag : je nachdem wie gross und welchen vergleichswert dein bitmap mit der position auf der karte hat, kann es sein, dass du die xx,yy koordinaten verändern musst, da er sonst um ein feld daneben klickt. das würde dann beispielsweise so aussehen:
Danke dir ! :) , ja habe nachträglich Maus klick hinzugefügt :D , hatte eine denk fehler ^^ , werds gleich mal testen :))

Nachtrag :

Super läuft danke ! :) Allerdings nur wen er das bild findet , sonst klappts nicht :) .. muss wohl noch i.was bassteln :)

Nachtrag 2 :
Code
Soo So klappt es Prima , er klickt jetzt die ganze zeit auf mein Windows start button (habs zum testen genommen) - nur wie mache ich das jetzt das er das script wieder von vorne anfängt ? ^^
03/02/2013 04:05 CHR_MAR#21
also normal gehst her und teilst die sachen auf in prozeduren und schliesst jede prozedur mit end ab. am schluss vor dem "end." gehst dann her und baust eine schleife ein in der du die funktionen aufrufst.

verkürztes bespiel :

Quote:
begin
procedure variablen;
...
end;

procedure versioncheck;
...
end;

procedure glitzisuche
...
end;

begin
repeat
variablen;
versioncheck;
glitzisuche;
until (bedingung)
end;

end.
beim kurz drüber schauen ist mir folgendes aufgefallen ... du verwendest für gl1 eine schleife, aber für gl2 keine. theoretisch brauchst entweder beide in einer schleife oder für jedes ne eigene schleife.

gedankenanregung wäre : ... baue eine schleife und löse es über result = true / false

Quote:
repeat
if (FindBitmapTolerance(gl1,xx,yy,79)=true) Then begin
result:=true;
if (result=true) then begin
clickmouse(xx,yy,true);
writeln('Glitzi erkannt auf : '+inttostr(xx)+' '+','+inttostr(yy));
end;
if (FindBitmapTolerance(gl2,xx,yy,79)=true) Then begin
result:=true;
if (result=true) then begin
MoveMouse(xx,yy)
ClickMouse(xx,yy,true)
end;
end;
end;
until (result=false)
bzw. umgedreht vielleicht sinnvoller ... also

Quote:
if (FindBitmapTolerance(gl1,xx,yy,79)=false) Then begin
if (FindBitmapTolerance(gl2,xx,yy,79)=false) Then begin
if (FindBitmapTolerance(gl3,xx,yy,79)=false) Then begin
letztes glitzi mit true-bedingung und dann von unten nach oben die entsprechenden kommandos
ist aber nun schon spät ... also dieser gedankengang unter vorbehalt der eigenen prüfung *grins*
03/02/2013 09:58 SeaDoc#22
Quote:
Originally Posted by CHR_MAR View Post
also normal gehst her und teilst die sachen auf in prozeduren und schliesst jede prozedur mit end ab. am schluss vor dem "end." gehst dann her und baust eine schleife ein in der du die funktionen aufrufst.

verkürztes bespiel :



beim kurz drüber schauen ist mir folgendes aufgefallen ... du verwendest für gl1 eine schleife, aber für gl2 keine. theoretisch brauchst entweder beide in einer schleife oder für jedes ne eigene schleife.

gedankenanregung wäre : ... baue eine schleife und löse es über result = true / false



bzw. umgedreht vielleicht sinnvoller ... also



ist aber nun schon spät ... also dieser gedankengang unter vorbehalt der eigenen prüfung *grins*
Jetzt steht bei mir nur noch käse misst :D , ich glaube ich Schreibe das nochmal alles neu :) und nimm dann deine hilfe ^^
03/02/2013 16:35 CHR_MAR#23
uff... ich glaube das wird dann sicher nichts.. bin selbst auch noch dabei mich rein zu arbeiten und stückchenweise durch zu sehen. hab zwar auch schon paar scripts leicht abgewandelt oder wieder zum laufen gebracht, aber wirklich viel wissen hab ich nicht !

schaue mir halt alte scripts punkt für punkt durch um zu verstehen was passiert und was wie was bedeutet. ausserdem hab ich momentan relativ wenig zeit, sonst hätte ich schon längst auch schon 1-2 scripts erweitert *grins*

aber wenn ne frage hast und ich sie beantworten kann, dann helf ich dir natürlich gerne ;)
03/02/2013 22:55 SeaDoc#24
Quote:
Originally Posted by CHR_MAR View Post
uff... ich glaube das wird dann sicher nichts.. bin selbst auch noch dabei mich rein zu arbeiten und stückchenweise durch zu sehen. hab zwar auch schon paar scripts leicht abgewandelt oder wieder zum laufen gebracht, aber wirklich viel wissen hab ich nicht !

schaue mir halt alte scripts punkt für punkt durch um zu verstehen was passiert und was wie was bedeutet. ausserdem hab ich momentan relativ wenig zeit, sonst hätte ich schon längst auch schon 1-2 scripts erweitert *grins*

aber wenn ne frage hast und ich sie beantworten kann, dann helf ich dir natürlich gerne ;)
Okai gut .. :) danke ich dir natürlich auch ! :)

1.Frage wie halte ich das Script die ganze zeit am laufen , so das es durch läuft , denn so wie ich das oben gemacht habe gings net :(

lg Doc
03/02/2013 23:09 schecke02#25
Ohje seadoc ^^ meld dich mal du weist wie und wo^^



(und für alle die jetzt wieder was sagen wollen einafch mal f...se halten )
03/03/2013 05:45 CHR_MAR#26
@seadoc
durch ne schleife die er im endeffekt niemals verlassen wird. du kannst ja auch mehrere schleifen in einem script einbauen. wichtig ist eher, was dir dein script unterbrechen kann, wie zb. server-neustart, browsercrash etc.

@schecke
du hast eh mehr erfahrung und tust dich leichter die dinge zu erklären ... hoffe aber mal deine klammer war nicht auf mich bezogen ?! ;)
03/03/2013 08:16 Havelock_Vetinari#27
Quote:
Originally Posted by SeaDoc View Post
Okai gut .. :) danke ich dir natürlich auch ! :)

1.Frage wie halte ich das Script die ganze zeit am laufen , so das es durch läuft , denn so wie ich das oben gemacht habe gings net :(

lg Doc
PHP Code:
while (condition) do 
in deinem Fall sollte
PHP Code:
while do 
passen
03/03/2013 09:25 SeaDoc#28
Quote:
Originally Posted by schecke02 View Post
Ohje seadoc ^^ meld dich mal du weist wie und wo^^



(und für alle die jetzt wieder was sagen wollen einafch mal f...se halten )
immer wenn ich da bin bist du nicht da * lach

aber ich weiß ja wo ;)

Quote:
Originally Posted by CHR_MAR View Post
@seadoc
durch ne schleife die er im endeffekt niemals verlassen wird. du kannst ja auch mehrere schleifen in einem script einbauen. wichtig ist eher, was dir dein script unterbrechen kann, wie zb. server-neustart, browsercrash etc.

@schecke
du hast eh mehr erfahrung und tust dich leichter die dinge zu erklären ... hoffe aber mal deine klammer war nicht auf mich bezogen ?! ;)
Daran habe ich schon auch alles gedacht , aber das script soll ja für den alten god of war sein , hihi ^^ .. habe da so was 'cooles' vor ^^

edit:
aber leider weiß ich ja nicht mehr wie man das script in eine endlos schleife versetzt , ich hatte das mal alles auf usb gespeichert .. aber wurde mir in der schule geklaut :oo -.-*
03/03/2013 20:27 schecke02#29
Quote:
Originally Posted by CHR_MAR View Post
@seadoc
durch ne schleife die er im endeffekt niemals verlassen wird. du kannst ja auch mehrere schleifen in einem script einbauen. wichtig ist eher, was dir dein script unterbrechen kann, wie zb. server-neustart, browsercrash etc.

@schecke
du hast eh mehr erfahrung und tust dich leichter die dinge zu erklären ... hoffe aber mal deine klammer war nicht auf mich bezogen ?! ;)
nein nein^^ geht um die die immer heulen weil sie denken ich würde freebots niedermachen^^ und meinen ich würde es den schreibern nicht gönnen was zu kreieren^^ aber seadoc weis es ja nun besser^^:mofo:

Allerdings erkläre ich nichts ^^ ich gebe nur hinweise sonst wäre es nicht seine arbeit und beim nächsten problem würde es wieder klopf klopf ich brauch dich mal gehen

er soll seine arbeit alleine fertig bekommen mit eigenen gedanken gängen , und falls mal ein irrweg besteht helfe ich gerne die richtige richtung einzuschlagen^^
03/03/2013 23:19 SeaDoc#30
Quote:
Originally Posted by schecke02 View Post
nein nein^^ geht um die die immer heulen weil sie denken ich würde freebots niedermachen^^ und meinen ich würde es den schreibern nicht gönnen was zu kreieren^^ aber seadoc weis es ja nun besser^^:mofo:

Allerdings erkläre ich nichts ^^ ich gebe nur hinweise sonst wäre es nicht seine arbeit und beim nächsten problem würde es wieder klopf klopf ich brauch dich mal gehen

er soll seine arbeit alleine fertig bekommen mit eigenen gedanken gängen , und falls mal ein irrweg besteht helfe ich gerne die richtige richtung einzuschlagen^^
Genau so ist es richtig ! , und ich bin auf dafür das man deine art von bot nur verkaufen darf ! also bei dir kaufen muss ^^ .. und ich finde das du die free bots nicht nieder machst , denn deine laufen um einiges perfekt + Support = 1a .. ich habe übrigens den weg gefunden beim God of war :) klappt jetzt alles wie ich es will , danke allen die mir geholfen haben .. :)

Besonders dir schecke02 (;

aber jetzt erstmal heija heija machen muss früh raus :)

lg Doc