Releases: Kaszanas/SC2InfoExtractorGo
2.1.3 SC2InfoExtractorGo Release
What's Changed
- [PR] 97 recalculation cmdupdatetargetunit by @Kaszanas in #100
- [PR] Removed unused, added docstrings by @Kaszanas in #101
- [PR] Preparing 2.1.3 Hotfix by @Kaszanas in #102
Full Changelog: 2.1.2...2.1.3
SC2InfoExtractorGo
A tool meant to allow for quick data extraction from StarCraft 2 replay files ".SC2Replay".
Example Usage (Docker)
Note
This steps assumes that you have Docker installed on your machine and working.
Additionally, you will either need to pull the docker image from DockerHub or build it locally as described in Build Docker Images.
The easiest way to run this tool is to use the provided Docker image release. Please note that the maps directory can be mounted to see what map files are downloaded, and what map files were pre-seeded with the Docker Image. Other command line options are described in CLI Options.
Commands below showcases the exampe usage of the tool.
Steps:
- Pull the Docker image from DockerHub or Build Docker Images:
docker pull kaszanas/sc2infoextractorgo:latest- Place your
.SC2Replayfiles in the directory which you want to mount as the input directory. The default directory for replays within the container is/app/replays/input. - Pick one of the following commands.
- Run the docker container and mount the entire directory:
docker run -it --rm \ -v </path/to/your/directory>:/app \ sc2infoextractorgo:latest -help
- Run the Docker container and mount specific paths.
Replace the<path>with the appropriate paths on your system:
docker run -it --rm \ -v </path/to/your/replays>:/app/replays/input \ -v </path/to/your/output>:/app/replays/output \ -v </path/to/your/logs>:/app/logs \ -v </path/to/your/maps>:/app/maps \ sc2infoextractorgo:latest -help
- When you execute the processing command, please note that you need to pass the appropriate paths to the tool that are withing the container. The default paths are:
- Input directory:
/app/replays/input - Output directory:
/app/replays/output - Logs directory:
/app/logs - Maps directory:
/app/maps - Additionally the tool outputs some auxiliary files that can be used for debugging purposes. These are created in the main directory of the container
/app/.
- Input directory:
Note
If you wish to see other files that are generated by the tool, you will have to mount the appropriate directories. The tool generates logs in the logs directory.
Example Usage (Local)
Note
These steps assume that you downloaded the release binary or you will have to compile the tool from source.
- Place
.SC2Replayfiles in./replays/input - Run
SC2InfoExtractorGo.exeas follows:
SC2InfoExtractorGo.exe -input ./replays/input -output ./replays/output- Verify the output in
./replays/output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
CLI Options
To see the full list of available options, run the tool with the -help flag:
SC2InfoExtractorGo.exe -helpThe following flags are available:
-help
Show command usage
-game_mode_filter int
Specifies which game mode should be included from the processed files
in a format of a binary flag: AllGameModes: 0b11111111 (default 0b11111111) (default 255)
-input string
Input directory where .SC2Replay files are held. (default "./replays/input")
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7:
Panic - 1, Fatal - 2,
Error - 3, Warn - 4,
Info - 5, Debug - 6,
Trace - 7 (default 4)
-maps_directory string
Directory where the maps will be downloaded as a result of the replay processing. (default "./maps/")
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing (default runtime.NumCPU()). (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed
into a zip archive. Please remember that this number needs to be lower
than the number of processed files. If set to 0, will omit the
zip packaging and output .json directly to drive. (default 1)
-only_map_download
Flag specifying if the tool is supposed to only download
the maps and not process the replays.
-output string
Output directory where compressed zip packages will be saved. (default "./replays/output")
-perform_chat_anonymization
Flag, specifying if the chat anonymization should be performed.
-perform_cleanup
Flag specifying if the tool is supposed to perform the cleaning
functions within the processing pipeline.
-perform_filtering
Flag, specifying if the pipeline ought to verify different hard coded game modes.
If set to false completely bypasses the filtering.
-perform_integrity_checks
Flag specifying if the software is supposed to check the hardcoded
integrity checks for the provided replays
-perform_player_anonymization
Flag specifying if the tool is supposed to perform player anonymization
functions within the processing pipeline.
If set to true please remember to download and run
an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_validity_checks
Flag, specifying if the tool is supposed to use hardcoded validity checks
and verify if the replay file variables are within 'common sense' ranges.
-skip_map_download
Flag specifying if the tool is supposed to skip the map download
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information.
If this is empty no profiling is performed.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Anonymization (Optional)
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
Existing implementation downloads the maps from the Blizzard servers. This is to normalize the map names to English language. When there is no internet connection available, our tool should fallback to reading the map names from the files placed in the ./maps directory.
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
2.1.2 SC2InfoExtractorGo Release
What's Changed
- [PR] Anonymization hotfix, working anonymization by @Kaszanas in #92
- [PR] Anonymization Hotfix 2.1.2 by @Kaszanas in #93
- [PR] Hotfix: Added Checks for Empty Map Names by @Kaszanas in #94
- [PR] Hotfix 2.1.2: Checking empty map names by @Kaszanas in #95
Full Changelog: 2.1.1...2.1.2
SC2InfoExtractorGo
A tool meant to allow for quick data extraction from StarCraft 2 replay files ".SC2Replay".
Example Usage (Docker)
Note
This steps assumes that you have Docker installed on your machine and working.
Additionally, you will either need to pull the docker image from DockerHub or build it locally as described in Build Docker Images.
The easiest way to run this tool is to use the provided Docker image release. Please note that the maps directory can be mounted to see what map files are downloaded, and what map files were pre-seeded with the Docker Image. Other command line options are described in CLI Options.
Commands below showcases the exampe usage of the tool.
Steps:
- Pull the Docker image from DockerHub or Build Docker Images:
docker pull kaszanas/sc2infoextractorgo:latest- Place your
.SC2Replayfiles in the directory which you want to mount as the input directory. The default directory for replays within the container is/app/replays/input. - Pick one of the following commands.
- Run the docker container and mount the entire directory:
docker run -it --rm \ -v </path/to/your/directory>:/app \ sc2infoextractorgo:latest -help
- Run the Docker container and mount specific paths.
Replace the<path>with the appropriate paths on your system:
docker run -it --rm \ -v </path/to/your/replays>:/app/replays/input \ -v </path/to/your/output>:/app/replays/output \ -v </path/to/your/logs>:/app/logs \ -v </path/to/your/maps>:/app/maps \ sc2infoextractorgo:latest -help
- When you execute the processing command, please note that you need to pass the appropriate paths to the tool that are withing the container. The default paths are:
- Input directory:
/app/replays/input - Output directory:
/app/replays/output - Logs directory:
/app/logs - Maps directory:
/app/maps - Additionally the tool outputs some auxiliary files that can be used for debugging purposes. These are created in the main directory of the container
/app/.
- Input directory:
Note
If you wish to see other files that are generated by the tool, you will have to mount the appropriate directories. The tool generates logs in the logs directory.
Example Usage (Local)
Note
These steps assume that you downloaded the release binary or you will have to compile the tool from source.
- Place
.SC2Replayfiles in./replays/input - Run
SC2InfoExtractorGo.exeas follows:
SC2InfoExtractorGo.exe -input ./replays/input -output ./replays/output- Verify the output in
./replays/output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
CLI Options
To see the full list of available options, run the tool with the -help flag:
SC2InfoExtractorGo.exe -helpThe following flags are available:
-help
Show command usage
-game_mode_filter int
Specifies which game mode should be included from the processed files
in a format of a binary flag: AllGameModes: 0b11111111 (default 0b11111111) (default 255)
-input string
Input directory where .SC2Replay files are held. (default "./replays/input")
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7:
Panic - 1, Fatal - 2,
Error - 3, Warn - 4,
Info - 5, Debug - 6,
Trace - 7 (default 4)
-maps_directory string
Directory where the maps will be downloaded as a result of the replay processing. (default "./maps/")
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing (default runtime.NumCPU()). (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed
into a zip archive. Please remember that this number needs to be lower
than the number of processed files. If set to 0, will ommit the
zip packaging and output .json directly to drive. (default 1)
-only_map_download
Flag specifying if the tool is supposed to only download
the maps and not process the replays.
-output string
Output directory where compressed zip packages will be saved. (default "./replays/output")
-perform_chat_anonymization
Flag, specifying if the chat anonymization should be performed.
-perform_cleanup
Flag specifying if the tool is supposed to perform the cleaning
functions within the processing pipeline.
-perform_filtering
Flag, specifying if the pipeline ought to verify different hard coded game modes.
If set to false completely bypasses the filtering.
-perform_integrity_checks
Flag specifying if the software is supposed to check the hardcoded
integrity checks for the provided replays
-perform_player_anonymization
Flag specifying if the tool is supposed to perform player anonymization
functions within the processing pipeline.
If set to true please remember to download and run
an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_validity_checks
Flag, specifying if the tool is supposed to use hardcoded validity checks
and verify if the replay file variables are within 'common sense' ranges.
-skip_map_download
Flag specifying if the tool is supposed to skip the map download
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information.
If this is empty no profiling is performed.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Anonymization (Optional)
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
Existing implementation downloads the maps from the Blizzard servers. This is to normalize the map names to English language. When there is no internet connection available, our tool should fallback to reading the map names from the files placed in the ./maps directory.
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
Cite Us!
@software{BialeckiExtractor2021,
author = {Białecki, Andrzej and
Białecki, Piotr and
Krupiński, Leszek},
title = {{Kaszanas/SC2InfoExtractorGo: 1.2.0
SC2InfoExtractorGo Release}},
month = {jun},
year = {2022},
publisher = {Zenodo},
version = {1.2.0},
doi = {10.5281/zenodo.5296788},
url = {https://doi.org/10.5281/zenodo.5296788}
}
2.1.1 SC2InfoExtractorGo Release
What's Changed
Full Changelog: 2.1.0...2.1.1
SC2InfoExtractorGo
A tool meant to allow for quick data extraction from StarCraft 2 replay files ".SC2Replay".
Example Usage (Docker)
Note
This steps assumes that you have Docker installed on your machine and working.
Additionally, you will either need to pull the docker image from DockerHub or build it locally as described in Build Docker Images.
The easiest way to run this tool is to use the provided Docker image release. Please note that the maps directory can be mounted to see what map files are downloaded, and what map files were pre-seeded with the Docker Image. Other command line options are described in CLI Options.
Commands below showcases the exampe usage of the tool.
Steps:
- Pull the Docker image from DockerHub or Build Docker Images:
docker pull kaszanas/sc2infoextractorgo:latest- Place your
.SC2Replayfiles in the directory which you want to mount as the input directory. The default directory for replays within the container is/app/replays/input. - Pick one of the following commands.
- Run the docker container and mount the entire directory:
docker run -it --rm \ -v </path/to/your/directory>:/app \ sc2infoextractorgo:latest -help
- Run the Docker container and mount specific paths.
Replace the<path>with the appropriate paths on your system:
docker run -it --rm \ -v </path/to/your/replays>:/app/replays/input \ -v </path/to/your/output>:/app/replays/output \ -v </path/to/your/logs>:/app/logs \ -v </path/to/your/maps>:/app/maps \ sc2infoextractorgo:latest -help
- When you execute the processing command, please note that you need to pass the appropriate paths to the tool that are withing the container. The default paths are:
- Input directory:
/app/replays/input - Output directory:
/app/replays/output - Logs directory:
/app/logs - Maps directory:
/app/maps - Additionally the tool outputs some auxiliary files that can be used for debugging purposes. These are created in the main directory of the container
/app/.
- Input directory:
Note
If you wish to see other files that are generated by the tool, you will have to mount the appropriate directories. The tool generates logs in the logs directory.
Example Usage (Local)
Note
These steps assume that you downloaded the release binary or you will have to compile the tool from source.
- Place
.SC2Replayfiles in./replays/input - Run
SC2InfoExtractorGo.exeas follows:
SC2InfoExtractorGo.exe -input ./replays/input -output ./replays/output- Verify the output in
./replays/output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
CLI Options
To see the full list of available options, run the tool with the -help flag:
SC2InfoExtractorGo.exe -helpThe following flags are available:
-help
Show command usage
-game_mode_filter int
Specifies which game mode should be included from the processed files
in a format of a binary flag: AllGameModes: 0b11111111 (default 0b11111111) (default 255)
-input string
Input directory where .SC2Replay files are held. (default "./replays/input")
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7:
Panic - 1, Fatal - 2,
Error - 3, Warn - 4,
Info - 5, Debug - 6,
Trace - 7 (default 4)
-maps_directory string
Directory where the maps will be downloaded as a result of the replay processing. (default "./maps/")
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing (default runtime.NumCPU()). (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed
into a zip archive. Please remember that this number needs to be lower
than the number of processed files. If set to 0, will ommit the
zip packaging and output .json directly to drive. (default 1)
-only_map_download
Flag specifying if the tool is supposed to only download
the maps and not process the replays.
-output string
Output directory where compressed zip packages will be saved. (default "./replays/output")
-perform_chat_anonymization
Flag, specifying if the chat anonymization should be performed.
-perform_cleanup
Flag specifying if the tool is supposed to perform the cleaning
functions within the processing pipeline.
-perform_filtering
Flag, specifying if the pipeline ought to verify different hard coded game modes.
If set to false completely bypasses the filtering.
-perform_integrity_checks
Flag specifying if the software is supposed to check the hardcoded
integrity checks for the provided replays
-perform_player_anonymization
Flag specifying if the tool is supposed to perform player anonymization
functions within the processing pipeline.
If set to true please remember to download and run
an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_validity_checks
Flag, specifying if the tool is supposed to use hardcoded validity checks
and verify if the replay file variables are within 'common sense' ranges.
-skip_map_download
Flag specifying if the tool is supposed to skip the map download
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information.
If this is empty no profiling is performed.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Anonymization (Optional)
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
Existing implementation downloads the maps from the Blizzard servers. This is to normalize the map names to English language. When there is no internet connection available, our tool should fallback to reading the map names from the files placed in the ./maps directory.
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
2.1.0 SC2InfoExtractorGo Release
What's Changed
- [PR] Preparing Release 2.0.0 by @Kaszanas in #62
- [PR] Non Mutex Map URL Acquisition by @Kaszanas in #81
- [PR] Simplified Downloading Pipeline by @Kaszanas in #83
- [PR] 84 Game Events Cmd Flags to Strings by @Kaszanas in #85
- [PR] 86 Recalculate Game Event Coordinates by @Kaszanas in #87
- [PR] Preparing 2.1.0 by @Kaszanas in #88
Full Changelog: 2.0.0...2.1.0
SC2InfoExtractorGo
A tool meant to allow for quick data extraction from StarCraft 2 replay files ".SC2Replay".
Example Usage (Docker)
Note
This steps assumes that you have Docker installed on your machine and working.
Additionally, you will either need to pull the docker image from DockerHub or build it locally as described in Build Docker Images.
The easiest way to run this tool is to use the provided Docker image release. Please note that the maps directory can be mounted to see what map files are downloaded, and what map files were pre-seeded with the Docker Image. Other command line options are described in CLI Options.
Commands below showcases the exampe usage of the tool.
Steps:
- Pull the Docker image from DockerHub or Build Docker Images:
docker pull kaszanas/sc2infoextractorgo:latest- Place your
.SC2Replayfiles in the directory which you want to mount as the input directory. The default directory for replays within the container is/app/replays/input. - Pick one of the following commands.
- Run the docker container and mount the entire directory:
docker run -it --rm \ -v </path/to/your/directory>:/app \ sc2infoextractorgo:latest -help
- Run the Docker container and mount specific paths.
Replace the<path>with the appropriate paths on your system:
docker run -it --rm \ -v </path/to/your/replays>:/app/replays/input \ -v </path/to/your/output>:/app/replays/output \ -v </path/to/your/logs>:/app/logs \ -v </path/to/your/maps>:/app/maps \ sc2infoextractorgo:latest -help
- When you execute the processing command, please note that you need to pass the appropriate paths to the tool that are withing the container. The default paths are:
- Input directory:
/app/replays/input - Output directory:
/app/replays/output - Logs directory:
/app/logs - Maps directory:
/app/maps - Additionally the tool outputs some auxiliary files that can be used for debugging purposes. These are created in the main directory of the container
/app/.
- Input directory:
Note
If you wish to see other files that are generated by the tool, you will have to mount the appropriate directories. The tool generates logs in the logs directory.
Example Usage (Local)
Note
These steps assume that you downloaded the release binary or you will have to compile the tool from source.
- Place
.SC2Replayfiles in./replays/input - Run
SC2InfoExtractorGo.exeas follows:
SC2InfoExtractorGo.exe -input ./replays/input -output ./replays/output- Verify the output in
./replays/output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
CLI Options
To see the full list of available options, run the tool with the -help flag:
SC2InfoExtractorGo.exe -helpThe following flags are available:
-help
Show command usage
-game_mode_filter int
Specifies which game mode should be included from the processed files
in a format of a binary flag: AllGameModes: 0b11111111 (default 0b11111111) (default 255)
-input string
Input directory where .SC2Replay files are held. (default "./replays/input")
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7:
Panic - 1, Fatal - 2,
Error - 3, Warn - 4,
Info - 5, Debug - 6,
Trace - 7 (default 4)
-maps_directory string
Directory where the maps will be downloaded as a result of the replay processing. (default "./maps/")
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing (default runtime.NumCPU()). (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed
into a zip archive. Please remember that this number needs to be lower
than the number of processed files. If set to 0, will ommit the
zip packaging and output .json directly to drive. (default 1)
-only_map_download
Flag specifying if the tool is supposed to only download
the maps and not process the replays.
-output string
Output directory where compressed zip packages will be saved. (default "./replays/output")
-perform_chat_anonymization
Flag, specifying if the chat anonymization should be performed.
-perform_cleanup
Flag specifying if the tool is supposed to perform the cleaning
functions within the processing pipeline.
-perform_filtering
Flag, specifying if the pipeline ought to verify different hard coded game modes.
If set to false completely bypasses the filtering.
-perform_integrity_checks
Flag specifying if the software is supposed to check the hardcoded
integrity checks for the provided replays
-perform_player_anonymization
Flag specifying if the tool is supposed to perform player anonymization
functions within the processing pipeline.
If set to true please remember to download and run
an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_validity_checks
Flag, specifying if the tool is supposed to use hardcoded validity checks
and verify if the replay file variables are within 'common sense' ranges.
-skip_map_download
Flag specifying if the tool is supposed to skip the map download
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information.
If this is empty no profiling is performed.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Anonymization (Optional)
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
Existing implementation downloads the maps from the Blizzard servers. This is to normalize the map names to English language. When there is no internet connection available, our tool should fallback to reading the map names from the files placed in the ./maps directory.
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
2.0.0 SC2InfoExtractorGo Release
Changes
SC2InfoExtractorGo
A tool meant to allow for quick data extraction from StarCraft 2 replay files ".SC2Replay".
Example Usage (Docker)
Note
This steps assumes that you have Docker installed on your machine and working.
Additionally, you will either need to pull the docker image from DockerHub or build it locally as described in Build Docker Images.
The easiest way to run this tool is to use the provided Docker image release. Please note that the maps directory can be mounted to see what map files are downloaded, and what map files were pre-seeded with the Docker Image. Other command line options are described in CLI Options.
Commands below showcases the exampe usage of the tool.
Steps:
- Pull the Docker image from DockerHub or Build Docker Images:
docker pull kaszanas/sc2infoextractorgo:latest- Place your
.SC2Replayfiles in the directory which you want to mount as the input directory. The default directory for replays within the container is/app/replays/input. - Pick one of the following commands.
- Run the docker container and mount the entire directory:
docker run -it --rm \ -v </path/to/your/directory>:/app \ sc2infoextractorgo:latest -help
- Run the Docker container and mount specific paths.
Replace the<path>with the appropriate paths on your system:
docker run -it --rm \ -v </path/to/your/replays>:/app/replays/input \ -v </path/to/your/output>:/app/replays/output \ -v </path/to/your/logs>:/app/logs \ -v </path/to/your/maps>:/app/maps \ sc2infoextractorgo:latest -help
- When you execute the processing command, please note that you need to pass the appropriate paths to the tool that are withing the container. The default paths are:
- Input directory:
/app/replays/input - Output directory:
/app/replays/output - Logs directory:
/app/logs - Maps directory:
/app/maps - Additionally the tool outputs some auxiliary files that can be used for debugging purposes. These are created in the main directory of the container
/app/.
- Input directory:
Note
If you wish to see other files that are generated by the tool, you will have to mount the appropriate directories. The tool generates logs in the logs directory.
Example Usage (Local)
Note
These steps assume that you downloaded the release binary or you will have to compile the tool from source.
- Place
.SC2Replayfiles in./replays/input - Run
SC2InfoExtractorGo.exeas follows:
SC2InfoExtractorGo.exe -input ./replays/input -output ./replays/output- Verify the output in
./replays/output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
CLI Options
To see the full list of available options, run the tool with the -help flag:
SC2InfoExtractorGo.exe -helpThe following flags are available:
-help
Show command usage
-game_mode_filter int
Specifies which game mode should be included from the processed files
in a format of a binary flag: AllGameModes: 0b11111111 (default 0b11111111) (default 255)
-input string
Input directory where .SC2Replay files are held. (default "./replays/input")
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7:
Panic - 1, Fatal - 2,
Error - 3, Warn - 4,
Info - 5, Debug - 6,
Trace - 7 (default 4)
-maps_directory string
Directory where the maps will be downloaded as a result of the
replay processing. (default "./maps/")
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing (default runtime.NumCPU()). (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed
into a zip archive. Please remember that this number needs to be lower
than the number of processed files. If set to 0, will ommit the
zip packaging and output .json directly to drive. (default 1)
-only_map_download
Flag specifying if the tool is supposed to only download
the maps and not process the replays.
-output string
Output directory where compressed zip packages will be saved. (default "./replays/output")
-perform_chat_anonymization
Flag, specifying if the chat anonymization should be performed.
-perform_cleanup
Flag specifying if the tool is supposed to perform the cleaning
functions within the processing pipeline.
-perform_filtering
Flag, specifying if the pipeline ought to verify different hard coded game modes.
If set to false completely bypasses the filtering.
-perform_integrity_checks
Flag specifying if the software is supposed to check the hardcoded
integrity checks for the provided replays
-perform_player_anonymization
Flag specifying if the tool is supposed to perform player anonymization
functions within the processing pipeline.
If set to true please remember to download and run
an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_validity_checks
Flag, specifying if the tool is supposed to use hardcoded validity checks
and verify if the replay file variables are within 'common sense' ranges.
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information.
If this is empty no profiling is performed.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Anonymization (Optional)
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
Existing implementation downloads the maps from the Blizzard servers. This is to normalize the map names to English language. When there is no internet connection available, our tool should fallback to reading the map names from the files placed in the ./maps directory.
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
Cite Us!
@software{BialeckiExtractor2021,
author = {Białecki, Andrzej and
Białecki, Piotr and
Krupiński, Leszek},
title = {{Kaszanas/SC2InfoExtractorGo: 1.2.0
SC2InfoExtractorGo Release}},
month = {jun},
year = {2022},
publisher = {Zenodo},
version = {1.2.0},
doi = {10.5281/zenodo.5296788},
url = {https://doi.org/10.5281/zenodo.5296788}
}
1.2.1 SC2InfoExtractorGo Release
SC2InfoExtractorGo
This tool is meant to allow for quick data extraction from SC2 replay files ".SC2Replay".
Usage
In order to use this tool please call SC2InfoExtractorGo.exe and set the choosen flags listed below:
-input string
Input directory where .SC2Replay files are held. (default "./DEMOS/Input")
-output string
Output directory where compressed zip packages will be saved. (default "./DEMOS/Output")
-perform_filtering
Specifies if the pipeline ought to verify different hard coded game modes. If set to false completely bypasses the filtering.
-game_mode_filter int
Specifies which game mode should be included from the processed files in a format of a binary flag: AllGameModes: 0b11111111 (default 255)
-localized_maps_file string
Specifies a path to localization file containing {'ForeignName': 'EnglishName'} of maps. If this flag is not set and the default is unavailable, map translation will be ommited. (default "./operation_files/output.json")
-perform_integrity_checks
If the software is supposed to check the hardcoded integrity checks for the provided replays
-perform_validity_checks
Provide if the tool is supposed to use hardcoded validity checks and verify if the replay file variables are within 'common sense' ranges.
-perform_cleanup
Provide if the tool is supposed to perform the cleaning functions within the processing pipeline.
-perform_chat_anonymization
Specifies if the chat anonymization should be performed.
-perform_player_anonymization
Specifies if the tool is supposed to perform player anonymization functions within the processing pipeline. If set to true please remember to download and run an anonymization server: https://doi.org/10.5281/zenodo.5138313
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing. (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed into a zip archive. Please remember that this number needs to be lower than the number of processed files. If set to 0, will ommit the zip packaging and output .json directly to drive. (default 1)
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information. If this is empty no profiling is performed.
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7. Panic - 1, Fatal - 2, Error - 3, Warn - 4, Info - 5, Debug - 6, Trace - 7 (default 4)
Minimal Example
- Place
.SC2Replayfiles in./DEMOS/Input - Run
SC2InfoExtractorGo.exewith default flags. - Verify the output in
./DEMOS/Output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Two scripts contained within that software can:
- Flatten directory structure of Your collected replays by looking for
.SC2Replayfiles. - Running Python multiprocessing package on multiple directories containing replays by calling them with
-with-multiprocessing=falseflag. This allows to have one package per directory created and speed up the processing.
Anonymization
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
If the provided file output.json does not support map names that You require, You will have to either find it online or within the game documents. We are close to publishing a tool that will allow You to download StarCraft maps.
If You already have a set of StarCraft II maps that You would like to create a .json file to be included within Our software, use Your own solution or SC2MapLocaleExtractor: https://doi.org/10.5281/zenodo.4733264
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
Build from source
Our working solution was built by using go build command on 64 bit version of Windows 10
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
Testing
The software contains defined unit tests. In order to run them please use the following command with the default provided .SC2Replay files:
go test ./...
If You have Your own replay files please either create directories containing different sets of replays to be tested and edit the TEST_INPUT_REPLAYPACK_DIR variable in ./dataproc/dataproc_pipeline_test.go or provide them all in the ./test_files/test_replays directory as input. If the TEST_INPUT_REPLAYPACK_DIR is not set then the test is skipped. If You decide that it is suitable to skip certain directories while testing on replaypacks please include the directory names in TEST_BYPASS_THESE variable in ./dataproc/dataproc_pipeline_test.go.
If You wish to run the pipeline tests against a very big set of replays please keep in mind that the default Golang test timeout is set to 10 minutes. We have found that the processing of 47 tournaments from 2016 until 2021 takes about 240 minutes to complete. Example command:
go test ./dataproc -v -run TestPipelineWrapperMultiple -timeout 240m
1.2.0 SC2InfoExtractorGo Release
SC2InfoExtractorGo
This tool is meant to allow for quick data extraction from SC2 replay files ".SC2Replay".
Usage
In order to use this tool please call SC2InfoExtractorGo.exe and set the choosen flags listed below:
-input string
Input directory where .SC2Replay files are held. (default "./DEMOS/Input")
-output string
Output directory where compressed zip packages will be saved. (default "./DEMOS/Output")
-perform_filtering
Specifies if the pipeline ought to verify different hard coded game modes. If set to false completely bypasses the filtering.
-game_mode_filter int
Specifies which game mode should be included from the processed files in a format of a binary flag: AllGameModes: 0b11111111 (default 255)
-localized_maps_file string
Specifies a path to localization file containing {'ForeignName': 'EnglishName'} of maps. If this flag is not set and the default is unavailable, map translation will be ommited. (default "./operation_files/output.json")
-perform_integrity_checks
If the software is supposed to check the hardcoded integrity checks for the provided replays
-perform_validity_checks
Provide if the tool is supposed to use hardcoded validity checks and verify if the replay file variables are within 'common sense' ranges.
-perform_cleanup
Provide if the tool is supposed to perform the cleaning functions within the processing pipeline.
-perform_chat_anonymization
Specifies if the chat anonymization should be performed.
-perform_player_anonymization
Specifies if the tool is supposed to perform player anonymization functions within the processing pipeline. If set to true please remember to download and run an anonymization server: https://doi.org/10.5281/zenodo.5138313
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing. (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed into a zip archive. Please remember that this number needs to be lower than the number of processed files. If set to 0, will ommit the zip packaging and output .json directly to drive. (default 1)
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information. If this is empty no profiling is performed.
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7. Panic - 1, Fatal - 2, Error - 3, Warn - 4, Info - 5, Debug - 6, Trace - 7 (default 4)
Minimal Example
- Place
.SC2Replayfiles in./DEMOS/Input - Run
SC2InfoExtractorGo.exewith default flags. - Verify the output in
./DEMOS/Output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Two scripts contained within that software can:
- Flatten directory structure of Your collected replays by looking for
.SC2Replayfiles. - Running Python multiprocessing package on multiple directories containing replays by calling them with
-with-multiprocessing=falseflag. This allows to have one package per directory created and speed up the processing.
Anonymization
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
If the provided file output.json does not support map names that You require, You will have to either find it online or within the game documents. We are close to publishing a tool that will allow You to download StarCraft maps.
If You already have a set of StarCraft II maps that You would like to create a .json file to be included within Our software, use Your own solution or SC2MapLocaleExtractor: https://doi.org/10.5281/zenodo.4733264
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
Build from source
Our working solution was built by using go build command on 64 bit version of Windows 10
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
Testing
The software contains defined unit tests. In order to run them please use the following command with the default provided .SC2Replay files:
go test ./...
If You have Your own replay files please either create directories containing different sets of replays to be tested and edit the TEST_INPUT_REPLAYPACK_DIR variable in ./dataproc/dataproc_pipeline_test.go or provide them all in the ./test_files/test_replays directory as input. If the TEST_INPUT_REPLAYPACK_DIR is not set then the test is skipped. If You decide that it is suitable to skip certain directories while testing on replaypacks please include the directory names in TEST_BYPASS_THESE variable in ./dataproc/dataproc_pipeline_test.go.
If You wish to run the pipeline tests against a very big set of replays please keep in mind that the default Golang test timeout is set to 10 minutes. We have found that the processing of 47 tournaments from 2016 until 2021 takes about 240 minutes to complete. Example command:
go test ./dataproc -v -run TestPipelineWrapperMultiple -timeout 240m
1.1.0 SC2InfoExtractorGo Release
SC2InfoExtractorGo
This tool is meant to allow for quick data extraction from SC2 replay files ".SC2Replay".
Usage
In order to use this tool please call SC2InfoExtractorGo.exe and set the choosen flags listed below:
-input string
Input directory where .SC2Replay files are held. (default "./DEMOS/Input")
-output string
Output directory where compressed zip packages will be saved. (default "./DEMOS/Output")
-perform_filtering
Specifies if the pipeline ought to verify different hard coded game modes. If set to false completely bypasses the filtering.
-game_mode_filter int
Specifies which game mode should be included from the processed files in a format of a binary flag: AllGameModes: 0b11111111 (default 255)
-localized_maps_file string
Specifies a path to localization file containing {'ForeignName': 'EnglishName'} of maps. If this flag is not set and the default is unavailable, map translation will be ommited. (default "./operation_files/output.json")
-perform_integrity_checks
If the software is supposed to check the hardcoded integrity checks for the provided replays
-perform_validity_checks
Provide if the tool is supposed to use hardcoded validity checks and verify if the replay file variables are within 'common sense' ranges.
-perform_cleanup
Provide if the tool is supposed to perform the cleaning functions within the processing pipeline.
-perform_chat_anonymization
Specifies if the chat anonymization should be performed.
-perform_player_anonymization
Specifies if the tool is supposed to perform player anonymization functions within the processing pipeline. If set to true please remember to download and run an anonymization server: https://doi.org/10.5281/zenodo.5138313
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing. (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed into a zip archive. Please remember that this number needs to be lower than the number of processed files. If set to 0, will ommit the zip packaging and output .json directly to drive. (default 1)
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information. If this is empty no profiling is performed.
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7. Panic - 1, Fatal - 2, Error - 3, Warn - 4, Info - 5, Debug - 6, Trace - 7 (default 4)
Minimal Example
- Place
.SC2Replayfiles in./DEMOS/Input - Run
SC2InfoExtractorGo.exewith default flags. - Verify the output in
./DEMOS/Output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Two scripts contained within that software can:
- Flatten directory structure of Your collected replays by looking for
.SC2Replayfiles. - Running Python multiprocessing package on multiple directories containing replays by calling them with
-with-multiprocessing=falseflag. This allows to have one package per directory created and speed up the processing.
Anonymization
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database of unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
If the provided file output.json does not support map names that You require, You will have to either find it online or within the game documents. We are close to publishing a tool that will allow You to download StarCraft maps.
If You already have a set of StarCraft II maps that You would like to create a .json file to be included within Our software, use Your own solution or SC2MapLocaleExtractor: https://doi.org/10.5281/zenodo.4733264
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
Build from source
Our working solution was built by using go build command on 64 bit version of Windows 10
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
1.0.0 SC2InfoExtractorGo Release
SC2InfoExtractorGo
This tool is meant to allow for quick data extraction from SC2 replay files ".SC2Replay".
Usage
In order to use this tool please call SC2InfoExtractorGo.exe and set the choosen flags listed below:
-input string
Input directory where .SC2Replay files are held. (default "./DEMOS/Input")
-output string
Output directory where compressed zip packages will be saved. (default "./DEMOS/Output")
-game_mode int
Provide which game mode should be included from the processed files in a format of a binary flag: AllGameModes: 0b11111111 (default 255)
-max_procs int
Specifies the number of logic cores of a processor that will be used for processing. (default 24)
-number_of_packages int
Provide a number of zip packages to be created and compressed into a zip archive. Please remember that this number needs to be lower than the number of processed files. If set to 0, will ommit the zip packaging and save output .json directly to drive. (default 1)
-localized_maps_file string
Specifies a path to localization file containing {'ForeignName': 'EnglishName'} of maps. If this flag is not set and the default is unavailable, map translation will be ommited. (default "./operation_files/output.json")
-perform_player_anonymization
Specifies if the tool is supposed to perform player anonymization functions within the processing pipeline. If set to true please remember to download and run an anonymization server: https://doi.org/10.5281/zenodo.5138313
-perform_chat_anonymization
Specifies if the chat anonymization should be performed.
-perform_cleanup
Provide if the tool is supposed to perform the cleaning functions within the processing pipeline.
-perform_integrity_checks
If the software is supposed to check the hardcoded integrity checks for the provided replays
-perform_validity_checks
Provide if the tool is supposed to use hardcoded validity checks and verify if the replay file variables are within 'common sense' ranges.
-log_dir string
Specifies directory which will hold the logging information. (default "./logs/")
-log_level int
Specifies a log level from 1-7. Panic - 1, Fatal - 2, Error - 3, Warn - 4, Info - 5, Debug - 6, Trace - 7 (default 4)
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information. If this is empty no profiling is performed.
Minimal Example
- Place
.SC2Replayfiles in./DEMOS/Input - Run
SC2InfoExtractorGo.exewith default flags. - Verify the output in
./DEMOS/Output - If The output packages do not contain any processed replays, proceed to verify
./logs/.
Dataset Preparation
If You have a pack of replays with nested directories and You would like to automatically flatten the directory structure, We have published a tool that can be used for that, please see SC2DatasetPreparator: https://doi.org/10.5281/zenodo.5296664
Two scripts contained within that software can:
- Flatten directory structure of Your collected replays by looking for
.SC2Replayfiles. - Running Python multiprocessing package on multiple directories containing replays by calling them with
-with-multiprocessing=falseflag. This allows to have one package per directory created and speed up the processing.
Anonymization
In order to anonymize the replays please make sure to download and run our open-source implementation of an anonymization server the SC2AnonServerPy: https://doi.org/10.5281/zenodo.5138313
This is required because of the multiprocessing nature of our code that needs to perform synchronization with an existing database unique toons (player IDs) that are mapped to arbitrary incrementing integer.
Map Translation Support
If the provided file output.json does not support map names that You require, You will have to either find it online or within the game documents. We are close to publishing a tool that will allow You to download StarCraft maps.
If You already have a set of StarCraft II maps that You would like to create a .json file to be included within Our software, use Your own solution or SC2MapLocaleExtractor: https://doi.org/10.5281/zenodo.4733264
Filtering Capabilities
Currently the software supports some game mode filtering capabilities which can be used with -game_mode flag.
The flag itself is a binary flag where 0b11111111 is all game modes which is the default.
Other ways to set the flag:
0b00000001: 1v1 Ranked Games0b00000010: 2v2 Ranked Games0b00000100: 3v3 Ranked Games0b00001000: 4v4 Ranked Games0b00010000: 1v1 Custom Games0b00100000: 2v2 Custom Games0b01000000: 3v3 Custom Games0b10000000: 4v4 Custom Games
Build from source
Our working solution was built by using go build command on 64 bit version of Windows 10
License / Dual Licensing
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.
0.5.0 SC2InfoExtractorGo Release
SC2InfoExtractorGo
This tool is meant to allow for quick data extraction from SC2 replay files ".SC2Replay".
Usage
In order to use this tool please call SC2InfoExtractorGo.exe and set the choosen flags listed below:
-compression_method int
Provide a compression method number, default is 8 'Deflate', other compression methods need to be registered manually in code. (default 8)
-game_mode int
Provide which game mode should be included from the processed files in a format of a binary flag: AllGameModes: 0b1111111111 (default 1023)
-input string
Input directory where .SC2Replay files are held. (default "./DEMOS/Input")
-integrity_check
If the software is supposed to check the hardcoded integrity checks for the provided replays (default true)
-localize_maps
Set to false if You want to keep the original (possibly foreign) map names. (default true)
-localized_maps_file string
Specify a path to localization file containing {'ForeignName': 'EnglishName'} of maps. (default "./operation_files/output.json")
-log_dir string
Provide directory which will hold the logging information. (default "./logs/")
-log_level int
Provide a log level from 1-7. Panic - 1, Fatal - 2, Error - 3, Warn - 4, Info - 5, Debug - 6, Trace - 7 (default 4)
-number_of_packages int
Provide a number of packages to be created and compressed into a zip archive. Please remember that this number needs to be lower than the number of processed files. (default 1)
-output string
Output directory where compressed zip packages will be saved. (default "./DEMOS/Output")
-perform_anonymization
Provide if the tool is supposed to perform the anonymization functions within the processing pipeline. (default true)
-perform_cleanup
Provide if the tool is supposed to perform the cleaning functions within the processing pipeline. (default true)
-validity_check
Provide if the tool is supposed to use hardcoded validity checks and verify if the replay file variables are within 'common sense' ranges. (default true)
-with_cpu_profiler string
Set path to the file where pprof cpu profiler will save its information. If this is empty no profiling is performed.
-with_multiprocessing
Provide if the processing is supposed to be perform with maximum amount of available cores. If set to false, the program will use one core. (default true)
Build from source
Our working solution was built by using go build command on 64 bit version of Windows 10
License
This repository is licensed under GNU GPL v3 license. If You would like to acquire a different license please contact me directly.