Mehrspielergame

Hier könnt ihr alle Fragen zu SpiderBasic austauschen.
stevie1401
Beiträge: 659
Registriert: 19.10.2014 15:51
Kontaktdaten:

Mehrspielergame

Beitrag von stevie1401 »

Ich möchte mit Spider-Basic ein Mehrspieler-Game basteln.
Ist es möglich dies alles in einem Programm zu machen? So dass das Programm Server und Client in einem ist?
Bzw ist es möglich es so zu programmieren, dass ich gar keinen Server benötige?
Die Clients sollen aber miteinander spielen können.
Ich programmiere nur noch mit Linux.
Linux Mint 21.x
Benutzeravatar
TroaX
Beiträge: 659
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
Wohnort: NRW
Kontaktdaten:

Re: Mehrspielergame

Beitrag von TroaX »

Direkt aus Spiderbasic heraus geht es nicht. Spiderbasic implementiert weder das klassische Websocket (wobei hier auch nur Verbindung zu einem Server möglich sind und nicht untereinander) noch WebRTC (welches auch bidirektionalen Verbindungsaufbau erlaubt).

Du kannst aber WebRTC über Inline-Javascript ansprechen und verwenden.

Nun kommen wir aber zu einem größeren Problem. Ohne Server wirste mit deinem Spiel Probleme bekommen. Innerhalb eines Netzwerkes würde es noch funktionieren. Aber sobald die Verbindung über den Router hinaus geht, wird dir der NAT und die Firewall des Nutzers, der den Server stellt, einen fetten Strich durch die Rechnung machen. Bei dem kommste nie an. Jeder Anschluss hat eine IP, aber meist mehrere Geräte, die dahinter stehen. Es müsste gesondert ein Port-Forwarding im Router eingerichtet werden, welches bei eingehenden Verbindungen auf einen bestimmten Port die Pakete an ein bestimmtes System im Netzwerk weiterleitet.

Daher mein Tipp: Nimm dir für den Anfang günstig einen vServer und lass den Server darauf laufen. Am Ende ist der Aufwand, einen Server in einen Browser einzubauen, vollkommen überflüssig, weil am Ende die meisten eh damit Probleme haben werden.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box :lol:
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Antworten