Page 1 of 7

CivilAI

Posted: 09 Feb 2014 06:26
by PikkaBird
CivilAI version 37 is now on Banananananas, released January 9th 2022. OpenTTD 12.0 or later is required.


v20 was a major update which finally introduces passenger, mail, food and goods trains, and tidies up and reworks existing features to make CivilAI faster and better than ever before!
Please report any crashes or odd behaviour! Discussion of the latest version starts here.

v7 was 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.

An AI which builds a road network and fills it with buses and town cars.
CivilAI is my first AI, and one I've been meaning to make for a while. It builds an inter-city road network and entraffics it with buses and, if available, town cars (which it defines as "vehicles with 0 running cost and a capacity of less than 10"). It's non-competitive in that it will avoid building a bus network in towns which already have good passenger service, but it does usually manage to sustain itself. Give it a go, see how it does! And if you look at the code, don't laugh too hard; I was learning as I went.
You can download CivilAI from Bananas - the current version is version 6. It has no dependencies except the default road pathfinder, but it does enjoy a good road vehicle set and some eyecandy town cars. OpenTTD 1.4 or later is required.

Re: CivilAI

Posted: 09 Feb 2014 11:10
by Kogut
It works, it connected nearby town - but instead of adding some bus service it started connecting next towns. Is it expected ("builds an inter-city road network and entraffics it with buses")?

Due to low number of RV it was unable to sustain itself in my test.

Re: CivilAI

Posted: 09 Feb 2014 11:10
by Brumi
Nice to see you developing an AI :)

I got a crash on the first run, and it crashes with the same reason even after restarting:
civilai.png
civilai.png (20.09 KiB) Viewed 9941 times
I am using OpenTTD 1.3.3, and no NewGRFs were used which should affect your AI.

Re: CivilAI

Posted: 09 Feb 2014 11:51
by PikkaBird
Brumi wrote:Nice to see you developing an AI :)

I got a crash on the first run, and it crashes with the same reason even after restarting:
civilai.png
I am using OpenTTD 1.3.3, and no NewGRFs were used which should affect your AI.
Ooh... I guess it needs a newer version than 1.3.3 then. :)

Yep... HasCargoRating is new in 1.4.0... I should change the required version number. Whoops.

Re: CivilAI

Posted: 09 Feb 2014 12:35
by kamnet
Seems nifty so far! I like how the passenger cars all get individually named. Eyecandy Road Vehicles also works pretty well.

Re: CivilAI

Posted: 09 Feb 2014 13:06
by Dave
Another Pikka creation that will become a cornerstone of my game, I've no doubt.

Re: CivilAI

Posted: 10 Feb 2014 12:26
by PikkaBird
Kogut wrote:It works, it connected nearby town - but instead of adding some bus service it started connecting next towns. Is it expected ("builds an inter-city road network and entraffics it with buses")?

Due to low number of RV it was unable to sustain itself in my test.
It's hard to tell without a save game or screenshot, but perhaps its initial town was too small or hilly to build its bus stops. In that case, if it manages to connect to another large town before it runs out of money, it will try building a bus network there. If not, oh well; not much it can do. :)

Re: CivilAI

Posted: 11 Feb 2014 10:27
by Kogut
It constructed bus stops in initial town but it was not enough to survive burden of 500k initial loan used to build roads. Are you interested in save where this happens or is it something expected for this special purpose AI?

Re: CivilAI

Posted: 11 Feb 2014 11:41
by PikkaBird
Kogut wrote:It constructed bus stops in initial town but it was not enough to survive burden of 500k initial loan used to build roads. Are you interested in save where this happens or is it something expected for this special purpose AI?
Ah. Well, it certainly can overextend itself if it builds roads faster than it builds buses. :) Especially with a high initial loan and infrastructure maintenance costs turned on.

It really is a special purpose AI, so I'm not too worried about it. One thing I might do in future versions is randomise the starting location slightly, so that if it does start somewhere difficult and go bankrupt its replacement may try and start in a better place.

Re: CivilAI

Posted: 20 Feb 2014 04:33
by kamnet
One thing I noticed - the inter-city bus stations will be built with a small loop of road, but the buses won't actually use them, preferring to turn around at the end of roads.

Re: CivilAI

Posted: 20 Feb 2014 09:31
by PikkaBird
True! That's just the vehicle pathfinder, I guess, and nothing I or the AI can help. :)

Re: CivilAI

