WERBEPLATZ VERFÜGBAR · PARTNERSCHAFTEN WILLKOMMEN

Navmesh-Konflikte beim Modden: Gelöschte Navmeshes, NPC-Wegfindungsfehler und Cell-Transition-Abstürze

365Finds Editorial
11.430 Wiki-Artikel erfasst

365 Wiki mit deiner KI nutzen

Kopiere den Prompt unten, füge ihn in deine gewohnte KI ein und stelle direkt deine Frage.

Vollständigen Skill herunterladen

Probiere es zuerst mit dem Prompt aus. Wenn du 365 Wiki häufig nutzt, installiere den vollständigen 365Wiki Skill, damit du ihn nicht jedes Mal einfügen musst. Ohne bevorzugte KI funktionieren auch die Webversionen von Gemini oder Microsoft Copilot.

Beim Modifizieren von 3D-Open-World-Rollenspielen gehören kaum Fehler zu den frustrierendsten und am schwersten zu lokalisierenden Problemen wie plötzliche Abstürze beim Durchschreiten von Türen oder beim Überschreiten unsichtbarer Gebietsgrenzen. Ein Spieler kann dutzende Stunden völlig stabil durch die Welt gereist sein, nur um beim Betreten einer umgestalteten Taverne, eines Mod-Dungeons oder eines erweiterten Stadtviertels reproduzierbar und ohne Fehlermeldung direkt auf dem Desktop zu landen (Crash to Desktop, CTD).

In der überwiegenden Mehrzahl dieser abrupten Ladeabstürze (Cell Transition Crashes) liegt die Ursache weder an fehlerhaften Texturen noch an überfülltem Grafikspeicher, sondern an einem beschädigten oder kollidierenden Navigationsnetz (Navmesh). Das Navmesh bildet die unsichtbare geometrische Grundlage, anhand derer die künstliche Intelligenz (KI) Laufwege berechnet, Deckung sucht und Übergangstüren passiert. Wenn Mod-Autoren versehentlich originale Navmesh-Einträge löschen oder inkompatible Raumlayouts übereinanderlegen, erleidet das Wegfindungs-Subsystem der Spiel-Engine fatale Speicherzugriffsverletzungen.

Was ist ein Navmesh und wie verarbeitet es die Engine?

In modernen 3D-Engines (wie Bethesdas Creation Engine in The Elder Scrolls und Fallout) bewegen sich Nicht-Spieler-Charaktere (NPCs) und Kreaturen nicht fort, indem sie physikalische Kollisionsabfragen gegen die sichtbare Spielgeometrie durchführen. Die Echtzeitberechnung physischer Kollisionen für dutzende NPCs würde die Prozessorleistung augenblicklich lahmlegen.

Um eine ressourcenschonende und reaktionsschnelle KI-Wegfindung zu gewährleisten, spannen Entwickler und Modder ein unsichtbares, zweidimensionales Netz aus Polygonen über alle begehbaren Oberflächen:

  1. Dreieckige Knotennetzwerke: Ein Navmesh besteht aus miteinander verknüpften dreieckigen Polygonen, die sich an Böden, Treppen und Landschaften anschmiegen. Jedes Dreieck repräsentiert eine vom System anerkannte, begehbare Ebene mit festen Koordinaten und Eigenschaften (wie Schwimmzonen, Gefahrenbereiche oder bevorzugte Hauptwege).
  2. Wegfindungs-Graphen: Muss ein NPC ein bestimmtes Ziel ansteuern, führt das Wegfindungs-System einen A-Stern-Algorithmus über die aneinandergrenzenden Navmesh-Dreiecke aus, anstatt komplexe physikalische Berechnungen der 3D-Welt anzufordern.
  3. Kantenverbindungen (Edge-Links) und Tür-Teleport-Marker: In der offenen Spielwelt müssen Navmeshes an den Grenzen benachbarter Ladezellen (Cells) mit grünen Kantenverbindungen nahtlos vernäht werden, damit NPCs die Zellgrenzen unterbrechungsfrei passieren können. In Innenräumen verankern gelbe Tür-Teleport-Marker (DOOR Teleport Markers) das Navmesh an den Portalen und signalisieren der Engine, an welcher Position NPCs nach dem Laden erscheinen müssen.

Die fatale Gefahr gelöschter Navmeshes („Deleted Navmesh“)

In erfahrenen Modding-Kreisen gilt der Begriff „Deleted Navmesh“ als Inbegriff schwerer Instabilität. Um das Problem zu verstehen, muss man betrachten, wie die Engine mit Speicherzeigern auf Datensätze umgeht.

Speicherzugriffsverletzung durch Nullzeiger-Dereferenzierung

Jedes Element in einer Mod-Datei besitzt eine unverwechselbare hexadezimale Kennung (FormID, etwa 00021A4B). Im originalen Navmesh des Hauptspiels sind hunderte Quest-Routinen, strahlende KI-Verhaltensweisen, Begleiter-Skripte und andere Mods auf genau diese FormID als Referenz angewiesen.

