AI:Links

From Spring
Revision as of 01:20, 23 March 2006 by NeuronExMachina (talk | contribs) (→Theory: Relevant research)
Jump to navigationJump to search

AI, or Artificial Intelligence, is what the Computer Opponents in games are called. Developing a good AI is a major undertaking, and requires quite a bit of know how. As the SY's have more important things to do than develop an AI, they have left this job up to the community. The community has risen to the challenge remarkably well, releasing quite a few AI's, most of which are in working condition.

There are currently a few AI's in development. The more notable of these include JCAI, which is shipped with Spring, and NTAI, which is not stable enough for release yet.

Current AI's

AAI

AAI is an AI currently being developed by Submarine. AAI 0.55 is stable and works with most popular mods but it doesn't support naval units yet.

JCAI

JCAI is an AI that was being developed by Zaphod. As Zaphod has now taken over the job as head programmer, development on JCAI has come to a halt. Despite this, it is still good, and is currently being shipped with Spring, and is a good starting point for new players to train against. It is very stable.

KAI

KAIis an AI currently being developed by krogothe. A very early version of the yet incomplete AI has been released, but is not yet up to a playable standard. It has several limitations such as only being able to play as XTA core and using only vehicles but still manages to produce a decent challenge in groups of 3 or more due to its relentless attacking and decent economy. For best results play in a flat, small map made of metal or with many mex spots.

NTAI

NTAI is an AI currently being developed by Alantai Firestar. It performs better than Zaphod's JCAI, but is not quite as stable. Also being shipped with current Spring releases, it is a good alternative for people to practice against. However it is very cpu-power consuming.

OTAI

OTAI is an AI being developed by Veylon. It builds randomly using OTA-style profiles. It is relativly stable and works with some of the more important mods.

ZcAIn

ZcAIn is an AI currently being developed by Cain. It is probably the least developed of the lot, but is coming along nicley. It is a new addition to the AI scene.

Random enemies

There is a also the Random enemies script, which can be used for some basic testing. It is not an AI as such, but a spawn script that can be either used to test an AI, or to train against.

Group AIs

These AIs are designed for use by a human player, to be assigned to a group of units and give that group orders to reduce micromanaging.

Metal Maker AI

The Metal Maker AI turns member metal makers off when energy reserves get low and turns them back on again when energy reserves are nearly full.

Simple Formation AI

Simple Formation.

Central Build AI

The Central Build AI organizes the build tasks given to construction units so that units build whatever tasks are nearest to them, or guards other construction units to help them if there aren't any tasks it can build on its own.

greenai

The greenai is currently for Nanoblobs. It produces units exponentially using the groupAI interface.

Documentation

Global AI Interface

Jouninkomiko has a topic on the Global AI Interface running here.

Metal Handler Class

Cain has developed and released a Metal Handler Class that succesfully finds metal spots on maps, which can be a major stumbling block for many AI developers. Information about it can be found in this thread

Theory

Useful existing documentation on the Spring unit AI can be found in K-man's Spring AI documentation, however this is not related to the Global AI.

Alantai Firestar has a lot of theory on the topic on his site, including details on his NTAI project.

Triaxx had a topic about the '5 Matrix AI 1,2,3', and also some information at Alantai Firestar's site.

Relevant research

  • [www.qrg.northwestern.edu/papers/Files/How_QSR_can_improve_strategy_game_AIs_A3ISS_2001.PDF Forbus et al 2001], "How qualitative spatial reasoning can improve strategy game AIs"
  • []http://www.cs.ualberta.ca/~mburo/ Michael Buro's lab]: Much of his lab's research is focused on "real-time planning and learning AI with applications to RTS games." They've actually created an open-source RTS called ORTS, in order to experiment with various AI techniques. With any luck, they might even be persuaded to switch their focus to TA Spring, or perhaps try implementing some of their algorithms. Also, it might be worthwhile to use elements of ORTS in TA Spring.

See also