Crystals-DSA-Foren

Normale Version: Reverse Engineering der NLT
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
könnt ihr mal prüfen ob die BSKILLS.DAT ind Schick und Schweif identisch im Aufbau sind, wenn ja könnte man die im Wiki näcmlich zusammenfassen. Also sprich ne eigene Seite für diese Datei erstellen.
Ja, gleicher Aufbau, sogar die selben Werte in allen drei Teilen.

Andere Baustelle aber ein interessantes Detail, die Einträge von SUBLOCS werden in den MAD-Dateien benutzt. Also die Einträge in den jeweiligen Dats (Healer, Tavern, Smith, usw.) werden mehrfach verwendet, nur die Strings werden (über das 3. Byte) verändert.

EDIT:
Ich seh gerade das im Wiki ein paar Spambots unterwegs sind.
(06.10.2013, 13:23)Helios schrieb: [ -> ]EDIT:
Ich seh gerade das im Wiki ein paar Spambots unterwegs sind.
was wie geht das denn, hat doch eigentlich niemand auser uns schreibrechte
Danke für die Info. Hab's behoben, wobei ich nicht weiß, wie es dazu kommen konnte. Mediawiki hat die Einstellungen einfach vergessen... Könnt ihr denn jetzt noch schreiben?
Ja, hab es gerad getestet, funktioniert alles.
irgendwie hab ich ein Problem: wenn ich mich anmelden will, oder mir änderungen anschauen will lande ich im moment auf einer weißen Seite
Probier mal die direkte Adresse, die Weiterleitung scheint mehr Probleme zu machen als das sie nützt: http://obiwahn.h2174870.stratoserver.net...Hauptseite
jep das funktioniert, danke :)

Edit:
boa aber da wird ja echt versucht massiv zu spamen, über 50 regestrierungen in nur 4 Stunden
Ich werde mir das am Wochenende nochmal angucken und wahrscheinlich die Registrierungen ganz schließen. Accounts gibt es dann nur noch auf persönliche Anfrage. Mich wundert nur, warum das alles so massiv auftritt...
hat eigentlich schon mal irgendwer rausgefunden wie die Uhrzeit codiert ist? Ich wollte die eigentlich in meinen Savegame Editor mit einbauen, aber ktuell komm ich da echt nicht weiter -.-*
Leider muss ich die Aussage von gestern revidieren, die Zuordnung der SUBLOC Einträge erfolgt nicht über die .MAD Dateien. :motz:
Für einige Karten z.B. Kvirasim passen die Werte zwar perfekt, nur leider ohne Auswirkung. Ich nehme stark an, dass es mal so funktioniert hat oder zumindest vorgesehen war. Zum testen habe ich neue Gebäude plaziert und alte ausgetauscht. Wie Hendrik etwas weiter vorne im Thread schon angemerkt hat, werden neue Gebäude, egal welchen Typs, als normale Häuser behandelt. Also ich kann soviel Tempel in die Stadt stellen wie ich möchte, nur der Originale benutzt den ersten Eintrag in Sublocs. Tauscht man nun den Tempel gegen etwas anderes wie eine Herberge bleibt es beim betreten ein Tempel. Benutzt man aber einen Boden, passiert nichts mehr beim drüber laufen.
Ich gehe also stark davon aus, dass es auch irgendwie in Schweif hardcodet ist, welcher Subloc Eintrag auf einem bestimmten Feld benutzt wird.

EDIT: Nein tut mir leid, um die Uhrzeit habe ich mich noch nicht gekümmert.
(07.10.2013, 15:28)Helios schrieb: [ -> ]Zum testen habe ich neue Gebäude plaziert und alte ausgetauscht.
So etwas kannst du? Das ist ja sagenhaft! :shock:

(07.10.2013, 15:26)tommy schrieb: [ -> ]hat eigentlich schon mal irgendwer rausgefunden wie die Uhrzeit codiert ist? Ich wollte die eigentlich in meinen Savegame Editor mit einbauen, aber ktuell komm ich da echt nicht weiter -.-*

Mhm. Ich überlege, ob es möglich sein muss oder nicht die geringste Chance besteht, die Uhrzeit in den Savegame-Editor mit einzubauen.

