Themabewertung:
  • 5 Bewertung(en) - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Reverse Engineering der NLT
(22.03.2014, 09:31)HenneNWH schrieb: Danke für das Angebot. :thx:

Ich sehe drei Möglichkeiten
a) mit IDA im disassemblierten Code des ganzen Spiels rumsuchen, oder
b) im Bright-Eyes Code einigen Variablennamen mehr Sinn verleihen oder zu dokumentieren, oder
c) Du hast eigene Ideen.

Wie möchtest Du denn vorgehen?


hier schulde ich noch eine Antwort, eines vorweg: ich habe auf Grund meines Praktikums und meiner anderen Freizeitbeschäftigungen nun doch nicht so viel Zeit, mich der Sache sofort anzunehmen.

erst einmal muss ich sagen, dass ich mich hauptsächlich mit den Inhalten der Schick.dat, star.dat oder riva.alf beschäftige, um eine individuelle NLT erstellen zu können. Und bisher habe ich eigentlich immer nur in den Dateien bestimmte bytes gezielt verändert und nachgesehen, was es im Spiel bewirkt. Da steckt aber kein Super System dahinter, sondern einfach nur gesunde Neugier. Sicher könnte ich mit einem professionellen System effektiver arbeiten, aber ich bezweifle, dass ich genug vom Programmieren verstehe, um das einsetzen zu können.

Wenn ich etwas herausfinde, poste ich es einfach hier und auch in der Wiki (noch einmal danke an Obi-Wahn, der mir dort das Recht zu schreiben eingeräumt hat)
Hacke Tau, Kumpels!

Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?

Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
So wieder etwas Neues bei Bright-Eyes:

Schick:
  • Bugfix: Heiler vorerst abgeschalten, Speicherzugriff
  • Ersetzt: Funktion für Laufen, sämtliche Soundfunktionen, Dateizugriffe auf die SCHICK.DAT und das TEMP-Verzeichnis

Schweif:
  • Bugfix: Kollisionsfehler (laufen durch Wände), Abfangen von nearcalls in Overlay-Segmenten
  • Ersetzt: Talentproben, Positionssuche von Gegenständen
  • Features: Ausgabe von Talentproben wie bei SCHICK

Der Kollisionsfehler trat nur bei den CPU-cores simple und normal auf.

Viel Spaß,
Henne
(04.04.2014, 22:25)HenneNWH schrieb: So wieder etwas Neues bei Bright-Eyes:
Liest sich gut. Wo ist die aktuelle Version denn aufgelistet?

(04.04.2014, 22:25)HenneNWH schrieb: Schick:
  • Bugfix: Heiler vorerst abgeschalten, Speicherzugriff
Was heißt das denn konkret?

Bei mir ist es noch zu den folgenden weiteren Abstürzen gekommen.

-Talentheilung von Held zu Held im Travia-Tempel in Thorwal
-Kämpfe mit Piraten, wenn der Pirat links unterhalb eines Helden (Südwest) diesen angreift bzw. der Held von rechts oberhalb einen Piraten (Nordost) angreift
-Kämpfe mit Beteiligung von Magiern, Priestern, und Hohepriestern (Spinnenhöhle, verfallene Herberge, Tempel des Namenlosen)
-In Kämpfen, wenn ein Vierbeiner (Waldlöwe, Steppenhund, Grimwolf) die Flucht antreten will und sein "Wendekreis" blockiert ist
-Verschiede Situationen, wenn Gegner nachrücken (Grimwölfe im Wolfsbau, Harpyien bei Gorah)

(04.04.2014, 22:25)HenneNWH schrieb: Schweif:
  • Ersetzt: Talentproben, Positionssuche von Gegenständen
  • Features: Ausgabe von Talentproben wie bei SCHICK
Darauf freue ich mich am meisten. :jippie:
(05.04.2014, 08:14)Fíonlaighrí schrieb: Liest sich gut. Wo ist die aktuelle Version denn aufgelistet?

