Ich hab mich mal ein bisschen durch die Tiefen des iGo Dateisystems gewühlt und ein paar erste Erkenntnisse gewonnen.
iGo abspecken
Zuerst mal die Frage, ob man iGo abspecken kann. Na klar. Im iGo Installationsarchiv gibt es einen Ordner namens Content. Dort liegen alle Sprachdateien, Maps, Languagefiles, etc. in Unterordnern.
Im Ordner Content gibt es folgende Unterordner (den Inhalt führe ich in Klammern auf):
- building (3D Gebäudedaten, für jedes Land eine Datei)
- car (3D Modelle für die verschiedenen Fahrzeugmodelle)
- dem (Höhendaten nach Kontinenten für die 3D Darstellung des Horizonts)
- lang (Menüsprachen, für jede Sprache eine Datei)
- map (Karten, für jedes Land eine Datei)
- poi (POIs, für jedes Land eine Datei)
- voice (Sprachfiles, für jede Sprache eine Datei)
Hier kann man also problemlos die nicht benötigten Karten einfach löschen.
So viel zum einfachen Teil. Jetzt widmen wir uns mal dem Happy Customizing.
Customizing der Oberfläche
Im Installationsarchiv liegt eine Datei mit dem Namen Data.gro. Wofür die Endung genau steht, weiß ich nicht, man kann die Datei aber mit Hilfe eines Tools namens gro converter (Google ist dein Freund) in eine .zip Datei umwandeln. Das Tool gibt es nur für Windows.
Die zip Datei kann man anschließend mit Winrar oder dem Total Commander bearbeiten. Wichtig ist, dass man das Archiv direkt bearbeitet und die benötigten Dateien raus- und reinkopiert anstatt das Archiv zu entpacken.
In diesem Archiv sind wiederum einige Unterverzeichnisse:
- audio (Warntöne des Programms, z.B. der Ton, der vor einer Ansage ertönt)
- config (diverse Configdateien)
- fonts
- gfx (systemweite Grafiken, hab ich noch nicht näher betrachtet)
- project_config (ebenfalls Config)
- ui_igo_iphone (da ist der Skin abgelegt)
Im Verzeichnis ui_igo_iphone sind wiederum einige Unterverzeichnisse:
- common (diverse Grafiken wie z.B. der Navigationspfeil)
Hier liegen auch vier Dateien (day3dcolor.ini, day2dcolor.ini, night3dcolor.ini, night2dcolor.ini) in denen die Kartenfarben festgelegt werden.
- defaults
- icons
- iphone (hier wird es interessant)
Im Verzeichnis iphone liegen die Grafiken und Config-Dateien für den Skin.
Direkt in diesem Verzeichnis liegen alle Grafiken für den Tagmodus und im Verzeichnis skin_night die Grafiken für den Nachtmodus.
Die Schriftfarben werden in der Datei main_scheme.ui bzw. night/main_scheme.ui festgelegt.
Hier kann man also die entsprechenden Bitmaps einfach bearbeiten/austauschen und die Schriftfarben anpassen. Um die Bitmaps bearbeiten zu können, benötigt man wiederum ein Tool, das iGo BMP Tool. Die bmps sind nämlich komprimiert.
Schlussendlich haben wir noch ein Verzeichnis "ui". Hier liegen die Steuerskripte für iGo. In der Datei navigatemap_iPhone.ui werden Aussehen und Buttons der Kartenansicht definiert. Im wesentlichen handelt es sich um eine Art xml Datei, in der Layer definiert werden. Ein Layer wird unter bestimmten Umständen angezeigt oder eben auch nicht (GPS Empfang, kein GPS Empfang), hat ein bestimmtes Aussehen (Button xy.bmp an Position y=...) und ein bestimmtes Verhalten (onrelease= Aktion xy).
Hier gibt es ein ganz gutes
Tutorial, in dem der wesentliche Aufbau einer solchen Datei erklärt ist.
Hat man das Archiv geändert, wandelt man es mit dem Gro Converter wieder in eine gro Datei um und kopiert sie zurück.
Anpassung der Sprachfiles
Im content-Verzeichnis im Unterverzeichnis voice liegen die Sprachfiles als .zip Datei vor. In diesem Archiv kann man sich ebenfalls austoben.
Für die Frage, ob man die Entfernungen anpassen kann ist eigentlich nur eine Datei interessant. Im Unterverzeichnis config liegt eine Datei namens commands.csv. Darin finden sich Einträge nach folgendem Prinzip:
template generic,,,[Allgemein mit einer Variable]
,"100[then]*then_do","DANACH %*",
,"300[then3]","*then_do",
,"1500[more]*drive","DEM_STRASSENVERLAUF %dist2 FOLGEN",
,"500[more,set_1]*prepare_to","IN %dist %*",
,"50[more,set_2]*in_do_then","IN %dist %* %then",
,"0[more,set_3]*now_do","%* %then",
Hier kann man eigentlich schon sehen, dass 500 Meter vor der Aktion die erste Ansage kommt, 50 Meter vorher die zweite und direkt vorher die dritte.
Falls jemand eigene Ansagen aufnehmen möchte.. Die Audiofiles liegen im Ordner Audio als .ogg Dateien vor.
--snip--
Ich denke, das ganze Customizing ist eine recht aufwändige Sache, aber wenn man so gerne frickelt wie ich, bis man endlich den letzten Pixel an der richtigen Stelle hat, spricht nix dagegen.
Ich hab mal ein Bild von meinem ersten unfertigen Modding-Versuch angehängt, indem ich einfach die Nachtoberfläche mit den Tagesfarben der Karte gemixt hab. Unfertig bitte in rot fett unterstrichen. Nicht dass noch eine kommt und sich darüber auslässt, dass das ja total beknackt aussieht.
Falls jemand rausfindet, wie man die Statusleiste des iPhone auf dunkel schaltet, bin ich allerdings sehr dankbar.
Und falls sich noch ein paar Leute mit Langeweile finden, könnten wir einen iGo Modding-Thread aufmachen. Dann sind wir hier nicht allzu OT.
Das sollte nur ein Überblick sein,
was mit iGo alles möglich ist und wie man die ganze Sache angeht.