Announcement

Collapse
No announcement yet.

My AI analys

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • My AI analys

    The AI.

    I have messed around with the Strategie files mainly to get the AI more aggresive.

    I found the big problem. The AI needs to be bigger than you to attack. Also the AI needs alot of units to spare. The AI needs higher priority on attack.

    I have done the following changes.
    1. First the priority of Attack has been lifted in the strategies file.
    2. The amount of support was raised

    3. The build offence and build defence has been raised defence to same priority as growth (the highest before)
    and offence to the one step below. for example 10000 and 9000.

    4. The support cost for all middle game units have been lowered. Specilly all defence units halfed the support cost atleast.

    5. Added higher bonus to production in diffdb

    6. At the Goal attack and Goal siege i added target coldenemy so it will look for opertunites everywere.

    7. Lowered distans modifier to 10-25

    8. Lowered the force compare numbers some. Not sure if this part is good, some really stupid attacks. (But again thats like how CIV 2 was.


    Preliminary Result: Alot more units for the AI and the defence part will quickly be reach and then the AI will build alot of offensive units and they will use them. Looks very promising. My weak cities is attacked.

    Conclusion. The AI needs more units, And needs higher priority to attack. The first is the most important part.

    If anybody else could try this and see the effect it might solve the problem of AIs not attacking.

    /Mathias



  • #2
    Looks good - I printed out your post on this and I will refer to this when I get the courage to make the alterations you suggested.
    A lot of Republicans are not racist, but a lot of racists are Republican.

    Comment


    • #3
      Hi Mathias,

      quote:

      Originally posted by Matte979 on 12-19-2000 11:57 AM
      I have messed around with the Strategie files mainly to get the AI more aggresive.
      /Mathias



      Thank you for your research. I've had big problems with the standard AI behavior too.

      First Question: Is it possible, to publish your strategies.txt in this forum?

      Second Question: Modify the changed txt-files old games too, or must I start a new one?

      Thanx, Andre

      Comment


      • #4
        I seem to get affect in save games so you can try to change and then test and then save, change and test and save. Thats how I found some of the problems.

        The strategies file is to big to post here. I can post the first default strategy as mine is configured and you will get the idea what i have changed.

        Made some other changes aswell. For example don't like the new diffrent specialists so have removed all but entertainers and scientists.

        ----
        STRATEGY_DEFAULT {

        //
        // POPULATION ASSIGNMENTS
        //

        PopAssignmentElement {
        // percent of workers after minimums have been achieved that
        // should be used as specialists
        Specialists 0.1

        // Percent of allocation to different specialist types (total = 1.0)
        FarmerPercent 0.0
        LaborerPercent 0.0
        MerchantPercent 0.0
        EntertainerPercent 0.3
        ScientistPercent 0.7

        Top 0.2 ProductionCities
        }

        PopAssignmentElement {
        // percent of workers after minimums have been achieved that
        // should be used as specialists
        Specialists 0.1

        // Percent of allocation to different specialist types (total = 1.0)
        FarmerPercent 0.0
        LaborerPercent 0.0
        MerchantPercent 0.0
        EntertainerPercent 0.3
        ScientistPercent 0.7

        Bottom 0.2 GrowthCities
        }

        PopAssignmentElement {
        // percent of workers after minimums have been achieved that
        // should be used as specialists
        Specialists 0.1

        // Percent of allocation to different specialist types (total = 1.0)
        FarmerPercent 0.0
        LaborerPercent 0.0
        MerchantPercent 0.0
        EntertainerPercent 0.3
        ScientistPercent 0.7

        Default
        }

        //
        // GOVERNMENT SETTING
        //

        Government GOVERNMENT_TECHNOCRACY
        Government GOVERNMENT_VIRTUAL_DEMOCRACY
        Government GOVERNMENT_CORPORATE_REPUBLIC
        Government GOVERNMENT_DEMOCRACY
        Government GOVERNMENT_REPUBLIC
        Government GOVERNMENT_MONARCHY
        Government GOVERNMENT_TYRANNY

        // other governments
        // Government GOVERNMENT_ECOTOPIA
        // Government GOVERNMENT_VIRTUAL_DEMOCRACY
        // Government GOVERNMENT_FASCISM
        // Government GOVERNMENT_COMMUNISM
        // Government GOVERNMENT_THEOCRACY

        //
        // WORKDAY, GOLD, FOOD SLIDER SETTINGS (WGF)
        //

        // set how unhappy our most unhappy city be
        MinimumHappiness 73

        // set maximum deficit spending percent (ie. spend no more than
        // 10% of our savings each turn)
        DeficitSpending 0.1

        // set maximum percent of gold that should ever be spent on wages to not choke science
        MaximumWagePercent 0.25

        // try to decrease food
        SliderElement { Delta 2 Food }
        SliderElement { Delta 1 Production }
        SliderElement { Delta 1 Gold }

        //
        // SCIENCE SETTINGS
        //

        // percent of gold to put into science
        SciencePercent 60

        //
        // MILITARY READINESS SETTING
        //

        // maximum percent of production used for military readiness
        MaxSupportCostPercent 50

        // Peace = 0, Alert = 1, War = 2
        ReadinessLevel 2

        //
        // TERRAIN IMPROVEMENTS
        //

        // percent of production to put into public works/materials
        PublicWorksPercent 30

        // amount of public works (materials) to keep in reserve
        PublicWorksReserve 100

        // only consider building best n tile improvements
        MaxEvalTileImprovements 200

        // rounds to wait before fixing roads
        TimeToFixRoads 10

        // rounds to wait before fixing polluted tiles
        TimeToFixPollution 20

        // stored PW must exceed cost to fix + threshold
        FixPollutionThreshold 2000

        // bonus for building road tile improvements
        RoadUtilityBonus 200

        // bonus for building production tile improvements
        ImproveProductionBonus 150

        // bonus for building growth tile improvements
        ImproveGrowthBonus 100

        // bonus to apply to cells with goods
        ImproveGoodBonus 75

        // bonus for growth improvements in smallest 20% of our cities
        ImproveSmallCityGrowthBonus 100

        // bonus for production improvements in most productive 20% of our cities
        ImproveLargeCityProductionBonus 150

        // ordered list of terrain improvements that increase growth
        ImproveGrowthList IMPROVEMENT_LIST_GROWTH

        // ordered list of terrain improvements that increase production
        ImproveProductionList IMPROVEMENT_LIST_PRODUCTION

        // ordered list of terrain improvements to be randomly spread around
        ImproveRandomList IMPROVEMENT_LIST_MISC

        //
        // GOALS
        //

        GoalElement { Goal GOAL_DEFEND Priority 500000 MaxEval 2 MaxExec 1 PerCity }
        GoalElement { Goal GOAL_SEIGE Priority 510000 MaxEval 50 MaxExec 40 }
        GoalElement { Goal GOAL_ATTACK Priority 510000 MaxEval 80 MaxExec 50 }
        GoalElement { Goal GOAL_HARASS Priority 455000 MaxEval 50 MaxExec 35 }
        GoalElement { Goal GOAL_SETTLE_LAND Priority 900000 MaxEval 25 MaxExec 5 }
        GoalElement { Goal GOAL_SETTLE_SEA Priority 900000 MaxEval 25 MaxExec 5 }
        GoalElement { Goal GOAL_EXPLORE Priority 7000 MaxEval 15 MaxExec 2 }
        GoalElement { Goal GOAL_ENSLAVE_SETTLER Priority 420000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_SLAVE_RAID Priority 400000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_CHOKEPOINT Priority -1000 MaxEval 5 MaxExec 1 }
        GoalElement { Goal GOAL_PATROL Priority 5000 MaxEval 0 MaxExec 3 }
        GoalElement { Goal GOAL_CONVERT_CITY Priority 400000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_BIOTERROR_CITY Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_NANOATTACK_CITY Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_HARASS_CITY Priority 30500 MaxEval 3 MaxExec 1 }
        GoalElement { Goal GOAL_BOMBARD Priority 510000 MaxEval 60 MaxExec 30 }
        GoalElement { Goal GOAL_EXPEL Priority 9000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_PILLAGE Priority 393000 MaxEval 10 MaxExec 5 }
        GoalElement { Goal GOAL_PIRATE Priority 393000 MaxEval 10 MaxExec 5 }
        GoalElement { Goal GOAL_COUNTER_STEALTH Priority 390000 MaxEval 0 MaxExec 0.1 PerCity }
        GoalElement { Goal GOAL_GOODY_HUT Priority 7800 MaxEval 10 MaxExec 3 }
        GoalElement { Goal GOAL_PLANT_NUKE Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_CREATE_PARK Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_SOOTHSAY Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_ESTABLISH_EMBASSY Priority 900000 MaxEval 10 MaxExec 3 }
        GoalElement { Goal GOAL_FRANCHISING Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_STEAL_TECHNOLOGY Priority 440000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_INVESTIGATE_CITY Priority 430000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_INCITE_REVOLUTION Priority 460000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_INJOIN Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_ASSASSINATE Priority 450000 MaxEval 5 MaxExec 3 }
        GoalElement { Goal GOAL_UNDERGROUND_RAILWAY Priority 450000 MaxEval 5 MaxExec 2 }
        GoalElement { Goal GOAL_NUKE_CITY Priority 450000 MaxEval 0 MaxExec 0 }
        GoalElement { Goal GOAL_WANDER Priority 1 MaxEval 0 MaxExec 1 }
        GoalElement { Goal GOAL_SALLY Priority 0 MaxEval 0 MaxExec 1 }
        GoalElement { Goal GOAL_REFORM Priority 450000 MaxEval 1 MaxExec 0.5 PerCity}
        GoalElement { Goal GOAL_SUE_FRANCHISE Priority 450000 MaxEval 1 MaxExec 0.5 PerCity}
        GoalElement { Goal GOAL_RETREAT Priority -300000 MaxEval 1 MaxExec 1 PerCity}
        GoalElement { Goal GOAL_DESTROY_ENDGAME Priority 450000 MaxEval 20 MaxExec 5 }
        GoalElement { Goal GOAL_PROTECT_ENDGAME Priority 460000 MaxEval 30 MaxExec 15 }

        // multiplied by #rounds to target
        DistanceModifierFactor -10

        // number of armies to try and disband units from per round
        DisbandArmyCount 3

        // minimum distance between settled cities
        // (eg. new cities must be founded atleast 2 cells from nearest cities collection border)
        MinSettleDistance 4

        // cells with settle scores below this threshold will not be used
        MinSettleScore 600

        //
        // BUILD LISTS
        //

        // Scaled bonus (#turns) to reduce the estimated time to rush buy in most threatened city
        // used when deciding what city to rush buy in
        RushBuyThreatBonus 10

        // Percent of gold expenses last turn to keep in reserve when rush buying
        RushBuyReservePercent 2.0

        // Percent of civilization support dedicated to units
        UnitSupportPercent 0.50

        // Unit Percents must total to 1 (100%)
        OffensiveUnitsPercent 0.20
        DefensiveUnitsPercent 0.30
        RangedUnitsPercent 0.20
        SeaUnitsPercent 0.15
        AirUnitsPercent 0.15

        // Number of special units that should be built
        SettlerUnitsCount 2
        SeaTransportUnitsCount 6
        AirTransportUnitsCount 2
        SpecialUnitsCount 6

        // Do not certain items in cities where if it takes too many turns
        MaxSettlerBuildTurns 30
        MaxUnitBuildTurns 20
        MaxWonderBuildTurns 40

        // maximum percent of conventional units to build before building
        // special units of specified type
        BuildTransportProductionLevel 0.25
        BuildSettlerProductionLevel 0.25

        // Types of standard units that should be built
        OffensiveUnitList UNIT_BUILD_LIST_OFFENSE
        DefensiveUnitList UNIT_BUILD_LIST_DEFENSE
        RangedUnitList UNIT_BUILD_LIST_RANGED
        SeaUnitList UNIT_BUILD_LIST_SEA
        AirUnitList UNIT_BUILD_LIST_AIR

        // Types of special units that should be built
        SettlerUnitList UNIT_BUILD_LIST_LAND_SETTLER
        SeaTransportUnitList UNIT_BUILD_LIST_SEA_TRANSPORT
        AirTransportUnitList UNIT_BUILD_LIST_AIR_TRANSPORT
        SpecialUnitList UNIT_BUILD_LIST_SPECIAL
        FreightUnitList UNIT_BUILD_LIST_FREIGHT

        // minimum number of units to keep in cities as a garrison
        OffensiveGarrisonCount 1
        DefensiveGarrisonCount 1
        RangedGarrisonCount 1

        // For each city with an empty build queue, build from
        // first sequence that applies

        BuildListSequenceElement {
        Priority 10000
        BuildListSequence BUILD_LIST_SEQUENCE_GROWTH
        Bottom 0.2
        GrowthCities
        Advice BUILD_GROWTH_ADVICE
        }

        BuildListSequenceElement {
        Priority 9000
        BuildListSequence BUILD_LIST_SEQUENCE_PRODUCTION
        Bottom 0.2
        ProductionCities
        Advice BUILD_PRODUCTION_ADVICE
        }

        BuildListSequenceElement {
        Priority 6000
        BuildListSequence BUILD_LIST_SEQUENCE_GOLD
        Bottom 0.2
        CommerceCities
        Advice BUILD_GOLD_ADVICE
        }

        BuildListSequenceElement {
        Priority 8000
        BuildListSequence BUILD_LIST_SEQUENCE_OFFENSE
        Top 0.2
        ThreatenedCities
        Advice BUILD_OFFENSE_ADVICE
        }

        BuildListSequenceElement {
        Priority 8000
        BuildListSequence BUILD_LIST_SEQUENCE_SCIENCE
        Top 0.1
        ProductionCities
        Advice BUILD_SCIENCE_ADVICE
        }

        BuildListSequenceElement {
        Priority 4000
        BuildListSequence BUILD_LIST_SEQUENCE_WONDERS
        Top 0.1
        ProductionCities
        Advice BUILD_WONDERS_ADVICE
        }

        BuildListSequenceElement {
        Priority 9000
        BuildListSequence BUILD_LIST_SEQUENCE_DEFENSE
        Bottom 0.2
        PowerCities
        Advice BUILD_DEFENSE_ADVICE
        }

        BuildListSequenceElement {
        Priority 6000
        BuildListSequence BUILD_LIST_SEQUENCE_HAPPINESS
        Bottom 0.2
        HappyCities
        Advice BUILD_HAPPINESS_ADVICE
        }

        BuildListSequenceElement {
        Priority 2000
        BuildListSequence BUILD_LIST_SEQUENCE_DEFAULT
        Default
        Advice BUILD_DEFAULT_ADVICE
        }

        //
        // ADVANCE LIST
        //

        Research ADVANCE_LIST_DEFAULT
        StopResearch ADVANCE_LIST_STOP_RESEARCH

        //
        // DIPLOMACY
        //

        // priority for fear motivations
        FearInvasion 1000
        FearCityDefense 1100
        FearPiracy 900
        FearScienceRank 800
        FearMilitaryRank 800
        FearTradeRank 800
        FearPollution 900

        // priority for desire motivations
        DesireAttack 800
        DesireGold 900
        DesireScience 900
        DesireMakeFriend 1500
        DesireEnlistFriend 1500
        //
        // TRADE
        //

        // only accumulate count of piracy if it occurs within
        // memory of last piracy
        PiracyMemoryTurns 3

        // number of piracy events to accumulate before we kill the route
        MaxPiracyEvents 3

        //
        // FORCE MATCHING
        //

        // AttackMatch - ratio of army's attack strength to target's defense strength
        // DefenseMatch - ratio of army's defense strength to target's attack strength
        // RangedMatch - ratio of army's ranged strength to target's ranged strength
        // BombardMatch - ratio of army's bombard strength to target's bombard strength
        // ValueMatch - ratio of army's value to target's value

        Offensive {
        AttackMatch 0.6
        DefenseMatch 0.2
        RangedMatch 0.5
        BombardMatch 0.0
        ValueMatch 0.6
        }

        Defensive {
        AttackMatch 0.2
        DefenseMatch 0.6
        RangedMatch 0.2
        BombardMatch 0.6
        ValueMatch 0.7
        }

        Harass {
        AttackMatch 0.6
        DefenseMatch 0.3
        RangedMatch 0.6
        BombardMatch 0.0
        ValueMatch 0.4
        }

        StealthAttack {
        AttackMatch 1.2
        DefenseMatch 0.0
        RangedMatch 0.0
        BombardMatch 0.0
        ValueMatch 1.1
        }

        Bombard {
        AttackMatch 0.0
        DefenseMatch 0.8
        RangedMatch 0.0
        BombardMatch 1.1
        ValueMatch 0.0
        }

        Special {
        // no force matching for special attacks
        AttackMatch 0.0
        DefenseMatch 0.0
        RangedMatch 0.0
        BombardMatch 0.0
        ValueMatch 0.0
        }
        }


        Comment

        Working...
        X