[Modding] Tweak: Original-NPCs als 7. Partymitglied?

Dieses Thema im Forum "Modding Forum" wurde erstellt von Acifer, 2. Mai 2020.

  1. Acifer

    Acifer Senior Member

    Registriert seit:
    Apr. 2019
    Beiträge:
    763
    Zustimmungen:
    52
    Gibt es eigentlich einen Tweak, der die Original-NPCs als 7. Partymitglieder verfügbar macht? Irgendwie finde ich es gemein, dass sich immer nur die gleichen (z.B. Brandock) hintenanstellen müssen. Ob das technisch überhaupt durchführbar ist, auch z.B. wegen des Limits bezüglich des „Fog of war“, weiß ich nicht.
    Ausprobieren, falls eine solche Modifikation vorhanden wäre, würde ich es allemal.
     
  2. Jastey

    Jastey Matron Modderholic

    Registriert seit:
    Mai 2004
    Beiträge:
    7.767
    Zustimmungen:
    185
    Das ist leider nicht ganz so trivial. Nur schnell umrissen:

    -sämtliche Dialoge und Interjections überprüfen, ob ein NPC in der Gruppe ist (InParty()) - was das 7. Gruppenmitglied technisch gesehen nicht mehr ist. Es würden also keine Dialoge triggern und seine Anwesenheit nicht erkannt werden, außer die Trigger werden angepasst. - das dürfte recht komplex sein, hier alle Instanzen in allen Skripts und Dialogen des Spiels festzustellen, wenn auch technisch nicht unmöglich.
    -Wenn Du den NPC aus der Gruppe wirfst - was man de facto tut, wenn er 7. Gruppenmitglied ist, auch wenn er dann FAMILIAR-Status bekommt - ist sein aktiver Dialog nicht mehr der Joined sondern der Kickout (P)-Dialog. Das muss entsprechend per Skript zurück auf den J.dlg gesetzt werden, sonst kann der HC die Dialoge gar nicht von sich geben.
    -Man braucht eine Option, ihn in den 7. Gruppenmitgliedsmodus wechseln zu lassen, nachdem man ihn rausgeschmissen hat (im Kickout-Dialog), und eine Option in seinen PID, um ihn wieder voll in die Gruppe aufnehmen zu lassen.
    -Jegliche Items, die der NPC während seines Status als 7. Gruppenmitglied über GiveItemCreate() "erhält", erscheinen doppelt: einmal beim HC, einmal beim NPC (merkt man dann, wenn er wieder zur Gruppe stößt)
    -Der Befehl TakePartyItem("") wird im 7. Gruppenmitgliedsmodus vom NPC nicht ausgeführt - hier besteht gerade bei der Kombi "TakePartyItem - DestroyItem" im Rahmen von Quests die Gefahr von Bugs, wenn Questitems nicht wie vorgesehen entfernt werden, oder ein NPC ein Item anlegen soll aber es nicht "nehmen" kann (z.B. Breagar seinen Arm etc.)
    -damit der NPC nicht unwiederruflich stirbt hantiere ich mit einem Min-HP-Effekt der entsprechend an- und wieder abgelegt wird. Damit der NPC nicht zur Kampfmaschine wird habe ich mir das mit dem "ohnmächtig" werden inklusive des Statuswechsels zu Neutral ausgedacht. Hierzu muss ein Grundgerüst and Skriptblöcken und Spells kompiliert und angewendet werden.
    -7. Gruppenmitglieder tauchen mit in Cutscenes auf, leider auch in denen, die Träume des HC sein sollen...

    Fazit: dieser 7. Gruppenmitgliedsmodus geht irgendwie mit ein paar Einschränkungen, aber der NPC und seine Quests müssen doch darauf abgestimmt sein. Mit ein paar Additionen zu PID und Kickout-Dialog, Skript und dem Patchen der Erkennung, ob der NPC in der Gruppe oder als 7. Gruppenmiglied läuft wäre sicher das meiste abgedeckt und technisch nicht komplett unmöglich, aber der Teufel steckt dann im Detail, gerade diese nicht funktionierende CreateItem und TakePartyItem-Sache macht das ganze recht fragil und entsprechende Handarbeit nötig.
     
  3. Jastey

    Jastey Matron Modderholic

    Registriert seit:
    Mai 2004
    Beiträge:
    7.767
    Zustimmungen:
    185
    Achso, vergessen: Skriptaddition, damit der NPC dann entsprechend hochlevelt. Hier habe ich platt einfach ein Hochleveln bis zum Level des HC gescriptet, ohne Stopp jeglicher Art. Kann man sicher "eleganter" lösen so dass es weniger zum Cheaten einlädt.

    Da ich mittlerweile 4 NPCs habe, die als 7. Gruppenmitglied laufen können (Solaufein, Grey, Brandock, Husam), kriege ich langsam Übung, wie man das effizient bündelt. Theoretisch könnte ich mir vorstellen, für NPCs einen solchen Tweak zu implementieren - technisch müsste das wie gesagt möglich sein - aber gerade die Details mit dem Itemhändling ist das, was es dann zu Handarbeit werden lässt und eventuell gerade Crossmod Kompatibilität (mit Mods, die Inhalte für die NPCs einfügen) kritisch macht und immr wieder überprüft werden muss.
    (Das war leider keine Freiwilligenmeldung!)...

    Im Grunde ist das mit dem Itemhändling wirklich seltsam, da man dann dem NPC auch nicht über Skript Items geben könnte. :hae: Es ist abr meine Erfahrung aus dem Debugging der §Buchszenen" von Brandock, wo es jeweils nicht ausgeführt wurde, wenn er im 7. GMM war.
     
  4. Quentin

    Quentin Senior Member

    Registriert seit:
    Sep. 2008
    Beiträge:
    298
    Zustimmungen:
    1
    Interessante und spannende Idee.

    Ein Gedanke dazu, solltest du Lust haben, das für die Original NPCs umzusetzen, fände ich es super wenn, zumindest in BG2, Imoen der erste NPC wäre, bei dem das möglich ist.

    Ich denke der Grund dafür ist relativ klar, es nervt ein wenig einen NPC für sie aus der Gruppe werfen zu müssen. Insbesondere als guter HC würde es absolut Sinn machen wenn der HC, trotz einer vollen Gruppe, für Imoen eine Ausnahme macht und sie quasi hinterherlaufen lässt.

    Das ist aber nur mein Gedanke zu der Idee :)
     
  5. Acifer

    Acifer Senior Member

    Registriert seit:
    Apr. 2019
    Beiträge:
    763
    Zustimmungen:
    52
    Vielen Dank für Deine Erklärungen! Ich hatte mir das wirklich etwas einfacher vorgestellt. Aber das ist beim Modding wohl immer der Fall. :(
    Für Imoen in BG2 eine solche Option einzubauen finde ich eine gute Idee!
    In BG1 geht es mir mit Xan und Yeslick immer so. Da würde ich mir- zumindest zeitweise - eine 7. Partymember-Option schon wünschen.

    :shine:
     
  6. Lumorus

    Lumorus Wachender

    Registriert seit:
    März 2011
    Beiträge:
    2.579
    Zustimmungen:
    52
    Ich fände eigentlich Brage als 7.Begleiter optimal. ;)
     
  7. Gerri

    Gerri Senior Member

    Registriert seit:
    Nov. 2006
    Beiträge:
    820
    Zustimmungen:
    0
    Jetzt geb ich auch meinen Senf dazu: Bei Afaaq dem Dschinn Gefährten, gibt es die volle Interaktion, obwohl er das 7. Gruppenmitglied ist.
    Banter, Story, Quests... da funzt alles. Vielleicht hat Argent da ein paar nützliche Tips...
     
  8. Jastey

    Jastey Matron Modderholic

    Registriert seit:
    Mai 2004
    Beiträge:
    7.767
    Zustimmungen:
    185
    @Gerri Bei meinen NPCs mit dieser Funktionalität funzt das auch alles. ;) Man muss den NPC halt entsprechend präparieren, das ist meine Aussage.
     
  9. Lumorus

    Lumorus Wachender

    Registriert seit:
    März 2011
    Beiträge:
    2.579
    Zustimmungen:
    52
    Das kann ich auch bestätigen. :)
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden