Crystals-DSA-Foren
Freude mit SQL und Drakensang allgemein - Druckversion

+- Crystals-DSA-Foren (https://www.crystals-dsa-foren.de)
+-- Forum: DSA - Am Fluss der Zeit (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=53)
+--- Forum: Technische Fragen und Modifikationen (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=58)
+--- Thema: Freude mit SQL und Drakensang allgemein (/showthread.php?tid=2829)



Freude mit SQL und Drakensang allgemein - surdum - 02.02.2011

Hallo und auf wiedersehen.

Boniwerte Schmuck, Rüstungen etc.
Man kann die Boniwerte von Schmuck oder anderen verzauberten gegenständen leider nicht einfach so ändern, wie man es gerne würde, aber dennoch kann man es tun.
Zum Beispiel hat ein "Titaniumring der unbändigen Kraft" (_Instance_Jewelry - Id:ring_unique_kraftring) einen Bonus auf Körperkraft von +3 (Spalte:PermanentEffect - Wert:PeKK3) und diesen kann man leider nicht einfach so ändern, da es sonst zum direkten Spielabsturz kommt, oder spätestens wenn man den Ring anlegt.

Sicher gibt es einen noch eleganteren Weg, aber man kann in der besagten Spalte die Zelle editieren und aus PeKK3 einfach PeKK3;PeKK3 machen, wodurch man zweimal den Bonus von +3 erhält, also +6 insgesamt auf Körperkraft. Hier kann man beliebig viele und uach verschiedene Boniwerte aneinanderreihen, immer schön durch ein Semikolon getrennt, ohne Leerzeichen und Absätze.

Items ins Inventar zaubern
Aus den Tabellen _Instance_Item, _Instance_Jewelry, _Instance_Armor und _Instance_Weapon kann man sich beliebige Objekte aussuchen und in sein Inventar bringen.
Das ist leider immer mit einem Laden des manipulierten Speicherstandes verbunden.
Hat man die Id eines Items kopiert geht man in die Tabelle _Instance_PC, sucht sich aus einen Char aus, geht in die Spalte SetupStorage nd trägt dort die Id in der Form "Tablename/Id" ein.

Möchte man zum Beispiel das Item Wundpulver in sein Inventar zaubern, wird an dieser Stelle "Item/crafted_alc_wundpulver" eingetragen, mit "Apply Changes" bestätigt, die editierte Datei mit SQL abgespeichert (links oben im SQL-Fenster die Diskette oder File->Save Database), zur Sicherheit der SQL-Browser geschlossen, da es sonst später zum Absturz kommt (wenn man die selbe Savedatei, die der SQL-Browser offen hat nun im Spiel mit einem neuen Spielstand überschreibt) und nun den manipulierten Speicherstand lädt.
Dazu muss man Drakensang.EXE nicht beendet haben, das Spiel beansprucht die Savedateien nur beim Laden und Abspeichern des Spielstandes.

Da es in anderen Foren zu Missverständnissen kam noch mal Analog die Vorgehensweise für andere Items:
Amulett der Rondra, Id:amulet_special_rondra aus der Tabelle _Instance_Jewelry
Einfach "Jewelry/amulet_special_rondra" einfügen.
Schlüssel zum baderaum, Id:locr04_key_baderaum Tabelle _Instance_Key
"Key/locr04_key_baderaum"
Thorwaller Schild, Id:me_rundschild_thorwaler Tabelle _Instance_Shield
"Shield/me_rundschild_thorwaler"
Stiefel aus Elfenbausch, Id:feet_cl_schuhe_elfen_bausch Tabelle _Instance_Armor
"Armor/feet_cl_schuhe_elfen_bausch"
Fisch (Waffe), Id:mace_1h_fisch Tabelle _Instance_Weapon
"Weapon/mace_1h_fisch"

Man kann mehrere Items gleichzeitig ins Inventar zaubern.
Man sollte darauf achten, dass auch genug Platz da ist, ich habe jedenfalls keine Lust das jetzt auszuprobieren.
Will man die im oberen Absatz genannten Items alle gleichzeitig haben, dann einfach ohne Leerzeichen mit Semikolon (;)trennen.


Das Maximumlevel ist Lvl 20 mit 24.000 AP
Ab 24.000 AP erhält man keine weitern AP dazu.
Sollte man also mit CheatEngine diesen Wert manipulieren dann auf maximal 23.999 setzen, sonst läuft man ewig als Lvl 1 Held durch die virtuelle Welt.

SQL Download am besten mal nach "SQL Database Download" googeln.
Benötigt keine Installation, lediglich entpacken und loslegen.
Zur Sicherheit die Speicherstände doppelt sichern, auch wenn der Platz knapp wird, da man mit SQL versehentlich etwas machen könnte, das das Spiel zum Absturz bringt und die Fehlersuche dauert womöglich länger als sich den Fortschritt wieder zu erspielen.

Ihr habt Fragen,
ich habe Antworten, auch wenn sie nicht gefallen. :pfeif:


RE: Freude mit SQL und Drakensang allgemein - Rabenaas - 03.02.2011

Hallo surdum :wave:,

sehr interessant. Weißt Du, ob und in wie weit sich Questen bzw. Spielelogik sich in der DB wiederspiegelt? Kann man z.B. den NPC XY auf A platzieren, oder ihm Gesprächsoptionen vorgeben?


RE: Freude mit SQL und Drakensang allgemein - Junivera von Duisburg - 04.02.2011

Gute,geile Frage. Wenn das möglich ist, geht ja richtig was ab. Bin auf die Antwort gespannt wie ein Flitzebogen und wenn das dann noch für PC Laien
wie mich möglich ist, weil gut erklärt und leicht verständlich das Ganze ist mit wenig kopieren in Ordnern und hin und her wechseln, dann alle Achtung !
Aber hallo, Nachtigall ich hör dich tapsen...wünsche mir nicht viel mehr als ein Doppelklick...wenn irgendwie möglich...bitte,bitte ich flehe dich an mach das möglich.
Du hast die Antworten Surdum für mich und andere auch wenn sie nicht gefallen. Rede dich jetzt nicht heraus.


RE: Freude mit SQL und Drakensang allgemein - surdum - 04.02.2011

Diese sachen entziehen sich leider meiner Kenntnis.
Die Grundlagen für die hier genannten Tricks ahbe ich abgekuckt.
Lediglich dass man mit einem Semikolon mehrer Items bzw. mehrer Boni hinzufügen kann habe ich selber herausgefunden.
Und dass Lvl 20 das Max ist mit 24.000 AP. Jedoch erhält man mit Lvl 16 das letzte mal Upgrades für Talente, anstieg gibts nur noch bei den Waffentalenten und bei den Levelabhängigen Zauberspürchen wie zum Beispiel hilfreiche Tatze.

Viel Spaß beim neugierigen Durchforsten der Datenbanken.


RE: Freude mit SQL und Drakensang allgemein - bolthan2003 - 04.02.2011

Nett, allerdings braucht man für die Dinge die surdum hier beschreibt keinen SQL-Editor. Ich finde es aber trotzdem gut, dass du es hier beschrieben hast ;)
Als einfacheren Weg kann man den Editor von foobar verwenden. Das schöne an dem Teil ist, dass man in neben dem Spiel laufen lassen kann, ohne dass das Spiel wegen Zugriffsverletzungen abstürzt.