Um herauszufinden, wo und wie die Zeit im Spielstand codiert ist, muss man doch eigentlich nur zwei Versionen des Spielstandes (mittels Hex-Editor) miteinander vergleichen (und dann schauen, was sich verändert hat): Eine vor und eine nach dem Verstreichen von einer Stunde Zeit im Spiel (s. Anhang). Würde mich wundern, wenn das noch niemand aus diesem Forum hier gemacht haben sollte. :rolleyes:
(07.10.2013, 15:26)tommy schrieb: [ -> ]hat eigentlich schon mal irgendwer rausgefunden wie die Uhrzeit codiert ist? Ich wollte die eigentlich in meinen Savegame Editor mit einbauen, aber ktuell komm ich da echt nicht weiter -.-*

Hab's mir gerade mal angeschaut in einem RoA2-Spielstand.

Es gibt im Spielstand einen Record, bei meinem Test-Spielstand beginnt der an Position 0x2D29, der wird eingeleitet durch den String "TIME", gefolgt von 0x0B00, dann folgen 2 Bytes Uhrzeit (siehe unten), 2 Bytes AM(=0)/PM(=1), 1 Byte Wochentag (siehe hier, 0=Rohalstag, 1=Feuertag u.s.w.), je ein Byte für Tag, Monat, Jahr (nach Hal).

Die Uhrzeit ist scheinbar so aufgeteilt, dass 0x10000 genau 12 Stunden entspricht, d.h. ein Timer-Tick entspricht etwa 0,66 Sekunden, um die Uhrzeit also um 1 Stunde vorzustellen, muss man den Uhrzeit-Wert um 0x1555 erhöhen.

EDIT: Der andere Diff-Wert, den wiese.hano gerade gefunden hat, dürfte dann die Echtzeit-Uhr sein.
(07.10.2013, 16:51)Hendrik schrieb: [ -> ]
(07.10.2013, 15:26)tommy schrieb: [ -> ]hat eigentlich schon mal irgendwer rausgefunden wie die Uhrzeit codiert ist? Ich wollte die eigentlich in meinen Savegame Editor mit einbauen, aber ktuell komm ich da echt nicht weiter -.-*

Hab's mir gerade mal angeschaut in einem RoA2-Spielstand.

Es gibt im Spielstand einen Record, bei meinem Test-Spielstand beginnt der an Position 0x2D29, der wird eingeleitet durch den String "TIME", gefolgt von 0x0B00, dann folgen 2 Bytes Uhrzeit (siehe unten), 2 Bytes AM(=0) PM(=1), 1 Byte Wochentag (siehe hier, 0=Rohalstag, 1=Feuertag u.s.w.), je ein Byte für Tag, Monat, Jahr (nach Hal).

Die Uhrzeit ist scheinbar so aufgeteilt, dass 0x10000 genau 12 Stunden entspricht, d.h. ein Timer-Tick entspricht etwa 0,66 Sekunden, um die Uhrzeit also um 1 Stunde vorzustellen, muss man den Uhrzeit-Wert um 0x1555 erhöhen.
ich hatte schon befürchtet dass die Uhrzeit ein ganz böser fortlaufender index ist. Aber was solls die Uhrzeit ist ja nicht so wichtig und dank dir weiss ich jetzt sogar wo ich das Datum in Schweif finde :)

(07.10.2013, 16:51)Hendrik schrieb: [ -> ]EDIT: Der andere Diff-Wert, den wiese.hano gerade gefunden hat, dürfte dann die Echtzeit-Uhr sein.
das sollte beide das gleiche sein. wiese.hano hat lediglich einen Schick spielstand und du hast vermutlich einen aus Sternenschweif verwendet.

@wiese.hano
die position war auch weniger das Problem, die haben wir sogar dokumentiert. Schwierig war nur die Interpretation der Werte ;)
Die Waffentabelle in Schweif.exe Version 100 ist ab Offset 0x28577 zu finden. Enthält 77 Einträge mit jeweils 8 Byte also zusammen 616 Byte.
Bei den Tabellen danach bin ich mir noch Unsicher, einige könnten aber Rezepte oder sowas sein.
So, hab jetzt Neuregistrierungen ausgeschaltet und einen Hinweis ins Wiki gesetzt.

