Hier seine SP-Story: http://forums.civfanatics.com/showthread.php?t=497040
und ein SG, das ich aber noch nicht gelesen hab: http://forums.civfanatics.com/showthread.php?t=497753
Hier seine SP-Story: http://forums.civfanatics.com/showthread.php?t=497040
und ein SG, das ich aber noch nicht gelesen hab: http://forums.civfanatics.com/showthread.php?t=497753
Zitat von Meister Wilbur
Hab ich schonmal gesagt, dass ich OCC schrecklich finde, ohne es je gespielt zu haben?![]()
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
Erstmal werfen wir einen Blick auf den Techbaum:
Im Vergleich zu BtS ist der bedeutendste Unterschied erstmal, dass der Palast noch nicht steht, die Forschung wird damit vollständig abhängig von den anderen Forschungserträgen der Stadt - während in BtS Kommerz vor Gründung der zweiten Stadt kaum Bedeutung hat, ist er in PAE elementar. Man muss ihn so früh wie möglich haben, denn er bringt 4frei Haus (nur halb so viel wie in BtS, dennoch sehr wichtig), 2
(und damit die KE) und außerdem Spionage.
Forschungsreihenfolge ist ja sichtbar. Prinzipiell ist das einfach der direkte Weg zu Führerschaft, also der Palast-Tech, mit Fischen davor geschoben. Erstmal belege ich die Kühe und baue Krieger,
aber sobald sich Forschung bauen lässt (50% Umwandlungsrate, also 2-> 1
), wird das getan. Ist die Stadt gewachsen, würden Ebenenhügelwald+Kuh belegt werden. Der eine Hammer der Kuh fällt beim Forschungsbau durch Abrunden dann immer weg, bringt nichts. Der Fisch bringt aber 1
mehr. Da ich den einige Runden lang belege, lohnen sich die 23
für Fischen.
Stadtbildschirm:
Erklärungen zu den neuen Sachen in PAE auf dem Stadtbildschirm, kann übersprungen werden:
Achtung Spoiler:
In Runde 25 hab ich Pop 2:
Die Forschungsleistung der Stadt ist inzwischen durchaus nett.
Runde 41 ist interessant: Zum einen erkenne ich im Nebel die erste Naturkatastrophe, eine Flutwelle
und die ersten Auswirkungen des Tauens werden sichtbar: Der Meeresspiegel steigt und überflutet mein Getreide. Ja, natürlich ausgerechnet mein GetreideAls Germane ist man da in einer ziemlich blöden Lage, weil einiges um die HS herum überflutet werden kann. Ist mir schon einmal passiert, dass sehr früh das Feld 6 der Stadt zu Küste wurde
Das erschwert die Fortbewegung natürlich enorm.
Für Städte besteht allerdings keine direkte Gefahr, die versinken nicht. Das schlimmste, was passieren kann, ist, dass eine Stadt vielleicht irgendwann zu einer Ein-Feld-Insel-Stadt wird![]()
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
In Runde 46 kann ich den Palast beginnen
und in nach 10 Runden Bauzeit beenden:
Ein BT folgt. Die Nordischen Mythen, meine germanische Reli, hab ich bereits durch die Erforschung der Tech Nordische Mythen begründet. Das führt, zusammen mit dem Palast, bald zur ersten KE, die das Gebiet um den Stamm der Goten aufdeckt.
Kurz darauf, im Rundenwechsel 60/61, schlagen Meteoriten nicht weit von der Stadt ein...
Treffen aber nur die Küste und richten keinen langfristigen Schaden an
Ist aber schon sehr nett, bisher sollte es drei Naturkatastrophen gegeben haben (alle 20 Runden), glaub ich. Und zwei davon (Meteorit und die Flutwelle im schwarzen Nebel) in unmittelbarer Umgebung
Der fertige BT baut als erstes das Wild aus:
Der Ausbau kostet 10(jede Modernisierung kostet Geld), ich muss noch eine Runde sparen. Davor sparen hätte nichts gebracht, weil ich grade in dieser Runde noch Jagd erforschen musste - dann hätte ich jetzt das Geld und müsste auf die Tech warten.
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
Gerade entdeckt und abonniert.
Bin gespannt, ob deine Germanen nach Rom schwimmen müssen.![]()
Ist zu befürchten
Hier geht es bald weiter, denk ich. Hatte die letzten Tage ein paar Internetprobleme, Anhänge hochladen hätte da wohl nur mit Glück funktioniert... Aber jetzt sollte es wieder gehen![]()
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
Und ich hab mich schon gewundert und war schon ganz traurig....
Boggy: möchtest du, dass ich dieses ICE-Scenario mit den Pythonscripts in PAE aufnehm?
Pie's Ancient Europe (PAE)
Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.
- Pie's Ancient Europe (letztes Update: 22.12.2022)
... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!
Kannst du machen, würde das Updaten wesentlich vereinfachen (denn das besteht ja schließlich nur darin, immer wieder denselben Code in die neue Python-Datei zu kopieren). Setz einfach diesen Code hier zu onEndGameTurn (idealerweise unter den fürs Punischer Krieg-Szenario):
Kannst meinetwegen auch was dran ändern, wenn irgendwas ineffizient ist oder sowas (ist das erste, was ich in Python geschrieben hab...). Die beiden Karten findest du ja hier im Patch 7-Anhang, die Ziv-Umbenennungen (VIKING zu GERMANEN bspw.) sind da schon drinnen, ich glaub sogar die neuen Fahnen. Die Europakarte kann ja auch irgendwann noch an das Startpositionen-Script angepasst werden (bei der Weltkarte bringt das wohl nicht allzu viel...), damit die Civs nicht festgelegt sind. Die Weltkarte lässt sich aus irgendwelchen Gründen nicht laden ("Sie wurden besiegt" direkt am Anfang), wird derselbe Fehler wie bei den anderen Karten seinPHP-Code:
#----------------------Schmelzen (Eiskarten)----------------------------
sScenarioScriptData = CyMap().plot(0, 0).getScriptData()
#Normal alle 40 Runden (insg. 940 Runden)
#Schnell alle 32 Runden (insg. 770 Runden)
#Episch alle 45 Runden (insg. 1095 Runden)
#Marathon alle 52 Runden (insg. 1220 Runden)
iTurnSchmelzIntervall = 40
if gc.getGame().getGameSpeedType() == gc.getInfoTypeForString("GAMESPEED_QUICK"): iTurnSchmelzIntervall = 32
elif gc.getGame().getGameSpeedType() == gc.getInfoTypeForString("GAMESPEED_EPIC"): iTurnSchmelzIntervall = 45
elif gc.getGame().getGameSpeedType() == gc.getInfoTypeForString("GAMESPEED_MARATHON"): iTurnSchmelzIntervall = 42
if sScenarioScriptData == "SchmelzEuro" or sScenarioScriptData == "SchmelzWelt":
if iGameTurn % iTurnSchmelzIntervall == 0 and iGameTurn != 0:
iWahrscheinlichkeit = 8
iXLaenge = CyMap().getGridWidth()
iYLaenge = CyMap().getGridHeight()
eTundra = gc.getInfoTypeForString("TERRAIN_TUNDRA")
eSnow = gc.getInfoTypeForString("TERRAIN_SNOW")
eGras = gc.getInfoTypeForString("TERRAIN_GRASS")
eEbene = gc.getInfoTypeForString("TERRAIN_PLAINS")
eEis = gc.getInfoTypeForString("FEATURE_ICE")
eCoast = gc.getInfoTypeForString("TERRAIN_COAST")
eDesert = gc.getInfoTypeForString("TERRAIN_DESERT")
for x in xrange(iXLaenge):
for y in xrange(iYLaenge):
pPlot = CyMap().plot(x,y)
#Schnee -> Tundra
if pPlot.getTerrainType() == eSnow:
if sScenarioScriptData == "SchmelzEuro" and x >= 42 and y >= 49: iRand = self.myRandom(iWahrscheinlichkeit*3, None)
else: iRand = self.myRandom(iWahrscheinlichkeit, None)
if iRand == 1:
pPlot.setTerrainType(eTundra,1,1)
#Tundra -> Gras (25%) oder Ebene (75%)
elif pPlot.getTerrainType() == eTundra:
if sScenarioScriptData == "SchmelzEuro" and x >= 42 and y >= 49: iRand = self.myRandom(iWahrscheinlichkeit*3, None)
else: iRand = self.myRandom(iWahrscheinlichkeit, None)
if iRand == 1:
iRand = self.myRandom(4, None)
if iRand == 1:
pPlot.setTerrainType(eGras,1,1)
else:
pPlot.setTerrainType(eEbene,1,1)
#Eis schmilzt
elif pPlot.getFeatureType() == eEis:
iRand = self.myRandom(iWahrscheinlichkeit, None)
if iRand == 1:
pPlot.setFeatureType(-1, 0)
#Ueberflutung
if pPlot.isCoastalLand() and not pPlot.isCity() and not pPlot.isHills() and not pPlot.isPeak():
if sScenarioScriptData == "SchmelzWelt":
iRand = self.myRandom(50, None)
if iRand == 1:
pPlot.setTerrainType(eCoast,1,1)
elif sScenarioScriptData == "SchmelzEuro":
if y >= 28:
iRand = self.myRandom(50, None)
if iRand == 1:
pPlot.setTerrainType(eCoast,1,1)
#Desertifizierung
if sScenarioScriptData == "SchmelzEuro" and y <= 8:
if pPlot.getTerrainType() == eEbene and not pPlot.isCoastalLand() and not pPlot.isCity() and not pPlot.isRiver():
iRand = self.myRandom(iWahrscheinlichkeit, None)
if iRand == 1:
pPlot.setTerrainType(eDesert,1,1)
pPlot.setImprovementType(-1)
elif pPlot.getTerrainType() == eCoast and y <=6 and x >= 2 and x <= 60:
iRand = self.myRandom(iWahrscheinlichkeit, None)
if iRand == 1:
pPlot.setTerrainType(eEbene,1,1)
#---------------------------Ende Schmelzen---------------------------------------
Wenn du ins Texttool zwei Tags für den Szenarioauswahlbildschirm (so wie TXT_KEY_SCENARIO_PELOPONNESIAN_WAR) und für den Dawn of Man-Bildschirm, also den bei Spielstart (so wie TXT_KEY_DAWN_OF_MAN_PELOPONNESIAN_WAR), einfügst, kann ich die auch mit Text füllen, falls mir irgendwas einfällt.
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
Ha! dir gehts wie mir: in der Beschreibung steht bei Marathon alle 52 Runden und beim Vergleich dann 42. Typischer copy-paste Fehler, wo man auf die 1te Stelle vergisst.
Also zum Verbessern: so wie es aussieht, geht das Script ewig durch. Am Anfang macht so ein Plotdurchlauf keine bedenklichen Auswirkungen auf die Rundenzeit, aber später dann schon. Wäre es nicht besser, wenn man das zB max. bis zB 600 v.Chr. (also Anfang Klassik) durchlaufen lässt und die Karte dann so lässt?
In der Zeit müsste halt alles in etwa so aussehen, wie es auch aussehen sollte
Wo ich noch fragen hätte:
-) bei deinem Spiel hat sich das Getreide zu einem See entwickelt. Tja... blöd.das müsste man verhindern. liegt am IF isCoastalLand. Da müsste man erstens schauen, ob ein Bonus drauf is und dann auch ob das benachbarte Feld auch Eis ist. Weil die Idee wäre super: dort wo Eis ist, kann auf einem benachbarten oder gleichen Feld ein See entstehen solang das Eis da ist. Ich suche und suche nach dem code, finde aber heraus, dass das ja bei jeder Küste passieren kann! Heftig!
-) bei den Schnee und Tundra IFs, warum eigentlich x >= 42? Das gilt ja nur für die linke Seite der Karte.
Achja, und klar: fürs Texttool gibts natürlich die Tags dann, wenn ichs soweit eingefügt habe. Da müsstest du dann beschreiben, was alles passieren kann.
Pie's Ancient Europe (PAE)
Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.
- Pie's Ancient Europe (letztes Update: 22.12.2022)
... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!
Verdammt!
Klingt in der Tat intelligent. Müsste dafür dann mal durchprobieren, wie oft es durchlaufen muss, damit die Karte ein vernünftiges Stadium erreicht.
Da kommt mir aber grad noch eine Idee:
Ich könnte doch zu Spielbeginn alle Tundrafelder, Schneefelder und Wasserfelder mit Eis in ein Array speichern (also insgesamt drei Stück), alle x Runden dann immer nur die Arrays durchlaufen und wenn ein Feld schmilzt, dieses aus dem Array rausschmeißenDamit würde der Rechenaufwand mit jedem Durchlauf geringer werden. Ließe sich allerdings nur mühsam mit den Überflutungen verbinden (durch die Überflutungen entstehen ja ständig neue Küstenfelder)
Außer natürlich, wenn nur Felder, die zu Spielbeginn an der Küste liegen, überflutet werden können. Ist eigentlich sowieso sinnlos, dass das Wasser theoretisch alle Felder auf der Karte erreichen kann
Wenn sowas machbar ist, von Arrays in Python hab ich eigentlich keine Ahnung, außer dem, was ich im PAE-Python bisher gesehen hab
Tatsächlich hab ich mir nach der Ressourcenüberschwemmung überlegt, ob ich da eine Abfrage reinbauen soll. Hab es dann erstmal nicht gemacht, weil ich das so schön gemein fandIst aber wohl doch fürs Spiel sinnvoller, wenn Ressis nicht überschwemmbar sind.
Um mal etwas aus dem Spiel vorwegzunehmen: Auf die Idee, dass Hügel und Gipfel nicht überschwemmt werden sollten (was ja irgendwie logisch ist), bin ich erst gekommen, als mein Kupferhügel geflutet wurde
Die Nähe vom Eis klingt logisch. Bräuchte man also eine Schleife, die die acht Felder um das Feld herum auf Eis überprüft. Nur haben die allerwenigsten Küstenfelder ein direkt angrenzendes EisfeldEin Radius von zwei wär wohl verkraftbar (dann müssten natürlich für jedes Küstenfeld bis zu 24 Felder im Umkreis geprüft werden...)
Das ist für die Europakarte so. Alle Felder innerhalb des rot markierten erfüllen diese Bedingung:
Also in etwa der Bereich, der auch auf der normalen Karte Tundra ist. Da wird die Schmelzwahrscheinlichkeit gedrittelt, damit nicht alles wegschmilzt.
So ähnlich ist das bei den anderen Bedingungen mit Koordinaten-Beschränkungen auch: Überflutung hat auf der Europakarte y>=28 als Bedingung, damit Afrika nicht überflutet wird (schließlich ist da nirgends Eis); auch die Desertifizierung wird durch y<=8 auf Afrika beschränkt (was leider dazu führt, dass irgendwann ein absolut gerader Strich durch Afrika verläuft, der die Trennlinie zwischen Ebene und Wüste darstellt) und das Austrocknen der Seen wird ebenso durch y <=6 and x >= 2 and x <= 60 auf die afrikanischen beschränkt (x-Beschränkung, damit das Rote Meer nicht auch verschwindet).
![]()
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times
-) also das mit dem Array hat natürlich was. klar wär das möglich (kann ich dir dann machen). und pfeif auf die dann entstehenden küsten. 2 plots landeinwärts is sowieso heftig.
-) ja und eisfeld rundherum wäre wohl auch zu heftig für die ladezeit. dann eher umgekehrt: wenn eis, dann soll eins vom 3x3 Gebiet zu Wasser werden. Das Eis soll dabei schmelzen.
-) wenn man anbaubare resis verbreiten kann (zukunftspatch), dann kann mans ja wieder reinmachen
-) x >= 42: achso, explizit für die stelle da oben. dann is alles klar.
-) afrika: also, wenn das script dann eh nur bis 600 v.Chr. geht, dann wird auch kein Strich sein, denk ich mal.
Pie's Ancient Europe (PAE)
Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.
- Pie's Ancient Europe (letztes Update: 22.12.2022)
... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!
Mein BT hat ja, beschützt von zwei Kriegern, angefangen, das Wild zu modernisieren. Ein Wolf hat angegriffen, ein Krieger verteidigt erfolgreich und erhält dafür
Waldkampf I. Die geländespezifischen Beförderungen in PAE (Wald, Hügel, Dschungel, Wüste, Sumpf) sowie Stadtangriff und -verteidigung haben alle fünf Stufen, aber nur die Stufen 2 und 3 kann man über EP erhalten. Nach einem Kampf erhält man mit 30% Wahrscheinlichkeit eine (!) passende geländespezifische Beförderung, egal auf welcher Stufe man ist (hat man noch keine Beförderung dieser Art, kriegt man Stufe 1, hat man drei, kriegt man Stufe 4 etc). Sinn der Sache ist: Um mit Erfahrungspunkten auf Waldkampf spezialisiert zu werden, sollte eine Einheit auch wirklich mal in einem Wald gekämpft haben, daher ist Wald I nur über Kämpfe im Wald erhältlich (hat den netten Nebeneffekt, dass die Ägypter-KI nicht auf Wald befördert etc). Wald II+III über Kämpfe oder EP, die Stufen 4+5 dann wieder nur über Kämpfe, damit man nicht so einfach an diese rankommt. Ähnlich funktioniert das mit Schock, Deckung etc: Man kann sie nicht über EP kriegen, sondern nur nach Kämpfen.
Davon abgesehen können Einheiten auch bei Ausbildung die erste Stufe einer Beförderungskette bekommen (auch mehrere verschiedene Beförderungen, aber immer nur Stufe 1): Ist in der Umgebung der Stadt (die acht angrenzenden Felder), ist die Wahrscheinlichkeit hoch (10% pro Feld), dass die Einheit die Wald-Beförderung kriegt. Ebenso mit den anderen Geländearten. Stadtangriff (für Nahkämpfer etc.)/-verteidigung (für Bogis) kriegen Einheiten mit 5% Wahrscheinlichkeit pro Pop der Stadt.
Ich treffe Boudi...
Häufig verwickelt sie die Germanen in irgendeinen sinnlosen und unnötigen KriegSehr wahrscheinlich, da wir ja jetzt schon verschiedene Relis haben.
Einen Krieger schick ich los, um dieses Stammesdorf zu öffnen:
Der Bär wird ihn töten, aber das ist egal, Krieger sind billigWenn ich Gold finde, ist das wesentlich mehr wert.
Tja...
Der alte Krieger wird aufgelöst, weil ich sonst eine Runde Unterhalt zahlen müsste, und der neue geht in die HS zurück.
Ereignis:
Kann ich die Schmiede direkt wieder neu bauen. Ich frag mich allerdings gerade, wieso ich die 10
gezahlt hab
Die untere Option hätte nichts gekostet und 1
für kurze Zeit gebracht, kein Problem eigentlich, da ich
im Überschuss haben sollte. Naja, kann ich nicht mehr ändern.
Einkommen ist -1, weil ich grad einen Axtkrieger (der auch direkt Wald I gekriegt hat) gebaut hab. Ich lös einen der alten Krieger auf, um das Geld zu sparen.
"Only Germans, perhaps, could make a game about economics - a stylish, intelligent and captivating one at that." - The New York Times