Analyse des fichiers .sc2replay [fermé]

8

Comment analyser les fichiers de relecture de StarCraft 2 ( .sc2replay )? Existe-t-il une API?

Je connais Sc2gears , mais il ne répond pas tout à fait à mes besoins.

Gpx
la source
3
Je vote pour fermer cette question comme hors sujet car il ne s'agit pas de développer un jeu.
Vaillancourt

Réponses:

15

Les replays de Starcraft 2 sont stockés au format MPQ, un format de fichier compressé développé et utilisé par Blizzard. Au bas de la page Wiki, vous trouverez également des liens vers les analyseurs MPQ.

Peut-être voudrez-vous également jeter un œil aux projets open-source suivants: WARP (un analyseur de relecture Starcraft 2 écrit en Java) ou phpsc2replay (un analyseur de relecture écrit en PHP).

Mise à jour: À partir de maintenant, il existe également une bibliothèque Python qui peut lire beaucoup de données de relecture: sc2reader . Il s'agit très probablement de la meilleure option actuellement disponible (en mars 2013).

Mise à jour 2018: sc2reader est maintenant maintenu par ggtracker. Quoi qu'il en soit sc2readerest maintenant hébergé sur PyPi alors peut-être que le meilleur moyen est de le pip install sc2readertrouver sur la page pypi de sc2readers

bummzack
la source
8

Divulgation: je suis l'auteur de Scelight et Sc2gears.


Blizzard a publié une bibliothèque d'analyseur de fichiers SC2Replay officielle et open-source appelée s2protocol écrite en python:

https://github.com/Blizzard/s2protocol

Il s'agit de l'analyseur de relecture officiel le plus complet et le plus récent. Il est considéré comme l' implémentation de référence . C'est assez bas cependant.

Il existe un autre projet appelé Scelight (qui succède à Sc2gears ). En Scelight il y a un paramètre (un combobox): Skill level. Si vous définissez cela sur Developer(cela nécessite d'abord une petite tâche de programmation pour prouver vos compétences de développeur pour le déverrouiller), un tas de nouvelles informations sont affichées pour les rediffusions ouvertes dans l' onglet Inspecteur de l'analyseur de relecture qui sont destinées aux développeurs n'incluant que la structure interne des rediffusions, y compris tous les derniers bits, la visionneuse hexadécimale et bien plus encore.

Scelight possède également une interface d'extension appelée External Module API qui possède une API bien documentée. L'API du module externe donne accès à l'analyseur SC2Replay et aux outils et infrastructures de données internes de relecture de bas et de haut niveau. Le javadoc de l'API du module externe est également disponible en ligne ici:

https://scelightop.appspot.com/scelight-ext-mod-api/

Éditer:

Scelight et Sc2gears ont été open-source, vous pouvez voir exactement comment ils le font (les deux projets comptent plus de 100 000 lignes de code):

https://github.com/icza/scelight

https://github.com/icza/sc2gears

icza
la source
2

J'ai joué avec l'analyse des fichiers de relecture SC2 il y a quelque temps. Vous pouvez voir ce que j'ai fait et ce que j'ai pu inverser (ainsi que des liens vers des sites utiles en bas):

http://wiki.spectralcoding.com/project:sc2inspector

César Kabalan
la source
Un tas de liens en un seul endroit est vraiment sympa.
Kirilloid