1 Punkte von GN⁺ 3 시간 전 | 1 Kommentare | Auf WhatsApp teilen
  • Homegames ist eine kostenlose Open-Source-Plattform, auf der man Spiele im Browser spielen, erstellen und teilen kann; zum Spielen ist kein Konto erforderlich
  • Entwickler können Änderungen an Spielen direkt mit dem Code-Editor im Browser und einer Live-Vorschau testen
  • Das Studio unterstützt nicht nur das Hochladen von Assets, sondern auch Zeichnen und Aufnehmen, sodass der Produktions-Workflow im Browser gebündelt ist
  • Erstellte Spiele können weltweit veröffentlicht oder privat gehalten werden, sodass sich die Sichtbarkeit wählen lässt
  • Plattformcode, Spiele und Website stehen vollständig unter GPLv3 und sind mit Blick auf Self-Hosting, einschließlich API, sowie Erhaltung konzipiert

Eine Spieleplattform zum Erstellen im Browser

  • Homegames ist eine kostenlose Open-Source-Gaming-Plattform, auf der man Spiele im Browser spielen, erstellen und teilen kann
  • Zum Spielen ist kein Konto erforderlich
  • Die Spieleentwicklung erfolgt rund um das Developer Studio
    • Mit einem einfachen Code-Editor im Browser lassen sich Spiele erstellen
    • Änderungen können über eine Live-Spielvorschau überprüft werden
    • Tests sind direkt in Live-Multiplayer-Sessions möglich
    • Spiel-Assets lassen sich im Studio verwalten
    • Unterstützt werden Datei-Uploads sowie direktes Zeichnen und Aufnehmen im Studio
  • Fertige Spiele können öffentlich geteilt oder privat gehalten werden

GPLv3-Veröffentlichung und Self-Hosting

  • Der Plattformcode, die Spiele und die Website von Homegames sind vollständig unter GPLv3 veröffentlicht
  • Der Code kann gelesen und geforkt werden
  • Die Plattform ist darauf ausgelegt, einschließlich API selbst gehostet werden zu können
  • Die Erhaltung ist berücksichtigt, damit Spiele weiterbestehen können, selbst wenn die Website verschwindet
  • Der Projektcode ist auf GitHub verfügbar
  • Homegames wird seit 2018 größtenteils als Ein-Personen-Side-Project entwickelt

