It’s the single biggest issue with my mods, they are scripted and when you save the game it saves the links to to scripts. Not the scripts, ponters to it. If you change it’s load order number all the scripts lose their values and fire twice. Bad news.
You can verify if this is the issue by starting a fake game from Load Menu. Instead of loading a save invoke the console and type COC RIVERWOOD
Then wait a mnute and try the book.
If you must add a mod mid game place it dead last.
Das kann man so eigentlich nicht stehen lassen und ich verstehe da auch die "Verunsicherung", aber meiner Meinung nach ist sie unbegründet. Wie alles in Skyrim, so ist auch die "Verlinkung" zu einem auf der Fesplatte liegendem Script eine "Form"... und die Verlinkungsbezeichnung... quasi der genannte Pointer, ist, wie bei allen anderen "Objekten" auch, die FormID (oder auch mehrere FormIDs). Ändert sich die Ladereihenfolge, ändern sich passend dazu die ersten beiden Zeichen der FormID. Skyrim weiß das allerdings und kann diese Änderung von selbst vornehmen. Könnte es das nicht, würden sämtliche Mods nach einer Änderung der Ladereihenfolge schlicht nicht mehr funktionieren. Zwar kann ich mir durchaus theoretische Szenarien vorstellen, wo ein Script dann wirklich seine Variablen "verlieren" kann, aber in der Praxis wird man die schlicht nicht antreffen, weil einfach eine ganze Menge "dummer Zufälle" auf einmal auftreten müssten - die auch zu anderen Konflikten zwischen zwei oder mehr Mods führen würden. Testen kann man das eigentlich auch recht einfach... nehmt irgendeine gescripteten Mod, zum Beispiel eine Begleitermodifikation - da erkennt man an den neuen Funktionen recht schnell, was "gescriptet" ist, sucht euch einen Begleiter, macht mit dem irgendwas, was im eigentlichen Spiel nicht möglich ist, speichert, schiebt die Mod in der Ladereihenfolge eins weiter, ladet den Spielstand... und wenn der Begleiter dann immer noch tut, was er tun soll und völlig normal funktioniert, hat das Script auch nicht seine Variablen verloren.
Also nein, der Text da oben stimmt so einfach nicht. Und warum genau das beschriebene Problem beim "fake load" auftritt, hat einen gänzlich anderen Hintergrund - nämlich den, dass Skyrim bei Spiel laden eben nicht "alles auf 0" setzt, sondern einige Dinge des vorherigen Spiels im Speicher behält. Unter diesen Umständen kann es durchaus passieren, dass Script-Events zweimal abgefeuert werden (und noch einiges andere), weshalb man NIE ein grundlegend anderes Spiel (anderer Charakter, sehr viel älterer Spielstand u.s.w.) aus dem Lademenü eines "laufenden Spiels" laden sollte, sondern mindestens zurück zum Hauptmenü gehen sollte, besser noch, dass Spiel kurz neu starten. Die Ladefunktion abseits vom Hauptmenü ist wirklich nur dafür geeignet, Dinge von "gerade eben" neuzuladen. Der Script-Event wird also in diesem Fall nicht zweimal abgefeuert, weil sich die FormID geändert hat, sondern weil Bethesda in einer solchen Situation Dinge im Speicher behält, die sie besser nicht im Speicher behalten sollten... wobei sie wohl nur selbst wissen, ob das eher ein Bug oder eher ein Feature ist. Fazit dennoch: keine Panik.
Und was den Script-Cleaner angeht: auch wenn du keine Mods mit Scripten deinstalliert hast, wird es sehr wahrscheinlich ein paar "tote Scripte" in deinem Spielstand geben. Das kann allein schon beim Update einer Mod passieren. Grundsätzlich ist daran aber absolut nichts schlimm. Wenn du nicht gerade eine Mod einsetzt, die aus dem Jahr 2011 stammt und nie geupdated wurde, existiert da erst einmal keine Gefahr. Keine Mod nutzt mehr wirklich das "gefährliche" RegisterForUpdate und selbst wenn, entfernt SKSE mit dem passenden Ini-Eintrag solche ins Leere laufenden Anfragen automatisch. Natürlich gibt es noch andere Probleme, die alte Scriptfragmente in einem Spielstand im Einzelfall verursachen können, aber das sind seltene Fälle und keine "generelle Gefahr".
Ich hab, als der erste Script-Cleaner raus kam, irgendwo hier mal etwas geschrieben wie "das ist, wie eine Herz-OP mit nem Schlachtermesser durchführen zu wollen"... das ist, zumindest bei der LE von Skyrim, mittlerweile nicht mehr der Fall. Die Cleaner entfernen die Scriptfragmente im Spielstand mittlerweile recht genau. Allerdings ist es eben immernoch kein Skalpell... eher... ein Schweizer Taschenmesser. Bedenkt man das und bedenkt man dann noch, dass der Nutzen in den meisten Fällen eher gering sein dürfte, würde ich, wie
@Ladyfalk schon sagt, im Regelfall die Finger davon lassen. Es gibt eigentlich nur 2 Ausnahmen:
1. Der Modautor hat sein Script grundlegend geändert und möchte, dass ihr vor dem Update doch bitte das Savegame cleant. Ich persönlich würde in diesem Fall auf das Update bis zu einem neuen Spielstart verzichten (und mich irritiert am Kopf kratzen), aber das ist sicher eine Ermessenssache, die am Ende jeder für sich selbst entscheiden muss.
2. regelmäßige, aber nicht spezifische Crashes. Stürzt das Spiel regelmäßig, aber nie wirklich zweimal in der gleichen Situation ab und sind auch beim genauen Überlegen keine Gemeinsamkeiten bei den Abstürzen (wie es beispielsweise bei einem defekten Mesh oder Spawnpunkt der Fall wäre) erkennbar und treten sie mit einem neuem Spielstand schlicht nicht auf, dann kann man durchaus mal ein Backup des Savegames machen und Scriptreste entfernen lassen. Zu verlieren hat man bei einem solchen Spielstand dann nicht mehr viel.
Ansonsten vielleicht immer mal, gerade wenn man eine neue Mod installiert hat, kurze Zeit später einfach mal auf die Werte für "unattached script instances" und "undefinied elements" achten, aber solange die nicht in wirklich 3-stelligen Bereichen rumspringen, würde ich mir, solange es keine Probleme mit dem Spielstand gibt, nicht die geringsten Sorgen machen.
Nein, der Savegamecleaner findet, wenn du ihn entsprechend nutzt, die Skripte, die eine bestimmte mod in deinem Savegame hinterlässt. Dafür muss man ihn allerdings nutzen bevor man die Mod aus seiner Ladeliste entfernt. Heißt speichern, cleanen, Mod löschen, gecleantes Savegame laden. Problematisch wird die Sache nur wenn mehr als eine Mod dieses Skript nutzt.
Öh.... nein, nicht ganz. Also natürlich findet der Script-Cleaner auch die Script-Fragmente von den aktuell genutzt Mods, aber im Regelfall sollte es bei denen nichts zu "cleanen" geben (einige Cleaner ermöglichen so aber, direkt Variablen zu ändern und weitergehende Diagnose, was genau wann ein Script wie tut). Der Zweck des Dings ist es aber grundsätzlich in der Tat schon, verwaiste Scriptfragmente zu entfernen... also Teile von Scripten, die nicht mehr in einer Verbindung zu einer installierten Mod stehen. Also: Spiel an einer möglichst sicheren Stelle speichern, Mod deinstallieren, Spielstand laden, Spielstand speichern, Script-Cleaner nutzen, Spielstand laden, Spielstand speichern. Dann sollte man ein "Clean Save" haben... so zumindest in der Theorie. In der Praxis würde ich, wie schon gesagt, eher die Finger davon lassen. Würde die zitierte Aussage vom SOT-Team so stimmen, würde ein Script Cleaner in der Tat beim ändern der Ladereihenfolge "undefined elements" erkennen.
Und wenn mehrere, voneinander nicht abhängige, Mods das gleiche Script nutzen, passiert da auch nichts, weil jede Mod dieses Script mit eigener Form-ID und somit völlig individuell als eigene Instanz ansprechen würde.