|
FAQ
Frequently Asked Questions
This page contains answers to frequent questions.
Will there be an API like this for Starcraft II?
No. The BWAPI team is not interested in developing an API for Starcraft II. Some reasons are listed below. When are units deleted? When do Unit pointers become invalid?
Units are deleted only after the match ends. Should I Make an AI DLL Module or an AI Client Program?That depends on what you want to do. Unless you have a specific reason to write your AI as a client program, you probably want to make you AI as a DLL module. The client-server connection adds an overhead cost since the entire game state must be copied to shared memory every frame, so AIs written as client programs always run slower than AI DLL modules. On the other hand, running your AI as a client program allows you to enforce the BWAPI cheat flags by preventing the AI program from accessing Starcraft memory directly (AI DLL modules can easily bypass the BWAPI cheat flags). Any AI DLL module can be run as a client program by loading it into the AI Module Loader or a similar AI client program that just acts as a proxy between the shared memory and AI DLL module. What is a Force?A Force is another name for Team. In fact, the term "Team" is never used by Starcraft's Campaign Editor "StarEdit". Default team names are also called "Force #", and thus we use the most common reference. Where is Heal Move?You can HealMove by using either of the following calls; pUnit->[Unit#attack attack](position); pUnit->[Unit#useTech useTech]([TechTypes#Healing TechTypes::Healing], position); | |