• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 23:35
CEST 05:35
KST 12:35
  • 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
[ASL21] Ro4 Preview: On Course12Code S Season 1 - RO8 Preview7[ASL21] Ro8 Preview Pt2: Progenitors8Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun13[ASL21] Ro8 Preview Pt1: Inheritors16
Community News
Weekly Cups (May 4-10): Clem, MaxPax, herO win1Maestros of The Game 2 announcement and schedule !11Weekly Cups (April 27-May 4): Clem takes triple0RSL Revival: Season 5 - Qualifiers and Main Event12Code S Season 1 (2026) - RO12 Results1
StarCraft 2
General
MaNa leaves Team Liquid Weekly Cups (May 4-10): Clem, MaxPax, herO win Code S Season 1 - RO8 Preview Behind the Blue - Team Liquid History Book Weekly Cups (April 27-May 4): Clem takes triple
Tourneys
2026 GSL Season 2 Qualifiers Maestros of The Game 2 announcement and schedule ! $5,000 WardiTV Spring Championship 2026 SC2 INu's Battles#16 <BO.9> Master Swan Open (Global Bronze-Master 2)
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players
External Content
Mutation # 525 Wheel of Misfortune The PondCast: SC2 News & Results Mutation # 524 Death and Taxes Mutation # 523 Firewall
Brood War
General
Quality of life changes in BW that you will like ? Flashes ASL S21 Ro8 Review ASL Tickets to Live Event Finals? BW General Discussion Pros React To: Leta vs Tulbo (ASL S21, Ro.8)
Tourneys
[Megathread] Daily Proleagues [ASL21] Semifinals A [BSL22] RO8 Bracket Stage + Another TieBreaker [ASL21] Semifinals B
Strategy
Fighting Spirit mining rates [G] Hydra ZvZ: An Introduction Simple Questions, Simple Answers Muta micro map competition
Other Games
General Games
Warcraft III: The Frozen Throne Nintendo Switch Thread Stormgate/Frost Giant Megathread Starcraft Tabletop Miniature Game PC Games Sales Thread
Dota 2
The Story of Wings Gaming
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread UK Politics Mega-thread YouTube Thread European Politico-economics QA Mega-thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread McBoner: A hockey love story Formula 1 Discussion
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
How EEG Data Can Predict Gam…
TrAiDoS
ramps on octagon
StaticNine
Funny Nicknames
LUCKY_NOOB
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1329 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
Replay Cast
00:00
2026 GSL Season 2: Qualifiers
CranKy Ducklings132
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RuFF_SC2 206
Nina 118
StarCraft: Brood War
GuemChi 6041
Dota 2
NeuroSwarm344
League of Legends
summit1g11418
Doublelift4745
JimRising 660
Super Smash Bros
hungrybox1512
Other Games
C9.Mang0563
WinterStarcraft483
monkeys_forever392
Maynarde161
ViBE79
Mew2King19
CosmosSc2 11
Organizations
Other Games
gamesdonequick1033
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 15 non-featured ]
StarCraft 2
• EnkiAlexander 73
• practicex 4
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Scarra1528
• Lourlo514
• Stunt218
Upcoming Events
The PondCast
6h 25m
OSC
6h 25m
Replay Cast
20h 25m
RSL Revival
1d 6h
OSC
1d 9h
Korean StarCraft League
1d 23h
RSL Revival
2 days
BSL
2 days
Bonyth vs Doodle
Dewalt vs TerrOr
GSL
3 days
Cure vs herO
SHIN vs Maru
BSL
3 days
OyAji vs JDConan
DragOn vs TBD
[ Show More ]
Replay Cast
4 days
Monday Night Weeklies
4 days
Replay Cast
4 days
The PondCast
5 days
GSL
6 days
Replay Cast
6 days
Liquipedia Results

Completed

Proleague 2026-05-13
WardiTV TLMC #16
Nations Cup 2026

Ongoing

BSL Season 22
ASL Season 21
IPSL Spring 2026
KCM Race Survival 2026 Season 2
Acropolis #4
KK 2v2 League Season 1
BSL 22 Non-Korean Championship
SCTL 2026 Spring
RSL Revival: Season 5
2026 GSL S1
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2

Upcoming

Escore Tournament S2: W7
YSL S3
Escore Tournament S2: W8
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
WardiTV Spring 2026
2026 GSL S2
BLAST Bounty Summer 2026: Closed Qualifier
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 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.