• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 11:00
CEST 17:00
KST 00:00
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL22] Ro24 Preview: Summer's End0Serral wins HomeStory Cup 2915Serral wins Maestros of the Game 243ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7
Community News
GSTL Returns in 2026!40Weekly Cups (Aug 3-9): Protoss get shut out7RSL goes to London! 2026 Offline Finals Nov 21-2212Weekly Cups (July 27-Aug 2): SHIN's big week0SC4ALL II: Brood War - $2500 - Dec 5-611
StarCraft 2
General
GSTL Returns in 2026! Balance hotfix patch 5.0.16b (July 16) SC4ALL: II Talent Announcement! Protoss AoE skill expression Weekly Cups (Aug 3-9): Protoss get shut out
Tourneys
2026 KungFu Cup Announcement PIG STY FESTIVAL 8.0! (13 - 23 August) Sparkling Tuna Cup - Weekly Open Tournament 2026 GSTL Announcement Sea Duckling Open (Global, Bronze-Diamond)
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 538 Media Blackout The PondCast: SC2 News & Results Mutation # 537 Hostile Territory Mutation # 536 Railroad Switch
Brood War
General
Best Games Kespa era [ASL22] Ro24 Preview: Summer's End BW General Discussion Your past clans ASL22 General Discussion
Tourneys
CSLAN 4 is Coming! [ASL22] Ro24 Group A Small VOD Thread 2.0 Escore Tournament - Season 3
Strategy
Odyssey Mineral Stack Saturation Fighting Spirit mining rates Any training maps people recommend? Simple Questions, Simple Answers
Other Games
General Games
General RTS Discussion Thread Nintendo Switch Thread Anyone here play Quakeworld back in the day? Stormgate/Frost Giant Megathread EVE Corporation
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank TL Mafia Community Thread NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
Artificial Intelligence Thread US Politics Mega-thread Russo-Ukrainian War Thread European Politico-economics QA Mega-thread The Letting Off Steam Thread
Fan Clubs
MarineLorD Fan Club The ShoWTimE Fan Club The herO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread Series you have seen recently... [Req][Books] Good Fantasy/SciFi books
Sports
MLB/Baseball 2023 Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 NBA General Discussion Formula 1 Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Simple Questions Simple Answers FPS when play League Of Legend on laptop
TL Community
The Automated Ban List Northern Ireland Global Starcraft
Blogs
LOCKPICKING NOOB
LUCKY_NOOB
Chinese Gen Z: Between Dream…
TrAiDoS
Cathedral Of CS And NY pizza a…
FuDDx
Please support my new stand…
Peanutsc
Hello guys!
LIN1s
Customize Sidebar...

Website Feedback

Closed Threads



Active: 8359 users

Parse SC2 Replays

Forum Index > SC2 General
Post a Reply
azndsh
Profile Blog Joined August 2006
United States4447 Posts
Last Edited: 2010-05-10 20:27:16
April 26 2010 09:59 GMT
#1
I know at least several people are working on this... I'm actually doing this for a class project. Maybe someone else will find this useful, or if anyone has stuff to share/contribute that'd be cool as well.

Background
StarCraft 2 replays (.SC2Replay) files are actually MPQ files that you can open with any MPQ editor. There are also MPQ libraries or bindings available online for C, Python, PHP, and probably a few other languages.

Each MPQ file contains a (listfile) that tells you what files are inside, though listing the files is actually optional and was often omitted in older Blizzard games.

Replays

The version and duration are stored at the beginning of the replay in plain view, without MPQ archiving.

Pre Patch 9, most of the metadata was stored in a file called replay.info, and this contained a lot of information that was relatively straightforward to read just by opening it in a text editor and ignoring the unprintable characters.

Patch 9 (0.11.0.15097) changed the way a lot of the information was stored and probably broke most replay parsers.

As of build 15133, the (listfile) shows and contains
  • replay.details (basic metadata)
  • replay.initData (unknown)
  • replay.attribute.events (unknown)
  • replay.game.events (actions)
  • replay.message.events (chat, ping)
  • replay.smartcam.events (presumably player cameras)
  • replay.sync.events (presumably consistency checks)

So far, I've only really looked at the replay.details file, and it's possible to read:
  • players (name.identifier, race, winner, color)
  • map
  • timestamp
  • server
  • game speed

PM me if you want more detailed info on the replay.details file.

Anyway, just putting this thread out there in case anyone else is also interested in or working on this. I'll try to update this as more gets figured out.
TArujo
Profile Joined September 2009
Portugal1687 Posts
April 26 2010 10:07 GMT
#2
hmm cool, i think older parsers (pre-patch 9) couldn't show the winners, good job
prOxi.swAMi
Profile Blog Joined November 2004
Australia3091 Posts
April 26 2010 10:17 GMT
#3
I will be doing this soon for a website I'm working on in C#.

