Since 0.7.0, the so-called NoAI framework was introduced into OpenTTD, which allows users to create their own AIs. These AIs can be handled in the AI Configuration window. Click the AI Settings button in the main menu.
First of all, you have to download some AIs via the Online content (en) system. Click the Check Online Content button in the AI Configuration window and you are able to download them.
Further AIs can be found on the NoAI forum. If you use the online content system, then it will also select the required AI libraries for the AIs that you download. If you on the other hand download AIs from the forum or other places, then you need to make sure to also download the right versions of the libraries used by that AI unless you already have them.
After you downloaded AIs, click the AI settings button in the main menu. There you can configure the number of AI competitors in the game, and then choose an AI for each company slot. Click on one of the company slots, then click Select AI. In the new window, you will see a list of the downloaded AIs. Pick one, and then click Accept.
If you click on a company slot, and then you click Configure, the AI configuration window opens.
These settings (except the first one) are added individually by the different AI authors, and they determine the playing style of that AI. You can use multiple instances of the same AI with different settings. The AIs will start automatically after a given amount of days.
Using the console
You can use the in-game Console (en) to start and stop AIs. Console commands for handling AIs:
list_ai - lists the currently installed AIs.
rescan_ai - scans the AI folder for AIs, this is needed if you install an AI while you are playing the game.
start_ai <ainame> <parameters> - starts the next AI immediately. If <ainame> is given, that AI will load instead of the one set in the AI settings window. <parameters> configure the behaviour of that AI, it does the same as the Configure button in the AI settings window. Example:
start_ai admiralai use_planes=0,use_trains=1
reload_ai <company_slot> - deletes the company given in <company_slot>, and then restarts the AI. The Reload AI button in the AI Debug window (en) does the same.
stop_ai <company_slot> - stops the AI at the given company slot, and then deletes the company.