Newer
Older
There are several classes related to processing information about the game
state and the input from StarCraft II. All these classes are taken more or less
directly from the original `CommandCenter`_, but we have left all
decision-making to the user of the API.
.. _CommandCenter: https://github.com/davechurchill/commandcenter
* :class:`commandcenter.BaseLocationManager`
* :class:`commandcenter.TechTree`
* :class:`commandcenter.MapTools`
* :class:`commandcenter.BuildingPlacer`
The rest of this page contains a brief description of each manager.
.. class:: commandcenter.BaseLocationManager
.. autoattribute:: base_locations
.. autoattribute:: starting_base_locations
.. automethod:: get_occupied_base_locations
.. automethod:: get_player_starting_base_location
.. automethod:: get_next_expansion
BaseLocation
~~~~~~~~~~~~
.. class:: commandcenter.BaseLocation
Closely related to BaseLocationManager. This is the datastructure used by
the BaseLocationManager to keep track of all base locations and related
information.
.. autoattribute:: position
.. autoattribute:: depot_position
.. autoattribute:: minerals
.. autoattribute:: geysers
.. automethod:: get_ground_distance
.. automethod:: is_occupied_by_player
.. automethod:: is_player_start_location
.. automethod:: contains_position
.. autoclass:: commandcenter.TechTree
This class has some invalid information by default, this can be corrected by
placing the file `techtree.json` in the working directory. The
`techtree.json` files are available here_, select the lastest version.
A techtree for StarCraft II version >=4.10 is now available (not fully tested yet),
this can be found under the folder data in this link_.
A recent file is included in the `template repository`_.
.. automethod:: get_data(argument) -> commandcenter.TypeData
.. _link: https://github.com/BurnySc2/sc2-techtree
.. _here: https://github.com/noorus/sc2-gamedata
.. _`template repository`: https://gitlab.liu.se/starcraft-ai-course/sc2-python-bot
TypeData
~~~~~~~~
.. autoclass:: commandcenter.TypeData
.. TODO: Types for all fields would be nice, is required_units List[UnitType] or List[UNIT_TYPEID]?
.. autoclass:: commandcenter.MapTools
.. autoclass:: commandcenter.Color
.. autoclass:: commandcenter.DistanceMap
BuildingPlacer
--------------
.. autoclass:: commandcenter.BuildingPlacer
David Bergström
committed