Jump to content
Unity Insider Forum

Headless Server / Multiplayer


T.R.C

Recommended Posts

Grüß Euch,

folgendes Frage. Ich habe mich heute den ganzen Tag in dem Bereich Multiplayer in Unity eingelesen und arbeite gerade an einem kleinen Strategie Spiel. Nun möchte ich mein Spiel Multiplayer fähig machen, sodass ich mit meinen Freunden nicht im LAN Netz sondern Öffentlichen Netz spielen kann und in weiterer Instanz sollte das Spiel Client unabhängig sein, folglich benötige ich einen Client unabhängigen Server der läuft auch wenn kein Spieler online ist. 

Nun hab ich bereits die Möglichkeit mit Unet entdeckt. Bei der man das Spiel so programmieren kann das der Client sogleich spielt und hostet und Mitspieler joinen können. Nun wenn der Client zugleich hoster und Spieler ist und dieser das Game schließt fliegen alle raus und das Game ist beendet, somit ist diese Möglichkeit keine option für mich. Ich habe auch noch von Raknet, Photon und Masterserver etc.. gelesen und ehrlich gesagt.. zu viel Input.

Nun meine bescheidene Frage an euch, was könnt ihr mir empfehlen wodurch ich mein Game realisieren kann? In welche Materie sollte ich mich am besten einlesen , gibt es evtl. ein paar tuts, etc.. ?

 

Für eine Antwort wäre ich euch sehr dankbar

Liebe Grüße

Philipp

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo T.R.C,
Du kannst mit UNet auch ein dedicated Server betreiben, dieser würde dann natürlich auf einem Linux/Window Server von dir laufen. 

Weiteres hat ein Masterserver nicht umbedingt was mit Netzwerk Bibliotheken zu tun, dieser handhabt meistens nur Serverlisten, Spielerlisten, Spielerdaten und vieles mehr. 

Was du am besten nutzt liegt in deiner Entscheidung, solltest du alles selber machen wollen dann bist du mit UNet schon gut unterwegs, willst du das dir das meiste abgenommen wird.

Als alternative würde mir jetzt ehrlich gesagt nur Player.IO einfallen, welches einfach zu handhaben ist und extrem viel für dich erledigt.

Und als weiterer Hinweis, Raknet würde ich garnicht mehr empfehlen das ist veraltet und teilweise sehr teuer.

Was ich jedoch noch in Aussicht stellen würde, welches natürlich abhängig ist der Komplexität des Spieles, wäre mit socket.io zuarbeiten.
Du kannst dich ja mal entscheiden in welche Richtung du gehen willst, sobald du das weißt könnte ich weiter darauf eingehen und dir mehr Tipps dazu geben.

Liebe Grüße
Manuel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Manuel,

Besten Dank für die schnelle Antwort.

Habe mir die Möglichkeiten angeschaut und gleich ein Tut von Unet gezogen. Ich entwickle alleine, also umso mehr mir abgenommen wird umso besser. Nun zu Unet, prinzipiell leicht zu verstehen. Was ich aber nicht ganz verstehe ist die Server/Client zusammensetzung. Vorweg ich habe nur Tuts gefunden , wo der Client sogleich Server und Spieler ist und die Mitspieler(Clienten) joinen können.

Du schreibst Unet ist auch als dedicated Server ausführbar, wie genau sieht das dann aus? Normalerweiße hat man doch eine Game datei und quasi eine Server datei, die dann kommunizieren. Oder wie kann ich mir das vorstellen? Die Tuts haben mir da leider nicht weitergeholfen. Habe zwar was von einem Headless Build gehört, sodass grafik etc. nicht verarbeitet wird aber eben nur für linux.

Danke und Liebe Grüße

Philipp

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

sorry für die späte Rückantwort.
Ja du kannst einen Headless Build erstellen welcher auf Linux Distro's ohne einer Grafischen Oberfläche läuft.

Von UNet her ist ja nur das du beim Server:

NetworkManager.singleton.StartServer();

nutzt, und beim Client:

NetworkManager.singleton.StartClient()

Das unterscheidet dann einen Server von einem Clienten.

Somit läuft es dann als dedicated Server. Kommunizieren tun der Client und der Server dann natürlich über UDP bzw. WebSocket (bei WebGL).

 

Hoffe das hilft dir vorerst mal weiter.

Mfg. Manuel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...