What language are you using?
Oh no
azndsh
Profile Blog Joined August 2006
United States4447 Posts
April 26 2010 10:30 GMT
#4
I'm using Python because I don't actually know any real programming languages (Java is terrible for bit-whacking)
got_quail
Profile Joined March 2010
Canada11 Posts
April 26 2010 10:36 GMT
#5
Awesome, was wondering how to get started on this. I'm a beginner programmer but thought I would give it a shot this May. Thanks for the info.
Bentie
Profile Joined April 2010
Australia18 Posts
April 26 2010 10:38 GMT
#6
On April 26 2010 19:17 prOxi.swAMi wrote:
I will be doing this soon for a website I'm working on in C#.

What language are you using?

This sounds good. So one can just watch replays through the site?
ArdentZeal
Profile Joined March 2010
Germany155 Posts
April 26 2010 11:27 GMT
#7
On April 26 2010 19:38 Bentie wrote:
Show nested quote +
On April 26 2010 19:17 prOxi.swAMi wrote:
I will be doing this soon for a website I'm working on in C#.

What language are you using?

This sounds good. So one can just watch replays through the site?


You would have to implement the game engine itsself for this. So i would guess no

I think he talks about a replay database, with a nice layout displaying all the important information.
Zeiryuu
Profile Joined March 2010
Philippines231 Posts
April 27 2010 02:52 GMT
#8
This is nice...Actually I just finished a libary-like tool that displays replay information. Patch 9 just broke my parser. I'm using C#. Would really appreciate the information you can share about the new replay format.
Please log in or register to reply.
Live Events Refresh
PiG Sty Festival
12:00
PiGfest 8.0 Group D
Maru vs Shameless
Reynor vs TriGGeR
PiGStarcraft1859
IntoTheiNu 1243
ComeBackTV 625
IndyStarCraft 270
Rex180
BRAT_OK 144
3DClanTV 104
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft1859
IndyStarCraft 270
Rex 180
BRAT_OK 144
SHIN 33
StarCraft: Brood War
Britney 39173
BeSt 1181
Light 780
EffOrt 773
Soma 458
Larva 415
Snow 265
Last 119
Mong 117
Hyun 70
[ Show more ]
soO 57
sorry 47
ToSsGirL 43
Sexy 39
Shine 26
Bale 26
zelot 23
Terrorterran 22
scan(afreeca) 22
Rock 22
Free 21
ZZZero.O 20
Sacsri 18
NaDa 16
Noble 8
Dota 2
qojqva4190
Counter-Strike
fl0m5155
ScreaM1300
kRYSTAL_53
Super Smash Bros
Mew2King281
Chillindude43
Heroes of the Storm
Khaldor333
Other Games
singsing899
B2W.Neo664
ToD395
Liquid`RaSZi244
KnowMe103
Organizations
Other Games
BasetradeTV268
[ Show 14 non-featured ]
StarCraft 2
• poizon28 18
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• HerbMon 29
• Michael_bg 8
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• WagamamaTV1024
League of Legends
• Jankos1871
• Nemesis1483
Upcoming Events
IPSL
1h 1m
OSC
9h 1m
Afreeca Starleague
19h 1m
Rush vs Hm
Bisu vs Shuttle
WardiTV Weekly
20h 1m
The Patches Monday
1d 1h
Afreeca Starleague
1d 19h
Sharp vs Shinee
Action vs Shine
GSL
1d 20h
PiGosaur Cup
2 days
Replay Cast
2 days
Afreeca Starleague
2 days
BeSt vs Paralyze
Jaedong vs Speed
[ Show More ]
Kung Fu Cup
2 days
Replay Cast
3 days
The PondCast
3 days
KCM Race Survival
3 days
Replay Cast
4 days
PiG Sty Festival
4 days
CranKy Ducklings
5 days
PiG Sty Festival
5 days
Sparkling Tuna Cup
6 days
PiG Sty Festival
6 days
Liquipedia Results

Completed

Escore Tournament S3: W7
CranK Gathers Season 4: BW vs SC2 Team League
Eternal Conflict S2 Finale

Ongoing

KCM Race Survival 2026 Season 3
K-JUNGMAN
Acropolis #5
CSLAN 4
RSL Revival: Season 6
PiG Sty Festival 8.0
META DYMY #4
Esports World Cup 2026
Esports World Cup 2026: LCQ
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026

Upcoming

ASL Season 22
CSL Season 22: Qualifier 1
Escore Tournament S3: W8
CSL Season 22: Qualifier 2
CSL 2026 AUTUMN (S22)
Acropolis #5 - TRS
Blizzard Classic Cup 2026
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Big Dog Cup 2026 Div 1
Stake Ranked Episode 5
PGL Masters Bucharest 2026
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
Logitech G Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #5
BLAST Open Fall 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.