Truhen neu „befüllen“ in Drakensang - Druckversion +- Crystals-DSA-Foren (https://www.crystals-dsa-foren.de) +-- Forum: DSA - Drakensang (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=23) +--- Forum: Drakensang - Spielinhalt (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=38) +--- Thema: Truhen neu „befüllen“ in Drakensang (/showthread.php?tid=4350) |
Truhen neu „befüllen“ in Drakensang - Achwas - 05.08.2013 Vorneweg: das ist natürlich „Cheaten“ und nur was für Leute, die das wirklich wollen. Ferner benutze ich den SQLite-Browser, der hier irgendwo zum Download verlinkt ist. Ausgangslage war die erste Reise von Avestreu nach Ferdok. Da ich eh plante, mehrmals Loszureisen (und nein, ich „fliehe“ nicht, ich wollte mich nur nochmal vergewissern, ob auch alles erledigt ist bzw. ob Bredo nicht doch noch was anderes in der Kiepe hatte). Dazu legte ich erst mal mehrere Savegames an um zu sehen, ob sich dadurch der Inhalt der beiden Truhen veränderte. Tat er nicht, und ich empfand 14 Pfeile und 5 Wurfdolche aus der einen und eine dunkle Lederhose plus grüner Hut nicht gerade angemessen… und vor allem: nach fünffachem Neuladen verschiedener Savegames immer das selbe Ergebnis. Wovon der Inhalt abhängt, weiß ich nicht, bei mir wars einfach immer dasselbe. In Kunars Beiträgen in seinem Reisebericht fand ich seine Berichte über die Inhalte von Truhen durch Neu-Zusammenstellung der Party. Das habe ich nicht versucht, da zu wenig Auswahl. Also betrat ich das Neuland „Entlang der Rakula“ und speicherte sofort neu ab. Dann öffnete ich mittels SQLite die savegamse.dsa. Dort findet sich im Fenster „Browse Data“ an vierter Position der Eintrag „Instance_Chest“, die beiden fraglichen Truhen befinden sich ganz unten als letzte Einträge unter „currentencounter“, eine Kiste unter der Zeilenüberschrift „LootTable“ heisst „loot_kiste-trash“, die andere „loot_kiste_ammo“ - also einmal Müll und einmal Munition. Weiter hinten lautet eine Zeilenüberschrift „Loot-Table-seed“, in dem eine Zahl steht, bei mir waren es 9??6 (weiß ich nicht mehr) und 21??8. Ich las etwas höher Einträge die „loot_kiste_waffen_reich“ oder „loot_kiste_armor_reich“ und kopierte diese in meine beiden Encounter-truhen und änderte die Zahlen um, einfach mal in 9936 und 22784. Bei Durchstöbern der Kisten „Entlang der Rakula“ entdeckte ich diesmal in der Rüstungstruhe eine Kettenhaube und dunkle Lederhose, in der Waffenkiste ein Lang- und ein Breitschwert. Ab da habe ich dann bei jedem erneuten Betreten andere Zahlen eingesetzt (jedes Mal wieder „…_armor_reich“ und „…-waffen_reich“ kopiert) und festgestellt: - in der Waffenkiste ab da jedes Mal ein Breitschwert kombiniert mit etwas anderem - in der Rüstungstruhe immer eine dunkle Lederhose mit einem anderen Gegenstand. Hier meine bisherigen Funde: Waffen: (jeweils zzgl. Breitschwert) 8350 schw. Armbrust 8352 Anderthalbhänder 8440 Langschwert 8441 Langschwert 8445 Schw. Armbrust 8446 schw. Armbrust 8500 schw. Dolch 8508 schw. Armbrust 8510 schw. Armbrust 8620 Säbel 8621 Streitkolben 8626 Streitaxt 8640 Wurfbeil (?) 9632 Säbel 9730 Säbel 9732 Säbel 9781 Anderthalbhänder 9822 Kriegshammer (!) 2636 Andergaster Rüstung: (jeweils zzgl. Dunkle Lederhose) 18608 Spitzhut 19600 Kettenhandschuhe 19800 nur eine dunkle Lederhose (?) 21688 Stahlkniekacheln 21886 Nietenarmschienen 22100 Spitzhut 22200 Kettenhandschuhe 22376 Kettenhandschuhe 22398 Flügelhelm 22400 Flügelhelm 22476 Lederwams 22500 Soldatenstiefel 22508 Lederwams 22512 Stahlkniekacheln 22516 Spitzhut 22517 Spitzhut 22612 Spitzhut 22784 Kettenhaube 22786 Kettenhaube 23186 Nietenarmschienen Das sind nur Stichproben. Ich würde gerne wissen, ob das jemand reproduzieren kann und unter welcher Nummer ein Langbogen, Schild resp. Schulterpolster zu finden wären….Oder gibt es eine Liste innerhalb der static.db oder anderswo, wo die Nummern aufgeschlüsselt werden? RE: Truhen neu „befüllen“ in Drakensang - Achwas - 05.08.2013 Achja, was ich eigentlich bei der Gelegenheit fragen wollte und nicht gefunden habe: wie kann ich in Stadtgebieten Truhen-Inhalte verändern? Mit den veränderten Nummern fand ich die Kisten anschliessend "leer" vor... RE: Truhen neu „befüllen“ in Drakensang - Lord Demon - 07.08.2013 Die Truhen funktionieren folgendermaßen: Für jede Truhe existiert ein Eintrag in der Tabelle _Instance_chest im der game.db4 bzw. im Savegame. In der Spalte LootTable ist die Loot Tabelle angegeben. Die Loot Tabellen findest du in der static.db in der Tabelle _DSA_LootTables. Diese ist so aufgebaut. LootTableName Hier steht der Name aus der Spalte LootTable in der game.db4 LootTableValue Die maximale Anzahl der zu findenden Gegenstände. Dies kann ein fester Wert sein, du findest hier aber auch Einträge wie w2 oder w3, d.h. es wird vorher ausgewürfelt, wie viele Gegenstände in der Truhe sind. Dieses Auswürfeln ist fest im Spiel verdrahtet. Wichtig: 0 bedeutet 1, 1 bedeutet 2 usw. LootTableContent Der tatsächliche Inhalt der Truhe. Die Einträge in dieser Spalte sind folgendermaßen aufgebaut: Item/robable_fussel/100/1/1/; Der erste Wert nennt die Tabelle, in der der Gegenstand ist. Im obige Beispiel die Tabelle _Template_Item. Der zweite Wert ist der Name des Gegenstands. Diesen findest du in der Splate Id der entsprechenden Tabelle. Die Zahl 100 aus dem Beispiel legt die Wahrscheinlichkeit, dass der Gegenstand in der Truhe ist, in Prozent fest. 100 bedeutet also, dass der Gegenstand immer zu finden ist. Die zweite Zahl ist die Anzahl der Gegenstände. 1 bedeutet also einen Fussel, bei 10 würdest du 10 Fussel finden. Die letzte Zahl ist der Wert des Gegenstandes. Diesen findest du in der Spalte Value der entsprechenden Tabelle. Wenn wir uns jetzt deine Truhe mit der Loot Tabelle loot_kiste_armor_reich ansehen, finden wir folgende Einträge: LootTableValue hat den Wert 1, also findest du zwei Gegenstände in der Truhe. LootTableContent hat diesen Eintrag: Armor/hose_leder_01/100/1/35/;Armor/beine_stahlkniekacheln/100/1/750/;Armor/torso_lederruestung/100/1/500/;Armor/helm_sturmhaube/100/1/750/;Armor/helm_kettenhaube_kurz/100/1/700/;Armor/schuhe_soldatenstiefel/50/1/250/;Armor/helm_fluegelhelm_01/100/1/1000/;Armor/armschienen_nieten_01/100/1/300/;Armor/handschuhe_kette/100/1/1200/;Armor/hut_heilmagier/100/1/50/; Hier gibt es jede Menge zu finden. Alle Rüstungsteile bis auf die Soldatenstiefel, sin zu 100% drin. Da Value die Anzahl der Gegenstände auf zwei begrenzt, findest du auch nicht mehr. Um Einfluss auf den Inhalt zu nehmen hast du mehrere Möglichkeiten. a) Du änderst den LootTableValue. DAnn findest mehr von den angegebenen Gegenständen. b) Du änderst oder erweiterst den Eintrag in LootTableContent. c) Du änderst beides. d) Du erstellst eine eigene Loot Tabelle und trägst diesen bei der Truhe ein. RE: Truhen neu „befüllen“ in Drakensang - Kunar - 07.02.2018 Den Zwölfen zum Gruße! Mit dem Thema Rüstungsteile und Waffen aus Zufallstruhen habe ich mich eine ganze Weile beschäftigt. So ganz erschließt sich mir die Hintergrundmechanik noch nicht, aber ich erläutere einmal, was ich herausgefunden habe. Die "1" bzw. "w4" in den Mengenangaben der Tabellen steht nicht für "2" bzw. "2-5". Das sieht man daran, dass auch mal nur ein Gegenstand in der Truhe sein kann. Es ist also noch etwas komplizierter. (Vielleicht liegt es auch daran, dass einige Gegenstände nicht zu 100% in der Truhe sind, was die effektive Anzahl Fundstücke heruntersetzt.) (07.08.2013, 08:07)Lord Demon schrieb: LootTableContent Hat mal jemand ausprobiert, ob ein Ändern der Anzahl der Gegenstände auf 10 (also 11) tatsächlich alle Einträge bringt und nur die mit einer Wahrscheinlichkeit von weniger als 100% nicht immer? Die Wahrscheinlichkeit ist ja nicht die effektive Wahrscheinlichkeit dafür, dass ein Gegenstand in der Truhe ist. Das wird auch durch die Anzahl der Gegenstände begrenzt. Diese muss in der LootTableSeed-Angabe stecken, denn die Truheninhalte lassen sich alleine damit reproduzieren (wenn die Art der Befüllung richtig ist, wohlgemerkt). Es bleibt nach wie vor das Rätsel, warum in den Truhen mit "armen" und "reichen" Rüstungsteilen ein ein bestimmtes Kleidungsstück dabei ist, wenn zwei Gegenstände drin sind. Ich habe mal einige Experimente für die "mittleren" Rüstungsteile gemacht, denn von dieser Truhe findet sich bereits eine in Avestreu bei den Kahlkopfräubern. Ich habe dafür mit den Spielständen ein wenig gehext, so dass man den Inhalt als Beute beim Taschendiebstahl bei Feldwebel Erland und Fuhrmann Holdwin findet (und die beiden im Gespräch bleiben, auch wenn man näher kommt). die Liste der Truheninhalte: Armor/schuhe_lederstiefel_03/50/1/140/; Armor/schuhe_dranor/50/1/100/; Armor/schuhe_scharlatan/50/1/160/; Armor/hose_leder_02/100/1/35/; Armor/hose_leder_rot/100/1/35/; Armor/beine_lederschienen_oben_01/100/1/500/; Armor/torso_wattierter_waffenrock/100/1/400/; Armor/oberteil_heilmagier/100/1/16/; Armor/helm_tobrischer_hut/100/1/60/; Armor/helm_lederkappe/100/1/50/; Armor/arme_lederschienen/100/1/150/; einige Werte, die ich aus dem Spiel heraus erreicht habe: 12264 - 5 Gegenstände: Lederstiefel, Lederkappe, Stulpenstiefel, rote Hose, braune Hose 5097 - 4 Gegenstände: rote Hose, Tellerhelm, Magiergewand, Schnabelschuhe 11885 - 3 Gegenstände: Beinschienen, Armschienen, Lederkappe 27066 - 1 Gegenstand: Lederkappe 30750 - 3 Gegenstände: Magierrobe, braune Hose, Lederkappe 17025 - 5 Gegenstände: Lederstiefel, Tellerhelm, Beinschienen, Lederkappe, rote Hose Interessant ist, dass die Reihenfolge der Gegenstände anders sein kann. Es ist also kein einfaches Aktivieren und Deaktivieren von Truheninhalten. Ich habe dann mal die Zahlen von 1 bis 10 durchprobiert: 1 - Stulpenstiefel, braune Hose 2 - Lederstiefel, Wattierter Waffenrock, rote Hose 3 - nichts 4 - Lederstiefel, Magierrobe, Stulpenstiefel, Halbschuhe, braune Hose 5 - Armschienen, braune Lederhose, Halbschuhe 6 - Waffenrock, Tellerhelm, braune Hose 7 - Lederstiefel, Stulpenstiefel, Halbschuhe 8 - rote Hose 9 - Lederkappe 10 - Beinschienen, Armschienen, Waffenrock, braune Hose Dies zeigt, dass die Zahlen auch nicht einfach für einen Bereich von Inhalten stehen. Es ist also nicht so, dass man aus einer Zufallstabelle eine Zahl nimmt und 1-10 steht für X, 10-20 für Y. Benachbarte Zahlen weisen keine Gemeinsamkeit in den Inhalten auf. Interessant außerdem, dass bestimmte Zahlen einfach einen Leerstand produzieren. Dann habe ich Zahlen unter einer 2er-Potenz probiert: 4095 - Lederstiefel, Waffenrock, Armschienen, rote Hose 8191 - Lederstiefel, Armschienen, braune Hose, Halbschuhe Dann habe ich die Hälfte, ein Viertel, das Doppelte der ersten Truhenbefüllung probiert: 6132 - braune Hose, Beinschienen, Magierrobe, Halbschuhe 3076 - Lederstiefel, Magierrobe, Tellerhelm, Beinschienen, Stulpenstiefel 24528 - Stulpenstiefel Das dritte Beispiel zeigt, dass "reichhaltige" Kombinationen sich auch nicht einfach vorhersehen lassen. Dann habe ich probiert, wie hoch ich mit den Zahlen gehen kann: 99999999999 - 4 Gegenstände (Einer 10er-Potenz höher war die Truhe leer.) Die drei Stiefelpaare bei "7" fand ich interessant. Sie sind die ersten drei Gegenstände aus der Befüllung - auch in dieser Reihenfolge. Binär geschrieben ist 7 "111". Das wäre kompatibel mit einer "binären" Befüllung. Allerdings müssten weitere Bits dann die Anzahl der Gegenstände und ihre Reihenfolge festlegen. So einfach umrechnen ließ sich das ja nicht, wie ich bereits weiter oben festgestellt habe. Dennoch ist so ein Spezialfall interessant für die weitere Erforschung. Ich habe dann noch einmal mit Zahlen knapp unter einer Zweierpotenz experimentiert: 31 - Lederstiefel, rote Hose, Magierrobe, Waffenrock, Lederkappe 31 entspricht binär "11111". Das wären also fünf Gegenstände. Das stimmt hier sogar, allerdings sind sowohl Auswahl als auch Reihenfolge nicht wie in der Liste der Inhalte. Sprich, ich kann die Bedeutung der Zahlencodes nicht vollständig enträtseln, weiß aber, was sie abbilden müssen. Ich bin gespannt, ob jemand im Forum noch eine Idee hat! Wir reden über Zahlencodes, die mehrere Informationen gleichzeitig abbilden müssen: Anzahl, Art und Reihenfolge der Gegenstände. RE: Truhen neu „befüllen“ in Drakensang - Lord Demon - 07.02.2018 Wenn ich eine Truhe neu befüllen wollte, würde ich einfach die alte Truhe in den _graveyard_setzen und dann ein Duplikat andie gleiche Stelle packen. Alternativ dazu kann man auch die vorhandene Truhe nehmen aus der game.db4 nehmen, die zusätzlichen Felder, die im Savegame benötigt werden, mit null ausfüllen und dann ins Savegame patchen. LootTableValue legt die maximale Anzahl der Gegenstände fest. Das können also auch weniger sein, wenn Gegenstände eine Wahrscheinlichkeit von weniger als 100% haben. |