Community mini-games for pySC2 Starcraft II Learning Environment
Minigames come as a controled environments that might be useful to exploit game features in SC2. General purpose learning system for Startcraft 2 can be a daunting task, so there is a logical option in splitting this tasks into minitask in orther to advance in research.
Mini-games are focused scenarios on small maps that have been constructed with the purpose of testing a subset of actions and/or game mechanics with a clear reward structure. Unlike the full game where the reward is just win/lose/tie, the reward structure for mini-games can reward particular behaviours (as defined in a corresponding .SC2Map file).
Community has also create different kind of mini-games in order to explore other aspects of gaming. This is a curated list that includes a selection of some significative ones, specially focused in aspects such as unit explotation, micro unit managment in different races.
You can clone the repository or download a zip folder with all mini-games by clicking Here
-
Download or clone the repository, or download all minigames clicking here
-
Place the .SC2 files into /Applications/StarCraft II/Maps/mini_games/
-
Go to pysc2\maps\mini_games.py and add to mini-games array the following mini-games names
mini_games = [ ## This mini-games names should alredy been in your list
"BuildMarines", # 900s
"CollectMineralsAndGas", # 420s
"CollectMineralShards", # 120s
"DefeatRoaches", # 120s
"DefeatZerglingsAndBanelings", # 120s
"FindAndDefeatZerglings", # 180s
"MoveToBeacon", # 120s ##Now you add this few lines
"DefeatZealotswithBlink", # 120s
"HallucinIce", # 30s
"PredictBattleOutcome", # 30s
"DefeatRavagersRepairCyclones", # 60s
"HitAndRun", # 300s
"Marine_Rescue", # 180s
"FlowerFields", # 60s
"ResourcesHaveArrived", # 500s
]
- In your console, you can type the mini-game map name
my-computer:~ me$ python -m pysc2.bin.agent --map FlowerFields
You can find a Tutorial for building your own mini-game in a DesignedArmyVsDesignedArmy type.
1.- DefeatZealotswithBlink: Learn to use blink with Stalkers . ProtossVSTerran Readme
2.- HallucinIce: Learn to use Hallucination with Sentry units. ProtossVSTerran Readme
3.- PredictBattleOutcome: Predict the battle outcome. TerranVSZerg Readme
4.- DefeatRavagersRepairCyclones: Learn to repair units with SCVs while defeating the enemy. ZergVSTerran Readme
5.-HitAndRun: ZergVSProtoss Readme
6.-MarineRescue: Terran VS Zerg. Readme
7.-FlowerFields:Learn to regroup and defeat the enemy . TerranVSProtoss . Readme
8.ResourcesHaveArrived:Learn to gather as many minerals as possible . Terran Readme
Minigame repositories from ArChon
A map with 1 Stalker opposite to 1 Zealot. Rewards are earned by using the Stalkers to defeat the Zealots. Whenever all Zealots have been defeated, a new group of 3 Zealots is spawned and the surviving Stalkers are moved to a random point on the opposite spawning location, retaining their existing health. Whenever new units are spawned, all unit positions are reset to opposite sides of the map.
- 1 Stalker at a random side of the map (preselected)
- 1 Zealot at the opposite side of the map from the Stalker
- Zealot defeated: +5
- Stalker defeated: -1
- Time elapsed
- Stalker Defeated
- 120 seconds
- Fog of War disabled
- No camera movement required (single-screen)
- Target skill: Kiting
-
Optimal policy might learn micro strategy to move Stalkers away from zealots and atack them in distance . Focusing on attacking one zealot until it's dead seems to have an optimal outcome.
-
Great map for micro Stalker unit learning
Minigame repositories from SoyGema
The mini-game is an imbalanced melee in between Terran and Prottoss. The goal is to exploit sentry hallucination function
- 3 Sentry at left playable size
- 5 Hellions at right playable size
Protoss defeated : -10 Terran defeated : +10
Time elapsed Zerg defeated
30 seconds
Terrain condition designed for hallucination defense game development Fog of war disabled No camera movement required (single-screen)
- Optimal policy might learn micro strategy to hallucinate units that might absorb the maximum damage possible and positioning hallucinated units protecting sentrys
- Great map for micro sentry unit learning
Minigame repositories from deadzombie2333
Two considerable amount of random enemy armies confront each other in a open area, having random upgrade and skills of their own. Determine or predict wich one will win the batlle .After 2 seconds of pause, both side will march toward each other and start their bloody battle until only one side of the army stand on the battle ground.
- 1 to 22 Marines, 1 to 4 marauders and 1 to 4 tanks displayed randomly
- 1 to 23 zerlings, 1 to 9 banelings and 1 to 11 Hydralisks displayed randomly
- Terran defeated: +1
- Zerg defeated: -1
Time elapsed Zerg defeated
30 seconds
Objective for your agent/AI is to determine which side will win. In order to do that, you have to gather as much information as possible in limited amount of time.
- Optimal policy will predict the outcome of the battle having a high degree of accuracy in a early stage of the game visualization ( before 2 seconds )
Minigame repositories from TitanEX1
Defeat Zerg enemy using the repair function by SCVs. Learn to micro focusing fire and reparing units while attack
- 4 Ravagers
- 2 Cyclones and 2 SCVs
- Terran defeated:
- Zerg defeated:
Time elapsed Zerg defeated
60 seconds
Fog of war disabled No camera movement required (single-screen)
- Optimal policy might learn micro strategy to differenciate in between repair and attack units and exploit each one functions.
- Great map for micro terran repair/attck unit learning
Design of an agent that exploits cliff vaulting mechanics of Colossus in Starcraft II.
Based on Starcraft Master games
Minigame repositories from heerdemoglu and Holyswamp
One Colossus stands on top a cliff, while 27 Zerglings converge to attack on the Colossus climbing from ramps that are located from the sides of the cliff. The aim is to develop an agent which exploits cliff vaulting mechanics of Colossus in order to develop an advantage over Zerglings. The test time is set to 5 minutes and the game ends either when the Colossus ends or the dedicated time period has finished. The game resets itself while retaining reward points and the health of the Colossus, when all Zerglings on the map are killed.
- 1 agent controlled Colossus
- 27 computer controlled Zerglings
- +2 for killing each Zergling
- +x points for every x health that Colosssus has (excluding shields)
- -20 for dying
- Time limit reached
- Colossus dies
- 300 seconds
- Fog of War disabled
- No upgrades available
- The policy might learn micro strategy of kiting the enemy units by using cliff vault mechanic. Timing is crucial for agent to optimize Colossus health while inflicting most damage.
The goal is to locate marines and order them to load a medivac for evacuation. Banelings are wandering on the map randomly looking for marine to kill. 10 difficulty levels are available for beginner and experienced player. The higher level, there will be more marines and banelings appeared simultaneously on the map.
Medivac will automatic launch after it is fully loaded and you will get reward for that. At same time, another empty medivac will enter battle field to the designated location.
- each marine loaded medivac +1
- each marine killed by baneling -1
- each medivac fully loaded and escaped +8
- 180 seconds
Minigame repositories from SoyGema
Defeat protoss photon cannon without losing any marauder. The goal of the minigame is to learn to regroup marauders and to attack in a coordinated way without losing any unit
- 4 photon cannon at Central playable size
- 2 marauders at right playable size
- 2 marauders at left playable size
Protoss defeated : +10 Terran defeated : -5
Time elapsed Protoss defeated Time Limit 60 seconds
Terrain condition designed for photon defense game development Fog of war disabled No camera movement required (single-screen)
- The optimal policy will make marauders to regroup and attack together
Minigame repositories from ShadowSpyes (Map conditions and time changed )
Gather as many minerals as possible . With four different settlement of gas and minerals and a random inizialization of the starting point , the goal is to settle the gathering with as much as resources as possible . Find the optimal position ir even expansion for reaching the goal .
- 1 command center
- 12 SCVs
SCV mineral gather to command center : +5 SCV vespene gather to command center : +5
Time elapsed Protoss defeated Time Limit 300 seconds
Terrain condition designed for photon defense game development Fog of war disabled No camera movement required (single-screen)
- The optimal policy might change the position of the command center in orther to be more near of the more amount of possible minerals and produce more SCVs, even to upgrade command center to produce the highest score possible