Den Editor findet man hier:
Foobar's Editor

@Rabenaas
Zur Frage ob man NPC auf Platz XY platzieren kann, ja das ist möglich. Das ist eine Frage die ich selbst auch einem Moder-Kollegen im dtp Forum gestellt habe.

In der Spalte Transform wird die Position einer Figur gespeichert. Man läuft also mit seiner Spielfigur an die gewünschte Stelle wo später etwas im Mod stehen soll, speichert ab, und trägt die Daten dann beim selbstentwickelten NPC ein.
Hier das Orginalzitat von Lord Demon
Modding by Lord Demon

Hinsichtlich der Gesprächsoptionen kann ich dir auch nur den Mod von Lord Demon empfehlen oder den von Derpas Mata "Stummer Alrik". Beide verwenden Gesprächsoptionen, allerdings nur im kleinen Umfang. Also im Sinne von "Ja" oder "Nein" -> Probe bestanden weitere Dialogoption oder nicht bestanden, komm später wieder. Die Möglichkeit von Auswahlmöglichkeiten ist also durchwegs gegeben, allerdings sind sie sehr arbeitsaufwändig zu realisieren.

Was du mit Spielelogik genau gemeint hast, ist mir leider unklar, wenn du deine Frage weiter ausführst, kann ich sie vielleicht beantworten.


An der Stelle möchte ich für Lord Demon's Forscher-Mod Werbung machen, wer sich an die Installationsanleitung im Thread hält, sollte den Mod ohne Probleme spielen können. Man findet ihn hier:
Forscher Mod by Lord Demon

Der Mod zeigt eigentlich fast alles was beim derzeitigen Drakensang-Erkenntnis-Stand möglich ist.

@surdum
Noch was, die von die dir verwendeten Beispiele beziehen sich alle auf den zweiten Drakensang Teil AFdZ. Die Datenbank-Struktur vom ersten Teil ist ein wenig anders, spielt aber bei den von dir gewählten Beispielen eigentlich keine Rolle. In AFdZ sind viele Dinge einfacher machbar, als es in Drakensang der Fall war.

Der Thread wäre also meines Erachtens im AFdZ Modding Bereich besser aufgehoben, zumindest meines Wissens ;)


RE: Freude mit SQL und Drakensang allgemein - Zurgrimm - 04.02.2011

(04.02.2011, 10:11)bolthan2003 schrieb: Der Thread wäre also meines Erachtens im AFdZ Modding Bereich besser aufgehoben, zumindest meines Wissens ;)
Das war allerdings mein Fehler, denn ich habe ihn hierher verschoben. Dem Text konnte ich - auch da ich DraSa nie gespielt habe - nicht entnehmen, daß es um den zweiten Teil geht und im Titel steht "Drakensang allgemein". Ich habe ihn jetzt mal weiterverschoben. Danke für den Hinweis, bolthan.


