C7-Game / Prototype

An early-stage, open-source 4X strategy game
https://c7-game.github.io/
MIT License
34 stars 9 forks source link

All random start locations should be able to grow enough to produce a settler in the 3x3 area #292

Open QuintillusCFC opened 2 years ago

QuintillusCFC commented 2 years ago

Currently, it's pretty common for "bad start locations" to occur, as maybe 20-40% of all of them don't allow a city to grow to size 3, and thus produce a Settler, without tile improvements (which aren't yet added). This especially affects the AIs, who settle there anyway, but even for human players, getting stuck in the middle of the tundra is not usually considered a fun start to the game.

generateStartingLocations in GameMap.cs should be enhanced to ensure that all returned locations can grow to size 3 with just the base terrain yield values.

It should also probably be parameterized so it ignores that for barb camps (the shared code for start locations/barb camps is also somewhat questionable; it's shared because it ensures there is a minimum distance, and that's useful for both, but it doesn't ensure a minimum distance between a start location and a barb camp, and barb camps don't care about growth, so it's a somewhat false shared path).