[Unity-Life] Ab in den Mai !BOX !ig GTA-RP

GTA-RP: Dev-Arbeiten an Fahrzeugen, Basketball-Nostalgie und Knockout-System

Grand Theft Auto V

00:00:00
Grand Theft Auto V

Dev-Kram und Basketball-Nostalgie

00:30:56

Der Stream beginnt mit Dev-Arbeiten an Fahrzeug-Features. Es wird über CPU-Auslastungsprobleme mit der aktuellen Hardware gesprochen, was Überlegungen zu einem Upgrade oder der Nutzung des alten PCs aufwirft. Im weiteren Verlauf teilt der Streamer eine Anekdote aus seiner Kindheit, als er in der dritten Klasse Freikarten für ein Basketball-Finale erhielt. Dieses Erlebnis führte dazu, dass er und sein Vater Dauerkartenbesitzer wurden und er zum Ultra-Fan avancierte, der sogar seine Familie mit in den Bann zog. Sein Vater wurde später Vorsitzender des Fanclubs. Es werden Erinnerungen an Auswärtsfahrten, besondere Spiele und persönliche Begegnungen mit Spielern geteilt, einschließlich gemeinsamer Rouladen-Essen. Der Streamer berichtet, dass er nach dem Abstieg der Mannschaft und dem Verlust des Spaßes ausgestiegen ist, während seine Familie weiterhin dabei blieb. Er erzählt, wie er spontan ein Playoff-Spiel besuchte, was Erinnerungen an frühere Spiele und Stimmungen weckte. Er reflektiert über die Veränderungen im Basketball im Vergleich zu früher, als es noch Poster und Autogrammstunden gab, was er als persönlicher empfand.

Technische Anpassungen und Setup-Überlegungen

00:45:14

Es wird an Hotkeys für Fahrzeugtüren gearbeitet, um die Bedienung zu vereinfachen, insbesondere für Werkstätten. Fragen aus dem Chat werden beantwortet, beispielsweise zur Nutzung von Stream Decks für Hotkeys. Es wird erklärt, wie man alternative Hotkeys über das Stream Deck einrichten kann, um die Anzahl der verfügbaren Befehle zu erweitern. Der Streamer spricht über die Platzierung eines 'Holy Quatsch Schilds' und die Überlegung, das gesamte Setup an eine andere Wand zu verlegen, was jedoch mit einigem Aufwand verbunden wäre. Die Entscheidung hängt davon ab, wie lange er noch in der aktuellen Wohnung bleiben wird. Weiterhin wird ein Skript vorgestellt, das Hotkeys für Fahrzeugtüren bereitstellt, um die Interaktion zu vereinfachen. Es wird erläutert, dass das Skript es ermöglicht, die nächstgelegene Tür zu öffnen, was besonders für Werkstätten nützlich ist.

Entwicklung am Knockout-System

00:51:58

Es werden Anpassungen am Revive-System vorgenommen. Der Streamer erklärt, dass das Last-Knockout-Feature nicht genutzt wird und daher Änderungen notwendig sind, um das System sinnvoll zu gestalten. Es wird ein Knockout-Till-System implementiert, bei dem die Zeit des Knockouts in Sekunden gespeichert wird. Es werden Charakter-Damage-Storm-Funktionen hinzugefügt und der Code angepasst, um die Funktionalität zu gewährleisten. Der Streamer äußert Frustration über das Verständnis des eigenen Codes und die damit verbundenen Herausforderungen. Es wird geprüft, ob die Knockout-Zeit in der Zukunft liegt, um den Status korrekt zu bestimmen. Die Änderungen werden im Dev-Server getestet, um sicherzustellen, dass sie funktionieren. Dabei wird auch das Speichern der Knockout-Zeit beim Reconnect berücksichtigt. Zusätzlich wird ein Problem mit ausgezogenen Westen behoben, das dazu führt, dass Waffen fälschlicherweise an den Items hängen bleiben.

Code-Überarbeitung vs. Neuentwicklung und Hardware-Probleme

01:16:00