RE: Freude mit SQL und Drakensang allgemein - Rabenaas - 04.02.2011

(04.02.2011, 10:11)bolthan2003 schrieb: Was du mit Spielelogik genau gemeint hast, ist mir leider unklar, wenn du deine Frage weiter ausführst, kann ich sie vielleicht beantworten.

Hauptsächlich die "wenn-dann"-Struktur von Questen, z.B. "wenn Held die Gesprächsoption A wählt, dann bekommt er Gegenstand B ins Inventar". Ich halte es für unwahrscheinlich, dass das in C++ programmiert wurde. Das könnte in der DB festgelegt sein. Normalerweise macht die Nebula-Engine sowas allerdings mit TCL-Skripten, soweit ich weiß.


RE: Freude mit SQL und Drakensang allgemein - bolthan2003 - 04.02.2011

Das ist bei AFdZ und auch in Drakensang in _Scripts_Conditions abgelegt. Jog erklärt das - meines Wissen - im dtp-Forum recht gut.
Modding by Jog

Damit lässt sich mit Verständnis für die Materie schon etwas selbst basteln.

Zu den tcl-Scripts - meines Wissens steuern die in Drakensang nur den Gui, die eigentlichen Scripts sind in der Datenbank hinterlegt. Nach Zerlegung der export.npk's in Drakensang lassen sich nur folgende tcl-Scripts auffinden:
startup.tcl
systemskin.tcl

Ich hoffe damit wären die momentanen Fragen geklärt.

LG bolthan


RE: Freude mit SQL und Drakensang allgemein - Rabenaas - 04.02.2011

(04.02.2011, 11:20)bolthan2003 schrieb: Ich hoffe damit wären die momentanen Fragen geklärt.
Ja, äh nein. Ich habe mal was gelesen, dass sich die Orte nur mit Maya editieren ließen, haben aber die Begründung dazu nie gefunden. Außerdem gibt es zu Maya ja auch eine kostenlose Testversion. Fällt Dir dazu vielleicht noch was ein?


RE: Freude mit SQL und Drakensang allgemein - bolthan2003 - 04.02.2011

Naja das Problem ist, das die in Drakensang verwendeten Dateien im eigentlichen Sinne keine Maya-Daten mehr sind, sondern durch ein Maya-Plugin gejagt wurden und für die Nebula-Engine passend gemacht wurden. Die Nebula-Daten in ein lesbares Objekt-Format umzukonvertieren geht scheinbar noch (zumindest lt. dtp-Forum) allerdings gehen anscheinend die Animationen verloren.

Meiner Ansicht bräuchte es einen Programmierer der Erfahrung mit 3D-Daten hat, der dann ein Konvertierungsprogramm für die Nebula-Daten schreibt. Mit einem solchen Programm wäre die Erstellung von zusätzlichen Content möglich. Die Ansteuerung könnte dann ähnlich wie der Trigger mit der Necker-Insel funktionieren -> Ruderboot klick und man rudert auf eine andere Insel - so zumindest meine Theorie.

Hier der dtp-Beitrag (darin geht es eigentlich nur um das Frisuren modden, allerdings wird das Problem behandelt)
Gesichter(Köpfe) der NPCs nutzen

Für Warcraft3 konnte die Modelle damals in ein textbasierendes Format umgewandelt werden. Dafür wurde dann ein Mini-Editor geschrieben mit dem sich dann Modelle anpassen ließen.
Vielleicht findet sich noch jemand der ein solches Tool schreibt, dann wären auch Umgebungsänderungen möglich. Theoretisch wäre es dann möglich Ferdok in AFdZ einzubauen - Traummodus an ;)


RE: Freude mit SQL und Drakensang allgemein - bolthan2003 - 05.02.2011

Hier noch ein Link zum Blog von "Andre Weissflog the original creator of The Nebula Device"
Nebula Device

Im ausgewählten Beitrag kann man sehr schön sehen wie die Tools aufgebaut sind und wie das Ganze funktioniert.


RE: Freude mit SQL und Drakensang allgemein - surdum - 07.02.2011

Danke für den Foobar-Tipp.
Ich nahm an, dass aufgrund der der selben Grafik etc. kein Unterschied zwischen den beiden Teilen besteht, habe es aber mit Drakensang I nicht ausprobiert.
Daher auch der Missgriff mit dem titel.


RE: Freude mit SQL und Drakensang allgemein - bolthan2003 - 29.03.2011

Die Forscher-Mod ist nun - seit längerer Zeit - fertig - das Beta-Testing wurde abgeschlossen. Wer die Mod noch nicht gespielt hat, findet sie nun hier:
http://forum.dtp-entertainment.com/viewtopic.php?f=230&t=18203

Wünsche allen viel Spass! Lord Demon und Liloe Feuerschwinge haben wirklich ein rundes Ganzes abgeben - 1-2 Stunden Spass sind vorprogrammiert ;)


RE: Freude mit SQL und Drakensang allgemein - orkischehorde - 13.11.2021

Btw, die ID für Eingebung ist "ingredient_special_gedanke", 

also sollte im SetupStorage "Item/ingredient_special_gedanke" erscheinen.