Posted: 23 Feb 2014 04:13
by Michiel
PikkaBird wrote: CivilAI is my first AI, and one I've been meaning to make for a while. It builds an inter-city road network and entraffics it with buses and, if available, town cars
Cool! And I just wanted to say that "entraffic" is a wonderful word :)

Re: CivilAI

Posted: 23 Feb 2014 12:36
by skippern
CivilAI is not showing up in my "download online content" menu, can it be that it has been released only for a newer version? I run OTTD 1.3.2 (should I be ashamed of myself?)

Re: CivilAI

Posted: 23 Feb 2014 16:48
by planetmaker
skippern wrote:CivilAI is not showing up in my "download online content" menu, can it be that it has been released only for a newer version? I run OTTD 1.3.2 (should I be ashamed of myself?)
yes. And yes - because you didn't try a newer version like 1.4.0-beta nor read the first posting's last sentence:
PikkaBird wrote:A recent OpenTTD nightly or 1.4 beta is required.

Re: CivilAI

Posted: 24 Feb 2014 12:15
by skippern
planetmaker wrote:
skippern wrote:CivilAI is not showing up in my "download online content" menu, can it be that it has been released only for a newer version? I run OTTD 1.3.2 (should I be ashamed of myself?)
yes. And yes - because you didn't try a newer version like 1.4.0-beta nor read the first posting's last sentence:
PikkaBird wrote:A recent OpenTTD nightly or 1.4 beta is required.
:oops: :oops: :oops: Will update my version as soon as I get on a quicker and more stable internet line (before next weekend I hope) :oops: :oops: :oops:

Re: CivilAI

Posted: 27 Sep 2014 15:12
by Wahazar
I tried this particular AI to use within multiplayer game (dedicated server 1.4.3, see signature), but it fails.
One company slot is occupied by AI, but this company is "Unnamed" and do nothing (in multiplayer game).
If saved gamestate is loaded in singleplayer mode, AI works fine.
Of course Allow AIs in multiplayer is On, Disable road vehicles for computer: Off.
I'm not user if this particular IS failed, or it is my mistake.
I didn't tried others AIs, I just need one to build roads and use buses.

EDIT: I discovered, that ai_in_multiplayer = false is set in my server cfg - I set it true in scenario editor, probably it is ignored and taken from server cfg.
I never know which setting is client/company/server/game related.

Re: CivilAI

Posted: 28 Sep 2014 01:43
by planetmaker
McZapkie wrote:I tried this particular AI to use within multiplayer game (dedicated server 1.4.3, see signature), but it fails.
One company slot is occupied by AI, but this company is "Unnamed" and do nothing (in multiplayer game).
If saved gamestate is loaded in singleplayer mode, AI works fine.
Of course Allow AIs in multiplayer is On, Disable road vehicles for computer: Off.
I'm not user if this particular IS failed, or it is my mistake.
I didn't tried others AIs, I just need one to build roads and use buses.

EDIT: I discovered, that ai_in_multiplayer = false is set in my server cfg - I set it true in scenario editor, probably it is ignored and taken from server cfg.
I never know which setting is client/company/server/game related.
It's a bit tricky, but on the other hand it's not:
every setting which describes the map to some extend, which every player needs in order to continue the game is found in the savegame. All settings which are related to server operation, thus server-specific are not stored in the savegame. Neither are stored those settings which are player-specific (like language, unit settings, money settings, signal density...). There are only very few company-specific things, like company colour, which actually need exchange.

Re: CivilAI

Posted: 30 Sep 2014 16:43
by Arexander
I'm getting the following error from the AI whenever it tries to start a company. I got the same message in 1.4.2 and now, after updating, in 1.4.3 as well. Any clues?

Image

Re: CivilAI

Posted: 30 Sep 2014 16:50
by planetmaker
Arexander wrote:I'm getting the following error from the AI whenever it tries to start a company. I got the same message in 1.4.2 and now, after updating, in 1.4.3 as well. Any clues?

Image
Did you in install the AI using the ingame content download?

You're missing one of the required libraries, road pathfinder in version 4.

Re: CivilAI

Posted: 30 Sep 2014 17:10
by Wahazar
I got similar error, moving library from content_download/ai/library to ai/library solved problem.

On the other hand, AI still is refusing to build anything, despite of proper settings of ai_in_multiplayer = true both for server config.cfg
and scenario (server is starting with -g "scenario.scn" option).