Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Seite 1 von 3 123 Letzte »
Ergebnis 1 bis 20 von 45
  1. Homepage besuchen Beiträge anzeigen #1 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline

    Mehrere Fragen

    Ich habe im Moment folgende Probleme, bei denen ich bisher selbst noch keine Lösung finden konnte:

    1) Wir haben in unserer Modifikation ein Menü für die Pfeilauswahl eingebaut, für das man in den Einstellungen selbst die Taste festlegen kann, die dafür benutzt wird, das Menü zu öffnen bzw. zu schließen. Funktioniert soweit auch wunderbar, allerdings muss man momentan noch manuell eine Taste festlegen, wenn man die Mod zum ersten mal startet.
    Ist es also irgendwie möglich, eine Standardtaste für dieses Menü einzubauen, die dafür verwendet wird, wenn der Spieler noch keine festgelegt hat?

    2) Ist es möglich, bestimmte NPCs für jeden Angreifer einfach "unsichtbar" zu machen? Also so, dass die NPCs von Gegnern (z.B. Monster, Banditen) einfach nicht mehr wahrgenommen werden und auch der Spieler sie nicht mehr anvisieren kann, wenn er sich in einem Kampfmodus befindet?

    3) Kann es sein, dass Wld_StopEffect nicht bzw. nicht richtig funktioniert? Ich habe in die Datei 'SleepABit' in der Funktion PC_Sleep 'Wld_StopEffect("SLOW_MOTION");' eingetragen. Eigentlich sollte das doch dafür sorgen, dass der Effekt vom Sumpfkraut nach dem schlafen verschwindet, oder? Das ist aber leider nicht der Fall.

  2. Beiträge anzeigen #2 Zitieren
    Ehrengarde
    Registriert seit
    Nov 2009
    Ort
    Deutschland
    Beiträge
    2.531
     
    Grekain ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Ich habe im Moment folgende Probleme, bei denen ich bisher selbst noch keine Lösung finden konnte:

    1) Wir haben in unserer Modifikation ein Menü für die Pfeilauswahl eingebaut, für das man in den Einstellungen selbst die Taste festlegen kann, die dafür benutzt wird, das Menü zu öffnen bzw. zu schließen. Funktioniert soweit auch wunderbar, allerdings muss man momentan noch manuell eine Taste festlegen, wenn man die Mod zum ersten mal startet.
    Ist es also irgendwie möglich, eine Standardtaste für dieses Menü einzubauen, die dafür verwendet wird, wenn der Spieler noch keine festgelegt hat?

    2) Ist es möglich, bestimmte NPCs für jeden Angreifer einfach "unsichtbar" zu machen? Also so, dass die NPCs von Gegnern (z.B. Monster, Banditen) einfach nicht mehr wahrgenommen werden und auch der Spieler sie nicht mehr anvisieren kann, wenn er sich in einem Kampfmodus befindet?

    3) Kann es sein, dass Wld_StopEffect nicht bzw. nicht richtig funktioniert? Ich habe in die Datei 'SleepABit' in der Funktion PC_Sleep 'Wld_StopEffect("SLOW_MOTION");' eingetragen. Eigentlich sollte das doch dafür sorgen, dass der Effekt vom Sumpfkraut nach dem schlafen verschwindet, oder? Das ist aber leider nicht der Fall.
    2) Da könnte die AIVAR AIV_NoFightParker helfen. Wenn die auf true gesetzt ist, sollte der NPC weder angreifen, noch angegriffen werden. Ich weiß nicht, ob man den NPC unanwählbar machen kann, aber du kannst ihn natürlich unverwundbar machen und die Angriffe des Helden ignorieren lassen.

    3) Ich glaube der Effekt heißt SLOW_TIME und nicht SLOW_MOTION (IT_Plants.d)

  3. Homepage besuchen Beiträge anzeigen #3 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von Grekain Beitrag anzeigen
    2) Da könnte die AIVAR AIV_NoFightParker helfen. Wenn die auf true gesetzt ist, sollte der NPC weder angreifen, noch angegriffen werden. Ich weiß nicht, ob man den NPC unanwählbar machen kann, aber du kannst ihn natürlich unverwundbar machen und die Angriffe des Helden ignorieren lassen.
    Das mit dem AIVAR funktioniert. AIV_INVINCIBLE scheint aber das gleiche zu machen, jedenfalls wurden die NPCs so auch nicht angegriffen und haben auch keinen anderen NPC angegriffen.
    Der Grund, warum ich die für den Helden "unsichtbar" machen will, ist, dass diese NPCs zu einer bestimmten Uhrzeit irgendwo stehen und über Wld_SendTrigger an dieser Position ein Lied abgespielt wird. Das Skript wird jeden Frame aufgerufen und prüft zusätzlich, ob die NPCs alle (noch) ihr Item benutzen.
    (über if (C_BodyStateContains(VLK_424_Musiker,BS_ITEMINTERACT) etc.). Sobald also einer von ihnen kein Item (also kein Instrument) mehr benutzt, wird das Lied über Wld_SendUnTrigger sofort gestoppt. Und da liegt das Problem: Ich habe in ihren Tagesabläufen ihre perceptions komplett deaktiviert, damit sie auf nichts reagieren, während sie spielen sollen. Allerdings benutzen sie auch ihr Item nicht mehr, wenn sie z.B. vom Spieler geschlagen werden und stehen dann nur noch blöd da, bis man sich aus ihrer Reichweite entfernt hat.

    Zitat Zitat von Grekain Beitrag anzeigen
    3) Ich glaube der Effekt heißt SLOW_TIME und nicht SLOW_MOTION (IT_Plants.d)
    Danke, mit SLOW_TIME funktioniert es. Keine Ahnung wie ich auf SLOW_MOTION komme, das ist nämlich der Effekt vom schwarzen Erz.


    Jetzt bräuchte ich nur noch 'ne Lösung dafür, wie man das mit der Standardtaste macht und wie man NPCs auch für den Helden unsichtbar macht, wenn er sich im Kampfmodus befindet.

  4. Beiträge anzeigen #4 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Das mit dem AIVAR funktioniert. AIV_INVINCIBLE scheint aber das gleiche zu machen, jedenfalls wurden die NPCs so auch nicht angegriffen und haben auch keinen anderen NPC angegriffen.
    Der Grund, warum ich die für den Helden "unsichtbar" machen will, ist, dass diese NPCs zu einer bestimmten Uhrzeit irgendwo stehen und über Wld_SendTrigger an dieser Position ein Lied abgespielt wird. Das Skript wird jeden Frame aufgerufen und prüft zusätzlich, ob die NPCs alle (noch) ihr Item benutzen.
    (über if (C_BodyStateContains(VLK_424_Musiker,BS_ITEMINTERACT) etc.). Sobald also einer von ihnen kein Item (also kein Instrument) mehr benutzt, wird das Lied über Wld_SendUnTrigger sofort gestoppt. Und da liegt das Problem: Ich habe in ihren Tagesabläufen ihre perceptions komplett deaktiviert, damit sie auf nichts reagieren, während sie spielen sollen. Allerdings benutzen sie auch ihr Item nicht mehr, wenn sie z.B. vom Spieler geschlagen werden und stehen dann nur noch blöd da, bis man sich aus ihrer Reichweite entfernt hat.

    3) Ich glaube der Effekt heißt SLOW_TIME und nicht SLOW_MOTION (IT_Plants.d)
    Du kannst für den jeweiligen Npc "noFocus" auf "TRUE" setzen, dann ist der Fokus weg.
    Ob man ihn dann noch schlagen kann, hab ich nicht probiert, vermute mal ja(Flächenzauber treffen jedenfalls).
    Ich habe für solche Npc´s eine neue Wahrnehmung(Perception) erstellt, damit sie auf nichts reagieren.
    Du hast ja auch schon an den Perceptions gedreht...
    Es gibt ein Flag "BS_FLAG_INTERRUPTABLE" und eine Variable "bodyStateInterruptableOverride"...damit könntest du experimentieren.

    MfG
    Geändert von TheBigLeBRUCEky (10.02.2018 um 13:11 Uhr)

  5. Homepage besuchen Beiträge anzeigen #5 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Du kannst für den jeweiligen Npc "noFocus" auf "TRUE" setzen, dann ist der Fokus weg.
    Ob man ihn dann noch schlagen kann, hab ich nicht probiert, vermute mal ja(Flächenzauber treffen jedenfalls).
    Ich habe für solche Npc´s eine neue Wahrnehmung(Perception) erstellt, damit sie auf nichts reagieren.
    Du hast ja auch schon an den Perceptions gedreht...
    Es gibt ein Flag "BS_FLAG_INTERRUPTABLE" und eine Variable "bodyStateInterruptableOverride"...damit könntest du experimentieren.

    MfG
    Okay, ich habe das mal probiert: Mit NoFocus verschwindet nur der Name des NPCs. Man bekommt ihn trotzdem noch problemlos in den Fokus und kann ihn angreifen.
    BS_FLAG_INTERRUPTABLE und bodyStateInterruptableOverride zeigen leider auch keine Wirkung.
    In den Perceptions habe ich einfach eine komplett leere erstellt für die Musiker (Perception_Set_Nothing).

    Code:
    func void Perception_Set_Nothing ()
    {
    };
    Dann reagieren die zwar auf nichts, aber wenn man sie schlägt stehen sie trotzdem da und machen nichts mehr.

    Ich hatte jetzt auch einfach die Idee, die Musiker doch reagieren zu lassen, wenn der Spieler sie angreift. Aber das sieht dann ja auch seltsam aus, wenn die anderen Musiker weiter ihr Instrument spielen, während einer von ihnen mit dem Helden kämpft und solange einfach keine Musik mehr abgespielt wird.
    Hat da vielleicht noch jemand 'ne Idee?

  6. Beiträge anzeigen #6 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Okay, ich habe das mal probiert: Mit NoFocus verschwindet nur der Name des NPCs. Man bekommt ihn trotzdem noch problemlos in den Fokus und kann ihn angreifen.
    BS_FLAG_INTERRUPTABLE und bodyStateInterruptableOverride zeigen leider auch keine Wirkung.
    In den Perceptions habe ich einfach eine komplett leere erstellt für die Musiker (Perception_Set_Nothing).

    Code:
    func void Perception_Set_Nothing ()
    {
    };
    Dann reagieren die zwar auf nichts, aber wenn man sie schlägt stehen sie trotzdem da und machen nichts mehr.

    Ich hatte jetzt auch einfach die Idee, die Musiker doch reagieren zu lassen, wenn der Spieler sie angreift. Aber das sieht dann ja auch seltsam aus, wenn die anderen Musiker weiter ihr Instrument spielen, während einer von ihnen mit dem Helden kämpft und solange einfach keine Musik mehr abgespielt wird.
    Hat da vielleicht noch jemand 'ne Idee?
    Ich kenne mich mit Perceptions auch nicht besonders gut aus.
    Bin mir allerdings nicht sicher, ob eine leere Funktion so hinhaut.
    Bei mir sind zumindest Hören/Sehen eingetragen.
    Range/Perctime auch und alle Percs auf disable gesetzt.

    Du könntest versuchen aus den Instrumenten Mobsis zu machen.
    Die ScemeNames kann man dann bei "MOB_NOTINTERRUPTABLE" mit hinzufügen.
    Dort sind die Mobs definiert, an denen man nicht unterbrochen wird.

    Zumindest würde ich das mal so probieren.
    Meine Npc´s bleiben am Mobsi, wenn sie beispielsweise einen Feuerregen abbekommen.
    Schlagen habe ich, wie gesagt, nicht probiert, aber sollte bei mir eigentlich nicht vorkommen, da die Npc´s unsichtbar sind und an Stellen stehen, die ohne cheats nicht erreichbar sind.
    Da wirst du wohl ein wenig tüfteln müssen, so mach ich das auch immer.

    MfG

  7. Homepage besuchen Beiträge anzeigen #7 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Ich kenne mich mit Perceptions auch nicht besonders gut aus.
    Bin mir allerdings nicht sicher, ob eine leere Funktion so hinhaut.
    Bei mir sind zumindest Hören/Sehen eingetragen.
    Range/Perctime auch und alle Percs auf disable gesetzt.

    Du könntest versuchen aus den Instrumenten Mobsis zu machen.
    Die ScemeNames kann man dann bei "MOB_NOTINTERRUPTABLE" mit hinzufügen.
    Dort sind die Mobs definiert, an denen man nicht unterbrochen wird.

    Zumindest würde ich das mal so probieren.
    Meine Npc´s bleiben am Mobsi, wenn sie beispielsweise einen Feuerregen abbekommen.
    Schlagen habe ich, wie gesagt, nicht probiert, aber sollte bei mir eigentlich nicht vorkommen, da die Npc´s unsichtbar sind und an Stellen stehen, die ohne cheats nicht erreichbar sind.
    Da wirst du wohl ein wenig tüfteln müssen, so mach ich das auch immer.

    MfG
    Dann werde ich das nochmal überarbeiten.

    Mobsis erstellen könnte ein Problem werden. Trommel geht ja noch, aber zum Beispiel bei der Laute wird es dann schon schwer. Da bräuchte ich ja mind. eine komplett neue Animation, dass die z.B. an der Wand lehnt, der Musiker sie von dort nimmt und dann anfängt zu spielen. Und wenn er dann aufhört zu spielen das gleiche nochmal. Und mit Animationen erstellen kenne ich mich leider überhaupt nicht aus.

  8. Beiträge anzeigen #8 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Dann werde ich das nochmal überarbeiten.

    Mobsis erstellen könnte ein Problem werden. Trommel geht ja noch, aber zum Beispiel bei der Laute wird es dann schon schwer. Da bräuchte ich ja mind. eine komplett neue Animation, dass die z.B. an der Wand lehnt, der Musiker sie von dort nimmt und dann anfängt zu spielen. Und wenn er dann aufhört zu spielen das gleiche nochmal. Und mit Animationen erstellen kenne ich mich leider überhaupt nicht aus.
    Hab die Instrumente jetzt nicht vor Augen, aber wenn du den ScemeName so belässt, müsste die gleiche Ani verwendet werden, wie zuvor.
    Eventuell reden wir ja auch aneinander vorbei oder ich verstehe gerade nicht, was du meinst.
    Dachte, die Instrumente sind Items...du kannst ja auch Items als Mobs erstellen.
    Die müssen dann in der AI_Constants.d als Mobs eingetragen werden und die ScemeNames dann eben, wie im letzten Post.
    Möglich, dass du noch was an den on_state-Funktionen ändern musst.
    Sind jetzt alles nur Tipps, wie ich das versuchen würde.
    Solange sich hier niemand meldet, der genau weiß, wie das läuft, musst du wohl selbst herumprobieren.
    Ich kann das auch nicht für dich machen, da ich dafür keine Zeit habe.
    Zudem lernt man auch viel mehr, wenn man etwas selbst hinbekommt.
    Ich freue mich darüber jedenfalls immer.

    MfG

  9. Homepage besuchen Beiträge anzeigen #9 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Hab die Instrumente jetzt nicht vor Augen, aber wenn du den ScemeName so belässt, müsste die gleiche Ani verwendet werden, wie zuvor.
    Eventuell reden wir ja auch aneinander vorbei oder ich verstehe gerade nicht, was du meinst.
    Dachte, die Instrumente sind Items...du kannst ja auch Items als Mobs erstellen.
    Die müssen dann in der AI_Constants.d als Mobs eingetragen werden und die ScemeNames dann eben, wie im letzten Post.
    Möglich, dass du noch was an den on_state-Funktionen ändern musst.
    Sind jetzt alles nur Tipps, wie ich das versuchen würde.
    Solange sich hier niemand meldet, der genau weiß, wie das läuft, musst du wohl selbst herumprobieren.
    Ich kann das auch nicht für dich machen, da ich dafür keine Zeit habe.
    Zudem lernt man auch viel mehr, wenn man etwas selbst hinbekommt.
    Ich freue mich darüber jedenfalls immer.

    MfG
    Ja, dann habe ich dich vorhin falsch verstanden.

    Ich habe das jetzt aber mal so probiert, wie du geschrieben hast, das Problem besteht aber leider weiterhin.

    1) In BodyStates.d bei "MOB_NOTINTERRUPTABLE" habe ich "LUTE" (scemeName der Laute) hinzugefügt.

    MOB_NOTINTERRUPTABLE = "DOOR,LEVER,TOUCHPLATE,TURNSWITCH,VWHEEL,CHESTBIG,CHESTSMALL,HERB,IDOL,PAN,SMOKE ,INNOS,LUTE";

    2) In die AI_Constants.d unter Produktions-Mobsis die Laute als Mob eingetragen.
    (Ist das überhaupt notwendig? Soweit ich weiß braucht man das nur für Mobsi-Dialoge, oder? )

    Ingame den NPC, der Laute spielt, geschlagen --> NPC spielt wieder nicht mehr weiter.

    Edit:
    Ich habe jetzt eventuell eine Idee, wie ich das mache. Melde mich später nochmal, ob es geklappt hat. ^^

    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Zudem lernt man auch viel mehr, wenn man etwas selbst hinbekommt. Ich freue mich darüber jedenfalls immer.
    Naja, es ist ja nicht so, dass ich es nicht schon selbst probiert habe. Damals als ich die eingefügt habe, habe ich Tage probiert, eine Lösung für dieses Problem zu finden. Scheint nur dafür nicht so einfach zu sein.
    Geändert von Bloodfly91 (10.02.2018 um 15:57 Uhr)

  10. Beiträge anzeigen #10 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Ja, dann habe ich dich vorhin falsch verstanden.

    Ich habe das jetzt aber mal so probiert, wie du geschrieben hast, das Problem besteht aber leider weiterhin.

    1) In BodyStates.d bei "MOB_NOTINTERRUPTABLE" habe ich "LUTE" (scemeName der Laute) hinzugefügt.

    MOB_NOTINTERRUPTABLE = "DOOR,LEVER,TOUCHPLATE,TURNSWITCH,VWHEEL,CHESTBIG,CHESTSMALL,HERB,IDOL,PAN,SMOKE ,INNOS,LUTE";

    2) In die AI_Constants.d unter Produktions-Mobsis die Laute als Mob eingetragen.
    (Ist das überhaupt notwendig? Soweit ich weiß braucht man das nur für Mobsi-Dialoge, oder? )

    Ingame den NPC, der Laute spielt, geschlagen --> NPC spielt wieder nicht mehr weiter.


    Naja, es ist ja nicht so, dass ich es nicht schon selbst probiert habe. Damals als ich die eingefügt habe, habe ich Tage probiert, eine Lösung für dieses Problem zu finden. Scheint nur dafür nicht so einfach zu sein.
    Kann sein, dass es nicht nötig ist, das Mob in den AI_Constants einzutragen...Grund hast du ja genannt.
    Vielleicht gilt das alles ja auch nur für den Hero...weiß ich jetzt leider nicht.
    Momentan fallen mir da nur noch die ganzen AssessXXX-Dateien ein...dort wird definiert, wie der jeweilige Npc reagiert, wenn er angegriffen wird, einen Feind wahrnimmt, usw.
    In diesen Dateien habe ich auch einiges eingetragen...ist aber länger her, sodass ich das jetzt nicht mehr aus dem Ärmel schütteln kann, ohne mich damit länger zu beschäftigen.
    Invincible hast du ja gesetzt, wenn ich mich recht erinnere...mehr fällt mir im Moment dazu auch nicht ein.
    Wenn das auch nichts bringt, musst du warten, ob jemand anderes eine Idee hat.
    Ich kenne das Problem auch, hab auch oft Tage...sogar Wochen an solchen Problemen gesessen.
    Manchmal hilft es, was anderes zu machen...oft habe ich nach einigen Tagen einen Geistesblitz.

    MfG

  11. Homepage besuchen Beiträge anzeigen #11 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Kann sein, dass es nicht nötig ist, das Mob in den AI_Constants einzutragen...Grund hast du ja genannt.
    Vielleicht gilt das alles ja auch nur für den Hero...weiß ich jetzt leider nicht.
    Momentan fallen mir da nur noch die ganzen AssessXXX-Dateien ein...dort wird definiert, wie der jeweilige Npc reagiert, wenn er angegriffen wird, einen Feind wahrnimmt, usw.
    In diesen Dateien habe ich auch einiges eingetragen...ist aber länger her, sodass ich das jetzt nicht mehr aus dem Ärmel schütteln kann, ohne mich damit länger zu beschäftigen.
    Invincible hast du ja gesetzt, wenn ich mich recht erinnere...mehr fällt mir im Moment dazu auch nicht ein.
    Wenn das auch nichts bringt, musst du warten, ob jemand anderes eine Idee hat.
    Ich kenne das Problem auch, hab auch oft Tage...sogar Wochen an solchen Problemen gesessen.
    Manchmal hilft es, was anderes zu machen...oft habe ich nach einigen Tagen einen Geistesblitz.

    MfG
    Mir ist vorhin noch 'ne Idee gekommen, wie es eventuell funktionieren könnte. Ich werde es nachher mal versuchen und schreiben, ob es geklappt hat.

  12. Homepage besuchen Beiträge anzeigen #12 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Noch eine andere Frage: Wie kommt man denn an die Animationen der Items, zum Beispiel die der Laute (Hum_BardPlay_M01.asc)? Ich habe mit dem GothicSourcer die HumanS.mds decompiliert, da war sie nicht dabei. Auch HIER konnte ich sie nicht finden.

  13. Beiträge anzeigen #13 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Noch eine andere Frage: Wie kommt man denn an die Animationen der Items, zum Beispiel die der Laute (Hum_BardPlay_M01.asc)? Ich habe mit dem GothicSourcer die HumanS.mds decompiliert, da war sie nicht dabei. Auch HIER konnte ich sie nicht finden.
    Wenn die Anis in der Humans.mds eingetragen sind, müsstest du sie eigentlich erhalten, wenn du die Humans.mds dekompilierst.
    Mal mit "Dateien durchsuchen" schauen, ob du sie auf deinem PC findest.

    MfG

  14. Homepage besuchen Beiträge anzeigen #14 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Wenn die Anis in der Humans.mds eingetragen sind, müsstest du sie eigentlich erhalten, wenn du die Humans.mds dekompilierst.
    Mal mit "Dateien durchsuchen" schauen, ob du sie auf deinem PC findest.

    MfG
    Habe jetzt die Humans.MSB decompiliert und da waren auch die Animationen für Items dabei. Keine Ahnung warum die bei der Humans.MDS nicht dabei waren.

  15. Beiträge anzeigen #15 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Habe jetzt die Humans.MSB decompiliert und da waren auch die Animationen für Items dabei. Keine Ahnung warum die bei der Humans.MDS nicht dabei waren.
    Die MSB wird vom Spiel verwendet, sie ist das Kompilat der MDS.
    Wenn diese Dateien inhaltlich nicht übereinstimmen, dann hast du vielleicht mehrere MDS(Original DNDR, von einer MOD, usw.) auf dem PC.
    Eventuell hast du ja vorhin die falsche genommen.

    MfG

  16. Homepage besuchen Beiträge anzeigen #16 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Mir ist vorhin noch 'ne Idee gekommen, wie es eventuell funktionieren könnte. Ich werde es nachher mal versuchen und schreiben, ob es geklappt hat.
    Leider hat meine Idee auch nicht so ganz geklappt. Folgendes habe ich jetzt gemacht:

    1) Die 'REPAIR_PLANK.MDL' decompiliert, die REPAIR_PLANK.ASC kopiert und in 'BANDNORMALLUTE_FAKEMOB.ASC' umbenannt.
    2) Ein neues Item mit dem Visual der Laute erstellt (ItMi_Band_NormalLute)
    3) Im Spacer die 'BANDNORMALLUTE_FAKEMOB.ASC' als oCMobInter eingefügt und bei UseWithItem 'ItMi_Band_NormalLute' eingetragen.
    4) Die HUMANS.MSB entpackt und mir die Datei "HUM_BARDPLAY_M01.ASC" in den Anims Ordner kopiert.
    5) Mir die ganzen Einträge der Laute in der HUMANS.MDS kopiert, weiter oben erneut eingefügt und angepasst.

    Code:
    // ---------------------------------------------------------------------------------------------------------------
    // LUTE - BAND
                ani            ("t_BANDNORMALLUTE_Stand_2_S0"        1    "S_BANDNORMALLUTE_S0"        0.1    0.0    M.    "Hum_BardPlay_M01.asc"        F    1    11)
                {
                    *eventTag    (10    "DEF_INV_TORCH")
                    *eventTag    (11    "DEF_INSERT_ITEM"    "ZS_LEFTHAND")
                }
                ani            ("s_BANDNORMALLUTE_S0"                1    "S_BANDNORMALLUTE_S0"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        F    12    12)
                ani            ("t_BANDNORMALLUTE_S0_2_Stand"        1    ""                0.0    0.1    M.    "Hum_BardPlay_M01.asc"        R    1    11)
                {
                    *eventTag    (11    "DEF_REMOVE_ITEM")
                }
    
                ani            ("t_BANDNORMALLUTE_S0_2_S1"            1    "S_BANDNORMALLUTE_S1"        0.0 0.0    M.    "Hum_BardPlay_M01.asc"        F    13    39)
                ani            ("s_BANDNORMALLUTE_S1"                1    "S_BANDNORMALLUTE_S1"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        F    40    89    FPS:10)
    
                ani            ("t_BANDNORMALLUTE_S1_2_S0"            1    "S_BANDNORMALLUTE_S0"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        R    13    39)
    6) Den Tagesablauf des NPCs angepasst.

    Code:
    // *******************
    // FREEPOINT = LUTEGUY
    // *******************
    
    func void ZS_Play_BandLute ()
    {    
        Perception_Set_Musiker();
        
        B_ResetAll (self);
        
        AI_SetWalkmode     (self,NPC_WALK);
            
        if (Hlp_StrCmp (Npc_GetNearestWP(self), self.wp) == FALSE)
        {
            AI_StandUpQuick (self);
            AI_GotoWP    (self, self.wp);
        };
        if (Npc_HasItems (self,ItMi_Band_NormalLute) == 0)
        {
            CreateInvItem (self,ItMi_Band_NormalLute);                
        };
    };
        
    func int ZS_Play_BandLute_Loop ()
    {
        if (!C_BodyStateContains(self, BS_MOBINTERACT_INTERRUPT))
        && (Wld_IsMobAvailable(self,"BANDNORMALLUTE"))
        {
            AI_UseMob (self, "BANDNORMALLUTE", 1);        
        };
        
        return LOOP_CONTINUE;
    };
    
    func void ZS_Play_BandLute_End ()
    {
        AI_UseMob (self, "BANDNORMALLUTE", -1);
        
        Perception_Set_Normal();
        self.aivar[AIV_NoFightParker] = FALSE;
    };
    7) In die BodyStates.d unter 'MOB_NOTINTERRUPTABLE' noch 'BANDNORMALLUTE' mit eingetragen.

    Code:
    CONST STRING MOB_NOTINTERRUPTABLE        =    "DOOR,LEVER,TOUCHPLATE,TURNSWITCH,VWHEEL,CHESTBIG,CHESTSMALL,HERB,IDOL,PAN,SMOKE,INNOS,BANDNORMALLUTE";
    8) Ingame den NPC geschlagen --> NPC macht nichts mehr. NPC nochmal geschlagen --> NPC wird ein Stück nach hinten "teleportiert" --> NPC läuft zurück an sein Mobsi und macht weiter.

    Ich schätze mal, dass ich noch irgendwas im Tagesablauf Skript anpassen müsste... Nur was?

  17. Beiträge anzeigen #17 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Leider hat meine Idee auch nicht so ganz geklappt. Folgendes habe ich jetzt gemacht:

    1) Die 'REPAIR_PLANK.MDL' decompiliert, die REPAIR_PLANK.ASC kopiert und in 'BANDNORMALLUTE_FAKEMOB.ASC' umbenannt.
    2) Ein neues Item mit dem Visual der Laute erstellt (ItMi_Band_NormalLute)
    3) Im Spacer die 'BANDNORMALLUTE_FAKEMOB.ASC' als oCMobInter eingefügt und bei UseWithItem 'ItMi_Band_NormalLute' eingetragen.
    4) Die HUMANS.MSB entpackt und mir die Datei "HUM_BARDPLAY_M01.ASC" in den Anims Ordner kopiert.
    5) Mir die ganzen Einträge der Laute in der HUMANS.MDS kopiert, weiter oben erneut eingefügt und angepasst.

    Code:
    // ---------------------------------------------------------------------------------------------------------------
    // LUTE - BAND
                ani            ("t_BANDNORMALLUTE_Stand_2_S0"        1    "S_BANDNORMALLUTE_S0"        0.1    0.0    M.    "Hum_BardPlay_M01.asc"        F    1    11)
                {
                    *eventTag    (10    "DEF_INV_TORCH")
                    *eventTag    (11    "DEF_INSERT_ITEM"    "ZS_LEFTHAND")
                }
                ani            ("s_BANDNORMALLUTE_S0"                1    "S_BANDNORMALLUTE_S0"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        F    12    12)
                ani            ("t_BANDNORMALLUTE_S0_2_Stand"        1    ""                0.0    0.1    M.    "Hum_BardPlay_M01.asc"        R    1    11)
                {
                    *eventTag    (11    "DEF_REMOVE_ITEM")
                }
    
                ani            ("t_BANDNORMALLUTE_S0_2_S1"            1    "S_BANDNORMALLUTE_S1"        0.0 0.0    M.    "Hum_BardPlay_M01.asc"        F    13    39)
                ani            ("s_BANDNORMALLUTE_S1"                1    "S_BANDNORMALLUTE_S1"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        F    40    89    FPS:10)
    
                ani            ("t_BANDNORMALLUTE_S1_2_S0"            1    "S_BANDNORMALLUTE_S0"        0.0    0.0    M.    "Hum_BardPlay_M01.asc"        R    13    39)
    6) Den Tagesablauf des NPCs angepasst.

    Code:
    // *******************
    // FREEPOINT = LUTEGUY
    // *******************
    
    func void ZS_Play_BandLute ()
    {    
        Perception_Set_Musiker();
        
        B_ResetAll (self);
        
        AI_SetWalkmode     (self,NPC_WALK);
            
        if (Hlp_StrCmp (Npc_GetNearestWP(self), self.wp) == FALSE)
        {
            AI_StandUpQuick (self);
            AI_GotoWP    (self, self.wp);
        };
        if (Npc_HasItems (self,ItMi_Band_NormalLute) == 0)
        {
            CreateInvItem (self,ItMi_Band_NormalLute);                
        };
    };
        
    func int ZS_Play_BandLute_Loop ()
    {
        if (!C_BodyStateContains(self, BS_MOBINTERACT_INTERRUPT))
        && (Wld_IsMobAvailable(self,"BANDNORMALLUTE"))
        {
            AI_UseMob (self, "BANDNORMALLUTE", 1);        
        };
        
        return LOOP_CONTINUE;
    };
    
    func void ZS_Play_BandLute_End ()
    {
        AI_UseMob (self, "BANDNORMALLUTE", -1);
        
        Perception_Set_Normal();
        self.aivar[AIV_NoFightParker] = FALSE;
    };
    7) In die BodyStates.d unter 'MOB_NOTINTERRUPTABLE' noch 'BANDNORMALLUTE' mit eingetragen.

    Code:
    CONST STRING MOB_NOTINTERRUPTABLE        =    "DOOR,LEVER,TOUCHPLATE,TURNSWITCH,VWHEEL,CHESTBIG,CHESTSMALL,HERB,IDOL,PAN,SMOKE,INNOS,BANDNORMALLUTE";
    8) Ingame den NPC geschlagen --> NPC macht nichts mehr. NPC nochmal geschlagen --> NPC wird ein Stück nach hinten "teleportiert" --> NPC läuft zurück an sein Mobsi und macht weiter.

    Ich schätze mal, dass ich noch irgendwas im Tagesablauf Skript anpassen müsste... Nur was?
    1) Wie schonmal erwähnt, könnte es sein, dass du noch was an der KI machen musst(die ganzen AssessXXX-Dateien).
    2) Wenn man neue Anis in die MDS einträgt, muss man danach die MSB löschen und das Spiel starten und ingame gehen, damit eine neue MSB erzeugt wird, da Gothic immer die MSB verwendet, nicht die MDS. Ansonsten werden die Änderungen nicht wirksam.
    Sicherheitshalber solltest du Kopien deiner Dateien behalten, da die Sache mit den fehlenden Anis in deiner MDS zur Vorsicht rät.
    Nicht, dass dir später wichtige Daten verloren gehen.

    MfG

  18. Homepage besuchen Beiträge anzeigen #18 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    1) Wie schonmal erwähnt, könnte es sein, dass du noch was an der KI machen musst(die ganzen AssessXXX-Dateien).
    2) Wenn man neue Anis in die MDS einträgt, muss man danach die MSB löschen und das Spiel starten und ingame gehen, damit eine neue MSB erzeugt wird, da Gothic immer die MSB verwendet, nicht die MDS. Ansonsten werden die Änderungen nicht wirksam.
    Sicherheitshalber solltest du Kopien deiner Dateien behalten, da die Sache mit den fehlenden Anis in deiner MDS zur Vorsicht rät.
    Nicht, dass dir später wichtige Daten verloren gehen.

    MfG
    Die Animation funktioniert ingame ja problemlos, nur beim ersten Treffer steht der NPC dann wieder ohne Instrument da. Erst beim zweiten Treffer wird er dann ein Stück von seinem Waypoint wegteleportiert, läuft wieder hin und benutzt das Mobsi wieder. Dabei ist es auch egal, ob ich den NPC mit Magie, einer Fernkampfwaffe oder einer Nahkampfwaffe treffe.
    Ich habe in Gothic 1 vorhin auch nochmal getestet, wie das bei 'In Extremo' war. Die laufen nach einem Treffer sofort wieder an ihren Waypoint und benutzen wieder ihr Mobsi. Leider konnte ich da aber auch nach längerer Suche nicht herausfinden, was dafür verantwortlich ist...
    Ich denke, dass ich die Musiker einfach wieder rausnehme und da stattdessen einen einzelnen NPC hinstelle, der dann Laute spielt. Ist zwar etwas schade, aber so wie es im Moment ist, sieht das auch unschön aus.

    Edit: Mir wäre aus auch egal, wenn er beim getroffen werden das Mobsi kurz verlässt. Aber dann sollte er auch gleich danach wieder hin laufen und weitermachen. Er soll dann nur nicht die ganze Zeit dumm herumstehen und nichts tun.
    Geändert von Bloodfly91 (10.02.2018 um 19:17 Uhr)

  19. Beiträge anzeigen #19 Zitieren
    Schwertmeister Avatar von TheBigLeBRUCEky
    Registriert seit
    Apr 2014
    Beiträge
    997
     
    TheBigLeBRUCEky ist offline
    Zitat Zitat von Bloodfly91 Beitrag anzeigen
    Die Animation funktioniert ingame ja problemlos, nur beim ersten Treffer steht der NPC dann wieder ohne Instrument da. Erst beim zweiten Treffer wird er dann ein Stück von seinem Waypoint wegteleportiert, läuft wieder hin und benutzt das Mobsi wieder. Dabei ist es auch egal, ob ich den NPC mit Magie, einer Fernkampfwaffe oder einer Nahkampfwaffe treffe.
    Ich habe in Gothic 1 vorhin auch nochmal getestet, wie das bei 'In Extremo' war. Die laufen nach einem Treffer sofort wieder an ihren Waypoint und benutzen wieder ihr Mobsi. Leider konnte ich da aber auch nach längerer Suche nicht herausfinden, was dafür verantwortlich ist...
    Ich denke, dass ich die Musiker einfach wieder rausnehme und da stattdessen einen einzelnen NPC hinstelle, der dann Laute spielt. Ist zwar etwas schade, aber so wie es im Moment ist, sieht das auch unschön aus.

    Edit: Mir wäre aus auch egal, wenn er beim getroffen werden das Mobsi kurz verlässt. Aber dann sollte er auch gleich danach wieder hin laufen und weitermachen. Er soll dann nur nicht die ganze Zeit dumm herumstehen und nichts tun.
    Natürlich wäre das Schade, nachdem man so viel Arbeit investiert hat.

    Ich habe es gerade bei mir nochmal getestet, damit ich hier keinen Müll erzähle.
    Immerhin ist es schon eine Weile her, als ich das gemacht habe.

    Feuerregen und Nahkampfangriff ausprobiert...meine Npc´s bleiben brav am Mobsi und das Mobsi läuft auch weiter.
    Es ist also möglich.

    Tipps habe ich dir genügend gegeben(Perceptions, B_AssessXXX, evtl. Immortal, usw.)...finden musst du das Problem jetzt selbst, da ich nicht hellsehen kann.

    MfG

  20. Homepage besuchen Beiträge anzeigen #20 Zitieren
    Team Velen
    Registriert seit
    Aug 2015
    Beiträge
    952
     
    Bloodfly91 ist offline
    Zitat Zitat von TheBigLeBRUCEky Beitrag anzeigen
    Natürlich wäre das Schade, nachdem man so viel Arbeit investiert hat.

    Ich habe es gerade bei mir nochmal getestet, damit ich hier keinen Müll erzähle.
    Immerhin ist es schon eine Weile her, als ich das gemacht habe.

    Feuerregen und Nahkampfangriff ausprobiert...meine Npc´s bleiben brav am Mobsi und das Mobsi läuft auch weiter.
    Es ist also möglich.

    Tipps habe ich dir genügend gegeben(Perceptions, B_AssessXXX, evtl. Immortal, usw.)...finden musst du das Problem jetzt selbst, da ich nicht hellsehen kann.

    MfG
    Ich habe gerade etwas SEHR seltsames festgestellt... Wenn ich eine bereits vorhandene Animation verwende (also zum Beispiel "LUTE"), mein Mob so nenne, und in die BodyStates.d unter MOB_NOTINTERRUPTABLE auch "LUTE" eintrage, dann funktioniert es problemlos. Der NPC bleibt nach allen Treffern weiterhin am Mob und macht weiter.
    Aber sobald ich da eine neue Animation in die Humans.mds eintrage (z.B. "NORMALLUTE"), mein Mob so nenne und das dann in die MOB_NOTINTERRUPTABLE eintrage, verlässt der NPC dann ingame das Mob nach dem Treffer kurz und geht dann wieder zurück und macht weiter.
    Sehr seltsam. Aber ich denke, ich lasse das jetzt so, dass er es kurz verlässt und sofort wieder hinläuft.

Seite 1 von 3 123 Letzte »

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide