Файл воспроизведения SC на самом деле является архивным файлом MPQ.Этот архив MPQ содержит несколько разных файлов (например, ZIP-файл).
Внутри этого архива имеются отдельные файлы для каждого типа данных в архиве MPQ.(Например, существует один файл для игровых событий, а другой - для событий пользовательского интерфейса).
В Интернете имеется достаточно документации о том, как обращаться с файлами MPQ.Теперь отдельные файлы в MPQ немного сложнее.
Если вы хотите получить информацию из воспроизведения (кем были игроки и на какой карте они играли), вы можете использовать эти инструменты.(Я предполагаю, что Unix-подобный веб-сервер).
1) Скачать и собрать libmpq и mpq-tools (https://libmpq.org/)
2) Запустить следующие сценарии
Вы можете запустить их из системного вызова (), а затем выполнить несколько команд разделения, чтобы получить игроков и расу.
Сохраните это как info.sh.Запустите его как командную оболочку и передайте файл воспроизведения в качестве аргумента.
#!/bin/bash
# Save this file as info.sh
# This extracts the individual files from the MPQ archive (the replay
# file)
mpq-extract -e $1 > /dev/null
cat file000000.xxx | strings | ruby info.rb
Вот скрипт ruby.Сохраните это как info.rb
# This *kinda* extracts the file info from a header file. I don't
# really know how it works yet, so I'm just extracting strings.
#
# Save this file as info.rb
lines = STDIN.readlines
puts "%s:%s|%s:%s" % [(lines[0].strip), (lines[1].strip), (lines[2].strip), (lines[3].strip)]
Надеюсь, это поможет!