Den Quellcode gibt es zu selbst Bauen im Bright-Eyes Repository auf Github. Ein Windows Binary (also eine EXE-Datei) wird von Obi-Wahn meist zeitnah unter Bright-Eyes Download bereitgestellt,
was Dir aber sicher schon bekannt ist.

(05.04.2014, 08:14)Fíonlaighrí schrieb:
(04.04.2014, 22:25)HenneNWH schrieb: Schick:
  • Bugfix: Heiler vorerst abgeschalten, Speicherzugriff
Was heißt das denn konkret?

Das heißt, dass der Heiler vorerst wieder mit dem Code aus der SCHICKM.EXE von DOSBox emuliert wird,
statt mit dem Code den ich nachgeschrieben habe. Für den Spieler macht das keinen Unterschied.

Der Grund für die Abstürze, welche mit der Fehlermeldung "Unknown call instruction" ausgeben ist folgender:


(05.04.2014, 08:14)Fíonlaighrí schrieb: Bei mir ist es noch zu den folgenden weiteren Abstürzen gekommen.

-Talentheilung von Held zu Held im Travia-Tempel in Thorwal
-Kämpfe mit Piraten, wenn der Pirat links unterhalb eines Helden (Südwest) diesen angreift bzw. der Held von rechts oberhalb einen Piraten (Nordost) angreift
-Kämpfe mit Beteiligung von Magiern, Priestern, und Hohepriestern (Spinnenhöhle, verfallene Herberge, Tempel des Namenlosen)
-In Kämpfen, wenn ein Vierbeiner (Waldlöwe, Steppenhund, Grimwolf) die Flucht antreten will und sein "Wendekreis" blockiert ist
-Verschiede Situationen, wenn Gegner nachrücken (Grimwölfe im Wolfsbau, Harpyien bei Gorah)

Talentheilung funktioniert wieder.

Wie äußert sich denn der Absturz? Diegleiche Fehlermeldung wie oben, hängenbleiben mit geringer CPU-Last oder hängenbleiben mit hoher CPU-Last?
Gib bei Kämpfen auch mal die Nummer des Kampfes an, die wird bei Start des Kampfes in der Console ausgegeben.
Da kann ich leichter reproduzieren.

Viele Grüße,
Henne
(05.04.2014, 10:57)HenneNWH schrieb: Ein Windows Binary (also eine EXE-Datei) wird von Obi-Wahn meist zeitnah unter Bright-Eyes Download bereitgestellt, was Dir aber sicher schon bekannt ist.

"zeitnah" ist relativ, meistens mach ich es innerhalb weniger Tage.

Leider kommt es beim neusten Build zu einem Hänger in der Schweif-Abteilung. Log ist im Anhang. Ich habe versucht, den Schweif-Teil einfach auf einen alten Stand zu bringen und dann zumindest mit den Änderungen für Schick eine neue Version zu bauen, aber leider sträubt sich mein Git die fehlende Datei zurückzusetzen, die wohl auch zu dem Build-Error führt. *gnfmpf*


Angehängte Dateien
.zip   BuildLog.zip (Größe: 5,25 KB / Downloads: 4)
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)
Hallo Obi,

ich muss mich entschuldigen. Die beiden fehlenden Dateien hatte ich nicht mit abgeschickt.
Versuch es jetzt nochmal.
(05.04.2014, 10:57)HenneNWH schrieb: Wie äußert sich denn der Absturz? Diegleiche Fehlermeldung wie oben, hängenbleiben mit geringer CPU-Last oder hängenbleiben mit hoher CPU-Last?
Gib bei Kämpfen auch mal die Nummer des Kampfes an, die wird bei Start des Kampfes in der Console ausgegeben.
Das Spiel läuft nicht weiter, stattdessen erscheint die Meldung "dosbox.exe funktioniert nicht". CPU ist niedrig.
Beispiel für einen Kampf: Kampf-Nr.42 Name "F05107". Das ist der Kampf in der Spinnenhöhle, gleich wenn man reinkommt.
Neue Version vom 05.04.2014!
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)
Das Ersetzen der Funktionen fürs Laufen und vielleicht auch der Musik hat noch einmal einen ordentlich Geschwindigkeitsboost ergeben. Ich kann jetzt mit Bright-Eyes bei ca. 70 Cycles flüssig durch Thorwal laufen. Sonst brauchte ich mindestens 100 Cycles oder so.
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)
Vielen Dank für die hilfreichen Hinweise!

