Skip to main content

Library providing PyTorch and PyTorch Lightning API for pre-processed StarCraft II dataset SC2EGSetDataset and other datasets.

Project description

DOI PyPI Python

StarCraft II Datasets

Library can be used to interface with datasets that were pre-processed with our pipeline as described in:

Currently we have exposed PyTorch and PyTorch Lightning API. Our goal is to provide infrastructure used for StarCraft II analytics.

Please refer to the official documentation, or contact contributors directly for all of the details.

Supported Datasets

SC2EGSet: StarCraft II Esport Game State Dataset

This project contains official API implementation for the works introduced in the following article: SC2EGSet: StarCraft II Esport Replay and Game-state Dataset, namely; Zenodo, SC2EGSet: StarCraft II Esport Game State Dataset, built based on Zenodo, SC2ReSet: StarCraft II Esport Replaypack Set. Contents of this library provide PyTorch and PyTorch Lightning API for pre-processed StarCraft II dataset.

Installation

  1. Manually install PyTorch with minimal version of ^1.11.0+cu116.
  2. Perform the following command:
$ pip install sc2_datasets

Usage

Basic example usage can be seen below. For advanced interactions with the datasets please refer to the documentation.

Use SC2EGSet with PyTorch:

from sc2_datasets.torch.sc2_egset_dataset import SC2EGSetDataset
from sc2_datasets.available_replaypacks import EXAMPLE_SYNTHETIC_REPLAYPACKS

if __name__ == "__main__":
    # Initialize the dataset:
    sc2_egset_dataset = SC2EGSetDataset(
        unpack_dir="./unpack_dir_path",           # Specify existing directory path, where the data will be unpacked.
        download_dir="./download_dir_path",       # Specify existing directory path, where the data will be downloaded.
        download=True,
        names_urls=EXAMPLE_SYNTHETIC_REPLAYPACKS, # Use a synthetic replaypack containing 1 replay.
    )

    # Iterate over instances:
    for i in range(len(sc2_egset_dataset)):
        sc2_egset_dataset[i]

Use SC2EGSet with PyTorch Lightning:

from sc2_datasets.lightning.sc2_egset_datamodule import SC2EGSetDataModule
from sc2_datasets.available_replaypacks import EXAMPLE_SYNTHETIC_REPLAYPACKS

if __name__ == "__main__":
    sc2_egset_datamodule = SC2EGSetDataModule(
                unpack_dir="./unpack_dir_path",            # Specify existing directory path, where the data will be unpacked.
                download_dir="./download_dir_path",        # Specify existing directory path, where the data will be downloaded.
                download=True,
                replaypacks=EXAMPLE_SYNTHETIC_REPLAYPACKS, # Use a synthetic replaypack containing 1 replay.
            )
    sc2_egset_datamodule.prepare_data()
    sc2_egset_datamodule.setup()

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Contributor License Agreement (CLA) and a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

sc2_datasets project was created by Andrzej Białecki. It is licensed under the terms of the GNU General Public License v3.0 license.

Cite

Dataset Description Article

To cite the article that introduces SC2ReSet and SC2EGSet use this:

@article{Bialecki2023,
  author   = {Bia{\l}ecki, Andrzej
              and Jakubowska, Natalia
              and Dobrowolski, Pawe{\l}
              and Bia{\l}ecki, Piotr
              and Krupi{\'{n}}ski, Leszek
              and Szczap, Andrzej
              and Bia{\l}ecki, Robert
              and Gajewski, Jan},
  title    = {SC2EGSet: StarCraft II Esport Replay and Game-state Dataset},
  journal  = {Scientific Data},
  year     = {2023},
  month    = {Sep},
  day      = {08},
  volume   = {10},
  number   = {1},
  pages    = {600},
  issn     = {2052-4463},
  doi      = {10.1038/s41597-023-02510-7},
  url      = {https://doi.org/10.1038/s41597-023-02510-7}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sc2_datasets-2.0.1.tar.gz (57.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sc2_datasets-2.0.1-py3-none-any.whl (101.6 kB view details)

Uploaded Python 3

File details

Details for the file sc2_datasets-2.0.1.tar.gz.

File metadata

  • Download URL: sc2_datasets-2.0.1.tar.gz
  • Upload date:
  • Size: 57.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sc2_datasets-2.0.1.tar.gz
Algorithm Hash digest
SHA256 79d6cbf9a98b5e98cd684b7f83c30a41cc6567edf29d8fd3e2f8c719cece08e3
MD5 0f2f6e0af49e4b3c57283361d39d2c70
BLAKE2b-256 c11db23288c0fa4961c96359f0ff05f594e61194e60f4d2d8467fe50c1add18a

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc2_datasets-2.0.1.tar.gz:

Publisher: pypi_publish.yml on Kaszanas/SC2_Datasets

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sc2_datasets-2.0.1-py3-none-any.whl.

File metadata

  • Download URL: sc2_datasets-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 101.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sc2_datasets-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cba942ee4cbd566503c13c544237155ef5d6863eddc570cea6d2e5d289110a60
MD5 c6bd44b31ba903ca28f26a9c2a115817
BLAKE2b-256 ddd1c745bb606bfbea85b26b3d989796d0f71706b08b9da57a2d0d0552948aa9

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc2_datasets-2.0.1-py3-none-any.whl:

Publisher: pypi_publish.yml on Kaszanas/SC2_Datasets

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page