# Kartenspiel programmieren



## sarenity (24. März 2009)

Hi,
ich würde gerne das Kartenspiel Schnauz/Schwimmen/31 programmieren.
Das Spiel sollte man dann zu viert online spielen können...
Ich weiß, dass man sowas nicht von heute auf morgen lernen kann, jedoch würde ich mich freuen, wenn jemand Tipps/Tutorials für mich hat die mir dabei helfen können!
Damit ich einfach mal einen Anfang hab...
Danke schon im voraus!


----------



## Clash (25. März 2009)

also du möchtest das sicherlich mit ner netten benutzeroberfläche haben, also solltest du mal nach swing bzw. rich client applications schauen. 
für die kommunikation über netzwerk/i-net kannst du dir hier infos holen
http://openbook.galileocomputing.de...18_001.htm#mje97695c9d9267da9ba82fdb524527638
dabei solltest du dir überlegen ob ein spieler die serverrolle übernimmt oder ob ein "zentraler" server als kontrollinstanz dienen soll....
grüße,
clash


----------



## takidoso (27. März 2009)

zum Thema Netzwerke ist es immer so eine Sache rechenr zu verrbinden die in verschiedenn LANs stehen. Da heute viele Leute ihren Weg zum Internet zu mit einem Router kanalisieren, wird die einfache Socket-Programmeirung nicht mehr so trivial, wenn man auch Leute via Internet erreichen möchte. 
JXTA ist eine Technologie, die da einiges bereit hält. Ich selbst habe zwar auch noch keine praktischen Erfahrungen bisher sammeln können, habe es aber demnächst vor.


----------



## danielm (15. April 2009)

Ich glaub nicht, dass er den Krams über p2p laufen lassen will... Für so 'ne kleine Spielerei reicht doch ne einfache Client/Server Struktur. Muss man halt nen Port aufmachen.

Und selbst mit JXTA kommt man nicht durch ne Firewall bzw. NAT.


> A peer behind a firewall can send a message directly to a peer outside a firewall, but a peer outside the firewall cannot establish a direct connection with a peer behind the firewall. The same is true for peers which are behind a NAT device.


----------



## takidoso (16. April 2009)

Das stimmt einerseits, aber anderreseits gibt es Protokolle mit denen man .sich trifft. Das heißt man benötigt im Grunde nur einen Peer der auch gleichzeitig als Rendevous Peer arbeitet. Wird man nicht an diesen durchgelassen, da man selbst keinen Einfluß auf den LAN, in dem man sich befindet, hat,  erreicht man das ganze notfalls über HTTP,  wobei technisch gesehen permanent gepollt wird. Irgendwo habe ich das in den JXTA-Dokus gelesen, dass dies mit JXTA auch implementiert sei.
Also sofern nicht HTTP auch abgeknapst ist, bliebe diese Möglichkeit

Leider habe ich bisher  dort auch noch keine praktischen Erfahrungen, da mich z.Z. dummerweise meine Motivation verlassen hat.
Ich hadere z.B. noch, ob ich MyJXTA nutzen sollte, indem ich mein eigenes Spielchen als MyJXTA-Plugin bastele. Das erparrt auf der einen Seite nee Menge Arbeit bezogen auf diverses "Sich treffen" implementieren schon allein vom GUI her, doch andererseits ist MyJXTA nicht wirklich gut dokumentiert, zumindest habe ich bisher Kochrezepte noch keine gefunden, sondern nur ein paar abgemagerte nicht übergreifend erkärende Beispiele (auch ein Grund meiner momentanen Motivationslosigkeit)  --- sorry Offtopic


----------

