Es wird einen Grund haben, warum das Skript beendet wird. Genau um diesen Grund zu finden wären eigentlich die MessageBoxen gedacht. Gib die ganzen Werte mal zuunterst (nach dem WEnd) im Skript aus, dann solltest du vermutlich i-wo ein -1 oder einen anderen unlogischen Wert sehen.
Beiträge von General Kaboom
-
-
So nebenbei, ich weiss nach wie vor nicht, nach was für einem Bild du suchst, aber ich habe noch nie ein ImageSearch mit Toleranzwert 0 zum Laufen gebracht.
[autoit]
Ich würde dir vorschlagen, dir mal den Result des ImageSearchs und allenfalls die Koordinaten in einer MsgBox ausgeben zu lassen, vielleicht siehst du dann einen Fehler, also folgende Zeilen finden und entfernen bei mir jedenfalls Problemlos das MediaPlayer-Icon in der Taskleiste:#include <ImageSearch.au3>
[/autoit]
$iXPos = -1
$iYPos = -1
_ImageSearch(@ScriptDir &"\mediaplayer.jpg", 1, $iXPos, $iYPos, 100)
MouseClick("right", $iXPos, $iYPos)
MouseClick("left", $iXPos, $iYPos - 50)
Dabei ist natürlich zu beachten, dass das Bild im Skriptordner abgelegt werden muss (ob es nötig ist, den Pfad genau anzugeben weiss ich nicht, ist mir gerade auch egal jedenfalls funktioniert es so insofern das Bild existiert). -
Naja bis auf die Tatsache, dass .au3 kein Bildformat ist.
Ich bin eigentlich dafür, dass man sein Skript ruhig in Originalausführung posten kann, wenn man Hilfe damit braucht. Sonst geschehen genau solche Fehler weil man mal schnell was dahinsuddelt das ähnlich aussieht.
Was aber nicht bedeutet, dass die Lösung für DIESES Skript dann auch die Lösung für das andere ist. Dementsprechend finde ich es absolut sinnlos. Wenn du nichts zu verbergen hast, dann schreibt doch bitte das ECHTE Skript rein und falls doch...naja es gibt bekanntlich Foren, bei denen sowas durchaus behandelt wird. -
Sorry aber, ein BISSCHEN mehr Informationen wären da schon angebracht wenn man genau weiß, dass man in eine Grauzone reinpostet.
z.B. würde uns (naja allen voraus natürlich mich, aber ich denke das sehen andere genauso) interessieren für was du das brauchst resp. was für eine Aktion in was für einem Programm der Klick auslösen wird? -
Ein Virenblocker mit Werbung? Sowas Unprofessionelles kommt mir gar nicht erst in die Tüte. Es gibt genügend (auch technisch bessere) gratis AntiVirus-Lösungen da würde ich mir gar nicht erst die Zeit nehmen sowas zu scripten
-
-
Hoppla da war ich etwas gar langsam
Spoiler anzeigen
Sagen wir mal wir haben 2 KIs die gegeneinander Tic Tac Toe spielen:
KI_1_O verwendet einen Zufallsgenerator um den nächsten Zug auszuwürfeln.
KI_2_X wertet das Spielfeld aus (was mich gleich noch zu einer weiteren Frage bewegt) und entscheidet anhand eines Algorythmus, wo der nächste Stein hingelegt werden soll.Runde 1:
X O
KI_1_O: 3pkt Der Zug hat keine negativen Folgen für den Spieler. Allerdings wurde er einfach dahingewürfelt.
KI_2_X: 8pkt Der Algorythmus sieht, dass KI_1_O für den nächsten Zug 8 beinahe gleichwertige Möglichkeiten hat. Um sich selbst einen möglichst grossen Möglichkeitspool zu schaffen, entscheidet sie sich für eine der Ecken. Welche ist dabei nicht von Bedeutung.Runde 2:
X O O X
KI_1_O: 6pkt Der Zug hat wiederum keine negativen Folgen für den Spieler. Allerdings wurde er einfach dahingewürfelt. Dennoch hat der Zug einen positiven Effekt auf das Endergebnis
KI_2_X: 6pkt die KI hat gesehen, dass KI_1_O eine Möglichkeit zum beenden des Spiels hat, es sieht nun die Notwendigkeit, in dieser Spalte einen Stein zu legen. Aufgrund eines Programmierfehlers entscheidet es sich aber fälschlicherweise (aufgrund der dadurch entstehenden 2 Möglichkeiten für einen sinnvollen nächsten Zug) wiederum für die Ecke. Dieser Zug kann die KI den Sieg kosten, wird also deshalbRunde 3:
X O O O X
KI_1_O: 6pkt Die KI hat das Spiel gewonnen.
KI_2_X: 0pkt Dieser Zug wurde nicht mehr gespielt.Wir sehen also, dass KI_2_X das Spiel an sich sowohl auf dem Feld als auch punktemässig (15:14).
Rechnen wir das nun aber mal nach Schlauheit aus:KI_1_O: Diese KI hat in 3 Zügen insgesamt 15 von 30 möglichen Punkten erreicht. Das sind gerundete 45%.
KI_2_O: Diese KI hat in 2 Zügen (der letzte wurde ja nicht mehr gespielt) insgesamt 14 von 20 möglichen Punkten erreicht. Das sind satte 70%.Damit gewinnt nun also KI_2_O, sie hat insgesamt einfach schlauer reagiert auch wenn sie verloren hat.
-
Das hab ich mich auch schon gefragt. Meinem Verständnis nach sollte es eher ein Wettbewerb sein, in dem die KI lernt, das spiel gegen einen vorgefertigten Gegner zu gewinnen. Gewinner wäre derjenige, der die wenigsten Durchläufe/Generationen benötigt zum gewinnen .
Aber das widerspricht ja dann der Runden-Definition (Punkto 1vs1/All vs All usw.).
Ich würde sagen, das sollte sich mit einem vernünftigen Punktesystem lösen lassen wobei z.B. jede Aktion/Reaktion mit 1 - 10 Punkten bewertet wird und dann davon irgendwie der Punkteprozentsatz der guten resp. schlechten Entscheidungen eine Endwertung ergibt und dann vielleicht der effektive Sieg nur noch ein paar Bonuspunkte.Spoiler anzeigen
Sagen wir mal wir haben 2 KIs die gegeneinander Tic Tac Toe spielen:
KI_1_O verwendet einen Zufallsgenerator um den nächsten Zug auszuwürfeln.
KI_2_X wertet das Spielfeld aus (was mich gleich noch zu einer weiteren Frage bewegt) und entscheidet anhand eines Algorythmus, wo der nächste Stein hingelegt werden soll.Runde 1:
X O
KI_1_O: 3pkt Der Zug hat keine negativen Folgen für den Spieler. Allerdings wurde er einfach dahingewürfelt.
KI_2_X: 8pkt Der Algorythmus sieht, dass KI_1_O für den nächsten Zug 8 beinahe gleichwertige Möglichkeiten hat. Um sich selbst einen möglichst grossen Möglichkeitspool zu schaffen, entscheidet sie sich für eine der Ecken. Welche ist dabei nicht von Bedeutung.Runde 2:
X O O X
KI_1_O: 6pkt Der Zug hat wiederum keine negativen Folgen für den Spieler. Allerdings wurde er einfach dahingewürfelt. Dennoch hat der Zug einen positiven Effekt auf das Endergebnis
KI_2_X: 6pkt die KI hat gesehen, dass KI_1_O eine Möglichkeit zum beenden des Spiels hat, es sieht nun die Notwendigkeit, in dieser Spalte einen Stein zu legen. Aufgrund eines Programmierfehlers entscheidet es sich aber fälschlicherweise (aufgrund der dadurch entstehenden 2 Möglichkeiten für einen sinnvollen nächsten Zug) wiederum für die Ecke. Dieser Zug kann die KI den Sieg kosten, wird also deshalbRunde 3:
X O O O X
KI_1_O: 6pkt Die KI hat das Spiel gewonnen.
KI_2_X: 0pkt Dieser Zug wurde nicht mehr gespielt.Wir sehen also, dass KI_2_X das Spiel an sich sowohl auf dem Feld als auch punktemässig (15:14).
Rechnen wir das nun aber mal nach Schlauheit aus:KI_1_O: Diese KI hat in 3 Zügen insgesamt 15 von 30 möglichen Punkten erreicht. Das sind gerundete 45%.
KI_2_O: Diese KI hat in 2 Zügen (der letzte wurde ja nicht mehr gespielt) insgesamt 14 von 20 möglichen Punkten erreicht. Das sind satte 70%.Damit gewinnt nun also KI_2_O, sie hat insgesamt einfach schlauer reagiert auch wenn sie verloren hat.
-
Zitat
Die einzelnen AI's treten gegeneinander an um die beste AI zu ermitteln und zu krönen.
Frage dazu: geht es nun darum die KI zu schreiben, welche das Spiel gewinnt oder jene, die am besten auf bestimmte Situationen reagiert (oder vielleicht beides irgendwie Punktemässig)? Wichtiger Unterschied, schliesslich kann auch eine random KI mal Glück haben und zufällig gewinnen. -
Ich würde gerne schon mal $Shelbot_[...] und _Shelbot_[...]() reservieren.
Beim ersten Durchlauf kann ich aber vielleicht noch gar nicht dabei sein (Abschlussarbeit und so n Zeugs). -
Die Idee an sich finde ich gut. Spontan fallen mir aber schon 2 Probleme auf:
1. So eine AI-Engine in der eine AI getestet werden kann, ist gar nicht so einfach. Ich habe es selber versucht und es ist eine ganz schön happige Sache. Zum einen darf sie keine Fehler enthalten, da es nicht passieren darf, dass ein blütenreiner Code deshalb einfach nicht laufen will. Zum anderen muss für jede Runde eine komplett neue geschrieben werden. Ich will nicht sagen, dass ich dir das nicht zutraue, aber auf dauer würde das wohl eher so ein "alter...schon wieder diese sch***"-Sache und wo kommen wir hin, wenn nicht einmal mehr der Wettbewerbshoster noch Spass daran hat.
2. Hier im Forum engagieren sich die Benutzer einfach eher unregelmässig für solche Dinge. Es gibt vieleicht 4-8 Benutzer die hier tatsächlich täglich aktiv sind.Selbiges spiegelt sich auch in dem Voting wieder. 10 Stimmen wurden abgegeben (eine davon von dir (und eine von BugFix, der sowieso gegen alles und jeden ist )) das würde an sich reichen, wenn jeder JA gestimmt hätte und auch teilnehmen würde.
Ich denke für solche Wettbewerbe ist die deutsche AutoIt-Community zur Zeit einfach zu klein. -
Also ich habe zuhause ein Synology-NAS (Modell weiss ich gerade nicht auswendig). Darin habe ich 4 Festplatten a je 2TB, da wir aktuell noch zu 4. zuhause sind ist das eigentlich Ideal wenn auch ich vermutlich der einzige bin, der die 2TB wirklich benötigt.
Preislich liegt das bei etwas über 800.- (wohlgemerkt handelt es sich hierbei um Schweizer Franken...bei uns ist nunmal alles etwas teurer) was ich komplett in Ordnung finde. Die Sicherung läuft seither (ca. 1 1/2 Jahre) komplett automatisch und ich musste noch nie was unternehmen (naja vielleicht wäre es mal Zeit für ein Softwareupdate, aber wirklich notwendig scheint es nicht zu sein).
In deinem Fall würde es eins mit 1-2 HDDs vermutlich auch tun. Die liegen hier preislich um die 500 (CHF!)...das ist wirklich nicht viel für eine komplett automatische Backuplösung.Auf die Cloud ist eine Sicherung definitiv nicht sinnvoll. Dauert einfach zu lange und die komplette Sicherheit (resp. Sicherheit durch Kontrolle) hast du einfach dort auch nicht.
System Recovery Images sind auch so ne Sache...ich will ja nichts sagen, aber ich habe es bisher noch NIE geschafft ein solches auf den Rechner zurückzuspielen (bin ich zu blöd? Vielleicht...)
Selber manuell packen ist ebenfalls sinnlos...viel zu viel Zeitaufwand und wenn du was vergisst...pech.
Eine andere Möglichkeit wäre auch eine Sicherung auf eine externe HDD per Backup-Programm...dann darfst du einfach nicht vergessen, diese jeweils zur benötigten Zeit anzustecken oder du musst das Backup immer selber starten...meiner Meinung nach ist das aber für Einzelpersonen vermutlich die beste Lösung. Was die Software angeht gibts ja jede Menge, empfehlen kann ich dir da leider keines, ich benutze diese Variante schon seit gut 5 Jahren nicht mehr.
-
Ich glaube das wurde mal gesagt, dass die erst wieder online geht wenn die neue Übersetzung fertig ist.
-
Kannst du vielleicht nochmals sagen, was noch alles fehlt...ich hab i-wie den Überblick verloren (dazu wäre vielleicht eine File-Sharing Lösung von Anfang an durchaus sinnvoll gewesen )
-
Wird mit der Umstellung zutun haben
-
Variante1:
[autoit]
[/autoit]
$iTimeout = GUICtrlRead($Input1)
Sleep($iTimeout * 1000)Variante2:
[autoit]
[/autoit]
Sleep(GUICtrlRead($Input1) * 1000)Variante3 (ähnlich wie 2, meiner Meinung nach aber etwas angenehmer zu lesen):
[autoit]
[/autoit]
$iTimeout = GUICtrlRead($Input1) * 1000
Sleep($iTimeout) -
Gar nicht...stell dir vor: ein Handle ist wie eine Adresse...Sleep($Input1) ist also ein ungültiger Wartebefehl da eine Integer-Zahl erwartet wird. Mit GUICtrlRead($Input1) liest du den INHALT dieser Adresse (also in deinem Fall den Inhalt deines Eingabefelds) aus. Damit du diese weiterverwenden kannst musst du diesen Inhalt nun noch einer Variable zuweisen etwa so:
[autoit]
[/autoit]
$iTimeout = GUICtrlRead($Input1)
;anschliessend übergibst du dem sleep-Befehl die Variable
Sleep($iTimeout)
;voilaAlternativ kannst du auch ohne Variable arbeiten (das ist aber sehr unschön):
[autoit]
[/autoit]
Sleep(GUICtrlRead($Input1))Das Problem hierbei (und allgemein): diese Methoden interessiert es relativ wenig, was tatsächlich in der Inputbox steht. Es kann also auch "Wurst" drin stehen wodurch das Programm abstürzt. Und merke dir Programmabstürze = böse...keiner will Programme die abstürzen nur weil man selber einen Tippfehler gemacht hat. Sprich: du solltest den Inhalt der Inputbox unbedingt überprüfen bevor du ihn übergibst und gegebenenfalls eine Korrektur anfordern.
-
Gibt es die Option um sich unsichtbar anzumelden nicht mehr?
[add]Anscheinend nicht...ich dachte es hätte noch mit der zu Tun haben können. Das war keine "Frage" sondern mehr eine Idee (ziehmlich schlecht ausgedrückt zugegeben ) [/add]
-
Du wirst aber auch kaum einen finden, der das macht (höchstens einer der Wasserrohre zusammen lötet).
Vor allem wird wohl kaum einer eine Schutzbrille über seine normale Brille anziehen (das geht auch meistens gar nicht).Und eine Schutzbrille, in der richtigen Stärke, sieht auch nicht so gut aus (jedenfalls stehen auch die meisten Frauen nicht so darauf, wenn man so ein Teil auf der Nase hat :D).
MfG
BigRoxAch ja, die habens bestimmt lieber wenn man riesige eitrige Brandblasen auf den Augen hat
Nein im Ernst also ich kenne NIEMANDEN der bei solchen Arbeiten keine Schutzbrille anzieht, ausserdem sind die Korrigierten (zumindestens hierzulande) genau dieselben bis auf die Gläser halt. Für äusserste gibts natürlich auch das Modell "Flashenboden-Taucherbrille" welches auch über die normale Brille geht. Zugegeben schön ist das nicht, aber willst du im Ernst lieber WÄHREND der Arbeit gut aussehen als danach auch noch? Ich meine wo Schutzbrillen angezogen werden ist Frau doch sowieso eher Rarr und ich möchte dir jetzt nicht unterstellen müssen, dass du für einen Haufen schwitzender Männer gut aussehen willstSpass beiseite ob Brille oder Kontaktlinsen, beides meiner Meinung nach kein Problem. Wenn man das richtige Modell findet, ist eine Brille aber auf jeden Fall ein grösserer Hingucker (naja bis auf die Faschingskontaktlinsen...die würd ich jetzt aber nicht unbedingt im Alltag tragen...auch wenn mir neon-blau wirklich sehr gut steht).
-
Warum sonst soll man wohl nur mit Schutzbrille löten?