1 Kommentare

 
GN⁺ 3 시간 전
Meinungen auf Hacker News
  • Kaboom Valley hat mich an Gorilla Basic (GORILLA.BAS) erinnert und Kindheitserinnerungen sofort wieder hochkommen lassen; ziemlich nostalgisch.
    Allerdings scheint dieses Spiel nicht spielbar zu sein. Keiner der Buttons funktioniert, und nur der Computer kann Geschosse über meinen Kopf hinweg abfeuern :(

    • Erinnert an Scorched Earth
    • Ich werde es prüfen, beheben und deployen
  • Ich wollte lernen, wie man selbst Spiele baut, und habe nach der Dokumentation gesucht, aber auf der Website keinen Link gesehen.
    Falls es Dokumentation gibt, wäre ein Link auf der Startseite gut. Das Studio verlangt einen Benutzernamen usw., daher habe ich mich nicht eingeloggt; ich wollte erst die Dokumentation lesen, um zu sehen, ob es die Zeit wert ist.

    • Guter Punkt. Ich werde einen Dokumentationslink hinzufügen, der auch außerhalb des Studios sichtbar ist.
      Im Studio gibt es derzeit Beispiele für Game-Node-Typen wie Formen, Text und Assets sowie einen LLM-zentrierten Spiele-Guide, den man in Claude und Ähnliches einfügen kann, um Spiele erstellen zu lassen. Trotzdem werde ich noch mehr Dokumentation außerhalb des Studios ergänzen.
  • Ich konnte kein einziges Spiel spielen und bekam viel zu oft too many requests-Fehler.
    Ich verstehe nicht, warum eine „Session“ nötig ist. Läuft das nicht clientseitig?

    • Ich habe im Beitrag vergessen, es zu erwähnen: Die Spiele selbst laufen auf dem Server.
      Dadurch bekommen alle Spiele standardmäßig Multiplayer gratis dazu, und der Client liest den Serverzustand und sendet nur Eingaben zurück. Die Idee ist, dass man sich auf jede gewünschte Weise mit dem Game-Server verbinden kann, ob per Browser oder Custom Client.
  • Braucht alles eine „Session“? Sind auch komplett statische Spiele oder Exporte möglich?

    • Diese Spiele laufen alle serverseitig, und der Thin Client rendert nur und sendet Eingaben.
      Daher ist eine Game-Session nötig, damit die Roundtrip-Kommunikation funktioniert. Theoretisch könnte man alles clientseitig machen, aber dann wäre die Magie weg, dass jedes Spiel Multiplayer gratis bekommt.
  • Wow! Kannst du ein wenig erzählen, wie die letzten 8 Jahre waren?

    • Am Anfang habe ich mit einfachen Rendering-Tests auf Basis von WebSocket begonnen und später Unterstützung für Bilder, Fonts und Audio hinzugefügt.
      Die ursprüngliche Idee war, Jackbox-artige Spiele zu bauen, die Leute auf ihrem eigenen Computer hosten und im selben Raum per Smartphone über WLAN spielen. Dann kam immer mehr dazu; während der Corona-Zeit habe ich kaum Produktives geschafft, dafür unveröffentlichte Experimente gemacht und über 100 Podcast-Folgen aufgenommen.
      Vor ein paar Jahren bekam ich mein erstes Kind, habe etwa ein Jahr lang den Self-Hosting-Teil verfeinert und wollte das Projekt dann beiseitelegen. Vor ungefähr 6 Monaten wurde mir dann klar, dass das echte Internet inzwischen schnell genug ist, um solche Spiele auch außerhalb des LANs laufen zu lassen, und dass viele Menschen, mich eingeschlossen, browserbasierte Spiele vermissen. Dazu kam, dass Claude es mir ermöglicht hat, in meiner begrenzten freien Zeit viel effizienter zu bauen – das hat zum heutigen Stand geführt.
  • Das Konzept gefällt mir, und ich habe versucht, Sessions zu starten oder beizutreten und ein paar Spiele auszuprobieren, aber entweder passierte nichts oder die Verbindung brach sofort ab.
    Ich baue ebenfalls Webspiele (siehe meine Beitragshistorie); wer sich austauschen möchte, kann mich über die E-Mail in meinem Profil kontaktieren.

    • Tut mir leid. Wegen des Traffic-Spikes von HN hat die Session-Verwaltung wohl nicht standgehalten.
      Das wird künftig besser werden.
  • Erinnert sich noch jemand an das Shoot 'Em Up Construction Kit auf dem Amiga?

    • Das gab es auch für den Commodore 64
    • Es gab auch Amos und Blitz BASIC
  • Webspiele sind über diesen Stil längst weit hinausgewachsen.
    Mit three.js komplexes 3D zu bauen und Rigid-Body-Physik-Engines in Wasm-Workern wie Rapier zu nutzen, ist inzwischen möglich. Auch eine komplette Multiplayer-Pipeline mit Server Authority, Client Prediction und Reconciliation lässt sich mit 60 fps betreiben. Es ist wirklich erstaunlich, wie viel man heutzutage in eine einzelne HTML-Datei hineinpacken kann.

    • Jedes Mal, wenn ich versuche, so ein komplexes 3D-Webspiel zu nutzen, schießen alle 8 Kerne meines Computers auf 100 %, und der Rechner hängt, bis ich den Browser abschieße.
      Es ist wirklich erstaunlich, wie ineffizient solche komplexen 3D-Webspiele sind.
    • Auch wenn wir jetzt 3D können, ist Breakout immer noch ein gutes Spiel
  • Gute Idee. Ich habe hier ein paar interessante Spiele gefunden.
    Cool, dass du über so lange Zeit nicht aufgehört hast, an diesem Projekt zu arbeiten. Das motiviert mich, an meinen eigenen Projekten weiterzumachen, für die ich nie die Zeit finde, sie fertigzustellen.

    • Ich habe vor, noch viel mehr zu bauen. Das meiste davon entstand, bevor es AI-Tools gab.
      Aber jetzt ist es erstaunlich, dass Claude auf einmal ziemlich beeindruckende Dinge erzeugen kann.
  • Nett! Es hat Spaß gemacht, große Kettenexplosionen zu erzeugen