This is a major update, and adds trucks and trains to the AI's repertoire, as well as tidying up a lot of its earlier behaviour. It should now be considered a "normal" competitive AI rather than a specialist oddity, although hopefully it's kept its general "civility" and pleasant construction style.

Changes in v7:

- Added better company and owner names.

Trucks added:- CivilAI will now build trucks for mail, goods and food.- Truck stops are added to busy bus stops for mail pickup and goods delivery.- Supply depots are built near goods- and food-producing industries to supply cargos to towns.

Trains added:- CivilAI will build short train lines to support goods- and food-producing industries, power plants, and water towers. - Known issue: since (by design) the AI only builds non-electrified railways, it can't build default trains after the 20th century.

Air network tweaks:- Increased the default minimum air route distance from 80 to 128 tiles.- Made sure redirected aircraft are redirected from the correct airport.- Improved land levelling for airport construction.

Road network tweaks:- simplified the ugly "loop" built at outer bus stops - these never worked properly and were just clutter.- Tweaks to when and how many vehicles are bought.- Improve road network integrity by scanning for lost vehicles.- Simplify crossing replacement code (which never really worked).- More conservative network construction: - Road network construction search now limited to towns the AI can build in. - The AI will only expand the road network once it has built up the network it has, to avoid spending all its money on roads early on.

- CivilAI no longer funds roadworks, because that's not very civil.- Various other tweaks and fixes.

Er, yuck. It's one of those classic corner cases where industries shut down between being listed and being tested, leading to it trying to test an industry that's not on the map any more. I'll try and get a fix up tonight.

Edit: okay, version 10 is up, stress-tested and (seems to be) crash free!

- Fixed a bug introduced in v10, which was preventing the AI from building goods trucks (oops).- CivilAI now attempts to recover poor town ratings by planting trees.

- Lists of unconnectable towns and industries are now stored in save games, to prevent wasting time retrying connections when the game is saved and loaded. Thanks to Brumi/SimpleAI for the list/array conversion code.

- The connected town list is now cached, and only recalculated on loading the game or building new connections. This should greatly improve the AI's response time, particularly later in the game.- Added more company, director and train names.- Readded statue building.

- Sometimes, bus and mail services would not come close enough to depots for automatic servicing, resulting in low reliability. To combat this: - Road vehicles with poor reliability are periodically sent for servicing manually. - Additional road depots are built in large cities.

Trains:- Improved wagon selection.- Made rail building a little more robust, with retrying if the path is blocked and better detection of station orientation.- Added an additional station/route type.

Nice work on the IA, it is really interesting to play with.I have 2 questions:CivilIA tends to build airports early in the game, which can be pretty suicidal when infrastructure costs are on. Deactivating planes for IA players is a solution to this problem, but could it be possible to make CivilIA take this setting into account? (if infrastructure costs are on, do not build airports, or build airports only when it is not suicidal to do so)Does CivilIA cares about the weight factor setting?

In the case of infrastructure maintenance, it's hard to imagine what the response should be. If the maintenance costs make using small airports (which is all this AI builds) prohibitively expensive, then building no airports seems to be the only option. If the costs are tolerable, then business-as-usual should be fine. In either case, infrastructure maintenance costs is a terrible feature and should be avoided.

The cargo weight factor is not currently considered, bur it probably could be; I can see how a very high weight factor, combined with a NewGRF that provides both low-power locomotives and high-capacity wagons, might be a problem. It wouldn't be difficult to vary the minimum power requirement and/or limit the train capacity. Do you have some examples (either screenshots or savegames) of trains which have struggled?

CivilAI will now check for other company HQs, and avoid setting up in the same town.

Trains:- Improved locomotive selection for trains, taking freight_trains setting and hill steepness* into account (thanks arikover).- Trains will have brakevans before a certain year (configurable, default 1965), if a NewGRF provides them.- Version 12 occasionally built a sharp 90 degree turn when building passing places or retrying a blocked route. To address this: - AI removes passing places with 90 degree turns (if 90 degree turns are forbidden). - If no passing place is built, one train will be built instead of two. - When retrying a blocked route, the AI will backtrack three tiles and build a straight rail before continuing, to avoid constructing 90 degree turns.

Maybe I'll take a break before adding any more big features, like trunk railways between cities or ships. It's just too easy to spend all day tinkering with this stuff.

*To clarify, I don't mean the "slope steepness for trains" setting; I'd forgotten that exists. I mean the actual profile of the route; hillier lines get more powerful locomotives.

Thank you for having taken into account the weight issue, and having corrected it. Before, with a weight factor of 5, CivilAI always chose UKRS2 0-4-2 Tanks to haul 120 tonnes of coal, whatever the profile of the route. Now, for a short route with 3 height levels difference upwards, it chooses a EE 10000 Diesel instead. It's a bit exaggerated, but it works perfectly.Sorry for not having been able to provide screenshots in time, and thank you for this fix, and for this AI which is really interesting to play with.

Uhoh, Version 14. The big NEW FEATURE is this version is ships, which are currently limited to passenger ferries. Cargo ships to maritime industries coming soon (tm). It's a big update, so let me know what you think or if there are any bugs or strange behaviour.

Also, this AI now uses a custom fork of the road.pathfinder library, so make sure you get that too (it should download the library automatically if you use the in-game downloader, I think).

Version 14:- Fixed a bug in introduced in v13, which was preventing the AI connecting small towns to expand its train network (oops).

- Added ships: - CivilAI will now build docks at town bus stops, and passenger ferries between and within towns in its network.

Road Network:- Finally revised the oldest and hackiest part of the AI: replaced the cross "spikes" at bus stops with path-based loops.- Forked the standard road pathfinder to add pathing cost for drive-through road stops.- Bus stop placement in towns is now more randomised, and the AI will avoid placing stops near existing stops (of any company).- Added a stricter attempt limit for road pathfinding, and visualised pathfinder progress in the debug log.- Made the AI more bridge-happy.- Various other bug fixes and tweaks to pathfinding and record keeping.

- Set default brake van date to 1975, to better align with air-braked stock date of UKRS3. - Better station spread and local authority checking when attempting to place airports.

Who is online

Users browsing this forum: No registered users and 4 guests

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum