• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 22:45
CEST 04:45
KST 11:45
  • 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] Ro16 Preview: Rough Waters10[ASL22] Ro24 Preview: Siren's Call8[ASL22] Ro24 Preview: Summer's End9Serral wins HomeStory Cup 2915Serral wins Maestros of the Game 244
Community News
StarCraft open world shooter announced at BlizzCon53Weekly Cups (Aug 30-Sep 7): herO thrives amid growing schism10Official StarCraft website teases new content ahead of BlizzCon?158Stellar Fest TWO the Moon (Dec 16-20)9Weekly Cups (August 24-30): Patches' balance mod takes over3
StarCraft 2
General
StarCraft open world shooter announced at BlizzCon How do you feel about the StarCraft shooter announcement at BlizzCon 2026? Balance hotfix patch 5.0.16b (July 16) Team Liquid Map Contest #22: Results and Winners Weekly Cups (Aug 30-Sep 7): herO thrives amid growing schism
Tourneys
RSL goes to London! 2026 Offline Finals Nov 21-22 KSL Week #92 IntoTheTV X SOOP SC2 League : Weekly & Monthly 2026 GSTL Announcement Sparkling Tuna Cup - Weekly Open Tournament
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 542 The Ascended Mutation # 541 Binary Choice The PondCast: SC2 News & Results Mutation # 540 Dodge This
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ Official StarCraft website teases new content ahead of BlizzCon? Broodwar Prediction Market Practice Partners (Official) [D] Brainstorming a balance patch for Brood war
Tourneys
[ASL22] Ro16 Group A [ASL22] Ro16 Group B Escore Tournament - Season 3 Small VOD Thread 2.0
Strategy
Replay Review Process - What do you do? Simple Questions, Simple Answers Odyssey Mineral Stack Saturation Game Theory for Starcraft
Other Games
General Games
EVE Corporation Diablo IV Nintendo Switch Thread [Maplestory Hardcore] Let's Play~!! General RTS Discussion Thread
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 Community Thread
Community
General
US Politics Mega-thread UK Politics Mega-thread Things Aren’t Peaceful in Palestine Trading/Investing Thread Russo-Ukrainian War Thread
Fan Clubs
MarineLorD Fan Club The Creator Fan Club The ShoWTimE Fan Club
Media & Entertainment
Diablo Animated Series on Netflix Movie Discussion!
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Northern Ireland Global Starcraft
Blogs
Virtual Romance, Real-Life C…
TrAiDoS
Regacy Esports:Our Goa…
regacyesports
Dreaming of BW patches (mod…
c3rberUs
LOCKPICKING NOOB
LUCKY_NOOB
Customize Sidebar...

Website Feedback

Closed Threads



Active: 6310 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
OSC
20:30
Masters Cup #151
davetesta26
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Tasteless 474
RuFF_SC2 220
ViBE118
StarCraft: Brood War
Artosis 549
Aegong 36
Dota 2
monkeys_forever471
NeuroSwarm120
League of Legends
Doublelift6656
Counter-Strike
fl0m5387
Coldzera 1396
minikerr43
Super Smash Bros
amsayoshi83
Heroes of the Storm
Liquid`Hasu325
Other Games
summit1g12275
B2W.Neo1056
JimRising 581
PiGStarcraft299
XaKoH 202
Sick145
Organizations
Heroes of the Storm
Heroes of the Storm1248
StarCraft 2
StarCraft1053
StarCraft: Brood War
Afreeca ASL 933
Other Games
BasetradeTV187
[ Show 10 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• masondota22104
League of Legends
• Lourlo683
Upcoming Events
Sparkling Tuna Cup
7h 15m
WardiTV Invitational
8h 15m
ByuN vs Percival
Cure vs Classic
Shopify Rebellion Sundays
12h 15m
Spirit vs Mixu
Clem vs TBD
RSL Revival
13h 15m
Serral vs Rogue
BlizzCon
15h 45m
IdrA vs MC
Replay Cast
21h 15m
Afreeca Starleague
1d 7h
Light vs JyJ
Soulkey vs hero
WardiTV Weekly
1d 8h
Monday Night Weeklies
1d 13h
Afreeca Starleague
2 days
Snow vs Shinee
Shine vs EffOrt
[ Show More ]
GSL
2 days
PiGosaur Cup
2 days
The PondCast
3 days
Kung Fu Cup
3 days
Replay Cast
3 days
KCM Race Survival
4 days
IntoTheTV X SOOP
4 days
Replay Cast
4 days
IntoTheTV X SOOP
5 days
Replay Cast
5 days
GSL
6 days
Replay Cast
6 days
Liquipedia Results

Completed

Acropolis #5 - TRS
PiG Sty Festival 8.0
Big Dog Cup 2026 Div 1

Ongoing

KCM Race Survival 2026 Season 3
K-JUNGMAN
ASL Season 22
Super Anchor Qualifying S3
CSL 2026 AUTUMN (S22)
Acropolis #5
Blizzard Classic Cup 2026
Blizzard Classic Cup 2026
RSL Revival: Season 6
Calamity Invitational
FISSURE Playground #3
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026

Upcoming

Acropolis #5 - GSA
Acropolis #5 - GSB
Acropolis #5 - GSC
SC4ALL II: Brood War
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
PGL Major Singapore 2026
Stake Ranked Episode 6
BLAST Rivals Fall 2026
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
Logitech G Play Connect 2026
SL StarSeries 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.