Der HEX-Thread / Spielstandsprobleme - 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: Der HEX-Thread / Spielstandsprobleme (/showthread.php?tid=80) |
RE: Der HEX-Thread - Shazu - 22.07.2007 turrican schrieb:Einhorn: Keine Ahnung, genauso seltsam wie der Sphärenriss. Ich tippe hier auf einen Bug, das Einhorn Byte scheint mit einem falschen Event verknüpft zu sein. Kolberg: Die Reisebegegnung sollte Zufall sein. Das Haus von ihm existiert leider nicht (warum auch immer...man kann es sehr simpel erstellen, die Texte etc. dafür sind vorhanden) Mondscheibe: Keine Ahnung RE: Der HEX-Thread - Zurgrimm - 22.07.2007 Hallo, Shazu schrieb:Einhorn: Keine Ahnung, genauso seltsam wie der Sphärenriss. Ich tippe hier auf einen Bug, das Einhorn Byte scheint mit einem falschen Event verknüpft zu sein.naja, das Problem damit ist ja, daß wir auch hier (wie beim Sphärenriß) quasi jedes Ereignis bereits als Auslöser logisch ausgeschlossen haben. Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 22.07.2007 Ich würd viel lieber wissen was das zu bedeuten hat: 05 1B 3F 00 15 1E 15 1E 35 14 32 14 00 00 Es soll wohl ein Kampf sein, das komische ist: 1: X-Position ist 1B, was soll die 1? 2: Die X-Positionen der Fluchtpositionen sind 1E, 1E, 14 und 14, was soll diese 1 hier wieder? Die 1er könnten die Ebene angeben, wofür dann die "Trennung" zwischen den Ebenen da wäre, wäre dann komisch? Edit: Tatsächlich, es ist die Ebene...komisch. RE: Der HEX-Thread - Zurgrimm - 22.07.2007 Hallo Shazu, ich will mir nicht anmaßen, bei Dingen mit- oder reinzureen, von denen ich nicht den Hauch einer Ahnung habe, aber was genau meinst Du mit: Shazu schrieb:Fluchtpositionen Gegner fliehen entweder, weil sie eine bestimmte LE-Grenze unterschreiten oder (im Ausnahmefall) von Anfang an. Die Flucht ist doch nicht von einer bestimmten Position des Gegners abhängig... oder meinst Du die Punkte auf dem Kampfplatz, zu denen man sich begeben kann, um zu fliehen? Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 22.07.2007 Damit ist die Stelle gemeint, an der die Gruppe/Teile der Gruppe nach einer Flucht stehen. Davon kann es bis zu 4 verschiedene (je nach Kampfplatz) geben. Flieht nur ein Teil der eigenen Gruppe und wird der Gegner besiegt, so steht trotzdem die komplette Gruppe auf der Position des Kampfes, flieht aber die komplette Gruppe ohne den Kampf zu beenden steht man ja bekanntlich sonstwo und verteilt, wenn man in verschiedene Richtungen geflohen ist RE: Der HEX-Thread - Zurgrimm - 22.07.2007 Hallo Shazu, Shazu schrieb:Damit ist die Stelle gemeint, an der die Gruppe/Teile der Gruppe nach einer Flucht stehen.Danke der Erklärung. Gruß Zurgrimm RE: Der HEX-Thread - Zurgrimm - 26.07.2007 Hallo Shazu, Shazu schrieb:flieht aber die komplette Gruppe ohne den Kampf zu beenden steht man ja bekanntlich sonstwo und verteilt, wenn man in verschiedene Richtungen geflohen istdas war mir so nicht ganz geläufig, da ich meine Helden eigentlich nie fliehen lassen. Ich habe das jetzt in der Piratenhöhle mal getestet. Dabei sind meine Helden mal in die verschiedenen möglichen Richtungen geflohen, mal alle in dieselbe. Hinterher standen sie aber beide Male auf ein und demselben Feld (und noch dazu mitten in einer Wand). Meine Frage: Bist Du Dir sicher, daß es für die Fluchtpositionen relevant ist, ob alle Helden in dieselbe oder in verschiedene Richtungen geflohen sind? Oder ist es vielmehr für jeden Kampfplatz unabhängig von der Fluchtrichtung festgelegt, wo man sich im Fluchtfalle danach wiederfindet? ... bei Gelegenheit sollte ich zur Kampfflucht wohl auch nochmal empirissche Untersuchtungen anstellen. Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 26.07.2007 Jeder Kampf hat 4 fest eingestellte Fluchtpositionen, diese sind oft jedoch gleich! Den Kampf in der Piratenhöhle, den du beschreibst: Ist das zufällig der direkt westlich des Startfelds? Da liegt der Fluchtpunkt nämlich in der Wand neben der Treppe (Und dabei dachte ich, dass man diesen Kampfplatz nie erreichen kann, da er ein meiner Meinung nach ein Alternativfeld für den Platz auf der Startposition (der 4x die Treppe als Fluchtpunkt hat) ist. Komisch.) Schau dir einfach mal ein paar Kämpfe mit meinem Dungeon Designer an, du es gibt relativ viele Kämpfe mit >= 2 verschiedenen Positionen für die Flucht. Spontan würde mir da der Kampf mit den vielen (6?) Räubern in der Zwingfeste in der ersten Ebene einfallen. Dort flieht man entweder vor die Illusionswand im westen des Raums oder direkt vor die Treppe in die 2. Ebene. Bemerkenswert an der Sache ist, dass die andere Kampfposition (Raum von S her betreten) die gleichen Fluchtpunkte hat...man also bei einer Flucht nach "links" ebenfalls vor der Illusionswand im Westen des Raums steht RE: Der HEX-Thread - Zurgrimm - 26.07.2007 Hallo Shazu, Shazu schrieb:Dort flieht man entweder vor die Illusionswand im westen des Raums oder direkt vor die Treppe in die 2. Ebene. Bemerkenswert an der Sache ist, dass die andere Kampfposition (Raum von S her betreten) die gleichen Fluchtpunkte hat...man also bei einer Flucht nach "links" ebenfalls vor der Illusionswand im Westen des Raums stehtalso ist es tatsächlich für die Frage, wo man nach einer Flucht steht, von Belang, welches Fluchtfeld man benutzt hat. Es ist nur nicht in jedem Kampf so... interessant. Shazu schrieb:Den Kampf in der Piratenhöhle, den du beschreibst: Ist das zufällig der direkt westlich des Startfelds? Da liegt der Fluchtpunkt nämlich in der Wand neben der TreppeJa, genau den Kampf habe ich getestet. Shazu schrieb:(Und dabei dachte ich, dass man diesen Kampfplatz nie erreichen kann, da er ein meiner Meinung nach ein Alternativfeld für den Platz auf der Startposition (der 4x die Treppe als Fluchtpunkt hat) ist. Komisch.)Der Startpunkt ist in der Piratenhöhle erstaunlicherweise abweichend geregelt. Man beginnt nicht unmittelbar vor der Treppe, sondern 1 Feld westlich davon (und muß sogleich kämpfen). Der Grund, warum ich mit diesem Kamof herumexperimentiert habe, ist, daß in Deinem DungeonDesigner 2 Kämpfe nebeneinander eingezeichnet sind, die offenbar nur alternativ stattfinden können. Ich wollte nun testen, ob es möglich ist, den Kampf auf dem Feld unmittelbar vor der Treppe zu führen. Das kann aber nur gehen, wenn man den Kampf noch nicht auf dem Startfeld (1 Feld westlich des Feldes unmittelbar vor der Treppe) erledigt. Weil man aber nach Betreten unmittelbar in diesen Kampf verwickelt wird, wollte ich es mit der Flucht versuchen und war erstaunt, mich in einer Mauer wiederzufinden. Allerdings kann man sich dann mit Penetrizzel und Transversalis über das (nach der Flucht ja noch bestehende) Kampffeld hinwegteleportieren und in der Tat den Kampf auf dem Feld unmittelbar vor der Treppe führen. Ob die Fluchtpositionen hier anders sind, habe ich (noch) nicht getestet. Gruß Zurgrimm RE: Der HEX-Thread - Zurgrimm - 26.07.2007 Hallo Shazu, Shazu schrieb:Den Kampf in der Piratenhöhle, den du beschreibst: Ist das zufällig der direkt westlich des Startfelds? Da liegt der Fluchtpunkt nämlich in der Wand neben der Treppeich habe das jetzt nochmal ausgetestet. Ich will versuchen, mich kurz zu fassen, weil das hier an sich ja off-topic ist: Der Kampf auf den Startfeld (1 Feld westlich des Feldes vor der Treppe) hat das direkt südlich angrenzende (Mauer-)Feld (westlich neben der Treppe) als Fluchtposition. Er findet alternativ statt zu dem Kampf unmittelbar vor der Treppe, den man nur erreicht, wenn aus dem Startkampf flieht und das Startkampf-Feld dann per Transversalis oder Visibili umgeht. Der Kampf unmittelbar vor der Treppe hat als Fluchtposition den Höhleneingang, genauo wie der Kampf gegen die 2 Piraten, der kommen kann, wenn man von der Fischsuppe nascht. Flieht man von einem dieser Kämpfe, verlassen die Helden das Dungeon also unmittelbar wieder. Das ist insgesamt interessant, denn es offenbart einen mir gänzlich neuen Fakt: Auch Kämpfe, die alternativ stattfinden, sind nicht zwingend 100%ig identisch. Zumindest in den Fluchtpositionen können sie sich unterscheiden. Will man also empirisch die Fluchtpositionen ermitteln, muß man jeden Kampf auf jedem möglichen Kampf-Feld führen und mit mindestens 1 Gruppenmitglied jede mögliche Flucht-Richtung nutzen. Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 26.07.2007 Damit es nicht off topic wird hier die HEX Infos die dahinter stecken: Zurgrimm schrieb:Das ist insgesamt interessant, denn es offenbart einen mir gänzlich neuen Fakt: Auch Kämpfe, die alternativ stattfinden, sind nicht zwingend 100%ig identisch. Zumindest in den Fluchtpositionen können sie sich unterscheiden.Korrekt, das Spiel geht bei Kämpfen so vor: Die Kämpfe werden aus der .DDT Datei geladen, sie enthalten folgende Informationen: Position Fluchtposition Extra AP Kampf ID Der Kampf mit der ID wird nun aus der Kampftabelle in den Speicher/das Savegame kopiert und zwar nur einmal pro Kampf. Also wenn man 2 Kämpfe mit der gleichen ID erstellt, so werden die Kampf Daten trotzdem nur ein mal geladen. Nach dem Kampf werden diese Daten modifiziert, besiegte Gegner werden entfernt etc, das gilt dann für alle Kämpfe, die auf diese ID verweisen. Sind keine Gegner mehr da zählt der Kampf als gewonnen und es wird kein Kampf mehr ausgelöst. Also sind "alternative Kampfpositionen" einfach nur verschiedene Kämpfe mit der gleichen Kampf ID, folglich können sich alle Positionen eines Kampfes unterscheiden in: Position (logisch) Fluchtpositionen Extra AP (wäre lustig, wenn es einen Kampf gibt der auf einer bestimmten Position mehr AP gibt) Zurgrimm schrieb:Will man also empirisch die Fluchtpositionen ermitteln, muß man jeden Kampf auf jedem möglichen Kampf-Feld führen und mit mindestens 1 Gruppenmitglied jede mögliche Flucht-Richtung nutzen.Oder du nimmst meinen Dungeon Designer und machst Rechtsklick auf die mit "K" gekennzeichneten Felder...das geht etwas einfacher RE: Der HEX-Thread - Zurgrimm - 26.07.2007 Hallo Shazu, Shazu schrieb:Oder du nimmst meinen Dungeon Designer und machst Rechtsklick auf die mit "K" gekennzeichneten Felder...das geht etwas einfacherdas Problem ist nur, daß ich ein gravierendes Problem damit habe, fremden Informationen blind zu vertrauen. Deinen DungeonDesigner schätze ich in seiner Funktion als DungeonViewer bereits jetzt sehr. Aber allein danach möchte ich nichts in meine Karten eintragen. Shazu schrieb:Also sind "alternative Kampfpositionen" einfach nur verschiedene Kämpfe mit der gleichen Kampf ID, folglich können sich alle Positionen eines Kampfes unterscheiden in:Könnten Kämpfe mit derselben ID auch unterschiedliche Gegner bzw. Anzahl an Gegnern haben? Denn es gibt ja ein paar Felder, auf denen nach bestimmten Kriterien unterschiedliche Kämpfe (im Hinblick auf die Gegner) stattfinden. Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 26.07.2007 Zurgrimm schrieb:Hallo Shazu,Die Kampfdaten lügen definitiv nicht. Es fehlen zwar evtl. noch Kämpfe, die durch besondere Events ausgelöst werden, aber bei den angezeigten Daten bin ich zu 99,9% sicher, dass diese richtig sind. Zurgrimm schrieb:Die Kampf ID bestimmt:Shazu schrieb:Also sind "alternative Kampfpositionen" einfach nur verschiedene Kämpfe mit der gleichen Kampf ID, folglich können sich alle Positionen eines Kampfes unterscheiden in:Könnten Kämpfe mit derselben ID auch unterschiedliche Gegner bzw. Anzahl an Gegnern haben? Denn es gibt ja ein paar Felder, auf denen nach bestimmten Kriterien unterschiedliche Kämpfe (im Hinblick auf die Gegner) stattfinden. ID des Kampfplatzes ID und Position jedes Gegners (theoretisch bis zu 20 pro Kampf, evtl. liegt aber noch eine Grenze bei 16, das muss ich noch testen) Also andere Gegner oder anderer Schauplatz = andere Kampf ID. RE: Der HEX-Thread - Zurgrimm - 26.07.2007 Hallo Shazu, Shazu schrieb:Die Kampfdaten lügen definitiv nicht. Es fehlen zwar evtl. noch Kämpfe, die durch besondere Events ausgelöst werden, aber bei den angezeigten Daten bin ich zu 99,9% sicher, dass diese richtig sind.das ist gut zu wissen. Aber sie sind nicht ganz exakt. Welches Fluchtfeld man benutzen muß, um zu welcher Fluchtposition versetzt zu werden, ist nicht angegeben. Shazu schrieb:Also andere Gegner oder anderer Schauplatz = andere Kampf ID.Aha. Dann müssen also auf manchen Feldern mehrere Kämpfe mit verschiedenen ID's liegen. Shazu schrieb:ID und Position jedes Gegners (theoretisch bis zu 20 pro Kampf, evtl. liegt aber noch eine Grenze bei 16, das muss ich noch testen)Im Spiel ist 12 die höchste Gegnerzahl, die ich kenne. Das ist in Daspota. Eventuell kann der Endkampf das noch übertreffen. Aber mehr, als 16 Gegner sind es sicherlich nirgendwo... natürlich unabhängig davon, ob das technisch möglich wäre. Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 26.07.2007 Meine Theorie über Teleport-Felder in Illusionswänden die Einbahnstraßen darstellen sollen war wohl falsch. IDs von Illusionswänden: Nibble 1 ist immer B. Nibble 2 gibt die Art der Wand an: ID | kann aus diesen Richtungen betreten werden 0 = nur rückwärts 1 = S 2 = W 3 = W, S 4 = N 5 = N, S 6 = N, W 7 = N, S, W 8 = O 9 = O, S A = O, W B = O, W, S C = N, O D = N, O, S E = N, O, W F = N, S, O, W RE: Der HEX-Thread - Shazu - 26.07.2007 Zurgrimm schrieb:Hallo Shazu,Weil die Daten hinter der ID noch nicht ausgelesen werden. Zurgrimm schrieb:Ich weiss gerade nicht auf was du dich beziehst, aber durch spezielle Ereignisse kann durchaus eine KampfID nachträglich geändert werden.Shazu schrieb:Also andere Gegner oder anderer Schauplatz = andere Kampf ID.Aha. Dann müssen also auf manchen Feldern mehrere Kämpfe mit verschiedenen ID's liegen. Aber theoretisch spricht nichts gegen mehrere Kämpfe auf einem Feld, diese sollten dann nacheinander ausgelöst werden. Zurgrimm schrieb:Der Endkampf hat genau 16 Gegner.Shazu schrieb:ID und Position jedes Gegners (theoretisch bis zu 20 pro Kampf, evtl. liegt aber noch eine Grenze bei 16, das muss ich noch testen)Im Spiel ist 12 die höchste Gegnerzahl, die ich kenne. Das ist in Daspota. Eventuell kann der Endkampf das noch übertreffen. Aber mehr, als 16 Gegner sind es sicherlich nirgendwo... natürlich unabhängig davon, ob das technisch möglich wäre. RE: Der HEX-Thread - Shazu - 28.07.2007 In meiner Dungeon ID Liste waren Fehler. Hier ist eine korrekte Version: 00 = Crash 01 = Totenschiff 02 = Verfallene Herberge 03 = Spinnenhöhle 04 = Wolfsbau 05 = Höhle (Die Goblinhöhle mit den Großen Schrötern) 06 = Höhle (Daspotaschatz) 07 = Ruine (Schwarzmagier mit Kartenteil) 08 = Höhle (Orkhöhle) 09 = Gewölbe (Tempel des Namenlosen) 0A = Höhle (Piratenhöhle mit Drache im Keller) 0B = Piratenhöhle 0C = Dungeon (Zwergendungeon) 0D = Verlassene Mine 0E = Zwingfeste 0F = Burgruine 10 = "Blank Dungeon" (Name nicht lesbar) RE: Der HEX-Thread - Zurgrimm - 28.07.2007 Hallo Shazu, Shazu schrieb:00 = Crashwas heißt das? Stürzt das Spiel ab, wenn Du dieses Dungeon ausprobierst oder wieso "Crash"? Gruß Zurgrimm RE: Der HEX-Thread - Shazu - 28.07.2007 Jupp, das Spiel hängt sich auf sobald man dieses Dungeon betreten will. Ich hatte bei der alten Liste die id 0x0E vergessen, dadurch hat sich die Burgruine sowie das seltsame Dungeon auf diese IDs verschoben. Da ich 00 nicht ausprobiert hatte, war meine logische Schlussfolgerung daraus, dass 00 die Zwingfeste sein muss. Was sich aber gerade eben, als ich die im DungeonDesigner gepostete Schick.dat noch einmal ausgetestet hat als falsch herausgestellt hat. RE: Der HEX-Thread - Shazu - 30.07.2007 Die anderen .DDT Daten: Die Kämpfe sind ja oben bereits dokumentiert, hier sind nun die anderen Daten: Sie scheinen durch "FF FF 00 00 00 00 00 00 00 00 00 00 00 00" von den Kampfdaten getrennt zu sein (Das könnte Probleme in der 16. Ebene geben, diese Daten könnten auch einen Kampf in der 16 Ebene auf dem Feld unten rechts darstellen) Besondere Stellen im Prem-Dungeon: 01 03 = "Der Gang endet..." 01 04 = Leiche zum Untersuchen 02 0C = Kampf-Textbox 03 07 = Eingestürzter Gang 05 05 = Katzengold 05 0B = Leiche zum Untersuchen 06 0E = "Der Gang endet..." 07 0A = Eingestürzter Gang 09 02 = Gerätelager 09 05 = Eingestürzter Gang 09 0E = Eingestürzter Gang 0A 0A = Loch 0B 03 = Eingestürzter Gang 0C 01 = "Der Gang endet..." 0D 02 = Textbox mit Bild (verhungerte Leiche) 0D 09 = Laterne 0D 0E = "Der Gang endet hier vor massivem Fels..." Daten: 1C 00 58 00 ...Kampfdaten... 09 03 28 0E 19 02 0B 20 08 0C 01 09 00 00 00 04 0A 00 00 00 06 03 00 00 00 08 09 00 00 00 0A 0B 00 00 09 06 00 00 00 0C 06 00 00 00 0C 08 00 00 00 0C 0A 00 00 00 FF FF 00 00 00 FF FF 00 00 Zusammenhang? Auf Feld 09 03 befindet sich eine Tür, die Daten 09 03 28 0E... scheint für diese Tür zu sein. Türen (5 Byte): 1. Byte: Y 2. Byte: E|X 3 + 4. Byte: Tür ID* 5. Byte: Status der Tür (00 = offen) *bekannte IDs: 00 = Tür ist nicht verschlossen 28 0E = schwer zu öffnen 28 28 = schwerer zu öffnen Also die Daten mal neu anordnen: 09 03 28 0E 19 (Tür vorhanden) 02 0B 20 08 0C (Tür vorhanden) 01 09 00 00 00 (Tür vorhanden) 04 0A 00 00 00 (Tür vorhanden) 06 03 00 00 00 (Tür vorhanden) 08 09 00 00 00 (Tür vorhanden) 0A 0B 00 00 00 (? hier ist eine normale Wand, setzt man jedoch eine Tür hin, ist diese funktionsfähig) 09 06 00 00 00 (Tür vorhanden) 0C 06 00 00 00 (Tür vorhanden) 0C 08 00 00 00 (Tür vorhanden) 0C 0A 00 00 00 (Tür vorhanden) FF FF 00 00 00 FF FF 00 00 Die Tür auf 08 0B fehlt, dafür ist auf 0A 0B eine eingezeichnet, seltsam. Die Tür 08 0B ist auch immer offen funktioniert nicht, scheint wohl ein Bug zu sein. Gut, nun wäre die Frage gelöst warum und wie Türen funktionieren...aber woher die Textboxen etc. kommen ist immer noch ein Rätsel :/ Treppen: Nach dem "FF FF 00 00 00" Bytes kommen die Daten für die Treppen. Treppen/Teleporter (4 Byte) 1. Byte: Y 2. Byte: E|X 3. Byte: Zielebene|Ziel X (!) 4. Byte: Blickrichtung|Ziel Y (!) Irgendwie seltsam ist, wie die Ziel-Ebene angegeben ist. Zielpositionen der Treppen in der Zwingfeste: E1: 81 13 (runter) E2: 0E 33 (hoch) E2: 81 1A (runter) E3: 0E 3A (hoch) E3: 81 1A (runter) E4: 0E 3A (hoch) E4: 81 1A (runter) E5: 0E 3A (hoch) Anscheinend ist die Zielebene relativ zur momentanen Ebene angegeben...ich hab mir noch ein paar andere Dungeons angeschaut und bin bisher zu folgendem Ergebnis gekommen: 0: 1 Ebene rauf 4: 2 Ebenen rauf 8: 1 Ebene runter C: 2 Ebenen runter |