Es wird diskutiert, ob es einfacher wäre, den Code von Grund auf neu zu schreiben. Der Streamer erklärt, dass eine komplette Neuentwicklung, beispielsweise von Unity, mindestens ein Jahr dauern würde. Stattdessen werden bestehende Systeme optimiert und erweitert, wie beispielsweise das Inventarsystem. Es wird erläutert, dass die Optimierung des Inventarsystems durch Chris viel Aufwand erfordert hat, aber eine komplette Neuentwicklung unnötig wäre. Der Streamer merkt an, dass er die leichten Lags auf seinem aktuellen PC bemerkt und dass der Knockout nun auch beim Reconnect gespeichert wird. Ein Problem mit ausgezogenen Westen wird angesprochen, bei dem eine Waffe fälschlicherweise an einem Item hängen bleibt. Der Streamer plant, dieses Problem zu beheben. Es wird überlegt, ob ein Threadripper-System eine Option wäre, aber die hohen Kosten werden diskutiert. Der Unterschied zwischen Consumer-CPUs und Threadripper-Systemen wird erklärt, insbesondere die Anzahl der Kerne und Lanes. Der Streamer erläutert, dass Threadripper-Systeme mehr Lanes bieten, was für bestimmte Anwendungen wie Videobearbeitung und das Anschließen mehrerer Grafikkarten nützlich ist.

Fahrzeugreparatur-Menü und Download-Probleme

01:49:57

Es wird festgestellt, dass das Fahrzeugreparatur-Menü fälschlicherweise angezeigt wird, auch wenn keine Rechte zum Reparieren vorhanden sind. Dies wird als Fehler identifiziert und für den nächsten Patch zur Behebung notiert. Es wird über Download-Probleme gesprochen, die durch den Download vom Server direkt und nicht über einen schnelleren Download-Server verursacht werden. Der Streamer erklärt, dass OldWi die Möglichkeit bietet, Dateien über Cloudflare schneller herunterzuladen, was bei 5M leider nicht unterstützt wird. Nach dem Checken funktioniert das Menü jetzt perfekt. Es wird festgestellt, dass ein Fehler vorliegt, weil der Streamer vergessen hat, eine Requirement zu löschen, was zu Problemen führt. Der Streamer äußert Frustration darüber und kündigt an, den Spaß noch einmal zu machen.

Windows 11 Probleme und Hardware-Überlegungen

01:58:10

Es wird über Performance-Probleme bei Anjas Spiel gesprochen, und die Vermutung geäußert, dass Windows 11 die Ursache sein könnte. Es wird geplant, Windows 11 neu zu installieren und zu testen, ob die Lags weiterhin bestehen. Wenn das Problem weiterhin besteht, wird Windows 10 getestet, um festzustellen, ob es an der Hardware liegt. Der Streamer äußert die Sorge, dass die CPU oder das Mainboard defekt sein könnten. Es wird erneut überlegt, auf ein Threadripper-System umzusteigen, aber die hohen Kosten werden erneut diskutiert. Der Streamer erklärt, dass Threadripper-Systeme mehr Lanes bieten, was für bestimmte Anwendungen wie Videobearbeitung und das Anschließen mehrerer Grafikkarten nützlich ist. Es wird über ein neues Mainboard gesprochen, das bestellt wurde, um ein Qualitätsproblem mit dem aktuellen Board zu beheben. Der Streamer äußert Frustration über Qualitätssicherungsprobleme bei MSI-Produkten. Es wird in Erwägung gezogen, alle neuen PC-Komponenten zurückzuschicken und den alten PC weiter zu nutzen, bis die neue Threadripper-Serie von AMD angekündigt wird.

Fehlerbehebung bei Fahrzeug-Hotkeys

02:11:11

Es wird versucht, das Problem mit den Fahrzeug-Hotkeys zu beheben, insbesondere die Funktion für die nächstgelegene Tür. Der Streamer stellt fest, dass die Funktion nicht richtig funktioniert und beginnt mit der Fehlersuche. Es wird festgestellt, dass die Distance und Nearby Door Null sind, was bedeutet, dass das System den nächsten Bone nicht findet. Der Code wird überprüft und angepasst, um sicherzustellen, dass die nächste Distanz korrekt berechnet wird. Es werden die Door Sides überprüft und festgestellt, dass einige Bezeichnungen falsch sind. Der Streamer ändert die Bezeichnungen für Motorhaube und Kofferraum, um sie verständlicher zu machen. Es wird festgestellt, dass die englischen Bezeichnungen Boot und Bonet verwendet werden, was zu Verwirrung führt. Der Streamer erklärt, dass Boot im britischen Englisch für Kofferraum verwendet wird, während Trunk im amerikanischen Englisch verwendet wird. Da GTA in den USA spielt, sollte Trunk verwendet werden. Es wird diskutiert, warum der Entwickler britisches Englisch verwendet hat. Die Änderungen werden auf dem Dev-Server getestet, um sicherzustellen, dass sie funktionieren.

