caveman2cosmos / Caveman2Cosmos

The most expansive mod for Civilization IV: Beyond the Sword.
https://forums.civfanatics.com/forums/civ4-caveman-2-cosmos.449
57 stars 43 forks source link

AI friendly space colonization #942

Closed flabbert closed 2 years ago

raxo2222 commented 3 years ago

This will wait until multimaps are ready Currently it requires long term planning:

Cislunar cities:

  1. Build Space Station
  2. Upgrade it with Space Shuttles or Heavy Rockets - 3 levels of improvement on three techs.
  3. Send Heavy Rocket to Space Station level 3 to upgrade it to Cislunar Settler.

Lunar cities:

  1. Build Lunar Bases near resources and lunar mines on resources.
  2. Send Heavy Rocket to upgrade it on Space Station level 3 - upgrade unit to Lunar Settler.
  3. Send it on Lunar Base to create Lunar City.
  4. Build 4 Supply Ships per Lunar City to build 4 special buildings there.

AI is WAY too dumb to do this.

flabbert commented 3 years ago

Sounds like lunar colonization needs to be simplified for it to be realistic that AI can handle it, and maybe sacrifice some realism in the process.

raxo2222 commented 3 years ago

So simple for AI colonization would be: Just build Cislunar/Lunar settler on Earth, send it to Cislunar/Lunar space and build cislunar city (big space station effectively) anywhere. Lunar city also could be anywhere.

Instead of making lunar worker (lunar bulldozer) on improvement by sending construction ship here, make them buildable on same tech as you can make lunar cities.

Space Station could be then simple improvement for cislunar cities. Also it could exist as Orbital type building - third level being one required for Cislunar, Lunar and Planetary settler.

flabbert commented 3 years ago

Something along those lines yes.

A recurring issue in this mod is that we are trying to implement everything at once, instead of trying to do it gradually, making first version work, and then improving on it after.

raxo2222 commented 3 years ago

Pepper wanted to add space content first and foremost. He then was tweaking stuff, but was too busy to work on it any more.

Balance and AI weren't concerns for this stuff - there was extremely scarce space content before V37. I then tweaked it here and there - some Mars/Moon content belonged to another inactive modder so I eventually merged it. Now everything space related is in Pepper module, maybe except text, art and sound defines. Anyway Industrial and later eras needs deep fleshing out too like electricity, environment and other stuff.

flabbert commented 3 years ago

I do understand that, but for this mod to actually be usable in these areas we should work on getting bare minimum end to end, and then start fleshing out one area at a time

raxo2222 commented 3 years ago

When I was testing that branch where I let AI build directly lunar and cislunar settlers without needing any improvements or auxiliary units, AI still didn't want to colonize space....

It looks like buildings should be completely revamped, building valuation code needs to be revamped. Space terrains have NO base yields, which breaks some vanilla game assumptions. On Space AI city should be like this: Maximize yields and production. Build improvements, that will maximize development speed of city - getting up to date with buildings and have cities gaining population in reasonable time.

There should be some sort of balancing - there is no reason to not flood entire Cislunar zone with cities. For players there is micromanagment. So also we would need micromanagment AI for players, so they don't have to manually manage 20 cities on Cislunar, next 20 on Moon, next 20 on Mars, Venus, Gas Giants and their moons and so on amounting 300 - 400 cities on entire space map.

flabbert commented 3 years ago

Is there any particular reason why we cannot give Lunar yields? I mean only specific unit categories can get there anyway, and it stands to reason some kind of base yield could be possible if you have the right mobile equipment? The buildings and improvements there just needs to be rebalanced to take the base yield into account

raxo2222 commented 3 years ago

Possibly balance problems? Also yields must be progressively higher for later space zones - colonies are bigger farther out. Cislunar/Solar System Total yield of 1/2/3 for Primary, Secondary terrains, feature. Galaxy: 2/4/6 Universe: 3/6/9 Unobservable Universe/Hyperspace: 4/8/12 Numbers are suggestions. At certain point space terrains/features can give food representing habitable planets and stuff.

Here is layout of space terrains, features and bonuses. https://forums.civfanatics.com/threads/guide-to-space-map-making.656681/

Also raw space (Cislunar, Inner Solar System, Outer Solar System, Transneptunian, Transtellar, Local Group, Intergalactic Void) also could get some yield.

flabbert commented 3 years ago

I am absolutely sure we will have balance issue in the beginning, the question is really, Is it easier to teach the AI to develop plots that has nothing, or teach AI that its a good idea to use the space units to get the increased yields in space.

raxo2222 commented 3 years ago

Having yields on all plots would be nice, but even on Earth AI is kinda lazy with making cities

flabbert commented 3 years ago

Well that can be solved with tightening up the decision making trees for the AI, my fix to workers that ill finish up and commit later today should help with this.

raxo2222 commented 2 years ago

I simplified early space colonization some time ago. That is just build Space Station earthly building and make cislunar/lunar/planetary settlers. This building effectively represents space station level 3 improvement.

Supply ships were removed, instead you can build those buildings on Moon for cheap.

You don't need improvement to settle on Moon surface anymore.

Construction ship acts as early Moon/Mars/Venus worker, and you can build Lunar Bulldozer in Lunar city when lunar settlers are unlocked. It is dedicated to resource extraction (a way to prevent construction ships from building space mines on Earth)

As for AI settlers: New Space Settler AI must be developed for AI to be capable of settling in space.