Jump to content

AI Refactoring2009Crab: Difference between revisions

From The Battle for Wesnoth Wiki
Crab (talk | contribs)
Crab (talk | contribs)
Line 1: Line 1:
= CURRENT WORK =
= CURRENT WORK =


1) extract gamestate-changing actions from AI code to separate classes.
== extract gamestate-changing actions from AI code to separate classes.==
  ai movement.
  ai movement.
  ai attacks.
  ai attacks.
ai recruiting.
<b>DONE</b> ai recruiting.  
  ai set movement to 0.
  ai set movement to 0.


2) AI Lookup
== AI Lookup==
implement ai lookup by scanning ai/ais directory for a list of ai configs.
implement ai lookup by scanning ai/ais directory for a list of ai configs.


3) AI testing:
== AI testing:==
set up a batch testing of 'ai vs ai' battles on my home computer, with results posted to db with a web frontend on a colocated server.
set up a batch testing of 'ai vs ai' battles on my home computer, with results posted to db with a web frontend on a colocated server.


= DONE =  
= DONE =  

Revision as of 19:37, 20 April 2009

CURRENT WORK

extract gamestate-changing actions from AI code to separate classes.

ai movement.
ai attacks.

DONE ai recruiting.

ai set movement to 0.

AI Lookup

implement ai lookup by scanning ai/ais directory for a list of ai configs.

AI testing:

set up a batch testing of 'ai vs ai' battles on my home computer, with results posted to db with a web frontend on a colocated server.

DONE

r34723 AI Refactoring: changed 'team' to 'side' when it means 'side number that starts from 1'.

r34720 AI Refactoring: Moved location of ai_interface::info to ai_manager. Now using a single copy of ai_interface::info for all AIs, and using get_info() accessor to get it from AIs. Also, fixed side to be unsigned int where it is possible.

r34719 AI Refactoring: removed unused turn_data_ from ai_interface::info

r34705 AI Refactoring. Extracted 'team number' and 'master' from ai_interface::info. This makes ai_interface::info ai-independent and allows to push it out of ai.