HN Show: „Rebels in the Sky“, ein Terminalspiel über Weltraumpiraten
(github.com/ricott1)- Rebels in the Sky ist ein Terminalspiel, das im Jahr 2101 spielt, in einer Welt, in der Konzerne die Kontrolle übernommen haben. Spieler stellen eine Crew aus Weltraumpiraten zusammen, streifen durch die Galaxie und suchen nach Basketball-Gegnern
- Das Spiel befindet sich in aktiver Entwicklung, daher gibt es häufig Breaking Changes. Wenn alte Spielstände ungültig werden, muss man ein neues Spiel starten oder per Issue klären, ob eine Migration des Spielstands möglich ist
- Wer es direkt ausprobieren möchte, kann sich per
ssh frittura.orgmit dem frittura-hub verbinden oder im Web-Hubrebelsauswählen - Gestartet wird es im Terminal mit
./rebels; die empfohlene minimale Terminalgröße beträgt 160x48, und manche Terminals stellen Farben möglicherweise nicht gut dar - Standardmäßig werden lokale Bot-Teams erstellt; das lässt sich mit dem Flag
-fdeaktivieren. Wenn es künftig mehr Spieler gibt, soll der Standard auf nur Online-Teams umgestellt werden
Spielsetting und aktueller Stand
- Rebels in the Sky spielt im Jahr 2101
- Konzerne haben die Welt unter ihre Kontrolle gebracht
- Der Weg in die Freiheit besteht darin, sich einer Piratencrew anzuschließen und die Galaxie zu plündern
- Das Mittel zum Überleben ist Basketball
- Spieler erstellen ihre eigene Crew und streifen durch die Galaxie, um würdige Basketball-Gegner zu finden
- Das Spiel befindet sich in heavy development, und Breaking Changes werden häufig eingeführt
- Alte Spielstände können ungültig werden, sodass man nicht weiterspielen kann
- In diesem Fall sollte man ein neues Spiel starten oder ein Issue eröffnen, um zu klären, ob sich der Spielstand migrieren lässt
- Es gibt einen Trailer on youtube und ein Wiki
Direkt ausprobieren
- Man kann das Spiel ausprobieren, indem man sich per SSH mit dem frittura-hub verbindet
- Befehl:
ssh frittura.org
- Befehl:
- Alternativ kann man den Hub auch im Web öffnen und dann
rebelsauswählen- Adresse:
https://hub.frittura.org
- Adresse:
Installation und Build
- Für einen eigenen Build werden plattformspezifische Abhängigkeiten benötigt
- Linux:
libasound2-dev,cmake - MacOs:
cmake - Windows: cmake
- Linux:
- Die Rust toolchain wird benötigt; nach dem Klonen des Repositorys baut man mit folgendem Befehl
cargo build --release
- Installation über
cargoist möglichcargo install rebels
- Alternativ kann man die Assets des neuesten Releases herunterladen und installieren
- Release-Assets lädt man passend zur Plattform unter
https://rebels.frittura.orgherunter - Der ausführbaren Datei gibt man mit
chmod +x rebelsAusführungsrechte
- Release-Assets lädt man passend zur Plattform unter
- Es gibt auch Pakete für Distributionen
- Arch Linux:
pacman -S rebels-in-the-skyaus den official repositories - MacPorts:
sudo port install rebels-in-the-skyaus den available ports
- Arch Linux:
Laufzeitumgebung und Spielbedingungen
- Das Spiel läuft als Terminal-Anwendung
- Startbefehl:
./rebels
- Startbefehl:
- Die empfohlene minimale Terminalgröße beträgt 160x48
- Nicht alle Terminals unterstützen die Farben des Spiels gut; eventuell muss man ein anderes Terminal ausprobieren
- Getestet wurden folgende Terminals
- Derzeit werden standardmäßig lokale Bot-Teams erstellt, damit das Spiel mehr Spaß macht
- Übergibt man dem Executable das Flag
-f, lässt sich dieses Verhalten deaktivieren - Wenn es künftig mehr Spieler gibt, soll der Standard auf ausschließlich Online-Teams umgestellt werden
- Übergibt man dem Executable das Flag
Musik und Daten
- Musik wird per Internetradio gestreamt
- Weitere Radiosender können in
assets/data/stream_data.jsoneingetragen werden
Mitwirken und Fehler melden
- Für das Spiel gibt es noch keine feste Roadmap
- Wer Ideen einbringen möchte, kann dem discord beitreten
- Es ist sehr wahrscheinlich, dass man unterwegs auf Bugs stößt
- Wenn ein Bug auftritt, sollte man ein Issue eröffnen und beschreiben, was passiert ist
- Entwickler können per Pull Request beitragen
Relayer-Nodes und SSH-Server
- Das Betreiben einer relayer node hilft dabei, die Dezentralisierung des Spiels aufrechtzuerhalten
- Startbefehl:
rebels -n - Andere Spieler können sich beim Start mit
rebels -i <RELAYER-NODE-IP4-OR-IP6>mit diesem Relayer verbinden - Wer einen Relayer betreibt, kann erwägen, einen PR zu öffnen, um die Adresse zur Liste bekannter Relayer hinzuzufügen
- Startbefehl:
- Um einen Relayer auszuführen, muss mit aktivierter
relayer-Funktion gebaut werdencargo build --release --features "relayer"
- Auch ein SSH server kann betrieben werden
- Startbefehl:
rebels -j - Andere Spieler können sich mit
ssh <USERNAME>@<SERVER-IP4-OR-IP6> -p 3788verbinden
- Startbefehl:
- Um den SSH-Server auszuführen, muss mit aktivierter
ssh-Funktion gebaut werdencargo build --release --features "ssh"
Lizenz
- Diese Software wird unter der GPLv3 veröffentlicht
1 Kommentare
Hacker-News-Kommentare
Mein Server kommt mit dem ganzen Traffic nicht zurecht, aber vielleicht ist das gerade eine Gelegenheit zu zeigen, dass dieses Spiel keine zentrale Autorität braucht, um weiterzulaufen.
Ich habe unter 85.214.130.204 einen weiteren Relay-Knoten und SSH-Knoten eingerichtet; man kann sich mit
ssh 85.214.130.204 -p 3788verbinden. Allerdings versucht das Relay, sich mit dem alten Server zu verbinden, daher funktioniert es möglicherweise nicht.Alternativ kann man den lokalen Client mit dem Flag
rebels -i 85.214.130.204starten, um die IP-Adresse eines alternativen Relay-Knotens anzugeben.Falls der Trailer-Link nicht funktioniert, gibt es einen anderen Link: https://rebels.frittura.org/demo_v1.0.18.mp4
https://github.com/user-attachments/assets/aaa02f04-06db-4da...
Und der thug boy-Song hat mich so stark an Fist of the North Star erinnert, dass ich mir fast den Hals verrenkt hätte. Ausgezeichnete Wahl.
Die Animationen der Planeten/Monde sind wirklich großartig.
Ich hatte einen Freund, der FTL spielte, und ich dachte immer, das sei einfach ein cooles Terminal-Spiel.
Macht wirklich Spaß! Läuft auch im Windows Terminal gut. Maus, Tastatur und Farben funktionieren alle problemlos.
Es wirkt sehr originell, aber es ist ein bisschen einschüchternd, sich einzuarbeiten. Ich werde es später ausprobieren.
Als Feedback: Es sind sehr viele Themen miteinander vermischt, sodass es selbst beim Anschauen des Videos schwer ist, das Gameplay zu verstehen. Zum Beispiel ist nicht klar zu erkennen, wann man Aktionen ausführt und wann man den Bildschirm bewegt.
Die Idee eines vollständig P2P-Spiels ist interessant. Welche Interaktionen können Nutzer miteinander haben?
Da bei solchen Interaktionen am Ende ein konsistenter Zustand garantiert sein muss, werden sie ähnlich wie ein TCP-Handshake behandelt. Zum Beispiel muss ein Spielerhandel auf beiden Seiten konsistent übernommen werden.
Deshalb sind Echtzeit-Interaktionen nicht einfach. Auch wenn Spieler einander herausfordern, einigen sie sich nur auf die Anfangsbedingungen des Spiels; danach wird die Partie auf beiden Clients unabhängig und deterministisch simuliert.
Das Video im README scheint nicht in allen Browsern zu funktionieren. Bei mir läuft es in Firefox nicht.
Wurde dieses Spiel mit Godot gemacht? Es sieht so aus, als würde es das pixel planet generator-Asset von itch verwenden.
https://deep-fold.itch.io/pixel-planet-generator