Jump to content

AI Refactoring2009Crab: Difference between revisions

From The Battle for Wesnoth Wiki
Crab (talk | contribs)
mNo edit summary
Egallager (talk | contribs)
fix heading level
 
(25 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=CURRENT:=
== CURRENT WORK ==
ai_interface.hpp
ai.cpp
ai.hpp
ai_manager.cpp
ai_manager.hpp
formula_ai.cpp
formula_ai.hpp


Remove team_num and master from info structure, fix the code to use side() and master() instead.
=== extract gamestate-changing actions from AI code to separate classes.===


=NEXT:=
<b>TESTING</b> ai movement.
ai_interface.hpp
ai.cpp
ai.hpp
ai_manager.cpp
ai_manager.hpp
formula_ai.cpp
formula_ai.hpp


add 'int side' parameter to ai constructor. add public side() method to get it.
<b>NOW</b> ai attacks.


add 'bool master' parameter to ai constructor. add public @deprecated master() method to get it.
<b>DONE</b> ai recruiting.  


remove info parameter from ai constructor (it will still be gettable through .info(), even in constructor, for all is needed to get it is 'side' and static 'ai_manager' method)
<b>DONE</b> ai set movement/attacks to 0.


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


=NEXT:=
=== 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. Current status: compiled 1.6 using freebsd ports (to auto-install most of the dependencies), added lua, copied my git repository to there, will try to compile trunk soon.


ai_interface.hpp
[[Category:Summer_of_Code_2009]]
ai_manager.cpp
ai_manager.hpp
 
Move location of info structure from ai_interface to ai_manager.
 
=NEXT:=
ai_interface.hpp
@deprecate get_info and add info() to ai_interface.
 
=NEXT:=
ai.cpp
ai_interface.hpp
Change ai_interface methods to use info() instead of direct access

Latest revision as of 15:46, 7 April 2023

CURRENT WORK

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

TESTING ai movement.

NOW ai attacks.

DONE ai recruiting.

DONE ai set movement/attacks 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. Current status: compiled 1.6 using freebsd ports (to auto-install most of the dependencies), added lua, copied my git repository to there, will try to compile trunk soon.