Beiträge von Dragonsphere

    Danke für eure Karten :)

    Da mache ich direkt mal mit und habe auch eine Map für euch. Bei mir läuft sie unter SEDAN

    Deutschland hält eine Stadt im Norden, Frankreich den mehr ländlichen Süden. Dazwischen eine festgefahrene und von beiden Seiten gut befestigte Frontlinie, die zu einem Fleischwolf für Infanterie geworden ist.

    Und da liegt auch die Herausforderung: Ihr habt massig Rohstoffe zur Verfügung, könnt aber nur Infanterie und Transportfahrzeuge bauen. Es mangelt also nicht an Kanonenfutter, dafür aber an Kanonen :D


    Ich habe die Karte urspünglich als zwei Spieler-Karte gebaut, beide Seiten verfügen auch über gleich viele Einheiten und Ressourcen.

    Mit Computergegner habe ich noch nicht viel getestet, aber Typ IV, der defensivere, könnte hier ein interessantes Spiel liefern.

    Auf der Grafikkarte gibt es nur einen Jumper. Wenn ich den ändere funktioniert die Tastatur nicht mehr ?(

    Ich kenne diese Octec-Karte nicht, aber viele frühe (S)VGA-Karten haben einen "IRQ-Jumper" für die EGA-Kompatibilität (EGA Karten aktivieren nach erfolgtem Bildaufbau einen Interrupt).

    Wahrscheinlich ist das bei deiner Karte auch so und wenn du den aktivierst, gibt es wohl einen Konflikt mit der Multi I/O Karte oder dem Tastaturcontroller.

    Danke für's Testen tbc21 !


    Habe ich beides korrigiert. :)

    So rum habe ich es selber tatsächlich noch nicht ausprobiert, nur umgekehrt und nur einen Gebäude-Eingang zu verwenden, funktioniert ja sehr gut.

    Also, dass Problem betrifft Fabriken und Depots. Die lassen sich im Spiel über alle Gebäudefelder öffnen, nicht nur über den Eingang. Der Eingang wird aber vom Spiel verwendet, um dem Gebäude den richtigen Datensatz zuzuordnen. Hat die Fabrik oder das Depot keinen Eingang, springt das Spiel im Speicher hinter den letzten gültigen Gebäudedatensatz und liest irgendwelche falschen / fremden Daten aus dem Arbeitsspeicher für dieses Gebäude ein. Also quasi eine Schutzverletzung, nur das DOS so etwas nicht stört :D

    Beim HQ gibt es das Problem nicht, da men es im Spiel nur über den Eingang öffnen kann. Die HQ-Burg kann mal also auch einfach so in die Landschaft stellen. :)


    Wie wollen wir damit umgehen? Ich habe inzwischen auch umgesetzt, dass man komplette Gebäude mit der rechten Maustaste setzen kann. Soll ich die anderen Gebäudefelder, bis auf die Eingänge, aus dem Auswahlfenster für die Geländeteile rausnehmen? Einfach eine Warnung ausgeben, wenn eine Karte gespeichert/dem Spiel hinzugefügt wird, die Fabriken/Depots ohne Eingang enthält? Oder belassen wir es dabei und freuen uns über Überraschungsgebäude/Einheiten? :)

    Gedacht war es so: jeweiligen Eingang auswählen, Linksklick auf Karte = Eingang setzten, Rechtsklick auf Karte = komplettes Gebäude.

    Ich denke mal das wird nur über eine Auswahl gehen die programmiert werden müßte.Die fragt ob nur der Eingang oder das ganze, jeweilige, Gebäude gesetzt werden soll.

    Bin kein Programmierer aber da es ja 4 Gebäude gibt wäre es mit einem Rechtsklick allein nicht getan.(Das 4te Gebäude ist das halbfertige Depot)

    Ich glaube, dass es einfacher ist, als man denkt: Es gibt neun Gebäude (2 HQ, 3 Fabriken und 4 Depots). Jedes dieser ist durch seinen Eingang eindeutig identifizierbar. Sobald dieser ausgewählt ist, steht fest, was es werden soll.

    Das ist kein Problem, werde ich bei nächster Gelegenheit einbauen :)

    Es sind auch nur drei zu zeichnende Gebäude bzw. vier mit dem unfertigen Depot, denn bis auf den Eingang sind ja alle HQs, Fabriken und Depots identisch.


    Die Logik wäre also z.B.


    Das x modulo 2 wegen des Versatzes der Hex-Felder....

    Danke! Das wird nur unter bestimmten Bedingungen ausgeführt, wenn beim Speichern keine Gebäudedaten im Speicher gefunden werde und machte sich daher nicht bemerkbar. Der Qt Creator hat es tatsächlich auch nicht beanstandet, ich hatte keine Warnungen mehr beim Erstellen ?(

    Changes und Versionen in die Dateien schreiben ist total 1985

    Hey, das ist Retro! 8)

    Oder kommt davon, wenn man nur noch als Hobby programmiert und das Jahrzehnte lang mehr auf einem 486er und uralt IDE unter DOS als auf neuen Systemen. :D

    Danke Dragonsphere, es funktioniert perfekt! Habe Type II ausgewählt und alle Kanonen jeglicher Größe feuern aus allen Rohren :) Hast Du super gemacht :thumbup:

    Es gibt dann sogar das übliche Verhalten des Gegners, das eigene HQ mit Charrons und Renaults schützen zu wollen.

    Danke, schön das es gut funktioniert!


    Ich habe gestern Abend auch noch einen Versuch gemacht:

    Die Karte TROLL habe ich mal zur Einzelspielerkarte umkonfiguriert und vier mal mit den verschiedenen .COM Dateien dem Spiel hinzugefügt.

    Dnn in vier DOSBox-Instanzen das Spiel geöfnet und parallel die Karten laufen lassen. Ich habe den Computer Frankreich spielen lassen und mich einfach gar nicht bewegt oder angegriffen, so konnte ich genau sehen, ob er etwas grundsätzlich anders macht.

    Dabei zeigte sich, dass bei Type I und Type II das Vorgehen/die Bewegungen identisch sind, aber unterschiedliche Einheiten gebaut werden, wodurch sich der spätere Spielverlauf natürlich ändert. Bei Type III sind die ersten Züge auch dieselben wie bei den ersten beiden Typen, aber ab einem Punkt (Runde 5) weichen dann die Bewegungen zunehmend ab. Bei Type IV geht er von Anfang an ganz andere Wege und deutlich defensiver vor. Da Type IV die 22.COM ist, macht er also genau das, was du vermutet hast tbc21

    Mit Type IV zieht er z.B. auch den beschädifgten Charron zur Reparatur zurück, nachdem er damit den Bunker zerstört hat. Bei den anderen COM-Typen wird der Bunker mit Kavallerie angegriffen und diese stumpf verheizt.


    Spannend fand ich auch, was der Computer nacheinander so gebaut hat:

    Type I: Kavallerie, Eliteinfanterie, Voisin Bomber, leichte Ari, zwei Infanterieeinheiten.

    Type II: stat. FLAK, leichte Ari, Eliteinfanterie und normale Infanterie, leichte Ari, stat. FLAK.

    Type III: stat. FLAK, Kavallerie, schwere Ari, Kavallerie, Kavallerie und Infanterie

    Type IV: Infanterie, mittlere Ari, mittlere Ari, Eliteinfanterie, mittlere Ari.


    Da ich keine Flugzeuge hatte und ja auch nicht gebaut habe, ist die Baupolitik von Typ II eine ziemliche Ressourcenvergeudung. Auch bei III macht die FLAK keinen Sinn, aber die Mischung aus schneller Kavallerie und schwerer Ari bringt ja doch eine sinnvolle Dynamik. Auch I und IV mit einer Mischung aus Artillerie / Bomber und viel Infanterie fand ich da durchaus sinnvoll.

    Hier nun Betaversion 1.6 :D


    Ich habe gestern Abend noch schnell eine Funktion für die .COM Dateien ergänzt: Wenn ihr nun eine Karte in das Spiel integriert und kein Häkchen bei "Two-Player-Map" (unter Edit) gesetzt ist, werdet ihr gefragt, welchen Typ von .COM Datei ihr für die Karte verwenden wollt (s.o.). Es wird dann automatisch eine passende Datei kopiert und passend zu euerer Karte benannt.

    Ansonsten eine Version mit deutlichen Verbesserungen und Neuerungen, wie gestern schon geschrieben.


    Viel Spaß damit :)


    Aktueller Quellcode natürlich wieder bei Github...

    Ich habe in den nächsten Tagen auch wieder ein größeres Editor-Update für euch!

    Am Wochenende habe ich viel am Editor gemacht, so ziemlich alle eure Anregungen sind inzwischen eingebaut (bis auf die Undo-Funktion) und Fehler behoben. Auch gibt es einige neue Features, die mir selber noch fehlten.


    Das habe ich gemacht:

    - Jahreszeit wird gelesen/gespeichert (bei Karten, die noch nicht im Spiel sind, per Temp.-Datei, sonst direkt in der CODES.DAT des Spiels).

    - Karten aus dem Spiel lassen sich nun auch anhand des Levelcodes laden

    - Der Levelcode der gerade editierten Karte erscheint nun in der Titelleiste des Fensters

    - Wenn ein Gebäude an Stelle eines anderen gebaut wird, bleiben nun enthaltene Einheiten und eingestellte Rohstoffeinnahmen erhalten.

    - Damit ist auch der Zuordnungsfehler bei den Gebäudedaten behoben.

    - Deutsche Einheiten werden im Auswahlfenster gedreht dargestellt.

    - Das Feld unter einer Einheit kann nun geändert werden, ohne das die Einheit entfernt/neu gesetzt werden muss.

    - Zuvor gesetzte Einheiten lassen sich nun per Doppelklick von einem Feld entfernen.

    - Auch das "ü" wird nun korrekt als "ue" geschrieben, um Kodierungsprobleme zu vermeiden

    - Es kann jetzt eingestellt werden, ob die Karte als Einzelspieler- oder Zweispielerkarte gespeichert werden soll (dann fehlt nur noch der .COM file).

    - Kleinere Fehlerbehebungen.



    Ich muss nur noch ein paar letzte Kleinigkeiten anpassen, dann gibt es hier die inzwischen sechste Beta-Version. :)

    Habe mehrere .COM ausprobiert in einer simplen Karte nur mir schwerer Ari auf beiden Seiten. Der Computer Gegner hat leider nie angegriffen, weder als Spieler 1 noch als 2.

    Das kann auch nicht funktionieren, denn ich habe bei meinem Vorschlag etwas wesentliches nicht bedacht gehabt. Sorry! In der CODES.DAT Datei gibt es ja einen Marker, ob eine Karte eine Ein- oder Zweispielerkarte ist. Der muss natürlich auch entsprechend gesetzt werden und dann gibt das Spiel auch eine Fehlermeldung aus, wenn es keine passende .COM zur Karte gibt.

    Ich habe das jetzt auch mal ausprobiert mit einer kleinen Karte mit nur jeweils einer schweren Ari auf beiden Seiten. Ist die Karte als Zwei-Spieler-Karte konfiguriert, greift der Computergegner nie an, ist sie dagegen als Singleplayer-Karte konfiguriert und ich kopiere die 00.COM (also die von PULSE) passend zur Karte, dann greift er in der zweiten Angriffsrunde mit seiner Ari an! Aber auch erst in seiner zweiten Angriffsrunde und nicht direkt...


    Also ja, die .COM Dateien sind die Strategieanweisungen für den Computergegner und ohne ist er noch dümmer, als ohnehinschon. Wie kriegen wir nun raus, wie die Dateien aufgebaut sind? :lupe:

    Entpackt sind alle .COM Dateien 306 Byte groß und sie unterscheiden sich oft nur in wenigen Bytes, wenn überhaupt.

    Ein Vergleich der Dateiinhalte ergibt, dass es nur vier unterschiedliche .COM Dateien für alle Karten gibt!


    00.COM bis 20.COM sind identisch.

    21.COM,23.COM bis 44.COM und 46.COM sind identisch.

    45.COM und 47.COM sind identisch.

    22.COM gibt es nur einmal.


    00 bis 23 sind ja die Karten der deutschen Einzelspieler-Kampagne und 24 bis 47 die der französischen

    Karte Nummer 22, die eine eigene .COM-Datei hat, ist die Karte CANDL

    Anscheinend können alle Schiffe auf das Feld mit den Panzersperren fahren, solange es direkt an der Küste oder mitten im Meer/See liegt.


    Das hat mit dem Editor nichts zu tun.

    ja, diesen Bug bzw. Feature ☺️ gab es schon damals und auf bestimmten Karten konnte man das kreativ nutzen. Es ging aber meines Wissens nach nur für Flachwasserfähige Schiffe

    Ja, eindeutig ein Fehler im Code des Spiels. Die Panzersperren-Grafik hat die ID "SMOUN130" und ist der Kategorie "hohe Berge" zugeordnet, damit solle sie nur von Einheiten betreten werden können, die auch auf Berge steigen können.Und das Schiffe, auch für die flachwasserfähigen, keine Bergsteiger sind, ist in der UNIT.DAT auch korrekt gesetzt. Von den Datendateien des Spiels her, dürfte das also nicht passieren können :)

    Bei allen Karten, die ich erstellt und gegen den Computer gespielt habe, scheint er mittlere und schwere Artillerie sowie das Schienengeschütz nicht für Angriffe zu benutzen, obwohl sie jeweils in Reichweite waren.

    Vielleicht hat das mit den .COM Dateien zu tun. Dort könnten doch evtl. auch sowas wie Strategieanweisungen drin sein. Diese gibt es ja nicht für unsere neuen Karten nicht.

    Du kannst ja mal eine .COM Datei einer von der Größe/Einheitenzahl her ähnlichen Karte so umbenennen, dass sie zu deiner Karte passt und dann testen, ob sich das Verhalten des Computergegners ändert.

    Und wie ist das eigentlich mit den regulären Zwei-Spieler-Karten des Spiels? Benutzt der Computergegner da Artillerie/Schienengeschütz? Dürfte dann ja eigentlich auch nicht so sein....

    Anzeigen der Namen funktioniert jetzt bei mir. Hier nur ein Mini Problem mit dem Umlaut bei Schienengeschütz :)

    Habe mir das gerade angesehen und anscheinend war es mal wieder spät geworden, als ich den Code dazu geschrieben habe.... Da habe ich doch tatsächlich den Umgang mir ä und ö behandelt und das ü glatt vergessen :whistling:

    Aber super, dass das Anzeigen der Namen jetzt klappt :)

    Die halben deutschen Schiffe sind jeweils verkehrt herum (180Grad gedreht) auf der Karte gegenüber der Darstellung im Einheiten Auswahlfenster.

    Das war allerdings in den Vorgängerversionen auch schon so.

    Es sind doch alle deutschen Einheiten um 180 Grad gedreht.... Ist aber kein Problem die deutschen Einheiten auch im Auswahlfenster so darzustellen, wie auf der Karte. Ich muss dafür nur an einer Stelle eine +3 ergänzen :)

    Also zukünftig lieber so?

    Hier mal wieder eine neue Version - Beta 1.5

    Die meisten Punkte, die ihr mir zurückgemeldet habt, bin ich angegangen. Bei zu vielen verschiedenen Geländegraftiken für das Spiel oder Einheiten auf ungeeigneten Feldern u.ä. ploppt nun eine Warnung auf. Unter Settings könnt ihr die Warnungen aber auch abschalten, wenn ihr z.B. ganz absurde Karten bauen und nicht belästigt werden wollt :D

    Neu sind zudem auch der hier schon angekündigte "Replace" Dialog, um bestimmte Felder einfach durch andere erstzen zu können und ein "Map info" Dialog, der euch eine Übersicht/Statistiken anzeigt, wie die Einheiten-, Gebäude- und Rohstoffverteilung auf eurer Karte so aussieht und auch, wie viele Geländegrafiken ihr bereits genutzt habt. Beides ist neu im Edit Menü.


    Was noch nicht umgesetzt ist, ist das Speichern/Auslesen, ob eine Karte im Sommer oder Winter spielt und den Fehler, der nicht angezeigte Einheitenname bzw. das dort falssche Strings angezeigt werden, konnte ichr leider nicht reprodzieren. Ich habe inzwischen noch auf zwei anderen Rechnern, ohne Qt-Installation, intensiv ausprobiert und getestet, bekam aber immer die Namen korrekt unten im Fenster angezeigt.


    Daher hier nochmal eine 64-Bit Version mit den Dlls dabei und hoffentlich funktioniert es damit nun auch bei euch korrekt.

    HL-Editor BETA 1-5 64 Bit .zip


    Viel Spaß damit :)

    Kurze Ergänzung:

    Die Zuordnung der Geländefelder zu einer der sieben Kategorien scheint anhand der ID/des Namens der Grafik aus der PARTS.DAT / PARTW.DAT möglich zu sein.


    So scheinen die ID-Strings aller Grafiken der Kategorie "Tiefes Wasser/flaches Wasser" mit "SSSEA" zu beginnen, flaches Wasser / Küstengrafiken mit "SCOAS", Schienenwege mit "SRAIL" usw. und tatsächlich sind beginnen auch die Grafiken der kleinen Brücken wie auch die der Berge mit "SMOUN", was ja zur Kategorie "Berge/schmale Brücken" im Handbuch passt.

    Damit sollte es ja gut machbar sein, auszuwerten, ob eine Einheit auf einem "erlaubten" Feld steht oder nicht. :)

    Ich habe mit meinem vierjährigen ein paar Mal Lotus III gespielt. Er saß auf meinem Schoß und durfte mit steuern. Das fand er sehr spannend, vor allem die Strecke im Schnee.

    Bei Lotus gibt es ja auch wenig Action und auch keine dramatischen Unfälle o.ä.

    Ansonsten kann man auch wunderbar Lemmings nehmen, um den Kleinen die Bedienung der Maus nahezubringen. Da gibt es auch keine schnellen Bildwechsel o.

    ä.


    Ansonsten habe ich mit meinen Kindern auch schon "Party" zur Jukebox im Setup von Tyrian gemacht. :D

    Hallo und ein frohes neues Jahr!


    Aufgrund von Frankies Frage und Fund im Handbuch, geht es hier im neuen Jahr mal mit etwas Reverse Engineering weiter :) .

    Vielleicht hilft das ja weiter bei der Datenentschlüsselung ?

    Danke für den Auszug aus dem Handbuch. Im Handbuch hatte ich auch schon nachgeschaut, aber diese zusätzlichen Erkärungen haben mich jetzt tatsächlich auf die (hoffentlich) richtige Idee gebracht.

    Es gibt also 7 unterschiedliche Kategorien für die Geländefelder und wir wissen, es gibt ein Byte in der Unit.dat, das für die betret/befahrbaren Felder steht (Offset 5).

    Da wäre es doch naheliegend, ein Bit pro Kategorie zu verwenden. Es gibt in der Datei 10 unterschiedliche Werte an den entsprechenden Offsets.

    Gucken wir uns das doch mal genauer an:

    Wert in Datei (Hex)
    BinärEinheiten mit diesem Wert
    01
    0000 0001
    Schiffe
    020000 0010Züge
    050000 0101 Boote
    120001 0010 Transportwagen, Ballon, Schwere Ari
    1A0001 1010 schwere Panzer
    320011 0010 Kavallerie, Mittlere Ari, mobile FLAK und leichte Panzer
    3A0011 1010 leichte Ari, Depoteinheit
    3F0011 1111 Bomber
    7A0111 1010Infanterie
    7F0111 1111 Jäger

    Schnell ableiten lassen sich hier ja direkt Bit 0, 1 und 2, also Wasser und Schienen (Bitnummern von rechts nach links gelesen). Bit 3 könnten dann gut die Schützengräben zu sein. Bit 4 steht wohl für "Ebene, Straße/Brücke", wie es im Handbuch heißt. Bei Bit 5 tippe ich auf Wald und da Jäger über Berge fliegen können und Bomber nicht steht Bit 6 also für hohe Berge (und wie wir aus dem Handbuch erfahren auch schmale Brücken).


    Das könnte es also sehr gut sein. Werde ich in den nächsten Tagen mal im Editor einbauen und testen.