Wartungsarbeiten in der Woche vom 25. März:
· [ABGESCHLOSSEN] Xbox: EU und NA Megaserver für einen neuen Patch – 26. März, 11:00 - 17:00 MESZ
· [ABGESCHLOSSEN] PlayStation®: EU und NA Megaserver für einen neuen Patch – 26. März, 11:00 - 17:00 MESZ
· Wartungsarbeiten im ESO Store und dem Kontosystem – 28. März, 14:00 – 17:00 MESZ

Fehlermeldungen von Harvestmap

Ergalon
Ergalon
✭✭✭
Hallo zusammen,

seit dem Markath-patch bekomme ich jedes mal, wenn ich mich mit einem Char einlogge, folgende Fehlermeldung

user:/AddOns/HarvestMap/Libs/LibMainMenu/LibMainMenu.lua:94: function expected instead of nil
stack traceback:
user:/AddOns/HarvestMap/Libs/LibMainMenu/LibMainMenu.lua:94: in function 'libMainMenu:New'
user:/AddOns/HarvestMap/Libs/LibMainMenu/LibMainMenu.lua:76: in function 'InitializeLMM'
user:/AddOns/HarvestMap/Libs/LibMainMenu/LibMainMenu.lua:88: in function 'checkIfInitialized'
user:/AddOns/HarvestMap/Libs/LibMainMenu/LibMainMenu.lua:181: in function 'libMainMenu:AddCategory'
user:/AddOns/HarvestMap/Modules/HarvestMap/Options/MainMenu.lua:30: in function 'Menu:Initialize'
user:/AddOns/HarvestMap/Modules/HarvestMap/HarvestMap.lua:32: in function 'Harvest:InitializeModules'
user:/AddOns/HarvestMap/Modules/HarvestMap/HarvestMap.lua:58: in function 'Harvest.OnLoad'

Es werden auch keine neuen Pins mehr erstellt.

kennt jmd das problem und hat evtl eine Lösung ?

