Das Kapitel „Gold Road“ (inklusive des Schriftlehre-Systems) und Update 42 können jetzt auf dem öffentlichen Testserver getestet werden! Hier könnt ihr die aktuellen Patchnotizen lesen: https://forums.elderscrollsonline.com/en/discussion/656454/

Library Dateien mehrfach (?)

Baerwolf
Baerwolf
✭✭✭✭✭
gestern startete ich mal wieder Minion und mir wurde vorgeschlagen, einige Dateien und addons zu aktualisieren. Das mache ich dann auch immer.
Diesmal war LibCustomMenu dabei. Prompt bekam ich nach Spielstart eine kurze Fehlermeldung, wegen doppelter Zuweisung in LibCustomMenu.

Ich habe das vorerst mal ignoriert und ein wenig gespielt. Dann stellte sich heraus, dass ich in der Bank keine Artikel mehr verkaufen konnte.
Also beendete ich das Spiel und schaute mir den addon Ordner genauer an. Dort sah ich dann ,dass einige addons ein eigenes Unterverzeichnis für Libraries anlegen.
So ist es passiert, dass ich im Stammverzeichnis der Addons eine Datei LibCustomMenu hatte und im Unterverzeichnis von DugolbonsLazyWriteCreator ebenfalls eine LibCustomMenu Datei war. Beide mit unterschiedlichen Versionen.

