Schere, Stein, Papier / Rock, Paper, Scissor

  • Hallo zusammen,

    ja wie einige in der SB mitbekommen habe, habe ich heute mal angefangen ein kleines erstes Spiel zu entwickeln :P Egal wie viele nun lachen, ich bin erstmal stolz auf mich :thumbup: und hoffe es gibt nicht schon eins im Forum :P Ich habe vor einiger zeit mal geschaut gehabt aber keins gefunden. Naja egal auch ...

    Schere, Stein, Papier
    Jeder kennt es, jeder hat es schonmal gespielt, und wie oft wird es jetzt noch gespielt? :D Ich spiel es an jedem Männerabend wo das Bier nicht von alleine zu unserer Runde kommt ;)

    Falls sich einige Fragen werden wieso es nicht sofort los geht - ich habe mich da von einem Spiel inspirieren lassen, das eine Ladezeit hat und ich diese Überbrückung der Ladezeit mit lustigen Texten richtig gut fand, dachte mir ich baue etwas ähnliches ein :P

    Was mich derzeit noch stört:

    • Ich hatte und habe nicht so viel Zeit, daher wird auch dieser Beitrag hier noch ausführlicher und ordentlicher.
    • Keine Kommentierung und schlechte Formatierung des Skripts.
    • Beendet kann das Spiel nur werden, wenn man am Zug ist.
    • Ist man ungeduldig und achtet nicht auf den kleinen Kasten mittig (Status-Anzeige) und klickt wie ein wilden, zählen die Klicks für den nächsten Zug bereits.
    • Da ich normal auch gerne Webdesign mache wird in Zukunft graphisch vorallem an den Bildern noch etwas getan, aber der normale Aufbau denke ich auch. Außer Gimp, Maus und Tastatur ist grade nichts zur verfügung. (Eigene Bilder folgen).

    Was neben bei beiden zuvor genannten Punkten noch hinzukommen soll ist...

    • eine viel größere Auswahl an Sprüchen, und dies nicht nur zufällig sondern vll. auch eine Art Steigerung wie man es vll. von CounterStrike o.ä. kennt (Doublekill, Triplekill etc. pp).
    • eine offline Rangliste.
    • ein Partymodus (Genaueres hierzu möchte ich noch nicht verraten, aber es wird wenn ich Zeit finde verschiedene Modis geben (Eine U16 Version, eine U18 Version, und einige 18+ Versionen :D).

    Worum ich euch Bitte:

    • Wenn ihr mal ein paar Minuten Zeit findet, schaut es euch mal an und sagt mir grundsetzlich vom Programmaufbau wie ihr es findet.
    • Wenn ihr etwas mehr Zeit habt und die investieren mögt, sagt mir mal wie das Spielgefühl des Ablaufs eurer Meinung nach ist.
    • Ich wäre sehr sehr dankbar, wenn ihr mir vorallem bei den Hintergrundabläufen Tips geben könntet, was ihr verbessern würdet, was ist ein NO-GO, was ist okay etc. Ich bin für Kritik sowohl für Lob offen :)

    Bilder-Quelle:
    Die derzeit genutzten Bilder kommen von der Seite: Blog/iStockphoto Soweit ich weiß darf man Bilder nehmen, solange man Sie nicht kommerziell nutzt, und die Quelle erwähnt. Somit nochmal: DIE BILDER KOMMEN NICHT VON MIR SONDERN VON dem Herren des Blogs/iStockphoto ! - Wenn es hier Ärger geben könnte, bitte bescheid geben, ich nehme es sofort raus!

    Und jetze viel Spaß :D

    Versionen
    • Version 1.0 Build 1 - Freitag, 25. Oktober 2013, 16:18 - 47x Downloads
    • Version 1.0 Build 2 - Montag, 04. November 2013, 11:23 - ??x Downloads

      • Changelog:

        • Der „Ressources“-Ordner wird nun erstellt sofern nicht vorhanden und beim schließen gelöscht (somit konnten alle diverse FileDelete-Befehle entfernt werden)
        • Die Pfade der „FileInstall“-Funktionen wurden angepasst
        • Label-Länge des Spielstands (Spieler und Computer) wurden auf 100 erhöht

    Grüße Yaerox

    Grüne Hölle

    5 Mal editiert, zuletzt von Yaerox (4. November 2013 um 11:30)

  • Da der Computer mich grade 7x hintereinander gnadenlos Abgezogen hat dachte ich zunächst der Computer zieht einfach immer das Richtige :D
    Dann hab ich mir den Quelltext mal zu gemüte geführt und siehe da: Es war keine böse Absicht, sondern Pech ;)

    Hab nur kurz drübergeschaut.
    1. Ein Bild das nur Grau enthält kann durch eine Graue Brush + FillRect ersetzt werden (schöner und effizienter)
    2. Angenommen du willst Texte Hinzufügen oder aus verschiedenen Textpaketen wählen. Nutze einfach folgendes: $aPakete[] = Stringsplit('Paket1#Paket2#...') und anschließend einen Stringsplit mit | als Trennzeichen um an die Sätze zu kommen. Dann kannst du relativ einfach ohne hunderte einzelne Zeilen sehr viel Text einbauen.

    lg
    Mars

  • Hey, wie ich sehe arbeitet der Computer mit Random.
    Versuch doch mal, den Spieler zu analysieren und seine Verhaltensmuster zu erkennen.
    So kannst du eine KI entwickeln welches sich dem Spieler anpasst und somit lernt wie der Spieler spielt.
    Also eine lernende KI welche bei jedem Spiel besser wird, weil diese in etwa sagen kann was der Spieler nehmen wird.
    So würde das Spiel mehr reiz bekommen. Zudem ist das auch Programmiertechnisch eine Herausforderung.

    LG. Make :)

  • Zunächst danke für das reinschauen und sry dat ich jetzt erst schreibe ^^

    Ja das mit einer KI wird sehr sehr aufwendig denke ich, aber ich glaube ich werde hier immer wenn ich mal ein wenig Zeit habe weiter arbeiten...Wenn ich da n Schreibfehler habe werde ich den noch suchen und beheben ^^ *peinlich*

    Grüße Yaerox

    Grüne Hölle

  • Wenn man die *.au3 startet, gibts keine Bilder in der GUI:

    [autoit]

    FileInstall("", @ScriptDir & "\paper_black.png")

    [/autoit]

    Solltest da den "Resources"-Ordner noch mit angeben, dann klappts :)

    €dit: und FileDelete() (Bilder) nur ausführen, wenn das Prog compiled ist, sonst sind se ganz weg :D

    Simon nörgelt, Simon nervt - aber Simon verbessert die Welt. Glaubt er.

    Einmal editiert, zuletzt von x0r (28. Oktober 2013 um 10:12)

  • Pfadangabe \Ressources\

    Zeile 57 - 64 im Script hat du \Ressources\ vergessen, dadurch werden keine Bilder angezeigt,
    wenn mann die Einträge so korrigiert werden auch die Bilder angezeigt ;)

    $a_hImage[0] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\paper_black.png")
    $a_hImage[1] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\paper_white.png")
    $a_hImage[2] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\scissor_black.png")
    $a_hImage[3] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\scissor_white.png")
    $a_hImage[4] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\rock_black.png")
    $a_hImage[5] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\rock_white.png")
    $a_hImage[6] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\rps_by_yaeroxxo.png")
    $a_hImage[7] = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Ressources\grey.png")

  • Update #1 mit einigen kleinen fixes ist raus :P (1. Eintrag bearbeitet!)

    Hatte Urlaub und wollte diesen auch zur Erholung nutzen ^^ Aber wie bereits erwähnt, wenn ich mal Zeit finde werde ich immer mal wieder daran basteln ;) Danke soweit, waren 47 Downloads an der Zahl :)

    Grüße Yaerox

    Grüne Hölle