Giter Site home page Giter Site logo

Comments (4)

Infixo avatar Infixo commented on September 27, 2024

So... not all can be 0 :) game crashes :) that was a quick one... let's see which one is used in division.
Ok, the one that cannot be 0 is PSEUDOYIELD_CITY_DEFENSES. Checked twice. All others can be set to 0.
Ok, co lets's see what it does first to minimize its impact.

  • Test 1. city-def: 200 is default, values 50..150, ~60% is 0
  • Test 2 then 10, values 100..350, more or less linear up (r2=0.85), ~15% is 0
  • Test 3 and 1000. values 50..100, even going down a bit, ~85% is 0
  • Test 4 try 1? values 100..200, going up, ~25% is 0 [i think it was something else than 0]

Conclusions.

  • There is some residual city value that is calculated in the engine. Defenses really bring value down - clearly can be seen by the increasing number of zero valuations the higher Defenses param is.
  • Also, it will be difficult to strip this residual value for further testing. I think it is related to actual city development (improvs, districts, tiles, etc.) so new cities bring it down and an average cannot be used.
  • One more. Building Walls definitely lowers the value. How much is also related to DEFENSES. Cannot determine yet the formula.

from civ6-real-strategy.

Phyrax1 avatar Phyrax1 commented on September 27, 2024

How does DEFENDING_UNITS work with vision? It might not play such a big role because the AI usually doesn't have good vision of enemy cities

from civ6-real-strategy.

Infixo avatar Infixo commented on September 27, 2024

I have performed a lot tests, pretty exhausting. The findings are here.

Based on the above I will introduce the following changes.

  1. Make smaller cities more valuable, so AI will also try to conquer border cities. Border cities are usually the last ones founded, so they are smaller. The game scores them virtually as 0, because defenses are usually pretty high later and they are not advanced enough to compete with the cities founded earlier.
  2. Make only Military victory to focus on the capital. Others should even avoid conquering capital as this is usually a suicide for the AI. Also, this should help City-States as they are only capitals.
  3. Make city defenses less valuable in exchange for units. I.e. motivate AI and humans to use units to defend cities not passive defenses. When city is left undefended (one or none units) if should become a target.

Ad. 1. A counterintuitive change, but I want to try a negative value for population. Big cities are valuable enough, no need to add them even more value from population. But this should help smaller cities and City-States in early game. To balance that increase a bit CITY_BASE.
Ad. 2. ORIGINAL_CAPITAL should be negative, and for Military Victory the effect removed by -100 favored item.
Ad. 3. This needs some trial and error approach. Probably CITY_DEFENSES should be a bit higher, and DEFENDING_UNITS lower.

from civ6-real-strategy.

Infixo avatar Infixo commented on September 27, 2024

Test results.
Params are: BASE=750, DEFENSES=40, UNITS=100, CAPITAL=-200, POPULATION=0.
Changing the values through time (i.e. using time strategies) is not very fruitful. Lots of work and new params to handle but very little extra gain.
The POPULATION param is quirky. I've decided to NOT use it at all. The results are not sensitive, it needs really a big numbers plus it produces jumps every 5 pop.
Test results are very good. These numbers a) produce much more positive valuations, b) the focus is moved to units from passive defenses

from civ6-real-strategy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.