Spiel in der Konsole



  • Ich bin gerade dabei mein größtes Projekt zu realisieren, wurde dabei schon einige Male durch Bugs aufgehalten, konnte diese aber umgehen oder lösen.
    Doch zurzeit habe ich mit Fehlern zu kämpfen, die (meinerseits) einfach nicht zu fixen sind.
    Keine Ahnung, ob sich jemand die Mühe macht, mir dabei zu helfen, die Bugs zu beseitigen oder das ganze Programm zu verbessern. Ich bin auch noch Anfänger, also kann eigentlich jeder an dem "Projekt" mitwirken.
    Mir jedenfalls gefällt das Prinzip, wie OpenSource-Software entsteht.
    Ich selbst werde auch weiter lernen und tüfteln.

    Edit:
    Konnte die Bugs selber beseitigen. Hier ein aktueller Download: Konsolenspiel

    Kritik und Verbesserungsvorschläge sind erwünscht!



  • Hallo,

    ich finde das Spiel, für ein reines Konsolenspiel, ziemlich nett gemacht 🙂

    Außerdem finde ich die Spielidee sehr interessant und sicher noch um einiges weiter ausbaufähig 👍 So könntest du z.B. noch Farben reinbringen, dazu findest du in der WinAPI die nötigen Funktionen 🙂

    Aber der Quellcode ist für außenstehende, meiner Meinung nach, eine Zumutung und sollte auch dir nach einiger Zeit Bearbeitungspause Verständnisprobleme bereiten. Natürlich will man sich beim Programmieren möglichst viel Schreibarbeit sparen, aber bei deinen Variablennamen steige ich gar nicht mehr durch:

    int y = 1, v = 0, e = -1, s = 30, n, t, k = 0, kx = 20, lk = 1, l = 1, p[11], h1, h2, z, vv, ve, vh1, vh2;
    

    Des Weiteren gibts in deinem Quellcode viele Magic Numbers:

    do
    {
     t = getch();
    } while(t == 97 || t == 100);
    

    Da solltest du evtl. ein paar defines oder ähnliches anlegen, oder könntest du auf Anhieb sagen, wofür diese Zahlen jetzt stehen? 🙂

    Du solltest übrigens so gut es geht auf die Funktion system() verzichten, da es dafür andere Möglichkeiten gibt, die um einiges schneller sind: siehe WinAPI...

    Ansonsten fällt mir jetzt gerade nichts mehr ein, außer 👍 👍 👍

    Viele Grüße,
    Patrick



  • Also erstmal freue ich mich, dass sich jemand für meine Arbeit interessiert. 😃

    Weiterhin sind deine Hinweise und Tipps sehr wertvoll für mich.
    Den Quelltext werden ich demnächst nochmal überarbeiten, bevor neue Features eingebaut werden.
    D.h.:

    • mehr Kommentare
    • treffendere Variablennamen (etwas länger)
    • und #defines verwenden, wenn nötig

    Mit der WinApi muss ich mich erst noch mehr auseinandersetzen, damit der Sourcecode effektiv verbessert werden kann.

    Danke!



  • ich kann mir nicht helfen - ich verstehe das spiel nicht.

    ich tippe immer 1 und 2 oder so ein und dann zeichnet es was nach unten und fertig. Geht innerhalb einer halben sekunde!

    Was soll man daran spielen können?

    ------------

    Edit:

    ok hilfe gelesen.

    Cool für ein Konsolenspiel.

    Solls Konsolenbasiert bleiben?



  • Mir gefällt das Spiel echt gut! Das beste Konsolenspiel, das ich bis jetzt gespielt habe 👍



  • Schön das es euch gefällt. 😉

    Ich werde es so umbauen, dass die Hilfe beim ersten Start angezeigt wird.

    Da ich zurzeit noch nicht mehr kann als Konsolenprogrammierung, wird eine graphische Version erst später erscheinen.

    Welches Graphic Interface sollte man da verwenden? Bei Windows gibt es ja GDI und DirectX.
    Bei Linux ginge OpenGl.

    Oder?



  • Wenn schon Grafik und in 2D dann SDL!



  • Wow, danke! Habe noch nicht von SDL gehört.

    Das scheint (laut Wikipedia) genau das richtige für mich zu sein.



  • Wenn du schon bei Wiki nachgeschaut hast, kennst du das wahrscheinlich schon - wenn nicht, ist das hier das richtige für dich: http://de.wikibooks.org/wiki/SDL



  • Ich würde auch mal nach SFML schauen, das ist meiner Ansicht nach benutzerfreundlicher und schneller als SDL. Zudem musst du nicht für jeden Teilbereich eine separate Library einbinden.



  • jo, ganz ok das Spiel!

    Dennoch: 1 ich komme nie zur Hilfe
    2 void reset_feld: dort kannst du einfach systemCLS nehmen
    3 Es hat lange gedauert, bis ich die sachen verstanden habe. Deshalb am besten am anfang einmal erklären...



  • Neue Version verfügbar. Weiterhin konsolenbasiert.

    Eins bekomme ich noch nicht hin: Die Scores werden nicht richtig ausgewertet (Sortierung, Anzeigen der 10 Besten) und beim Speichern läuft auch noch nicht alles so wie es sein soll.

    Download



  • Ich habe es in der neuen version mal getestet. Verstanden habe ich das spiel nicht so ganz ich nehme mal an man muss den hindernissen ausweichen aber man sieht immer nur die zeile in der man gerade ist? durch hin und herbewegen kommt man durch die levels ohne probleme bei null verzögerung(level 9) stürzt er mit unknown exception ab. Die Anleitung sollte vielleicht noch ne zeile zur steuerung und ne Zeile zum wie weiche ich den hindernissen aus wie komme ich an die leben oder sowas enthalten. Sonnst kann ich dir die Improved console Bibliothek empfehlen solltest du in der FAQ vomconsolenunterforum finden. da hast du gotoxy color und die ganzen anderen funktionen die man aus doszeiten von der conio.h kennt. 😃
    Bei mir lief es erst nicht dann habe ich mir die cc3250mt.dll runtergeladen um es zum laufen zu bringen die solltest du vielleicht noch in das rar archiv packen 😉



  • Bei mir lief es erst nicht dann habe ich mir die cc3250mt.dll runtergeladen um es zum laufen zu bringen die solltest du vielleicht noch in das rar archiv packen 😉

    Ja, das wäre gut. Ohne läuft es nicht.
    Wo kann ich die cc3250mt.dll denn runterladen?

    MfG
    DerRatlose



  • google den dll namen da finds du die datei auf einem der ersten links



  • So, habe mir das Spiel mal angeschaut. Ist eine gute Idee 👍
    Es sind aber noch ein paar kleine Fehler im Spiel. Wo genau die sind, kann ich dir Momentan allerdings noch nicht sagen. Ich kann zwar die Grundlagen in C++ aber in C kenne ich mich noch nicht wirklich gut aus.

    Eine Fehler der sicher schnell behoben ist, ist folgender: Nach Spielende wird ja gefragt, ob man noch einmal spielen möchte. Das funktioniert auch so weit. Nur muss die Variable in der die Punkte gespeichert werden, dann wieder auf 0 gesetzt werden. Im Moment ist es so, dass die Variable einfach weiter zählt.

    Dann habe ich es irgendwann auch einmal geschafft, aus dem Spielfeld auszubrechen und daneben her weiterzulaufen.

    Werde mir das ganze noch ein bisschen genauer anschauen.

    MfG
    DerRatlose


Anmelden zum Antworten