Seite 73 von 75 ErsteErste ... 236369707172737475 LetzteLetzte
Ergebnis 1.081 bis 1.095 von 1118

Thema: PAE VI: Patch 6.14-6.17

  1. #1081
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Leider habe ich zwischenzeitlich geglaubt, das Thema wäre erledigt und viele Notizen von mir gelöscht.
    Die Beiträge zum CtD ziehen sich seit Wochen durch den ganzen PB Thread. Hier zur besseren Übersicht nur die Fakten:

    1. Save (mit PB 6.17) https://www.civforum.de/showthread.p...=1#post9334844
    2. Save (mit PB 6.17) https://www.civforum.de/showthread.p...=1#post9341584
    Vorsicht: Der letzte Download von 6.17 (v26) enthält meinen missglückten Fix-Versuch in CvGameUtils.py
    Im Anhang habe ich die richtige CvGameUtils.py zum drüber kopieren (6.17 v25)

    3. Save (mit PB 7) https://www.civforum.de/showthread.p...=1#post9351558
    4. Save (mit PB 7) https://www.civforum.de/showthread.p...=1#post9351599
    Vorsicht: Der letzte Download PB_PAE_7_final enthält ebenfalls eine falsche CvGamesUtils.py
    Bitte umbedingt die reparierte CvGamesUtils für 7final (im Anhang) benutzen.

    Xist10: Kennst du noch weitere Saves?

    In diesen 4 Saves waren es immer Generäle
    UnitName=Legio I Minervia --> Save 1 (Iberier = Player 5)
    UnitName=Legio III Cyrenaica --> Save 2 (Etrusker = Player 7)
    UnitName=Legio III Gallica --> Save 3+4 (Konstantin von Rom = Player 12)

    Gemeinsam ist ihnen:
    PromotionType=PROMOTION_LEADER
    PromotionType=PROMOTION_LEADERSHIP
    PromotionType=PROMOTION_FORM_FOURAGE
    und mindestens PromotionType=PROMOTION_RANG_ROM_12

    Bilder von diesen Generälen:

    Achtung Spoiler:

    Save 1
    Bild

    Save 2
    Bild

    In Save 3 und 4 ist das dieselbe Einheit, diese unterscheidet sich durch unterschiedliche Kampfverläufe zum Save 3
    Bild
    Angehängte Grafiken Angehängte Grafiken
    Angehängte Dateien Angehängte Dateien
    Geändert von Rob Anybody (13. August 2024 um 13:41 Uhr) Grund: Fakten nachgetragen
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  2. #1082
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Zitat Zitat von Pie Beitrag anzeigen
    Rob: du hast dir ja schon ziemlich den Kopf zerbrochen

    Passiert es beim Bewegen, beim Angreifen, beim Verteidigen oder rein beim Aktivieren der Einheit unit.isSelect() ?

    Ich gehe auf Fehlersuche immer so: ich kommentiere alle funktionen mit /* und */ aus und "entkommentiere" sie Schritt für Schritt.
    Wenn ich dann eine Funktion gefunden habe, wo es hakt, dann mach ich das auch Schritt für Schritt für alle Features innerhalb der Funktion (während die anderen Funktionen wieder "aktiv" sind).
    so kann man sicher sein, dass es zB bei PAE_Unit.doUnitFormation() passiert oder nicht.
    Dann muss man in der PAE_Unit.doUnitFormation() wieder Schritt für Schritt alles auskommentieren, bis man die Stelle findet.
    Leider weiß ich nicht, was die KI mit der Einheit macht.
    Das letzte Lebenszeichen vor dem CtD erhalte ich bei "CvGameUtils.AI_unitUpdate" in Zeile 2550 "Return False"

    Der Fehler kann sein:
    - ein vergessenes Return viele Zeilen darüber
    - ein fehlerhaftes Command.delete viele Funktionen früher
    - ein fehlerhaftes Update der Einheit im SDK
    - nachfolgend ein seltenes Verhalten der KI (General steigt vom Pferd, General lässt sich in Stadt nieder)
    - nachfolgend ein verlorener Kampf (General flieht, General läuft zum Feind über) evtl. mit Barbaren

    Mein Eindruck: Der CTD ist erst mir einem neuen Feature entstanden. Ich werde nun ältere Versionen testen, ob der CTD dort bereits enthalten war.

    Edit:
    Evtl. spielen auch andere Einheiten auf dem Feld eine Rolle.
    - Addition verschiedener Boni (Heilung, Rückzugschance über 80%, Abfangchance über 100%) bei Kombination der Beförderungen unterschiedlicher Einheiten
    - falsche Einheiten in Formationsgruppe
    - Übertragung von EP wenn sich ein General einer Gruppe anschließt ...
    - Verwendung von Stappelangriff bei KI (Spieler tun das normalerweise nicht)
    Geändert von Rob Anybody (13. August 2024 um 03:07 Uhr)
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  3. #1083
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Mir fällt gerade auf:
    Der Iberer (Save 1) hat 4 Legionen, diese werden aber nicht durch "PAE_Unit.canUpgradeUnit" überprüft.
    Den CtD löst nur die Legion mit General aus.

    Bild

    Bild

    Wenn ich in "PAE_Unit.canUpgradeUnit" die Abfrage
    if pTeam.isHasTech(gc.getInfoTypeForString("TECH_GRENZHEER")):
    mit "Return None" als Sonderfall behandele, kann ich die CtD aus Save 3+4 ausfiltern.

    Das erscheint mir aber alles Zufall zu sein. Ich erkenne keine Ursache oder Zusammenhang mit Save 2.
    und auch nicht warum das nur Einheiten mit "Fourage" betrifft.
    Angehängte Grafiken Angehängte Grafiken
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  4. #1084
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Bitte vorerst nichts unternehmen

    Der CtD ist plötzlich weg. Ich muss mir ansehen warum.
    Evtl. habe ich jetzt andere Zufallszahlen, oder etwas an meiner PAE-Installation ist anders ....


    Edit:
    Ich habe den Fehler bei mir gefunden. Beim Versuch, sicherheitshalber jeden Mod sauber neu zu installieren, habe ich mir falsche Versionen eingefangen.


    Der CtD ist immer noch in alle 4 Saves vorhanden.
    Geändert von Rob Anybody (13. August 2024 um 20:40 Uhr)
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  5. #1085
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Der Download der Vollversion von PAE VI erzeugt plötzlich Pythonfehler. Das war bei meinem 1. Download nicht so.
    OH, das ist gar nicht die Vollversion.

    --------

    Manchmal finde ich bei der KI 2 Formationen gleichzeitig:

    Bild

    @Pie
    Sind 2 Formationen bei KI und General gewollt? So weit ich das erkennen kann, gibt es aber keine Probleme damit.
    Als Spieler verliere ich die 2. Formation und kann danach nur noch eine auswählen.
    Angehängte Grafiken Angehängte Grafiken
    Geändert von Rob Anybody (13. August 2024 um 20:38 Uhr)
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  6. #1086
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Ich habe die Fehler von heute gefunden:
    Die letzten Downlaods von PB_Mod_6.17 und PB_Mod_7 enthalten fehlerhafte CvGameUtils-Dateien.
    Man kann den CtD nur mit den richtigen CvGameUtils-Dateien (siehe Anhänge oben #1081) analysieren.

    Der Download-Link zu PieAncientEuropeVI ist falsch. Das ist nicht die Vollversion. Es wird erst die Vollversion, wenn ich den Patch für 6.17 drüber kopiere.

    Bild

    Die Jagd nach dem CtD kann jetzt weiter gehen. Die Posts ab #1081 habe ich entsprechend korigiert.
    Angehängte Grafiken Angehängte Grafiken
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  7. #1087
    Registrierter Benutzer
    Registriert seit
    08.11.19
    Beiträge
    4.245
    Irgendwas passt da nicht.
    Was genau war in der PB_PAE_7 Version falsch ?

    Die neuste hier bekanntgegebene Version von PB_PAE_6.17 ist v26. Da habe ich eigentlich die Änderungen von PB_PAE_7 übernommen.

    v28 wurde inzwischen auch schon hochgeladen und ist bei Bedarf hier zu finden. Hat aber keine wichtigen Python Änderungen zu v26. Ich habe einige Debugpythondateien entfernt.
    Achtung Spoiler:
    cIV-Multiplayer-Storys
    PB 88, PB 89, PB 91, PB 90, PB 92, PB 93, PB 94, PB 95
    RB PB 72, RB PB 74, RB PB 79
    RB PBEM EitB LVII
    ciV-Multiplayer-Storys
    PBEM 292, PBEM 293, PBEM 294, PBEM 295, PBEM 296
    Sonstige
    Anno 1800

    Alle Storylinks hier

  8. #1088
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Pie hat mich vor ein paar Tagen darauf hingewiesen: Meine Änderung an der CvGamesUtils stimmt nicht.
    Das ist wie Fischen mit Dynamit. Ich töte nicht nur die großen Fische (CtD) sondern auch alles was sonst noch im Teich lebt.
    Für den Server ist das zZ egal. Aber bei der Suche nach dem CtD darf man das nicht drin haben.

    Übrigens: Deine CvGamesUtils in v28 kommt mir komisch vor. Habt ihr die umfangreichen Änderungen an 6.17 wieder rückgängig gemacht?
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  9. #1089
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.426
    Zitat Zitat von Rob Anybody Beitrag anzeigen
    Der Download der Vollversion von PAE VI erzeugt plötzlich Pythonfehler. Das war bei meinem 1. Download nicht so.
    OH, das ist gar nicht die Vollversion.

    --------

    Manchmal finde ich bei der KI 2 Formationen gleichzeitig:

    @Pie
    Sind 2 Formationen bei KI und General gewollt? So weit ich das erkennen kann, gibt es aber keine Probleme damit.
    Als Spieler verliere ich die 2. Formation und kann danach nur noch eine auswählen.
    Das ist egal. Ja sogar besser für die KI. Denn die eine Overview-Formation ist ja nur für Generäle damit die nicht als einziger verteidigen und dabei sofort in der ersten Runde draufgehen. Kann so beibehalten werden.

    Zitat Zitat von Rob Anybody Beitrag anzeigen
    Ich habe die Fehler von heute gefunden:
    Die letzten Downlaods von PB_Mod_6.17 und PB_Mod_7 enthalten fehlerhafte CvGameUtils-Dateien.
    Man kann den CtD nur mit den richtigen CvGameUtils-Dateien (siehe Anhänge oben #1081) analysieren.

    Der Download-Link zu PieAncientEuropeVI ist falsch. Das ist nicht die Vollversion. Es wird erst die Vollversion, wenn ich den Patch für 6.17 drüber kopiere.
    hm... ich habe meine letzte PAEVI Version (das ist 6.17) neu gezippt und neu hochgeladen. diesmal ist es eine .zip-Datei. die alte Version war/ist eine .rar-Datei. Den alten Link mit der .rar-Datei hab ich auch noch drauf gelassen (wegen moddb und fanatics). Soeben wieder den Link getestet. Es ist die zip-Datei (weil das ja eine neue Download-ID bekommen hat, als die rar-Datei). Somit sind es 725 mb. Die alte PAE6-Vollversion (rar-Datei) hat nur 690 mb.

    Ich werde es aber neu testen (herunterladen, installieren und schauen, ob alles da ist).

    Zitat Zitat von Rob Anybody Beitrag anzeigen
    Pie hat mich vor ein paar Tagen darauf hingewiesen: Meine Änderung an der CvGamesUtils stimmt nicht.
    Das ist wie Fischen mit Dynamit. Ich töte nicht nur die großen Fische (CtD) sondern auch alles was sonst noch im Teich lebt.
    [...]
    wenn man schon dabei ist, dann gleich alles killen
    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.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  10. #1090
    Registrierter Benutzer
    Registriert seit
    08.11.19
    Beiträge
    4.245
    Zitat Zitat von Rob Anybody Beitrag anzeigen
    Das ist wie Fischen mit Dynamit. Ich töte nicht nur die großen Fische (CtD) sondern auch alles was sonst noch im Teich lebt.
    Für den Server ist das zZ egal. Aber bei der Suche nach dem CtD darf man das nicht drin haben.

    Übrigens: Deine CvGamesUtils in v28 kommt mir komisch vor. Habt ihr die umfangreichen Änderungen an 6.17 wieder rückgängig gemacht?
    Ist da aber nicht immer noch der "aktuelle" Stand ? Also v28 ist ein paar Tage alt. Ich bin mir sicher, alle damals neusten Änderungen eingebaut zu haben und dies beinhaltet tatsächlich noch den "Fehler".

    Und ja, wir haben die Listen wieder in die Alte Variante umgebaut. Sobald "preGameStart" nicht mehr fehlschlägt, sollten auch die Listen wieder korrekt initialisiert.
    Die nicht initialisierten Listen sind nur ein Symptom, nicht das Problem.
    Achtung Spoiler:
    cIV-Multiplayer-Storys
    PB 88, PB 89, PB 91, PB 90, PB 92, PB 93, PB 94, PB 95
    RB PB 72, RB PB 74, RB PB 79
    RB PBEM EitB LVII
    ciV-Multiplayer-Storys
    PBEM 292, PBEM 293, PBEM 294, PBEM 295, PBEM 296
    Sonstige
    Anno 1800

    Alle Storylinks hier

  11. #1091
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.426
    Rob, du hattest Recht! Ich hab zwar die Grafikdateien von 6.17 reingezippt, aber die python und xml Dateien vergessen! Das war noch Stand 6.16 oder gar 6.15 oder so...

    vielen dank! Mir wäre das sonst nicht aufgefallen!

    Edit: jetzt hat die zip-Datei 732 mb!

    Edit2: Habs erneut hochgeladen.
    Ist für uns ja nicht wirklich relevant, weil wir spielen bald PAE VII !
    Geändert von Pie (14. August 2024 um 01:37 Uhr)
    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.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  12. #1092
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Dann war das Chaos gestern ja doch noch zu etwas nützlich. Ich hätte mir normalerweise PAE VI nicht mehr angesehen.


    Zitat Zitat von xist10 Beitrag anzeigen
    Ist da aber nicht immer noch der "aktuelle" Stand ? Also v28 ist ein paar Tage alt. Ich bin mir sicher, alle damals neusten Änderungen eingebaut zu haben und dies beinhaltet tatsächlich noch den "Fehler".
    Ich hatte hier einen neuen Ansatz vorgestellt.
    https://www.civforum.de/showthread.p...=1#post9356658

    Das ist keine Dynamit-Stange mehr, aber immer noch ein dicker Böller der einfach in den See geworfen wird.
    Ich melde mich, wenn der CtD tatsächlich identifiziert ist.
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  13. #1093
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Ich kann den CtD in AI_unitUpdate jetzt auf diese Zeilen reduzieren.
    Save 1+2 schlüpfen wegen Combat4 durch die Maschen, Save 3+4 wegen "Grenzheer"

    Die If-Abfrage mit return True ist nur ein Sicherheitsnetz, das entfernt werden kann, wenn die Lücken geschlossen sind.

    Bild

    Über den genauen Fix muss ich noch nachdenken. Ich will keine neuen Lücken riskieren.
    Angehängte Grafiken Angehängte Grafiken
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  14. #1094
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466
    Bei Save 3 und 4 ist "Grenzheer" erforscht und Praetorianer dürfen nicht mehr upgedatet werden.
    Die fehlerhafte Abfrage in "AI_unitUpdate" schützt nicht vor dem CtD.
    Damit das richtig erkannt wird, muss eine entsprechende Abfrage bei PAE_Unit "doUpgradeVeteran" eingefügt werden.
    (Pie, du bekommst das bestimmt eleganter hin.)

    Code:
    def doUpgradeVeteran(pUnit, iNewUnit, bChangeCombatPromo):
    		if iNewUnit == -1:
    				return
    
    		# RobA: Praetorianer Check (im 2 Jhd. n. Chr. wurden Praetorianer abgeschafft) eingefügt
    		if iNewUnit == gc.getInfoTypeForString("UNIT_PRAETORIAN"):
    				iOwner = pUnit.getOwner()
    				pOwner = gc.getPlayer(iOwner)
    				pTeam = gc.getTeam(pOwner.getTeam())
    				if pTeam.isHasTech(gc.getInfoTypeForString("TECH_GRENZHEER")):
    						return
    
    		if not iNewUnit in range(gc.getNumUnitInfos()):
    		...
    Die fehlerhaften Zeilen bei GameUtils "AI_unitUpdate" können nun komplett entfernt werden.

    Bild

    Der Aufruf von "doUpgradeVeteran" erfolgt in "doUpgradeRang" nach "canUpgradeUnit"

    Dieser Check wird doppelt aufgerufen. In "AI_unitUpdate" ist "canUpgradeUnit" nicht nötig.

    Bild

    Es kann sofort
    Code:
    if PAE_Unit.doUpgradeRang(iOwner, pUnit.getID()):
    										return True
    aufgerufen werden. Ich finde aber keinen Zusammenhang mit den CtD aus Save 1 und Save 2.
    Angehängte Grafiken Angehängte Grafiken
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

  15. #1095
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.466

    Problem bei doKastell gefunden

    Legionen können zum Feind überlaufen. Der Iberer hat zB 4 davon. Wenn ich den Code richtig lese, dann wird ihm für doKastell jede Runde Geld abgezogen, aber er bekommt keine Gegenleistung dafür.

    Bild

    canUpgradeUnit ist für ihn immer -1 und seine Einheiten erhalten kein Training / Update.
    Nächste Runde dasselbe, die Einheit ist immer noch zwischen Rom_1 und Rom_15 und kostet Geld ...

    Wenn Legionen grundsätzlich nur von Rom und Etrusker ausgebildet werden dürfen, dann habe ich mit folgen Zeilen automatisch auch den Bugfix für den CtD aus Save 1
    Code:
    		# Legion Kastell
    		# KI: immer, aber mit Kosten
    		# nie hoeher als Tribun/General
    		if pUnit.isHasPromotion(gc.getInfoTypeForString("PROMOTION_RANG_ROM_1")) and not pUnit.isHasPromotion(gc.getInfoTypeForString("PROMOTION_RANG_ROM_15")) or \
    						pUnit.isHasPromotion(gc.getInfoTypeForString("PROMOTION_RANG_ROM_LATE_1")) and not pUnit.isHasPromotion(gc.getInfoTypeForString("PROMOTION_RANG_ROM_LATE_10")):
    				iCiv = pOwner.getCivilizationType()
    				if iCiv == gc.getInfoTypeForString("CIVILIZATION_ROME") or iCiv == gc.getInfoTypeForString("CIVILIZATION_ETRUSCANS"):
    						# Kostet 25, aber wegen Reserve
    						if pOwner.getGold() > 50:
    								PAE_Unit.doKastell(iOwner, pUnit.getID())
    				else
    						return True
    Falls Legionen auch im Ausland zB Veteranen werden dürfen, dann wird der Bugfix wesentlich aufwendiger.
    Angehängte Grafiken Angehängte Grafiken
    Aber an jenem Morgen war es Magie gewesen. Und es hörte nicht auf, Magie zu sein,
    nur weil man [inzwischen] eine Erklärung dafür hatte ...
    (Terry Pratchett)

Seite 73 von 75 ErsteErste ... 236369707172737475 LetzteLetzte

Berechtigungen

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