LLM-PySC2: Starcraft II learning environment for Large Language Models
Authors: Zongyuan Li
Yanan Ni
Runnan Qi
Chang Lu
Lumin Jiang
Xu Xiaojie
Xiangbei Liu
Pengfei Li
Yunzheng Guo
Zhe Ma
Huanyu Li
wu hui
Guo Xian
Kuihua Huang
Xuebo Zhang
Venue: NeurIPS 2025 poster ()
Keywords: Large Language Model
Decision-Making
Multi-Agent
StarCraft II Environment
Primary area: applications
TL;DR: This paper introduce the LLM-PySC2 environment, an LLM decision-making environment with complete pysc2 action space and multi-agent system.

Abstract: The tremendous potential has been demonstrated by large language models (LLMs) in intelligent decision-making problems, with unprecedented capabilities shown across diverse applications ranging from gaming AI systems to complex strategic planning frameworks. However, the StarCraft II platform, which has been widely adopted for validating decision-making algorithms in the past decade, has not yet provided substantial support for this emerging domain. To address issues that LLMs cannot interface with the hundreds of actions of the pysc2 backend and the lack of native support for multi-agent (MA) collaboration, we propose the LLM-PySC2 environment. This is the first environment that offers LLMs the complete pysc2 action space with sufficient multi-modal information and game Wiki knowledge. With an asynchronous query architecture, the environment efficiently interacts with LLMs that maintain a constant latency regardless of the scale of the agents' population. In the experiments, we evaluated LLMs' decision-making performance in both the macro-decision and micro-operation scenarios, with traditional StarCraft II Multi-Agent Challenge (SMAC) tasks and a series of new proposed. Results indicate that LLMs possess the potential to achieve victories in complex scenarios but cannot constantly generate correct decisions, especially in the recovered pysc2 action space and MA settings. Without task-relevant instructions, the pre-trained models suffer from issues such as hallucinations and inefficient collaboration. 
Our findings suggest that StarCraft II still challenges in the era of large models, revealing that there is a lot to do to develop an advanced LLM decision-making system, and the proposed LLM-PySC2 environment will support future development of LLM-based decision-making solutions.

LLM-PySC2: Starcraft II learning environment for Large Language Models
Zongyuan Li ,anan Ni², Runnnan Qi',Chang Lu' ,Lumin Jiang",Xiaoj) Xiiooiie Xu', Xiangbei Liu', Pengfei Li', Yunzheng Guo' Zhe Ma Huunyy Li', Wu Hui',
Xian Guo 1." Kuihua Huang* Xuebo Zhang' 'College of Artificial Intelligence, Nankai University, Tianjin, China 2 "Laboratory for Big Data and Decision, National University of Defense, Changsha, China
Abstract
The tremendous potential has been demonstrated by large language models (LL.Ms) in intelligent decision-makinn problems, with unprecedented capabilities shown across diverse applications ranging from gaming Al systems to complex strategic planning frameworks. However, the StarCraft II platform, which has been widely adopted for validating decision-making algorithms in the past decade, has not yet provided substantial support for this emerging domain. To address issues that LLMs cannot interface with the hundreds of actions the pysc2 backend and the lack native support for multi-agen agent (MA) collaboration, we propose the LLM- PMM-PPC environment. This is the first environment that offers L.MMs the complete pysc2 action space with sufficient multi-modal information and game Wiki knowledge. With an asynchronous query architecture, the environment efficiently interacts with LLMS that maintain constant latency regardless of the scale of the agents' population. In the experiments, we evaluated LLMs' decision-making performance both the macro-decision and micro-operation scenarios, with traditional StarCraft II Multi-Agent Challenge (SMAC) tasks and a series of new proposed. Results indicate that LLMs possess the potential achieve victories in complex scenarios but cannot constantly generate correct decisions, especially in the recovered pysc2 action space and MA settings. Without task-relevant instructions, the pre-tre -taiiid models suffer from issues such hallucinations and inefficient collaboration. Our findings suggest that StarCraft still challenges the era of large models, revealing that there is lot to do to develop an advanced LLM decision- system, and the proposed L.MM-y LC2 environment will support future development of LLM-- based decision-making solutions.
Introduction
The remarkable progress of LLMs has not only enhanced their reasoning capabilities but also positioned them multitask strategists, even without post-training on specialized domains. Unlike reinforcement learning (RL) based agents, LLMs exhibit advantages in better context understanding, knowledge utilization, and human-AA interactions, acting in wider range of zero-shot scenarios like
gaming ( [12. robot manipulationnnaviaation (13)- (37) financial and trading (18)-(0)
However, there is still lot do release the potential of LLM decision systems. Current works mostly limited to prompt engineering ( reflection ( LLM workflow 18) to dismantle tasks into smaller tasks. These works enable LLMs act better in diverse scenarios, but the knowledge-leariing problem for specific domain remains unsolved.
"Corresponiing authors
39th Conference on Neural Information Processing Systems (NcurIPS 2025).

---

Build-in Bot
Camera Move
Script Agent
Unit Select
0, Wrapper
Playerl
Player2
Human
o
a Wrapper
Multi-Agent System
RL Agent
RL model
Ing
Agent Data Cache
to [A8l
response
LLM Services
Agent (Cominaneer
obs
image
LLM serveri
GPTT-4 backend
Agentd
last action
commrnu-co out
Agent2
server2
wiki data
commu-in in
Agent3
oagy
To Aporci
L.M server3
GPT backend
profile
clicnt4
Comma In:...
Prompe:...
Images
LLM server4
GPT-3 backend
Auslysii....
Actioss...
Commu A....
Proupe (gyaem proept) (oheroed
Analyskc
Chasszl-L.
Stale--
moches.
<Arbeit www.ettmmmtttioo
Superiar
Agent for Colosuss
Agent for
Agant for Stalkers
Commander
Figure 1: LLM-PPSC2 framwork. LLM- the original observation will be wrapped into text- multi-modal observation. LLM-generated text action can be recognized and transformed into PySC2 functions, enabling LLMs to interact with the StarCraft II environment and control the units.
Currently, most LLM decision-making solutions are developed in relatively simple environments, resulting in ignorance LLM's shortcomings. For example, MineDojo(23) is relatively compre- hensible for LLMs and exhibits a high tolerance for errors, while some other works simplify the policy space of the (6) Earlier works, such as StanfordTTown124 do not even concern decision-making ability but is more focused LLMs' behaviors.
The StarCraft II environment, well known for its complexity, has been widely used as validation platform for decision algorithms in the past decade, supported multi-agent research such as VDN(5), Qmix(26), MAPPO the milestone algorithm Alpha-Sta(225) and DI-Star 29). is precisely extremely high complexity that makes it the most authoritative verification platform for decision- making algorithms. However, since the vector interfaces are not compatible with LLMs, the StarCraft II environment does not support complete interactions with L.MMs in the past few years.
Existing LLM Stareraft enviromments, such Swarm Brain(5), TextStarCraft II(TSC2) (6), have the problem of severely limiting the action space. They cut off most unit control operations and reduce continuous action space to discrete. Although the over-simplified environments have attracted attention for LLM decision research in the past years, they hindered further research due to the lack of complexity. Other works like (30)
not support complete games.
At the same time, the support of current platforms for multi-agent systems is insufficient. Currently, most LLM multi-agent 2 expose only single agent interact with the environment, while others act as modules for data processing or aggregating. Other works focus on conducting social simulations, emphasizing the accuracy of simulation 332 agent collaboration.
34)
rather than promoting multi-
To provide support for LLM decision-makinn we developed LLM P5SC2, environment derived from the StarCraft Learning Environment (S52 This environment expanded the action space complete pysc2 action space, allowing agents to perform fine-gra grained operations and unit skills. We also provide agents with comprehensive observations, including images and Wiki Knowledge(36).
worth noting that this is a platform with native multi-agent framework. enable kinds of multi-agent cooperation such as centralized decision-making and distributed decision-makiin To

---

avoid an increase in waiting time as the number of agents grows, we build an asynchronous query architecture maintain the latency of multi-agent queries.
In experiments, eight new scenarios were proposed. Unlike the SMAC(37) tasks, these tasks require more task understanding and usage of unit skills. Mainstream LLMs are evaluated in both the complete StarCraft II games and mini scenarios. Results indicate that pre-trained LLMs have possess zero-shot decision-making ability but lack the ability to make consistently effective decisions. Without lask-specific training, pre-trained LLMs cannot always find the key elements for victories. They fail to identify the important aspect of the situation, making mistakes in analysis and even dealing damage to allies sometimes.
Our contributions can be concluded follows:
(1) We propose the first L.M StarCraft II framework with a complete pysc2 action space and provide a structured Wiki knowledge database of all units' information.
(2) We provide native support for multi-agent collaboration in our platform, paired with an asynchronous architecture that ensures a stable latency regardless of the population of LLM agents.
(3) We propose several new evaluation scenarios for LLM decision-makinn and evaluate LLMs' performance in both the macro-decision scenarios and the scenarios for oicrrooppeatsons..
Problems of the LLM decision system are also discussed in the final sections of our paper. Results indicate that current LLMs cannot effectively handle complex StarCraft scenarios due to serious hallucinations and lack of domain knowledge. How to increase the ability of L.LMs in complex decision-make problems, at an acceptable cost, still poses a challenge in the era of large models and remains unsolved problem.
2 LLM-PySC2 environment
2.1 Framework
The LLM-PySC2 environment is built on the player level of SC2LE. As shown in Figure I two players fight against each other and play the role of interacting with the pysc2 backend. They dircctly control the camera, select units, collect observations, and execute actions.
To precisely control the whole system, multi-agent framework is designed. Agents of the system collaborate through natural language communication. each step time f, agent i with profile p get the observations of from the environment, queries remote LLM for analysis ana; and strategy stg). communication messages mi and actions ai:
(ana): stgi, mi a)) LLM (p', of)
Then the player sends the joint action to the environment and transmits messages to assigned agents: 0 ... o)+1) Env(a) ag ... a"; ...,"; m m); ... ..., .m")
Pseudo code of the interaction and query process can be seen in Appendix A.
2.2 Actions
Actions are the most important part a decision-makin problem. In LLM-PySC2, textual actions play the role of the interface for large models and the environment. These actions are defined as:
Actionn (arioonssm >
where args refer to screen or minimap coordinates, unit tag, or their combination. Compared to discrete text actions, these actions avoid clipping the policy space and neglecting StarCraft II complexity. Details of the actions are provided in Appendix B.
In SC2LE, there are about 500 original for controlling Protoss, Terran, and Zerg. Most of them require additional parameters such as a screen or minimap position. These actions further constitute a huge policy space, making one of the most complex environments for decision-making problems.
As shown in Fig 2 there are more than 100 text actions for Protoss agents in the LLM-PySC2 environment, which can be classified as unit control, unit skills, building, researching, training, etc. Different from other environments, these actions increase the theoretical performance of optimal policy but also raise the challenge of generating correct actions.
3

---

Protoss Action Space
Unit Comol (6%
Unit Trainning Actions (17):
Build Actions (Easy Model. 15%
Buidd Actions (Lasy Model, 15)
-Suple
<Tiin Adapt
<Build News Neuritage
<Buld Nesue/
<Heid Prerione
<Tmin Zealon?>>
<itundd Assimilinor Nearttngi
<Strld Assimiston
<Attack Unitugle
<Tuin Stakket
<Buld Pylsa, Neatlag
<Buld Pylent
<More Seranfmeenai
<Tnin Phoumixd)
<Buid Fong Nantogg
<Buld Forge[p
<Move Minimgmmmmmpp.....
<Imin Colossus(p
<aluid
Neartng)
<ludd Caneway
Single Unit Conol, basic actions (3)
Research Actions (17):
Unild Actions (Screen Mode, 15):
<Seeet Dait Arack Unitiug, ugl
<Reseuch Wappaatte
<Buld Nous Scrembbereenl-
<Select Usit Mows Seventtng scnorsj-
<Rounech, PriStomijy
RRild Assimilttrr Senompereenn
<Select Move Minimapeiag,
Protos/iiAmmottt
<Buld Pylon,
Proises ....
<Buil
Moeph Actions (5):
<Meeph, Archonde
Unit Warpping Actions (6)
Unit Waraping Actions (Facy Mode, 6j:
<Mieph Observehladdd
<Warp, Zeoiot Neattage
<War Zealex Neanlagi>
<Merph, Wwrprrsm/hninggMoee
<Wisp. Suiker Nearlag
<Rap Stiker Neattigl>
(17): <Abiliy Gundinshicdaaa
Single
Abilitca (17))
<Ablity, Stsiiing Serentstmenn-
Select. Unit Ability Conddinshheddngg
<Abilayy Blick Scceanseeee
<Ability ForceField Screansscreesj <Abiliy, NeusMaseferall Nenntagi?>
<deect Uni Abilit Blink Screnillg,, sercenj
<Ability PriSiorm Serant/eenes
<ddat Unit Abilty PoñSiem, Senamifogg, arrenj)
Resouree Actions
(4): Sentj
Contol Actoos
Tranpotter Actions
Netux Nortbag>>
Unis, Altack(j
<lasd, Unillag'e
<Lock Assmilater Neoting)>
-oala Scarti
<Ail Units Defend
<Ualiad Senanfsareec
Recognize Process of Action
Bridge
Blick Screeni, 'arg:, 'screen')
"Gac' Ribcciiinnneeeeee
Effist, Blisk,
"scrsen'"))
Recogonized Actio: Find bridge
PySC2 functions:
Generato pyscll functions
<Select Unit Move Scren(0 1000k00000000 (16.32))
pesc2 lib select point'scleet, (45, 66))
lib actaiiiitiiinncc.m Eiffet, Blink
Figure 2: Protoss action space and the recognition process. LLM-PySC2 is the first LLM decision- making environment with complete pysc2 action space. LLM controls units by output actions in the shape of <Action_ <Action_Name Name(args)> The environment transforms text action into pysc2 functions according a transform protocol and the relevant bridge object of the action.
2.3 Observation
Observation provides fundamental support for decision-making. Given the distinct requirements of different agents, we developed an interface that offers each agent the observations specifically suited to their tasks. Additionally, with multi-modal observations that convey rich semantic and visual information, released the potential for deeper understanding of the situation, solving the problem that the previous environment had only observation of unit quantity information.
LLM-PySC2 Observation
Query Message
Image Observation
Screen Image
System Prompt
Feature map
Example Input
Mintimap
Valid map Unitigg] Semeen(sceenn-
Mininup
Exumple Outgut
Game Time: 00:50 Mincrale 300, Cae- 50
Text Observation
Supply:31 istal, 12 kch..
<Suppe
Image Observation
Gilebal info
Toun Sulker Neabhy Neathy tinery ....
Team unit info
Last stop Actions: Teams Adep-
9
Game Knowledge
our unit ..... buildings .....
spotted soemy: ....
Warpper
Valk tarpess .....
Relevurt Protess.Adgp Adopt
Zeca. Zesa.Queen. ....
Environment
Tack Description
Tiek:: Trrm Adep-! tade
cramy workers pussibl.
Figure 3: LLM-PySC2 observations. LLM-PySC2 provides multi-modal observation. The obser- vation wrapper generates text and image observations that contain all the important information for decision-making, with access to images of the screen, minimap, and pysc2 original feature maps.

---

2.3.1 Text Observation.
As illustrraedd in Fig. 3 an observation wrapper is implemented to process the relevant text observations for each agent. This wrapper includes set of functions tailored for handling different types of text information. Once all parts of the text observation are generated, they will be aggregated into OpenAl query messages, which include system prompts, example inputs and outputs, as well series of images. These messages are then sent to the LLM server for querying responses.
Considering possible user requirements, code repository. It is possible to customize the wrapper to generate other kinds of text observations. More detailed examples of text observation can be seen in Appendix C.
expose all the observation interfaces in the open-source
2.3.2 Image Observation.
In StarCraft II scenarios, image observation provide information such as terrain and relative position. It is almost inevitable to use images to describe such higher-dimensional information.
In LLM-PySC2, provide four kinds of image observation: RGB-Screen, RGB-Minimap. RGB- Feature, and the pysc2 backend, adding auxiliary lines and annotations to facilitate the coordinate recognition by LLMs. The image will be encoded into a base 64 string and will be added to the message to query the LLMs for analysis, actions, and communication behaviors.
Image observation wrapping functions collect the image from
2.4 Multi-Agent System
Disassembling complex problems into small tasks in multi-agent system has become basic solution. Different large models interact through natural language, coordinating their behaviors and managing the massive StarCraft II system together.
COXS Scartee <All Units, Attuckly
Ressearch XXX()*
<Train XXX
-Baild xxlj
researching buildings
Agent Commander
Agent Developer
workers
training buildings
Flay
(2) Dhanki
(1) Macro Decisions: Combat
(2) Macro Decisions: Develop
Communicatiun
Comemnication
Eascun
Agent Builder
Probe-1: Team Probo-2i
Agent
Agent
Agent
CombutCroupl
Combutrrupp
CombutGroupS
Micro Operations: Precise Combut
Micro Operations: Precise Build
Figure 4: LLM-PySC2 multi-agent system. In LLM-PySC2, game control divided into com- bat((1), (3)) and development(()), (4)). In standard unit control mode, the agent Commander sends messages to agents named CombatGroupi, and the CombatGroup agents control their units moving, attacking, using skills achieve tasks assigned by superiors. In standard build mode, the agent Developer trains units, updates technologies, and asks the agent Builder to build buildings. Then the Builder controls workers and chooses positions construct new buildings.
5

---

In LLM-PySC2, agents collaborate by communicating with each other. They can discuss in a channel or directly send messages another agent. As shown in Fig. [ each step, received messages will be added to observation, and the agent can respond to others by generating Communication actions shaped as < MessageTol" ( ame, " "oontent")) >. When the agent receives messages, the received messages will be displayed in their origin form. An Agent should analyze both the observed situation and the requests/information from others, and finally generate actions and reply to their teammates.
As shown in Fig. we define four kinds of agents responsible for (1) macro-decisions for combat deployment, (2) macro-decisions for economic development, (3) micro-operations operations for combat, and (4) micro-operations for building. Agents for macro-decisions organize other agents work together, while agents for micro-operationn execute specific actions. Note that, agents of LLM-PySC2 query in independent threads, ensuring constant waiting time when the number of agents increases.
The multi-agent system supports both centralized and decentralized decisions in the environment. Two 'Easy Modes' are also provided for simplifying some aspects that researchers are not very concerned about, among which 'Easy Build" disables the agent Builder and helps researchers concentrate more on multi-agent collaboration in the combat, while 'Easy Control' disables the agents CombatGroups and helps researchers concentrate more on planning and multi-modal information processing.
3 Experiments
In this section, we introduce two series of experiments: (1) Experiments for macro-decisions, i.c. complete StarCraft game; (2) Experiments for micro-operations, including classic SMAC scenarios and eight new tasks that require units to use their skills and achieve assigned goal. To distinguish micro-operation scenarios from the traditional SMAC environment, we refer to these two groups of experiments the LLM-SMAC task group and the LLM-PySC2 task group.
Combined with the complete StarCraft II games, these experiment scenarios constitute one of the most comprehensive experiment groups in LLM decision-making and support research on enhancing LLMs' abilities reasoning. planning, learning, and multi multi-agent cooperation.
We use the Kill/Death (KD) ratio and Winning Rate (WR) to evaluate the performance of the LLMs:
V unit minerals(unit)) + 2 x gas(unit)
KD Visiled Vdead_umita
W R
where Visited units and Vdead_ussa units refers to killed units' value and dead units' value of the LLM's camp. The higher the value of KD and WR, the better the performance of LLMs.
3.1 Experiments for Macro-Decisions
3.1.1 Experiment Settings
Complete games demand real decision eecision-making abilities, such analyzing situations, planning for tactic strategy, deceiving the opponent, and engaging with the enemy at the right time. To evaluate the performance of LLM macro-decisions, easy control + easy build (ECEB); (2) standard control + easy build (SCEB); and (3) easy control + standard build (ECSB). Considering the poor performance of LLM in complex settings, do not further test the last mode (4) standard control + standard build (SCSB).
tested the three modes in the Simple64 map: (1)
For games with easy control settings, enable the agent Commander directly control all units to attack, defend, retreat, and scan for information. For the standard control settings, we enable agents named CombatGroup-i to precisely control different kinds of unit to move, attack, and use skills.
For games with easy build settings, the agent Developer can build buildings by generating actions < Build_ Building N Nome() >. For games that enable standard build, the agent Developer can only train units and upgrade technologies, and has to communicate with the agent Builder to build in specific coordinates [z, y] by generating actions < Build Building ame_ Screees_rree[[,, v)) >.

---

In these experiments, we give each agent client for querying GPT-4o-mini. For macro-decisto agents, we provide relevant information and minimap images. For standard unit control agents, we provide text observation and both the screen image and minimap images. Examples of observations, responses for different agents, and detailed experimental settings can be seen in Appendices and
N
expand base
build buildings
(c) train/warp units
X
Doseel
(d) atlack
defend
Figure 5: StarCraft complete game LLM-PySC2. StarCraft complete game requires both the macro-decision ability and micro-operation ability. The agent Developer and Builder has to (a) expand new bases, (b) build new buildings, (c)train or warp units for combat, and upgrade technologies. The agent Commander with agents for CombatGroups controls the army (d) defend, (e) attack, (f) retreat, or make complex deployment to deceive and defeat the opponent.
3.1.2 Experiment Results
In the oparooopeeatiinn tasks (complete StarCraft II games), we conducted 30 repeated experiments from level-1 (very easy) to level-7 (very hard/clite). As shown Table two agents in the ECEB mode control the whole system via discrete actions and perform nearly the same as in TSC2 (6. At level-5, LLMS can only win about 30% of the games and nearly lose all games level-6 and above.
Table I: Winning Rates of GPT-4o-mini in Complete StarCraft II games (with 90% Wilson Score Confidence Intervals. Red for upper limits and green for lower.)
Winning Rate from Level-1 Level-7
Mode
LI
L2
L3
L4
L5
L6
L7
ECEB (EasyContrl--EasyyBula))
100% 100%
100%
80%
57%
57%
30%45%
30%018%
3%
0%%
SCEB (StandardControl-Eaaaayuttt)
100%
60% 002
100%
73%
0%
8%
0%
8%
0%5
0%%
0%55
ECSB (EasyConto--SStnndddBuil)))
100% 100%
80%
89%
60%6
73%
17%
30%
17%
30%
0%
0%
In SCEB and ECSB modes, LLMs perform worse due to the recovered complexity from the complete action space and higher demand for collaboration. In SCEB mode, the Easy Build part develops the economy and military strength the same as in ECEB mode, but agents for micro-operations frequently make mistakes command, resulting in a 0% winning rate from level-3 onwards. Notably, in ECSB mode, while the Builder agent controls workers for standard construction operations, it maintains certain competitiveness from level-1 to level-3, achieving 60% winning rate at level-3. However, the difficulty increases further, issues such inappropriate building placement and suboptimal defense layouts become evident, causing the winning rate to drop sharply to 17% at level-4 and resulting in complete inability win from level-6 onwards.
To better assess the statistical significance the winning rates and account for uncertainty associated with the limited sample size, we calculated Wilson Score Confidence Intervals. This interval provides a reliable confidence interval estimate for binomial proportion, particularly suitable for small sample sizes proportions near 0 or 1. The formula for the Wilson interval is follows:

---

a
1
+
2n 2
b
2
p(1 p)
4n
x²
WP apper = aa + b, W Plower b.
where ý the observed winning rate, n the number of trials (30 this case), and is the a/2 quantile of the standard normal distribution, i.c.. Φ 4 a/2). For 90% confidence interval (a = 0.10), & se 1.645. The upper and lower limits of the interval, denoted as Pupper and Ploerr reported in the table in red and green, respectively.
3.2
Experiments for Micro-Operations
3.2.1 Experiment Settings
SMAC is a well-known benchmark for multi-agent reinforcement learning (MARL) approaches. We provide compatible support for SMAC tasks. Note that, unlike the SMAC tasks that units controlled by n agents, the LLM-SMAC units are controlled in groups. is not recommended to compare the LLM-based method with the MARL-based method due to different control frequencies.
In the LLM-PySC2 task group, eight new experimental scenarios were constructed. These tasks introduce unit skills into the experiments. Unlike SMAC, which focuses only on incoming combat, LLM-PySC2 requires an understanding of task description, planning attack routes, and utilizing skills to achieve the goal. Tasks to 4 are designed single-agent tasks, while tasks 5 to 8 are designed as multi-agent tasks. Agent settings are the same as for the standard control mode the complete StarCraft II game. More detailed settings can be seen in Appendix D.
(4) tisk Adept hamss
(b) task2: Pheonix harass
(b) task3: intercept airdrops
ciC
(d) tasle: Blink Stalker combat
task5: large scale combat (typel)
(f) makkó: large scale combat (type2)
Figure 6: Experiments for micro-operattons: LLM-PySC task group. games. (a)(b) Controlling
2Adepts/3Pheonix to harass enemy economy, kill more than half of enemy workers; (c)(d) Controlling Stalkers intercept incoming airdrop defeat enemy Roaches using Blink ability; (e)(f) Controlling a combat group of several unit types, use skills especially Area-of-Damage skills to defeat enemies.
3.2.2 Experiment Results
In the micro-operation tasks, we conducted 20 repeated experiments for each LLM (except GPT- 3.5-turbo which evaluates 50 games). As shown in Table. 2 all the tested LLMs act poorly in LLM-SMAC scenarios, similar to works such as (30). LLMs make obvious mistakes that do not move their long-range combat units, when attacked by melee units in 3s vz_3z. In 2s3z, the agent for Stalkers sometimes escapes from the battlefield, resulting in the quicker death of ally Zealots.
In the LLM-PySC2 task group, we evaluate the performance of models. Results in Table. demonstrate that L.LM suffers from hallucinations and the lack of knowledge (More details are provided in the Discuss section and Appendix E).

---