Funktionstest und abschließende Anpassungen

02:28:27

Es wird ein Funktionstest durchgeführt, um sicherzustellen, dass die Fahrzeug-Hotkeys korrekt funktionieren. Es wird festgestellt, dass die Hotkeys für einige Türen funktionieren, aber nicht für alle. Der Streamer testet verschiedene Fahrzeuge, um das Problem zu isolieren. Es wird festgestellt, dass die Motorhaube und der Kofferraum nicht korrekt erkannt werden. Der Streamer vermutet, dass das Problem mit der Positionierung der Bones im Spiel zusammenhängt. Es wird festgestellt, dass die Bones für Motorhaube und Kofferraum anscheinend in der Mitte des Fahrzeugs sitzen, was zu falschen Berechnungen führt. Es wird ein Zweitürer-Fahrzeug getestet, aber festgestellt, dass diese generell verbuggt sind. Es wird ein viertüriges Fahrzeug (Winzor) getestet, um das Problem weiter einzugrenzen. Der Streamer überlegt, ob er Kofferraum und Dingens verwechselt hat, kommt aber zu dem Schluss, dass dies nicht der Fall ist. Es wird festgestellt, dass die Motorhaube in der Mitte des Fahrzeugs sitzt, was nicht korrekt ist. Trotz der Probleme funktioniert das Radio. Der Streamer schließt daraus, dass es besser funktioniert als erwartet.

Entwicklung eines Hotkeys zum Öffnen von Fahrzeugtüren

02:33:04

Es wird an einem Hotkey gearbeitet, der das Öffnen von Fahrzeugtüren erleichtern soll. Der Hotkey soll die Türen des Fahrzeugs öffnen, in dem sich der Spieler befindet, oder die nächste Tür, wenn der Spieler vor dem Fahrzeug steht. Es gibt separate Hotkeys für einzelne Türen wie Motorhaube und Kofferraum. Die Berechnung, welche Tür geöffnet werden soll, ist jedoch komplex und führt zu Problemen, da die Bones der Fahrzeuge manchmal fehlerhaft berechnet werden. Im britischen Englisch wird der Kofferraum als 'Boot' und die Motorhaube als 'Bonnet' bezeichnet, was die Suche nach den richtigen Bones erschwert. Es gibt über 452 Fahrzeuge im Spiel, was die Fehlersuche zusätzlich kompliziert macht. Die Bones der Fahrzeuge sind möglicherweise nicht korrekt gesetzt, was zu Problemen bei der Distanzberechnung führt. Es wird überlegt, die Reifen als Position zur Ermittlung der nächsten Tür zu verwenden, was aber als unschön empfunden wird. Der Streamer greift auf einen Dev-Server zu, um die Bones der Fahrzeuge anzusehen und ein korrektes Fahrzeugmodell zu finden, um die Fehler zu beheben. Es wird ein Skript von einem anderen Entwickler analysiert, um zu verstehen, wie dieser die Kofferraum- und Motorhaubenöffnung realisiert hat. Die Prüfung, ob eine Tür geöffnet werden kann, beinhaltet eine Funktion namens 'kein Interact'. Die Position der Bones wird visualisiert, um die Fehlerquelle zu finden. Die Entwicklung gestaltet sich schwierig und frustrierend, da die Festplatte für lokale Tests fehlt und Änderungen jedes Mal hochgeladen werden müssen.

Probleme bei der Schadenberechnung und Lösung durch Chris

02:54:34

