Serverprogramm schreiben



  • Hallo alle zusammen,

    ich würde gerne ein kleines Spiel schreiben.
    Da das Spiel ein 1 gegen 1 Spiel ist werde ich dafür ein Programm schreiben
    müssen, das dann als Dienst auf einem Server läuft.
    Ich habe aber noch nie so ein Programm geschrieben und deshalb habe ich ziemlich viele Fragen.
    Ich habe mir bereits mehrere Tutorials durchgelesen nur ging es meistens einfach nur darum eine Nachricht von Client zum Server und andersrum zu senden.
    Es wäre toll wenn mir jemand erklären könnte wie ich das am besten anstelle.
    Welchen Projekttyp soll ich z.B. verwenden (Konsolenanwendung ?)

    Mit freundlichen Grüßen
    MrHansen



  • MrHansen schrieb:

    Ich habe aber noch nie so ein Programm geschrieben und deshalb habe ich ziemlich viele Fragen.

    Dann solltest du sie stellen. Allerdings werden das wohl eher keine C++ Fragen sein.

    Ich habe mir bereits mehrere Tutorials durchgelesen nur ging es meistens einfach nur darum eine Nachricht von Client zum Server und andersrum zu senden.

    Darum geht es doch.

    Welchen Projekttyp soll ich z.B. verwenden (Konsolenanwendung ?)

    Wenn man aus deinen Andeutungen auf Windows und Visual Studio schließt: ja.



  • Für ein "1 gegen 1"-Spiel benötigst du aber keinen Serverrechner (auch keinen Dienst), sondern schreibst einfach ein Programm, das gleichzeitig als Server als auch Client funktioniert (ein Spieler erstellt ein Spiel und der andere verbindet sich dann mit ihm).
    Ein einfaches Client-Server Chatprogramm müßte dafür als Ausgangsbasis reichen.

    PS: Welches GUI-Framework möchtest du denn dafür verwenden oder soll es wirklich nur ein reines Konsolenspiel sein?



  • Den Client programmiert mein Freund in Java ich hatte vor ein Serverprogramm zu schreiben, an das er dann Commandos schicken kann bzw der Server an den Client.
    Ich frage mich, wie ich es anstelle, dass der Server Commandos empfängt in den Programmen, die ich bis jetzt geschrieben habe war es so das der Server solange gewartet hat, bis jemand ihm eine Nachricht geschickt hat.
    Soll ich also eine "endlos" While Schleife machen oder gibt es eine art Listener
    der startet sobald eine Nachricht an ihn geschickt wird.



  • Du benutzt dafür einen eigenen Thread, der dann auf Nachrichten wartet.



  • Könnte mir bitte jemand kurz den Ablauf bzw Aufbau erklären ?



  • Es gibt da unzählige Möglichkeiten.

    Versuch uns deine Anforderungen ganz genau zu erklären.



  • Der Client sendet ein Commando an den Server, dass er dem "Matchmaking" beitreten will, sobald sich dort zwei Spieler gefunden haben wird ein Spiel erstellt.
    Dann senden die Clients commandos mit ihren Spielzügen und im Serverprogramm wird dann der Befehl ausgeführt.
    Aber fürs erste würde es mir reichen zu wissen wie man so ein Serverprogramm schreibt, an das man Commandos senden kann.



  • gib "windows sockets" in die suchmaschine ein. dann machst du einfach copy & paste und fertig ist dein serverprogramm, an das du kommandos senden kannst.



  • MrHansen: Wie wärs mit Beejs Guide to Network Programming?

    Weißt, Netzwerkprogrammierung ist eigentlich ein Thema für sich, das ist nicht eben mal in einem Paragraphen erklärt. In Beej's schmal gehaltenem Buch werden beide simple Konzepte Client und Server vorgestellt und es wird gezeigt, wie beide miteinander interagieren.

    Wenn du mit deinen bereits gefundenen Beispielprogrammen nicht klarkommst, oder nicht weißt, wie man daraus deine Wünsche zurecht schneidet, dann ist das wohl ein Zeichen dafür, dass du dich etwas mehr mit dem Thema beschäftigen sollst.

    ➡ https://beej.us/guide/



  • Vielen Dank!
    Ich werde mir das mal durchlesen und ausprobieren


Anmelden zum Antworten