Crystals-DSA-Foren
Reverse Engineering der NLT - Druckversion

+- Crystals-DSA-Foren (https://www.crystals-dsa-foren.de)
+-- Forum: Allgemeines zur Nordlandtrilogie DOS (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=20)
+--- Forum: Technische Werkstatt (https://www.crystals-dsa-foren.de/forumdisplay.php?fid=34)
+--- Thema: Reverse Engineering der NLT (/showthread.php?tid=700)



RE: Reverse Engineering der NLT - Obi-Wahn - 05.03.2013

Ich wollte dir gerade Tommys DSA Viewer empfehlen, aber da wird die Gottheit leider nicht angezeigt. :( Und die Stadtkarten auf der Hilfe-Seite sind leider auch nicht alle durchnummeriert... :(


RE: Reverse Engineering der NLT - skotsche - 05.03.2013

Servus,

ich hab erst mal eine Frage zu BrightEyes: Kann man Bugs, die mit BightEyes gefixt werden, über eine Konfiguration aktivieren und deaktivieren?

Ich frage, weil ich gelesen habe, dass Hannes auch den Dukatenbug im ersten Dungeon fixen will und den habe ich exzessiv und gerne genutzt.


RE: Reverse Engineering der NLT - Obi-Wahn - 05.03.2013

Nein, das ist nicht möglich. Da müsste man die entsprechende Änderung im Code vor dem Kompilieren wieder rückgängig machen.


RE: Reverse Engineering der NLT - skotsche - 05.03.2013

Ah ok, da ich BE sowieso kompilieren muss, wäre das immerhin eine Möglichkeit. Dann müsste ich nur wissen, wo entsprechende Änderungen zu finden sind, aber das sollte sich ja über die Historie herausfinden lassen.

Was steht eigentlich im Moment so an? Wo kann man das Projekt im Moment etwas unterstützen?


RE: Reverse Engineering der NLT - tommy - 06.03.2013

@chrisfirefox
ich denke das wird alles über den Index geregelt und der ist für das ganze Spiel fortlaufend und wird höchstwahrscheinlich irgendwo in der exe selber abgehandelt. Zumindest ist bei den Dateien aus der .DAT und auch sonst nichts weiter übrig was sowas abhandeln könnte.

Edit: ansonsten schau mal auf dieser Seite vorbei ist zwar unvollständig, aber die größten Städte sind enthalten.
http://www.ithilion.de/index.php?nav=030.010.020


@Obi-Wahn
der DSA-Viewer gehört doch schon zu seinem Grundreportoire, nicht umsonst hat er da die ganzen xml export funktionen da eingebaut ;)


RE: Reverse Engineering der NLT - Obi-Wahn - 06.03.2013

(05.03.2013, 23:12)skotsche schrieb: Ah ok, da ich BE sowieso kompilieren muss, wäre das immerhin eine Möglichkeit. Dann müsste ich nur wissen, wo entsprechende Änderungen zu finden sind, aber das sollte sich ja über die Historie herausfinden lassen.

Was steht eigentlich im Moment so an? Wo kann man das Projekt im Moment etwas unterstützen?

Henne ist im Moment wohl ziemlich mit seinem Studium beschäftigt, so dass er im Moment als Ansprechpartner ausfällt. Ich würd vorschlagen, dass du dir den vorhandenen Code schon mal anguckst und dir wie hjr448 Ecken raussuchst, die von Henne noch nicht so stark beackert wurden. Wobei ich aufpassen würde, zu viel Fremd-Abhängigkeiten mitreinzunehmen. Ich glaube nämlich zum Beispiel nicht, dass Code mit Irrlicht, damit hat hjr448 gearbeitet, bei dem momentanen Stand von Bright-Eyes in das Haupt-Repo übernommen wird.


RE: Reverse Engineering der NLT - Hendrik - 06.03.2013

Ein vollkommen unbeackertes Feld ist momentan auch "Schatten über Riva", da gibt es noch nicht einmal eine dekompilierte .ida-Datei. Ich kann mich jedenfalls erinnern, dass das Disassemblieren und Analysieren der Riva.exe nicht ganz so leicht vonstatten ging wie bei Schickm.exe und Schweif.exe.


RE: Reverse Engineering der NLT - skotsche - 08.03.2013

Hust! Da muss ich wohl gleich zugeben, dass C und Dekompilieren eher nicht zu meinen Stärken gehören. Ich dachte eher an Arbeiten drumherum, Tooling.

Ich könnte mir vorstellen, dass es z.B. hilfreich wäre, die Daten aus SCHICK.DAT usw. in XML zu exportieren. Aber ich glaube im Moment ist Tooling eher weniger gefragt und der Fokus liegt auf der modifizierten Dosbox.


RE: Reverse Engineering der NLT - chrisfirefox - 08.03.2013

Nachdem tommy da schon einen perfekten DSA-Viewer für die extrahierbaren Daten aus Schick und in Bälde auch Schweif fertig hat, wäre das irgendwie "das Rad neu erfinden" - aber als Fingerübung für dich persönlich wärs allemal interessant ;).


RE: Reverse Engineering der NLT - Hendrik - 08.03.2013

Oh, auch da gibt es eine Baustelle: Ich hatte vor einiger Zeit einmal angesprochen, wie man die Bilder der NLT nicht nur in ein einheitliches, gut zu verarbeitendes Format konvertieren könnte, sondern diese Konvertierung auch rückgängig machen könnte, sprich, eigene Bilder in die NLT einbringen.
Mit nltpack ist zumindest der Teil, die Bilder aus dem Archiv zu entpacken und wieder einzupacken, erledigt. Im "BrightEyes"-Repo liegt auch ein "nvf2tga", und auf dem SVN-Server sind diverse LUA-Files, die ebenfalls Formate aus der NLT entpacken.
Es fehlen 2 Dinge: (1) ein Export, der keine Meta-Daten vergisst, für Animations- und Mehrbild-Formate wie ACE, BOB, NVF in ein dafür geeignetes Format und (2) ein Re-Import von diesem Format zurück in die Formate der NLT. Wir hatten im Modding-Tool-Faden schon einmal darüber diskutiert.


RE: Reverse Engineering der NLT - chrisfirefox - 08.03.2013

Hendrik, eventuell solltest du da im Github-Projekt für den DSA-Viewer mal die Todos mit entsprechender Beschreibung anlegen, dann könnte sich skotsche sicher mal das Projekt ziehen und sehen, ob er nicht was beitragen kann! tommy und mich freuts sicher :)


RE: Reverse Engineering der NLT - skotsche - 08.03.2013

Uh, ich bin davon ausgegangen, dass der komplette Code von svn ins git repository migriert wurde. Dann werde ich mir mal bei Gelegenheit noch das svn repository anschauen.


RE: Reverse Engineering der NLT - tommy - 08.03.2013

ja ein bischen Hilfe hin und wieder wäre nicht verkehrt, ich finde im Moment auch viel zu wenig Zeit um daran zu arbeiten


RE: Reverse Engineering der NLT - hjr448 - 10.03.2013

Je mehr ich mich mit Hennes Arbeit beschäftige, desto mehr weiss ich, warum er es so getan hat, wie er es getan hat.

Da ich wohl eine etwas andere Art der Motivation als er habe, werde ich dennoch so weitermachen wie bisher...

(@Obi-Wahn: Klar, dass Irrlicht ungeeignet für BrightEyes ist. Aber für meine Zwecke tut's es im Moment noch.)


RE: Reverse Engineering der NLT - chrisfirefox - 14.03.2013

Hat zufällig jemand herausgefunden, wie die Schwierigkeit der Türöffnung in Türid und Türstatus kodiert ist? weil die "ID" kommt ja öfters vor, und es fällt auf, dass geöffnete Türen keine ID haben. Das müsste sich doch irgendwie in einen Modifikator für Einrennen / Knacken / Foramen umrechnen lassen, oder? Bin dankbar für jede Hilfe :) Und bitte entschuldigt, wenn ich das schon mal gefragt hab, ich hätte es nicht gefunden, aber ich darf verwirrt sein, ich seh nur mehr Codezeilen vor meinen Augen verschwimmen :).


