Brauche Hilfe für die Automatisierung 3D Autos und Horizonte

  • In einem anderen Beitrag, habe ich eine Idee gestartet, die sich etwas mehr ausdehnt, als gedacht.


    Deshalb rufe ich hier einmal alle auf, mir bei der Erstellung einer Automatisierung der Einrichtung der 3D Auto's in einem beliebigen Skin zu helfen.


    Folgende Beiträge habe ich schon einmal zusammen gestellt:

  • Antwort von ACP-Fahrer auf meine Frage, was wo überall für die 3D Autos geändert werden muß:


    Du holst Dir aus dem Thread "3D- garage" das Auto Deiner Wahl. Diese Datei benennst Du um in: "vehicle_arrow_car_3d.png" . Diese Datei kopierst Du in den Ordner: My flash disk-> Navigation->Skin480x272->PPSkin.


    Anschließend nimmst Du aus dem gleichen Ordner (PPSkin) die Datei "PFSkin.skn" auf den Desktop und suchst die Zeile mit"VehicleBitmap3d" dort änderst Du die -15_ in eine -7- oder probierst andere Werte mehr nicht, speichern und zurückkopieren.


    Danach aus : My Flash Disk->sokobana->Mortscript die Datei: "3_mapViewArea1.txt" raussuchen und hier auch die Zeile mit "VehicleBitmap3d" anpassen = gleicher Wert. Zurückkopieren soft reseten und fertig.


    Das Ergebnis kann dann so aussehen


    ACP- Fahrer hat dieses Bild (verkleinerte Version) angehängt:

  • Dann stellte ich folgende Frage:


    So nun eine Frage an die Scripter, kann ich mit Mortscript in einer Text Datei eine Zeile mit einem Inhalt Suchen und ersetzen?


    "VehicleBitmap3D: 246,0,0,70,47,-35,-15;"


    ersetzen Durch.


    "VehicleBitmap3D: 246,0,0,70,47,-35,-7;"


    Ist das möglich, wenn ja, wie?

  • Ralf25 antwortete:


    Im Prinzip müßte es gehen, eine Datei mit ReadFile(...) einzulesen, mit Replace(...) zu verändern und mit WriteFile(...) wieder zurückzuschreiben.
    Nur, wenn der Part immer gleich ist, der umbenannt werden soll, würde ich mit Textblöcken arbeiten und die untersch. zusammensetzen, wie's die Skinner mit der PFSkin.skn auch tun.


    Sokobana macht'S doch auch so, denke ich. Beim Navirunner kannst Du aber auch spicken: \My Flash Disk\Programme\MortScript\NR_Skinbuilder.mscr


    Der entscheidende Algorithmus lautet:
    code:


    # Einlesen der Dateien
    file1 = ReadFile ("\My Flash Disk\navigation\Skin480x272\Elemente\Daten\1_Bitmaps_Fonts.txt")
    file2 = ReadFile ("\My Flash Disk\navigation\Skin480x272\Elemente\Daten\2_Skin_Datei_1.txt")
    file3 = ReadFile ("\My Flash Disk\navigation\Skin480x272\Elemente\Daten\3_Skin_Datei_1.txt")


    # Dateien zu einer Datei zusammenfügen
    file = file1 & "^NL^" & file2 & "^NL^" & file3


    # PFSkin schreiben
    WriteFile ("\My Flash Disk\Navigation\Skin480x272\PFSkin.skn", %file%)

  • Sokobana empfiehlt hierzu:


    Probiers doch mal so:
    "VehicleBitmap3D: 246,0,0,70,47,-35,$POSPKW$;"


    In der Datei PFDefines.skn legst Du dann folgende Zeile an:


    BT_BUTTON_SETTINGS_01: 96,0,96,48;
    BT_BUTTON_SETTINGS_02: 384,56,96,48;
    BT_BUTTON_MAP_01: 0,144,50,48;
    POSPKW: -15; // mögliche Werte -7 für PKW-Icon oder -15 (Standard) --- chris2000k


    In dieser kleinen Datei kannst Du nun Deine "Automatik" besser Verwirklichen.


    Kannst Du damit was anfangen?
    gruß sokobana


    PS: Wenn Du eine gut funktionierende Lösung auf dieser Basis anbieten kannst, biete ich Dir an, die entsprechende Variable im nächsten Update gleich in den Skin zu integrieren. Dann brauchst Du Dich um die PFSkin-Sachen oder deren Teildateien nicht mehr kümmern. Du sorgst mit einem Script nur für den jeweils richtigen Wert in der PFDefines.skn


    Und trotz aller Bitten meinserseits und einer "Ermahnung" durch einen Mod ist hier wieder ein Thema entstanden, das hier nicht in den Thread gehört ...
    Chris, bist Du bitte so nett, und machst einen neuen Thread auf? Oder bringst das bei Erweiterungen für Varioskin 3 unter? Danach schickst Du mir eine PN. Das Verschieben der Beiträge übernehme ich dann, wenn Du willst.

  • Dazu habe ich jetzt eine andere Frage!


    Wenn ich das ganze nun variabel halte, und in eine weitere Datei verlinke, muß ich jedoch trotzdem die erste Datei verändern und kann das dann auch gleich einfach mit dem Wert selbst machen.


    Wer ändert und wann wird denn diese PFSkin Datei geändert?


    Mortscript ist ja zur Änderung nicht mehr im Stande, da die Datei zu groß ist, da kann ich sie ja eigentlich auch ersetzen, wenn alle wichtigen Parameter in meiner, die ich nutze vorhanden sind, oder?


    MfG


    Chris

  • Nein, wie Sokobana vorschlug, änderst Du nur eine/mehrere Variablen in PFDefines.skn. Diese Datei wird in PFSkin.skn includiert (passiert ja jetzt schon) und je nach Definition werden die Variablen anders aufgelöst.


    So habe ich ihn zumindest verstanden.

  • Hallo chris2000k,


    Ein Script, das genau diese Zeile der PFDefines ändern würde, könnte so aussehen:


    CallScript ("\My Flash Disk\Sokobana\Mortscript\changefile.mscr","\My Flash Disk\navigation\Skin480x272\PFDefines.skn","POSPKW",":",";","-15" )


    Das ist nicht getestet. Habe ich aus sonstige Einstellungen.mscr --> Sonnenbrille anpassen.


    Gruß sokobana




    PS: Du mußt Dir mit Deiner Ordnung was einfallen lassen. Klasse, dass Du hier einen neuen Thread aufgemacht hast. Aber die Beiträge einfach rüberkopieren ist Käse. Jetzt sind sie hier, aber bei mir auch noch. Der richtige Weg wäre gewesen, die Mods ums Verschieben der Posts zu bitten. ;)


  • Hallo Chris,
    fürs bessere Verständnis erkläre ich es hier mal, ohne dass Du diese Infos für Deine Projekt benötigen wirst.


    Wie Ralf25 bereits richtig beschrieb, wird ja bei jedem Start von Gopal die Datei PFSkin.skn geldaden. Die enthält automatisch die Datei PFDefines.skn:


    // 1_Start.txt

    Includes
    {
    Include: "PFLang.skn";
    Include: "PFSpecial.skn";
    Include: "PFDefines.skn";
    Include: "PFVario.skn";
    }

    Bitmaps


    Für unser Projekt "Varioskin 3", das wir glaube ich Ende 2007 gestartet hatten, hat PrinzEmu den SkinBuilder entwickelt (der nun nach Rücksprache mit uns z.B. auch von Navirunner verwendet wird).
    Der Varioskin 3 enthält ja momentan 8 Skins = 8 verschiedene PFSkin.skn. Die hätten wir niemals in ein einziges CAB reinbekommen, da es im Forum eine Downloadgrenze von ca. 2,3 MB gibt. Ein einziges CAB war aber meine Vorgabe, damit die Installation für den User sehr einfach bleibt.


    Ich habe also eine Grund-PFSkin entwickelt, und diese in viele kleine Textfiles aufgeteilt. dazu individuelle Bausteine, die die verschiedenen Abbiegepfeile repräsentieren. Der Skinbuilder setzt diese Textfiles bei jedem Aufruf einer Pfeiländerung zu einer neuen PFSkin.skn zusammen.


    Im System ist also immer nur eine PFSkin.skn enthalten. Eigentlich bräuchtest Du tatsächlich keine Änderungen an der jeweiligen gerade vorhandenen PFSkin.skn zu machen: Die wird beim nächsten Pfeilwechsel sowieso wieder aus den Textbausteinen zusammengesetzt (damit sind die Änderungen futsch). Wichtig ist also für die dauerhafte Erhaltung der Änderung nur der richtige Textbaustein.


    Warum empfehle ich anfangs nur die PFSkin.skn zu ändern?
    Du kannst dann sofort nach einem Reset den Erfolg kontrollieren. Ist es schiefgegangen, brauchst Du nur einen Pfeilwechsel machen und der ursprüngliche Zustand ist wieder hergestellt. Entspricht das Ergebnis Deinen Erwartungen, machst Du jetzt erst die Änderung an der entsprechenden Textdatei.


    Wie ermittelst Du den richtigen Textbaustein?
    Du rufst die PFSkin.skn in der Deine Änderungen enthalten sind auf und suchst rückwärts(!) von genau der Textstelle, wo die Änderung ist mit einem Editor nach "//TT".
    In diesem Bereich findest Du dann den Hinweis auf den gesuchten Textbaustein:


    //TT

    // 7_GPS_TTI.txt
    GPSErrorSignPostSubForm

    Gruß sokobana

  • Hallo Sokobana,


    langsam wird es mit dem Verständnis!


    Danke für die Haar kleine Erklärung!


    Ich habe jetzt verstanden, warum ich es auch in der 3_mapViewArea1.txt Datei ändern muß.


    Das ist der Urstein des Textes, der bei einem Pfeilwechsel später zusammengesetzt wird.


    Prinzipell verstanden!


    Habe momentan eine Pause eingelegt, da der Text zwar an der richtigen Stelle ersetzt wurde, jedoch auch die ersten Einträge ganz oben durch ein Viereck und den Text ersetzt wurden.


    Ich werde mich da die Tage mit beschäftigen, gib mir etwas Zeit, momentan bin ich daran die POI's zu optimieren, da arbeite ich mich durch, das war mir gerade wichtiger und ich komme da auch nicht zu meinem durchbrechenden Erfolg!


    Das Dosenpfandpaket war das optimum, jedoch wenn ich es richtig verstanden habe, hat Space Rat mir erklärt, daß durch die neuen Karten, meine ganzen Zuordnungen verschoben sind.


    MfG


    Chris

  • Zitat

    Original von chris2000k
    Das Dosenpfandpaket war das optimum, jedoch wenn ich es richtig verstanden habe, hat Space Rat mir erklärt, daß durch die neuen Karten, meine ganzen Zuordnungen verschoben sind.


    Falsch verstanden.


    Das Paket funktioniert nach wie vor, aber halt nur mit exakt der Unterstützung für POIs, die es damals schon gab.
    Heißt: Keine Banken, Postfilialen, Kirchen, Friedhöfe aus dem neuen Kartenmaterial und keine POI der NF oder von NJ, die seit ca. August 2008 neu hinzugekommen sind (Kinderärzte, Tierärzte, .... )

  • Ich sage es ja, ich spiele jetzt mal nicht mehr so viel mit dem Navi und lasse mir die Sonne bei der Gartenarbeit auf den Pelz brennen.


    Ich verstehe im Moment zu viel falsch, bzw. es hakt vorne und hinten, da komme ich nicht so vorwärts wie ich es gerne hätte ;)


    Pause braucht man auch mal, wenn auch nur eine klitze kleine ;) und dann geht das meistens alles wie von selbst.



    :]


    Da hauen wir uns mal ein paar
    : drink : drink : drink : drink
    rein, das hilft bei der Hitze ;)

  • Zitat

    Original von chris2000k
    Ich sage es ja, ich spiele jetzt mal nicht mehr so viel mit dem Navi und lasse mir die Sonne bei der Gartenarbeit auf den Pelz brennen.


    Ja, nutz das schöne Wetter aus, über Ostern soll's leider wieder schiffen! :-D)

  • Na da werde ich es dann mal wieder in die Hand nehmen ;)