Es gab Probleme bei der Berechnung des Schadens beim Tod eines Spielers, insbesondere ob ein Körperteil über 500 Schaden erlitten hat, um einen langen Knockout auszulösen. Das Problem war, dass beim Tod nur die letzte Schadensquelle bekannt war und nicht das betroffene Körperteil. Eine Tuple mit der Wound Location und der Damage Source wurde am Spieler Scope gespeichert, um die Daten korrekt zu erfassen. Es kam jedoch zu Fehlern, bei denen die Scope Value sich veränderte. Der Einsatz von Locks brachte keine Lösung. Chris gab den Hinweis, den Scope erst beim OnSuccess auf Null zu setzen. Letztendlich wurde das Problem gelöst, indem keine Scope Value verwendet wurde, sondern ein Bool am Spielerinterface gesetzt wurde. Die Knockout-Zeit wird nun beim Knockout berechnet und am Spieler gespeichert, um auch bei Disconnects und Reconnects korrekt zu funktionieren. Ein Neustart des Servers wird ignoriert, da die Knockout-Zeit meistens abgelaufen ist. Die Datenbank könnte ebenfalls zur Speicherung des letzten Schadens verwendet werden. Es wird vermutet, dass das Problem durch weiteren Schaden nach dem Tod verursacht wird, was durch die Scope Value verhindert werden soll. Diese soll verhindern, dass ein Wert geändert wird, der bereits von einem anderen Event geändert wurde. Es wird diskutiert, wie weitere Damage Events nach dem Knockout verhindert werden können, indem der Charakterstatus Health auf 0 gesetzt wird.

Analyse der Fahrzeug-Bones und deren Inkonsistenzen

03:00:21

Die Analyse der Fahrzeug-Bones zeigt, dass es Inkonsistenzen gibt. Die Fahrertür (Bone 52) und die Tür hinter der Fahrertür (Bone 53) sind korrekt gesetzt, aber der Kofferraum (Bone 22) und die Beifahrertür (Bone 56) sind fehlerhaft platziert. Die Beifahrertür befindet sich am Kofferraum, und die hintere Beifahrertür ist an der aktuellen Position des Spielers. Diese fehlerhafte Anordnung erklärt, warum die Logik zur Türöffnung nicht korrekt funktioniert. Die Seed-Bones sind korrekt, aber die Tür-Bones sind fehlerhaft. Es wird diskutiert, dass diese Scoped Values Duping verhindern sollen, indem geprüft wird, ob der Wert vor und nach einem Event derselbe ist. Ein weiteres Damage Event könnte den Last Hit überschreiben, während der Spieler bereits stirbt. Die Bones sind bei verschiedenen Fahrzeugen unterschiedlich angeordnet, was die Entwicklung erschwert. Es wird vermutet, dass ein Bone nur ein Punkt ist und keine Boundingbox hat. Die Position des Fahrzeugmittelpunkts beeinflusst die Berechnung der Nähe zu den Türen. Die Beifahrertür öffnet sich nicht, weil der Beifahrertür-Bone auf dem Fahrertür-Bone liegt. Es wird vermutet, dass dies Auswirkungen auf Crashes oder die Performance haben könnte. Es wird angemerkt, dass einige Bones möglicherweise nicht korrekt sind und dass dies erst mit neueren GTA-Versionen behoben wurde.

Dev-Cram und Multiplikatoren für den Stream

03:19:03

Aufgrund des intensiven Dev-Crams, der viel Zeit in Anspruch nimmt, werden die Belohnungen für den restlichen Stream verdoppelt. Dies betrifft auch Spenden, die nun vervierfacht werden. Es gab bedeutende Änderungen am Inventarsystem durch Chris, insbesondere bei der Datenübertragung von der Datenbank, was zu einer erheblichen Beschleunigung geführt hat. Es wird diskutiert, wie man verhindern kann, dass Spieler durch leichte Schäden unnötig lange Knockout-Timer erhalten. Die Idee, den Knockout-Timer auf 10 Minuten zu erhöhen, wird in Betracht gezogen, um den Sanitätern mehr Zeit zu geben, zu reagieren. Ein neues Mainboard wurde gekauft, da das alte Probleme mit den Lanes und dem LAN-Adapter hatte. Der dritte PCI-Slot des alten Boards war mit nur zwei Lanes angebunden, was die Grafikkarte limitierte. Der LAN-Treiber des alten Boards war problematisch zu installieren und stürzte ständig ab. Es wird ein zweites Board von MSI bestellt, obwohl in der Vergangenheit bereits Probleme mit der Qualitätssicherung aufgetreten sind. Die Bones für Neon Front sind korrekt angeordnet. Die Türgriffe scheinen immer an der richtigen Stelle zu sein, was zur Identifizierung genutzt werden könnte. Es wird geprüft, ob der Motorblock immer an der richtigen Position ist. Windows 11 wurde einem Benutzer aufgezwungen, obwohl TPM 2.0 nicht aktiviert war. Es wird diskutiert, wie Windows 10-Benutzer dazu gedrängt werden, auf Windows 11 zu aktualisieren.