- Die 2023 neu veröffentlichte Version von Quake II führt eine neue API für die Kommunikation zwischen Server und Spielmodulen, ein neues Netzwerkprotokoll sowie ein „Client-Game“-Modul für verbesserte Modding-Möglichkeiten ein.
- Die aktualisierte Codebasis führt die getrennten Spielmodule des Originalspiels zusammen und erfordert einen C++17-Compiler.
- Die Spiel-DLL ist mit Clang, VS2019 und VS2022 kompatibel und kann sowohl mit C++17 als auch mit C++20 kompiliert werden.
- Die Neuveröffentlichung unterstützt eine Tickrate von 40 Hz und bietet damit gegenüber den ursprünglichen 10 Hz ein besseres Spielerlebnis und mehr Präzision.
- Die Spiel-DLL verwendet in Funktionen nun keine Varargs mehr und überträgt die Verantwortung für die Formatierung an den Aufrufer.
- Die Neuveröffentlichung enthält Änderungen an mathematischen Funktionen, um die Arbeit zu erleichtern, nutzt
constexpr, wo sinnvoll, und verwendet Operatorüberladung.
- Zu den Änderungen daran, wie festgestellt wird, ob eine Entity für den Client in einem Frame sichtbar ist, gehören Split-Screen-Unterstützung und Sound-Attenuation-Culling.
- Die Neuveröffentlichung bietet erweiterte Modding-Möglichkeiten, aufgrund größerer Strukturänderungen müssen bestehende Mods jedoch möglicherweise für die neue Codebasis neu geschrieben werden.
- Die Spielerbewegung wurde angepasst, sodass Spielmodule die Physik verändern können und dennoch mit Client Prediction funktionieren.
- Configstrings wurden aktualisiert: Die maximale Länge wurde von 64 auf 96 erhöht, und bestimmte Bereiche können sich nun über mehrere Zeilen erstrecken.
- Die Neuveröffentlichung enthält Änderungen an Strukturen, fügt
svflags neue Flags hinzu und ändert effects_t von uint32_t zu uint64_t, um mehr Effekte darstellen zu können.
- Um zu verhindern, dass derselbe Effekt mehrfach an Split-Screen-Spieler gesendet wird, wurde ein neuer Parameter
_key eingeführt.
- Das Speichersystem schreibt Level- und Spieldaten nun in UTF-8-JSON, damit Entwickler sie leichter durchsuchen können.
- Das Speichersystem interagiert nicht mehr direkt mit dem Dateisystem, und andere Mods müssen nicht zwingend JSON verwenden.
- Das Quake-II-Serverprotokoll wurde aktualisiert, einschließlich der Entfernung von Out-of-Band-Challenges, Änderungen an Verbindungsnachrichten und verschiedener Updates für
svc-Pakete.
- Der Text bietet eine ausführliche Erklärung verschiedener Server-Client-Interaktionen, wie unterschiedliche Datentypen aus Bitstreams gelesen werden und wie bestimmte Flags und Schlüssel in Daten verarbeitet werden.
- Der Text erläutert außerdem die Funktionen verschiedener Server-Client-Pakete wie
svc_waitingforplayers, svc_bot_chat, svc_poi, svc_help_path und svc_achievement sowie, wie ihre Daten gelesen werden.
- Das Paket
clc_stringcmd wird verwendet, um String-Befehle vom Client an den Server zu lesen.
- Der Text beschreibt außerdem, wie Sonderfälle behandelt werden, etwa wenn für einen POI ein von 0 verschiedener Schlüssel angegeben wird oder wenn die Zeit eines POI auf
0xFFFF oder 0 gesetzt ist.
1 Kommentare
Hacker-News-Kommentare
_tzu versehen