Was ist Bonestream?

Bonestream ist eine Coop-Erweiterung für Gothic 2. Mehrere Spieler teilen sich dieselbe Welt, jeder steuert einen eigenen Sub-Helden. Der Server hält die Welt + Hauptheld, Clients verbinden sich und übernehmen ihre Figur. Steuerung und Bild laufen ausschließlich über den Browser. Niemand muss das Spiel installieren oder updaten. Eine lokale Client-Installation ist natürlich auch problemlos machbar.

Basis ist die OpenGothic-Engine (C++/Vulkan, läuft Linux nativ). Darauf gebaut ist ein eigenes Bone-Streaming-Protokoll: der Server schickt Bone-Matrizen aller sichtbaren NPCs ~30× pro Sekunde an die Clients, die rein als Renderer laufen, keine AI, keine Scripts. Eine parallele Script-Schicht (P2) handhabt Coop-spezifische Mechaniken (Dialog, Quest-Log, Trade) ohne Daedalus-State zu doppeln.

Eine Bonestream-Maschine bietet 4 Slots. Jeder Slot kann als Host (eigene Spielwelt) oder Client (Sub-Held in einer fremden Welt) laufen. Pro Host können sich 3 weitere Spieler verbinden — in der Maximalkonfiguration mit 4× Host also 16 Spieler gleichzeitig. Dabei sind dann alle vier Slots der Maschine von eigenen Hosts belegt, sodass die Mitspieler in diesem Fall mit einer lokalen Gothic-Installation joinen statt über den Browser-Stream.

Roadmap

Genesis — Gothic_Zero (April 2026)

11. April"Endlich wieder Gothic" (WoP-Forum)
  • Idee: Coop-Mod auf OpenGothic-Basis
  • Repo Gothic_Zero als Mutter-Worktree
12.–14. AprilErste Multiplayer-Versuche
  • F5/F9 Save-Sync, ENet-Integration
  • Branch gothic-server (Server-Client mit Char-Auswahl)
  • Branch frame-mp (Frame-Alternating-MP)
  • Parallel: Gothic_online in Rust + FlatBuffers (verworfen, 2 Tage nach Start)

Bone-Stream-Phase 1 (16.–18. April)

16. AprilBone-Stream MP Initial
  • NetInterface-Abstraktion, Input-System, FPS-Counter
  • Bone-Streaming-Konzept (event-based NPC-Sync)
  • Char-Selection per Name + frischer Hero-Spawn
17. AprilClient-Driven NPC-Takeover
  • Client übernimmt server-spawned NPC (kein Visual-Only mehr)
  • Mouse-Rotation, Bow/Crossbow, Chest-UI
  • Inventory-Snapshot-Sync, Ammo-HUD
18. AprilDaedalus-Lockdown + P2-Script-Layer
  • External-Policy: Daedalus läuft nicht mehr auf Client-NPCs
  • P2Script-Scaffold — parallele Script-Ebene auf dem Server
  • Dialog-Choices, Quest-Log, Skill-Grant, Trading
  • Quaternion+Translation-Bone-Compression (28 Byte statt 64)
  • Mage-Casting (hold/release), Spell-Slots, Heal/Potion-Hotkeys

P2-Dialog & Trigger (19.–23. April)

19. AprilP2-Dialog + Reserved-Slot
  • Per-NPC Dialog-Trees mit Audio-Keys + Flags (z.B. Xardas-Story)
  • NPC_Samara als reservierter Sub-Held-Slot
  • Player-Light-Perception-Whitelist
20.–21. AprilTrigger-Volumes & COOP_REDESIGN
  • Trigger-Volumes Hero-scoped vom Server an Clients gespiegelt
  • MoveTrigger-State-Replay (Türen/Brücken)
  • COOP_REDESIGN.md: "Player-Light → Shared-World" Pivot-Spec
  • Gate-Guard State-Machine nach Vanilla-Vorbild
22.–23. AprilNPC-Audio & Streaming-Ausbau
  • PKT_NPC_SOUND — synchrones Sound-Pipeline
  • Mob-Arbeits-Sounds, Projectile-Sync, Spell-Hold-VFX
  • Sub-Helden blockieren Welt-Übergänge (isMainHero-Guard)
  • Gate-Guard-Finalrunde: Zonen-Trigger + Input-Block

Web-Streaming (25.–26. April)

25. AprilBrowser-Proxy + Multi-Slot-CLI
  • Multi-Slot-CLI in Tempest gepatcht (-size/-pos/-noframe/-slot N)
  • gothic-web Browser-Proxy: MJPEG + PCM via WebSocket
  • Repo-Restruktur zu Standalone Gothic_Bonestream_v1.1
26. AprilSub-Hero-Roster + Coop-XP
  • GOTHIC.DAT-Compile-Workflow + Build-Skript
  • Co-Op-XP-Share — Hauptheld-Progression spiegelt auf Sub-Helden
  • Sub-Held Combat-Parity (Block, Directional-Attack, Bow-Aim, Finisher)
  • Save-Load-Crash-Fix bei World-Wechsel
  • Disconnect-Cleanup (Sub-Held idled statt despawn)

Lobby, Auth & Minimap (27. April)

27. AprilAuth + Lobby + Per-Slot-Cookie-Check
  • Shared-Secret-Auth via server.ini / client.ini pro Slot
  • Lobby mit Login + Self-Signup (Admin-Approval)
  • Vier Rollen: admin · operator · user · pending
  • Chat mit WebSocket + Slot-Presence
  • Per-Slot-Streamer auth-gated via signiertem Cookie (HMAC)
  • Live-Stream-Übersicht (4er Grid, public sichtbar)
27. AprilMinimap + Recordings + Gallery
  • Position-Snapshot vom Spiel nach /dev/shm
  • Khorinis-Karte mit 2-Punkt-Kalibrierung als Hintergrund
  • Drag & Resize, Zoom 1×–6× zentriert auf eigene Pos
  • Slot-Recording mit NVENC (H.264-HW, fast CPU-frei)
  • Camera-Button → Screenshot in die Gallery
  • Gallery mit Lightbox + Username pro Bild
  • System-Stats-Panel (CPU/GPU temp, RAM, HDD, Cores)

In Arbeit

  • Diese Info-Seite
  • Downloads-Seite — Inhalt noch offen
  • Inventar im Position-Snapshot (Bone-Protokoll-Patch nötig)

Geplant

  • Quest-Marker auf der Minimap (P2-Quest-Spots, Hauptquest-Trigger)
  • NPC-Filter im Minimap-Zahnrad (Pflanzen / Truhen / Feinde)
  • Mehr Welt-Karten (Mining-Tal, Irdorath, Khorinis-Stadt-Detail)
  • Windows-Cross-Compile Phase 1 — Client-Only EXE für native Player

Kontakt

Bonestream ist ein privates Hobby-Projekt. Wir speichern E-Mail- und IP-Adressen, nur von unseren Mitgliedern. Unbearbeitete Registrierungen werden nach 3 Tagen automatisch gelöscht. Bei Fragen, Bug-Reports oder wenn du mitspielen willst: