Seite 10 von 14 ErsteErste ... 67891011121314 LetzteLetzte
Ergebnis 136 bis 150 von 196

Thema: Brainstorming zum PAE Handelfeature

  1. #136
    Civ-Rentner Avatar von HeymlicH
    Registriert seit
    15.05.01
    Beiträge
    18.731
    Zitat Zitat von Rob Anybody Beitrag anzeigen
    Das Befehle behalten, Bewegungspunkte über haben, aber nicht selbstständig losfahren, ist genau meine Beobachtung bei Feindberührung.
    In der nächsten Runde, wenn der Feind, bzw. die "falsch erkannte" Ursache weg sind, fahren wieder wie sie sollen.
    Ich hab mit allen Frieden und bin auf 'ner Insel, wo alle Felder in meiner Kultur liegen. Da sind keine Feinde. Niemand. Null. Kein einziger.

  2. #137
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.179
    Zitat Zitat von HeymlicH Beitrag anzeigen
    Ich hab mit allen Frieden und bin auf 'ner Insel, wo alle Felder in meiner Kultur liegen. Da sind keine Feinde. Niemand. Null. Kein einziger.
    Und genau deshalb sage ich "falsch erkannte" Ursache. In meiner PB-Version ohne diesen Bugfix fahren die Karren bei Frieden, Insel, alle Felder in eigener Kultur, die Routen ungehindert ab. In meiner Version gibt es nur Probleme wenn vermutlich kriegerische Spione im Weg sind.
    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)

    Brandstifter benötigen keine Streichhölzer, sie zündeln mit Worten.
    Wer Brandstifter im Internet duldet und nicht wieder und wieder widerspricht,
    darf sich nicht wundern, wenn auch bald sein wahres Leben brennt.
    (frei nach Max Frisch)

  3. #138
    Civ-Rentner Avatar von HeymlicH
    Registriert seit
    15.05.01
    Beiträge
    18.731
    Zitat Zitat von Flunky Beitrag anzeigen
    Das klingt dann nach der Befehlsqueue. In Assets/Python/PAE/PAE_Trade.py::doAutomateMerchant() ist ne Zeile auskommentiert, die die Queue leermachen würde, bevor neue Befehle eingereiht werden. Ich weiß grad nicht, wegen welcher Nebeneffekte Pie die Zeile auskommentiert hat, aber das könnt ihr mal probieren. Einfach mal gucken oder den Code posten, ich versuch nachher mal reinzugucken, bin aber noch auf Arbeit und zu Hause ist full house.
    Ich hab die Zeile einfach mal wieder rein genommen, aber es hat sich dadurch nichts geändert.

  4. #139
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.398
    Zitat Zitat von breadsmith Beitrag anzeigen
    Singleplayerspiel.
    wenn du Ende drückst, fährt in Amphipolis der eine Karren automatisch los. Nach Therma -> 4 Fedler.
    Der andere Karren, der grad in Amphipolis ankommt aus Pella (5 Felder), wird die Runde drauf nicht losfahren.
    R457: Save geladen
    Achtung Spoiler:
    Handelskarren A: Amphi
    {"x": 55, "y": 45, "b": 16, "originCiv": 0, "autA": 1, "autLTC": 456}
    Konstantes Zeug: "autX1": 51, "autY1": 44, "autB1": 8, "autX2": 55, "autY2": 45, "autB2": 16
    Handelskarren B: Amphi-1
    {"x": 55, "y": 45, "b": 7, "originCiv": 0, "autA": 1, "autLTC": 456}
    Konstantes Zeug: "autX1": 55, "autY1": 45, "autB1": 16, "autX2": 50, "autY2": 47, "autB2": 7



    R458: beide fahren und B verkauft/kauft ein, hat folglich keine BP mehr.
    Achtung Spoiler:

    Handelskarren A: Amphi-44
    {"x": 55, "y": 45, "b": 16, "originCiv": 0, "autA": 1, "autLTC": 458}
    Handelskarren B: Amphi
    {"x": 55, "y": 45, "b": 16, "originCiv": 0, "autA": 1, "autLTC": 458}
    Modus verschanzt/schläft



    R459: A fährt, B nicht trotz voller BP.
    Achtung Spoiler:

    Handelskarren A: Amphi-44
    {"x": 55, "y": 45, "b": 16, "originCiv": 0, "autA": 1, "autLTC": 458}
    Handelskarren B: Amphi
    {"x": 55, "y": 45, "b": 7, "originCiv": 0, "autA": 1, "autLTC": 458}
    Schläft nicht mehr


    Fehler: In R459 wird doAutomateMerchant nicht aufgerufen. Also bei beiden nicht, der eine hat halt schon seine Befehle. Das liegt daran, dass doAutomateMerchant nur in onUnitMove aufgerufen wird, wenn
    PHP-Code:
                if bTradeRouteActive and pPlot.isCity():
                    if 
    gc.getPlayer(pUnit.getOwner()).isHuman() and pUnit.canMove(): 
    Naja, für den der unterwegs ist, gilt isCity nicht und für den anderen wird onUnitMove nicht aufgerufen, er bewegt sich ja nicht.

    Lösungsvorschlag: gleich, nachdem der Bonus gekauft wurde und die restlichen Bewegungspunkte gestrichen sind, den Move-Befehl geben. Damit funktioniert es bei mir.

    PHP-Code:
                elif eBonusBuy in lCitySaleableGoods:
                    
    #if iPlayer == iHumanPlayer: CyInterface().addMessage(iHumanPlayer, True, 10, "Mission eBonusBuy in lCitySaleable ", None, 2, None, ColorTypes(7), 0, 0, False, False)
                    
    if eStoredBonus != eBonusBuy:
                        
    # if not already acquired / Wenn Bonus nicht bereits gekauft wurde
                        #if not pUnit.hasMoved():
                        
    doBuyBonus(pUniteBonusBuypCurrentCity.getOwner())
                        
    #CyInterface().addMessage(iHumanPlayer, True, 10, "Mission eStoredBonus != eBonusBuy SKIP", None, 2, None, ColorTypes(7), 0, 0, False, False)
                        #pUnit.getGroup().pushMission(MissionTypes.MISSION_SKIP, 0, 0, 0, True, False, MissionAITypes.NO_MISSIONAI, pUnit.plot(), pUnit)
                        
    pUnit.finishMoves()
                        
    eStoredBonus CvUtil.getScriptData(pUnit, ["b"], -1)
                        if 
    eStoredBonus == eBonus1:
                            
    pUnit.getGroup().pushMission(MissionTypes.MISSION_MOVE_TOiX2iY21FalseFalseMissionAITypes.NO_MISSIONAIpUnit.plot(), pUnit)
                        
    elif eStoredBonus == eBonus2:
                            
    pUnit.getGroup().pushMission(MissionTypes.MISSION_MOVE_TOiX1iY11FalseFalseMissionAITypes.NO_MISSIONAIpUnit.plot(), pUnit)
                        return 
    True 
    Legende:
    x/y: aktuelles Ziel. b: geladener Bonus aus originCiv.
    autA: Route aktiv
    autX/Y/B 1/2: Start- und Zielpunkt mit jeweiligem Bonus
    autLTC: Marker, ob der Karren diese Runde schon automatisierte Befehle bekommen hat

  5. #140
    Registrierter Benutzer
    Registriert seit
    28.09.12
    Beiträge
    10.269
    jawoll!!!

    AnalyseFlunky

  6. #141

  7. #142
    Wee Free Man Avatar von Rob Anybody
    Registriert seit
    20.05.06
    Ort
    Ruhrstadt
    Beiträge
    18.179
    In der mir vorliegenden Fassung ist pUnit.finishMoves() bereits enthalten. Ich brauche das nicht einfügen.
    Oder muss das woanders hin?

    PHP-Code:
                elif eBonusBuy in lCitySaleableGoods:
                    
    #if iPlayer == iHumanPlayer: CyInterface().addMessage(iHumanPlayer, True, 10, "Mission eBonusBuy in lCitySaleable ", None, 2, None, ColorTypes(7), 0, 0, False, False)
                    
    if eStoredBonus != eBonusBuy:
                        
    # if not already acquired / Wenn Bonus nicht bereits gekauft wurde
                        #if not pUnit.hasMoved():
                        
    doBuyBonus(pUniteBonusBuypCurrentCity.getOwner())
                        
    #CyInterface().addMessage(iHumanPlayer, True, 10, "Mission eStoredBonus != eBonusBuy SKIP", None, 2, None, ColorTypes(7), 0, 0, False, False)
                        #pUnit.getGroup().pushMission(MissionTypes.MISSION_SKIP, 0, 0, 0, True, False, MissionAITypes.NO_MISSIONAI, pUnit.plot(), pUnit)
                        
    pUnit.finishMoves()
                        return 
    True
                    
    #CyInterface().addMessage(iHumanPlayer, True, 10, "Mission eBonusBuy MOVE to new city ", None, 2, None, ColorTypes(7), 0, 0, False, False)
                    #pUnit.getGroup().pushMoveToMission(pNewCity.getX(), pNewCity.getY())
                    
    pUnit.getGroup().pushMission(MissionTypes.MISSION_MOVE_TOpNewCity.getX(), pNewCity.getY(), 1FalseFalseMissionAITypes.NO_MISSIONAIpUnit.plot(), pUnit)
                    return 
    True 
    Geändert von Rob Anybody (08. Dezember 2018 um 01:21 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)

    Brandstifter benötigen keine Streichhölzer, sie zündeln mit Worten.
    Wer Brandstifter im Internet duldet und nicht wieder und wieder widerspricht,
    darf sich nicht wundern, wenn auch bald sein wahres Leben brennt.
    (frei nach Max Frisch)

  8. #143
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.398
    finishMoves ist immer enthalten, es geht um die folgenden 5 Zeilen, die neu sind:

    PHP-Code:
                        eStoredBonus CvUtil.getScriptData(pUnit, ["b"], -1)
                        if 
    eStoredBonus == eBonus1:
                            
    pUnit.getGroup().pushMission(MissionTypes.MISSION_MOVE_TOiX2iY21FalseFalseMissionAITypes.NO_MISSIONAIpUnit.plot(), pUnit)
                        
    elif eStoredBonus == eBonus2:
                            
    pUnit.getGroup().pushMission(MissionTypes.MISSION_MOVE_TOiX1iY11FalseFalseMissionAITypes.NO_MISSIONAIpUnit.plot(), pUnit

  9. #144
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.342
    In meiner aktuellen Version siehts auch so ähnlich aus. Da gehört eindeutig das pushMission noch vor dem return.
    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. #145
    Civ-Rentner Avatar von HeymlicH
    Registriert seit
    15.05.01
    Beiträge
    18.731
    Können Handelsstraßen eigentlich auch auf dem Stadtfeld entstehen?

    (davon hängt ab, ob in meinem nächsten Spiel die Städte 3 oder 4 Felder weit auseinander stehen )

  11. #146
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.342
    Ja, es beginnt sogar auf dem Stadtfeld.
    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. #147
    Civ-Rentner Avatar von HeymlicH
    Registriert seit
    15.05.01
    Beiträge
    18.731
    Gut. Bei mir entstehen nämlich irgendwie nie welche. Liegt glaub ich an der Verfügbarkeit der Ressourcen, ich hab beim Einarbeiten von Flunkys Codeänderung gesehen, daß das einen Einfluß hat.

    Ist das eigentlich beabsichtigt? Ich handel zwischen zwei eigenen Städten Amber und Obsidian mit 8 Handelskarren, und es ist noch nie eine Handelsstraße entstanden. Braucht man dafür noch eine spezielle Tech, die ich übersehen habe, oder wird die Chance einfach 0, wenn beide Städte die Ressi haben?

  13. #148
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.398
    Beim Inlandshandel wird keine Handelsstraße erstellt, keine Forschung verschenkt und die Ressource gibt's auch nicht für 3 Runden nochmal extra.

    PHP-Code:
            if iOriginCiv != iBuyer:
                
    iGewinnWissen int(iPrice pSeller.getCurrentEra())
                
    _doResearchPush(iBuyeriGewinnWissen)
                
    _doCityProvideBonus(pCityeBonus3)

                
    # Trade route / Handelsstrasse
                
    doBuildTradeRoad(pUnitpCity
    Quark der hier vorher stand:
    Achtung Spoiler:
    Jo wird 0.
    PHP-Code:
        if pBuyer.hasBonus(eBonus): iChance 10 
        
    else: iChance 20    
        
    # wenn die Stadt den Bonus bereits hat
        
    if CvUtil.hasBonusIgnoreFreeBonuses(pCityeBonus): iChance -= 10

        
    if eBonus in L.LBonusLuxuryiChance += 10
        elif eBonus in L
    .LBonusRarityiChance += 20 
    Der Käufer hat die Ressi schon, daher 10 statt 20% und die Stadt im speziellen hat eh Zugriff übers normale Handelsnetz drauf, also nochmal -10%.

    Allerdings: ist das Zeug nicht Luxury? Dann müssten wir wieder bei 10% sein.

  14. #149
    Civ-Rentner Avatar von HeymlicH
    Registriert seit
    15.05.01
    Beiträge
    18.731
    Kam mir genau aus dem Grund auch komisch vor, daher die Frage, ob noch irgendeine Tech nötig ist. Ich hab jetzt aus der ersten 10 mal 'ne 30 gemacht. Mal sehen, ob sich dadurch was ändert, ansonsten besteht da noch ein anderes Problem.


    Edith: Ach, Inlandshandel. Finde das etwas schade, ist das gewollt? Und geht aus der Pedia nicht hervor.

  15. #150
    Banned
    Registriert seit
    02.10.18
    Beiträge
    3.000
    Sonst könnte man mehr oder minder gewollt Handelsstraßen zwischen seinen Städten "bauen" und damit "Gratisstraßenbau" betreiben.

Seite 10 von 14 ErsteErste ... 67891011121314 LetzteLetzte

Berechtigungen

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