Es kommt zu einem Speicherzugriffsfehler bei Fernkampfangriffen von Feinden.
Ich kann vorerst einen kleinen Bugfix einreichen und werde den entsprechenden Code als nächstes genauer unter die Lupe nehmen
um herauszufinden ob das ein Fehler von mir oder vom Original war.

Das tritt aber nur unter Windows auf.

Warte Obi, ich schicks gleich los. EDIT: Abgeschickt!
Neue Version ist online. Achtung: Ich habe die alte Version von heute einfach ersetzt!
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)
Neue Version vom 13.04.2014!
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)
in der Schickm.exe wurden schon ganze Datensätze von Dungeons ausgeforscht. Dort steht aber bisher nur die Mine in Prem, die Zwingfeste und die Piratenhöhle samt Truheneinhalten. Weiß man schon, wo die anderen Dungeons aufgelistet sind?
Hacke Tau, Kumpels!

Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?

Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
Habe es jetzt selbst herausgefunden: ich habe einfach nach der Truhe mit den 10 Araxflaschen in der Spinnenhöhle gesucht und herausgefunden, dass ich nicht nach 38 0A (10xAraxgift), sondern nach 38 38 38 38... (Araxgift, Araxgift...) suchen musste. Demnach enthalten bestimmte Dungeons nur Einzelgegenstände, andere nur gestapelte Gegenstände.
Hacke Tau, Kumpels!

Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?

Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
Passt das nicht auch zu dem Vorkommen der Gegenstände nach einigen Kämpfen außerhalb von Dungeons? Ich meine mich zu erinnern, dass an einer Stelle (wohl irgendwo im Gebirge, glaube ich) 10x ein einzelner Pfeil aufgelistet wurde...
"Alrik war durstig und hat getrunken."
Du meinst also, als sei auch die Kampfbeute hier hardgecodet? Ich schau jetzt mal, ob nicht auch eine der Truhen 10 einzelne Pfeile enthält. Steht denn irgendwo hier im Forum, in welchem Kampf welche Gegenstände erbeutet werden können. Ich bräuchte sie auch in der richtigen Reihenfolge, damit ich nach einer Reihenfolge von bytes suchen kann. Sonst müsste ich immer umständlich suchen. Irgendwo in diesem Forum stehen die Truheninhalte, die auf Crystals Hilfeseite noch fehlen, aber wo? Ich weiß, dass Zurgrimm es geschrieben hat, finde aber die Stelle nicht mehr.
Hacke Tau, Kumpels!

Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?

Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
(04.05.2014, 11:32)Lippens die Ente schrieb: Ich weiß, dass Zurgrimm es geschrieben hat, finde aber die Stelle nicht mehr.
Das war im Thread "NLT-Update: Hilfe bei Truheninhalten" auf Anfrage von chrisfirefox für die Schick HD.
"Haut die Säbel auffe Schnäbel."
Danke Zurgrimm, dort hätte ich nie gesucht. Aber jetzt weiß ich es wieder.
Hacke Tau, Kumpels!

Ihr seid Freunde der alten NLT? Freunde des Mikromanagements? Ihr sucht eine neue Herausforderung, weil euch die NLT zu leicht war?

Dann spielt doch mal Schicksalsklinge HD 1.36 von Crafty Studios!
Kleines Bright-Eyes Update:
  • Ersetzte Funktionen: Teile des Gruppenmanagements
  • Bugfixes: Probleme bei BigEndian Architekturen (z.B. PowerPC), betrifft keine Intel/AMD Nutzer

Viele Güße,
HenneNWH
Neue Version vom 09.05.2014!
--------
Warnung! Geschichte kann zu Einsichten führen und verursacht Bewusstsein!
Avatar by: Keven Law (CC BY-SA 2.0)




Benutzer, die gerade dieses Thema anschauen: 6 Gast/Gäste