CollectableFeedbacks

  • Hat jemand Modding-Erfahrung mit diesen Objekten?

    Sie scheinen ziemlich biestig zu sein: :evil:
    - Beim Spawnen werden die Vorgaben mit "MinObjectDistance" und "MaxObjectDistance" ziemlich großzügig interpretiert, teilweise mit Limitabweichungen von mehr als 10 Kacheln.

    - Wenn mit "ActionMoveObject" mehrere gleichzeitig zum gleichen Ziel bewegt werden, ballen sie sich häufig auf einer einzigen Kachel zusammen. Außerdem kann es vorkommen, dass sie Ziele auf ihrer eigenen Insel verschmähen, stattdessen in Richtung Nachbarinsel (mit gleichem Zielobjekt)losstürmen und folgerichtig auf einer Küstenklippe steckenbleiben (immerhin ohne Lemmingabsprung).

    - Die Property "PickupCursor" scheint vom Spiel völlig ignoriert zu werden; statt der damit vorgegebenen Grafik wird stets die Default-Grabschhand beibehalten.

    Daher nochmals die Frage: Kennt jemand Lösungen?

    Nachtrag - noch eine Merkwürdigkeit:
    Wenn diese "Biester" (konkret: marodierende Wasserbüffel) eine Brücke passieren, nehmen sie nicht den Weg über die Brücke, sondern stürzen sich durch die Brücke hindurch in den Fluss und brechen am anderen Ufer wieder durch die Brücke nach oben.

    Make love not software!

    Edited once, last by Tisogno (October 16, 2024 at 6:53 PM).

  • ActionMoveObject: Entweder die Targets besitzen einmalige Guids (z.B. ein 3rd Party Leuchtturm) oder sie haben Labels (vorgegebene Texte). Andernfalls ist das Ziel je nach Spielfortschritt ggf. nicht eindeutig bestimmt und es kommt zu dem von dir beschriebenen Verhalten. Als potenzielle (!) Lösung könnte ein zusätzliches SpawnObject am Zielort in Frage kommen, auf das du dann in ActionMoveObject referenzierst. Der SpawnArea dieses zweiten Objekts gibst du LimitToQuestArea = 1 mit, sodass das Zielobjekt nur auf derjenigen Insel gespawnt wird, auf der die Quest gestartet bzw. deine Wasserbüffel gespawnt wurden.

    MaxObjectDistance: Hast du dazu bereits DistanceToContext probiert?

    9 3/4 Verhalten: Versuch mal die Wasserbüffel als TrafficFeedbackUnit neu zu definieren; ich vermute als LandAnimal sind denen Straßen ziemlich egal. Edit: Wobei, du hast es ja als CollectableFeedback... dann versuch mal andere MeshPlacement Enums.

    Edited once, last by lion_053 (October 17, 2024 at 9:19 PM).

  • Danke für Deine Antworten! :)

    ad ActionMoveObject
    Mein Problem wurzelt tiefer und beginnt schon beim Spawnen. Die Spawn-Action soll als Reaktion erfolgen auf das Anklicken eines bestimmten Objekts, definiert im zugehörigen "OnSelection"-Block.
    Leider gelingt es mir partout nicht, die ausgelösten Aktionen irgendwie mit dem angeklickten Objekt zu verknüpfen, noch nicht mal mit der betreffenden Insel. Es klappt weder direkt unter "OnSelection" noch mit Quests, egal ob mit oder ohne "LimitToQuestArea = 1 ". Selbst Serps geniale Helper-Dummys haben hier nicht geholfen.
    Die Move-Probleme sind dann eher ein Folgeeffekt, und weil ich weder Klickobjekt noch Klickinsel bestimmen kann, zielt auch ein zusätzliches Spawn-Objekt ins Leere. :(
    Inzwischen begnüge ich mich damit, die ganzen Vieher nur noch in Taborime (= die einzige Insel, die man in Enbesa direkt adressieren kann) zu spawnen und herumstreunen zu lassen.

    ad Distance
    Was genau sind eigentlich die Funktionen von "Min-/MaxObjectDistance" einerseits und "DistanceToContext" andererseits, bzw. worin liegt der Unterschied?
    Bestimmt das Min/Max-Gespann den Abstand der Spawn-Objekte untereinander?
    (Aus mangelnder Kenntnis verwende ich für "DistanceToContext" stets den Mittelwert der beiden anderen Values.)

    ad Gleis 9 3/4 Effekt  ^^
    Inzwischen habe ich alle "MeshPlacement"-Enums (ohne die Wasservarianten) durchprobiert, leider ohne Wunschresultat. Für die Brücken würde "default" noch am ehesten passen, allerdings findet dann überhaupt keine Geländeanpassung mehr statt, sodass die Büffel immer auf der gleichen Höhe verharren (mal schwebend, mal tauchend, ..).
    Nicht mal "PathPlannerLayer = Street" (im "Walking"-Container) greift: Zwar trampeln sie dann nur noch auf Straßen herum, die Brücken jedoch begaffen sie weiterhin nur von unten.
    Noch nicht getestet habe ich das Landspy-Template, weil man die Spione nicht löschen kann ohne nervige Bestätigungsrückfragen.

    Naja, vlt. muss ich mich mit diesen Schönheitsfehlern einfach abfinden...:/

    Make love not software!

  • Es klappt weder direkt unter "OnSelection" noch mit Quests, egal ob mit oder ohne "LimitToQuestArea = 1 ". Selbst Serps geniale Helper-Dummys haben hier nicht geholfen.

    OnSelection ist tatsächlich nicht dafür gedacht, komplexere Aktionsketten in Gang zu setzen. Die schönen Dinge funktionieren meistens nur innerhalb von Quests. Mittels PreConditionList kannst du schon ziemlich genau bestimmen auf welcher Insel in Enbesa die Quest starten soll. Also bspw. mittels ConditionObjectSelected sollte die Quest auf derjenigen Insel starten auf der du das gewünschte Asset angewählt hast (ConditionMutualAreaInSubconditions sorgt dafür, dass alle PreConditions auf der selben Insel wahr sein müssen). Sobald die Quest aktiv ist, kann man alle weiteren Aktionen an die nun feststehende QuestArea binden.

    Die Frage ist: Wie löst du deine Quest aus? Falls über Trigger (bzw. OnSelection) wird die PreConditionList ignoriert. Ein Auslösen über einen QuestPool wäre die einfachste und zuverlässigste Methode.

    Was genau sind eigentlich die Funktionen von "Min-/MaxObjectDistance" einerseits und "DistanceToContext" andererseits, bzw. worin liegt der Unterschied?

    Keine Ahnung, trial & error würde ich sagen :D Ich weiß nur, dass man den Abstand exakt bestimmen kann, wenn man dem Objekt selbst einen Marker (quest_spawn_0) in die .ifo setzt und über ContextMarkerName in der assets.xml addressiert.

  • Meine Quest habe ich aus OnSelection heraus gestartet, hat nicht funktioniert - anscheinend wird dabei die Area nicht vererbt.
    Aber besten Dank für Deinen Hinweis auf "ConditionObjectSelected"! :thumbup:
    Diese Condition hatte ich überhaupt nicht auf dem Schirm. Mein nächstes Experiment wird nun sein, darauf basierend eine Quest zu basteln und via QuestPool zu starten.

    Auch der Tipp mit "ContextMarkerName" klingt vielversprechend.

    Inzwischen habe ich auch mal etwas Nützliches rund um meine CollectableFeedbacks entdeckt: Man kann sie mit einem DefaultBuff ausstatten, dessen Wirkungskreis den Spawn-Ort als Mittelpunkt hat. 8)
    (Noch cooler wäre es natürlich, wenn die Buff-Range mobil wäre, also wenn sich die Wirkungszone mit den Objekten umherbewegen würde.)

    Make love not software!

    Edited once, last by Tisogno (October 23, 2024 at 7:07 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!