Seite 2 von 2

Re: Schleichspiel

Verfasst: 11.06.2025, 11:04
von TomasRiker
Jonathan hat geschrieben: 11.06.2025, 10:49 andererseits ist es IMO für den Nutzer angenehmer, wenn ein kurzer Hänger durch eine Nutzerinteraktion ausgelöst wird und nicht durch einen Hintergrundprozess. Aber die Straße könnte halt auch erst mit kurzer Verzögerung erscheinen, ist ja kein Ballerspiel hier...
Zeig doch einen Fortschrittsindikator an. Dann weiß man, dass sich im Hintergrund was tut, aber das Spiel bleibt trotzdem bedienbar.

Re: Schleichspiel

Verfasst: 11.06.2025, 11:24
von Schrompf
Ich wollte nur kurz anmerken, dass hier nirgends eine Frage kam, wie man PathFinding implementieren könnte :) Das war ab Werk ein gelöstes Problem.

Trotzdem Danke für die verschiedenen Ansätze. Ich hatte ursprünglich erwogen, den A* direkt auf den Boden-Polys auszuführen, wie das glaube ich joeydee vorgeschlagen hat, aber da wusste ich nicht so richtig, wie ich den Mindestabstand zu Wänden implementieren sollte. Wenn der Abstand klein genug ist, kriegt man den simpel in den Kanten zu Nachbarn kodiert, aber wenn der Abstand größer als ein ganzes Poly werden kann (und das kann er), dann würde man da mit CSG anfangen... puh, nein. Und die Integration von Kollisionsobjekten wie Schränken und Bäumen wär halt knifflig geworden.

Inzwischen hätte ich auch dafür auch ne Idee, aber mei... es geht halt auch jetzt schon. Nochmal auf komplett neue Füße stellen tu ich das nur, wenn es zwingende Gründe gibt. Und die sehe ich gerade nicht. Ich könnte die Auflösung halbieren, 25cm-Grid würde immer noch für alles reichen, und ich könnte mit der Optimierung der NextStep-Queue vom A* nochmal ~3x rausholen, und das sind genug Optionen für alle Lebenslagen.

Re: Schleichspiel

Verfasst: 11.06.2025, 15:17
von scheichs
Schrompf hat geschrieben: 10.06.2025, 12:49 Klingt, als hättest Du auch Erfahrungen damit gesammelt? Wie lief's bei Dir?
Ich hab weiter oben 'was Unwahres geschrieben: Natürlich habe ich Erfahrung damit. Unity hat Recast/Detour ja integriert. :) Also ja, da läuft es gut, auch wenn ich es bisher selten benutzt hab. Glaub mal für meinen Valheim Clone.

Re: Schleichspiel

Verfasst: 22.06.2025, 22:35
von Schrompf
Bodenmaterial-Gewichtung und Pfadkürzung gehen jetzt, und NPCs benutzen die Pfade. Jetzt muss ich mal die Augen offen halten, ob sie überall hinkommen, wo sie hin sollen.
schleichklau_pfadkuerzung.png

Re: Schleichspiel

Verfasst: 16.07.2025, 22:35
von Schrompf
Pfadsuche bleibt weiter ein spannendes Thema: da gibt's Stress mit unerreichbaren Zielen, oder der NSC ist zu nah an der Wand und damit auf einem Pfadsuche-Feld, wo er mit seinem Mindestabstand zur Wand eigentlich nicht hingekommen sein dürfte... naja.

Immerhin habe ich jetzt einen Grund für ein Pfad-Ziel in der Wand beseitigt: die Suche, wenn ein NSC die Agentin entdeckt hat. Man kann sich dann im hohen Gras ja wieder wegducken, und dann läuft die Wache stattdessen zur letzten bekannten Position. Und von da aus sucht sie dann die Umgebung ab.

Bisher war diese Umgebungssuche einfach ein "4m - 6m in eine zufällige Richtung und rumgucken". Und das hat leider gern dafür gesorgt, dass die Wache vor ne Wand läuft und dann die Krümel in der Rauhfasertapete sucht - das sieht nicht aus. Wär doch viel geiler, wenn sie gezielt Übergänge in Nachbarräume ansteuern würde! Aber wie erkenne ich die?

Dafür habe ich jetzt eine Lösung implementiert. Die Suche geht rekursiv durch die Flächen vom Suchzentrum aus. Zum Einen markiert sie in einer gewissen Entfernung die Flächen als potentielle Umschau-Stellen, zum Anderen markiert sie die Kanten, an denen die Agentin durchkommen könnte, der NSC aber nicht. Letzteres sind dann halbhohe Schwellen wie z.B. Fenster. Leider aber nicht nur, der halbhohe "Schreibtisch" im Nebenzimmer wird auch für ein Fenster gehalten.

Das Bild zeigt die Debug-Anzeige einer Suche im Editor. Die weiße Säule ist das Suchzentrum, da liegt zum Beispiel die Leiche. Die blauen Säulen sind Zielpositionen zum Umschauen, ich filter da ein bisschen, dass die nicht zu dicht liegen. Man sieht schön oben im Bild, wie das rekursive Ausbreiten von Fläche zu Fläche dann auch einen Punkt in den Korridor gesetzt hat, so dass die Wachen dann hoffentlich auch durch Türen in die Nachbarräume gehen und da mal reinschauen. Und dann gibt's die Fenster, mit Richtung zum Rausgucken, weil die Agentin da rausgeklettert sein könnte. Im Aggro-Zustand können die NSCs ihr da folgen, bei der Umfeldsuche schaffen sie die Schwelle nicht.
screenshot0005.png
Jetzt noch bissl feintunen und tatsächlich im Spiel verwenden, dann auf zum nächsten Thema.