Table 2: Kill/Death Rates and Winning Rates of LLMS in LLM-SMAC Tasks.
Task Names / KD (WR)
Model
2s3z
3s5z
Ic3s5z
3s52_vs vr__vv____66_ 2c_ 64zg
3s vs ___33_z
gpt-3.5-turbo
0.60(22%)
0.43(4%)
0.91(44%)
0.29(0%)
0.52(0%)
0.05(0%)
gpt-4o-mini
0.66(20%)
0.39(0%)
1.01(50%)
0.29(0%)
0.54(0%)
0.09(0%)
glm-4-plus
(.81(25%)
0.46(0%%
0.47(0%)
0.33(0%)
0.54(5%)
0.15(0%)
claude3-haiku
0.58(5%%
0.48(0%)
0.48(0%)
0.32(0%)
0.52(0%)
0.10(0%)
11am
0.19(0%)
0.23(0%)
0.18(0%)
0.14(0%)
0.49(0%)
0.00(0%)
gpt-4o
0.76(20%)
0.47(0%)
0.80(30%)
0.35(0%%
0.56(0%)
0.15(0%)
Table Kill/Death Rates and Winning Rates of LLMs in LLM-PySC2 Tasks (level-1).
Task Names / KD (WR)
Model
task
task2
task3
task4
task5
task6
gpt-3.5-turbo
1.23(58%)
0.13(4%)
6.63(38%)
0.38(0%)
0.61(8%)
0.28(0%)
gpt-4o-mini
1.67(70%)
0.16(0%)
3.46(0%)
0.39(0%)
0.62(20%)
0.30(0%)
glm-4-plus
0.78(30%)
0.21(5%)
153(100%)
0.38(0%)
0.60(10%)
0.30(0%)
claude3-haiku
2.19(90%)
0.19(10%)
5.25(40%)
0.34(0%)
0.75(25%)
0.33(0%)
1lama3.1-8b
0.28(5%)
0.12(5%)
14.9(75%)
0.18(0%)
0.48(5%)
0.14(0%)
lllaa3. 1-70b
0.36(15%)
0.14(0%)
58.9(95%)
0.33(0%)
0.59(15%)
0.31
1lama3.1-405b
0.70(30%)
0.10(0%)
3.0k(100%)
0.28(0%)
0.56(10%)
0.32(0%)
gpt-4o
2.27(80%)
0.16(10%)
Inf(100%)
0.46(0%%
gpt-ol
1.36(60%)
0.04(0%)
Two findings derive from these results: (1) Reasoning models such as GPT-ol-mini cannot signifi- cantly improve the decision-making ability in an environment never seen before; (2) Scaling law does not work well decision-making problems that Llama3. 1-405b does not significantly outperform Llama3. (but enough parameters crucial for basic decision-making ability). These problems are possibly due to a lack of relevant knowledge and instructions in the pre- pre-training stage.
Table 4: Kill/Death Rates and Winning Rates Gpt-3.5-turbo LLM-PySC2 Tasks (level-1/2/3).
Task Names / KD (WR)
Task Level
task
task2
task3
task4
task5
task6
Task Level-1
1.23(58%)
0.13(4%)
6.63(38%)
0.38(0%)
0.61(8%)
0.28(0%)
Task Level-2
0.56(5%)
0.04(0%)
3.31(5%)
0.34(0%)
0.52(0%)
0.20(0%)
Task Level-3
0.39(0%)
0.05(0%)
1.99(0%)
0.31
0.40(0%)
0.26(0%)
To avoid the situation that all tasks achieve 100% winning rates several years after its proposal, three difficulty levels for the LLM-PySC2 task group. As the level grows, will be more difficult for the L.Mss to reach the goal due additional enemy units or upgrades. We evaluate the performance of GPT-3.5-turbo in these tasks, as shown in Table. and serve it as a baseline for future research.
3.3 Latency and Token Cost.
Since StarCraft II is a real-time environment, we also report the runtime latency and token con- sumption to assess the practicality of LL.M-based decision-making. Table summarizes the average observation size, response size, and runtime latency by agent type in complete-gand settings using GPT-3.5. The environment-side latency (i.c., observation processing and action parsing) remains

---

below 0.1 seconds per step, which is negligible compared to the model-side inference cost. As shown in the table, LLM response latency (5.2-5.6 seconds per query) is the dominant overhead, demonstrating that the PySC2 execution pipeline is efficient and that LLM inference is the true computational bottleneck.
Table 5: Latency and token cost by agent type in complete-game settings (GPT-3.5).
Agent Type
Obs Tok.
Resp Tok.
Env Lat. (Obs)
Env Lat. (Act)
LLM Lat.
Commander
1240
321
0.016 ms
0.001 ms
5.23
Developer
1587
320
0.076 ms
0,001 ms
5.51
Other
2269
363
0.019 ms
0.001 ms
5.58
4
Discussion
In this section, we discuss three challenges in LLM decision making. These challenges significantly reduce performance, severely hindering the application of the LLM-based decision- maainn system.
Lack of domain knowledge. Correct and sufficient knowledge is the prerequisite for correct decisions. However, there is no guarantee that all knowledge across all fields are introduced in the pre-training phase a result, LLMs may not realize that 49 additional supplies are far beyond the demand for StarCraft II games, or know that shields recharge in the 2s vs_ Isc scenario.
Hallucinations and mistakes. Hallucinations and mistakes have an inevitable impact on the decision- making process. LLM suffers from (1) coput-conflicting hallucinations that generate invalid actions; (2) fact-conflicting hallucinations that mistake ally units for enemy units; and (3) context-conflictnng hallucinations that mistake screen coordinates for minimap coordinates.
Inefficient collaboration. Effective information exchange is critical for multi-agent collaboration. However, LLMs generate communication messages with a lot of non-essential and incorrect informa- tion. At the same time, they tend unconditionally trust their teammates and ignore possible errors in the incoming information, which severely damages the performance in StarCraft II games.
These problems hinder the further application of LLM-based intelligent decision decision-making systems, waiting for further research and solutions. Examples of these problems are provided Appendix
Conclusion
In this paper. we introduce new environment for LLM decision-making the first environment that accommodates the complete continuous PySC2 actions, and the first LLM StarCraft II environ- ment with a multi-agent framework and communication system. In experiments, performance of mainstream LLMs in complete StarCraft II games and both the LLM-SMAC and LLM-PySC2 task groups, among which the LLM-PySC2 task group a brand-new experimental scenario that we designed for large models. Results show that LLMs can make decisions and generate valid actions but cannot make effective decisions consistently. Still, the quality of the decision is relatively low and there are several problems such as hallucinations, poor utilization of knowledge of the game, and lack of understanding of the world. Results indicate that learning in the deployment environment is necessary for LLM--ased decision-making solutions. We hope the LLM--PSSC2 environment can promote research on LLM learning methods, helping LLM-based decision-making methods better adapt to task scenarios.
evaluated the
6
Acknowledgement
We thank the anonymous reviewers for their insightful comments. This work was supported in part by the National Natural Science Foundation of China under Grant 62293510/62293511 The views expressed herein are those of the authors and do not reflect the views of the funding agencies.
10

---

References
[1] Tan, W., Ding, Z., Zhang, W., Li, B., Zhou, B., Yue, J., Xia, H., Jiang, J., Zheng, L., Xu, X., Bi, Y., Gu, P., Wang, X., Karlsson, B. F., An, B.,et al., Lu, Z. Towards General Computer Control: Multimodal Agent for Red Dead Redemption II as a Case Study. In ICLR 2024 Workshop on Large Language Model (LLM) Agents, January 2024.
[2] Xu, Y., Wang, S., Li, P., Luo, F,, Wang, X., Liu, W.,tr al., Liu, Y. Exploring Large Lan- guage Models for Communication Games: An Empirical Study Werewolf. arXiv preprint arXiv:2.09..0rm 0..38,94466,,, 2023.
[3] Qian, C., Liu, W., Liu, H., Chen, N., Dang, Y., J., Yang, C., Chen, W. Su, Y., Cong, X., Xu, eee al., Sun, M. ChatDev: Communicative Agents for Software Development. arXiv preprint arXiv:2307.07924. 2023.
[4] Hua, W., Liu, O., Li, L., Amayuelas, A., Chen, J., Jiang, L., Jin, M., Fan, L., Sun, F., Wang, W., et al., Zhang. Y. Game-Theoreti LLM: Agent Workflow for Negotiation Games. arXiv preprint
2024.
[5] Shao, X., Jiang. W., et Liu, M. SwarmBrain: Embodied Agent for Real-Time Strategy Game StarCraft II via Large Language Models. In arXiv preprint arXiv:2401.17749 2024. URL:
https://arii /ttp:///axvvvvv./////// org abs/2401.17745 17749
[6] Ma, W., Mi, Q., Zeng, Y., Yan, X., Wu, Y., Lin, R., et al., Wang. J. Large Language Models Play StarCraft II: Benchmarks and Chain of Summarization Approach. Advances in Neural Information Processing Systems, volume 37, pages 133386-133442, 2024.
[7] Z. Li, Lu, X. Xu, R. Qi Y. Ni, L. Jiang, al., X. Guo. Hierarchical Expert Prompt for Large- Leree-LanguageeMonn Model: An Approach Defeat Elite Al in TextStarCrafi II for the First Time. arXiv preprint arXiv:2502.
2025.
[8] Xu, X., Li, Z., Lu, C., Qi, R., Ni, Y., Jiang, L., Liu, X., Zhang, X., Fang, Y., Huang, el al., Li, Z. Reflection of Episodes: Learning Play Game from Expert and Self Experiences arXiv preprint arXiv:2502.1 13388, 2025.
[9] Zhu, X., Chen, Y., Tian, H., Tao, C., Su, W., Yang, C.. Huang, G., Li, B., Lu, L., Wang, X., Qiao, Y.,et al, Dai, J. Ghost in the minecraft: Generally capable agents for open-world environments via large language models with text-based knowledge and memory arXiv preprint 1XXi:2335.17114. 2023.
[10] Wang, G., Xie, Y., Jiang, Y., Mandlekar, A., Xiao, C.,et al., Anandkumar, A. Voyager: An open-ended embodied agent with large language models. arXiv preprint arXiv:2305.1629) 2023.
[11] Feng, Y., Wang, Y., et al., Lu, Z. Llama rider: Spurring large language models to explore the open world. arXiv preprint 10.0092, 2023.
[12] Y. Li, S. Liu, Т. Zheng, M. Song. Parallelized Planning-Actinn for Efficient LLM-base Multi-Agent Systems. arXiv preprint arXiv:2503.03550 2025.
[13] Liu, H., Zhu, Y., Kato, K., Tsukahara, A., Kondo, I., et al., Hasegawa, Y. Enhancing the LLM--Based Robot Manipulation Through Human-Roben Collaboration. IEEE Robotics and Automation Letters, 2024.
[14] D. Shah, B. Osiński, S. Levine. LM-Nav: Robotic Navigation with Large Pre- Pre-Trained Models of Language, Vision, and Action. In Conference on Robot Learning, pages 492-504, March 2023.
[15] P. Doma, A. Arab, X. Xiao. LLM-Enhanced Path Planning: Safe and Efficient Autonomous Navigation with Instructional Inputs. arXiv preprint arXiv:2412.02655. 2024.
[16] Jin, Y., Li, D., Shi, J., Hao, P., Sun, F.et al. Fang, B. RobotGPT: Robot Manipulation Learning From Cha IEEE Robotics and Automation Letters, vol. 9, no. 3, pp. 2543-2550, 2024.

---

[17] Dorbala, V. S., Mullen, et al..Manocha, D. Can an Embodied Agent Find Your "Cat- "Cat-Shaped Mug"? LLM-Based Zero-Sho Shot Object Navigation. IEEE Robotics and Automation Letters, vol. 9, no. 5, pp.
2023.
[18] Xiao, Y.. Sun, E., et al., Wang, W. TradingAgents: Multt-Agents LLM Financial Trading Framework. arXiv preprint arXiv:2412.20138, 2024.
[19] Ouyang, K., Liu, Y., Li, S.. Bao, R... et al., Sun, X. Modal-adaptive Knowledge-enhaneed Graph- based Financial Prediction from Monetary Policy Conference Calls with LLM. In Proceedings of the Joint Workshop of the 7th Financial Technology and Natural Language Processing, the 5th Knowledge Discovery from Unstructured Data Financial Services, and the 4th Workshop on Economics and Natural Language Processing, pages 59-69. Association for Computational Linguistics, Torino, Italia, 2024.
[20] Y. Li, S. Wang. H. Ding, H. Chen. Large Language Models in Finance: A Survey. In Proceedings of the Fourth ACM International Conference on Al in Finance, pages 374, November 2023.
[21] Z. Zeng, W. Watson, N. Cho, S. Rahimi, S. Reynolds, et al., M. Veloso. FlowMind: Automatic Workflow Generation with LLMs. In Proceedings of the Fourth ACM International Conference on Al Finance, pages 73 81, November 2023.
[22] J. Xu, W. Du, X. Liu, X. Li. LLM4Workflow: An LLM-Based Automated Workflow Model Generation Tool. In Proceedings of the 39th IEEF/ACM International Conference on Automated Software Engineering, pages 2394-234230 2398, October 2024.
[23] Fan, I.., Wang, G., Jiang, Y., Mandlekar, A., Yang, Y., Zhu, H., Tang, A., Huang, D., et al., Anandkumar, A. MineDojo: Building Open-Ended Embodied Agents with Internet-Scale Knowledge. Advances in Neural Information Processing Systems, vol. 35, pages 18343-18362, 2022.
[24] Park, J. S., O'Brien, J., Cai, C. J., Morris, M. R., et al., Bernstein, M. Generative Agents: Interactive Simulacra of Human Behavior. Proceedings of the 36th Annual ACM Symposium on User Interface Software and Technology, pages 1-22, October 2023.
[25] Sunehag, P., Lever, G., Gruslys, A., Czarnecki, W., Zambaldi, V., Jaderberg. M., Lanctot, M., Sonnerat, N., Leibo, al., Graepel, T. Value-Decomppsition Networks for Cooperative Multi-Agent Learning. In arXiv preprint arXiv: 1706.05266 2017. URL: https://arxiv hrg/abs/1706.
(26) Rashid, T., Samvelyan, M., De Witr, C. S., Farquhar, G., Foerster, et adJJ.,Whiteson S. Mono- tonic Value Function Factorisation for Deep Multi-Agent Reinforcement Learning. Journal of Machine Learning Research, volume 21, number 178, pages 1-51, 2020.
[27] Yu, C., Vclu, A., Vinitsky, E., Gao. J., Wang. Y., Bayen, A,,tt Wu, Y. The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games. In Advances in Neural Information Processing Systems, volume 35, pages 24611-24624 2022.
[28] Vinyals, O., Babuschkin, I., Czarnecki, W., Mathieu, M., Dudzik, A., Chung, J., Choi, D., Powell, R., Ewalds, T., Georgiev, P., Oh, J., Horgan, D., Kroiss, M., Danihelka, I., Huang, A., Sifre, L., Cai, T., Agapiou, J., Jaderberg, M., Vezhnevets, A., Leblond, R., Pohlen, et al., C., Silver, D. Grandmaster Level in StarCraft II Using Multi-Agent Reinforcement Learning.
Nature, vol. 575, no. 7782 pages 350-354, 2019.
[29] DI-star Contributors. DI-star: An Open-source Reinforcement Learning Framework for Star- Craft II. 2021.
[30] Ma, W. Fu, Y., Zhang. Z.. Li, G.,et al. Ghanem, B. VLMs Play StarCraft II: Benchmark and Multimodal Decision Method, arXiv e-prints, arXiv:2503, 2025.
[31] Y Deng, Y Yu, W Ma, Z. Wang, W Zhu, Zhao, Zhang SMAC-Hard: Enabling Mixed Opponent Strategy Script and Self-play SMAC arXiv preprint arXiv:2412.17700, 2024.
12

---

[32] Tang, J., Gao, H., Pan, X., Wang. L., Tan, H., Gao. D., Chen, Y., Chen, X., Lin, Y., Li, Y., Ding. B.. Zhou, J., Wang. al. WWnn, GenSim: A General Social Simulation Platform with Large Language Model Based Agents. arXiv preprint arXiv:241004430/ 2024.
[33] Hua, W., Fan, L.. Li, L., Mei, K., Ji, J., Ge, Y., Hemphill, L., Zhang, Y. War and Peace (WarAgent): Large Language Model-Bil Baaeed Multi-Agent Simulation World Wars. arXiv preprint arXiv:2311.17227 2023.
[34] Gürcan,O. LLM-Augmented agent-Based Modelling for Social Simulations: Challenges and Opportunities. In H!AII 2024: Hybrid Human Al Systems for the Social Good, pages 134-144, 2024.
[35] Vinyals, O., Ewalds, T., Bartunov, S., Georgiev, P., Vezhnevets, A., Yeo, M. Makhzani, A.,
Küttler, H., Agapiou, J., Schrittwieser, J., Quan, J., Gaffney, S., Petersen, S., Simonyan, K., Schaul, T., van Hasselt, H., Silver, D., Lillicrap, T., Calderone, K., Keet, P., Brunasso, A., Lawrence, D., Ekermo, A., Repp, J., et al. Tsing, R. StarCraft II: A New Challenge for Reinforcement Learning. arXiv preprint 17XX:::708.047850 2017.
[36] Blizzard Entertainment. StarCraft II. StarCraft Wiki, [Online]. Available: https://
starcraft. fandom. wttt://wwwoo.wi.o.eeeeeeee wwwi//tarraaaattt..m
[37] Samvelyan, M., Rashid, T,, de Witt, C., Farquhar, G., Nardelli, N., Rudner, T., Hung, C., Tomr P., Foerster, J., et al. Whiteson, S. The StarCraft Multi-Agent Challenge. In arXiv preprint 1404:339 2019. URL: https: //arxi//avivv.a/ org/ abs 1902. 04043
13

---

NeurIPS Paper Checklist
1. Claims
Question:
Do the main claims made in the abstract and introduction accurately reflect the paper's contributions and scope?
Answer: [Yes]
Justification: The main claims presented in the abstract and introduction align precisely with the contributions and scope of the paper.
Guidelines:
The answer NA means that the abstract and introduction do not include the claims made in the paper.
The abstract and/or introduction should clearly state the claims made, including the contributions made the paper and important assumptions and limitations. A No or NA answer to this question will not be perceived well by the reviewers.
The claims made should match theoretical and experimental results, and reflect how much the results can be expected to generalize to other settings.
It is fine to include aspirational goals as motivation as long as is clear that these goals attained by the paper.
2. Limitations
Question:
Does the paper discuss the limitations the work performed by the authors?
Answer: [Yes]
Justification: We discussed both the problems of LLM decision-making in the Discuss section and listed some limitations of our environment supplementary materials Appendix G.
Guidelines:
The answer NA means that the paper has limitation while the answer No means that the paper has limitations, but those are not discussed in the paper.
The authors are encouraged to create separate "Limitations" section in their paper.
The paper should point out any strong assumptions and how robust the results are to violations of these assumptions (e.g., independence assumptions, noiseless settings, model well-specification, asymptotic approximations only holding locally). The authors should reflect on how these assumptions might be violated in practice and what the implications would be.
The authors should reflect the scope of the claims made, e.g., if the approach was only tested on a few datasets or with few runs. In general, empirical results often depend implicit assumptions, which should be articulated.
The authors should reflect the factors that influence the performance of the approach. For example, facial recognition algorithm may perform poorly when image resolution low or images are taken in low lighting. Or speech-to-text system might not be used reliably to provide closed captions for online lectures because it fails to handle technical jargon.
The authors should discuss the computational efficiency the proposed algorithms and how they scale with dataset size.
If applicable, the authors should discuss possible limitations of their approach to address problems of privacy and fairness.
While the authors might fear that complete honesty about limitations might used by reviewers as grounds for rejection, worse outcome might be that reviewers discover limitations that aren't 't acknowledged in the paper. The authors should use their best judgment and recognize that individual actions in favor of transparency play impor- tant role in developing norms that preserve the integrity of the community. Reviewers will be specifically instructed to not penalize honesty concerning limitations.
3. Theory assumptions and prool's
Question: For each theoretical result, does the paper provide the full set of assumptions and complete (and correct) proof?
14

---

Answer:
[NA]
Justification:
The paper does not include theoretical results.
Guidelines:
The answer NA means that the paper does not include theoretical results.
All the theorems, formulas, and proofs in the paper should be numbered and cross- referenced.
All assumptions should be clearly stated or referenced in the statement of any theorems.
The proofs can either appear in the main paper or the supplemental material, but if they appear in the supplemental material, the authors are encouraged to provide a short proof sketch provide intuition.
Inversely, any informal proof provided in the core of the paper should be complemented by formal proofs provided in appendix or supplemental material.
Theorems and Lemmas that the proof relies upon should be properly referenced.
4. Experimental result reproducibility
Does the paper fully disclose all the information needed to reproduce the main ex- perimental results of the paper to the extent that it affects the main claims and/or conclusions of the paper (regardless of whether the code and data are provided or not)?
Question:
Answer: [Yes]
Justification: Our code is available in Anonymous GitHub (link: https:: //noymmunn 4оpen scwssciiiooooee wwweenneeeeeee---......eA PySC2- Anonymous OEOD), and the experiment results men- tioned in the paper can be reproduced by source code.
Guidelines:
The answer NA means that the paper does not include experiments.
If the paper includes experiments, a No answer to this question will not be perceived well by the reviewers: Making the paper reproducible is important, regardless of whether the code and data are provided or not.
If the contribution is dataset and/or model, the authors should describe the steps taken to make their results reproducible or verifiable.
Depending on the contribution, reproducibility can be accomplished in various ways. For example, if the contribution is novel architecture, describing the architecture fully might suffice, or if the contribution a specific model and empirical evaluation, it may be necessary to either make it possible for others to replicate the model with the same dataset, or provide access to the model. In general. releasing code and data is often one good way accomplish this, but reproducibility instructions for how to replicate the results, access to a hosted model (e.g.. in the case of large language model), releasing of a model checkpoint, other means that appropriate to the research performed.
also be provided via detailed
While NeurIPS does not require releasing code, the conference does require all submis- sions to provide some reasonable avenue for reproducibility, which may depend on the nature of the contribution. For example
(a) If the contribution is primarily a new algorithm, the paper should make it clear how to reproduce that algorithm.
(b) the contribution is primarily new model architecture, the paper should describe the architecture clearly and fully.
(c) If the contribution is a new model (e.g., a large language model), then there should either be way to access this model for reproducing the results or way to reproduce the model (e.g., with an open-source dataset or instructions for how to construct the dataset).
(d) We recognize that reprodueibility may be tricky in some cases, in which authors are welcome to describe the particular way they provide for reproducibility. In the case of closed-source models, it may be that access to the model is limited in some way (e.g., to registered users), but it should be possible for other researchers have some path reproducing or verifying the results.
5. Open access to data and code
15

---

reproducible, they Question: Does the paper provide open access to the data and code, with sufficient instruc- tions faithfully reproduce the main experimental results, as described in supplemental material?
Answer: [Yes]
Justification: Our code is available in Anonymous GitHub (link: https://anonymous
4open wcwence/er/iiieeecce Bateerr/LLMMPPSPPP PySC2- -onne/-nnnnmmmu--oaa OEOD), with source code of the environment, quick start script, documents, and other material.
Guidelines:
The answer NA means that paper does not include experiments requiring code.
Please see the NeurlPS code and data submission guidelines (https://nips. cc/
aabblic/guidee/CdeeSSumiisss sotieeauubbmssioooooooory for more details.
While we encourage the release of code and data, we understand that this might not be possible, "No" an acceptable answer. Papers cannot be rejected simply for not including code, unless this is central to the contribution (e.g., for new open-source benchmark).
The instructions should contain the exact command and environment needed to run to reproduce the results. See the NeurIPS code and data submission guidelines (https
/aapss.cc/pullccguuudee
wwssssssiipiyyyss for more details.
The authors should provide instructions on data access and preparation, including how to access the raw data, preprocessed data, intermediate data, and generated data, etc.
The authors should provide scripts to reproduce all experimental results for the new proposed method and baselines. If only subset of experiments should state which ones are omitted from the script and why.
At submission time, to preserve anonymity, the authors should release anonymized versions (if applicable).
Providing as much information as possible in supplemental material (appended to the paper) recommended, but including URLs to data and code permirted.
6. Experimental setting/details
Question: Does the paper specify all the training and test details (e.g., data splits, hyper- parameters, how they were chosen, type of optimizer, etc.) necessary to understand the results?
Answer: [Yes]
Justification: The experiment setup and results mentioned in the Experiment section. More detailed settings and examples of the model's input and output are also listed in the Appendix.
Guidelines:
The answer NA means that the paper does not include experiments.
The experimental setting should be presented in the core of the paper to level of detail that is necessary to appreciate the results and make sense of them.
The full details can be provided either with the code, in appendix, as supplemental material.
7. Experiment statistical significance
Question: Does the paper report error bars suitably and correctly defined or other appropriate information about the statistical significance of the experiments?
Answer: [No]
The two indices (Winning Rate and Kill/Death ratio) involved in our experiment usually do use error bars (1). The winning rate itself is a statistical value, and the raw data of winning and losing are distributed in 1, 0 (i.e. winning/losing). (2) For single game, the KD ratio has the possibility of dividing by zero (i.e. no unit lost). Directly calculating the ratio of each game before calculating the mean and variance may lead to emrors. Therefore, the KD ratio is calculated by dividing the total loss of enemy units of all experiments by the total loss of ours, to avoid the error of dividing by zero.
Justification:
16

---

Guidelines:
The answer NA means that the paper does not include experiments.
The authors should answer "Yes" if the results are accompanied by enror bars, confi- dence intervals, or statistical significance tests, least for the experiments that support the main claims of the paper.
The factors of variability that the error bars capturing should be clearly stated (for example, train/test split, initialization, random drawing of some parameter, or overall
with given experimental conditions).
The method for calculating the error bars should be explained (closed form formula, call to a library function, bootstrap, etc.)
The assumptions made should be given (e.g.. Normally distributed errors).
should be clear whether the eπror bar is the standard deviation or the standard error of the mean.
It is OK to report I-sigma error bars, but should state it. The authors should preferably report a 2-sigma error bar than state that they have 96% CI, if the hypothesis of Normality of errors is not verified.
For asymmetric distributions, the authors should be careful not show in tables figures symmetric error bars that would yield results that are out of range (c.g. negative error rates).
error bars are reported in tables or plots, The authors should explain the text how they were calculated and reference the corresponding figures or tables in the text.
8. Experiments compute resources
Question:
For each experiment, does the paper provide sufficient information on the com- puter resources (type of compute workers, memory, time of execution) needed reproduce the experiments?
Answer: [Yes]
Justification:
We introduced the hardware settings for the environments in Appendix D.
Guidelines:
The answer NA means that the paper does not include experiments.
The paper should indicate the type of compute workers CPU GPU, internal cluster, or cloud provider, including relevant memory and storage.
The paper should provide the amount of compute required for each of the individual experimental runs as well as estimate the total compute.
The paper should disclose whether the full research project required more compute than the experiments reported in the paper (e.g., preliminary or failed experiments that didn't 't make it into the paper).
9. Code of ethics
Question: Does the research conducted the paper conform, in every respect, with the NeurlPS Code of Ethics
Answer: [Yes]
Justification:
We claim the Code of Ethics in Appendix G.
Guidelines:
The answer NA means that the authors have not reviewed the NeurlPS Code of Ethics.
If the authors answer No, they should explain the special circumstances that require a deviation from the Code of Ethics.
The authors should make sure to preserve anonymity (e.g.. there special consid- eration due to laws or regulations in their jurisdiction).
10. Broader impacts
Question: Does the paper discuss both potential positive socictal impacts and negative societal impacts of the work performed?
Answer: [Yes]
17

---

Justification:
We claim the Broader Impacts in Appendix G.
Guidelines:
The answer NA means that there is no societal impact of the work performed.
If the authors answer NA or No. they should explain why their work has no societal impact or why the paper does not address societal impact.
Examples of negatíve societal impacts include potential malicious or unintended uses (e.g., disinformation, generating fake profiles, surveillance), fairness considerations (c.g., deployment of technologies that could make decisions that unfairly impact specific groups), privacy considerations, and security considerations.
The conference expects that many papers will be foundational research and not tied to particular applications, let alone deployments. However, if there is direct path to any negative applications, the authors should point it out. For example, it is legitimate point that improvement in the quality of generative models could be used to generate deepfakes for disinformation. On the other hand, it is not needed to point out that a generic algorithm for optimizing neural networks could enable people train models that generate Deepfakes faster.
The authors should consider possible harms that could arise when the technology is being used as intended and functioning correctly, harms that could arise when the technology is being used as intended but gives incorrect results, and harms following from (intentional or unintentional) misuse of the technology.
If there are negative societal impacts, the authors could also discuss possible mitigation strategies (e.g., gated release of models, providing defenses in addition attacks, mechanisms for monitoring misuse, mechanisms to monitor how system learns from feedback over time, improving the efficiency and accessibility of ML).
11. Safeguards
Does the paper deseribe safeguards that have been put in place for responsible release of data or models that have a high risk for misuse (e.g., pretrained language models, image generators, or scraped datasets)?
Question:
Answer: [NA]
Justification: Our works developed the former RL environment into LLM decision- making environment, all the experiments dealt within the StarCraft II game. We do not release new model, dataset or image generators that may lead misuse.
Guidelines:
The answer NA means that the paper poses such risks.
Released models that have high risk for misuse or dual-uss should be released with necessary safeguards to allow for controlled use of the model, for example by requiring that users adhere to usage guidelines or restrictions to access the model or implementing safety filters.
Datasets that have been scraped from the Internet could pose safety risks. The authors should describe how they avoided releasing unsafe images.
We recognize that providing effective safeguards is challenging, and many papers do not require this, but we encourage authors to take this into account and make best faith effort.
12. Licenses for existing assets
Question: Are the creators or original owners of assets (e.g., code, data, models), used in the paper. properly credited and are the license and terms of use explicitly mentioned and properly respected?
Answer: [Yes]
Justification:
We provide citations and source links for existing assets.
Guidelines:
The answer NA means that the paper does not use existing assets.
The authors should cite the original paper that produced the code package dataset.
18

---

The authors should state which version of the asset is used and, if possible, include URL.
The name of the license (e.g., CC-BY 4.0) should be included for each asset.
For scraped data from a particular source (e.g.. website), the copyright and terms of service of that source should be provided.
If assets are released, the license, copyright information, and terms of use in the package should be provided. For popular datasets, paperssi thcode com/ datasets has curated licenses for some datasets. Their licensing guide can help determine the license of dataset.
For existing datasets that re-packaged, both the original license and the license of the derived asset (if it has changed) should provided.
If this information is not available online, the authors are encouraged to reach out to the asset's creators.
13. New assets
Question: Are new assets introduced in the paper well documented and is the documentation provided alongside the assets?
Answer: [Yes]
Justification: We introduced LLM-PySC2, enviromment with complete pysc2 action space. All the assets (such as game maps) are already released Anonymous GitHub (link: https://anonymouss 4open. www.e..seieeeeee............e.ee www.scicceee/LM-P/SSOCCO Awte://onoommmoooonmm
Guidelines:
The answer NA means that the paper does not release new assets.
Researchers should communicate the details the dataset/code/model as part of their submissions via structured templates. This includes details about training, license, limitations, etc.
The paper should discuss whether and how consent was obtained from people whose asset used.
At submission time, remember to anonymize your assets (if applicable). You can either create anonymized URL or include an anonymized zip file.
14. Crowdsourcing and research with human subjects
Question: For crowdsourcing experiments and research with human subjects, does the paper include the full text of instructions given participants and screenshots, if applicable, as well as details about compensation (if any)?
Answer: [NA]
Justification:
The paper does not involve crowdsoureing nor research with human subjects.
Guidelines:
The answer NA means that the paper does not involve crowdsourcing nor research with human subjects.
Including this information the supplemental material is fine, but if the main contribu- tion of the paper involves human subjects, then much detail as possible should be included the main paper.
According to the NeurIPS Code of Ethics, workers involved in data collection, curation, other labor should be paid at least the minimum wage in the country of the data collector.
15. Institutional review board (IRB) approvals or equivalent for research with human subjects
Question: Does the paper describe potential risks incurred by study participants, whether such risks were disclosed to the subjects, and whether Institutional Review Board (IRB) approvals (or equivalent approval/review based on the requirements of your country or institution) were obtained?
Answer: [NA]
Justification: The paper does not involve crowdsoureing nor research with human subjects.
19

---

Guidelines:
The answer NA means that the paper does not involve crowdsourcing nor research with
human subjects.
Depending on the country in which research is conducted, IRB approval (or equivalent)
may be required for any human subjects research. If you obtained IRB approval, you should clearly state this in the paper.
We recognize that the procedures for this may vary significantly between institutions and locations, and expect authors to adhere to the NeurIPS Code of Ethics and the guidelines for their institution.
For initial submissions, do not include any information that would break anonymity (if applicable), such as the institution conducting the review.
16. Declaration of LLM usage
Question: Does the paper describe the usage of LLMs if it is important, original, or non-standard component of the core methods this research? Note that the LLM used only for writing, editing, or formatting purposes and does not impact the core methodology. scientific rigorousness, or originality of the research, declaration is not required.
Answer: [Yes]
Justification: This paper introduces LLM decision decision-making environment and evaluates the performance some LLMs in it.
Guidelines:
The answer NA means that the core method development in this research does not involve LLMs as any important, original, or non standardd components.
Please refer to our LLM policy for what should or should not be described.
20

---

Appendix A. Pseudo Code
A.1 LLM-PySC2 Rollout Process
Algorithm LLM- Rollout Process
Require:
Map name. Max waiting time T for a step. Profiles for each agent, with model-name, api-key, api-url for remote LLMs.
Initialize environment Env Initialize player with its agents according to the profile Initialize LLM client for agents while not Env.is terminated() do
Add the tags of new units relevant agent's 's data cache
Remove the tags of dead units from relevant agent's data cache while current step waiting time max waiting time do time.slee((0.055)
if any agent is waiting for querying remote LLMs then
Collect observations for these agents and wrap the observation into text form Generate independent threads and query remote LLMs in the threads end if
if all agents have already got responses then for in agents' indexes do Recognize text actions and generate pysc2 actions into agent i's data cache Recognize communication messages and send to assigned agents Move camera the agent's unit team, execute generated pysc2 actions end for end if end while
num_step +=
end while
Store the final state and the game resuul(win/draw/llse))
A.2 Query Process for an Agent
Algorithm 2 Query Process for an Agent
Require: Max retry times n, max waiting time T' for query.
Generate OpenAl message using collected image observation and information
current retry time i =
while m do
Reset current waiting time & to Initialize an independent thread and query remote LLM in the thread while T' do
(000p)00sep += 0.05s
response received successfully then
Recognize valid actions and generate pysc2 functions for the agent Break the query process.
end if end while
waiting for 2' seconds avoid remote service error ++
end while
return default action if no valid response received
21

---

Appendix B. Action Space
Table Bl: Default Protoss Action Space, Basic Actions
Unit
Text action
pysc2 functions (id. function, args)
All unit
<No_ So_oprrtiion()>
(0, Eno_op. Q)
Holld_ Position()>>>>
(274, FHoolPosition_qqiick ("queued'))
<ove Screen(screen)>
(331, F.Move seree___eenn,e ('queued', 'screen"))
<Move__Me Miioe_Minnimmpmmmnmmpp>>>
(332, ZeMove_minimae ('queued', 'minimap')
(3, Esclect_rect, ('select', 'screenI_tag',
"trrennn_t"""sccccen_tttggg 'screen2_tag"))
(331, F.Move F.Movesscreen, ('now", 'screen"))
<Select_ Move Minnnnattinatttinnnnapp
(3, F.slect__ectt ('select', 'screenI_tee tag". "screen tag'))
(332, F.Movemminine (a C'queued', 'minimap'))
Attackable
-AAtackkUnitttaggg
(12, F.Attackssereen, ('queued', 'screen_tag"))
<Select_ Unit(tag, tag)>
(3, Eselect_rect, ('select', 'screenl_ 'screen2 tag"))
(12, AAttacksscreen, (" ('queued', 'screen_tag')
Most units share the actions above, so we listed here to avoid mention repetitive unit control actions in subsequent appendices. Here, F' refers to pysc2. lib wtw.e..ib..ctttoo FU the same in the following.
Table B2: Default Protoss Action Space, Standard Building Actions
Unit
Text action
pysc2 functions (id, function, args)
Probe
<Ruild_Newse Nee.NeusxxNNattageg
(573, Fllm_pysc2_mme ses__move___mmeene (world_tag')
(65, Bacill_Nexxsssssseeeee ('queued', screen__tag")
<Build Assimilaor,,,,too, Near(tag)>
(573, F.llm, Feelll_pssc___________e______ pysc2_move llr___ove__caaaee catieee__erra,,eaaaa "world_tag""
(40, F.Build_Assimilattor__
('queued', 'screen_tag')
<Build_Nexus___
(65, BeBBuild_eexx__ee__
('queued', 'screen_tag")
(40, F.B.ullddAssiimmn somulld_Assimmlltorsscennn (' ('queued', 'screen_tag")
<Build Pylon Screen(screen)>
(70, F.Build Pylon_screen, screen, (' ('queued', 'screen'))
<Ruild <Build_Gatewarr Screen(screen)>
(57, F.Build F.Buildd_atteaayyseeee
('queued', 'screen') ))
<Build C
(48, F.Build CyberneticsCore_eeeeee scrreen ('queued', 'screen') '))
(55, (Build_Forre_sereee ('queued', 'screen'))
<Build PhotonCCnoonnnnnnn Screen(screen)>
(69, F.Build PhotonCannon screen, ('queued', 'screen'))
<Build ShhieddBattery_Screeeeeeeee
(525, F.Build Bhaaild_ShheldBBattryyyeee ('queued', 'screen')
(101, F_BBuud_TTvllghhCConniissscs ('queued", 'screen '))
(100, SBuuld_TTemllrrArcciveeeeep haterrrArrrrieeeecccennne ('queued', 'screen )))
<Build Baaulld_DarShhiine_.. (ernShrine_Seeeensseeee)>>>>
(49, Baalll_DDrShriieeeeeem screeees__eeeeeeeeeeeeeeeeeeeeee ('queeedd""sscrree)e))) ))
<Build Stargate Screen(screen)>
(88, F.Build Stargate Stargate_screenn, screen, ('queued', 'screen')
(54, Saaailld_FeetBBacoon_ssss screen, ('queued', 'screen')
<uild Robotics_o RoboticsBay_SScreeffeeeen)
Screen(screen)>
(81. F.Build Bowtttoooooooosseeeeeeeeeeeeeeee
('queued', 'screen')
<B
<Build_Rood hee__oooisFaallltyySeeeeeee Sercen(seceenn))>>>>>
(82, F.Build BBbuild_Robottisaaccllll sereen, ('queued', 'screen'))
Lock Nexus Near(tag)>
(70. F.Buiid Pylon screen. (" ('queued', 'screen (ag")
<lock <l.ock_Assimin Assimilator_ Desimilltor_Near(tgg>>)>
(40. F. Aosilld_Asimmllttorroooo (' ('queued', 'screen_tag"
In standard building mode, worker will be chosen as building- at the beginning of the game or the time the worker dead. The 'Builder' agent will control the worker to build buildings using the actions mentioned above.
22

---

Table B3: Default Protoss Action Space, Building Actions (easy model, for Builder)
Unit
Text action
pysc2 functions (id. function, args)
Probe
Nexus Near(tag)))))
(573, F.llm_pyse2_m____ gatsse2mmve__ammaae caareeea_arr,,, ('world_tag")
(65, F.Build_Ncxus_serrcn ( ('queued', "scroen_.ag'))
(573,
("world_tag"))
(40, F.Build F.Build_Assmmllttoosseeeeee ('queued", "screen_tag")
<Build <Build_Pylon Splon_Near(tag))
(70, F.Build BBBbuild_PPlonsscreeeeee screen, ('queued", "screen_tage" (agp__aag))))
<Build_ Gatteaaaaaaaaaataaaaaa
(57, [BBuild_Gaatewwayyseeeen ('queued', "sereen_tag"))
<Build CyberettiesCore_ Near(tag)> Nearttt
(48, F.Buildd CybereetCyyeeeeeccCoore screeen ('queued", "scree__tag")
<Build_ Souild_Forge_aaaa (onge_Ner((tag>>>
(55, F.Buiid__Forgee
('queued', "asooued""scrreen_taa" 'screen_tag"))
<Build PhotonCamnon Near(tag)>
(69, F.Build PhotonCamnon screen, ("queued", "screen_ (agg)_aag))))
_eir__ShllBBattr__eeeeeeeee Near(tag)>
(525, F.Build Batpaldd_ShicclBBattteyyyeeee
("queued', 'screen_taae (agn___agg))
<Build <Build_ hwwdd//liiiiCoooiiieeeeeoee NNar((tag)>>>>>>>>
(101, F.Bu.lBidddii... Btgpalldd_WwliggghCooeiiiisc..
("queued', "screen_tag" (ag')
<Build CemplarrArhhiv__Neattg>>>>>>>>>>
Near(tag)>
(100, F.Build TemplarArchive screen, ('queued', 'screen, tag') )
<Build DarkShrine N
(49, F.Buldd DarkShrine screenn ('queued',
<Build ShuulddSttrgat_____ -trratte_Ner((tag>>>>>>>>>>>>>
(88, F.Build F.Builld_Staraateeeee. screen, C ('queued', 'screen_tagg (aa"))
Build__FectBaccoo_Neattte
(54, FiFFBBid__Fcccccooosseeeeeee
('queued', 'screen_tag')
<Build RoboticsBay Near(tag)>
(81, F.Bulld RoboticsBay screen, ('queued', 'screen "screen_tag"))
<Bild RohoticsFacclity_NNeite
(82,
SlobetiesFaciiittysereeee ('queued', screen_tag'))
<ook Nexus Near(ta)))())
(70, F.Build Pylon Pylon_screen, screen, ''queue'', 'screen tag')
<lock Booo__sssmllattrNNaaatoot Nccrtttg
(40, FRaildd_ssimillttooeeeennn ('queued', "screen_tag")
In easy-build mode-1, the agent 'Builder' does not need to provide precision position. but tag of nearby buildings. The LLM-PySC2 program will autonomously find a position near the unit with given tag and build new buildings there.
Table B4: Default Protoss Action Space, Building Actions (easy mode2, for Developer)
Unit
Text action
pysc2 functions (id, function, args)
Probe
(Build_Nexus))
(65, (Build_Nexus___e scrren, ('queued', "aaeeddd""aauur 'autoo))
<Build Assimilator()>
(40, F.Build Assimilator
Assimilatorrsccreen, screen, (' ('queued', 'auto")
<Build_Pylom
(70, F.Build_Pylon_eeed screen, ('queued", 'auto'))
<Build SBuiddGGatewayOD
(57, F.B.ild B17FF.uild_Gattewayaaoo
('queued', 'auto"))
<Build_ Sailll__yybemetesCoree>>
(48, SeaaiiddCyyymeetsscoreeeeeo Cerrssreccccrressseeeeen ('queued", 'auto'))
<Build Forge(>>
(55, F.Buldd Borgeelllooooeee_eeeeeeee screen, ('queued', 'auto'))
<Build Ghaild_PhotomCCanonfy
(69, Saaaaldd_PhottnCCnnon_noo
('queued', 'auto'))
(Build_ShicldBatterrr))
(525, F.BuiildSShiedBBttttteeeeeee ( ('queued', 'auto"))
<Build TwilighiCouncil0>
(101, F.Build TWlightCCunil screen, ( ('queued', 'auto"))
<Build Bouidd_TemplaAArchhivee
(100, Tenplllleemmlarrcciiieeeeeee screen, ('queued", 'auto'))
<Build DarkShrine()>
(49,
screen, ('queued', 'auto'))
"Build_Sturgate(>>
(88, F.Build_Stargate__erenn (oaronnnncquue ('queued', 'auto"))
<Build FleetBeacon()>
(54, F.Build Beetldeeeeeeeeeeeeeeeee screen, ('queued', 'auto'))
<Build RoboticsBay(>>
(81, F.Build_Reeee Baailll_RoootieBBayeeeeo screen, ('queued', 'auto'))
<Build RoboticsFacilit(0>
(82, F.Build Roboilllooottiaalllliy screen, ('queued', 'auto"))
In easy-build mode-2, the agent 'Builder' does not need to provide any additional information of where build the building. the program will automatically find a position for above actions. Experiments of ECEB mode and SCEB mode use these actions as the Developer's building actions.
23

---

Table B5: Default Protoss Action Space, Researching Actions
Text action
pysc2 functions (id, function, args)
<Research <Research_ProoossAiirri ProtossAirArmoor>>
(381, F.Research F ProtossAAirAmmor__quie ("queued"))
(385, Baaeeech__WaaCattte__eee ("queued"))
("queued"))
<Research >aarhcet((/()>))>>>>>
(428, F.Research_
<Research_ ProtosSrroundAmmoor>>>>>>
(389, F.Research_ Paassarck_PooosGGroundAmmoooooo quick, ("queued"))
<Research ProtosCrroundWeapons>>>>>>>>>>>>
(393, F.Research R wrw.ooosrrrrronddeeeoooosnoomooo
("queued"))
<Rescarch_ )
(397, Peesearch_ProoossShieeddd
("queued")
<Research Charge()>
(359, F.Research CeeeserrchCChage_eeeeee Charge_quick, ("queued"))
<Research Blinhchhh>Binh(>>>>>
(356, (Research_Blinde _link_quickk, (" ("queued"))
<Research AdepuResonaiinngllvee>>>>>
(351, F.Research AdepplessonatinnCCaaies quick. ("queued"))
Research PhoenixAnionPPa Anoaanaaeeoeeeeetaaaa>>>>>>
(379, F.Research Saneaacch_hheeeii---ttoonnlllll
quick, ("queued"))
Reseaachh Extended/Termmalaanc///
(364, F.Research F Extended/heemmllLanee Laneereeeeeaaaaaeeeeeeeiee ("queued"))
Research GrasiticBooster(>>>
(366, F. E.Research GraviticBooster _ucirrgguu__uuue ('queued")
<eeeaarch Draviti<Drive()>
(367, F. F.Research GraviticDrive QuuiuuiiDDiieeuuuukkkk ('queued"))
<Research Ressearch_PxSStorm// PsiStorm()>
(401, Basrarchh_sSStommm_m_
( ('queued"))
<Rseearch_Sheeee ShanrchhSShadooSStk((>>>>>>>>>>>
(404, F. Resseachh_ShadowSSriiee
(" ("queued"))
Researching actions are actually complex actions of combination pysc2 functions, they require first selecting research building and then starting idle building for these functions, select the building and execute the pysc2 functions for technology upgrades.
the research. The program will autonomously find
Table B6: Default Protoss Action Space, Unit Training Actions
Unit
Text action
pysc2 functions (id, function, args)
Nexus
Mothership(> <
<Train
(541, F.Train Marrrin_MMMthhshhpp.pege quiiiippppukkkueeeee ('queued'))
Gateway
Train_Adept(>>
(457, F.rrain_Adept_qqiik (' ('queued'))
Train DarkTemplar()>
(465, F.Train Dww.Tammlarrguuuiiii ('queued"))
<Train HighTemplar(>
(471, F.TTrin__Higheemppnei
('queued"))
<Train_Sentryle
(491, www.aiiinSnttrr_ggiiiien ('queued"))
<Trai__Stalkere
(493, F.Train F.Train_Stalkker_quide ("queued"))
<Train Zealoo_Zelot)>
(503, Ftw.Faainnnealloo_uiiee.e ("queued"))
Stargate
Train Oracle(>
(482, E.raii tracle_quicke ('queued')
Train "rrainPPhenix(>>>>
(484, Litrran_Phhenix_giiie ('queued')
< Train_ VoidRa(>
(500, CeTTrainnVidRayyooo
('queued') ))
< <Train "rainnTempes((>>> <Train_Carrien(>
(495, F.Train_Temppstttttcteeeeeee quick, ( ('queeed') )
(461, F.Train_Carrier_quueee ( 'queeed')) ))
RoboticBay
<Train_ <Trai__Obeereee Observer()>
(481, STraiinObserve_eguue ('queued'))
<Train WarpPrism(>>
(501, F.Train Barrrii_aarpPPiimmmmmmm -uicks,m_guuuuuuua-e-e ('queued") ))
"raiin]Immotta()>>
(473, F.Train_lmmotaal_a ('queued')
(462, F.Train Saaiin__oolsssu__uiiee ('queued"))
Dirru_DDsruptor(>>>>
(466, F.Train E.Train_Disuppor_guuick ('queued'))
Unit training actions share the same pre-process of researching actions. avoid stocking a lot of resources in the training queue, the program only trains units in idle buildings. To avoid spending too many tokens on finding suitable buildings, the program autonomously searches idle buildings for these actions.

---

Table B7: Default Protoss Action Space, Unit Warp Actions and Warp Actions in easy mode
Unit
Text action
pysc2 functions (id, function, args)
WarpGate
(8, Fsslect_warp__attee ('select")
(573, Fillm_pxx22_move_ammeee ('world_tag'))
(505, FrhriinaarpAddeep_eeeea ('queued', 'screen_tag')
<Wapp BaaarKTTmmaaaaaaa(eeeA
(8, F ("select')
(573, F.llm_pyse2_______1_pee1_____ _t_____oe______________eee_ move_ccmera,, ('world_tag')
(506,
('queued", 'screen_tag')
<Warp HieeTeghhhhheeeeaaaieeie
(8, F.selett_ warp_ gates, ('select")
(573, Bww___sss__m____a___ ( ('world_tag")
(507, F.TrainWarp HighTemplar screen, ("queued", 'screen (scree__tag") tag"))
WWarp_Sentr__eeartre
(8, F.selett_ warp_gates, ('select')
(573, F.llllllly....... F_llm__yse__mm___ gysc2__ove__camee
(world_tag'))
(505, F.TrainWarp.. Sentry_screen, screen, ('queued', 'screen [ag'))
<Wapp Stalker Near(tag)>
(8, F.select_ warp gates, ('select")
waarp
(573, F.lm (allm_pys22_mm_ mane___ave_cammrra, ('world (eddd_tag)))
(506, "TTrainWar_SStalker_ss
("queued", 'screen_tag")
<arp Zealot Near(tag)>
(8, F.select__... seseeeet_warpp___.. gates, ('select')
(573, F.llm httpyys__moveeaaaaeeee ('world_tag")
(507, F.rraiaaarppppp.p....ppppp Zealotz screen, ('queued', (arreenlaag))
WarpGate
<Warp Zealot()>
(510, F.rraiWaarp Zealot screen, ('queued', 'auto'))
<Warp_ Stalker()
(509, SeaiilWWWWaSStller__eee
("queued", 'autto"""" ))
(508, SeTrrinWWarpSSetrry.rr
('queued', 'auto"))
<Warp_Adept(>>
(505, @eTrainWarr_AAeppt_ss
('queued', 'auto"))
<Warp_ HighTemphatt<sreeu)>>>>>>>
(507, F.TrainWarp Hiihherpll screen, ('queued', 'auto'))
"WaapDDakTTempllammmmimaaa)
(506, F.TrainWarp Parkkeeplar_scaae secmppar_screen, screen, ('queued', 'auto")
For protoss, some of the unit training actions will change to unit warpping actions after WarpGate technology upgrades. They need choose tag for power field provider (such as Pylon) to warp unit there. In aasy-warp mode, the program will autonomously find valid position for unit warping actions.
Table B8: Default Protoss Action Space, Easy Control Actions
Text action
pysc2 functions (id, function, args)
<AIl_ [ttac__Attck(>>>>
(13, -Attaakkminimap. ("auto"))
<All Units Defend()
(331, E.Move_screen, ('queued', 'auto"))
<All Units Retreat))
(331, F.Move_screen, ("now', 'auto"))
Worker_Scan()>
(332, F.Move_minimap. ('queued', 'auto') ))
Zealot_Sean()>
(332, E.Moe_minimap. ('queued", 'auto'))
<ccep__Sca((>>>>>>
(332, T.Move_mmninne ('queued", 'auto'))
<Pheonix ScroonixSScann>>>>
(332, F.Move_minimap, ('qucued", 'auto')) ))
<Oracle Scanc)
(332, F.Move_ ahlove_minimap.. ('queued', 'auto') ))
<Observer_Scan()>
(332, F.Move_minimap. ('queued', 'auto') ))
We provide easy control actions, series of actions similar to TextStarCraft-II unit control actions.
For researchers who focus on studying LLM-based planning (develop the economy) or VLM- based decision mpkcneyyy build buildings), simplifying unit control actions can provide great convenience.
25

---

Table B9: Default Protoss Action Space, Unit Skills (Part1, control a unit team)
Unit
Text action
pysc2 functions (id, function, args)
Adept
Abiiity_A minimap)>
(547,
('now', 'minimap"))
(177, Fifffec__ddeeePhsseShiiittcce ( ('now', 'screen"))
CAbiltt_CancelPaasSSii
(141, Quu ("now")
Stalker
Biniity_BBink_Scrrnn(ereeen
(180, F.Effffct_Biink_scrceeee "scren"""r""""
Sentry
<oreFii_ForceFieldd Screen(<creen)>
(193, FEffect ForeFell screen, ('queued', 'screen')) ))
Abiltty_GurrdaanShiild>>>>>>>>>>
(197, -FffeettGGuuddinnShhiiidggguuuue ("queued'))
HighTeplar
<Abilit_PsiStomm_Sen ScrSSoom__(reen((sceee))>>>>
(218, FEffiect_SiStommssreeees scceee, ("queued", "sseeue"""ssrren""" '))
SeiliityPsiStomm Attack Uni((tag)>
(218, Piitoor
PsiStorm screen, ("queued', "screen tag
<Morph_Arehemn
(296, Saanph_Arrcho__qiiae ("queued'))
<Select_ Cinaut__Tw__nitss Units Morph Archon( (rcho_
(3, Fsselcttrect, ('select', 'screen I_tag,, 'screen2_tag"
tag, tag)>
(3, Eselect_rect, ('select', "screenI_tagl" 'screen2_tag2")
(296, MaMMorph_Arhhor quick, ('queued"))
DarkTeplar
Shadow-Strid__nniitee
(182,
('queued', 'screen_tag')
<Mrrph Archon()>
(296, F.Morph Archon quick. ('queued"))
Observer
Sureppu-SSrilllaeeMMde>>>>>>>
(538, F.Morph Sureeaalllllllaaeedeeeee... -uiidd__gukkk, ('queued'))
<oorph_ObeerreMooob>>>>>>>>>>>>>
(535, FMaepptt.bbssreeModddiiiiii, ('queued'))
Disruptor
<Ability PurificationNova Atack((agg>> Attckti)
(219, Btt.eeeeee PurificaaionNova. screen, screnn,
('queued', "screen_tag" ))
Oracle
(38, F.Behavior_PularrBeecce www.aaaaaaanonnguuueee ("queued'))
<Ability OracleRevelation Oracleeevelaiioonneeeeeeoon Screensccenerrnnerrneee)>>>
(214, F.fffect OracleRevelation screen,
('queued', ; 'screen') ))
<Build_Shane
(90, Staniddssssssrpppp...
('queued", 'sereen'))
Pheoenix
<Ability_ GravitnBen>i
(196, F.Effect GravitoBBaa screen
<Cancel_ Lttaa/Giooooaaa_oooAAAaa
(140, FCCance__quick, ("now'))
WarpPrism
<Morph_WWor Warppaaaaaassssm/hsnssgooeeee
(329, MarooppilaapisssnP/ssiiMooddddd quick, ('queued'))
<Load [ni([[ag)))>>>>>>>))))))()}{))
(287, F.Load screen, ('queued', 'screen tag')
<Unload_ [Uhnoad__Sercem(<rreen)
(516, FUnleadAllAt_screen ('queued', 'screen')) "))
(330, F.Morph_ooaaaaee WappPissTTrassprrMoode..uu
('queued'))
MotherShip WarperTreeWWaattteeeeeeeee
(241, F.Effect_Timee Tare-Tiieeeeseeeee ('queued', 'screen_tag")
A T Screen(<creen)>
(241, F.Effect_ Timeeer__eeeeeeeeeee screen, ('queued', 'screen'))
In LLM-PySC2 environment, agent controls its unit in a group, using above actions. The program will select the units belong to the agent, and then execute LLMMggnerrted actions.
In senerios, precisely controlling single unit is key the victory, especially in SMAC tasks and early stage of the game (against high level opponent). We provide single unit control actions for this senarios, and LLM can use the actions whenever they need improve performance of micro-operations.
26

---

Table B10: Default Protoss Action Space, Unit Skills (Part2, control specific unit)
Unit
Text action
pysc2 functions (id, function, args)
Adept
(3, Eselect_rect, ('select', 'screenI_tag',
'screen2_tag')
Minimap(mininap>>
(547, htw.-AddeePhaaSSiiitiiiiii ("now', 'minimap"))
(3, Eseloct_rect, ('select', 'screen L_tee, "screen2_tag")
Screen(screen)>
(177, FiBffee_AddepPPhsshhhit..tt.e
('now", 'screen')
USeleet_Unit_bbipp CancelPhaseShift( Chih
(3, Fselect_rect, ('sclect', 'screen __tag, "screen2_tag")
lag)>
(141, F.Caneel Adepaeell, quick, ("now"))
Stalker
SSlecttUnit Beaect__nitBBllkk___ Bww.BBiiinSkSneeeee screen)>
(3, Exelect_rect, ('select', 'screenl_tag" 'screen2_tag")
(180, FEEffect_Blink_eeeee ('now", 'screen"))
Sentry
<Select_ Unit Unit_Ability ForceFild Screen(
(3, Fselect_ ('select', 'screen I Iag', ; 'screen2_jag tag'))
tag, screen)>
(193, Sifffec_FoocccFied_seeeeee ('queued', 'screen '))
<Select_ A lag)>
(3, Fselect_rect, ('select', 'screenl_tag" 'screen2_tag"))
(197, F.Effeet Sui quickashhhiiiiuikkkkkkkkaaa ('queued'))
HighTeplar
<Select_Two, Loritunnttttho__urooete tag. tag)>
(3, Eselect_reet, ('selett',, |screen parreen__tag' 'scrcen2_tag')
(3, Fselect_rect, ('add", "screen]_tag2" (screen2_tag2]
(296, F.Morph Aaeepph_rrrhon.... fercchongqicck,,. ("queued"))
<Select Unit Ability PsiStorm Screen
(3, Fselect_ ('select', 'screen tag'. "screen2_
(tag, screen)>
(218, E.EffecttPPiSttome PsiSttommsscreeeeeeeee _sreeen, ('queued', 'screen' '))
<Select_ Linet__nitt__ae Psittity_siSttommm__oo Unit( (3, Fselect_rect, ('select', 'screenI_tag" 'screen2_tag"
(tag, tag)>
(218, PsiStorm screen, ('queued', 'screen tag'))
Disruptor
<Select_Umg Aiii_AAblity_uuffcatiionn
(3, Fssllct_rect, ('add', 'screenl_tag2", t
Attack(tag)>
(219,
(qqeeeed, 'screen (ageee___gg))___
DarkTeplar <Select_Two, tag. tag)>
(3, Eselect_rect, ('select', 'screen 1 I_tag', 'screen2_tag"
(3, Fselect_rect, ('add", 'screen]_tag]2 "screen2_ tag2")
(296, L.Morpp_Archan quick, ("queued'))
Oracle
(3, Esselet_reet, ('select', perrennl_tag" (ecree2__tag))
(38, F.Behavior Putiriioo_PPsaarBaaaOhh Suriiinng_uukk__ee ('queued'))
<Select_Unii OeiiieeeeeeeaattinnSSooo Screeen((_Seee( screen)>
(3, "Fselectrrect ('select', 'screen I 1ateen "rreen2_tag"")
(214, F.Effect OracleRevelation screen.
'qqueed', 'screen') ))
SSelect_Unit_Bel BuiiiBBiild-StttiiSTappSSCSe lag, screen)>
(3, Eselect_rect, ('sclect', 'screenI_tag" 'screen2_tag")
(90, F.Build StasisTrap screen, ('queued', 'screen')
Pheoenix
<Select_ Dhbemix_bbliit-Grvviiio Unit((ag)
(3, Eselect_rect ('select', 'screen I I_tg',, (creen2_tag'))
(196, F.Effect_ Baarree___GriiiBBBamseerere
('queued', 'screen (ag2"))
<CCanel GravitonBeam For Phoenix(tag)>
(3, F.selett_ rect, ('select', 'screenl_tag" (areen2_tagg))
(140, ECancel_ quick, ("now'))
27

---

Appendix C. Query message, Prompt, Examples of Observations and Responses
C1. Query message and Prompt
LLM Query Message
messages = [
("role": "system", "content": system ;
("role": "user", "content": example prompt).
("role"; "assistant", "content": example prompt),
("role": "user", "content": text observation),
LLM Query Message with image observation
messages =
("role": "system", "content": system_preee :estem__romp).....
I"role": "user", "content": example prompt).
("role": "assistant", "content": example_o __tpl______mp)....
("role": "user", "content":
("type": "text", "text": ITThi the {img namel image:),
("lype": "image iimage_url, "image_uri" url":
("url": (aantiimaee/iggbbbooo.....tts
images[ing namel]]"||
("rote": "user", "content":
("lype: "lext", "text"; l'This the fimg_name2) image:"), ("lype": "image url", "image
"image_url"; url":
("url": faatsiimagee/ngghasss....,.
imagesfing namc
B
("role"; "user", "content": : Text_eeeeeeeeeeeeeeeeeeeeeeeeeee observation).
System Prompt
1.Identity
You www..coonig.GGENNS/aggeg. [aattttammmmcdddrbb[]]]]
Your should command your units, complete the tasks assigned by the superior agent. You may have several teams of units, you command these teams to fight logether perform different tasks.
2.Rules
(get rules(agent name)}
3.Action Oulpul
You should make decisions according to observed information, lactic task and rules, give analysis and decisions for each team. For example, if you have 2 teams name as "TcamName-1 and "TcamName-2", you should output as:
Analysis:
XXXXX
Actions:
Team Team-ame-l:
ActionnNamoll or -ActionNamel(-- are invalid format, must use <AAttioNaame2(..>>
AAcctioNamml((..pp
Team TeamName-2:
<AActioNamell.... (...)
Note that actions must in the shape <Actioonnnnnamee.....,. not generate action like 'ActionNamo(..)) ** *ActionNamee(..'**.
Figure Cl: OpenAl LLM query message and system prompt in LLM-PySC2.
28

---

Decision Rules of the System Prompt
BASIC COMMAND RULES
Analyse following aspect in your decision process:
1. (Combat Deployment) Analyse the situation, always make deployment for attack/defend retreaa each step. As default choice, ask your units defend your you have enough units, rise attack to defeat your enemy.
2. (Scan Deployment) you prepared for combat, make sean deployment find out enemy's strengths. Note that unit for will be killed by enemy units.
3. (Final Combat) If game time 12:00 and you have enough units (DO NOT have to be 200 supply), raise attack to defeat enemy."
BASIC DEVELOP RULES 1..
Analyse following aspect in your decision process:
1. (Supply) If run out of supply (less than 10) and no building for supply under construction, build
(depend on your race).
2. (Economy Building: Base) If you have enough minerals (more than 400), build
Nexus/Hate TTaachery/CoommanCCC
(depend on your race).
3. (Economy Building: Gas) If you run out of gas (much less than minerals), build
hatiaattrr/xxttttoooo Refinery (depend on your race).
4. (Building: Unit Training) If you have too less unit training buildings, or there are abundant
resources but all the unit training buildings are working, build unit training buildings.
5. (Building: Research) If you have too less research buildings, there are abundant resourees but
all the rescarch buildings are working, build research buildings.
6. (Unit Training/Warping) If you have enough idle unit training buildings but few combat units, have lot resource, train/war waap units much possible.
7. (Tech Upgrading) If you have idle rescurch buildings and enough resource, have lot resouree, update your technology.
8. (Early Stage Expand) you do not have 'the second base building (such as Nexus), the 'CybemettcCooee', the "TillightCouneil" and 'first Gateway', try to build them quick possible.
9. (Middle Stage Develop) During middle stage of game, try build buildings training high value units, and train units as much as possible (espccially high value units) to increase strength.
10. (Final Stage Develop) During the final stage of the game, train or warp more units to fight with enemy, do not build building we have enough buildings." m.e
BASIC BUILD RULES
Analyse following aspect in your decision process:
1. (Minimap Position) According to image 'rgb minimap'. where is/are our base/bases and where should we go? give minimap position. (Our base units and buildings are green points'squares in the minimap)
2. (Build) You can build any position of the screen (unless it is blocked by other buildings) direct the action <Build XXX Screen([x, y])>, You can build more than one buildings step by
generate many action <Build_ X___XXX__S__ XxX__Sreen[[x, y])>,
3. (Move) You should move to plain location the base building, and build buildings there.
Don't far away from the base building, keep base building in your sight(screen), unless you are building new one.
4. (Actions Sequence) First <Build xxx Screen(screen)> <Build xxx Near(tag)> then <Move Xxx(xxX)> (note that, do move build same screen position)"!! "m
BASIC COMBAT RULES
1. Concentrating firepower always necessary, attack different unit at the same time will definitely reduce killing speed and leading to terrible result, Always concentrating all teams' fire at one unit that (1)with highest DPS(most valuable) (2)msst vulnerable (3)closest."
Figure C2: Basic Rules for agent Commander, Developer, Builder, CombaGroups.
29

---

C2. Examples of Textual Observations
Example of Observation Prompt (Agent Commander, Easy Control Mode)
Game Info:
Time: 0:20
Minerals: 1190 inkt Vespenc:
Supply Total: 15 'n'i Supply Left: 'nktt Supply Used: 16
Unit Counts:
Our Unit:
(Probee: 29, 'Adept':
Our Buildings:
(Pylon': ''Assimilator': 'Gateway': "CybemeticsCore:: 1, 'Nexus':
Our Unit (in warping'morphing):
None
Our Buildings (in construction):
None
Military Buildings:
|'Gateway': (1 is working, is idle)'
Research Buildings:
['CybemeticsCore (0 working, is idle)')
Spotted Enemy Unit:
('SCV::
Valid Actions
Team Protoss-Units-11
Units Attack/
<All Units D
<All Units Retreat()=
<Worker Scun(}>
<Adept Scan()>
Last Step Actions:
<All =Ail_Units Defend(>
Available Communication Targets:
Developer: Protoss logistics commander. Responsible for unit trainning, unit warp trainning.
technology upgrade and order the Builder to build.
Available Communication Functions:
"MessageTof TorraggeTToAAeNNNaaaa amme, message)>
<MessageToo CaaiggeTToohhhnnlaaanan message)>
<Listen'T'of CiistennoCChanneeNNeie (ChannelName)>>
Args explanation:
()) AlAAgilNaame refers to name mentioned in Available Communication Targels.
(2) ChannelNamee: shape as Channel-i, refers to an integer.
(2 (2)message: any text wrapped between and
Tasks:
Team Protoss- Units' task: Command your through 'Actions' to defeat enemy
Please note that ** are the most important information, your decisions must aimed at completing the tasks.
As the supreme military commander, you should not directly give actions, instead, tell your subordinates what do through communication. Now, analysis, making decisions in military deployments:
Figure C3: Example textual observation agent 'Commander' easy control mode,
30

---

Example of Observation Prompt (Agent Commander, Standard Control Mode)
Game Info: [game info)
Unit Counts: [unit_ cariit_cont_inntn infoo]
Global agent info:
Agent CombatGroup4: Team Probe-0: Protoss.Probe x1, minimap position [13, 31]
Agent Compa Team Adept-1: Protoss.Adept x2, minimap position 31]
Relevant Knowledge:
Protoss.Probe
The builder the protoss race. Gathers gas minerals.
Unit properties: I'ground', 'light', 'mechanical"]
Weapon info: Attack Range 0.2, target: ['ground'], DPS(damage per second)
unit abilities:
WorkerAbilitics: Always available. The probe warps in structures and harvests minerals and vespene gas.
Protoss.Adeps
Ground-only ranged attack unit, armed with psionic tramsfen( AdeptPhaseShttt) ability to teleport to nearby locations for harassment.
Unit properties: I'ground', 'light, 'biological', Weapon info: Attack Range 4, target: ['ground"], anti: ['light'. (dSmmag per sccond) 4, DPS-anti 9
unit abilities:
AdepiPhaseShift: Active skilLAlways avaliable. Cooldowm 11 seconds. seconds.Projects invulnerable psionic image that move but not attack. After 7 seconds, the adept teleports the images location. The shade may canceled any time, and the adept would not teleport. The shade has sight radius of 2.
Available Communication Targets:
Developer: Protoss logistics commander. Responsible unit trainning. unit warp trainning. technology upgrade and order Builder build.
CombatGroup4: Protoss reconnaissance commander, controls Observer and several Probe. Responsible for providing reconnaissance infomation and detect cloak unit for main force CombatGroup7: Protoss special force commander, controls Adept and Dark Terplar,..r Responsible for infiltrating the enemy's 's rear and disrupt economic production, sometimes collecting reconnaissance infomation, participating in frontline combat. Available Communication Functions:
<Message To NooAAgenNName, message)>
<Messagee To ChannelName, message)>
<L <Listen TontenTT((Caa ((Channe
Args explanation:
(1) (I)AgenNName: refers
mentioned in Available Communication Targets.
ChannnelName: shape Channel-i, refers to integer.
m2)essage:: any wrapped between and "
Tasks:
Team Protoss-Units task: Command your units through 'Actions' defeat enemy. important information, all your decisions must aimed
Please that *T
completing tasks.
the supreme commander, you should not directly give actions, instead, tell your subordinates what to through communication. Now, start analysis, making macro decisions in military deployments by sending message to other agents:
Figure C4: Example textual observation of agent 'Commander' in standard control mode.
31

---

Example of Observation Prompt (Agent CombatGroup?, Standard Control Mode)
Game Info:
Time: 3:50
Team Adept-1 Info:
Team minimap position: [33, 41] (minimap coordinate valid range for actions:
64, 0 < 64)
Team sereen edge (sereen coordinate valid range for actions: < 23, y x
Controlled Team Units:
Unit: Adept Tag: 0x102180001
ScreenPos: [11, 12]
Health: 140(100 %)
Nearby Ally Units:
Unit: Probe Tag: 0x101340001
ScreenPos: [22, 16]
Health: 40(100 %)
Unit: Probe
Tag: Ox 101hc0001
ScreenPos: [22, 17]
Health: 40(100 %)
Unit: Probe Tag: Ox 101940001
ScreenPos: [22, 16]
Health: 40(100 %)
Unit: Probe Tag: 001280001
ScreenPos: [20, 12]
Health: 40(100 %)
Unit: Nexus Tag: Ox 101200000
ScreenPos: [19, 16]
Health: 2000(100 %)
Energy: 131
Unit: Pylon Tag: 0x1018c001
ScreenPos: [12, 15]
Health: 400( %)
Unit: Gateway
Tag: Ox b000001
ScreenPos: [14, 12]
Health: 1000(100 %)
Last Step Event:
Team Adept-1 Event:
Ally Unit Event:
unit 10140000011 440001 Probe)) ally unit enter sight
unit Ox 1010004400 Probe) ally unit enter sight
Relevant Knowledge: frelevant knowledge;
Valid Actions:
Team Adept-1 Valid Actions:
<Move Minimap(minnmmap>>
<Move Screen(screen)>
<Attack Unit(tag)>
<Select Unit Attack Unit(tag, tag)>
<Select Unit Move Screen(tag, screen)>
Abblity_AdeeiPhaaeehhin Minimap(mnnimap>>
Action Args:
(1) tag: tag refers to hexadecimal number, shape as 0x000000000.
(2) sereem; screen refers to a sereen coordinate, shupe as [x, y), where 0xx x x 23.
(3) minimap: minimap refers to minimap coordinate, shape as [x. y]. where x and range from 0 to
64.
Available Communication Targets: (available communication targets)
Available Communication Functions: (communication functions)
Args explanation: (communication
Tasks:
Team Adept-I' task: Controls your unit through 'Actions' fight enemies support allys.
Complete tasks assigned by the Commander Please note that ** completing
most important information, all your decisions must aimed
Give each team no more than actions, these actions will exccuted in the following 10.0 seconds, among which activity release should usually before attack move. Now, start generating your analysis, strategy, actions and communication:
Figure C5: Example textual observation of agent 'CombatGroupp' in standard control mode.
32

---

Example of Observation Prompt (Agent Developer, Easy Build Mode)
Game Info: [game info)
Unit Counts: (unit count info
Valid actions:
Team Protoss- Protoss-Bulddngs--1:
<Research ProtossAirArmorr>>
l'mineral': 100, 'gas': 100)
<Research ProtossAi/Wentt Weaposss)
cost: ("mineral': 100, 'gas'; 1003
<Research WarpGate()>
cost: ('mineral': 50, 'gas': 503
<Train_AAe =
cost: ("mineral': 100, 'gas': 25,
'supply': 2]
<Train Sentry(>
cost: ('mineral': 50, 'gas': 100,
'supply": 2]
<Train Stalken()>
cost: ('mineral': 125, 'gas': 50,
'supply': 2
<Train >
cost:
('mineral': 100, 'gas': 0,
'supply':
Team l:
<Build Nexus(>
cost: ('mineral': 400, 'gas': 03
<Build Assimilator()>
cost: ('mincrall: 75, 'gas': 0
<Build Pylon()>
cost: ('minerall: 100, 'gas': 0]
<Build Gateway()>
cost: ('minerall: 150, 'gas': 0]
<Build CyberneticsCore()>
cost: ('mineral': 150, 'gas': 0]
(note: 'New Buildings!" in the following part We do not have this building it may unlock new
buikdingstcchnologis/mmie for us')
<Build Forge()>
cost: ('mineral': 150, 'gas': 0]
<Build ShiekdBaterr()>
cost: ('mineral': 100, 'gas': 0]
<Build TwilightCouncill>>
l'mineral': 150, 'gas': 100)
<Build Stargatc()>
l'mineral': 150, 'gas': 150)
<Build RaciticsFacillty(>>
('mineral': 150, 'gas': 100;
Relevant Knowledge: (relevant knowledge)
Available Communication Targets:
Commander:
Protoss military supreme commander. Responsible for making macro decision through
communication, and controls nexus for massrecall for tactical objectives. When make deployment,
describe the time, location, and objectives of the mission as clearly as possible
Available Communication Functions:
(communication }
Args explanation:
(communication functooufnnntnnneeeee _argsssar____aee "rrelssaaannnoon
Tasks:
Team Protoss- BuilosssB task:
Organize the agent 'Builder' through 'Communication" to build buildings. Develop economy,
technology, and train units through 'Actions' win the game.
Team Protoss- Workers' task:
Organize agent 'Builder' through 'Communication' build buildings. Develop economy,
technology, and train units through 'Actions' win game.
Please note that **aasss** completing tasks.
most important information, all your decisions must aimed
senior commander, max number of your actions not limited, when you warp units, try use the WarpGate as much as possible, and warp units near single WarpTrain Field Provider.
Now, start generating your analysis, actions and communication:
Figure C6: Example textual observation of agent 'Developer' in easy build mode.
33

---

Example of Observation Prompt (Agent Developer, Standard Build Mode)
Game Info: [game info)
Unit Counts: [unit_coumel ceatt_ccout___nt__
Valid actions:
Team Protoss-Buildings
<Research ProtossAirArmor()>
cost: ('mineral': 100, 'gas': 100;
<Research rReeearch_Protosseeeeee
cost: ('mineral:: 100, 'gas"; 1003 ProtossAir Weapoooss
<Research WarpGate()>
cost: ('mineral:: 50, 'gas':
<TTain__Aae -diiti()__
cost: ('mineral:: 100, 'gas': 25,
'supply": 2]
<Train Sentry()>
cost: ('mineral': 50, 'gas': 100,
'supply": 2
<Train Stalken()>
cost: ('mineral': 125, 'gas': 50,
'supply": 2
<Train Zealot)
cost: ('mineral:: 100, 'gas': 0,
'supply':
Agent Builder's Valid actions:
<uild Nexus Ncar(tag)>
cost: ('mineral': 400, 'gas': 0]
Build Assimilator Near(tag)>
cost: ('mineral': 75, 'gas': 0]
<Buld_ Palon_ >
cost: ('mineral:; 100, 'gas': 03
<Build Guteway Sereen(screen)>
cost: ('mineral': 150, 'gas': 03
<Buidd CyberneticsCore Screen(sereen)>
cost: /'mineral': 150, 'gas': 03
(note: 'New Buildings!" in the following part We do not have this building yet, it may unlock new
buildinggiechnnoogiiesstttt for us')
<Build Forge Screen(screen)>
cost: ('mineral': 150, 'gas':
<Build ShieldBattery Screen(screem)>
cost: ('mineral': 100, 'gas':
<Build TwilightCouneil Screen(screen)>
cost: ('mineral:: 150, 'gas': 100)
<Build Stargate Sercen(screem)>>
cost: ('mineral': 150, 'gas': 150)
<Build_Roooiie Robiticscctiiiiiittyy Sccetttsseeeeeeeeen)>>>>>>>
cost: ('mineral': 150, 'gas': 100)
Action Args: (action arg explaanatnniin
Relevant frelevatt frelevant knowledge)
Available Communication Targets:
Builder: Protoss builder, controls several Probe. Responsible for build buildings
Commander:
Protoss military supreme commander. Responsible for making macro decision through communication, and controls nexus for massrecall for tactical objectives. When make deployment, describe the time, location, and objectives of the mission as clearly as possible
Available Communication Functions: (communication functioss Args explanation:
[communication_ functions Lacilss__rr_s__e prrg__xxllnation)
Tasks:
Team Protoss-Bune Protoss-Buikding Buildings' task:
Organize agent 'Ruilder' through 'Communication' build buildings. Develop economy, technology, and train units through 'Actions' win game. Please note that **Tasks** are most important information, all your decisions must aimed completing tasks.
senior commander, max number of your actions not limited, when you warp units, try use all the WarpGate as much as possible, and warp all units near single Warp Field Provider. Now, start generating your analysis, actions and communication:
Figure C7: Example textual observation of agent 'Developer' in standard build mode.
34

---

Example of Observation Prompt (Agent Builder, Standard Build Mode)
Game Info: Igfo: info)
Unit Counts: (unit count info
Team Builder-Probe Info:
Team minimap position: [40, 44] (minimap coordinate valid range for actions:
64, 0 <
Team edge (screen coordinate valid range for actions: 0 < 17, y
Controlled Team Units:
Unit: Probe Tag: 1010340001
ScreenPos: [12, 12]
Health: 40(100 %)
Nearby Ally Buildings:
Unit: Nexus Tag: 0x101200001
ScreenPos: [9, 12]
Health: 2000(100 %)
Energy: 139
Unit: Pylon Tag: c80000
ScreenPos: [12, 1]
Health: 400( %)
Unit: Pylon Tag: Ox 1c0001
ScreenPos: [3, 10]
Health: 400(100 %)
Unit: Assimilator Tag: Ox 101 a00001
ScreenPos: [16. 9]
Health: 600( %)
Unit: Gateway Tag: Ox b000000
ScreenPos: [4, 8]
Health: 1000(100 %)
Unit: Gateway Tag: Ox 102080001
ScreenPos: 19, 6]
Hcalth: 790(79 %))
Unit Counts:
Our Buildings: I'CyberneticsCore:: 'Nexus': 2, 'Gateway:: 2, 'Pylon': 2, 'Assimilator': 13
Our Buildings (in construction): /'Gateway::' 'I in total (0x102080001 79%)"
Last Step Event:
Team Builder-Prohh Event:
Ally Unit Event:
unit 0x102080001 (Protoss. (Protoss.Gatewayy buiniig/building, process +22% (current process 79%)
Relevant Knowledge: frelevant knowlcdge)
Valid Actions:
Team Builder-Probe
<Move Minimappminimapp'
<Move SeeeeeSeeeeereenr'""
<Build Nexus Near(tag)>
cost: ('mineral': 400, 'gas': 03 cost: ('mineral:: 75, 'gas': 03
<Build Assimilator Near((a))>)
(note: 'New Buildings!" in the following part We do not have this building yet, it may unlock new buildings/tchhoologisssmii for us')
<Build TwilightCouncil Screnniceeeeeeeerreeee
cost:
('mineral': 150, 'gas': 100)
Action Args: (action arg explanation)
Available Communication Targets: cetilalleccommnicatiinn targets) Available Communication Functions: (communication, function__n
Args explamation: (communication functions args explanation:
Tasks:
Team Builder-Proles task: Build buildings through 'Actions', Complete assigned by the Developer or Commander, based your own judgment. Please note that **Tasks** are most important information, all your decisions must aimed completing tasks.
As a builder, you need to move the worker to an open location and complete the construction of the muilding.Nww, start generating your unalysis, actions and communication:
Figure C8: Example textual observation of agent 'Builder' in standard build mode.
35

---

C3. Examples of Image Observation
Ean
(al) step sereen
(bl) step minimap
(cl) step buildable (feature map screen)
(dl) step 0, power (feature map screen)
(a2) step 10,
(b2) step 10, minimap
(c2) step 10, buildable (feature map screen)
(d2) step power
(feature map screen)
(a3) step 50,
(b3) step 50, minimap
step 50, buildable (feature map screen)
(d3) step power (feature map screen)
(a4) step 90, screen
(b4) step 90, minimap
(o4) step 90, buildable (feature map screen)
(d4) step 90, power (feature map screen)
(a5) step 130, screen
(b5) step 130, minimap
(c5) step 130, buildable (feature map screen)
(d5) step 130, power (feature map screen)
Figure C9: Examples of image observation of agent 'Builder' in standard control mode.
36

---

(al) step 175, sereen (CombatGroupd)
(b1) step 175, minimap (CombatGroup()
(cl) step 175, sereen (CombatGroupl)
(dl) step 175, minimap (CombatGroupl)
(a2) step 185, screen
(b2) step 185, minimap
(c2) step 185, screen (CombatGroupl)
(d2) step 185, minimap (C (CombutGroupl)
(CombatGroup()
(CombatGroupO)
(a3) step 195, screen (CombatGroup0)
(b3) step 195, minimap (CombatGroup0)
(c3) step 195, screen (CombatGroupl)
(d3)step step 195, minimap (CombatGroupl)
(a4) step 205, screen (CombatGroupO)
(b4) step 205, minimap (CombatGroup()
(c4) step 205, screen (CombatGroupl)
(d4) step 205, minimap (CombatGroupl)
11
(a5) step 215, screen (CombutGroupl)
(b5) step 215, minimap (CombatGroup0)
(c5) step 215, screen (CombatGroupl)
(d5) step 215, minimap (CombatGroupl)
Figure C10: Examples of image observation of agent "CombatGroupd" (controls Zealots) and agent 'CombatGroupl' (controls Stalkers) in standard control mode.
37

---

C4. Examples of LLM Responses
Example of Response (Agent Commander, Easy Control Mode)
Analysis:
The enemy is currently defending with small group of units, including a Stalker and Zealot. The enemy base has minimal defense, with only one Warp Gate and Pylon in the area. Our Zealots have already begun the assault on enemy workers, but reinforcements are still on the way. We need to reinforce our offensive, manage resources, and ensure the continued supply of troops.
Our current resources (340 minerals and 502 vespene) are enough to reinforce with additional units if necessary. The Warp Gates are idle, more reinforcements can be warped in. Additionally, the Shield Battery and Pylon construction progressing, which will help maintain position. However, the limited supply (26 supply left) means must carefully consider which units produce.
Actions:
Team Protoss-Units-1
<All <All_Unitt Units (ttack(
Communications:
"Request reinforeements: warp more Zealots to sustain attack on enemy workers. Consider warping additional Stalkers as well for support against any enemy Stalker reinforcements. The Shield Battery and Pylon construction must be prioritized for sustainahility. Deploy more Probes for resource gathering if necessary to maintain unit production. Proceed with caution to avoid detection by enemy Queens in the vicinity. We need to overwhelm the enemy quickly."")>
Figure CII: Example response of agent 'Commander' in easy control mode.
Example of Response (Agent Developer, Easy Build Mode)
Analysis:
We have a strong mineral and gas cconomy with 2820 minerals and 282 vespene gas. Our supply is currently at 58 out of 102, leaving us with 44 supply available. We have Gateways that are both currently working, which limits our unit production. The Commander has instructed us to initiate the Warp Gate technology upgrade and train additional Zealots, as well as construct an extra Gateway to enhance unit production capabilities. Given current resources and the need to bolster our forces, should prioritize the Warp Gate reseurch, train many Zealots possible, and build additional Gateway.
Actions:
Team Protoss- Buildngg-::
<Research WarpGate()>
<Train Zealot()
<Build Gateway()>
Communications:
<Message' (oCommma,,,r "Initiating Warp Gate technology upgrade, training additional Zealots, and constructing an extra Gateway to enhance unit production capabilities. actions are aligned with your directives.")
Communications:
<Message To Commmadee,, "Engaging SCVs as instructed. Targeting the damaged SCV first. Will report any changes in enemy movements. ")>
Figure C12: Example response of agent 'Developer' in easy build mode.
38

---

Example of Response (Agent Commander, Standard Control Mode)
Analysis:
The current situation shows that we have total Zealots engaged in combat against enemy SC'Vs. The enemy has significant number of SCVs (9) and is operating Barracks and an Orbital Command, indicating they are likely preparing for larger military presence. Our resources are sufficient to train additional units, and we are currentyy researching Warp Gate technology. Given that the game time is 6:12, we should continue disrupt the enemy's economy while preparing for larger assault.
Actions:
Team Protoss-Units- I: Antts__tttac((>>>
Communications:
[MesaagTooCComaaaGee "Continue targeting SC'Vs disrupt their economy. Reinforcements the way, and prepare larger assault once have sufficient forces. Maintain pressure!")>>
<Message To (Deeellop,,, "Initiate training additional Zealots and continue Warp Gate research. We need to strengthen our forces upcoming attack. Current resources are sufficient for multiple unit trainings." "")>
Figure C13: Example response of agent 'Commander' in standard control mode.
Example of Response (Agent CombatGroupD, Standard Control Mode)
Analysis:
The current situation shows that Team Zealot-1 has already engaged the enemy and in close proximity to several enemy units, including SCVs and BarracksTechLLa The Commander has instructed to focus on eliminating SCVs quickly, which are vulnerable and have low health. The Zcalots are in good position to attack the SCVs, especially since one of them is already damaged. The previous action of selecting a unit to attack another unit is still in progress, and the movement towards [14, 12] is also relevant for positioning.
Actions:
Team 7ealot-1:
Select Unit Attack Unit(Ox 102000001 0x 10166000)) Targgting the SCV with 45 health
AAttack Unit(Ox 101 6= Attack the SCV
Mlove_Screen[[4,, 12])> # Move to better position if needed
Communications:
CoComagTT "'Engaging SCVs instructed. Targeting the damaged SCV first. Will report any changes in enemy movements.""
Figure C14: Example response of agent 'CombatGroupd" in standard control mode.
39

---

Example of Response (Agent Developer, Standard Build Mode)
Analysis:
train units. We have 3850 minerals available, allowing to build additional structures and train more Zealots. The Builder is already constructing Pylon, which will help with our supply issues. However, need prioritize building Cybernetics Core and additional Gateways to enhance unit production capabilities. The Commander has recommended sending our Zealots attack the enemy SCV, which will disrupt their operations. should also continue training 7ealots prepare for larger attack.
We currently have 49 supply used and 21 supply left, which means
Actions:
Protoss-Builee Build:
<Train Zealot()>
<Triin 7
<Train 7ealot()>
<Train Z
<Train Zealot()>
<Build CybemeticsCore Screen(screen)> Note: action will not be executed by Developer
<Buidd Gateway_ Sereen(screen)>
Note: action will not be exccuted by Developer
Communications:
<MesageTo(Buileee To(Builder, "'Plasse prioritize the construction of the Cybernetics Core and additional Gateways maximize our unit production cupabilities, We will send our Zealots to attack the enemy SCV to disrupt their operations. Continue building as planned.") "">=
MMessageTo(C To(Commande "WWe training additional Zealots and constructing the Cybernetics Core and Gateways per your recommendation. We will prepare for larger attack soon." "">>
Figure C15: Example response of agent 'Developer' standard build mode.
Example of Response (Agent Builder, Standard Build Mode)
Analysis:
Our current base is located the minimap position [15, 27]. We have Nexus [16, and several Pylons nearby. The last actions attempted build Gateway and Pylon, but the Gateway construction failed. We need prioritize building Cybemetics Core and additional Gateway as per Developer's instructions. We have enough minerals (3850) supply (21 left) build these structures. The Pylon [12, 14] currently under construction (89% complete), we should wait for finish before building more structures that area.
Actions:
Team Builder- Worker-1:
<Build CybernetisCooee Screen([12, 15])>
<Build Gateway G 16]}>
<Move_Screen([1] 13])>
Communications:
PosssageTo(Devvlogee "IIitiiaing construction of Cybemetiics Core and additional Gateway, Will keep you updated on progress.")>
Figure C16: Example response of agent 'Builder' in standard build mode.
40

---

Recognized actions agent Commander (Easy Control mode, step 218, partial)
("O": "Aeee Prolos-Unniss-'intt-Alll, Units "
("10": TAct Protos-Unnis--lanttt-AAl Units "enntts_efed((""))
("20": Tett Prolos-Unnis-/:niitteAllll UnitestssiUUuitiLL__ia Jeees__DeeedO="
3"30"; Tetiions'nitTaam Protos-UUnis--13attt--A Units Defend(p-nnttttWWokrr
Scan()=") (
{ ""40"; TAtiions'niiTeam Protos--Unis--/aatttt-A LnniiittiiiiAUUUUus_Sn_Sas Units__ttck()"")
1"50": TAtt Protoss-Units-1::nttt--lll Units Attack()>")
6600": Tcti Protos-UUniss-//atttt-AAl] Uniits
Battll__nntttttttte__ee Defend()>")
1"70": 'Actions''nltTeam Protos-UUmit--/aiiti/// Units Attack()>")
'"80" 'Attions'nnltTaa Protos-UUiissl::atttr-All Units Attack()=")
9'00" 'Actions''ntTeen Protos-Unmis--/aattttAAlll Units Defend))-nnittsWooreer Scan()>") Scaan
11000" ActTo Protoss-Units--I3ntttr-all Units Deftnd(@innitteWoorrrr Scan()>")
{ 1 Aetions:'nTeen PhooessUunisss/aoeee-lAlLiiiinnp Defend()")
{ 1"120" Actions''ulTeen Protoss-Umiitsl1:n/0:--l Units Defenn()-inttisWWookrrr " Scan()>")
{ 11130" ActionstnniiTaa Prooos_Duiiss//ooootcAA____inndd
{" :1140" Actioos/'niTeaam Sootss--iiiilliiill//AAAllliiiit
11500 Actions:'n'TTaa [hndsss-Uhiisss.aattccllLLLL_hiL hwtaalaiiiiiiaaaaaaaaaaatitrarrr Scan()>")
("160" Actions:'n'tTTee ProbossUiiiss-latttviiAlLiiiiii UntacsssssAtt((a"")
71" Actions::nieTcam ProtossUUnitss:::mt::::111 Units Attack())tt
(1180" Actions::n'tTT Prooes-Unitssl3atttssll___ (iinssss_l___iiissttaaa""")"
(1190" Actions:'aifTeem Protos--Units-I3ntttt:All Units Attack()=")
'2200" Actions:'niTToaa Protoss-Units-l1amttttllll Units Attack()=")
("210": Actions:'n'd un Protos-UUmitt-Iaaatt:lll Units Attack()*")
("218": Aft Protoss-Unitt-lIiittral Units Attack(]>") game end
Figure C17: Examples of recognized actions of agent Commander.
41

---

Recognized actions agent Developer (Easy Build mode, step 0 200, partial)
""Ot""Actionss'iiiTeaa Protoss-Buildnng- Pootos--uillnness-iiithhhhhoooor Economy()> "|
""10"""Actions""iiTTa"" "nitr=Build_Pylaat "]
Zealoo)()) w
(ato:sAAtiooss:tddieaam Protoss- Prooos--buidiinnssiiittttiiiiiii Zealot()> Tnait-TTaain Zealot()>
Tuuu=Trrin_7eaaltt) iiite-Train >ntts-Triinneelllr(>>>> haapra/-iiiittuudddddadaaaaaaaa (ateeaay()
Ia Barnoss-Buidingg--inteee "nittTrrain Z "nitte Zealot(> Lati-Buuil_PPlony(3 'nitii-Biild Dittt-BuildGaatewaOO
Zealot(> TniM Zealot(>
tntti=ChronoBoost Military())=
ea4 Protoss- Buildings-Linittteee
Zealot(>> 'niisTraii Zealot()>
InitesTrain Zealoot)ii Train Zealot(> 'nbta=Trrinn, < TriittTTrain Zealot()>
AnbesTraain Zealot()) Train Zealot)> 'ntaeTraain -ealloTrainZeell(((>>>>> 'niit=TTainn >ealo-)rainZeaalo))>>>>>>
Intiie<Train Zealot])> inddt=Build Pylon()>")
("S0""'Actions:niieTaa Protos--iildinng--nnttteee 7ealot(>> Iniit=Trainnnnnn Zealot()> Seau-TrrannZealoOO Train ZeaeeTrraaeeell(o>>> Bnitt-Bulddddddd Assimilatoo]] ' WarpGatee[>>
T'o Prons--hilding--llttiteeeccc WarpGate()> Tnire-Train Zealot()>
Tniii=Train Zealot() TritssTrrain 7ealou()> inttte-Taainnnnnalleaae InidddBuild 1acoid__yyoo1 ")
Aceio Binn Pylon() Restrrc WarpGate()> Train Zealot()> Tmitt=Train Zealot()> TriinTrainn Zealot()>> Trait: Zealot(}
Intee<rrain Zealot()> 'mitt=Trainn Zealot(}> Tnite-Train Zealot()>> Iniit=Trrin Zealot(*> InteeTrrain Zealot()> "mita<Trainn <eallorrinZeealt(>>>>>> inite=Train Zealot()> TniiitTraiin Zealot()>
inittTrain Zealot))) "3
('S0::Acctonss'nnieemm Protss- Pylon()> Warp Zealot()> Wnrp Zcalot)>> Warp Witttaaa Zcalot()>> ")
("90*"AActionsllaleeem Protos--Buidiine Litiss-Buiddingg--iitt----iiii Pylon() 'nltitBuildd Forge()>
Wart Zealot()> Wnrt Zealot()> 'nrrptWWapp Zealot()> 'nrr Zealot(>>
Warp Zealot()> wart Zealot()> 'nrrp Zeulot()> "nrr Zealot()>
Warp Zealot()> Zealoo] "ittir-Wrrpeeaal Zealot( tittssaapp_Zeloo( Zealou[ Zealott)
@itte-WarpZeelolf
("100:/Acttoomslllaeeemm Boodss-Bullding--iitit---bbll Pyloo ")
.........
""IB:::AAtioonsliiiTTTam Protes--uilddngg--aattttt Pylon(O Wart Zealot()>
Wart Zealot(>> Wart Zealot()> 'nlrfesWarp Zealot() Warre Stalker()>
Sntt=Warp_Staller(>>>>
("190rr"Actions:aiifTeam Bruloss-uilliigss-1 I: indteBBuldd PaaoiilddP_lo(aa>> Zeallla mirtt=Wap_Stalker]> ")
Nexus(>>
("200::AActionneniieeemm Protoss-Buildngg- inttedBulld Pylon(} initadBuild Pylon()
Inidd=Build MntisBBuid__yllon("""
Figure C18: Examples of recognized actions of agent Developer.
42

---

Recognized actions agent CombatGroupl (Standard Control mode, step to 200, partial)
("O":"") # agent disabled because of no Zealot cxists at the begining of the
......
"220": Nxctoonssttieammmzzooolllaaattia Screen(111 10)> 'nvee-Mooe 1000) 24])>
("30": "AAAtionniniTTeemaaaaaaa /atara/mtaaaaaaaalaaaoooottttttt Unit(xx
SerrMMooeSSSree(IM 13])>
("40": "aaa Lealo--I/ntttiMMoreee 30 M3nimap([30, 30))
'nitit-Sllect Unit Move 1cr60m100 [12, 12])>
Unit BaataiiioooeSSeeeeeeeeeeeee Move__scrreem0x001010000000,111 [14, 10])>)
("50"; TActions''iiTeem hatp://meeaaaollaaatt-ataaaaaann 10228000)))
Initie=Sllect Unit Move 1crrem(0xx0025500002, [15, 14))>
Initit:Scloct Unit Move_ (anee__cree((xx0002000000 [15, 15))=")
Select Unit Attack /ttp::/llliiiictttttaoommo/o1000 (0i00000000000000yatttttteeeeee 11]}>
("60": "Actionns'iitTeen Tcaba Xxtp:/22224000000000000000101110
1"70": Saa.doominnnccamnnnnzaao//aat-t- Unit Attack Unit(x1104400001, 00000000000000000000000000000000 inler=AAttack ( 11 10])>")
("80": "Actions'nitTTem Zcaloooiicctt---iittteeeeee Unit Attack Uni((x100400001,, 00000000000000000000000000000000
Anttt=Attuck Uni((Ox(10-40000))aattttooov Screen[[16, 12])>")
("90": "Attions'niiiTTen Zealot-
Attack Unit(0x1033c000,, Labitt-Attck 0000000000000000000m0m0--eeeeeee http://sSeeeeee.ioooooooooooooo. 0x0333000)) Mnvit=Move 1ntt=MMoveSScree((15,, 12])>")
("100": Tacei Zealot-I Unit Attack Unit(0x103540001, 0x103540001)
'nite=Select Uniiteeee__uttteeeeeeee Attack Atttttttkkkt_itttttttakkkkkka MuteeSSleeLuum_AAAucc_UUUUOOOOO,
1033:0000,, L0it: 0x 1033c0002)>
0x101940001)>")
("110": Mec.acotsssttieemmmaaalllllll/la
Unit Attack Unit(0x1033c0000, 0x10330000)) 1[15, 15])=")
Intte= Unit Attack AniitAAtaack_nninOOOOO
Unir(00 0x
6"160" T 72ces Unit Attack Unin(0x102e00006 Ox 102e00006)
Unni Attacit_Attkkkaaaaa Uni(00x103540001, |0 0x110550001 o 2 14]]=")
"Attin: Mtgeee/eeitttttttaaaaaaaaeeeeinn onto:eeeeeeeuniiunnnuuuuuuuuuoon 0x 1033c0002)-
Intet=SSleet Unit Attack Uni000x005540000, oatp://0o...0.000000oooeatoooerr Screen([1 11]]=")
"1 Unit Attack UnniiAAttakk__Uim000000050000000 (035540001) hat.aaaaaaa..nnnnnnannaoooooooon
12))))
('190": Act Zcaoo Unit Attack Unit(0x10318000d 8000d))
Initit=Slleet Unit Attack Unin(02103320002,, http://00000000222022222222222a0 (1 5])>")
("200": "Atei Zealoo Unit Attack Unit00x103660001, 0x 0x103680001)
invi S11, 1attee((11111))eeeeee.l 11])=>ntttt=Select Unit Attack Unic(0x103580001, 0x13380010001)))))))00000
Figure C19; Examples of recognized actions of agent Combatgroupo.
43

---

Recognized actions of agent Builder (Standard Build mode, step to 200, partial)
"0.."Accionss''iiTee
2 12]]> ")
Temm Builder-Worfeeeee Worker- Mittieeeiiiitttttteeeeeeeeeeee 18))²
litr=BBuldd untti=Bulld_Galeewayyyaa Sereewaa_SSreee(11,,, 18])- "}
Tat Builder-Worker Bante--oooor-----tBBBllllll Pylon Screen([15, 3]
\nietsMove_ nitteMove_Scrren(11,,, Screen[[15, 4])²
Te Builder- Worker- SunntttMoveSerree([[) 12))>
Initt=Build
Cete-Build_Forg_SSceeellll Fergeooorreeeeeeeeeeeeeeee
12])--
"'t Builder Bareeer--Wooooee-----------e MovetsMove Screen[[11 15))
Inter=Build_ InttsBBulddChheemeeeesttee SewpaaCCCCeeeeeeeeoeeeeeeeeeeeee (1 12])>"")
Pylon Screen([12, 10])>
Sc2,en[[12, 10])=") Mntt S
T'tt Builder-Workee wow.e-ooooeerrrreeeeeeee Buitl GatewayyScreena 15))>
Build Pylon Screen([10, 16])=") ")
""70*""ActionscaiiTTa Boilder-Worker-oe Ainti Pylon Screen([12, 18)>
mittdBuuldd Assimilator Ncar(0x10300000)) ")
("80":" Accio Worker-Wootttttteeeeaeaaeee Gateway Sereen[[12, 16])>
inietBBuldd Gateway Screem[[12, 17])> 'miteesuulld Pylon Screen([12, 18])>
Move Screen([10, 12])=- "
To Builder- Baiter-l-ttttBBuilddd Pylon Screen([12, 14))> lniddBBulld BitteBuild_Gattvayy_aao
12])> 'ovv "iit=-MoveSSrree((11,, 12])=
("100rrAActionssaaieeaam LorkeWooooot-tt-t-aaaeaeee Pylon Palla_Syyoeeeeeeee SSeeeerreeen [10, 17)>>
Lew-Buulld_yloonSSceeeeele I, 17Jr "ntttBBBildd httprBiilld_ssssslttttooorooeee 10000000 )=
["110*/AActioonsaaiieeaam Builder- Www.eeooo-ee-tttBiiliillil- Batp:itti-BuuiidPPlSSSSSeSSeeee 1yyon_Screen[[1,, 15))>
MiittsMove 111reM00 16])= "}
("120r"AAtioonssaiireeaaa Builder-Worker- Build Pallonllooaaaaa LallolScceeooo[PP1 15])= 'nitd=Build 5 12])-
Paloo_lloseleeeeeeeellll Laenn_SSreennn11 12, 12))>
(" Builder- Bintker--SnitttBBildAAiiiiii Near(Ox (ear(0x100000 100200001 Belu-BBilldGGttewaySSSerree 18])> SoreeMMoooSSSeee(1..... 10]
("18:::TActioon::iiiTTaamm Builder Bartee--WWoorr---itt-tBiiiii Pylon Screen( 15, 10])>
Inier<Build hnett-Rildd_Gateeaayyaaa [Gateway_SSrreee(( 14]) 'nirrBuuild |ntp=iaatt-RiidddGaaaaaaaa CaatewaySScreenlll 15])= ")
#199:/rActtoonsshiaaammm Builder- Lartker- Pylon Screen( 14, 15])>
"nitit=Build Pylon Screen([15, 15])= bniiid Gateway Screen[[16, 15))>
Mnve InttesMovv_Serree[[1 Scrcen[[15, 11]}=")
A"200r:"Attiomslaidlla Builder- Worker- Worker-Llaittt-Biiiii Build Screen[[1 10]>>
initddBuild Pylon Screen[[14, 10])> Movi Screen[[15, 11]}=
Figure C20: Examples of recognized actions of agent Builder.
44

---

CS. Examples of Received Communication Messages
Received Communication of agent Commander (first 20 steps, partial)
("0":"")
"""."Communication Informattion'mm/frue Developerinillnitaaingg Chrono Boost Nexus enhancc mineral production. Current resources low, and I will focus building supply structures resources allow in'm"
"ommmunication informationn'n Developer:nntidiitiannn construction of Pylon increase supply capacity. Once completed, will prioritize building Galeway for unit production per your instructions, in'n")
information''iitFFon Developer/nntttPllon construction is underway to increase supply capacity. I will initiate Chrono Boost on the Nexus to enhance mineral production as per instructions. We will prepare construct a Gateway as soon resources allow. Confirming the plan.inin")
""**mmmommmiiatioo
("4"." "Communicatioon information:'nitFoooo Developer.ntttPPllon construction is nearly complete. will prioritize the construction of Gateway immediately after. We will enhance our military presence to prepure for potential enemy engagements. !n'u")
Developer: liiiitiat Chrono Boost on the Nexus to enhance mineral production. Building an additional Pylon to increase supply capacity. Gateway construction is ongoing. Will keep you updated on resource availahility.
("5":"Co "Coommmiicaaioon iformnttionnnniiPooere
!"6":" "Communication informationn'iiiFoo Developer/nmttWWW prioritizing completion
Gateway will build an additional Pylon increase supply capacity. This will enable the Gateway operational. Current resources being managed
military units effectively
#ommmmmomuniiation informationn' Developer/nn'i(The Galeway is currently 64% completion. will Chrono Boost the Nexus enhance mineral production. We also building additional Pylon increase supply capacity. will keep you updated resource availability. "min")
"Commmmiiiiiioo information:/iitFFonn Developer/niritW prioritizing the construction of additional Pylon and the Gateway ensure start training military units promptly. The Gateway is currently 87% complete. We will keep you updated on our progress.ln'n" !
"Commumiccaaiion information:'ittFoom Developor.intttThe Gateway is operational, and am initiating the construction of Nexus to expand our economy. I will also train five Zealots to bolster our forces. Chrono Boost will be activated on the Nexus as soon as it is completed to enhance mineral production. We are preparing for unit production swiftly/'n'"")
("10":"Communie CCommunication information'ln FFro Developer.intttWe are currently low on resources and cannot train units build additional structures at this time. will construct a Pylon to increase our supply capacity as soon as we gather enough minerals. We prioritize the completion the Gateway and initiate unit training once resources allow. Thank you for your guidance/'nin")
("20":"Conen "Communication information:inkFFrorr Developer:inhWWWW are training additional Zealots bolster forces while the new Nexus and Pylon under construction. We will be ready for potential enemy engagements shortly.undfrrom /n'dFrom CombatGrrop0::itiifr cam Zcalot-1 is maintaining defensive positions and ready engage if any enemy units spotted. We moving slightly forward enhunce defensive stance. Awaiting further instructions.aaan""
Figure C21: Examples of received messages of agent 'Commander' in standard control mode. (part-1)
45

---

Received Communication agent Commander (steps 105, partial)
training additional Zealots and constructing another Gateway enhanee our unit production cupabilities. The process being expedited as we prepare for potential engagements. Current resources are sufficient this operation 'n'tFrom CombatGroupO (TTTem Zealot-1 is engaging an enemy Probe and will maintain defensive positions as instructed. We will report any further threats detected.'n'a")
"Cmmumiiaaiiinnn information''n Developer'nitit
""55""Communicatio" irfo Developer'nnttrWe are training additional Zealots and building a Pylon to support our supply needs. The Cyberneties Core nearing completion, and we will be ready for an offensive shortly 'ntiFrom enemy. No enemy units sighted yet. Moving towards the designated coordinates for regrouping. Will report any sightings immediately.
to maintain pressure on the
"44":"Commmnniaa" in information:'nidFrom Developer.nnttrWe are training additional Zealots and building another Assimilator to enhance production. This will help us maintain momentum for future upgrades and unit production. We will keep you updated on our progress. 'n'tfromm CombatCGroup@::ntttt
continuing to engage the Zergling and holding our position instructed. Reinforcements are welcomed. We will remain vigilant for any incoming "neeats.innn")
".Ssm"Comuunication information:'ntFFron Developer'ntttWWe are initiating Warp Gate research and training additional Zealots as per your request. Expect reinforeements shortly for the upcoming offensive. 'n'tFrom CombatGroop0::nittie coordinated attack. Current position is [22, 37J. Reinforcements are expected soon. Will continue engage.inin")
maintaining pressure on the enemy and preparing for
("65":"Commin Commumicationn informationn'''tFron Developer'nitttWe are constructing a Pylon to increase our supply capacity and training additional Zealots as requested. We will maintain pressure on enemy. Expect reinforeements and will continue to press the attack. Moving to better position for a coordinated assault.ninn"
CombatGroupO aittt: are engaging the enemy unit
information Formooom Developer/nilttWe are building a Pylon to increase supply capacity and warping additional Zealots as requested. Reinforcements will be ready shortly. CombatGrroupO'nile WnettWW are engaging the ChangelingZZealot
Maintain offensive momentum!'ntt and will prepare for the coordinated attack. Awaiting additional Zealots for support. inin")
"Commmmicatiiionn information tnltiiooonn''/oommm Developer/ Wee are initiating the warp-in of additional Zealots reinforce our frontline. A Pylon is being constructed to increase our supply capacity. Expect reinforcements shortly in'tfrom CombatGroup0:nnttt
currently engaging enemy Changeling Zealots. Holding position and preparing for follow-up attack instructed. Will remain vigilant against potential Mutalisks and Zerglings. In'n")
"" "Commmmicaaaiionn information: FntmFromm Developer.iniittuillee Pylon increase supply and will initiate Charge upgrade Zealots immediately after. We will warp additional Zealots soon Mutalisks and focusing on the
as supply allows. Frrm aatbaaGGrroo:::nennnggeeee Changeling Zealot as instructed. Reinforcements are welcomed!'''a")
{" ("105": "Communication information''naFFrmm Developer:'nitiWWW are constructing an additional Pylon to increase our supply capacity and have initiated research on Warp Gate technology to expedite unit training. Reinforcements will be ready shortly, AnktFrom CombaGGroup0::niitt are holding our position and focusing fire on the Mutalisks as instructed. Reinforcements are awaited. We will stay min"
Figure C22: Examples of received messages of agent 'Commander' in standard control mode. (part-2)
46

---

Received Communication agent Commander (steps to 125, partial)
"'LIS""Coomuuicatiin information/'aiie Developer''iiftte constructing additional Pylon to increase our supply capacity and will warp Zealots immediutely counter the Mutalisks. Expect reinforcements shortyy. InttFrom CombatGroup0::nittt
focusing fire the Mutalisks instructed and holding our position. Reinforeements are awaited!'n'n";
("125":" "Communication information'''ittFoon Developer'n are constructing an additional Pylon to increase our supply capacity reinforeements, Over: nnmm CombatGroupO We are engaging the Mutalisks and securing the area as instructed. Current status:attacking the closest Mutalisk and moving to a safer position. Over:nn'n"
("135":"Con Communication information''''tPe Developer'nttitWa are constructing additional Pylons to increase our supply capacity. This will allow us to train more units and strengthen our forces. Frerr OonbatGroupO/nniDdWWW are engaging the enemy Changeling Zealots and pushing forward. The Nexus is under attack, but we will maintain pressure on the enemy. Over,'n'n")
informatioon'nitFroo Developer''atttW are warping in additional Zealots as requested to strengthen frontline. The Pylon is under construction and will he completed shortly. We are also researching Warp Gate technology to enhance capabilities. Over.'n''Froo CombatGroup@''ntttt
engaging the enemy Hydralisks and Roach instructed. Continuing to apply pressure. Over. In'n")
""155"""Commii "Communicatiio information''nitFron Developer:niitiWe are warping additional Zealots and Adepts strengthen our forces. Assimilator being constructed enhance gas income, and Warp Gate technology is being researched improve unit production efficiency. Over.An'tFrrom CombatGroupO/ are engaging the Mutalisks as instructed and will provide cover for the advancing Zealots. Over. In'm")
("165":" "Communication information intmom DeveloperrnntttReennnfoo Four additional Zealots will be ready shortly to strengthen our forces. Ov'r'''dFrrom
are being warped in.
CombutGrrou00::itttW are engaging the Mutalisks us instructed and will focus fire to climinate them quickly. Over: inttFrom CombuttGroup7:mmttiie scout for additional units. Maintaining pressure on their production. Over:'n'n))
are engaging the enemy Changeling Zcalot and will
information''a'tFron Developer'alt' supply. Wa Warping multiple Stalkers to counter air threats per your directive. Over, in'mFrom ConbbtGroup0//nitttW
construction initiated to increase
focusing fire the Mutalisks as instructed and moving to safer position. Reinforcements are welcomed. Over. mnotFomm CombatGroupl htt.oouupp//.tt//W// le while ensuring the safety of our units. Moving safer position the Pylon. Requesting support currently engaging the Mutalisk and Zergling, Once these threats neutralized, will proceed to disrupt the enemy's economic structures instructed. Over'nnnn"
engaging the enemy forces
needed.'n'd lntFFrrr CombatGroup7:.tttte
("185":" "Communication information''''tFnn Developer'niitiWW are warping additional Zealots Stalkers reinforce our forces. Pylon is also being constructed increase supply capacity. Reinforcements will be ready shortly. Over intfrrmm CombatGrropp@'itttWW are continuing to focus fire on Mutalisks and Zerglings as instructed. Moving to a strategic position for better coverage. iner.in' CombatGroupl AnnrWWW are engaging the Mutalisks as instructed. Focusing fire on the one with low health. Overln'kfroom CombatGroup??nnis Ne are currently engaging the Mutalisk and Zergling. Once these threats are neutralized, we will proceed to disrupt the enemy's 's economic structures as instructed, Over:inin")
Figure C23: Examples of received messages of agent 'Commander' standard control mode. (part-3)
47

---

C6. Examples of Communication Actions
Communication Messages from agent Commander (steps 0 to 200, partial)
"We need to prioritize building Gateway for unit production. Currently, we have enough Probes for resource gathering, hut we need military units to prepare for potential enemy encounters. Please initiate construction of Gateway as soon as possible.") "))")
("O": "Communications''n MetesageTooDevelllpge
1"10": "Communications'' <MessageTo(Develoor,, "We need prioritize gathering minerals increase supply capacity and complete the Gateway. Please proceed with constructing Pylon as have enough resources." )
("20": "Commuiication''n <Message' To (Deeeloop,,, "Please prioritize the training additional Zcalots strengthen our frontline. We need be prepared for any potential enemy engagements expand cconomy." join <MessageTo(Combattee continue for enemy movements. Be ready engage any threats are detected." y>")
"Maintain your defensive positions and
{ "99": "Communications'n our supply capacity. We need to warp in additional Zealots to strengthen our forces against the enemy's acrial units." yo'n <Message'lor CoassageTooCombbee ((CombatGrruupp "Coordinate with the Zealots to prepare for potential assault from the Mutalisks. Ensure we have cover for our ground units and be ready to reposition as necessary." }
DressageTooDeveloogo "Pleasee prioritize building Pylon to increase
"'llasee initiate the construction of additional Pylons to increase our supply capacity for more Zealots, We need to prepare for potential offensive against the enemy." >>'n MeesageIo(Combbtting "Continue focusing fire on the Mutalisks and maintain defensive positions. We will reinforce with additional Zealots shortly." " j>")
("100": "Communications''n
'"Continuc focusing the Mutalisks and regroup for coordinated attack. We need eliminate them quickly reduce pressure on our forces. Over." "vvii"")>in MeeesageTooCombaCe soon as Mutalisks dealt with. Your infiltration will be crucial for our victory. Over. "'r'nn *MessageTooDees Teeeeeoo,,, "Reinforeements are nceded as soon as supply allows. Focus on building additional Zealots to maintain pressure on enemy. Over."")'>""
1"170" "Communications"'n MMessaggTooCombaaooo
"PPrpare disrupt enemy economic structures
""Continue focusing fire on the Mutalisks, Ensure they are neutralized to protect our ground forces. Reinforcements are on the way. Over. Over."")'ln <Message MasssageToo(CC (CCombatGroupl "Maintain pressure on the Overseer. Once it is neutralized, regroup with the Zcalots to assist in taking down the remaining air threats. Over.")>*t <Message ToaggeooDDeeeeee (Developer,, "We need to prioritize warping in additional Stalkers to counter the Mutalisks and build a Nexus for economic expansion. Over."))=")
{" ("180": "Communications'ln
MMessageToCConnatGnonn
("190": "Communications''n <MessageTof CoCobbatrruupppp, "CContinue focusing fire the Mutalisks and engage any Zerglings that upproach. Maintain optimal positioning for maximum effectiveness. "'Keep engaging the Mutalisks and use Blink reposition necessary. Ensure the Zealots covered. Over." "' <MessageToo Toeeeeeoprr, "Pylon construction is critical address supply issues. Please expedite the warping of additional Stalkers counter the air threats. Over."')>"!
Over. "T>in "MesageTo(CombatGrooo
Figure C24: Examples of sent messages of agent 'Commander' in standard control mode.
48

---

Communication Messages from agent Developer (Easy Build mode, steps 200, partial)
("0": "Communications''a <MesageeToBBiider, "We need to gather minerals to build Pylon and expand supply. Please focus mining increase resources." " y>in
<Message Commmnner,, "Current status: We low resources and unable to build any military research buildings. Requesting support gather more minerals." )>";
("10": "Communications'n TMessaaeTooBuilllee "Confirming the construction plan for the Gateway, Please ensure it built immediately after the Pylon completed. We need to ramp up our military unit production soon as possible." " yin AMeesaggTo(Commanne "WWe currently waiting resources to complete Gateway. Probes are gathering minerals expedite process. Will keep you updated on the construction status." }=")
"'Plesse proceed with building the Pylon to increase our supply capacity. We need to ensure we can train more units as soon as possible." >>in <MessageT CaaaageTo(CCoonn oCoomannder, "We are prioritizing the training of additional Zealots and will build a Pylon to increase supply. We will also focus on gathering Vespene gas for future upgrades." }>")
("20": "Communications'an <MessageTooBuiille
("30": "Communications'an <MesaggeTo(Buildee "'Plesse proceed to build the Cybemetics Core immediately after the Pylon is completed. We need to enhance technology for unit upgrades. Keep updated the progress." "'>-'m <MessageTo((Aae (CCommander, "WWe training additional Zealots and will build the Cyberneties Core soon as the Pylon is complete. Defensive posture maintained with current units. Will keep you updated our progress." ")>>"
1"120": "Communications''n <MesaagTT((uilder, "'Picsse procced build Assimilator immediately after Pylon completed. need ensure steady gas supply for future production upgrades." "'>'nn (elessaeeTo(Commannn "We are prioritizing warp-in of additional Zealots to maintain defensive posture as instructed. Rescarch on ground weapons and armor is also underway. ")>"
("180": "Commuiications''n [15, 12] and [15, 13]. We need to increase our unit production capacity quickly:")>>> <MMessgee T'o(Commande ""We are warping in additional Zealots and Adepts to bolster our forces. Researching ground weapons and armor for enhanced combat effectiveness."" "")"")
oBsssageToBBuiderr, "Contiiue building the additional Gateways at
("190": "Communications'nn <Message MaassgeeTooBaane BBuuldrr "'leasee continue building additional Pylons and Assimilator increase supply capacity and gas income. We need ensure DoasaggeT(Commanerr
support
unit production. Also, confirm the status of the Pylon construction. " >in "The previous attack has completed successfully. We currently reinforcing units and upgrading technology. We will continue the assault once have sufficient forces and upgrades." " >>")
("200": "Communications"'n <Message (BBuilge,,,uilder,,, ''Peasse prioritize building additional Pylons our supply capacity. We need to ensure we can support our upcoming assault with enough reinforcements. Confirm once completed." "'>in <MessageTo(Commanee reinforcements with Stalkers Sentries. Upgrades ground weapons and armor are also progress. We maintain pressure on the enemy's 's Hatchery and Overseers as planned." "">=")
"Wee are preparing
Figure C25: Examples of sent messages of agent 'Developer' in standard control mode.
49

---

Appendix D. Experimental Settings with Multi-Agent Settings
Table DI: System settings
Module
Recommand
Minimum requirements
System
Windows-10 or 11
Windows-10
CPU
19-14900, 24 cores 32 threads
8 core
GPU
GeForce RTX 4090, 24G 64G RAM +2T SSD
GeForce GTX 1080
Storage
8G RAM + 100G SSD
Starcraft
Version 9.0. 14(93333)
Version 9.0. 14(93333))
Table D2: Multi-agent settings for complete game and L.LM-PYSC task group
Agent
Unit team names
Details of each unit team
Commander
Protoss-Unie Units
A virtual team, enable in casy control mode, directly control all combat units attack, defend or retreat, or call for scan. But unable
skills or precise control.
Developer
Protoss-Building Buildings
A virtual team, always enable, available for unit train- ing/warping and technology upgrade actions. In easy build mode, this team also available for build building.
Builder
Builder-Prohe-1
Enable in standard build mode. Controls Probes.
CombatGroupO
Zealot-1
Enable in standard control mode. Controls Zealots.
CombatGroupl
Stalker-1
Enable in standard control mode. Controls Stalkers.
CombatGroup2
Immortal-1
Enable in standard control mode. Controls Immortal.
Colossus-1
Enable in standard control mode. Controls Colossus.
Archon-1
Enable in standard control mode. Controls Archon.
CombatGroup3
VoidRay-1
Enable in standard control mode. Controls Void-Ray.
Carrier-1
Enable in standard control mode. Controls Carrier.
Tempest-1
Enable in standard control mode. Controls Tempest.
CombaiGroup4
Observer-1
Enable in standard control mode. Controls Observer.
ComhatGroups
HighTemplar-1
Enahle standard control mode. Controls HighTemplar.
Disruptor-1
Enable in standard control mode. Controls Disruptor.
CombatGroup6
Sentry-1
Enable in standard control mode. Controls Sentry.
Mothership-1
Enable in standard control mode. Controls Mothership.
CombatGroup?
Adept-1
Enable in standard control mode. Controls Adept.
AdeptPhase-1
Enable in standard control mode. Controls AdeptPhase.
Dark 1
Enable in standard control mode. Controls Tempaam
ComhatGroups
Oracle-1
Enable in standard control mode. Controls Oracle.
Phoenix-1
Enable in standard control mode. Controls Phoenix.
CombaiGroup9
WarpPrism-1
Enable in standard control mode. Controls WarpPrism.
50

---

Table D3: Agent settings LLM-SMAC tasks
Tasks
Details each agent
3s_vs_nz
1 agentt with teams: Team Stalker- (3x Stalker)
ss_ 64_g
agent with teams: Team Colossus- I (1x Colossus), Team Colossus-2(1x Colossus)
2s_vs_1sc
agent with 2 teams: Team Stalker- I (1x Stalker), Team Stalker-2(1x Stalker)
2s3z.
agent with teams: Team 7 (2x Zealot), Team Zealot-2 (1x Zealot), Team
Stalker-1 (2 Stalker)
3s5z
agent with 4 teams: Team Zealot-1 (2x Zcalot), Team Zealot-2 (2x Zealot), Team Z (Ix Zealot), Team Stalker- (3 Stalker)
3s52_ 3s6z
1c3s5z
agent with 5 teams: Team 1 (2x Zealot), Team Zealot-2 (2x Zealot), Team
Zealot-3 (Ix Zealot), Team Stalker-1 (3 Stalker), Team Colossus- I (Ix Colossus)
Table D4: Victory conditions and evaluated aspect of LLM-PySC2 tasks level-1
Task name
max time
victory condition
evaluated aspect
task
Imin
kill at least 7 workers
task understanding, unit skills task understanding, unit skills task understanding, memory
task2
Imin
kill at least 7 workers
task3
Imin
defend all the airdrops and save
more than 6 workers
task4
Imin
defeat enemy units defeat enemy units defeat enemy units
unit skills, multi agent cooperation unit skills, multi agent cooperation unit skills, multi agent cooperation unit skills, multi agent cooperation unit skills, multi agent cooperation, communication, planning
task5
Imin
Imin
task7
Imin
defeat enemy units
task8
1.5min
defeat enemy units and kill at
least workers
Table D5: Unit settings of LLM-PySC2 tasks level-1
Task name
Controlled
Enemy
taskl (2a harass)
2 Adapt
Queen + 12 Drone
task2 (3ph harass)
3 Phoenix
Queen 12 Drone
task3 (6s (6s_defend)
6 Stalker
4x2 OverlordTransppot with several Zergling Baneling
task4 combat)
12 Stalker
15 Roach
task5
2 Colossus + Disruptor Sentry
24 Roach + Ravagers + Queen
(3d_ma_comm aat_ma_ccomm ma_combat)
12 Stalkers
task6
Archon HighTemplar Sentry
64 Zergling 32 Banelings + Ultrlisk
(6h ma_combat)
12 Stalkers
lask?
Mothership + 3 Carrier + Tempest +
Hydralisk Corruptor +
(Im ma aaaaaaaammmna combat)
Void-Ray + 12 Stalkers
BoordLord Viper
task8
2 Warpprism 8 Warpgate +
15 Roach + Ravager + 4 Queen.
@8bg_ma_commanl
12 Stalker 1600 minerals
51

---

Table D6: Details of LLM-PySC2 tasks from level-1 to level-3
Task
Difficulty
Important changes
task1 (2a_harass)
level-1
Adept upgrade enabled (+45% attack speed).
Enemy 2 Queens.
level-2
Adept upgrade enabled (+45% attack speed),
Enemy 2 Queens with Zerglings.
level-3
Adept upgrade disabled.
Enemy 2 Queens with 4 Zerglings.
task2 (3ph harass)
level-1
Phoenix upgrade enabled (+2 attack range).
Enemy 2 Queens.
level-2
Phoenix upgrade enabled (+2 attack range).
Enemy 2 Queens, with Spore Crawler. Phoenix upgrade disabled.
level-3
Enemy 2 Queens, with Spore Crawler.
task3 defeed)
level-1
One PhotonCannon helps for anti-air combat.
Enemy Overlord no upgrade.
level-2
One PhotonCannon helps for anti-air combat.
Enemy Overlord Transport upgrade enable (higher speed).
level-3
No PhotonCanmon helps for anti-air combat.
Enemy OverlordTransport upgrade enable (higher speed speed).
task4 (12__oombat)
level-1
Enemy 15 Roach, Ravager.
level-2
Enemy 15 Roach, Ravager, Queen.
level-3
Enemy 15 Roach. Ravager, Queen, Overseer.
task5 (3d_ _d__mm____ combat)
level-1
Enemy 24 Roach, Ravager, Queen. Enemy Roach, Ravager, Queen, Ultralisk.
level-2
level-3
Enemy Enemy 24 Roach. Ravager, 2 Queen, Ultralikk, SwarmHost.
task6 (6h
maa_ma___e ma_ combat)
level-1
Enemy 64 Zergling, 32 Banelings, Ultralisk.
level-2
Enemy 64 Zergling, 32 Banelings, Ultralisk.
level-3
Enemy 64 Zergling, 32 Banelings, Ultralisk, Queen.
task7 (Im_mn maa ma__combt)
level-1
Enemy 18 Hydralisk, Corruptor, 4 BoordLord, 3 Viper.
level-2
Enemy 18 Hydralisk, Corruptor, 4 BoordLord, 3 Viper, 4 Queen, 2 Infestor.
level-3
Enemy 21 Hydralisk, Corruptor, BoordL.ord, 3 Viper,
4 Queen, 2 Infestor.
task8 (8bg combat)
level-1
Controls 2 WarpPrism, 8 WarpGates, 1600 minerals.
Enemy 15 Roach. Ravager, 4 Queen.
level-2
2 WarpPrism, 8 WarpGates, 1600 minerals.
Enemy 15 Roach. Ravager, Queen, 3 Spore Crawler. 1 WarpPrism, WarpGates, 1600 minerals.
level-3
Enemy Roach. Ravager, Queen, Spore Crawler.
52

---

Appendix E. Examples of the problems in LLM decision-making
E.1 Hallucination Examples in Complete StarCraft Games (standard contorl mode)
our zealots
all zealots lost
enemy sentry
(1) Example-1, misjudge the situation of unit strength (before query). 2 Zealots engage with a lot of enemy units.
(2) Example-1 misjudge the situation unit strength (after executing actions). LLM tries to kill the sentry but is killed by enemy units.
our units (melee attack)
Move Screen( 11, 12])>
B10
enemy units llong-range attack)
Attack Unit(xx101c0000
>
Unit (iit00000220005
every
Example-2, poor understanding of combat mechanism (before query). Zealots engage with 5 long-range-attack units.
(4) Example-2, poor understanding of combat mechanism (after executing actions). LLM tries to kill two units then retreat but finally fails.
enemiy air unit
cannot attack air units, but try to attack
our zealots
(melee attack, ground only)
Attack Unit(Oxl 03680002)
(5) Example-3, try to attack unattackable units (before query). CombatGroup0 find enemy Raven in the road enemy base.
(6) Example-3, try to attack unattackable units (after executing actions). LLM tries to kill the Raven using ground units melee attack.
Figure El: Hallucination Examples in Complete StarCraft II Games (combat).
53

---

Observation of CombatGroupo in Example-1
Game Info:
Time: 6:43
Team Zealot-1 Info:
Team minimap position: [22, 35] (minimap coordinate valid range for actions: 0 < < 64, 0 x
Team edge (screen coordinate valid range for actions: 0 < x
Controlled Team Units:
Unit: Zealot Tag: 102200002
ScreenPos: [13, 11]
Health: 150(100
Unit: Zealot Tag: 0x103180001
ScreenPos: [13, 11]
Health: 134(89 %)
Nearby Enemy Units:
Enemy Unit: Zealot
Tag: 0x102f40001
ScreenPos: [12, 10]
Distance:
Health: 117(78 %)
Enemy Unit: 7ealot
Tag: 102c80000
ScreenPos: [11, 10]
Distance:
Health: 150(100 %)
Enemy Unit: Zealot
Tag: 0x101ec000
ScreenPos: [12, 11]
Distance:
Health: 134(89 %)
Enemy Unit: Stalker
Tag: Ox 103440000
ScreenPos: [8, 15]
Distance: 6
Health: 160(100
Enemy Unit: Stalker
Tag: Ox 103040006
ScreenPos: [11, 19]
Distance:
Health: 160(100 %6
Enemy Unit: Stalker
Tag: 0x 1031c0000
ScrcenPos: [7, 16]
Distance: 7
Hcalth: 160(100 %)
Enemy Unit: Stalker
Tag: Ox 1036c0001
ScreenPos: [10, 17]
Distance: 6
Health: 160(100%)
Enemy Unit: Stalker
Tag: Ox 102b00001
ScreenPos: [6, 13]
Distance: 7
Health: 160(100 %)
Enemy Unit: Stalker
Tag: Ox 103900006
ScreenPos: [11, 16]
Distance:
Health: 160(100
Enemy Unit: Stalker
Tag: 0x 1021c00001
ScreenPos: [7, 14]
Distance: 6
Health: 160(100
Enemy Unit: Stalker
Tag: 0x 102900001
ScreenPos: [13, 17]
Distance:
Hcalth: I 160(100 %)
Enemy Unit: Stalker
Tag: 0x 1026c0001
ScreenPos: [9, 16]
Distance: 5
Health: 160(100 %)
Fnemy Unit: Sentry
Tag: Ox 102000001
ScreenPos:
Distance:
Health: 26(32 %)
Energy: 51
Enemy Unit: Probe
Tag: 0x101580001
ScreenPos: [11, 15]
Distance: 4
Health: 40(100 %)
Enemy Unit: Adept
Tag: 0x 102500001
SercenPos: [10,
Distance:
Health: 140(100
Enemy Unit: Adept
Tag: Ox 10230000
ScreenPos: [6, 15]
Distance:
Health: 140(100 %)
Last Step Event'nntTTem Zealot-1 Event:
Controlled Unit Event:
unit 102580005(Proooss/eelll))) Zealot) dead, lost the final 150 health
unit Ox 110111100000 10300 (Protosss is attacked, health -16
unit Ox (Proto000 dead, lost the final 79 health
Enemy Unit Event:
unit Ox 101 1 (Protoss.7callt) attacked, health -16
unit Ox 111 58000 (Prrttss.. Probe) enemy unit enter sight ((rotooss (Protoss.Sttllkr Stalker) enemy unit enter sight
unit Ox unit Ox 0304000066(PPoooss Stalke))) enemy unit enter sight unit Ox (PrttoocoootttttttttStttllllc enemy unit enter sight enemy unit enter sight unit 0x (Protooso0 enemy unit enter sight unit 0x (Prtt0s Stalker) enemy unit enter sight enemy unit enter sight enemy unit enter sight
unit Ox (Prttoos
unit 0x 10o000 unit 1x2000000 1001000000066PottsssStttlll enemy unit enter sight
1Pott Stalker) enemy unit enter sight 0x11029000 Stalker) enemy unit enter sight (x.1002==0001Pro/it Stalker) enemy unit enter sight unit 10200000 (Peeosss.))))))))s.).. enemy unit enter sight
Now, start generating your analysis, strategy and actions:
Figure E2: Observation of CombatGroup0 in Example-1.
54

---

Response CombatCroup0 Example-1
Analysis:
The current situation shows that Team Zealot-1 is engaged with enemy units, specifically two enemy Zealots and Sentry with low health. The Commander has instructed to maintain pressure on the enemy Probe and prepare for engagement with the Stalkers. The enemy Sentry is vulnerable with only 26 health remaining. making it prime target. Additionally, the enemy Probe has 40 health and is also valid larget. Concentrating fire the Sentry first will likely eliminate it quickly, allowing for more effective engagement with the Stalkers afterward.
Actions:
Team 7calot-1:
<Select Unit Attack Unit(0xx 102600001, )2 # Attack the Sentry
-Select_niit Unit_Attack,,__tt Unit(OO 101580001, 0x100 101000)))))> # Attack the Probe
<ovve Screen([12, 12]r> Move better position for engagement)
Hallucination Analysis of the Response Example-1
(1) The primary issue under this observation is the overwhelming number of enemies, and the reasonable decision is to retreat preserve strength.
(2) What the I.I.M concernes about is that three units of the enemy are in the state of low health value Zealot(Tag: Ox 10,0000,, Health: 117(7%%)), Zealot(Tag: Ox 1x101 ec0001, Health: 134(%%)) and Sentry(Tag: 002000000,, Health: 26(32 %)). However, it is impossible to eliminate any of the unit under such powerful long-range attacks.
(3) The LLM also make mistakes in actions. In StarCraft II, we cannot select enemy unit, the correct actions for attack the Sentry and Probe should be:
<Attack (nii(OOniix100 102800001)> <Attack Unin0010115800001
SSelect Unit Attack Unit(0x102a00002, 0x 0220000001
<Select Unit Attack Uni((0x00318000) 0x000000000 instead
SSlecc Unit Attack Unit(0x102800001, 0xwp000010000000000000000 00200000)) # Attack the Sentry
<Select_ Antaccc__iit0000015888000 0x 0x101580001>
# Attack the Probe
Figure E3: Response and Hallucination Analysis of CombatGroup0 in Example-1
55

---

E.2 Hallucination Examples in Complete StarCraft II Games (develop and build)
start building Cybernetics Core
first Cybernetic Core
game time 5:23
game time 5:43
S
(I) Example-4, build important building too late. Cybemetics Core usually built before 3min, without this building, most unit will locked.
(2) Example-4, build important building too late. Construction of Cybemetics Core finishes after game time 5:40.
too many zealots which can not attack air units
Train Zealot()>
hard to defeat heavy units
game time 7:26
7:26
10 POPR
POYM
(3) Example-5, train too many low-level units (before query). Developer has already trained lot of zealot at game time 7:26.
(4) Example-5, train too many low-level units (after executing actions). LLM call for Zcalot training even after Stalker Seeleer//dee//Seetyy available.
nearly no building built
lot buildings built near the first Nexus
around the second Nexus
(5) Example-6, build too many buildings around base building (standard build mode, screen of base building 1), Builder only build around the first base and they do not build enough unit training buildings due to frequently calling for build at invalid position.
Example-6, build many buildings around base building (standard build mode, screen base building 2). There is enough area build buildings around the second base. But the Builder never ask the probe to the second base to build buildings.
Figure E4: Hallucination Examples Complete StarCraft II Games (standard build mode).
56

---

Observation of CombatGrouph in Example-5
Game Info:
Time: 7:26, Minerals: 3230, Vespene: 218
Supply Total: 110, Supply Left: 13, Supply Used: 97
Unit Counts:
Our Unit:
[PProbe:: 49, Zeallot: 203
Our Buildings:
''Gateway:: 'Assimilator': 2, 'CyberneticsCore': 1, 'Pylon': 10, 'Nexus': 2]
Military Buildings:
('Gateway': (2 working, idle)")
Research Buildings:
iCCyberneticCCone: 'I working, is idle)")
Our Unit (in warping/morphing):
None
Our Buildings (in construction):
None
Valid actions:
Team Trotoss-Buildingee
<Train Adept()> cost: ('mineral': 100, 'gas': 25, 'supply': 2), note: can afford most
<Train Sentry()>> cost: ('mineral': 50, 'gas': 100, 'supply': 2), note:
afford 2 most
<Train Stalken()> cost: ('mineral': 125, 'gas': 50, 'supply': 2), note: can afford 4 most
<Train 7ealot(] cost: ('mineral': 100, 'ga'': 0, 'supply': 2), note:
afford 32 most
<Research WarpGate()>
('mineral': 50, 'gas': 503
<Build Assimilaton()
('mineral': 75, 'gas':
<Build Pylon(J=
('mineral': 100, 'gas': 0]
<Build Gateway()>
('mineral': 150, 'gas': 0]
<Build CybereeticCoree(>
cost: ('mineral': 150, 'gas': 0]
<Build Forge()=
cost: ('mineral': 150, 'gas': 0]
<Build TwilightCoumeil(>>
cost: ('mineral': 150, 'gas': 100;
<Build Stargate()
cost: ('mineral': 150, 'gas': 150)
<Build FabiticsFacillty>>
cost: ('mineral': 150, 'gas': 100)
<ChronoBoost Research()>
Communication information:
From Commander:
Please expedite the training of additional Zealots and ensure the Pylon is completed as soon possible to support our ongoing assault. We need to maintain pressure the enemy. Available Communication Targets: favailable communication (acrcctttttttttsss targets)
Available Communication Functions: (available (available_commuiice) wwtmmomicatoooffnnniiiiaicocccce functions]
Args explanation: {args_exxple jings_explanation
Tasks:
Team Protoss-Ruildings task: Develop economy, technology, train units through 'Actions' the game.
Please note that ** most important information, all your decisions must aimed completing tasks.
senior commander, max number of your actions not limited, when you warp units, try use the WarpGate as much as possible, and warp units near single WarpTrain Field Provider.
Now, start generating your analysis, actions communication:
Figure E5: Observation of Developer in Example-5.
57

---

Response of Developer in Example-5
Analysis:
We currently have 13 supply left, which is quite low. We need to build Pylon to increase our supply capacity. Additionally, we have significant amount of mineruls (3230) and some (218), allowing to train more units. The Commander has requested the expedited training of additional Zealots, which aligns with current strategy maintain pressure on the enemy...
Actions:
Team Protoss-Buiie Buioos-BBild
<Build Pylon()>
< Train Zeulot()>
<Train Zealot()>
Communications:
<Message To CCommander,, ""We are building Pylon to increase supply and training additional Zealots to maintain pressure the enemy. "'>""
Hallucination Analysis of Response Example-5
(1) Agent Commander do realise that already have too mant Zealots, and continues sending messages Developer train Zealots.
(2) Agent Developer completely followed the commander's intention but lost his own thinking. Even the Developer knows that actions like <Train Stalker()> and "Train_Adeptt is available, it do not send the information to Commander and ask for pemission for training other units.
Figure E6: Response and Hallucination Analysis of Developer in Example-5
58

---

E.3 Hallucination Examples in micro-operation scenarios
Adept shadows
our Adepts (direct move to enemy base
our Adepts
Enemy units
Enemy
units
Example-7, skill (correct strategy). Adepts should use the shadow to avoid damages,
(2) Example-7, skill use (incorrect strategy). Some times I.I.M tries to directly enter enemy's base.
enemy workers
Pheonix
Attack Unit(0x1012c00011)
our Pheonix
(can noly
attack units)
skill GravitonBeam
enemy anti-air units
(raise unit into air)
Example-8,
query).
Example-8, skill (after executing actions).
step Pheonixes its skill GravitomBeam ruise worker to the air and finished it suceessfully.
L.M tries to kill another worker but forget to use skill to raise it into the air.
Disruptor
killed by enemy
abandoned the teammates.
Disruptors (powerful
attack units)
Borlem
skills available
(they do not use it)
(5) Example-9, collaboration (hefore query). Our combat group engage with enemy units.
(6) Example-9, collaboration (after executing uctions). Disruptors retreat before using skills to kill any the enemy
Enemy units
minimap [32, 32]
screen [32, 32]
Ability PsiStorm S3reen 32])=
(code v0.1, screen 128x128)
HighTemplar
(area attack unit)
Example-10, mistaken coordinate system (before query). CombatGroupS assigned with task to go to minimap [32, 32].
(8) Example-10, mistaken coordinate system (ufter executing actions). LLM tries to use PsiStorm to attack enemy units but releuse at wrong place.
Figure E7: Hallucination Examples in micro-operation scenarios
59

---

Observation of CombatGroup8 in Example-8
Game Info:
Time: 0:19
Team Phoenix-I Info:
Team minimap position: [51, 31] (minimap coordinate valid range for actions: 64, < 64)
Team edge (screen coordinate valid range for actions: 0 x < 11, y 23)
Warning! controlled team near map edge! Pay attention using coordinates within the
boundary!
0 x
Controlled Team Units:
Unit: Phoenix Tag: 0x1005c0001
ScreenPos: [12. 11]
Health: 72(40 %)
Energy: 101 Energy: 200
Unit: Phoenix Tag: Ox 100040000
ScrcenPos: [12, 12]
Health: 156(86 %)
Unit: Phoenix Tag: Ox 100400000
ScreenPos: [1, 4]
Health; 54(30 %)
Energy: 200
Nearby Enemy Units:
Enemy Unit: Drone
Tag: Ox 3800000
ScreenPos: [8, 13]
Distance: 4
Health: 40(100 %)
Enemy Unit: Drone
Tag: Ox 101400001
ScreenPos: [9, 14]
Distance: 4
Health: 40( %)
Enemy Unit: Drone
Tag: 0x101 001300001
ScreenPos: [8, 16]
Distance: 7
Hcalth: 40(100 %)
Enemy Unit: Drone
Tag: 0x 10 014c0001
ScreenPos: [7. 15]
Distance: 5
Health: 40(100 %6)
Enemy Unit: Drone
Tag: 00100220000 2c0001
ScreenPos: [9, 15]
Distance: 6
Health: 40(100 %6
Enemy Unit: Drone
Tag: 0x 101 1003000
ScreenPos: [0,
Distance: 12
Health: 40(100 %)
Enemy Unit: Drone
Tag: 0x10133440 011340001
ScreenPos: [9, 12]
Distance: 3
Hcalth: 40(100 %)
Enemy Unit: Drone Tag: 0x101 10148000
ScreenPos: [1,
Distance: 11
Hcalth: 40(100 %)
Enemy Unit: Drone Tag: 0x 1012000001
ScreenPos: [9, Distance: 0
Health: 40(100 %)
Enemy Unit: Hatchery Tag: 0x101 100001
ScreenPos: [4, 11]
Distance: 4
Health: 1500(100
%) Buff: Buffs. QusenSpawaLaavalllaae
Enemy Unit: Queen
Tag: 0x100240001
ScreenPos:
Distance:
Hcalth: 175(100
Energy: 40
Enemy Unit: Queen
Tag: 0010440000
ScreenPos: [4,8]
Distance: 4
Health: 175(100 %)
Energy: 15
Enemy Unit: Cocoon
Tag: 0x1011c0001
ScreenPos: [3. 14]
Distance:
Health:
Relevant Knowledge: (relevant knowledge)
Valid Actions:
Team Phoenix-I Valid Actions:
<Move <Move_Mininap(niniini Mininap(minimap)>>
<Move "creee"_eeesscreen)>
<Attack_ Unic(t)))_tta)>>
Select Unit Attack Unit(tag, tag)>
Select Unit Move SSee_Seeeeeete,,e screen)>
Select Phoent__heiix_____ Liiieitti_bittyy___aa GravitonBeam Unit(tag, tag)>
Tasks:
Team Phoenix-I' task: Kill much enemy ** *rones*** possible until all units dead. Please that T*Tasks** completing tasks.
important information, all your decisions must aimed
Give each team no more than actions, these actions exccuted in the following scconds, among which activity releasc should usually before attack and move. Now, start generating your analysis, strategy actions:
Figure E8: Observation of CombatGroup8 in Example-8.
60

---

Response CombatGroup0 in Example-8
*Analysis:**
The task clear: need to kill as many enemy Drones possible until all units dead.
**Team Phoenix-I ** has three units, two of which are low on health, and one with significant health remaining. We also need to pay attention to the proximity of the enemy Drones to maximize damage.
The Drones are spread across the map, but the most immediate threat is the Drone at [9, 8] which is directly in range (distance 0) from the team. The other nearby Drones are also very close, at distances of 3 to 7.
Two Phoenix units are under attack, and one is being healed. The situation suggests that focusing on eliminating nearby Drones quickly is the best course of action.
*Stratgyy***
1. Focus fire the Drone at [9, 8), it closest and will reduce the enemy's presence the map significantly.
2. After eliminating the Drone at [9, 8), shift attention to the Drone [9, 12] and [8, 13] (next closest units).
3. Prioritize attacking Drones over other enemy units (like the Hatchery or Queens) to complete the task efficiently.
** *Atiions:**
Team Phocnix-l:
Target the closest Drone at [9, 8] 2. <Attack_ 101 340001)>
1. <AAttack_ <AtttcckUnii(xx
Target the Drone at [9, 12] next
3. <Attack 10800010033800010>>>>>> Target the Drone at [8, 13] to ensure damage continues
The actions focus climinating the nearest Drones and continuing the task of killing many Drones possible.
Hallucination Analysis of the Response in Example-8
(1) As shown in the observation text, Drone has the buff "Buffs.Gravitonn GravitonBeamm" whic which means all the enemy workers the ground, and Pheonix
attack ground units.
(2) As shown in Fig. E6 (3), the agent used to release the skill <Select Phoenix Ability GravitonBeam Unit(tag, tag)>
successfully killed worker, but it realise this skill is the key make enemy units attackable.
Figure E9: Response and Hallucination Analysis of CombatGroups in Example-8
61

---

Appendix F. Examples pf Structured StarCraft II Wiki Knowledge
Knowledge Schema WWikipedia-Deriveed
'name': str,
'description': str,
"tye solf: list[str].
"tyee anti': list[str],
"health': int, 'shield:: int, "health armor:: int,
'speed': float,
'wcapon':
'target': list[str].
"damage': int,
'bonus': dict,
'range': int, 'cooldown': float
'cost': { 'mmineral: int, 'gas': int, 'supply:: int 3,
pproduce from': str,
'ability:: dict,
'upgrade': diet,
'requirement':
'building': list[str].
'tech': list[str]
Figure Fl: Knowledge schema the structured StarCraft wiki database used in LLM-PySC2
Example: Protoss Unit "Adept"
'name': 'Adept.
'description': 'Ranged light infantry with psionic transfer for harassment', 'type_self" selfs ['light, 'biological"..
'type anti': ['light'],
"health': 70, 'shield': 70, 'health_armor's I,
'speed': 2.5.
'weapon': {
'target': I'ground"],
"damage': 10,
"honus': ('light:: 12).
'range':
'cooldown': 2.25
'cost': ('mineral:: 100, 'gas': 25, 'supply': 2).
'produce from': 'Gateway WarpGate',
"abilityy: ('Psionic Transfer': 'Teleport via shade after short delay."), ) "upgrade': ''ResonttingGlaives' 445% attuck speed"). 'requirements':
'building': ['Gateway', 'Cybemetics Core']. 'tech':
Figure F2: Example Protoss unit entry ("Adept")) from the structured wiki knowledge base.
62

---

Appendix G. Other supplementary materials
Limitations.
Although the LLM-PySC2 environment provides a lot more features than existing environments, there still some limitations. For example: (1) We found problems LLM-based decision-make makiing but have not yet found a solution that is good enough. How to learn Nomain-specifie knowledge in the environment effectively remains problem. (2) Due the limited decision-making ability the LLMs, many professional operations (such as multi-ling attacks, invisible units harassment, airdrop, changing homes, etc.) have not appeared in our experiments. As a result, it is quite challenging for us to test these advanced tactics, leading to potential bugs when dealing with advanced strategies. (3) Considering that Protoss enough for decision-mant maaking method verification, we suspend the work of Terran and Zerg. Full support for these two races will be provided in the future.
Impact Statements.
This work presents a new environment for evaluating LLM decision-making performance and developing learning algorithms. With complete StarCraft II action space, environment provides far more complexity than other décision-making platforms. With the asynchronous query architecture, the environment efficiently interacts with LLMs that maintain constant latency regardless of the scale of the agents' population. Advancement in the environment reduces the obstacles of large model decision research and prepares conditions for post-training LLMs in sequential decision problems. The phenomena observed in the experiments will attract more attention to the LLM hallucinations and lack knowledge specific domains.
Broader Impact.
Our work opens up opportunities for applying LLM in gaming and other multi-agent collaboration applications. Given that a of work on LLM learning methods still supervised learning or human feedback reinforcement learning data sets, our environment may promote the research of L.LM in-environment learning. Potential negative impacts include misuse of the environment to develop autonomous decision-makin systems without enough safety control and human control interfaces, which may generate uncontrolled, unexpected. or dangerous behavior in the application. We suggest strengthening the research LLM security while promoting the research on large-model autonomous decision making.
Code Of Ethics.
This research fully adheres the NeurlPS Code of Ethics. Violence behaviors of LLMs, such as attacking and harassing are confined entirely to the Real-Time Strategy game StarCraft II, just like previous similar works like SC2LE and SMAC. Potential risks of misuse and our suggestions are discussed in Section Broader Impact. This work does not involve or address any topics related to discrimination, races mentioned the paper are the camps in the StarCraft II game.
63


Reviews:
[{"review_id": "7WJ3h9PeSK", "reviewer": "Reviewer_s46V", "summary": "This work introduces LLM-PySC2--the first StarCraft II environment that offers large language models the full pysc2 action space. The environment also provides multimodal observations and supports native multi‑agent communication through an asynchronous query architecture. Although LLMs demonstrate the potential to win in complicated contexts, it is still hard for them to constantly make correct actions. These could due to the common issues of LLMs such as hallucinations and inefficient collaboration. Most importantly, LLM-PySC2 provides a platform that encourages further research and development of LLM-based StarCraft II agents.", "questions": "1. Please consider adding Terran and Zerg. \n2. Please provide quantitative analyses for hallucination\n3. Please evaluate more open-source LLMs e.g., Qwen, Mistral, etc.", "limitations": "yes", "rating": 4, "confidence": 2, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": 3, "clarity": 3, "significance": 3, "originality": 2, "strengths_and_weaknesses": "**Strengths**\n1. LLM-PySC2 is the first StarCraft II framework that expose a complete pysc2 action space to LLMs, along with a structured Wiki knowledge database.\n\n2. The environmental setup is clear and reasonable.\n\n3. This work considers representative experimental scenarios including macro-decisions experiments, micro-operations experiments, and evaluates over a board range of LLMs.\n\n4. LLM-PySC2 provides a platform that promotes the development of LLM-based decision-making approaches, especially on StarCraft II.\n\n\n**Weaknesses**\n1. Only the Protoss is considered. Terran and Zerg are not included. \n2. This work does not test the LLMs that are fine-tuned using RL techiniques like PPO, GRPO.\n3. Latency and token cost are not reported. \n4. Hallucination analysis is a bit qualitative, with no quantitative evidences.\n5. Minor issues: Spacebar is not properly used in Table 2.", "was_revised": true, "final_justification": "Will keep the original score, since some of the experiments are still missing, e.g., Terran and Zerg.", "rebuttal": "Dear reviewer,\n\nWe sincerely thank you for your time, thoughtful comments, and constructive suggestions. We greatly appreciate your efforts in reviewing our work and providing feedback that will help us improve the quality and clarity of the paper. Below, we provide point-by-point responses to each of the raised concerns.\n\n---\n\nQuestion1: [Please consider adding Terran and Zerg.]\n\nResponse1: [Thank you for the valuable suggestion. Actually, the development of the other two races is already underway. We fully agree that including all three StarCraft races—Protoss, Terran, and Zerg—would further enhance the generality and usability of the platform, but these works involves significant engineering complexity and effort. We apologize for the current limitation. The other two races will be added to the environment in the future version of our platform.\n\n(1) Importantly, the platform was architected with extensibility. During the development of Protoss, we deliberately designed the framework in a way that closely mirrors the structure and mechanics of Terran and Zerg. This allows us to port and extend the core functionalities efficiently to the remaining races, and we are actively working on this extension. The platform is designed to evolve, and support for all races will be gradually added in future releases.\n\n(2) On the other hand, even with only the Protoss race currently implemented, the platform already supports a wide range of research capabilities. The existing features are sufficient for evaluating large language models’ planning, decision-making, and control abilities in complex environments. We believe it offers meaningful scientific value as-is, and we hope it can already serve as a strong foundation for future research.]\n\n---\n\nQuestion2: [Please provide quantitative analyses for hallucination]\n\nResponse2: [We fully agree that hallucination is a crucial aspect to analyze. However, we note that currently there is no widely accepted quantitative metric for measuring hallucination in such sequential decision-making settings, especially in complex, partially observable environments like StarCraft II. \n\nIn our work, we observed two major types of hallucinations that commonly arise in agent behavior: \n\n(1) Factual hallucinations, such as misidentifying enemy units or incorrectly assessing the current game state; and  \n\n(2) Strategic hallucinations, such as giving unreasonable build orders (e.g., only producing a single type of military units such as Zealot) or raising severely mistimed attacks.  \n\nWhile difficult to quantify directly, these hallucinations ultimately manifest in degraded performance and suboptimal decision-making. As such, we use winning rate as indirect index to quantitative reflect the cumulative impact of hallucinations on gameplay outcomes.  \nTo aid understanding of the details of the hallucination, we have added a set of examples in Appendix E, which presents examples of both micro-level and macro-level erroneous decisions made by the agent. These examples help clarify how hallucinations lead to ineffective strategies, poor execution, or failure to respond to key events.  \n\nWe thank you again for pointing out this important direction, and we hope our added analysis provides meaningful insight.]\n\n---\n\nQuestion3: [Please evaluate more open-source LLMs e.g., Qwen, Mistral, etc.]\n\nResponse3: [Thank you for the valuable suggestion. We appreciate the importance of evaluating a broader range of open-source large language models (LLMs) such as Qwen and Mistral to enhance the credibility and generality of our platform's benchmarks.\nDue to the nature of the long sequential of interactions in StarCraft -II games, adding comprehensive winning rate evaluations of Qwen, Mistral or other models is time-intensive. We will try to add the evaluation of these models before the final  submission deadline. \n\nSince our work focuses on architectural design, the platform is built to support any large language model in a model-agnostic manner. We have already tested a wide range of open-source models including [GPT-3.5, GPT-4o, GPT-4o-mini, Claude, Llama3.1 with different sizes, GLM4, reasoning model GPT-o1-mini,etc.]. However, due to time constraints, we were unable to cover all mainstream models—there are simply too many, and they are evolving at a very rapid pace.\n\nWe fully agree that incorporating more open-source models would strengthen the evaluation, and we will make our best effort to include evaluations of Qwen and Mistral before the final submission deadline. If time constraints prevent this, we will include them in a follow-up arXiv version and future updates to the platform.\n\nFinally, we would like to clarify that the primary goal of our work is to develop a general, open, and extensible StarCraft II platform tailored for LLM integration and benchmarking. The experiments serve mainly to demonstrate this compatibility and highlight common failure modes. Since our platform is model-agnostic and supports any LLM with a standard API, we believe it can be a valuable resource for continued research across a wide variety of open-source and proprietary models.]\n\n---\n\nAdditionally, we noticed that you pointed out several issues in the Weaknesses section that were not explicitly raised as formal questions in the Questions to Authors section. We would like to briefly address these points here, in the hope that our responses help clarify your concerns.\n\n---\n\nWeakness2: [This work does not test the LLMs that are fine-tuned using RL techiniques like PPO, GRPO.]\n\nResponse: [The main reason we have not tested reinforcement learning (RL)-fine-tuned LLMs such as those trained with PPO or GRPO is that, to the best of our knowledge, no existing LLMs have been fine-tuned using RL techniques in a full StarCraft II environment with an complete action space. \n\nPrior environments such as TextStarCraft2 and SwarmBrain are built with highly simplified settings. These platforms use narrow action spaces which significantly limit the complexity of the decision-making and reduce the generality of learned strategies and there is no wide-accepted LLM reinforcement work on these former StarCraft-II environments.\n\nConsidering that our main goal is to provide an LLM decision making environment instead of a new training technique, we leave it to future researchers on how to efficiently train large models to complete sequence decision-making tasks in complex scenarios. Hoping that our environment will be helpful for future researches.]\n\n---\n\nWeakness3: [Latency and token cost are not reported.]\n\nResponse: [Thank you for pointing this out. We agree that latency and token cost are important aspects to consider when evaluating the practicality of using LLMs in real-time environments such as StarCraft II.\n\nIn our setup, both latency and token consumption vary significantly depending on the task, game situation, and the agent. Here, we compute the token cost and average time spent on observation processing and action recognition in StarCraft-II complete game, categorized by agent type. \n\n| Agent Type | Obs Size (Tokens) | Response Size (Tokens, GPT-3.5) | Env Latency on Obs Processing (s) | Env Latency on Action Recognition (s) | LLM Response Latency (s, GPT-3.5) |\n|-------------------|----------|----------|----------|----------|---------|\n| Commander  | 1240   | 321    | 0.016  | 0.001  | 5.23    |\n| Developer      | 1587   | 320   | 0.076   | 0.001  | 5.51   |\n| Other             | 2269   | 363    | 0.019  | 0.001  | 5.58   |\n\nThe length of input observation prompt typically varies significantly across different stages of the game (e.g., early vs. late game). As more units from both sides are observed, the amount of information increases, and the resulting rise in input token cost due to richer observations is inevitable. It is worth noting that the environment's latency in processing observation and text actions is significantly lower than that of LLM inference, ensuring that the environment's execution efficiency is fully sufficient for decision-making by LLMs.\n\nConsidering that reporting latency and token cost is a very meaningful suggestion, we will include a summary of this analysis in the final version of the paper, either in the main text or in the appendix.]\n\n---\n\nWeakness5: [Minor issues: Spacebar is not properly used in Table 2.]\n\nResponse: [Thank you for your careful review. We have checked the submitted version and confirmed the formatting issue in Table 2. It seems that the problem is not raised by Spacebar but the LaTeX's compilation of table formats. We will try to correct this issue in the final version of the paper to make the table looks better.]\n\n---\n\nOnce again, we thank you for your valuable feedback and hope that our clarifications and updates address your concerns.\n\nSincerely,\n\nThe Authors"}, {"review_id": "9rhp5spcx4", "reviewer": "Reviewer_M1d6", "summary": "The main contribution of this paper is to propose the LLM-PySC2 environment, which is the first environment to provide a complete PySC2 action space for LLMs, and supports multi-agent collaboration and communication.The article introduces the environment framework, action space, observation space and multi-agent system in detail, and evaluates the performance of LLMs in macro decision-making and micro operation scenarios through experiments.", "questions": "1. A key issue needs to be clarified: the efficiency performance of the action recognition module in handling large amounts of text and complex actions, as well as how to deal with action texts generated by LLMS that do not meet expectations, such as through what mechanisms to correct or ignore incorrect actions.\n\n2. To enhance the observation and conversion efficiency, whether optimization measures have been taken, such as how to reduce data transmission volume and lower processing latency, as well as the impact of these optimizations on the overall system performance.\n\n3. It is necessary to explain how the action recognition and observation conversion module ADAPTS to different game versions, maps and task types, as well as how to conveniently add or modify the types and contents of actions and observations to support new research requirements.\n\n4. The paper does not have specific experimental verifications for independent modules such as action recognition and observation conversion. Although these modules are key components of the environment, no specialized tests have been conducted on their performance, accuracy, and efficiency. Instead, the focus has been placed on the LLMs's performance in the overall decision-making task.", "limitations": "yes", "rating": 4, "confidence": 4, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": 3, "clarity": 2, "significance": 3, "originality": 3, "strengths_and_weaknesses": "**Strengths**\n\n1. This paper proposed the first LLM decision environment supporting a complete PySC2 action space, providing a new research platform for the application of LLMs in complex strategy games.\n\n2. Through experiments in the complete StarCraft II game and the newly designed LLM-PySC2 task group, the potential and limitations of LLMs in complex decision problems, particularly in the areas of hallucinations and insufficient knowledge are revealed.\n\n**Weaknesses**\n\n1. While comparisons have been made with some existing methods, systematic comparisons are lacking for other potentially applicable baseline methods, such as different LLM architectures or traditional reinforcement learning methods.\n\n2. Although the article mentioned the universality of the environment, it did not specifically explain or demonstrate how to support the operations of both the human and Zerg races. The focus of the article is to demonstrate the functions and potential of the LLM-PySC2 environment, mainly illustrating the issue through the case of the Protoss.\n\n3. Although the article provides the framework of the environment and experimental results, the detailed description of how to specifically implement key parts such as action recognition and observation transformation is not in-depth enough. For example, how to map text actions to specific PySC2 function calls? How do regular expressions precisely match various possible action formats, and how to handle situations with format errors or incompleteness.\n\n4. This paper introduces the efficiency performance of the action recognition module in handling large amounts of text and complex actions, as well as how to deal with action texts generated by LLMS that do not meet expectations, such as through what mechanisms to correct or ignore incorrect actions.\n\n5. The paper does not conduct ablation experiments on each component of the LLM-PySC2 environment (such as multimodal observation, asynchronous query architecture, different action space Settings, etc.) to evaluate the contribution of each component to the overall system performance.\n\n6. The main contribution of the paper is to propose an environment rather than a method, which seems more suitable for Benchmark Track rather than Main Track.", "was_revised": false, "final_justification": "", "rebuttal": "Dear reviewer,\n\nWe sincerely thank you for your time, thoughtful comments, and constructive suggestions. We greatly appreciate your efforts in reviewing our work and providing feedback that will help us improve the quality and clarity of the paper. Below, we provide point-by-point responses to each of the raised concerns.\n\n---\n\nQuestion1: [A key issue needs to be clarified: the efficiency performance of the action recognition module in handling large amounts of text and complex actions, as well as how to deal with action texts generated by LLMS that do not meet expectations, such as through what mechanisms to correct or ignore incorrect actions.]\n\nResponse1:[Thank you for highlighting these points. The 8-page limitation kept details of efficiency and error handling out of the main paper. Below are some details:\n\n(1) Efficiency of Action Recognition:\n\nOur action recognition functions are implemented using traditional logic-driven code, ensuring fast execution suitable for real-time LLM decision-making. We test the action recognition latency that is about only 1ms. The delay is negligible compared to the LLM inference latency (typically ~10 seconds), environment latency does not constitute a performance bottleneck in the interactions.\n\nConsidering that reporting efficiency is a very meaningful suggestion, we will include more details in the final version of the paper, either in the main text or in the appendix.\n\n(2) Error Handling of Invalid Actions:\n\nTo prevent unexpected behavior or crashes in the LLM-PySC2 engine, we implement several safeguards at the environment interface level:\n\na. Clear the text: When the action recognition module receives response, it delete symbols such as ‘-’, ‘*’, ‘ ’. Then, it identifies text actions line by line starting from the identifier 'Actions:' (Regardless of capitalization). For each line, it searches for string shape as <ActionName(xxx, xxx)>, and split into action name, parameters for future use. This step clears the text to avoid possible interference of undesirable characters.\n\nb. Action validity checks: The LLM receives the current set of valid actions, ensuring only executable actions are generated. Malformed or unrecognized actions are replaced with <No_Operation()>, which has no effect on the environment.\n\nc. Parameter validation: Each action’s parameters are checked for range and validity (e.g., building positions must be within screen bounds, in a pathable and buildable place, and in power field for Protoss). Actions with invalid parameters will be replaces by <No_Operation()>.\n\nNotably, we do not auto-correct semantically poor decisions (e.g., attack an inappropriate enemy unit or mistimed ability usage). This is by design, allowing the platform to assess and evaluate the LLM’s decision-making and instruction-following abilities in complex SC2 scenarios.]\n\n---\n\nQuestion2: [To enhance the observation and conversion efficiency, whether optimization measures have been taken, such as how to reduce data transmission volume and lower processing latency, as well as the impact of these optimizations on the overall system performance.]\n\nResponse2: [Thank you for the thoughtful question regarding optimization of observation and conversion efficiency.\nIn our platform, the dominant performance bottleneck is the inference latency of the LLM, typically ranging from several to tens of seconds per step. In contrast, observation processing and data transmission are lightweight, operating at the millisecond level.\n\nGiven this disparity, we did not prioritize further optimization of the observation module. Nonetheless, baseline profiling shows that observation collection, text conversion, and transmission together take about only 20 ms per step, which is negligible in the full interaction loop.]\n\n---\n\nQuestion3: [It is necessary to explain how the action recognition and observation conversion module ADAPTS to different game versions, maps and task types, as well as how to conveniently add or modify the types and contents of actions and observations to support new research requirements.]\n\nResponse3: [We agree that adaptability across different game settings and research tasks is essential, and our platform has been built with this flexibility.\n\n(1) Support for Different Game Versions and Maps:\n\nOur platform uses the pysc2 module (i.e. the core module of SC2LE proposed by DeepMind), which natively supports various StarCraft II versions and maps. The environment abstracts game state into a structured obs object (a named list), with valid actions dynamically extracted from it. This ensures the observation and actions remain valid across all versions and maps.\n\n(2) Custom Task Support and Flexibility:\n\nResearchers can define tasks via a customizable interface function. This function accesses the current obs and returns a task description for the LLM. Tasks can dynamically evolve based on game state, enabling experiments with multi-stage objectives.\n\n(3) Extensibility in adding or modifying the types of actions and observations:\n\nFor actions, users can add “bridge objects”(as shown in Figure.2) that specifying an action’s textual description and pysc2 functions. For observations, the prompt is modular, with a lot of functions generating specific info blocks (e.g., global state, unit details). Users can modify or add functions to customize observed game information.\n\nThese design allows seamless adaptation—researchers can create tasks, swap maps, extend actions/observations, and switch game versions while maintaining stable LLM integration.]\n\n---\n\nQuestion4: [The paper does not have specific experimental verifications for independent modules such as action recognition and observation conversion. Although these modules are key components of the environment, no specialized tests have been conducted on their performance, accuracy, and efficiency. Instead, the focus has been placed on the LLMs's performance in the overall decision-making task.]\n\nResponse4: [Thank you for pointing out the importance of evaluating core environment modules. We appreciate the opportunity to clarify the design and rationale behind our current evaluation strategy.\n\nOur action recognition and observation conversion modules use deterministic programmatic logic, ensuring high accuracy and reliability without requiring learning-based validation. These modules follow strict procedural rules and avoid computationally intensive operations, eliminating uncertainty.\n\nIn terms of performance, these modules operate with minimal latency (a few milliseconds per step), which is negligible compared to LLM inference delays (seconds to tens of seconds). Since LLM processing dominates total interaction time, further optimization or benchmarking of these modules would yield low marginal gains. This approach aligns with standard practices in LLM-based interactive environments, where module-specific effeciency metrics are rarely reported—system validity is typically assessed via end-to-end task success.\n\nIn our case, testing LLMs in actual gameplay inherently validates the environment’ s stability. If action recognition or observation parsing were flawed, LLMs would fail even in the easiest tasks. Thus, successful gameplay indirectly confirms module correctness.\n\nWe recognize the value of quantitative insights. In the final submission, we will include performance statistics (e.g., average observation processing time and action parsing latency) to further clarify system efficiency.]\n\n---\n\nAdditionally, we noticed that you pointed out several issues in the Weaknesses section that were not explicitly raised as formal questions in the Questions to Authors section. We would like to briefly address these points here, in the hope that our responses help clarify your concerns.\n\n---\n\nWeakness 1: [Systematic comparisons are lacking for other potentially applicable baseline methods, such as different LLM architectures or traditional reinforcement learning methods. ]\n\nResponse: [While we fully agree that comparing LLM-based agents to traditional RL baselines such as AlphaStar is an important long-term direction, we would like to clarify why such comparisons are currently non-trivial.\n\nFirst, the RL- agents with small model have already achieve near-100% winning rates across all PySC2 scenarios. Given these strong results, it is highly unlikely that current LLM agents can directly outperform the RL agents in these tasks, especially considering without any in-environment training. Besides, there are three key reasons why we did not comparisons between LLM-based and traditional MARL agents:\n\n(1) Agent Configuration Differences: Traditional MARL environment (e.g., SMAC) typically assign one agent per unit, whereas LLM-PySC2 uses one LLM agent to control a squad of units.\n\n(2)Control Frequency Mismatch: SMAC typically support high-frequency control due to lightweight decision models and per-unit control. In contrast, LLM-PySC2 supports a maximum of 2 steps per second.\n\n(3)Action Space Discrepancies: SMAC uses discrete action spaces, while LLM-PySC2 allows for rich, continuous choices including arbitrary movement coordinates and target selection via unique unit tags.\n\nMoreover, we note that the LLM agents in our platform are not trained in the environment—they rely solely on the knowledge and ability from pretraining. In contrast, MARL agents finished extensive task-specific training (e.g., 1e6+ steps in SMAC). Due to the reasons mentioned above, we did not compare the performance of LLMs with that of traditional RL methods.]\n\n---\n\nConsidering the word limit for rebuttal, we can only provide brief response to some of these comments. We would be happy to discuss other weakness you mentioned in Reviewer Author Discussions stages if you are interested.\n\nOnce again, we thank you for your valuable feedback and hope that our clarifications and updates address your concerns.\n\nSincerely,\n\nThe Authors"}, {"review_id": "FUET6sM1M1", "reviewer": "Reviewer_fD6D", "summary": "The research introduces LLM-PySC2, a novel StarCraft II learning environment designed for LLMs, addressing the current lack of support for LLMs in complex real-time strategy games. Main features of this environment include complete PySC2 action space, multi-modal information, game knowledge from a Wiki and an asynchronous query architecture to manage interactions with multiple LLM agents. Experiments show that while LLMs can make decisions, their performance can be inconsistent, exhibiting issues like hallucinations and inefficient collaboration due to a lack of domain-specific knowledge and instruction. The authors hope LLM-PySC2 will foster advancements in LLM-based decision-making.", "questions": "__Question on asynchronous query architecture__\n\nCan the authors explain whether the asynchronous query architecture refers solely to calling the LLM APIs concurrently either by multi-threading or asyncio? If so, I would consider this a basic implementation necessity rather than a major feature contribution.\n\n__Questions on wiki knowledge__\n\nThe author mentions that LLM-PySC2 offers game wiki knowledge. I don’t find much details on this other than the information offered as part of the prompt. Can the authors clarify whether this is what they mean by wiki knowledge?", "limitations": "Yes", "rating": 4, "confidence": 4, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": 1, "clarity": 2, "significance": 2, "originality": 2, "strengths_and_weaknesses": "__Strengths__\n\nCompared to the existing benchmark that evaluates LLM policy on SC2, the environment introduced in this paper provides support for complete action space.\nAlso provide support for multi-modal observations such as RGB screen and RGB feature which would be very valuable for benchmarking multi-modal LLMs.\n\n__Weaknesses__\n\nIt’s hard to assess the novelty/impact of this paper due to the limited evaluation presented in this paper. For example, the author mentioned the main contribution of this work as the support for complete action spaces. While this makes the environment more challenging, it’s difficult to understand immediately what kind of failure modes this immediately exposes that future work can research on.\n\n__Limited evaluation__\n\nThe evaluations in this paper seem restricted to comparison between different LLM backbones. This offers limited insights on how LLM-backed agents compare with existing state-of-the-art RL agents (e.g. AlphaStar etc). Without comparison with more “traditional” RL agents, it is difficult to understand the strengths and weaknesses of LLM agents which I think is crucial for future work.\n\nNevertheless, the authors did mention that “It is not recommended to compare the LLM-based method with the MARL-based method due to different control frequencies.” I am not really sure about what the authors mean. Why can’t we run the LLM and MARL -based agents at their respective control frequency and evaluate the results?\n\nI would like to see how the LLM-based agents perform compared to existing MARL approaches in order for me to raise my score.\n\n__Nit__\n* Rather than putting the illustration for all hallucination examples together. It would be more useful to present the illustration followed by each failure analysis separately. That would make the readers’ life easier when trying to understand the examples.\nFor the tables on evaluation performance. Do you run the evaluation with multiple seeds? If not I would consider doing it since SC2 are highly complex environments where the variance may be huge. If so, it would be great if you can include the confidence intervals.", "was_revised": true, "final_justification": "The authors have addressed my comments.", "rebuttal": "Dear reviewer,\n\nWe sincerely thank you for your time, thoughtful comments, and constructive suggestions. We greatly appreciate your efforts in reviewing our work and providing feedback that will help us improve the quality and clarity of the paper. Below, we provide point-by-point responses to each of the raised concerns.\n\n---\n\nQuestion1: [Question on asynchronous query architecture. Can the authors explain whether the asynchronous query architecture refers solely to calling the LLM APIs concurrently either by multi-threading or asyncio? If so, I would consider this a basic implementation necessity rather than a major feature contribution.]\n\nResponse1: [We appreciate your question. Our asynchronous query architecture goes significantly beyond simply invoking LLM APIs concurrently via multi-threading or asyncio. Due to the complex interaction patterns required in a PySC2-based environment—especially in managing camera-based observation acquisition and multi-agent coordination—the design and implementation of our asynchronous system is far from trivial.\n\nSpecifically, our architecture includes:\n\n(1) Thread Resource Scheduling:\n\nThe system must first schedule the camera to collect pysc2 observation object ‘obs’ for each agent. A dedicated thread is launched for each agent to process both textual and visual observations. Within this thread, an additional llm-client thread is spawned to handle LLM communication, monitor responses, and post-process actions.\n\n(2) Error Handling:\n\nOur system incorporates extensive safeguards to detect and recover from various error types—such as network disconnections, timeout issues, and corner-case exceptions arising from obs/action module crashes (consider the size of obs/action space, this contains a lot of works). Since a failure in any single thread can risk bringing down the entire program, we implemented comprehensive error isolation and recovery mechanisms within the asynchronous framework to maintain system stability.\n\nPrior environments for LLM-based sequential decision-making typically involve single-agent or limited multi-agent settings. In contrast, our LLM-PySC2 framework scales up to 13 or more LLM agents concurrently. This necessitated a carefully designed asynchronous architecture tailored for safety, robustness, and concurrency in large-scale multi-agent settings.]\n\n---\n\nQuestion2: [Questions on wiki knowledge. The author mentions that LLM-PySC2 offers game wiki knowledge. we don’t find much details on this other than the information offered as part of the prompt. Can the authors clarify whether this is what they mean by wiki knowledge?]\n\nResponse2: [Thank you for pointing this out. We would like to clarify that “wiki knowledge” we are referring to is a structured and comprehensive knowledge base manually constructed from the official StarCraft II wiki pages. Specifically, we extracted detailed information for all units across the three races—amounting to approximately 120 units—by manually transcribing relevant data into a JSON-formatted Python dictionary. Since all information is faithfully extracted from the official StarCraft-II wiki webpage, we refer to this component as “wiki knowledge.”\n\nThis structured wiki knowledge base is included in the provided anonymous GitHub package, located at <project_path>/llm_pysc2/lib/knowledge/<race>.py. It contains detailed attributes for each unit, including:\n\n- Name, description\n- Attack, shields, health\n- Description and data for Skills\n- Prerequisite units and technologies\n- Resource cost and training time\n- ......\n\nAltogether, this wiki database spans over 6,000 lines of structured content, faithfully representing the official StarCraft II unit specifications.\nIn the default LLM-PySC2 usage, we incorporate a knowledge-query module that retrieves wiki entries relevant to the agent's current game situation as part of the prompt. To further address your concern, we will include illustrative examples of the wiki knowledge and its usage in the appendix of the revised paper.]\n\n---\n\nAdditionally, we noticed that you pointed out several issues in the Weaknesses section that were not explicitly raised as formal questions in the Questions to Authors section. We would like to briefly address these points here, in the hope that our responses help clarify your concerns.\n\n---\nWeakness 1: [It’ s hard to assess the novelty/impact of this paper due to the limited evaluation presented in this paper. For example, the author mentioned the main contribution of this work as the support for complete action spaces. While this makes the environment more challenging, it’ s difficult to understand immediately what kind of failure modes this immediately exposes that future work can research on.]\n\nResponse: [We appreciate your concern regarding the evaluation and the clarity of potential failure modes introduced by supporting the complete action space. As our primary contribution lies in building a scalable and LLM-friendly StarCraft II environment, we do not focus on exhaustively analyzing the failure modes of various LLMs. Nevertheless, we have included preliminary observations of such failure cases in the Discussion section and detailed further examples in Appendix E. We hope these can serve as a starting point for future investigations. \n\nConstructing an LLM StarCraft-II environment with complete SC2 action space is a non-trivial task. Even three years after GPT3’s emergence, there is no other works that have managed to achieve this. This speaks to both the technical challenge and the novelty/impact of our contribution. Our aim is for the environment to play a foundational role in the LLM decision-making research community, much like how SMAC catalyzed progress in MARL. With an environment in place, we open the door for future research to systematically investigate in-depth failure modes and develop effective decision-making strategies.]\n\n---\n\nWeakness 2: [Limited evaluation, especially how LLM-based agents compare with existing state-of-the-art RL agents (e.g. AlphaStar etc). Why can’ t we run the LLM and MARL -based agents at their respective control frequency and evaluate the results?]\n\nResponse: [We appreciate your comment. While we fully agree that comparing LLM-based agents to MARL baselines such as AlphaStar is an important long-term direction, we would like to clarify why such comparisons are currently non-trivial.\n\nFirst, from a performance perspective, the RL- agents with small model have already achieve near-100% winning rates across all PySC2 scenarios. Given these strong results, it is highly unlikely that current LLM agents can directly outperform the RL agents in these tasks, especially considering without any in-environment training. That said, our core contribution is not about outperforming AlphaStar or existing RL baselines, but rather about establishing a new platform to explore the emerging capabilities of LLMs in sequential decision-making.\n\nWe outline three key reasons why we do not recommend direct comparisons between LLM-based and traditional MARL agents in this work:\n\n(1)Agent Configuration Differences:\n\nTraditional MARL environment (e.g., SMAC) typically assign one agent per unit, whereas LLM-PySC2 uses one LLM agent to control a squad of units. This design was intentional to reduce communication overhead and computational cost for LLMs.\n\n(2)Control Frequency Mismatch:\n\nSMAC environments typically support high-frequency per-unit control. In contrast, LLM-PySC2 supports a maximum of 2 steps per second and controls not so micro like Traditional RL agent in SMAC.\n\n(3)Action Space Discrepancies:\n\nSMAC uses discrete action spaces (e.g., move directions and attack commands), while LLM-PySC2 allows for rich, continuous choices including arbitrary movement coordinates and target selection via unique unit tags. This results in significantly different control granularity and decision complexity.\n\nMoreover, we note that the LLM agents in our platform are not trained in the environment—they rely solely on the knowledge and ability from pretraining. In contrast, MARL agents finished extensive task-specific training (e.g., 1e6+ steps in SMAC). We believe that future work may explore RL fine-tuning of LLMs within LLM-PySC2 and conduct direct comparisons under more aligned assumptions. \n\nIn summary, our goal in this work is to build a platform rather than claim performance dominance. We hope this clarifies our design decisions and encourages further exploration of LLM capabilities using the platform we provide.]\n\n---\n\nWeakness 3: [Nit. (1) About writing in hallucination examples. (2) About experiment seeds (3) add confidence intervals. ]\n\nResponse: [\n(1) We sincerely thank you for your suggestions regarding the writing of the paper. We will revise the description of the examples in the appendix section of the final version to improve the clarity and readability of the paper.\n\n(2)By default, the game runs with a randomly assigned seed—we did not manually set a fixed seed. Additionally, due to the use of large model API services, the inherent randomness in LLM sampling cannot be controlled via user-seeding. Therefore, all experiments were conducted under stochastic conditions.\n\n(3) We agree that including confidence intervals can provide a more rigorous representation of the experimental results. While most classical RL papers and recent LLM-based works in gaming scenarios do not typically report confidence intervals, we will still make an effort to increase the number of experimental runs before the final submission and include the calculated confidence intervals in the final version of the paper.]\n\n---\n\nOnce again, we thank you for your valuable feedback and hope that our clarifications and updates address your concerns.\n\nSincerely,\n\nThe Authors"}, {"review_id": "usHpCJOrwA", "reviewer": "Reviewer_k26i", "summary": "This paper transforms StarCraft II into an environment manageable by multimodal large language models. The author set up various in-game tasks and evaluated different types of large language models within this environment.", "questions": "See weaknesses.", "limitations": "Yes.", "rating": 4, "confidence": 4, "soundness": null, "presentation": null, "contribution": null, "strengths": "", "weaknesses": "", "quality": 3, "clarity": 4, "significance": 3, "originality": 3, "strengths_and_weaknesses": "Strengths\n- Game AI itself is an interesting topic, and the multi-modal approach aligns with the current development direction of large models. The StarCraft II environment is also quite challenging, making it suitable for evaluation.\n- The designed method is detailed and reasonable, and experiments have proven that large models can exhibit a certain level of capability.\n\nWeaknesses\n- Lack of intuitive description of the final capabilities. For example, what human-level equivalent was achieved? How do previously proposed agents perform on these tasks?\n- Ablation studies for the method design are lacking. For example: The proposal that LLMs should return reasons for decisions—does this improve decision-making ability? By how much?\n- The paper suggests in the experimental section that reasoning models similar to GPT-o1 perform poorly in unseen scenarios. This seems to contradict other similar works. For example, Gemini recently used its multi-modal reasoning capabilities to complete the game Pokémon Blue. Perhaps this is because the models used in this paper are not new enough; considering GPT-o3/o4-mini or Gemini-2.5-Pro might be worthwhile.\n- The other models used are generally not new enough; further supplementation could be considered.", "was_revised": true, "final_justification": "I will retain my score (4)", "rebuttal": "Dear reviewer,\n\nWe sincerely thank you for your time, thoughtful comments, and constructive suggestions. We greatly appreciate your efforts in reviewing our work and providing feedback that will help us improve the quality and clarity of the paper. Below, we provide point-by-point responses to each of the raised concerns.\n\n---\n\nQuestion1: [Lack of intuitive description of the final capabilities. For example, what human-level equivalent was achieved? How do previously proposed agents perform on these tasks?]\n\nResponse1:[Thank you for the insightful comment. We agree that a clearer contextualization of agent capabilities is valuable. \n\n(1)About human-level equivalent:\n\nOur current system has not yet been connected to Blizzard's official ranked matchmaking platform, which limits our ability to directly benchmark LLM performance against human players in a standardized environment. However, we provide evaluation results against the built-in bots as a proxy for capability.\n\nAs shown in Table 1 of our paper, without any specialized prompt design, fine-tuning, or RL training, LLM-based agent is capable of defeating the Level-6 (Very Hard) built-in bot. This difficulty level is known to surpass entry-level human players and is generally considered to match the skill level of amateur participants in community tournaments. This demonstrates the model’s ability to generalize strategic behaviors directly from text observations and instructions.\n\n(2)About previously proposed agents:\n\nRegarding previously proposed agents, most existing StarCraft research relies on small models trained with reinforcement learning. These agents have achieved impressive results over the years but suffer from practical limitations such as poor generalization, lack of interpretability, limited support for human interaction, and susceptibility to reward hacking to an early rush strategy. In contrast, our platform is the first designed specifically for LLMs and enables a broader range of tasks including natural language interaction and long-horizon planning. To our knowledge, no prior work has deployed LLM agents in such full-action-space StarCraft environments, making our platform a unique and foundational step in this direction.]\n\n------\n\nQuestion2: [Ablation studies for the method design are lacking. For example: The proposal that LLMs should return reasons for decisions—does this improve decision-making ability? By how much?]\n\nResponse2:[Thank you for this valuable suggestion. The primary focus of this work is to construct a StarCraft II learning environment tailored for large language models (LLM-PySC2), and to conduct preliminary investigation into LLMs’ limitations. So, we have not conducted in-depth ablation studies on specific elements for the LLM performance, we leave these questions to future researches and hope the platform promotes research on LLM decision-making system. \n\nWe agree that such studies would be highly insightful and essential for understanding the contribution of each component in the overall framework. Considering the intense timeline, we cannot guarantee such ablation experiments can be completed before the final submit deadline. We appreciate the reviewer’s recommendation and will try to including such ablation experiments in the final submittion or future arxiv versions of our work.]\n\n---\n\nQuestion3: [The paper suggests in the experimental section that reasoning models similar to GPT-o1 perform poorly in unseen scenarios. This seems to contradict other similar works. For example, Gemini recently used its multi-modal reasoning capabilities to complete the game Pokémon Blue. Perhaps this is because the models used in this paper are not new enough; considering GPT-o3/o4-mini or Gemini-2.5-Pro might be worthwhile.The other models used are generally not new enough; further supplementation could be considered.]\n\nResponse3: [Thank you for raising this important point. There are several reason that we have not test models new enough. \n\n(1) Price. \n\nRun a LLM Starcraft-II game requires much more interactions than traditional query-answer problem, especially for reasoning model. For Instance, for 10 games of a senario, o1-mini receive 2000 prompt tokens and generate about 3000 tokens per step, and a complete game consist of about 600 steps interactions, with several agents (5 for average, as an instance) work simutaniously. \n\nFor o1-mini, experiment on the single scenario cost about 10x2000x600x5 = 60million input tokens, with 10x3000x600x5 = 90million response tokens. Considering the price that ‘1.10dollars/m tokens’ for input tokens and ‘4.40dollars/m tokens’ for response tokens (all the o-mini models share this price, as of 2025/7/29), it is expensive and also unfriendly for carbon emission for experiment even on a single scenario. \n\n(2) Rapid emergence of new models.  \nRun complete experiments of a model cost a lot of times, especially those with strict concurrent limit or generating thousands of reasoning tokens. In the past half year before NeurIPS submittion deadline, GPT-O3、DeepSeek-V3/R1、Qwen3、llama4、Claude3.7、Gemini-2.5-Pro have been proposed. We found that our experimental speed couldn't even keep up with the speed at which the new model appeared, so we gave up following the models that is too new. \n\nWe fully agree that including a wider range of open-source models would strengthen the evaluation of our environment. We may include additional results of other models (those do not cost too much) if time permitting before the final submission deadline. If we cannot finish the additional evaluations before the deadline, we will consider release these extended results in the future version of arXiv paper.]\n\n---\n\nOnce again, we thank you for your valuable feedback and hope that our clarifications and updates address your concerns.\n\nSincerely,\n\nThe Authors"}]

Author rebuttal:

Meta-review: ## Summary.
This work introduces LLM-PySC2, a StarCraft II environment tailored for large language models (LLMs), providing the full PySC2 action space, multimodal observations, and an asynchronous query architecture for multi-agent communication. The paper evaluates LLMs in macro-decision and micro-operation scenarios, highlighting their potential and limitations, such as hallucinations and inefficient collaboration. 


### Strengths:
- Reviewers commend LLM-PySC2 as the first StarCraft II environment supporting the complete PySC2 action space for LLMs, providing a valuable platform for studying LLM-based decision-making in complex strategy games. The inclusion of multimodal observations (e.g., RGB screen and feature data) and a structured Wiki knowledge database is seen as a significant advancement for benchmarking multi-modal LLMs.
- Reviewers note that the environment’s setup is well-designed and reasonable, with detailed descriptions of the framework, action space, and multi-agent system.
- The paper evaluates LLMs across diverse scenarios, including macro-decision and micro-operation tasks, demonstrating their potential and limitations in complex decision-making.
- LLM-PySC2 fosters further research into LLM-based decision-making, particularly for StarCraft II, aligning with current trends in multi-modal and game AI research.

### Weaknesses:
- Reviewers criticize the lack of comparisons with traditional reinforcement learning (RL) methods, such as AlphaStar, or other LLM architectures.
- Reviewers note the absence of ablation studies to evaluate the contributions of individual components (e.g., multimodal observations, asynchronous query architecture).
- The Protoss race is considered, omitting Terran and Zerg, which limits the environment’s universality. Additionally, reviewer highlights that RL-fine-tuned LLMs (e.g., via PPO or GRPO) were not tested.
- The qualitative nature of hallucination analysis lacks quantitative evidence, and reviewer suggests improving the presentation of hallucination examples for clarity.
- The use of outdated LLMs and suggests testing newer models like GPT-o3/o4-mini or Gemini-2.5-Pro, noting that the poor performance of reasoning models (e.g., GPT-o1) in unseen scenarios contradicts other works.
- It is hard to assess novelty due to limited evaluation of failure modes enabled by the full action space.

**After rebuttal,** some concerns of reviewers are addressed. Overall, all reviewers are positive about the paper. Considering that this work lacks of enough insightful empirical findings or algorithm novelty, I'd like to recommend accept but with low confidence.
Decision: Accept (poster)