Äh, ne, nicht so ohne weiteres ^^°.Zitat
Das Problem bei einem solchen System ist die Willkürlichkeit des Spielers. Stellen wir uns vor ein Bauer kommt um 8:00 Uhr aus seinem Haus und soll um 8:10 bei seiner Arbeitsstelle sein, welche auf der anderen Seite der Map liegt. Sollte sich der Held um 8:00 Uhr auf der Map befinden ist dies kein Problem. Das zugehörige Event callt den Bauern, dieser läuft los. Nur was ist, wenn der Spieler um 8:05 Uhr auf die Map kommt? Sollte der Bauer dann einfach schon da sein oder erst dann loslaufen? Beides ist nicht wirklich realistisch. Die erste Möglichkeit nimmt einem fast völlig die Möglichkeit den Menschen bei ihren Aktionen zuzusehen (sobald sie die Map wechseln sind sie für einen weg, da man es kaum in der selben Sekunde schaffen wird auf die andere Map zu wechseln (wenn ich davon ausgehe das eine Minute im Spiel eine Sekunde in der Wirklichkeit ist und der Code Minuten genau ausgelesen wird). Die zweite Variante könnte zu unschönen Dingen führen wie, dass fast alle Personen in einem Dorf auf einmal loslaufen sobald der Held die Map betritt.
Will man beide Varianten nicht haben fällt mir keine andere Möglichkeit ein als die Koordinaten über ein PP aller NPCs auf der Welt zu steuern. Sollte dann ein NPC z.B. mehr als 3 Felder von seiner durch das PP vorgegebenen Idealposition stehen würde er sich dorthin teleportieren, ansonsten greift ein einfaches Pathfinding System (ähnlich dem im "Hintereinanderlaufen Skript"). An sowas hatte ich mich mal probiert, bin aber nicht weit gekommen da ich keine Lust mehr hatte. Das größte Problem dabei ist nämlich, das man eine Person nicht mehr über die Route steuern kann, sondern für jeden Schritt (ca. 200 pro Tag) eine Variablenänderung durchführen muss. Man müsste eben mal sehen ob man das so umsetzten kann, jedoch zweifel ich daran, ob dies mit der Performance vereinbar ist, wenn man über 200 NPCs hat (also jede Sekunde rund 800 Variablen umgestellt werden müssen (X- und Y-Koordinate und Zustand (Bewegungsgeschwindigkeit, Facerichtung, Animation, Sound der abgespielt werden soll (sollte man über die NPCs selber regeln (z.B. das öffnen einer Tür)), etc.)).
Zum Master-System:
Joa, das wäre dann schon eher möglich, wobei ich daran zweifle ob das dann gut rüberkommt, wenn alle Bauern einfach durch das Dorf marschieren und die Tiere streicheln ^^°. Dann wäre es vielleicht sinnvoller eine Welt zu schaffen in der die Bauern separiert leben (also in einem extra Stadtteil), wo dann auch Ställe und Felder sind, auf denen sie sich vergnügen können...
Ein anderes System:
Um die Bewegung von NPCs einigermaßen vernünftig zu gestalten (wie in deinem Master-System), würde ich eine Abfrage für jeden NPC empfehlen, die nachschaut ob der Held den NPC sehen kann. Sollte er nun zu seiner Arbeit müssen wartet er einfach so lange bis der Held weder den Zielort noch ihn selbst sehen kann und teleportiert sich dann dort hin. Es ist zwar nicht die eleganteste Lösung, da so niemand geschäftig durch die Stadt läuft, dafür fällt aber das Pathfinding gänzlich weg (was ein großer Vorteil ist). Außerdem hat man immer noch das Gefühl, dass die Stadt belebt sei, da je nach Uhrzeit alle NPCs wo anders vorzufinden sind. Hat man dann auch noch genügend Animationen ist es umso besser.






). Außerdem hat man immer noch das Gefühl, dass die Stadt belebt sei, da je nach Uhrzeit alle NPCs wo anders vorzufinden sind. Hat man dann auch noch genügend Animationen ist es umso besser.
Zitieren