RE: Reverse Engineering der NLT - skotsche - 17.03.2013

Servus,

ich hab mir mal die Zeit genommen und mir den Viewer von tommy angeschaut. Leider funktioniert er bei mir nicht. (http://www.crystals-dsa-foren.de/showthread.php?tid=4033&pid=116695#pid116695 )

Und mir ist nicht so ganz klar, in welchem Repository lua Skripte zu finden sind.


RE: Reverse Engineering der NLT - tommy - 17.03.2013

(17.03.2013, 12:10)skotsche schrieb: Und mir ist nicht so ganz klar, in welchem Repository lua Skripte zu finden sind.
ich glaube nur Henne hat einige lua scripte, allerdings auch nur sehr wenige, da die Programmierung mit lua schon nach kurzer Zeit eingestellt wurde.


RE: Reverse Engineering der NLT - Rabenaas - 17.03.2013

Wurde der SVN-Betrieb auf Schattenkind jetzt eigentlich eingestellt?

Andere Frage: Funktionieren die IDA-Dateien auf git mit IDAfree 5.0?


RE: Reverse Engineering der NLT - hjr448 - 17.03.2013

Die SCHICKM_302de.idb läuft bei mir unter IDAfree 5.0 ohne Probleme.


RE: Reverse Engineering der NLT - Hendrik - 17.03.2013

Sternenschweif läuft auch mit IDA Free 5.0, damit arbeite ich auch.
Ein kleiner Tipp übrigens für jene, die IDA per wine unter Linux laufen lassen: Es kommt häufiger zu Grafikfehlern, bei denen der Inhalt des Hex-Viewers durch das Assembler-Fenster zu sehen ist. Ein Schließen des Hex-Fensters sollte diese Probleme beheben, ansonsten hilft manchmal auch das Hin- und Herschalten zwischen Text- Graph View im Assembler-Fenster.