Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Phalax

Frischling

  • »Phalax« ist der Autor dieses Themas

Beiträge: 82

Beruf: Student Media Systems

  • Private Nachricht senden

1

12.02.2011, 15:51

Frage zum Erstellen von Netzwerkspielen

Hey,

ich habe jetzt schon ein paar kleine Spiele programmiert und würde jetzt gerne einmal ein simples Spiel wie Tic Tac Toe netzwerkfähig machen.

Meine 1. Frage ist jetzt wonach genau ich da suchen muss, also welche Thematik.
Die 2. Frage ist, ob es vielleicht Programmiersprachen gibt mit denen man einen leichten Einstieg in die Netzwerkprogrammierung findet oder ob das bei allen Sprachen gleich ist. Ich würde da am liebsten nicht C++ für nutzen sondern eine modernere Sprache.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

12.02.2011, 15:55

Definiere "moderne" Sprache ;)
Naja also es ist natürlich unterschiedlich schwierig, aber gerade bei C++ gibt es viele Netzwerk-Libs oder auch ganze Frameworks/Engines, die Netzwerkklassen mitbringen. Für deinen Anwendungfall empfehle ich dabei eine möglichst einfache zu wählen, weil alles andere ist für den Einstieg "zu komplex" und bringt für diesen speziellen Fall wenig.

Existiert das TicTacToe schon? Wenn ja in welcher Sprache? In welcher Sprache sind deinen anderen kleinen Spiele? Ggf. können wir die so direkt eine mögliche Lösung aufzeigen.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

3

12.02.2011, 15:55

das stichwort ist socketprogrammierung.
die programmiersprache ist im grunde egal.(im gegensatz zur library)
wenn du vielleicht doch C++ nutzen willst würde ich die sehr einfach zu bedienene sfml empfehlen.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Phalax

Frischling

  • »Phalax« ist der Autor dieses Themas

Beiträge: 82

Beruf: Student Media Systems

  • Private Nachricht senden

4

12.02.2011, 16:00

@Nox: Also moderne Sprachen sind bei mir Java, C#, Python usw. weil sie eben noch nicht so alt sind ;).

Also bis jetzt habe ich eigentlich immer C# genutzt.

@NachoMan: Ok, dann werd ich danach mal suchen.

Danke euch beiden

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Phalax« (12.02.2011, 19:12)


Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

5

12.02.2011, 16:32

Für C# gibt es sicher gute Tutorials. Wenn du es allerdings nicht ganz so grundlegend machen willst, schau dich einfach nach einer "C# network lib" um. Leider habe ich da keinerlei Erfahrung, aber das .net framework hat eigentlich sehr gute Netzwerkklassen.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

6

12.02.2011, 18:50

Hallo,

Ich vermute mal dass du kein XNA benutzt, dort gibt es bereits eingebaute Netzwerkfunktionen. Für C# gäb es ansonsten die lidgren-network Engine, selber ausprobiert habe ich sie jedoch nicht.


Phalax

Frischling

  • »Phalax« ist der Autor dieses Themas

Beiträge: 82

Beruf: Student Media Systems

  • Private Nachricht senden

7

12.02.2011, 19:12

Doch XNA hab ich schon genutzt und auch dessen Netzwerkfunktionalität, doch man kann auf dem PC das Spiel nur spielen, wenn man Visual C# Express mit XNA Gamestudio installiert hat. Außerdem ist nur das "über LAN spielen" kostenlos. Ansonsten braucht man da eine Mitgliedschaft von Games for Windows Live oder so.
Von Lidgren hab ich schon gehört aber ich frage mich wie das mit der Sicherheit von solchen libs ist.

8

13.02.2011, 00:14

http://www.boost.org/doc/libs/1_45_0/doc…boost_asio.html

Boost::Asio ist eine lib für Netzwerkprogrammierung. Damit musst du das nicht Windowsspezifisch machen wenn du Sockets ansprichst, sondern du kannst die lib benutzen, damit das dann auch auf Linux etc. funktioniert.

Falls du Boost nicht kennst: http://de.wikipedia.org/wiki/Boost_%28C%2B%2B-Bibliothek%29

9

13.02.2011, 00:28

@dennis-.- Es geht hier um C#, Boost hat meines Wissens nach noch kein C# Binding ...

Kenne mich mit .NET nicht so aus, aber wie wärs wenn du einfach mal dessen Netzwerksachen verwendest?

Lidgren könnte unter Umständen auch etwas für dich sein.

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

10

13.02.2011, 01:11

Doch XNA hab ich schon genutzt und auch dessen Netzwerkfunktionalität, doch man kann auf dem PC das Spiel nur spielen, wenn man Visual C# Express mit XNA Gamestudio installiert hat. Außerdem ist nur das "über LAN spielen" kostenlos. Ansonsten braucht man da eine Mitgliedschaft von Games for Windows Live oder so.


Das erste ist natürlich schwachsinn. Es muss nur das XNA Redistributable Package auf dem Zielrechner installiert sein. Natürlich braucht der Endbenutzer kein Visual Studio.

Das zweite kann ich mir auch nicht wirklich vorstellen ;) Ich denk mal du verwechselst das mit dem feature, dass du XBox-Live unterstützung mit reinpacken kannst.
Aber selbst wenn... GfWL ist kostenlos ;)

Werbeanzeige