Ich habe den Fehler zwar behoben, indem ich die neu geladene Datei durch eine ältere von der letzten Datensicherung getauscht habe. Es funktioniert auch wieder alles, aber ich finde es irgendwie unsauber. Die Addon Entwickler sind sich wohl nicht einig, wie mit Libraries umzugehen ist.
PC/EU
  • Baerwolf
    Baerwolf
    ✭✭✭✭✭
    Gemäß diesem vorgeschlagenen workarround müsste ich DugolbonsLazyWriteCreator veranlassen, die Lib aus dem Hauptverzeichnis zu benutzen indem ich eine Datei ändern müsste.
    Da bei mir aber wegen der Rücknahme des updates wieder alles funktioniert, lasse ich lieber erstmal die Finger davon. Vielleicht ändert der Entwickler das ja selbst, was der normale Weg wäre.

    Aber Danke für den Hinweis. :)
    PC/EU
  • Mykyll
    Mykyll
    ✭✭✭
    Du musst nur die Lib im Unterordner deaktivieren ( umbenennen) (hilft)
  • Baertram
    Baertram
    ✭✭✭✭✭
    Da bei mir aber wegen der Rücknahme des updates wieder alles funktioniert, lasse ich lieber erstmal die Finger davon.
    @Baerwolf Und damit zerstörst du ggf. Fuktionen von anderen addons bzw kannst sie nicht mehr starten, wenn sie die Version 7 von LibCustomMenu benötigen...
    Deine Lösung ist nicht die gute, sondern eher etwas schlechtes!

    Einfach lesen was da in den Kommentaren von LibCustomMenu (siehe Link von Earl_Of_Grey_I) steht und die DolgubonsLazyWritCreator.txt Datei 1:1 aus Votan's Post kopieren und ersetzen in deiner Datei.
    Oder noch einfacher, wie Mykyll schon sagte:
    Im Unterorder live/AddOns/LazyWritCreator/libs die Datei LibCustomMenu.lua löschen.
    LibCustomMenu Verison 7 (die aktuell neuste Version) in das Verzeichnis live/Addons (über Minion z.B.) installieren.
    Fertig und alles ist gut bis Dolgubon sein addon endlich fixt.

    Das selbe kann bei anderen Addons passieren wie SetTracker z.B. Libs in Unterordnern, die dort ohne eigene txt Datei der lib geladen werden, führen dazu, dass auch ältere Versionen (wie du es aktuell gelöst hast) früher oder später alles defekt setzen. Da hilft dann auch kein "zurück zur alten Version" mehr.
    Edited by Baertram on 3. Mai 2021 20:03
  • ProfKnibble
    ProfKnibble
    ✭✭✭
    Dugolbon hat eine neue Version released, Problem ist behoben!
  • Baerwolf
    Baerwolf
    ✭✭✭✭✭
    @Baertram , das ging mir natürlich auch durch den Kopf und wollte es erstmal beobachten. Natürlich ist es nicht optimal mit der alten Version weiter zu arbeiten.

    @ProfKnibble , auf das habe ich eigentlich gehofft.

    Problem behoben, danke euch allen.
    PC/EU
  • Baertram
    Baertram
    ✭✭✭✭✭
    ProfKnibble schrieb: »
    Dugolbon hat eine neue Version released, Problem ist behoben!

    Nein ist es nicht :-( Er hat wieder die Lib ohne eigene TXT inkludiert und dieses mal hat er sogar die Datei manuell verändert damit es keine Fehler mehr wirft (aktuell).

    Anstelle die offizielle Lösung zu verwenden und simpel die LibCustomMenu.txt mit zu inkludieren, baut er sich da was weiß ich was zusammen. Das klappt wieder solange bis:
    -Das nächste Update von LibCustomMenu kommt
    -Oder jemand die Datei in dem Unterordner nicht löscht sondern mit einer alten Version überschreibt

    Ich könnte *** bei einer solchen Ignoranz. Dabei spielt er selber ESO gar nicht mehr aktiv sagt er, d.h. er kann überhaupt nicht mal eben reagieren wenn Updates zu der Lib erscheinen. Und das müsste er auch nicht wenn er es einfach 1x richtig machen würde. Kopf -> Tisch
    Edited by Baertram on 4. Mai 2021 14:09
  • Protector1981
    Protector1981
    ✭✭✭✭✭
    Kann man eigentlich Updates in Minion sperren? Hab das jetzt so geändert, wie es eigentlich sein sollte. Und will nicht zwangsweise, dass es durch ein Update wieder kaputt geht.

    Ok, Nachtrag, erst schauen, dann posten :D
    Edited by Protector1981 on 4. Mai 2021 16:07
  • Schmetterfrosch
    Schmetterfrosch
    ✭✭✭✭✭
    ja, es hilft aber nicht, dlwc zu sperren.
    wenn eine neue libcustommenu rauskommt, dann willst du die garantiert aktualisieren, weil andere addons diese verwenden.

    und schon gibt es wieder dasselbe Drama
    Das Leben ist doch nur ein Rollenspiel
  • Protector1981
    Protector1981
    ✭✭✭✭✭
    Ja, aber wenn DLWC mit Version 7 ja scheinbar einwandfrei funktioniert, ist es doch irrelevant, wenn die libcustommenu aktualisiert wird. Denn viel sollte sich da ja nicht ändern.

    Man hat ja nur die Verlinkung innerhalb der dlwc.txt geändert :) Und zwar auf die deps. und die hartverlinkte eben auskommentiert. So wie es ja sein sollte.
  • Schmetterfrosch
    Schmetterfrosch
    ✭✭✭✭✭
    k.a. was dolgubin gepatcht hat, ich habe sie Version noch nicht geupdatet, da ich den Hinweis von @Baertram gelesen habe, dass dolgubin immer noch seine eigene lib verwendet.

    solange zwei unterschiedliche Versionen geladen werden können, kann die ältere Version auch andere addons kaputt machen, wenn diese bereits auf die neuere lib-Version angepasst wurden.

    so wie es hier bereits geschehen ist
    Edited by Schmetterfrosch on 4. Mai 2021 17:21
    Das Leben ist doch nur ein Rollenspiel
  • Baertram
    Baertram
    ✭✭✭✭✭
    Aktuell funktioniert es mit der inkludierten Version von Dolgubon. Aber nur weil er trickst.
    Und diese Lösung wird wieder kaputt gehen wenn es Updates gibt, oder aller spätestens wenn LibCustomMenu aktualisiert wird und nicht mehr mit seinem Trick kompatibel ist.
    -> Sein Trick: Er hat da manuell im Lib Quelltext herumgebaut damit es funktioniert. ka ob das nicht zu anderen Problemen führt/führen wird.

    Beste Lösung daher zur Zeit:
    1. Die live/AddOns/LazyWritCreator/libs/LibCustomMenu.lua Datei löschen
    2. und in der Datei live/AddOns/LazyWritCreator/LazyWritCreator.txt eine Zeile oen einfügen, unterhalb der anderen ## DependsOn und ## OptionalDependsOn Zeilen:
    ## DependsOn: LibCustomMenu
    
    -> Falls die Zeile (oder als OptionalDependsOn auch) noch nicht vorhanden ist
    3. LibCustomMenu 1x per Minion installieren als aktuellste Version. Oder manuell direkt in live/AddOns

    Jedesmal wenn Dolgubon seine addons aktualisiert wieder im Unterordner libs/ nachsehen ob dort eine LibCustomMenu.lua OHNE LibCustomMenu.txt drin ist. Wenn ja: lua Datei löschen (Schritt 1) und txt Datei des Addons prüfen (Schritt 2)

    Alternativ ihm solange per Mails und ingame und wie auch immer nerven bis er den offiziellen Bibliothek Weg geht und einfach die LibCustomMenu.lua UND LibCustomMenu.txt Datei inkludiert + das ## DependsOn (oder OptionalDependsOn): LibCustomMenu hinzufügt. Wie gesagt, könnte so einfach sein...
    Edited by Baertram on 4. Mai 2021 18:27
  • Protector1981
    Protector1981
    ✭✭✭✭✭
    Die Datei befinden sich aber nicht in
    live/AddOns/LazyWritCreator/libs/
    

    sondern in
    live/AddOns/LazyWritCreator/libs/LibCustomMenu/
    

    Das ist wichtig :) Das zeigt auch die Zeile:
    #libs\LibCustomMenu\LibCustomMenu.lua
    
    die in der Regel keine Raute davor hat :)

    Bei mir stehen bei den OptionalDependsOn noch libstub und pchat. pchat nutze ich nicht mal und libstub wurde doch eigentlich komplett entfernt, oder nicht? Kann man doch rauslöschen, oder?
  • Baerwolf
    Baerwolf
    ✭✭✭✭✭
    Ich jedenfalls habe nun den Vorschlag von @Baertram angenommen und die aktuelle LibV7.00 geladen und in den Hauptordner addons gestellt, die unnötige doppelte Lib in DLWC gelöscht und die Anpassung im DLWC textfile gemacht.

    Dürfte die sauberste Lösung sein, wobei es mich schon wundert, warum Dubolgon das nicht selbst so eingestellt hat, nachdem er darauf aufmerksam gemacht wurde.
    PC/EU
  • Baertram
    Baertram
    ✭✭✭✭✭
    Jo, danke für den korrekten Pfad. Ich hatte mal gehofft, dass ihr das korrekt antizipiert und findet ;)
    pchat nutze ich nicht mal und libstub wurde doch eigentlich komplett entfernt, oder nicht? Kann man doch rauslöschen, oder?

    Nein! Die Zeilen musst du unverändert lassen.

    Das ist egal ob du es verwendest oder nicht und ob LibStub noch aktiv ist oder nicht.Die DependsOn und OptionalDependsOn regeln die Reihenfolge der Addon Ausführung und stellen sicher, dass alles korrekt funktioniert. Egal ob du die addons verwendest oder nicht (falls nicht, dann ist es einfach nur Text der nix verändert, aber manuell dort einzugreifen kann mehr kaputt machen als reparieren. Nur Hinzufügen von fehlenden Einträgen wie LCM müssen sein damit diese Lib VOR dem jeweiligen Addon geladen wird und dem addon zur Verfügung steht, wenn es danach sucht/diese versucht aufzurufen).

    LibStub ist es im übrigen genau noch in Dolgubons addon's via LibFeedback aktiv! Auch so eine Sache... Er unterdrückt sogar die Meldung "LibStub wurde geladen, bitte nicht mehr machen!" aktiv in seinem Quelltext damit ihr das nicht seht und ihn niemand damit nervt... Wieder so ein Fall von eigensinniger Einbindung, ohne Grund.

    Heute haben andere Devs Dolgubon auch noch einmal gebeten das aktuelle harte einbinden in seiner txt zu entfernen und LCM direkt mit der eigenen LCM.txt Datei zu ikludieren + das ## DependsOn: LibCustomMenu in seiner addon txt Datei einzufügen.
    Er hat eingelenkt und sagte soetwas wie "dann werde ich das vorgeschlagene mal umsetzen". Komisch, dass erst mehrere danach fragen müssen. Hab nix anderes gefordert seit Monaten, und auf einmal geht's :'( Naja, hauptsache er tut es wirklich. Aber ich wette die LibStub warnung wird weiter ausgeschaltet und weiter LibFeedback per LibStub geladen :s
    Edited by Baertram on 5. Mai 2021 15:11
  • Protector1981
    Protector1981
    ✭✭✭✭✭
    Dann dürfte Dolgubon ja eigentlich der einzige AddOn-Entwickler sein der libStub noch verwendet, zumindest von den aktiven AddOn-Entwicklern. Von den ganz alten reden wir schon gar nicht mehr.

    Hat er denn mittlerweile schon ein Update rausgehauen?
  • Baertram
    Baertram
    ✭✭✭✭✭
    Nein, Version 3.0.5 ist noch die aktuellste, welche LibCustomMenu entsprechend falsch/verändert einbindet.
Anmelden oder Registrieren, um zu kommentieren.