AI:Main Page
From OpenTTD
NoAI Main Page
Development
AI Programming
- API Documentation
- Introduction
- info.nut file
- Basics
- Using the pathfinder
- Saving / Loading data
- Things you need to know
- Squirrel
- Lists
- Coping with OTTD errors
- Trams
- AI Libraries
AIs
Welcome to the AI Development. Starting from the NoAI branch it is possible for any user to create his own AI. Not only do we deliver a clean and simple API, we also allow you to make your AI in scripts. This should make it possible for anyone with a bit programming knowledge to make pretty good AIs. Also should it challenge people to build better AIs then the ones we currently have in 0.5 release. This page is all about telling you how to do it.
For all pages there is the rule: where examples are given, we will use Squirrel. We suggest everyone who wants to write an AI to read the Introduction as it will explain the basic concept.
Contents |
[edit] Source & binaries
You can check out the source from svn at svn://svn.openttd.org/branches/noai or download it from nightly.openttd.org/noai/files, binaries are available at http://nightly.openttd.org/noai/scoreboard.php
[edit] Compilation
If compiling from source, the files for /src/3rdparty/squirrel have to be checked out from SVN at svn://svn.openttd.org/3rdparty/squirrel
[edit] Changes
Development milestones article documents most important changes to NoAI framework.
- As of 17 March 2008, it is no longer possible to write your AI in C++. The only language to write your AI in, is Squirrel. See here why.
- For comments on all committed changes to the code, see the AI branch commits summary page: http://hg.openttd.org:8000/branches/noai.hg/
- As of 20 July 2008, the -a option is no longer valid, and replaced with
[ai_players] none = YourAI =
in openttd.cfg.
[edit] Tutorials
- Introduction to writing an AI for OpenTTD
- Basics of writing an AI
- Things you need to know about writing an AI
- Common pitfalls when working with Squirrel
- Introduction to lists (TownList, TileList, ...)
- Find out how to retrieve error messages after failed build commands
- Trams, and everything related
[edit] API Documentation
- Documentation of all API functions can be found in the Doxygen output. For AI API only, check http://noai.openttd.org/docs/
[edit] AIs
[edit] Examples
- WrightAI - Builds plane routes only.
[edit] User AIs
To download user made AIs, please have a look at the NoAI forum: http://www.tt-forums.net/viewforum.php?f=65
[edit] Tournaments
A tournament system for user made AIs has been created. AIs compete in one-on-one games using same map and same set of rules throughout the whole tournament. Results of past tournaments (including animated gifs!) are available at http://noai.openttd.org/tournament/ . If you'd like your AI to be benchmarked against others, send a tar file to TrueLight. See this thread on forums for more details.