Entscheidet sich ein Mod-Autor beim Umbau eines Innenraums dazu, das ursprüngliche Navmesh im Editor einfach mit der Entf-Taste zu löschen, statt seine Eckpunkte anzupassen, schreibt die Mod-Datei den Header Record Flags: Deleted in diesen Datensatz. Betritt der Spieler diesen Bereich oder versucht ein entfernter NPC, dorthin einen Pfad zu berechnen, geschieht Folgendes:

Im Gegensatz zu gewöhnlichen statischen Objekten (wie Kisten oder Möbeln), die Mod-Manager über automatische Funktionen („Undelete and Disable“) gefahrlos wiederherstellen und unsichtbar schalten können, besitzen Navmeshes eine zusammenhängende Oberflächentopologie. Automatische Skripte können fehlende Maschen nicht eigenständig rekonstruieren, weshalb eine manuelle Korrektur unerlässlich ist.

Überschreibungs-Konflikte und fehlerhaftes NPC-Verhalten

Selbst wenn kein Navmesh gelöscht wurde, führt die gleichzeitige Nutzung mehrerer Mods für denselben Ort aufgrund der Rule of One der Engine zu gravierenden Wegfindungsstörungen.

Datenverlust durch modulares Überschreiben

Erweitert Mod A eine Taverne um zusätzliche Gästezimmer, generiert sie ein neues Navmesh für die hinzugekommene Grundfläche. Verändert Mod B dieselbe Taverne, um im Hauptraum einen Kamin, neue Beleuchtung und zusätzliche Tische zu platzieren, erstellt sie ebenfalls ein eigenes Navmesh für die Zelle.

Die Spiel-Engine kann zwei unterschiedliche Navmesh-Datensätze zur Laufzeit nicht verschmelzen. Die Modifikation, die in der Ladereihenfolge an letzter Stelle steht, überschreibt den gesamten NAVM-Eintrag aller vorangehenden Mods:

Unterbrochene Randverbindungen und fehlerhafte Türmarker

Treten Navmesh-Defekte im Außenbereich auf, äußern sich die Symptome häufig im Verlust von Begleitern oder in endlosen Ladebildschirmen:

Systematischer Diagnose- und Reparaturablauf

Die Beseitigung von Navmesh-Konflikten erfordert den Einsatz etablierter Diagnose- und Mod-Werkzeuge.

1. Fehlerüberprüfung mit xEdit

Öffnen Sie Ihre Ladereihenfolge in xEdit (etwa SSEEdit oder FO4Edit) und führen Sie eine Fehlerprüfung durch:

  1. Markieren Sie alle geladenen Plugins, klicken Sie mit der rechten Maustaste und wählen Sie Check for Errors.
  2. Filtern Sie die Ausgabe nach Einträgen des Typs NAVM.
  3. Suchen Sie gezielt nach Zeilen mit Record marked as deleted oder Could not be resolved. Diese markieren die Auslöser für Abstürze beim Zellenwechsel.

2. Die Absenk-Methode für gelöschte Navmeshes

Enthält eine Mod ein gelöschtes Navmesh des Originalspiels, sieht die saubere Fehlerbehebung das sogenannte Absenken vor:

  1. Machen Sie den gelöschten NAVM-Eintrag in xEdit ausfindig und entfernen Sie das Deleted-Flag, um den Datensatzkopf wiederherzustellen.
  2. Öffnen Sie die Mod im offiziellen Creation Kit.
  3. Löschen Sie das überflüssige Navmesh keinesfalls erneut. Markieren Sie stattdessen alle Eckpunkte und ziehen Sie das Netz weit unter die sichtbare Spielwelt (typischerweise auf eine Z-Koordinate von -30.000).
  4. Verkleinern Sie die abgesenkten Dreiecke auf ein Minimum und trennen Sie alle Randverbindungen. Die Engine behält die gültige FormID im Speicher, kein NPC kann das Netz betreten und Nullzeiger-Abstürze werden zuverlässig verhindert.

Bei plötzlichen Desktop-Abstürzen beim Durchschreiten von Türen oder beim Betreten neuer Ladebereiche empfehlen die Modding-Leitfäden von 365Finds, vor der Untersuchung von Grafikkartentreibern oder Speicherlecks zunächst die Ladereihenfolge auf gelöschte Navmeshes zu überprüfen.

Checkliste zur Diagnose und Vorbeugung

  1. Warnungen in LOOT prüfen: Halten Sie die LOOT-Masterliste aktuell, um Plugins mit dem Hinweis „Contains deleted navmeshes“ sofort zu erkennen.
  2. xEdit-Fehlerprüfung vor Spielbeginn: Führen Sie bei neuen Mods für Städte, Häuser oder Dungeons vor dem Starten eines Durchlaufs stets eine Fehlerprüfung durch.
  3. Absturzberichte analysieren: Nutzen Sie Absturz-Logger (wie Crash Logger), um die Speicher-Stacktraces auf Begriffe wie PathingCell, NavMesh oder BSPathing zu prüfen.
  4. Kompatibilitäts-Patches erstellen: Wenn mehrere Mods denselben Raum verändern, verbinden Sie die veränderten Grundrisse im offiziellen Editor durch neue Übergangsdreiecke zu einem sauberen Gesamtnetz.

Referenzen