Danke im Voraus :)
  • FlodurZorp
    FlodurZorp
    ✭✭
    Ist bei mir auch so... Any help?
  • PeWaWa
    PeWaWa
    ✭✭
    LibMainMenu (Version 9) im Addon-Ordner installieren,
    und im Ordner ...Elder Scrolls Online\live\AddOns\HarvestMap\Libs
    den Ordner LibMainMenu löschen.
  • PeWaWa
    PeWaWa
    ✭✭
    LibMainMenu (Version 9) im Addon-Ordner installieren,
    und im Ordner ...Elder Scrolls Online\live\AddOns\HarvestMap\Libs
    den Ordner LibMainMenu löschen.

    https://esoui.com/forums/showthread.php?t=9443
    Edited by PeWaWa on 6. November 2020 17:37
  • FlodurZorp
    FlodurZorp
    ✭✭
    Danke! Hat geklappt!
  • Ergalon
    Ergalon
    ✭✭✭
    bei mir auch :)

    perfekt
  • Baertram
    Baertram
    ✭✭✭✭
    In diesem Fall war die Bibliothek LibMainMenu ein Problem, welche in einer älteren Version mit dem Addon HarvestMap mit ausgeliefert wurde. Durch das installieren der Bibliothek direkt in das live/AddOns Verzeichnis (wenn diese Bibliothek eine eigenständige txt Datei besitzt, und wenn Harvestmap eine Zeile in seiner HarvestMap.txt besitzt wie z.B. ## DependsOn: LibMainMenu) wird dann autoamtisch diese neue Version geladen und die alte nicht mehr.
    Das funktioniert mit so gut wie allen Bibliotheken wieso man diese eben z.B. direkt in live/AddOns installieren sollte, nur 1x! Damit eben keine älteren Versionen versteckt in Unterordnern geladen werden. Das macht es übersichtlicher, weniger Speicherplatz wird verschwendet, die Addons funktionieren besser und es wirkt sich direkt auf alle betroffenen Addons aus, wenn man die Bibliothek aktualisiert. Ausserdem sind Fehlersuchen um einiges einfacher.

    Zur Erläuterung:

    Addons laden die Dependencies / Abhänigkeiten wie Libraries/Bibliotheken anhand der txt Datei des Addons.
    Wenn das Addon im Ordner HarvestMap ist dann gibt es dort eine .txt Datei mit selbem Namen, also HarvestMap.txt
    In dieser findet ihr dann "im besten Fall" Zeilen wie

    ## DependsOn: LibraryName1 LibraryName2>=<LibraryVersion>
    ## OptionalDependsOn: LibraryName3 AddonName1

    Also 1 is n Einträge von Addons/Bibliotheken hintereinander weg getrennt per Leezeichen.

    Optional besagt, dass dieses Addon nur geladen werden "kann", aber nicht muss.
    Ohne optional muss das Addon/die Bibliothek die dort in der Zeile genannt werden geladen werden sonst funktioniert das addon in dessen txt du gerade bist nicht -> Also Harvestmap.

    Das >=<LibraryVersion> bedeutet, dass das andere Addon/die Bibliothek in der Version <LibraryVersion> vorliegen muss.
    Vorliegen bedeutet, dass es installiert UND aktiviert sein muss im Ingame addon manager. Und die Version steht in diesem anderen addon/Bibliothek dann wieder in der txt Datei dieses Addons/der Bibliothek. Also wenn dort in der Zeile steht
    ## DependsOn: LivSets>=123
    Dann muss die Bibliothek LibSets heruntergeladen worden sein in das Verzeichnis /live/AddOns (oder ein Unterverzeichnis, aber maximal bis zur Unterverzeichnistiefe 3!).
    Und dort muss dann die Datei LibSets.txt existieren!!!
    In dieser steht der tag ## AddOnVersion: 123 (oder ähnlich) welches die <LibraryVersion> angibt .

    Ohne die LibSets.txt Datei kann der ingame Addonmanager nicht sehen, dass diese Bibliothek geladen wurde! Also muss diese txt IMMER mit dabei sein, egal ob man in einem Addon die Bibliotheken im Untervezcihnis z.B. /libs/ mit verteilt, oder ob die Spieler die Bibliotheken selber herunterladen per Minion, direkt in live/AddOns rein.

    Es gibt allerdings AddOns welche diese Abhängigkeiten/Bibliotheken einfach mit verteilen in Unterordnern aber dabei die txt Dateien der Bibliotheken nicht mit dazu packen! Das ist ein großes Problem, da diese Bibliotheken dann nicht gefunden würden und auch nicht "gestartet" werden.
    Damit sie gestartet werden tragen diese Addon Entwickler dann in der addon.txt (z.B. HarvestMap.txt vom Beispiel oben) dann einfach den Pfad zu den lua Dateien der Bibliotheken "hart" rein:
    /libs/LibSets/LibSets.lua

    Das führt dazu, dass diese inkludierte Version, wie alt auch immer sie sein mag..., IMMER geladen wird. Denn ohne die TXT Datei LibSets.txt zu verwenden, werden immer alle diese Zeilen einfach ausgeführt und dann gibt es womöglich Fehler, da LibSets in der alten version 100 inkludiert war und geladen wird. Beim Versuch dann die neuere LibSets Version 123 zu laden stellt diese feste, dass bereits eine Version geladen wurde und macht nichts mehr -> Das hängt wiederumd avon ab wie man diese Bibliotheken programmiert. Man kann die Version noch im Quelltext abfragen und damit sicherstellen, dass alte Versionen überschrieben werden. Aber das MUSS und SOLLTE man nicht, denn das macht der AddonManager via LibSets.txt Datei bereits, und deutlich performanter als im Quelltext!

    Es gibt auch einige wenige Bibliotheken die nicht weit verbreitet sind und daher keine txt Datei besitzen. Diese kann/muss man dann eben mit harten Zeilen in der Addon.txt einfügen und laden. Aber auch hier "könnte" an eine txt Datei erzeugen und den Eintrag mit ## AddOnVersion: sowie ## IsLibrary: true einfügen, damit der AddonManager diese erkennt und versionieren kann. Ausserdem sieht man dann diese Bibliothek auch im AddonManager als eigene Zeile unter "Bibliotheken" unten und es ist kein "Inkognito Quelltext".

    Für die die bisher hierher gelesen haben:
    Ich hoffe ihr konntet folgen und die komplexen Abhängigkeits Thematiken verstehen :-)
    Hier gibt es zusätzliche Infos wie die Bibliotheken funktionieren, und wieso LibStub (alte versionierungs Bibliothek welche nichts anderes machte als die txt Datei heute mit dem ## AddOnVersion: tag tut, nur dass die TXT dies performanter und sicherer erledigt):
    https://wiki.esoui.com/Libraries
    Edited by Baertram on 21. Dezember 2020 14:59
Anmelden oder Registrieren, um zu kommentieren.