Ergebnis 1 bis 12 von 12

Thema: Anordnung der Waren in Stadtansicht via XML-Datei ändern

  1. #1
    Galadriel_112b
    Gast

    Wichtig! Anordnung der Waren in Stadtansicht via XML-Datei ändern (10€ Belohnung^^)

    Huhu,

    kann mir jemand helfen? Ich wollte die Waren in der Stadtansicht ändern. Und zwar so, dass Silber und Kakao nach Erz kommen.
    Dazu hatte ich in dieser Datei:
    \mods\TAC 2.03_final\Assets\XML\Terrain\CIV4YieldInfos.xml
    einfach die Einträge
    <Type>YIELD_SILVER</Type>
    und
    <Type>YIELD_COCOA</Type>
    nach dem Eintrag vom Ore (Erz) versetzt.

    Optisch klappte das, siehe Bild.
    https://abload.de/img/tabaktownlcjx4.jpg
    Doch es hat nur die Bilder verschoben. Die "Berechnungen", also alle "Zahlen" bleiben wo sie sind So produziere ich plötzlich Kakao ohne Kakaopflücker und 0 Tabak, owohl Tabakpflanzer usw..
    Das liegt sicher daran, dass ich in der XML auch nur "verschoben" habe, aber keine Werte änderte. Doch welche muss ich ändern, ich finde nichts Passendes. Ist das in einer ganz anderen Datei?
    Weiß da jemand Rat? Ich weiß, da soll man ja nicht rumspielen, aber ich mag halt

    Liebe Grüße
    Gala
    Geändert von Galadriel_112b (15. Januar 2021 um 08:08 Uhr)

  2. #2
    Galadriel_112b
    Gast
    Habe es fast selbst gelöst^^

    Es ist im Grunde alles richtig wenn man ein neues Spiel startet. Ich Dummerchen habe aber immer meinen Spielstand eingeladen. Die Lösung dafür: Einfach in JEDER Siedlung die Arbeiter mit irgendwelchen Fehlern zu einem anderen Gebäude und wieder zurück schieben. Und schon stimmen die Zahlen. Das was die Siedlung selbst "erntet", ist entweder sofort mit korrigiert oder erst in der nächsten Runde automatisch richtig.

    Eine Macke bleibt:

    Es betrifft nur die nun "verschobenen" Ressourcen. In dem Fall von Baumwolle bis Kakao - gemeinst ist die Leiste unten in der Siedlung vom Lager. Um diese Positionen geht es.
    Die Macke: Die kleinen Bildchen beim Mausover stimmen nicht und die, die angezeigt werden, wenn man einen Arbeiter aufs Feld schiebt und gefragt wird was er ernten soll. Also auch außerhalb der Siedlung, zum Beispiel indem man mit der Maus über Wale geht, steht da zwar "Walspeck 20" aber dahinter ist das Minibild vom Zucker.
    Siehe Bild:

    https://abload.de/img/aausj03.jpg

    Wer sich damit auskennt und mir helfen kann, der bekommt von mir einen 10€-Amazon-Einkaufgutschein,
    also so einen Code für den Warenkorb. Es muss natürlich die absolute Lösung sein und nicht sowas wie "mach es rückgängig und alles stimmt"^^
    Wer sich nicht auskennt, lässt lieber die Finger davon

    10€ sind nicht viel, ich weiß. Es soll auch wirklich nur jemand helfen, der Spaß daran hat, so wie ich.

    Mein Gedanke war, dass es vllt. nicht an einen Eintrag in einer XML liegt, sondern reale Bilddateien irgendwo einfach getauscht werden müssen. Also dass eine Kakao-Bilddatei einfach ein eine Erz-Bilddatei umbenannt werden muss. Doch Bilddateien fand ich nur im TAC- bzw. mods-Ordner mit der Endung dds und da sind natürlich nur die neuen Sachen drin: cocoa, trainoil, whale. Also keine Baumwolle, Zucker......usw..

    Ich freue mich wenn da jemand irgendwann eine Lösung hat. Auch wenn es 10 Jahre später ist, ich werde immer mal wieder hier reinschauen, denn ich spiele Colonization schon seit ich klein war. Seit einigen Jahren spiele ich das alte und TAC im Wechsel und werde das wohl mein Leben lang so machen, da es mich unglaublich beruhigt

    Grüße
    Geändert von Galadriel_112b (17. Januar 2021 um 07:31 Uhr)

  3. #3
    Ad Astra Avatar von Ronnar
    Registriert seit
    27.10.08
    Beiträge
    3.258
    Ich modde ja schon ewig nicht an TAC, aber wenn ich mich richtig erinnere muss die Reihenfolge im XML dieselbe sein wie die der Icons im DDS File. Du müsstest also die Datei mit der Bildbibliothek anpassen. Bei der Bearbeitung gibt’s einiges zu beachten, hab’s selber nie gemacht.

  4. #4
    Galadriel_112b
    Gast
    Huhu Ronnar,

    vielen Dank für deine Info. Aber eine dds mit dem Erz (bzw. Ore/Iron) gibt es nicht, wie ich bereits schrieb:

    Zitat Zitat von Galadriel_112b Beitrag anzeigen
    Doch Bilddateien fand ich nur im TAC- bzw. mods-Ordner mit der Endung dds und da sind natürlich nur die neuen Sachen drin: cocoa, trainoil, whale. Also keine Baumwolle, Zucker......usw..
    Die du meinst, wo so viel Sachen in einer Bilddatei sind, die habe ich gesehen, da ist auch Erz dabei, aber nur das Erz-Symbol mit der Holzkiste aus der Siedlungsansicht, siehe unten in meinem 1. Bild und leider nicht das kleine Erz wie in meinem 2. Bild.

    Trotzdem danke.

    Liebe Grüße
    Gala
    Geändert von Galadriel_112b (16. Januar 2021 um 04:32 Uhr)

  5. #5
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Halo Galadriel,

    ich würde dir empfehlen deine vorherigen Änderungen rückgängig zu machen und nur die Anordnung der Waren im „Python-Screen“ zu ändern.
    Dazu muss man die Stadtansicht und wahrscheinlich auch die Europaansicht verändern.
    Ich schaue mal drauf.

  6. #6
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    So?

    BildBild


    Wenn das passt musst du die zwei Dateien aus dem angehängten Zip nach TAC 2.03_final\Assets\Python\Screens kopieren.
    Falls du noch mehr anpassen willst: In beiden Dateien befindet sich ganz unten folgende Methode. Es wird eine Liste von Ressourcen-IDs übergeben
    und eine modifizierte Reihenfolge zurückgegeben.
    Die Elemente von 'new_order' werden hinter dem ersten Eintrag von 'new_order' eingetragen.
    Code:
    	def swapYieldOrders(self, TableYields):
    		# Set silver and cocoa behind ore
    		TableYieldsMod = []
    		new_order = [
    				gc.getInfoTypeForString("YIELD_ORE"),
    				gc.getInfoTypeForString("YIELD_SILVER"),
    				gc.getInfoTypeForString("YIELD_COCOA")]
    
    		for iYield in TableYields:
    			if iYield in new_order:
    				if iYield == new_order[0]:
    					TableYieldsMod.extend(new_order)
    			else:
    				TableYieldsMod.append(iYield)
    
    		return TableYieldsMod
    Angehängte Grafiken Angehängte Grafiken
    Angehängte Dateien Angehängte Dateien
    Geändert von Ramkhamhaeng (16. Januar 2021 um 10:53 Uhr)

  7. #7
    Galadriel_112b
    Gast
    Huhu Ramkhamhaeng,

    ich kriege einen Knall Das ist richtig!!! Ich freue mich riesig.
    Habe zwar noch nicht gespielt, aber erstmal die Files reingeschoben und Spiel gestartet und tadaa alles korrekt.
    Dann habe ich - um die Sache auch zu verstehen - das ORE spaßeshalber in COTTON geändert und COCOA in WHALE_OIL und es klappte ebenfalls wie geplant "Siedlerin Gala" meldet: Habe verstanden!

    Lass mich raten, dann bist du sicher auch so jemand wie ich, der schon 1995 an den Textdateien von Colonization rumgefummelt hat, bis alle Schreibfehler korrigiert und beim Copyright der eigene Name stand?
    Dir macht sowas sicher auch Spaß

    Gerne bekommst du den Gutscheincode...

    Nur weiterlesen, wenn du Spaß an der Sache hast^^

    Eine Sache aber noch: Magst du auf 20€ erhöhen?^^ Ich habe da noch ein Anliegen. Und keine Angst, dabei bleibt es dann. Ich würde gerne die Popup-Fenster komplett abschalten, die bei Rundenanfang kommen und über die Fertigstellungen der Zimmerer informieren, wo man dann den nächsten Bau festlegen muss. Denn dieses "muss" gefällt mir nicht. Ich will beim siedeln nichts müssen. Das gab es in Colonization so nicht und stellt für mich eine Verschlimmbesserung dar. Die Meldung kam zwar, aber man hatte nur 2 Sachen zur Auswahl: 1. Runde fortsetzen und 2. Zur Stadtansicht wechseln.
    Jetzt wird man quasi gezwungen etwas SOFORT zu bauen, ein NoGo. Als Anfänger mag das ja sinnvoll sein, aber nicht als Spielmax
    Aber noch viel schlimmer ist Folgendes: Man geht in die Stadt, überlegt stolze 5 Minuten was man bauen möchte, geht raus und es kommt die nächste Meldung für die nächste Stadt, wiederholt das also alles etliche Male.. eine halbe Stunde ist rum und es folgt etwas Schlimmes wie z.B. eine Kriegserklärung, Steuererhöhung oder oder oder, also irgend etwas, was man keinesfalls. Was macht also der "gelernte Siedler"? Richtig, er lädt seinen alten Spielstand ein.
    Dann beim 2. Versuch denkt man sich "Ach, das wird nicht wieder passieren!" doch nach erneuten 30 Minuten die Ernüchterung, wieder was Dummes, drei Cowboys denken sie können mich erpressen und 15 Indianerstämme aus Timbuktu wollen die Allianz^^
    Also wieder den Spielstand einladen. Eine Stunde ist rum. Leider habe ich max 2 Stunden Spielzeit und das nur paar Mal im Monat. Sehr ärgerlich und fragt sich, wer so etwas entwickelt hat. Kennst du den Film "Und täglich grüßt das Murmeltier"?
    Mit der Zeit gewöhnt man sich dran und klickt erstmal immer überall auf "Planwagen". Am Rundenende schaue ich dann die Städte "in Ruhe" durch wo überall Planwagen steht... Aber das ist doch nicht die Lösung :/

    Ich habe zwar die Texte gefunden und ändern können - und vor allem das "fertiggestellte Etwas" in gelbe Farbe gesetzt - aber nicht abschalten können.
    ( mods\TAC 2.03_final\Assets\XML\Text\CIV4GameTextInfos_Original.xml )
    Auch wenn ich den Abschnitt raushaue, kommt natürlich das Popup trotzdem in voller Pracht, es fehlt dann nur der Text. Stattdessen steht etwas anderes da wie zb: "TXT_KEY_POPUP_CONSTRUCTED_WORK_ON_NEXT".
    Das Popup muss also woanders versteckt sein. :/
    Hach, ich wünsche mir die guten alten txt von Colonization zurück

    Alternativ würde es auch helfen, wenn etwas Nutzloseres wie Militärpunkte, Handelspunkte und Politikpunkte ganz oben (aber unter "Siedlung untersuchen" steht. Denn die würde ich auch gerne anklicken, aber dazu muss man erstens mit der Maus auf das Popup-Fenster und zweitens eine halbe Ewigkeit nach unten scrollen, gefühlte hundert Mal pro Spieltag.
    Es wäre hier dann wohl auch "nur" eine Reihenfolge zu ändern wie mit dem Silber und Kakao.
    Warum etwas Nutzloseres nach oben? Weil ich mit "Planwagen" auch schon mal Schwierigkeiten hatte. Die Zimmerer hatnen nämlich über den fertigen Bau hinaus so viele Hämmer fertig, dass der angeklickte Planwagen auch sofort fertig war. Aber nur als abgeschlossene Produktion, also noch nicht tatsächlich, weil wohl nur eine Sache pro Runde fertiggestellt werden darf? (Wer sagt das eigentlich? Ich dachte, ich wäre die Eroberin^^) Und da ich nächste Runde aber was anderes haben wollte, wie auch die nächsten 300 Runden^^ schob ich also jedesmal einen blau blinkenden Planwagen in der Stadtansicht vor mir her... Komische Sache.

    Besser wäre natürlich ein Butten "Runde fortsetzen" wie bei Colonization.
    Vor allem wenn man gerade in einem spannenden Krieg ist, interessiert es herzlich wenig, ob gerade Linienschiff 528, 529 und 530 fertig sind und man sie wie die anderen irgendwo im Atlantik stapeln muss^^

    Freue mich, wenn du da helfen kannst. Also entweder Fenster weg oder Button "Runde fortsetzen" oder Reihenfolge ändern. Siehe Bild:

    https://abload.de/img/aaxnjwb.jpg

    Aber nur wenn du magst! Wenn nicht, dann nicht

    Liebe Grüße UND DANKE für die Lösung mit den py-Dateien. Hätte das wohl im Leben nicht gefunden, da ich nicht ahnte, dass man die py wie eine txt lesen kann.

    Gala

    PS: Oh Gott, ist das viel Text geworden^^
    Sag mal, für eine komplette Neuanordnung der Waren ist das mit den PY-Dateien nicht möglich?
    Wollte es so machen, aber das ist wohl zu viel des Guten^^:

    Achtung Spoiler:

    gc.getInfoTypeForString("YIELD_FOOD"),
    gc.getInfoTypeForString("YIELD_WHALE_BLUBBER"),
    gc.getInfoTypeForString("YIELD_FUR"),
    gc.getInfoTypeForString("YIELD_SUGAR"),
    gc.getInfoTypeForString("YIELD_TOBACCO"),
    gc.getInfoTypeForString("YIELD_COTTON"),
    gc.getInfoTypeForString("YIELD_ORE"),
    gc.getInfoTypeForString("YIELD_SILVER"),
    gc.getInfoTypeForString("YIELD_COCOA"),
    gc.getInfoTypeForString("YIELD_WHALE_OIL"),
    gc.getInfoTypeForString("YIELD_COATS"),
    gc.getInfoTypeForString("YIELD_RUM"),
    gc.getInfoTypeForString("YIELD_CIGARS"),
    gc.getInfoTypeForString("YIELD_CLOTH"),
    gc.getInfoTypeForString("YIELD_LUMBER"),
    gc.getInfoTypeForString("YIELD_TOOLS"),
    gc.getInfoTypeForString("YIELD_MUSKETS"),
    gc.getInfoTypeForString("YIELD_HORSE"),
    gc.getInfoTypeForString("YIELD_TRADE_GOODS")]


    Der Rest ist wie bei dir, habe halt nur abgebildeten Zeilen geändert bzw. hinzugefügt. (Jaja, die Galadriel kriegt den Hals nicht voll, ich weiß^^. SORRY!!)
    Geändert von Galadriel_112b (16. Januar 2021 um 07:40 Uhr)

  8. #8
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Ich habe zwar Col 1 seeehr lange gespielt, aber Spieldateien geändert habe ich erst mit Civ4 & Civ4:Col. Aber das sind ja auch schon ein paar Jährchen ^^
    (In einem anderen Thread schrieb vor kurzem jemand dazu, dass die
    zeitliche Differenz von Civ1 und Civ4 mittlerweile kleiner ist als die zwischen dem Erscheinungsdatum von Civ4 und jetzt. Für Colonization gilt das auch.)

    Die umfangreichere Neuanordnung der Waren ist theoretisch kein Problem. Da du die Programmiersprache Python nicht kennst, vermute ich da nur ein kleines praktisches Problem:
    Die Einrückung aller Zeilen ist in dieser Programmiersprache relevant und ersetzt die sonst übliche Klammerung von Blocken mit '{' und '}'.
    Daher sind in meinem Code weiter oben die Zeilen auch weiter nach Rechts verschoben, als es optisch Sinn ergibt. Ich habe da die Einrückung aus dem Spiel beibehalten wollen.

    Sehr ärgerlich ist, dass in den *.py-Dateien von Colonization Tabulatoren/TABs zur Einrückung verwendet werden. Du hast dann immer ein Problem, wenn dein Texteditor bei neuen Zeilen plötzlich Leerzeichen verwendet!
    Ich würde an deiner Stelle als erstes das kontrollieren und die Zeilen alle mit vier TABs einrücken.


    Oder du wartest ein paar Stunden bis ich wieder am Rechner mit Colonization bin (Ich will eine andere Ursache noch nicht ausschließen ^^)

    Zu deiner Popupfrage will ich mich erst später genau äußern. Meiner Meinung nach kannst du die Popups wie bei Civ4 in den Optionen generell bei Rundenbeginn minimieren. (Das spart 10€ )

  9. #9
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Bei der Anordnung der Waren ist ein „Klassiker“ aufgetreten, auf den ich beim Modden auch schon mehrfach herein fiel:
    Die Pferde heißen YIELD_HORSES! Ohne S findet getInfoTypeForString(...) die ID nicht und gibt -1 zurück. Mit dem Wert stoplern dann andere Funktionen...

    Im Anhang ist eine korrigierte Version ohne das Problem (siehe swapYieldOrders2-Funktion. Die andere Funktion habe ich noch mit drin gelassen.)

    Zitat Zitat von Ramkhamhaeng Beitrag anzeigen
    Zu deiner Popupfrage will ich mich erst später genau äußern. Meiner Meinung nach kannst du die Popups wie bei Civ4 in den Optionen generell bei Rundenbeginn minimieren. (Das spart 10€ )
    Zum Popup-Problem: Bitte probiere mal aus ob die Option "Popups minimieren“ nicht genau das ist, was du dir vorstellst.
    Bild

    Die Option beeinflusst die Popups von TAC nicht, aber die normalen vom Basisspiel. Damit werden dann die Bauaufträge als kleine Hämmer an der rechten Seite angezeigt und man kann sich am Rundenbegin auf andere Sachen konzentrieren.
    Angehängte Grafiken Angehängte Grafiken
    Angehängte Dateien Angehängte Dateien
    Geändert von Ramkhamhaeng (25. Januar 2021 um 22:23 Uhr)

  10. #10
    Galadriel_112b
    Gast
    @ Ramkhamhaeng

    Alles richtig. Sowas wie mit dem fehlenden S hatte ich mir schon gedacht und alles nochmal geprüft. Bei TRADE_GOODS habe ich auch extra das S überprüft hahaha. Wie sagt man so schön? Vier Augen sehen mehr als zwei
    Danke!
    Und wegen den Popups kann ich nur sagen: Da siehst du mal wie blöd ich bin^^ Würde am Liebsten unter einen Stein kriechen...
    Das liegt bestimmt daran, dass ich vor hundertelfzig Jahren die Einstellungen durchgeklickt und seit dem nie wieder reingeschaut hab.^^ Maaan, wie dumm von mir. Habe dutzende xml deswegen durchforstet.
    Das ist jetzt perfekt.
    Ich danke dir!

    Schau mal in dein Postfach

    Also auch COL1 gespielt Hehe, ich habs doch gerochen Dann hat deine Mutter sicher auch immer gerufen "Du hast schon viereckige Augen!" Das Spiel hat mich damals total gepackt. Später kam sogar eine CD raus, die hab ich mir auch gleich geholt und die lebt heute noch in ihrer Originalschachtel nebst einem Colonization-Mauspad.

    Danke übrigens auch für den Tipp mit den TABs.

    Na denn, ich habe keine weiteren Wünsche mehr und bedanke mich recht herzlich. Hoffentlich trifft man sich mal wieder. Hat mir Spaß gemacht. Dir hoffentlich auch


    Liebe Grüße
    Gala


    @ die anderen Leser
    Die Probleme wurden also gelöst, es gibt hier keine Gutscheincodes mehr

  11. #11
    Vulvarine Avatar von Tohuwabohu
    Registriert seit
    25.05.19
    Beiträge
    4.913
    Zitat Zitat von Ramkhamhaeng Beitrag anzeigen
    (In einem anderen Thread schrieb vor kurzem jemand dazu, dass die
    zeitliche Differenz von Civ1 und Civ4 mittlerweile kleiner ist als die zwischen dem Erscheinungsdatum von Civ4 und jetzt.
    Uhh, krass wie alt man geworden ist und die Zeit vollkommen falsch einschätzt.
    Naja: Auch wir sind näher an Cleopatra dran als die an den Pyramiden.

  12. #12
    Galadriel_112b
    Gast
    Das deprimiert

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •