Metadata-Version: 2.1
Name: SC2MM
Version: 0.1.0
Summary: A package for StarCraft2 Micro-Management.
Home-page: https://github.com/caiyangcy/SC2DC
Author: Cai Yang
Author-email: u6625166@anu.edu.au
License: UNKNOWN
Description: # SCMM StarCraft II Micro Management
        
        # Installing StarCraft II
        You can find lastest verson of StarCraft II at [here](https://starcraft2.com/en-us/)
        
        After installing the game, navigate to *installing_path/StarCraft II/Maps* and move a copy of all the maps in SCMM there.
        
        If *Maps* folder does not exist, then manually create one
        
        # Installing SCMM
        Two ways:
        
        1. You can directly clone the repo:
        
                git clone https://github.com/caiyangcy/SC2DC.git
            
        2. Use pip install:
        
                pip install SC2MM
        
        
        # Maps
        * You can find a list of maps [here](https://github.com/caiyangcy/SC2DC/blob/master/docs/map_info.md)
        
        Alternatively, you can run:
        
            python -m scmm.bin.map_list
        
        ## View a Map
        
        All the maps can be viewed by StarCraft II Editor
        
        ## Change a Map
        
        The terrain and functionality of a map can be changed by StarCraft II Editor
        
        ## Create a Map
        
        Create a map using StarCraft II Editor. After creation, make sure add the map to *scmm/env/micro_env/maps/mm_maps.py* and also make sure the map is added to the game folder
        
        ## Create an unit
        
        The most important thing when creating units on a new map is to disable some reactions of them. 
        
        To do this (taken from SMAC):
        
                Open editor, data editor, unit tab
                
                Right click and click add new unit
                
                Name the new unit, click suggest right below it
                
                Leave the "parent:" row alone. That determines what we're making. We want to make a unit
                
                Select the unit you want to copy (bottom of the new opened window, "copy from" row) e.g. zealot if you're copying zealot
                
                Set the "Object family:," "Race:," and "Object Type:" as desired. THESE DO NOTHING but make it easier for you to find your new unit once it's made. e.g. you probably want a new zerg unit to be in the zerg section when you go to place it on your map or something.
                
                Press okay, you're almost done
                
                Click the plus sign on the data editor tabs, go to edit actor data, actors
                
                Click the new actors tab
                
                Right click and click add new actor
                
                Name it and click suggest like before
                
                Change the "Actor Type:" row to unit
                
                Select what you want to copy from (bottom of the new opened window again) e.g. zealot if you're coping a zealot
                
                Press okay
                
                Click on your new actor
                
                At the bottom right of the window where it says "Token" and then "Unit Name," change the unit name to the name of your unit e.g. Zealot RL
                
                Go back to the Unit tab, find the new unit and modify the following fields:
                
                    (Basic) Stats: Supplies - 0
                    Combat: Default Acquire Level - Passive
                    Behaviour: Response - No Response
        
        
        ## Unit Tester Map
        
        A unit tester map can be found at unit tester map folder. Source at *[unit-tester](https://www.sc2mapster.com/projects/unit-tester).
        
        The purpose of this map is to help design some new scenarios. 
        
        
        # Run
        
        Refer to the names of agents to find out the details of running agents.
        
        ## Scripted
        
            python -m scmm.agents.scripted.agent_demo -n_episode=10 -map_name=3m -difficulty=7 -plot_level=0 -agent=FocusFire
            
        ## Genetic
            
            python -m scmm.agents.genetic.ga -n_episode=10 -map_name=8m -difficulty=7 -plot_level=0 
            
        ## NN
        
            python -m scmm.agents.nn.nn -n_episode=10 -map_name=25m -difficulty=7 -plot_level=0 
            
        ## Potential Field
        
            python -m scmm.agents.potential_fields.forces -n_episode=10 -map_name=25m -difficulty=7 -plot_level=0 
        
        # Acknowledgement
        * The coding is based on [SMAC](https://github.com/oxwhirl/smac). Refer to the repo for details and license.
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6.10
Description-Content-Type: text/markdown
