Menü-Kategorien

Willkommen in der Transport Fever Community

Welcome to the fan community of Transport Fever and Train Fever, the economic simulators of Urban Games. The community is free for you to share and inform yourself about the game. We cultivate a friendly and objective interaction with each other and our team will be happy to answer any questions you may have.

 

Registration and use is of course free for you.

 

We wish you a lot of fun and hope for active participation.

The Team of the Transport-Fever Community

  • Beim Spielen hab ich festgestellt, daß man zumindest gemoddete Assets auf jeden Fall in eine Menü-Kategorie packen sollte, damit sie auch nur ins Bewußtsein gelangen - von einfach zu finden ganz zu schweigen. Aber kann man eigentlich die Kategorien in den Baumenüs sinnvoll lokalisieren? Normalerweise wird eine Konstruktion ja in der .con durch die Zeile

    Code
      categories = { "Water" },

    in ein Menü gepackt. Die Kategorie bekommt dann das Bild textures/ui/construction/categories/Water.tga zugewiesen. Beim Überfliegen des Bildes im Menü wird der Text "Water" angezeigt. So weit nichts Neues. Ich würde den Text jetzt gerne lokalisieren. Was funktioniert, ist die Klein-Fritzchen-Methode

    Code
    categories = {_("water") },

    in der .con, und wie üblich die Übersetzungen in der strings.lua:

    Code
    water     = "Wasser",

    . Es passiert aber, was passieren muß, nämlich, daß das Programm dann nach der Datei Wasser.tga sucht. Also braucht es für jede unterstützte Sprache ein eigen benamstes (aber sonst identisches) Icon. Das ist unästhetisch und felheranfällig. Gibt es eine bessere Lösung?

    Beim Suchen im Forum/Netz/Dateien habe ich nichts gefunden, UG scheint für die eigenen Kategorien mal wieder eine andere Lösung zu haben, für die ich auch keine Hinweise gefunden habe. Dafür habe ich im Asset-Menü die Kategorien "Gebäude", "Gebaeude" und "buildings", was ein Zeichen dafür ist, daß andere ähnliche Probleme hatten.


    Etwas zusammenhängend damit: Gibt es eigentlich irgendwo einen ungefähren Konsens über die Kategorien, oder bastelt jeder unabhängig von allen anderen seine eigenen (bzw. nimmt die von UG)? Wäre ein Konsens über einen Basissatz von empfohlenen Kategorien wünschenswert?

    Ein Zwang welcher Art auch immer ist natürlich Unsinn. Wer in seiner privaten Kategorie eine sinnvolle Anzahl an Assets unterbringt, hat das grundsätzliche Ziel, etwas Ordnung zu schaffen und das Durchwühlen einzuschränken, auch irgendwie erreicht. Aber es ist schlimmer, in jeder Kategorie ein einziges Asset zu haben, als überhaupt keine Kategorien zu haben. Ich stehe im Moment leider kurz davor. In sofern würde ich mich gerne an eine vorhandene Kategorie anhängen; falls das nicht so einfach ist, meine möglichst frei benutzbar machen.


    Wenn ich mir nämlich überlege, wie ich mich ungefragt in eine Kategorie einhänge, müßte ich

    1) entweder ein Icon klauen

    2) oder mit einem blauen Kästchen leben

    3) oder ein eigenes Icon bauen.

    Dabei macht 1) vermeidbaren Ärger, 2) ist blöd, 3) gibt wahrscheinlich je nach Ladereihenfolge ein anderes Icon - auch blöd.Vielleicht kann man ja für die empfohlenen Kategorien einen Lexikonartikel bauen, aus dem man die Icons direkt kopieren kann - und wer sein Icon da reinsetzt, stellt es zur freien Benutzung zur Verfügung.

    13! = 13*12!

  • Ein Lexikoneintrag gibt es für Train-Fever, jedoch passt die Kategorieeinteilung nicht mehr zur aktuellen Situation. Die Symbole darf man aber benutzen.
    In der Kategorieeinteilung mach eigentlich jeder, was er will. Ich habe mal mit einer Mod angefangen, die die Kategorien normalisiert, weil mich das auch stört (gerade Moddername als Kategorien und unterschiedliche Schreibweise einer Kategorie (wie car, Car, cars, auto ... )). Technisch funktioniert meine Normalisier-Mod auch gut, jedoch fehlt mir die Motivation all die UI-Bilder zu machen.

    Falls sich jemand darum kümmer möchte, kann er gerne meine Mod als Grundlage nehmen. Die Bilder habe ich selber gemacht oder aus dem Lexikon genommen.

    Übersetzung bleibt aber ein leidiges Thema, gerade dadurch das die Kategorien alphabetisch und nich manuell sortiert werden können. Man kann es bestimmt über einen UI-Script schaffen, aber das Gelbe vom Ei ist das nicht.

    Files

    • mod.zip

      (25.02 kB, downloaded 184 times, last: )
  • Kategorien sollten in der Angabe eigentlich nie übersetzt werden - der Sinn ist ja dass die Bezeichnung für alle Mods gleich ist. Das wäre ja gar nicht durchsetzbar, dass jeder Modder das immer in alle gängigen Sprachen übersetzt, sodass dann ein Sprachen-Mischmasch entstehen würde, sobald man sich Mods von Autoren holt, die nicht ins deutsche übersetzen.


    Dass die Bezeichnung in der Kategorie dann nicht übersetzt angezeigt wird, wäre mir neu, aber damit könnte ich am ehesten leben.

    Oder funktioniert es, wenn du water in strings.lua übersetzt, trotz Angabe ohne _() ?


    Wenn man nur ein Asset hat oder die Kategorie nicht allgemein genug ist, kann man auch "misc" nehmen.

  • Yoshi: Danke, der Artikel ist an mir vorbeigegangen, oder ich an ihm. Die Links verweisen übrigens noch alle auf train-fever.net ... Kann man den Artikel für TpF2 anpassen und dort unterbringen?

    Es ist leider nix dabei, was hinreichend nahe an meinen Schiffsanleger kommt. Dann mache ich halt was Neues, wahrscheinlich "Harbor". Da könnte mindestens auf Dauer noch was reinkommen.


    VacuumTube: Der Sprachen-Mischmasch ist schon da. Deutsche und Englische Bezeichnungen gehen munter durcheinander. Und da es sich bei categories um eine Liste handelt, tauchen einige Mods an mehreren Stelle auf, was der Übersichtlichkeit auch nicht dient. In sofern ist es egal, ob man übersetzt oder nicht. Wenn es bereits Mods mit fest codierten Kategorien Water und Wasser gibt, dann würde eine Mod mit Übersetzung bei der englischen Spracheinstellung in die erste und bei deutschen in die zweite Kategorie einsortiert werden, wenn ich das System richtig verstanden habe. Schön wäre, wenn die Übersetzung für alle Kategorien gleichen Namens gelten würden. Dann würden sich nämlich bei einer Mod mit Übersetzung alle Water und Wasser vereinigen und die Eau, die eine Übersetzung haben, gleich mitnehmen. Ob das mit einer andern Modzusammenstellung anders aussieht, ist eigentlich egal; das ändert sich nicht oft.


    Die Übersetzung ohne _() funktioniert nicht, ich hab's gerade probiert.

    13! = 13*12!

  • Ich sag mal, in einem Fall, wo die Kategorie nur für eine einzelne Mod da ist (z.B. "A_Oberleitungsmasten" von Rheingold), ist die Sprache egal.


    Aber der eigentliche Sinn von Kategorien ist ja die Sortierung von vielen einzelnen Assets in möglichst allgemeine Kategorien. Daher sollte bei so einer allgemeinen Bezeichnung (tree, decorations, industry) weiterhin immer Englisch verwendet werden, ohne Übersetzung.

    Was bringt es mir denn wenn ich bisher alles in "decorations" habe und dann ein deutscher Modder die Kategorie übersetzt, sodass ich dann zusätzlich Sachen in "Dekorationen" hab?

  • VacuumTube: Im Grunde hast Du recht. Leider gibt es schon eine Reihe Kategorien auf deutsch (z. B. buildings und Gebäude).

    Der Idealfall für mich wäre, daß die Kategorien aus der Sicht des Programms alle englische Namen hätten (also categories = {"englishame", }, es aber es die Möglichkeit gibt, die angezeigten Namen zu übersetzen. Dann können zwar immer noch unterschiedliche Übersetzungen auftreten (Horses in Rösser oder Gäule), aber die Mods wären nicht mal so, mal anders gruppiert. Das scheint mir aber mit dem aktuellen System nicht möglich zu sein.

    13! = 13*12!

  • Hallo zusammen,

    dieser Thread ist knapp vier Jahre alt, aber das "Problem" ist aktuell wie damals oder habe ich eine Lösung übersehen? Ich habe EISFEUER deine angefangene Mod genommen und auch schon fleißig icons erstellt und die Liste der Suchbegriffe pro Kategorie bzw auch die Anzahl Kategorien erweitert. Allerdings hätte ich villeicht vorher mal testen sollen ob deine Mod nach den diversen Updates der letzten Jahr überhaupt noch ihren Zweck erfüllt. Tut sie leider aber nicht mehr. TP2 meckert auch dass das Mod Format veraltet sei. Diese Meldung kenne ich sonst nur wenn man mal wieder falsch entpackt hat oder versehentlich einen TP1 oder TF Link erwischt hat.


    Ich versuche mich auch weiter dran, aber falls jemand einen Tipp für mich hat, wo ich ansetzen müsste, nehme ich den auch gerne mit :-)


    Grüße

  • Ich habe die Mod zum laufen gebracht. Es hat ein einem kleinen Detail gehangen. Ich hatte die Mod unter \Steam\steamapps\common\Transport Fever 2\mods\mod_asset_sorter gespeichert. Aber offensichtlich muss am Ende des Ordnernames ein "_1" sein. Dann funktioniert sie auch ordentlich. Ich probiere nun mal fleißig aus, generiere Bildchen und Kategorien und melde mich dann wieder wenn ich einen Stand habe. EISFEUER, wenn du magst kannst du die Mod dann ja doch noch allen zur Verfügung stellen :-)

  • Hallo EISFEUER, ich komme mit den Bildern gut vorran, habe auch noch ein paar Konfigurationsoptionen im Code ergänzt, aber woran ich scheitere, sind die Lokalisierungen. Die Funktion function formatCategory scheint einen technischen Output also bspw. 00101_people zu generieren. So angelegt funktionieren auch die Icons. Aber den Versuch die Funktion so abzuändern, das ich lokalisierte Namen verwenden kann, ist nicht so ganz gelungen. Anbei mein Versuch.

    Code
    local function formatCategory(categoryName, topSortIndex, subSortIndex)
        local localizedName = _(categoryName) -- Get the localized string using the key
        return string.format("%05d", topSortIndex * 100 + subSortIndex) .. '_' .. localizedName
    end

    Warum das ganze? Im Spiel tauchen die technischen Namen auf wenn man mit der Maus über das Icon geht.


    Hast du eine Idee wie man das Problem lösen kann?

  • Die Lokalisierung der Kategorien ist relativ einfach....wenn man es weiß. ;)

    1. Lege zunächst folgende Ordnerstruktur innerhalb deines Mods an:


    2. Lege lua's mit den Namen der Kategorien an. Der Name der jeweiligen Lua, du nennst es technischer Name, muss dem Namen der Vorschaubilder entsprechen.

    3. Ändere den Inhalt der lua's auf:

    Lua
    function data()
        return {
            name = _("Zäune"),
            order = 0,
        }
    end

    Mit order kannst du zudem die Reihenfolge der Kategorien steuern.


    4. Wiederhole das für alle gewünschten Kategorien.

    5. Füge in deine strings.lua die entsprechenden Übersetzungen ein:


    Ergebnis:


    Ich muss zugeben, dass ich dies auch erst letzte Woche im Rahmen meines aktuellen Projektes herausgefunden habe. :/  :D


    LG Enno :)


    PS: Im Anhang auch eine Beispiel-Lua wie ich sie nutze.

    Files

    • fences.lua

      (74 Byte, downloaded 15 times, last: )

    Auch ein alter Fuchs schaut gern ein Huhn, selbst wenn er's nicht mehr Reißen kann. ^^

    163393-cpuz-ryzen9-5900-png

  • Danke euch beiden für die schnelle Antwort. Wenn ich das richtig sehe, dann fügt das Script ja die normalisierten Kategorien über den Modifier der Tabelle data.categories hinzu. Das klappt mit und ohne Prefix zur Sortierung.


    - Wenn ich das Prefix rausnehme, dann generiert bspw dieser Abschnitt einen Hover Text "People". Ist das Icon entsprechend benannt, klappt es so lange, wie es nicht ein Icon im Standard gibt. Bspw Trains greift sich immer den Standard-Icon für Trains, nicht meinen eigenen.

    Aber die Lokalisierung klappt so nicht. "People" ist weder die englische noch die deutsche Übersetzung in meinem Testfall.


    - Wenn ich den Vorschlag von EAT1963 anwende (Gott, wie kommt man darauf? :-)), dann spielt es keine Rolle ob mit oder ohne Prefix. Er scheint die 00101_people.lua oder ohne prefix people_lua nicht zu greifen. Muss ich den in der - ich nenne es mal "main_mod.lua" nicht irgendwo auf die lua files im UI/Categories Ordner verweisen?


    Ich probieres gerne weiter. Allerdings scheine ich das ganze immer nur testen zu können, in dem ich das Spiel komplett verlasse und neu lade. Mit knapp 500 mods (um auch eine Aúswahl für die absurdesten Schreibfehler in den jeweiligen Mods zu bekommen), dauert das immer ewig zwischen zwei Code Anpassungen. Gibt es nicht einen Modus der die Mod zur Laufzeit neu verarbeitet?

  • Quote

    Muss ich den in der - ich nenne es mal "main_mod.lua" nicht irgendwo auf die lua files im UI/Categories Ordner verweisen?

    Nein, so funktioniert das nicht.


    • In deinem Asset ist eine Kategorie eingetragen, z.B. catagories = {  "fences", }.
    • Das Spiel sucht nun nach einem passenden Icon für die Kategorie fences. Es sollte also ein icon fences.tga oder [email protected] im Ordner textures/ui/construction/categories vorhanden sein.
    • Weiterhin sucht das Spiel nach einer fences.lua, wie von mir oben beschrieben.
    • Findet es diese lua so lädt es die darin enthaltene Übersetzungsanforderung _() aus deiner strings.lua.
    • Wird keine lua gefunden so wird nur fences als Name im Spiel eingeblendet.

    Das wars auch schon.


    Der von mir beschriebene Weg ist übrigens der Standarweg, welchen auch UG anwendet um die eigenen Kategorien zu lokalisieren.

    Schau in deinen TPF2-Spielordner und du wirst fündig. ;)

    Auch ein alter Fuchs schaut gern ein Huhn, selbst wenn er's nicht mehr Reißen kann. ^^

    163393-cpuz-ryzen9-5900-png

BlueBrixx