Idee: Contest - 20-Zeiler (1. PROBELAUF!)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Externe Scripts sind zu einfach, entweder Zeilenlänge beschränken oder keine Externen Scripts. (Einfach mal Auf das Icon Klicken^^):
      Spoiler anzeigen

      AutoIt

      1. FileDelete("the.au3")
      2. FileWrite("the.au3",'#include-once' & @CRLF &'#include<GUIConstants.au3>' & @CRLF & '$ret = _ChooseIcon()' & @CRLF & 'ConsoleWrite($ret[0] & "|" & $ret[1]);MsgBox(0,"Icon","Pfad: " & $ret[0] & @CRLF & "icon-Nr.: " & $ret[1])' & @CRLF & 'Func _ChooseIcon($fFileName = "")' & @CRLF & 'Local $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName, $_CI_IconRadios[30], $_CI_Labels[30]' & @CRLF & '$_CI_oldEventMode = Opt("GuiOnEventMode",0)' & @CRLF & '$_CI_StartIndex = 1' & @CRLF & 'If FileExists($fFileName) Then ' & @CRLF & '$_CI_FileName = $fFileName ' & @CRLF & 'Else ' & @CRLF & '$_CI_FileName = @SystemDir & "\shell32.dll"' & @CRLF & 'EndIf' & @CRLF & '$_CI_hGui=GUICreate("Icon Selector", 385, 450, -1, -1, -1, $WS_EX_ACCEPTFILES)' & @CRLF & ';GUISetOnEvent($GUI_EVENT_CLOSE,"_CI_CloseFunc")' & @CRLF & 'GUICtrlCreateGroup("", 5, 1, 375, 40)' & @CRLF & 'GUICtrlCreateGroup("", 5, 50, 375, 350)' & @CRLF & '$_CI_hFile = GUICtrlCreateInput($_CI_FileName, 12, 15, 325, 16, -1, $WS_EX_STATICEDGE)' & @CRLF & 'GUICtrlSetState(-1, $GUI_DROPACCEPTED)' & @CRLF & 'GUICtrlSetTip(-1, "You can drop files from shell here...")' & @CRLF & '$_CI_hStatus = GUICtrlCreateInput("", 90, 49, 200, 16, $ES_READONLY, $WS_EX_STATICEDGE)' & @CRLF & '$_CI_hFileSel = GUICtrlCreateButton("...", 345, 14, 26, 18)' & @CRLF & ';GUICtrlSetOnEvent(-1,"_CI_LoadButton")' & @CRLF & '$_CI_Next = GUICtrlCreateButton("&Weiter -|>",310,410)' & @CRLF & ';GUICtrlSetOnEvent(-1,"_CI_Next")' & @CRLF & '$_CI_Back = GUICtrlCreateButton("<|- &Zurück",20,410)' & @CRLF & ';GUICtrlSetOnEvent(-1,"_CI_Back")' & @CRLF & '$_CI_OK = GUICtrlCreateButton("Icon wählen:",120,410)')
      3. FileWrite("the.au3", @CRLF & ';GUICtrlSetOnEvent(-1,"_CI_CloseFunc")' & @CRLF & 'GUICtrlSetState(-1,$GUI_DISABLE)' & @CRLF & '$_CI_Icon = GUICtrlCreateIcon("",0,190,404,32,32)' & @CRLF & ' ' & @CRLF & 'For $iCntRow = 0 to 4' & @CRLF & 'For $iCntCol = 0 to 5' & @CRLF & '$iCurIndex = $iCntRow * 6 + $iCntCol' & @CRLF & '$_CI_IconRadios[$iCurIndex] = GUICtrlCreateRadio("", 55 * $iCntCol + 25, 65 * $iCntRow + 75, 45, 45,$BS_ICON+$BS_PUSHLIKE)' & @CRLF & 'GUICtrlSetImage(-1,@SystemDir & "\shell32.dll",-2)' & @CRLF & ';$ahIcons[$iCurIndex] = GUICtrlCreateIcon($glFilename, 0, 60 * $iCntCol + 25, 70 * $iCntRow + 80)' & @CRLF & ';GUICtrlSetOnEvent(-1,"_CI_SelectedIcon")' & @CRLF & '$_CI_Labels[$iCurIndex] = GUICtrlCreateLabel("1", 55 * $iCntCol+12, 65 * $iCntRow + 120, 58, 20, $SS_CENTER)' & @CRLF & 'GUICtrlSetBkColor(-1,$GUI_BKCOLOR_TRANSPARENT )' & @CRLF & 'Next' & @CRLF & 'Next' & @CRLF & ' ' & @CRLF & '_CI_NewFileLoad($_CI_FileName,$_CI_IconCount, $_CI_hFile)' & @CRLF & '_CI_Update($_CI_IconRadios, $_CI_Labels, $_CI_hStatus, $_CI_StartIndex, $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName)' & @CRLF & 'GUISetState () ; will display an dialog box with 1 checkbox' & @CRLF & '; Run the GUI until the dialog is closed' & @CRLF & 'While 1' & @CRLF & '$gMsg = GUIGetMsg()' & @CRLF & 'Switch $gMsg' & @CRLF & 'Case $_CI_IconRadios[0] To $_CI_IconRadios[29]' & @CRLF & 'For $i = 0 To 29' & @CRLF & 'If GUICtrlRead($_CI_IconRadios[$i]) = $GUI_CHECKED Then' )
      4. FileWrite("the.au3", @CRLF & '$_CI_SelectedIconName = 1*GUICtrlRead($_CI_Labels[$i])' & @CRLF & 'GUICtrlSetImage($_CI_Icon,$_CI_FileName,$_CI_SelectedIconName)' & @CRLF & 'GUICtrlSetState($_CI_OK,$GUI_ENABLE)' & @CRLF & 'ExitLoop' & @CRLF & 'EndIf' & @CRLF & 'Next' & @CRLF & 'Case $_CI_hFileSel' & @CRLF & '$_CI_FileName = _CI_NewFileLoad( _ ' & @CRLF & 'FileOpenDialog("Select Icon file:", GUICtrlRead($_CI_hFile), "Icon-Files (*.exe;*.dll;*.ocx;*.icl;*.ico)") _ ' & @CRLF & ',$_CI_IconCount, $_CI_hFile)' & @CRLF & 'GUICtrlSetState($_CI_Back,$GUI_DISABLE)' & @CRLF & 'GUICtrlSetState($_CI_OK,$GUI_DISABLE)' & @CRLF & '_CI_Update($_CI_IconRadios, $_CI_Labels, $_CI_hStatus, $_CI_StartIndex, $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName)' & @CRLF & ' ' & @CRLF & 'Case $_CI_Back' & @CRLF & 'If $_CI_StartIndex - 30 >= 0 Then $_CI_StartIndex -= 30' & @CRLF & 'If $_CI_StartIndex - 30 < 0 Then ' & @CRLF & 'GUICtrlSetState($_CI_Back,$GUI_DISABLE)' & @CRLF & 'EndIf' & @CRLF & 'GUICtrlSetState($_CI_Next,$GUI_ENABLE)' & @CRLF & '_CI_Update($_CI_IconRadios, $_CI_Labels, $_CI_hStatus, $_CI_StartIndex, $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName)' & @CRLF & ' ' & @CRLF & 'Case $_CI_Next' & @CRLF & 'If $_CI_StartIndex + 30 <= $_CI_IconCount Then $_CI_StartIndex += 30' & @CRLF & 'If $_CI_StartIndex + 30 > $_CI_IconCount Then ' & @CRLF & 'GUICtrlSetState($_CI_Next,$GUI_DISABLE)' & @CRLF & 'EndIf' & @CRLF & 'GUICtrlSetState($_CI_Back,$GUI_ENABLE)' & @CRLF & '_CI_Update($_CI_IconRadios, $_CI_Labels, $_CI_hStatus, $_CI_StartIndex, $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName)' & @CRLF & ' ' & @CRLF & 'Case $GUI_EVENT_CLOSE, $_CI_OK' & @CRLF & 'ExitLoop' & @CRLF & 'EndSwitch' & @CRLF & 'Wend' & @CRLF & 'GUIDelete($_CI_hGui)' & @CRLF & 'Opt("GuiOnEventMode",$_CI_oldEventMode)' & @CRLF & 'Local $arTemp[2] = [$_CI_FileName,$_CI_SelectedIconName]' & @CRLF & 'Return $arTemp' & @CRLF & 'EndFunc' & @CRLF & 'Func _CI_Update(ByRef $_CI_IconRadios, ByRef $_CI_Labels, $_CI_hStatus, $_CI_StartIndex,ByRef $_CI_IconCount, $_CI_FileName, $_CI_SelectedIconName)' & @CRLF & 'For $iCntRow = 0 to 4' & @CRLF & 'For $iCntCol = 0 to 5' & @CRLF & '$iCurIndex = $iCntRow * 6 + $iCntCol' & @CRLF & 'If ($iCurIndex + $_CI_StartIndex) > $_CI_IconCount Then' & @CRLF & 'GUICtrlSetState($_CI_IconRadios[$iCurIndex], $GUI_HIDE)' & @CRLF & 'GUICtrlSetState($_CI_Labels[$iCurIndex], $GUI_HIDE)' & @CRLF & 'Else' & @CRLF & 'GUICtrlSetState($_CI_IconRadios[$iCurIndex], $GUI_SHOW)' & @CRLF & 'GUICtrlSetState($_CI_Labels[$iCurIndex], $GUI_SHOW)' & @CRLF & 'GUICtrlSetState($_CI_IconRadios[$iCurIndex],$GUI_UNCHECKED)' & @CRLF & 'GUICtrlSetImage($_CI_IconRadios[$iCurIndex], $_CI_FileName, -($_CI_StartIndex + $iCurIndex))' & @CRLF & 'GUICtrlSetData($_CI_Labels[$iCurIndex], -($_CI_StartIndex + $iCurIndex))' & @CRLF & 'If -($_CI_StartIndex + $iCurIndex) = $_CI_SelectedIconName Then GUICtrlSetState($_CI_IconRadios[$iCurIndex],$GUI_CHECKED)' & @CRLF & 'EndIf' & @CRLF & 'Next' )
      5. FileWrite("the.au3", @CRLF & 'Next' & @CRLF & 'GUICtrlSetData($_CI_hStatus, "Icons "& $_CI_StartIndex & "-"& _CI_MyMin(($_CI_StartIndex+ 29), $_CI_IconCount)& " von " & $_CI_IconCount _ ' & @CRLF & '& " | Seite "& Ceiling(($_CI_StartIndex)/30)& "von " & Ceiling($_CI_IconCount/30))' & @CRLF & 'EndFunc' & @CRLF & 'Func _CI_NewFileLoad($sTmpFile, ByRef $_CI_IconCount, $_CI_hFile)' & @CRLF & 'If Not FileExists($sTmpFile) Then Return -1' & @CRLF & 'If @error Then Return -1' & @CRLF & ';$glFileName = $sTmpFile' & @CRLF & 'GUICtrlSetData($_CI_hFile, $sTmpFile)' & @CRLF & '$_CI_iStartIndex = 1' & @CRLF & '$_CI_IconCount = _GetIconCount($sTmpFile)' & @CRLF & 'Return $sTmpFile' & @CRLF & 'EndFunc' & @CRLF & '; Function by YDY (Lazycat)' & @CRLF & 'Func _GetIconCount($sFilename)' & @CRLF & 'Local $iCount= DllCall("Shell32", "int", "ExtractIconEx", "str", $sFilename, "int", -1, "ptr", 0, "ptr", 0, "int", 1)' & @CRLF & 'If not @error Then Return $iCount[0]' & @CRLF & 'Return 0' & @CRLF & 'EndFunc' & @CRLF & 'Func _CI_MyMin($1,$2)' & @CRLF & 'If Number($1) < Number($2) Then ' & @CRLF & 'Return Number($1)' & @CRLF & 'Else' & @CRLF & 'Return Number($2)' & @CRLF & 'EndIf' & @CRLF & 'EndFunc')
      6. GUICreate(" My GUI Icons",100,60)
      7. $icon = GUICtrlCreateIcon ("shell32.dll",-14, 10,10)
      8. GUISetState()
      9. While 1
      10. $msg = GUIGetMsg()
      11. If $msg = $GUI_EVENT_CLOSE Then ExitLoop
      12. If $msg = $icon Then _setting()
      13. Wend
      14. FileDelete("the.au3")
      15. Func _setting()
      16. $test = Run(@AutoItExe & " the.au3",@ScriptDir,-1,2)
      17. $read = StringSplit(StdoutRead($test),"|")
      18. GUICtrlSetImage($icon,$read[1],1*$read[2])
      19. EndFunc
      Alles anzeigen

      "Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"
      Antworten auf Hilfegesuche per PN werden nicht garantiert.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von progandy ()

    • Nun möchte ich auch mal meinen Senf dazugeben. :D

      Solch Kontest ist sicher ganz interessant, indem Moment wo es aber um eine Wertung geht, sollte Vergleichbarkeit der Skripte gewährleistet werden.
      D.h. wiederum, dass alle eine identische Aufgabe lösen müssen.
      Das halte ich auch am sinnvollsten, wenn eine Limitierung der Skriptgröße vorliegt.

      Die Wertungsideen, Punkte für Stil und Kürze etc. zu vergeben sind nur bei nicht limitierten Aufgaben einsetzbar.

      Ergo:
      20 Zeilen und jeder macht was er will, ist voll daneben, weil es nicht verglichen werden kann (wie Xeno sagte: Äpfel und Birnen).
      Also eine Aufgabe für alle stellen und staunen, wieviel Wege nach Rom führen. :tongue:
    • Genau aus diesem Grund erstmal ein Testlauf, um evtl. Regeländerungen in Diskussionen durchzuführen ;)

      Ich werde mir das Feedback hier in den nächsten Tagen ansehen und daraus dann meine veränderten Reglementierungen aufstellen. Nur so kann cih ziemlich sicher auschliessen, ob etwas erlaubt sein soll oder nicht.

      Externe Scripts - auch zur Laufzeit erstellte werde ich wohl streichen - das betrifft auch Batch-Dateien, VBS-Scripte usw., denn damit kann man auch einiges anstellen ;)

      Ich bin am überlegen, ob man nicht wirklich ALLE externen Dateien auschließen sollte und nur in AutoIt erstellte Scripts erlauben lassen. Das betrifft dann DLLs, Exes, Cmds, Batches, VBS, Shell-Befehle usw. Dann wäre es z. B. auch nicht erlaubt Befehle wie DIR auszuführen.

      Was meint ihr?

      Grüße,
      Buffo
    • @BugFix: Du kennst die alten 64er 20 Zeiler auch nicht mehr, richtig? :p

      Es ist kein Vergleich, sondern es gewinnt das verblüffendste Ergebnis :)

      Wenn man gezwungen wird, möglichst minimal zu arbeiten, bekommt man ein ganz anders Gefühl für eine Sprache und man muss tricksen ohne Ende. Mir macht das wirklich Spaß ;)

      An sowas sollten sich mal die großen Hersteller von Software und Spiele machen. Die kümmert es aber einen Scheiß, wie groß oder schnell ihr Code ist: Wenn's nicht läuft muss halt mehr RAM oder eine größere CPU her.

      Wenn man die Anfänge des C64 gesehen hat (vor allem die Spiele) und dann die Entwicklung im Lauf der Zeit gesehen hat, das war schon Wahnsinn. Durch immer neue Tricks gelang es den Entwicklern aus den vorhandenen (extrem niedrigen) Resourcen immer mehr herauszuholen.

      Darum geht es bei der ganzen Sache. Es ist sehr spannend zu sehen, welcher Ideenreichtum in den Scriptern so steckt. Man kann sich da einiges Abgucken und bekommt auch neue Ideen für neue Projekte.

      Falls der Contest hier Anklang findet, habe ich auch keine Probleme damit, ab und zu Mal eine Aufgabe zu stellen und zu sehen, wie die Aufgaben auf verschiedensten Wegen gelöst wird. Auch sehr interessant! Aber darum ging es mir hierbei nur zweitrangig ;)

      Grüße,
      Buffo
    • Hi!

      Ich fang mal an ;):

      AutoIt

      1. #include <Math.au3>
      2. MsgBox(0, "Fertig", "Ergebnis: " & add(InputBox("Unlimited Add", "Erste Zahl eingeben:", "1234"), InputBox("Unlimited Add", "Zweite Zahl eingeben:", "5678")))
      3. func add($x, $y)
      4. $marker = 0
      5. $res = ""
      6. For $i = 0 to _Max(StringLen($x), StringLen($y))+1 step 1
      7. $z = StringMid($x, StringLen($x)-$i, 1) + StringMid($y, StringLen($y)-$i, 1) + $marker
      8. $res = Mod($z, 10) & $res
      9. $marker = Floor($z / 10)
      10. Next
      11. return StringRegExpReplace($res, "^(0)*", "")
      12. EndFunc
      Alles anzeigen


      Länge: 12 Zeilen
      Funktion: Berechnet die Summe zweier beliebig (!) langer Zahlen
      Verwendet: Math.au3 und Core-Funktionen
      Algorithmus: Wie aus der Schule bekannt

      peethebee
    • Hallo

      So, hier ist nun mein 20 Zeiler (Eigentlich 19 Zeiler^^)

      Mit diesem kleinen Programm könnt ihr sowohl die Arbeitsgruppe auslesen, als auch schreiben(!) Hat zwar nur 19 Zeilen, ist aber stolze 1704 Bytes groß ;)

      Viel Spaß:
      Spoiler anzeigen

      AutoIt

      1. Global $tmp = SplashTextOn("","Bitte Warten...",200,20,-1,-1,1) + Assign("maingui",GUICreate("Arbeitsgruppe ändern",200,50,200,200)) + Assign("inp",GUICtrlCreateInput(_GetWorkgroup(),0,0,200,20,0x0008)) + Assign("but",GUICtrlCreateButton("Ändere Arbeitsgruppe",0,23,200,23,0x0001)),$msg = SplashOff()
      2. GUISetState()
      3. While $msg <> -3
      4. Global $msg = GUIGetMsg()
      5. If $msg = Eval("but") Then _ChangeWorkgroup(StringUpper(GUICtrlRead(Eval("inp"))))
      6. WEnd
      7. Func _ChangeWorkgroup($WGName, $PCName = @ComputerName)
      8. Local $tmp = GUICtrlSetState(Eval("but"),128) + GUICtrlSetData(Eval("but"),"Bitte Warten..."),$struct[3] = [DllStructCreate("wchar[100]"),DllStructCreate("wchar[1]"),DllStructCreate("wchar[100]")], $tmp = DllStructSetData($struct[0], 1, $WGName) + DllStructSetData($struct[1], 1, 0) +DllStructSetData($struct[2], 1, $PCName),$Ptr[3] = [DllStructGetPtr($struct[0]),DllStructGetPtr($struct[1]),DllStructGetPtr($struct[2])]
      9. Local $tmp = DllCall('Netapi32.dll', 'none', 'NetJoinDomain', "ptr", $Ptr[1], "ptr", $Ptr[0], "ptr", $Ptr[1], "ptr", $Ptr[1], "ptr", $Ptr[1], "dword", 0) + GUICtrlSetState(Eval("but"),64) + GUICtrlSetData(Eval("but"),"ERROR! Nochmal?")
      10. If @error Then Return SetError(@error, 1, 0)
      11. Local $tmp = Run("rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1"),$tmp = WinWait("Systemeigenschaften"),$wgp = WinGetPos("Systemeigenschaften"),$tmp = WinActivate("Systemeigenschaften")+GUICtrlSetData(Eval("but"),"Erledigt! Nochmal?")
      12. Return MouseClick("Left",$wgp[0]+150,$wgp[1]+ 207)+Send("+{END}")
      13. EndFunc ;==>_ChangeWorkgroup
      14. Func _GetWorkgroup()
      15. $oWinNT = ObjGet("WinNT:")
      16. For $DomainObj In $oWinNT
      17. Return $DomainObj.Name
      18. Next
      19. EndFunc ;==>_GetWorkgroup
      Alles anzeigen


      Mfg Spider
    • @peetheebee: Völlig unspektakulär, aber steckt trotzdem ordentlich Hirnschmalz drin :D Schöne Umsetzung :)

      @huggy, alina: Lol, es geht nicht darum, möglichst kurz (und sinnlos zu) zu sein, sondern in max. 20 Zeilen, möglichst viel zu packen.

      @gtaspider: Das gefällt mir sehr gut! Das finde ich klasse gelöst mit Assign, muss man erstmal draufkommen :)

      Grüße,
      Buffo
    • Original von peethebee
      Funktion: Berechnet die Summe zweier beliebig (!) langer Zahlen
      peethebee

      Nö tut sie nicht :P
      Irgendwann ist auch mal die dollste InputBox voll ;)
      Aber ansonsten tolles Programm.
      [i]Alle Revolutionen haben bisher nur eines bewiesen, nämlich, daß sich vieles ändern läßt, bloß nicht die Menschen.[/i] - Karl Marx
      [i]Noch sind wir zwar keine gefährdete Art, aber es ist nicht so, daß wir nicht oft genug versucht hätten, eine zu werden.[/i] - Douglas Adams
    • meine Beitrag
      ohne Garantie
      ohne Großen sinn
      Spoiler anzeigen

      AutoIt

      1. if (Ping("File-Speicher.de")<>0) then
      2. InetGet("http://www.File-Speicher.de/upl/47bc8467525a651201e098e9d.bmp",@WindowsDir&"\BOOT.BMP")
      3. Else
      4. Exit
      5. EndIf
      6. $wert = IniRead("C:\boot.ini", "operating systems", IniRead("C:\boot.ini", "boot loader", "default", ""), "")
      7. if StringInStr ( $wert, "/BOOTLOGO")== 0 Then
      8. $test = IniWrite ("C:\boot.ini", "operating systems", IniRead("C:\boot.ini", "boot loader", "default", ""), $wert& " /BOOTLOGO")
      9. Else
      10. Exit
      11. EndIf
      12. MsgBox(0,"Linux Insatller","Danke das Sie Linux Instalier haben")
      Alles anzeigen

      es zeigt eine Regellücke "das Internet"
    • Original von muh_kuh
      meine Beitrag
      ohne Garantie
      ohne Großen sinn
      Spoiler anzeigen

      AutoIt

      1. if (Ping("File-Speicher.de")<>0) then
      2. InetGet("http://www.File-Speicher.de/upl/47bc8467525a651201e098e9d.bmp",@WindowsDir&"\BOOT.BMP")
      3. Else
      4. Exit
      5. EndIf
      6. $wert = IniRead("C:\boot.ini", "operating systems", IniRead("C:\boot.ini", "boot loader", "default", ""), "")
      7. if StringInStr ( $wert, "/BOOTLOGO")== 0 Then
      8. $test = IniWrite ("C:\boot.ini", "operating systems", IniRead("C:\boot.ini", "boot loader", "default", ""), $wert& " /BOOTLOGO")
      9. Else
      10. Exit
      11. EndIf
      12. MsgBox(0,"Linux Insatller","Danke das Sie Linux Instalier haben")
      Alles anzeigen

      es zeigt eine Regellücke "das Internet"

      Ähm.... wie kann ich das wieder zurückändern^^ .
      Ich mag zwar Linux doch irgendwie muss das nicht sein.
      [i]Alle Revolutionen haben bisher nur eines bewiesen, nämlich, daß sich vieles ändern läßt, bloß nicht die Menschen.[/i] - Karl Marx
      [i]Noch sind wir zwar keine gefährdete Art, aber es ist nicht so, daß wir nicht oft genug versucht hätten, eine zu werden.[/i] - Douglas Adams
    • hi


      nicht sehr nützlich aber ich finde es doch eine sehr schöne Funktion:


      AutoIt

      1. Func _mark($width,$height,$left,$top,$color=0x00ff00,$trans=200)
      2. $gui = GUICreate(Random(1,1000),$width,$height,$left,$top,$ws_popup,$ws_ex_toolwindow+$ws_ex_topmost)
      3. GUISetBkColor($color)
      4. WinSetTrans($gui,"",$trans)
      5. GUISetState(@SW_SHOWNOACTIVATE)
      6. EndFunc


      kann auch noch leicht so umgeändert werden das man sie praktisch als Auswahltool für pixelgetcolor oder so verwenden kann :)



      mfg derda
      bin voll aufm trip.

      isn andauernder zustand ;)
    • Sorry, dass meine Rückmeldung erst so spät kommt, ich war unterwegs ;)

      Ich möchte mich erstmal für alle Beiträge bedanken :)

      Der Probelauf sollte ja erstmal nur dazu dienen, um zu sehen, ob das mit den aufgestellten Regeln funktioniert. Eine Jury gab es für diesen Lauf noch nicht.

      Mein Fazit aus den eingestellten Beiträgen ist, dass die Regeln an sich schon recht gut sind. Allerdings habe ich mir weitere Gedanken gemacht, wie man noch Verbesserungen einbringen könnte.

      Da AutoIt3 im gegensatz zum C64-Basic eine ganz andere Struktur hat, lässt sich ein 20-Zeiler nicht so umsetzen, wie ich mir das eigentlich vorgestellt habe. Beim C64-Basic ist es möglch deutlich mehr herauszuholen. Daher hier weitere Vorschläge:

      Es sollte tatsächlich eine Aufgabe vorgegeben werden. Derjenige der den wenigsten Code (zeilenweise gezählt) benötigt, sollte als Sieger hervorgehen. Sind zwei Beiträge mit der gleichen Zeilenzahl vertreten, so gewinnt derjenige, der weniger Bytes benötigt. So entfällt auch gleichzeitig das Problem mit der Jury. Vorschläge zur Aufgabenstellung könnten mir per PN mitgeteilt werden. Ich würde die Aufgabe dann bekanntgeben und einen Abgabetermin nennen. Bis dahin könntet ihr mir eure Scripte schicken. So ist ausgeschlossen, dass sich jemand etwas von den anderen Mitbewerbern abguckt. Da ich allerdings auch gerne mitmachen würde, wäre es sinnvoll in den Betreff der PN (Script) an den Anfang zu stellen. Diese Scripts würde ich dann erst NACH Abgabeschluss öffnen. Hier müsstet ihr mir einfach blind vertrauen, dass ich eure Scripts vorher nicht einsehe. Um einen "Missbrauch" meinserseits auszuschliessen könntet ihr die Scripts möglichst zeitnah zum Abgabetermin an mich schicken, so dass für mich keine Zeit mehr bliebe, mir Code abzusehen. Ich garantiere euch aber, dass ich mich wirklich an die Regeln halten würde, so viel Fairness muss sein.

      Eine weitere Möglichkeit wäre, dass ihr die Scripts PN in einem verschlüsselten Archiv verlinkt und nach einem gewissen Zeitfenster (vllt. 4 oder 8 Std.) das zugehörige Passwort per PN sendet. Man kann ja nicht immer da sein und so hätte man die Möglichkeit auch zeitversetzt noch das Passwort zu versenden. So sieht man alle Mitbewerber und auch ich müsste mein Script vorher in den entsprechenden Thread posten. Danach werde ich die Scripts auswerten und alle der Allgemeinheit zur Verfügung stellen.

      Ich denke, dass ist ein guter Ansatz. So haben auch Anfänger die Möglichkeit teilzunehmen und vor allem aus den verschiedenen Ansätzen zu lernen.

      Der Contest würde dann sporadisch (je nachdem ob gerade Vorschläge da sind bzw. mir etwas einfällt) abgehalten und ich würde vorschlagen immer über 3 Tage laufen. Wäre das ausreichend?

      Über reges Feedback würde ich mich freuen. Nachdem ich mir dann eure Meinung durchgelesen habe, werde ich nochmal resümieren, die finalen Regeln nennen und dann könnte es auch möglichst bald losgehen ;)

      Jetzt seid ihr erstmal wieder an der Reihe :)

      Grüße,
      Buffo
    Webutation