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 - HenneNWH - 10.05.2012 Seltsam, ich hatte gedacht, dass dieses spezielle Programmstück bei dem dieser Fehler auftritt nie ausgeführt wird. Kannst Du mir sagen welche Typen Du in deiner Gruppe hast und welche Waffen sie in den Händen halten? An besagter Stelle habe ich soeben eine DEBUG()-Meldung eingefügt. Wenn Du diese zu Gesicht bekommst, dann schick mit bitte mal den Output. RE: Reverse Engineering der NLT - Rabenaas - 10.05.2012 Ein hochgeladener Spielstand wäre auch nicht schlecht. RE: Reverse Engineering der NLT - Obi-Wahn - 10.05.2012 Leider läuft der neuste Build nicht durch. RE: Reverse Engineering der NLT - Arbosh - 10.05.2012 (10.05.2012, 19:05)HenneNWH schrieb: Seltsam,- 4 Leute: Zwerg, Thorwalerin, Hexer, Magier - Waffen: Rapier, Silberstreitkolben, Schwerer Dolch, Magierstab (10.05.2012, 19:05)HenneNWH schrieb: An besagter Stelle habe ich soeben eine DEBUG()-Meldung eingefügt.Kann leider nicht compilen, da in meiner schick_common.h das struct nvf_desc noch kein pic-Member hat. Edit: Obi-Wahn hats auch schon festgestellt Edit 2: Der Zwerg hat sich bei genauerem Hinsehen als Streuner entpuppt... RE: Reverse Engineering der NLT - HenneNWH - 11.05.2012 Ärgerlich, so ein Builldfehler. Er ist jetzt gefixt. Ich hatte den Segfault-BUG auch grad, aber einfach reproduzierbar ist er nicht. Mit Arboshs Spielstand in Daspota Kampf Nr 201 Name "DASP7" "Falschspieler" hat es einmal funktioniert. Ich habe jetzt noch ein paar Infos eingefügt. Falls jemand den BUG nochmal hat, hätte ich diesen gern. RE: Reverse Engineering der NLT - Arbosh - 11.05.2012 Hier gleich noch einer. Sieht mir nach einem fehlformatiertem printf aus: Code: Location verlassen: Wildniscamp RE: Reverse Engineering der NLT - Obi-Wahn - 11.05.2012 Anbei eine neue Windows-Version. RE: Reverse Engineering der NLT - HenneNWH - 12.05.2012 (11.05.2012, 21:55)Arbosh schrieb: Hier gleich noch einer. Sieht mir nach einem fehlformatiertem printf aus: Sehr interessant... Das printf() ist in Ordnung. Schick arbeitet hier etwas unsauber. Der Test ob jemand erkranken könnte wird auch für alle 7 Helden ausgeführt. Da du nur 4 Helden in deiner Gruppe sind hast du 3 leere Plätze. Für diese drei leeren Plätze wird auch ein Krankheitstest durchgeführt ohne zu prüfen ob diese wirklich Helden enthalten. An diesen Speicherstellen kann irgendetwas stehen und dieses Irgendetwas wurde auf deiner Konsole ausgegeben. Das Ändere ich sofort. Schick scheint ziemlich buggy zu sein, wenn die Gruppe nicht voll ist. EDIT: Zum reproduzieren empfehle ich die Straße nach Phexcaer "Reisebegegnung 29". RE: Reverse Engineering der NLT - Obi-Wahn - 12.05.2012 Und wieder eine neue Version. RE: Reverse Engineering der NLT - HenneNWH - 16.05.2012 (09.05.2012, 21:39)Arbosh schrieb: So mal wieder was neues: BrightEyes ist bei mir heut zum zweiten mal mit 'nem Segfault abgestürzt. Beim ersten Mal hatte mir die Shell noch keinen Coredump gemacht, aber diesmal war ich vorbereitet, hier ist's passiert: Ein Fix ist online. Ich komme dem Problem langsam auf die Schliche. Die Funktion zum Laden der Kampfsprites wird mit einem scheinbar ungültigen Wert (-1) aufgerufen, welcher nicht abgefangen wird. Diese gibt dann einen ungültigen Zeiger zurück, der von process_nvf() weiterverarbeitet wird und den Absturz auslöst. Den wirklichen Fehler kann ich im Moment nicht beheben, da der entsprechende Programmteil noch nicht rekonstruiert ist. Um den Absturz zu umgehen gebe ich jetzt einfach eine andere gültige Adresse zurück. Dadurch wird mal kurz ein falsches Bild eingeblendet, welches spätestens beim nächsten Zug der Figur wieder korrigiert wird. Es war abzusehen, dass diese Art von Fehler irgendwann auftritt. Unter DOS gibt es keinen Speicherschutz der verhindert, dass Programme auf Speicher zugreifen welcher ihnen nicht gehört. Heute ist das (zum Glück) nicht mehr so und wir können die Fehler von früher entdecken und beheben. RE: Reverse Engineering der NLT - Arbosh - 16.05.2012 Ich muss dir dafür einfach mal ein großes Dankeschön ausprechen für deine unermüdliche Arbeit RE: Reverse Engineering der NLT - Obi-Wahn - 16.05.2012 Und wieder eine neue Version. RE: Reverse Engineering der NLT - HenneNWH - 18.05.2012 So, ich sitze gerade vor der Funktion, welche oral eingenommene Gegenstände auswertet. Genauer gesagt bin ich gerade mit den Kräutern fertig geworden und wollte euch meine Erkenntnisse über die Wirkung von Kräutern (Ingame) mitteilen:
EDIT: Belmart von +2 auf +1 geändert. (16.05.2012, 13:11)Arbosh schrieb: Ich muss dir dafür einfach mal ein großes Dankeschön ausprechen für deine unermüdliche Arbeit Das geht runter wie Öl. RE: Reverse Engineering der NLT - Rabenaas - 18.05.2012 Gulmondblatt + Belmart = Belmart + Gulmondblatt RE: Reverse Engineering der NLT - Crystal - 18.05.2012 (18.05.2012, 19:43)HenneNWH schrieb: Bist du sicher, dass das auch für die CD-Version gilt? (18.05.2012, 19:43)HenneNWH schrieb: Vermutlich ist das unbekannte Byte dafür verantwortlich, wieviel LE die Helden während der Schlafenszeit regenerieren. Tarnelen beruhigen und geben einen Regenerierungsbonus, vielleicht wird das mit +1 aktiviert und anschließend wieder auf Null gesetzt, damit die Gruppe nicht bei jeder Rast (ohne die Hilfe einer Tarnele) verstärkt regeneriert. RE: Reverse Engineering der NLT - HenneNWH - 18.05.2012 (18.05.2012, 21:43)Crystal schrieb:(18.05.2012, 19:43)HenneNWH schrieb: Bis auf den Schreibfehler bei Belmart (es muss +1 sein) bin ich mir absolut sicher. Es wird an dieser Stelle nicht geprüft, ob die Immunität schon vorhanden ist. (18.05.2012, 21:43)Crystal schrieb:(18.05.2012, 19:43)HenneNWH schrieb: Das ist sehr gut möglich. Auf dieses Byte wird auch in Herbergen zugegriffen, was deine Aussage bestätigt. RE: Reverse Engineering der NLT - Hendrik - 19.05.2012 (18.05.2012, 19:43)HenneNWH schrieb: So, Cool! Ich verstehe aber nicht, was du mit der Anmerkung "kommutativ" meinst. Was kann man da vertauschen? Meinst du vielleicht "kumulativ"? RE: Reverse Engineering der NLT - tommy - 19.05.2012 (19.05.2012, 11:28)Hendrik schrieb: Cool! Ich verstehe aber nicht, was du mit der Anmerkung "kommutativ" meinst. Was kann man da vertauschen? Meinst du vielleicht "kumulativ"? er meinte bestimmt kumulativ. Er ist da bestimmt genau so wie ich und denkt, mhh wie hiess dass jetzt noch mal genau und dann macht goolge aus dem etwas, dann ein konkretes Wort, welches aber nicht unbedingt immer richtig ist RE: Reverse Engineering der NLT - cl10k - 19.05.2012 Auch von mir ein großes Dankeschön! Tolles Engagement! Es ist immer interessant Neuigkeiten in diesem Thread zu lesen. Ich bin schon gespannt welche Möglichkeiten der Erweiterung und Verbesserung sich eines Tages auf Basis deiner Arbeiten ergeben werden... Hast du eigentlich mal ein Statement der Rechteinhaber der NLT zu deinem Projekt bekommen? lg Christian RE: Reverse Engineering der NLT - HenneNWH - 19.05.2012 Ups, kumulativ war auch das was ich meinte. Mit den Rechteinhabern habe ich noch keinen Kontakt aufgenommen, da das Projekt sehr experimentellen Charakter hat, nicht klar war ob diese Variante auch funktioniert und ich auch Zeit und Lust habe dranzubleiben. Mittlerweile kennen wir die Antworten und bei mittlerweile über 30% der restaurierten Funktionen ist eine Kontaktaufnahme mit den Rechteinhabern durchaus angebracht. Allerdings besteht die Gefahr, dass sie ein Veto einlegen... |