(07.10.2013, 14:55)Obi-Wahn schrieb: [ -> ]Ich werde mir das am Wochenende nochmal angucken und wahrscheinlich die Registrierungen ganz schließen. Accounts gibt es dann nur noch auf persönliche Anfrage. Mich wundert nur, warum das alles so massiv auftritt...
Es wurde gestern im Wiki eine neue Seite für die Schweif.exe angelegt, dort habe ich schon die Offsets für die Gegenstands-Blacklisten, Waffen- und Rüstungstabellen hinterlegt. Außerdem scheint es noch Tabellen für Gifte und andere Dinge zu geben.

Wen es interessiert, folgend die Gegenstands-Blacklisten pro Klasse.


Gaukler

Jäger

Krieger

Streuner

Thorwaler

Zwerg

Hexe

Druide

Magier

Auelf

Firnelf

Waldelf
(07.10.2013, 16:51)Hendrik schrieb: [ -> ]Es gibt im Spielstand einen Record, bei meinem Test-Spielstand beginnt der an Position 0x2D29, der wird eingeleitet durch den String "TIME", gefolgt von 0x0B00
"TIME" und 0x0B00 sind der GAM-Chunk-Header.

(10.10.2013, 13:29)Helios schrieb: [ -> ]Es wurde gestern im Wiki eine neue Seite für die Schweif.exe angelegt
Die Versionbezeichnung ist hier noch etwas ungenau bzw. nicht komplett, 1.00 (Deutsch) kann die V1.00 (Diskettenversion) oder die C1.00 (CD-ROM Version, und nein das Format der Versionnummer der CD-ROM Version ist nicht V1.0*C sondern C1.0*) bezeichnen. Außerdem, gibt es einen bestimmten Grund warum du mit der ungepatchen Version (1.00) und nicht den Gepatchten (V1.04 bzw. C1.02) arbeitest?
Ok, danke für den Hinweis mit den Versionsnummern. War mir so nicht klar. Ich habe die selbe benutzt wie sie auch im Repo der IDA-Dateien zu finden ist. Und dort einfach mit Version 1.0 angefangen, es ist trivial die Offsets für andere Versionen anzupassen. Außerdem waren die Daten quasi ein Nebenprodukt, da ich nach etwas anderem geschaut hatte. Dachte aber die Tabellen könnten von Interesse sein :)

EDIT: Hab die Seite angepasst und um die Offsets für C1.02 erweitert.

EDIT2: Es gibt noch mehr Versionen wie ich gerad gelesen habe. Konkret verwende ich die O1.0, welche auch identisch mit der 100de im Repo ist.
Hallo Allerseits und den zwölfen zum Grusse,

ich habe mich heute den ganzen Tag mit den Startwerten und der Herkunft der verschiedenen Zauberformeln beschäftigt.
Dabei ist mir etwas aufgefallen.
Ausgehend von Kunars Beitrag von 2009, der klar macht, dass sich die Generierung der Schicksalsklinge in Bezug auf Zaubersteigerungen im Spezialgebiet eines Magiers anders verhält als das Spiel selber, ist mir bei der Benutzung der aktuellen Bright Eyes Version eine Kleinigkeit aufgefallen.
Jeder Magier hat ja seine Hauszauber, die er 3x steigern darf (egal welcher Herkunft diese sind).
Unter Brighteyes ist immer der erste Hauszauber nur gemäß seiner Herkunft steigerbar, die anderen je 3x.
Bsp.:
Spezialgebiet Antimagie, erster Hauszauber Beherrschung brechen, druidischen Ursprungs, daher nur einmal steigerbar.
Spezialgebiet Beherrschung, erster Hauszauber Bannbaladin, elfischer Herkunft, nur einmal steigerbar.
Spezialgebiet Beschwörung, erster Hauszauber Furor Blut, Gildenmagie, nur 2x steigerbar
usw. usf.
Ich habe es für jede magische Schuluing getestet (bei der Generierung).
Jeweils der erste Hauszauber ist nur gemäß seines Ursprungs steigerbar.
Unter der original DOSbox ist auch der erste Hauszauber 3x steigerbar.

Ich denke, das ist ein Bug.

Viele Grüße und einen schönen Restsonntag,
vonGratenfels