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.1.0.tar.gz (57.5 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.1.0-py3-none-any.whl (102.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sc2_datasets-2.1.0.tar.gz
  • Upload date:
  • Size: 57.5 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.1.0.tar.gz
Algorithm Hash digest
SHA256 3abb0c4817179516cb91774404951b34ff9c758f8ce090832649d51ebe84bcd7
MD5 44b94f5f3d1ca42813f1eea9468afa8e
BLAKE2b-256 47430f53532e078e2cf89d502d15f02b10e9e22cc8ca2ffdc3ba2763ad1aabd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc2_datasets-2.1.0.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.1.0-py3-none-any.whl.

File metadata

  • Download URL: sc2_datasets-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 102.3 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58766cec504763eb7bba705bfffd5af38606e420dbe029c055ad12a486dd7de3
MD5 90cd7c551a1c4bbcd33f7323d0e3938c
BLAKE2b-256 4edb7f1a123d1e8fd7a02e4100a48d0362f6d52ae704a788fe7c76ae06e9e5a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for sc2_datasets-2.1.0-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