+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 20 von 21
  1. #1
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard Builder-Order macht mal wieder Probleme

    Also ich habe 2 Builder-Order vergeben: 5 steht für den Palisadenbau und 10 für 2 andere Gebäude. Mein Problem ist das das Spiel die Sachen ganz am Anfang hochzieht (Das Problem ist hier auch bekannt). Von den Quest´s ist alles richtig eingestellt, ich habe es 4 mal Überprüft.

    Vom Script her müsste alles auch klappen, ich hab mich hier dran gehalten: BuildingOrder

    Da ich vermute das mein Script irgendwie einen Fehler hat hab ich es hier mal aufgeführt:

    Code:
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitPlayers()
            
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_SetStartingMonth()
    
        Logic.SetMonthOffset(3)
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitMerchants()
    
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_FirstMapAction()
    
        -- init players in singleplayer games only
        if Framework.IsNetworkGame() ~= true then
    
            Startup_Player()
            Startup_StartGoods()
            Startup_Diplomacy()
            
        end        
    
        -- create quests
        do
            local MapName = Framework.GetCurrentMapName()
            local ScriptName = "Maps\\ExternalMap\\"..MapName.."\\QuestSystemBehavior.lua"
            Script.Load(ScriptName)
    
            CreateQuests()
        end
        AICore.SetNumericalFact( 2, "BPMX", 1)                         -- Aktivieren der AI BuildOrder Funktion
    end
    
    
    function GameCallback_AIWallBuildingOrder(_PlayerID)             -- Zuweisung der BuildingOrder 5 für den KI Spieler 2, 
    if _PlayerID == 2 then                                            -- Maueraufbau also bei Start der 
    return 5                                                        -- AIBuildingOrder 5        
    end
    end
    Geändert von Annosiedler (12.03.2009 um 20:12 Uhr)

  2. #2
    Bäcker Avatar von Marius94
    Registriert seit
    30.07.2008
    Beiträge
    662

    Standard AW: Builder-Order macht mal wieder Probleme

    Tada:
    Zitat Zitat von Old McDonald Beitrag anzeigen
    1. Zunächst musst Du einen weiteren Eintrag für Spieler ... in GameCallback_AIWallBuildingOrder(_player) einfügen:

    Code:
    function GameCallback_AIWallBuildingOrder(_PlayerID)
        if _PlayerID == 3 then
            return 5
        elseif _PlayerID == 4 then
            return 5 -- oder was anderes...
        end
    end
    Dann muss auch noch in GameCallback_OnGameStart() ein weiterer AICore.SetNumericalFact()-Aufruf rein, damit die Start-Buildingorder auf 0 gesetzt ist:
    Code:
    do
        local GameCallback_OnGameStartOrig = GameCallback_OnGameStart;
        function GameCallback_OnGameStart()
            GameCallback_OnGameStartOrig();
            AICore.SetNumericalFact(3, "BPMX", 0);
            AICore.SetNumericalFact(4, "BPMX", 0);
        end
    end
    Ich glaub, das ist alles
    http://www.mariusscholz.de - Immer einen Besuch wert


  3. #3
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Dann wäre das was in meinem verlinkten Thread steht ja falsch!?

  4. #4
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Funktioniert nicht, ich habe schon alle Methoden durchprobiert, ohne erfolg. Vielleicht liegt es ja an der qsb 3 beta 5 ?

  5. #5
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Frage AW: Builder-Order macht mal wieder Probleme

    Zitat Zitat von Annosiedler Beitrag anzeigen
    Funktioniert nicht
    Aha ...
    ich habe schon alle Methoden durchprobiert, ohne erfolg.
    tja dann ...
    Vielleicht liegt es ja an der qsb 3 beta 5 ?
    möglich ist alles ...!

    Du kannst vielleicht an meinen Anmerkungen erkennen, wieviel ich (man) mit deinem Beitrag anfangen kann.
    ___________________________


    ___________________________

  6. #6
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Mein Problem ist das das Spiel die Sachen ganz am Anfang hochzieht (Das Problem ist hier auch bekannt). Von den Quest´s ist alles richtig eingestellt, ich habe es 4 mal Überprüft.

    Ich vermute das das Problem in meinem Script liegt ich habe mich hier dran gehalten http://www.siedler-games.de/forum/siedler-6-aek-mapperecke/15432-buildingorder.html

    Code:
    function Mission_InitPlayers()
            
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_SetStartingMonth()
    
        Logic.SetMonthOffset(3)
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitMerchants()
    
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_FirstMapAction()
    
        -- init players in singleplayer games only
        if Framework.IsNetworkGame() ~= true then
    
            Startup_Player()
            Startup_StartGoods()
            Startup_Diplomacy()
            
        end        
    
        -- create quests
        do
            local MapName = Framework.GetCurrentMapName()
            local ScriptName = "Maps\\ExternalMap\\"..MapName.."\\QuestSystemBehavior.lua"
            Script.Load(ScriptName)
    
            CreateQuests()
        end
        AICore.SetNumericalFact( 2, "BPMX", 1)                         -- Aktivieren der AI BuildOrder Funktion
    end
    
    function GameCallback_AIWallBuildingOrder(_PlayerID)             -- Zuweisung der BuildingOrder 5 für den KI Spieler 2, 
    if _PlayerID == 2 then                                            -- Maueraufbau also bei Start der 
    return 5                                                        -- AIBuildingOrder 5            
    end
    end
    Geändert von Annosiedler (10.03.2009 um 16:35 Uhr) Grund: Link funktioniert jetzt

  7. #7
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Frage AW: Builder-Order macht mal wieder Probleme

    Hast du schon mal versucht die Zeile
    Code:
    AICore.SetNumericalFact( 2, "BPMX", 1)
    in die Funktion Mission_InitPlayers() zu packen anstatt in die FMA und anstatt der 1 eine 0 einzusetzen?
    ___________________________


    ___________________________

  8. #8
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Zweimal getestet und funktioniert nicht.

    Zur Sicherheit nochmal mein Script falls ich doch einen Fehler gemacht habe:

    Code:
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitPlayers()
    
    AICore.SetNumericalFact( 2, "BPMX", 0)                         -- Aktivieren der AI BuildOrder Funktion
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_SetStartingMonth()
    
        Logic.SetMonthOffset(3)
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitMerchants()
    
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_FirstMapAction()
    
        -- init players in singleplayer games only
        if Framework.IsNetworkGame() ~= true then
    
            Startup_Player()
            Startup_StartGoods()
            Startup_Diplomacy()
            
        end        
    
        -- create quests
        do
            local MapName = Framework.GetCurrentMapName()
            local ScriptName = "Maps\\ExternalMap\\"..MapName.."\\QuestSystemBehavior.lua"
            Script.Load(ScriptName)
    
            CreateQuests()
        end
       
    end
    
    function GameCallback_AIWallBuildingOrder(_PlayerID)             -- Zuweisung der BuildingOrder 5 für den KI Spieler 2, 
    if _PlayerID == 2 then                                            -- Maueraufbau also bei Start der 
    return 5                                                       -- AIBuildingOrder 5            
    end
    end

  9. #9
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Frage AW: Builder-Order macht mal wieder Probleme

    Wie und wo erhöhst du die Werte für die AIBuildingOrder?
    Und nur zur Sicherheit: Im Editor sind aber auch tatsächlich korrekte Werte bei den Gebäuden unter AIBuildingOrder gesetzt?
    ___________________________


    ___________________________

  10. #10
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Also die Funktion wird per Reward_AIBuildOrder definitiv ausgelöst. Und zwar bei Spieler 2 Stufe 5 andere Gebäude sind nicht ausgewählt, nur die Palisade. Die Palisade soll auch bei Stufe 5 hochgezogen werden, aber sie tut es ebend ganz am Anfang. Ich habe schon versuchshalber Stufe 4 und Stufe 6 angegeben, hat aber auch nicht funktioniert.

  11. #11
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Frage AW: Builder-Order macht mal wieder Probleme

    Zitat Zitat von Annosiedler Beitrag anzeigen
    Also die Funktion wird per Reward_AIBuildOrder definitiv ausgelöst. Und zwar bei Spieler 2 Stufe 5 andere Gebäude sind nicht ausgewählt, nur die Palisade. Die Palisade soll auch bei Stufe 5 hochgezogen werden, aber sie tut es ebend ganz am Anfang. Ich habe schon versuchshalber Stufe 4 und Stufe 6 angegeben, hat aber auch nicht funktioniert.
    Also du setzt per Reward_AI_BuildOrder den Wert auf 5 (bzw. 4 oder 6)?
    Probier' mal im Reward 20 und in deinem Script in der GameCallback_AIWallBuildingOrder() 15.

    Wann wird der Reward denn ausgelöst und wodurch?
    ___________________________


    ___________________________

  12. #12
    Wirt
    Registriert seit
    04.10.2007
    Beiträge
    875

    Standard AW: Builder-Order macht mal wieder Probleme

    Nur mal so als Frage: Handelt es sich um ein Dorf, ein Kloster oder einen Hafen?

  13. #13
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Funktioniert nicht!

    Quest 1: Goal_DiscoverPlayer, Reward_SlightyDiplomancyIncrease, Trigger_AlwaysActive

    Quest 2: Goal_Deliver (30 Holz), Reward_AiBuildOrder (Stufe 5), Reward_Merchant, Reward_SlightyDiplomancyIncrease, Trigger_OnQuestSucess (Quest 1)

    Ich habe testweise bei Reward_AiBuildOrder Stufe 4 und danach stufe 6 eingegeben, aber hat nichs genützt.

    Edit zu OldMcDonald: es handelt sich um ein Dorf
    Geändert von Annosiedler (10.03.2009 um 17:30 Uhr) Grund: Antwort 2 hinzugefügt

  14. #14
    Wirt
    Registriert seit
    04.10.2007
    Beiträge
    875

    Standard AW: Builder-Order macht mal wieder Probleme

    Dann steht die Lösung schon im 2. Beitrag - der untere Codeblock ist es.

    Das Problem ist, dass Dörfer erst nach dem Ausführen von Mission_FirstMapAction() eine KI erhalten.

  15. #15
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Wo muss dieser Codeblock den eingefügt werden, das wurde dort nicht genau beschrieben?

  16. #16
    Wirt
    Registriert seit
    04.10.2007
    Beiträge
    875

    Standard AW: Builder-Order macht mal wieder Probleme

    Ans Ende des globalen Skriptes.

  17. #17
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Es funktioniert immer noch nicht.

    Code:
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitPlayers()
    
    AICore.SetNumericalFact( 2, "BPMX", 0)                         -- Aktivieren der AI BuildOrder Funktion
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_SetStartingMonth()
    
        Logic.SetMonthOffset(3)
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitMerchants()
    
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_FirstMapAction()
    
        -- init players in singleplayer games only
        if Framework.IsNetworkGame() ~= true then
    
            Startup_Player()
            Startup_StartGoods()
            Startup_Diplomacy()
            
        end        
    
        -- create quests
        do
            local MapName = Framework.GetCurrentMapName()
            local ScriptName = "Maps\\ExternalMap\\"..MapName.."\\QuestSystemBehavior.lua"
            Script.Load(ScriptName)
    
            CreateQuests()
        end
       do
        local GameCallback_OnGameStartOrig = GameCallback_OnGameStart;
        function GameCallback_OnGameStart()
            GameCallback_OnGameStartOrig();
            AICore.SetNumericalFact(3, "BPMX", 0);
            AICore.SetNumericalFact(4, "BPMX", 0);
        end
    end
    
    end
    
    function GameCallback_AIWallBuildingOrder(_PlayerID)
        if _PlayerID == 2 then
            return 5
        elseif _PlayerID == 2 then
            return 5 -- oder was anderes...
        end
    end

  18. #18
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Standard AW: Builder-Order macht mal wieder Probleme

    Zitat Zitat von Annosiedler Beitrag anzeigen
    Es funktioniert immer noch nicht.
    Auf den ersten Blick:
    Zitat Zitat von Old McDonald Beitrag anzeigen
    Ans Ende des globalen Skriptes.
    Und guck' mal, wo du es hingepackt hast.

    Auf den zweiten Blick:
    Du solltest auch auf die richtigen PlayerIDs achten. Und setze deine BuildOrder immer 2 höher als für die WallbuildOrder notwendig, dadurch wird ein Bug umgangen.
    ___________________________


    ___________________________

  19. #19
    Brückenarchitekt Avatar von Annosiedler
    Registriert seit
    02.01.2009
    Ort
    Niedersachsen
    Beiträge
    2,868

    Standard AW: Builder-Order macht mal wieder Probleme

    Ich check das alles nicht! Was ist denn nun schonwieder das globale Script? Mit den Player-IDs, ich hab doch da überall Player 2 angegeben!?

  20. #20
    Schafszüchter Avatar von Netsurfer
    Registriert seit
    01.09.2005
    Ort
    Köln/ Cologne
    Beiträge
    1,121
    Blog Einträge
    10

    Blinzeln AW: Builder-Order macht mal wieder Probleme

    Zitat Zitat von Annosiedler Beitrag anzeigen
    Ich check das alles nicht! Was ist denn nun schonwieder das globale Script? Mit den Player-IDs, ich hab doch da überall Player 2 angegeben!?
    Selber mal etwas nachlesen und/ oder ausprobieren gehört aber auch nicht unbedingt zu deinen Stärken scheint mir ...!

    Es gibt in S6 zwei Scriptumgebungen: Global und Lokal!
    Deshalb ja auch zwei Mapscripte (siehe Editor).

    Hier mal dein globales Script:
    Code:
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitPlayers()
      AICore.SetNumericalFact( 2, "BPMX", 0)                         -- Aktivieren der AI BuildOrder Funktion
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_SetStartingMonth()
    
        Logic.SetMonthOffset(3)
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_InitMerchants()
    
    
    end
    ----------------------------------------------------------------------------------------------------------------------
    function Mission_FirstMapAction()
    
        -- init players in singleplayer games only
        if Framework.IsNetworkGame() ~= true then
    
            Startup_Player()
            Startup_StartGoods()
            Startup_Diplomacy()
            
        end        
    
        -- create quests
        do
            local MapName = Framework.GetCurrentMapName()
            local ScriptName = "Maps\\ExternalMap\\"..MapName.."\\QuestSystemBehavior.lua"
            Script.Load(ScriptName)
    
            CreateQuests()
        end
    end
    
    function GameCallback_AIWallBuildingOrder(_PlayerID)
        if _PlayerID == 2 then
            return 3
        elseif _PlayerID == 3 then
            return 5 -- oder was anderes...
        end
    end
    
    local GameCallback_OnGameStartOrig = GameCallback_OnGameStart;
    function GameCallback_OnGameStart()
        GameCallback_OnGameStartOrig();
        AICore.SetNumericalFact(2, "BPMX", 0);
    end
    Wenn du jetzt in deinem Quest die BuildOrder auf 5 setzt, sollte es eiegntlich funktionieren.
    ___________________________


    ___________________________

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. JKF013-Tom Builder
    Von Norden im Forum Siedler 6 AeK Singleplayer
    Antworten: 37
    Letzter Beitrag: 02.11.2008, 22:46
  2. AI Build Order - H I L F E
    Von andra2007 im Forum Siedler 6 AeK Mapperecke
    Antworten: 9
    Letzter Beitrag: 25.09.2008, 11:27
  3. Der kicker macht wieder eine Große Umfrage zur Formel 1
    Von SpiderFive im Forum Flutlicht Siedlersportforum
    Antworten: 2
    Letzter Beitrag: 28.12.2007, 22:23
  4. Antworten: 0
    Letzter Beitrag: 22.10.2007, 21:10

Stichworte

Berechtigungen

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