Blizzard / Blizzard/s2protocol
Bad Player Team and Result values
- Dominant language
- Python
- Stars
- 641
- Forks
- 118
- PR merge metrics
- No merged PRs in 30d
Description
In the 3v3 game below, 1 player on the winning team reports a loss and one player on the losing team reports a win. How is this possible?
Replay attached as a png (rename it): 
```
(env)graylinkim@graylin-ubuntu:~/projects/s2protocol$ s2protocol --details example.SC2Replay
...
'm_playerList': [
{'m_color': {'m_a': 255, 'm_b': 30, 'm_g': 20, 'm_r': 180},
'm_control': 2,
'm_handicap': 100,
'm_name': 'Boom',
'm_observe': 0,
'm_race': 'Terran',
'm_result': 1,
'm_teamId': 0,
'm_toon': {'m_id': 1694745,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}},
{'m_color': {'m_a': 255, 'm_b': 255, 'm_g': 66, 'm_r': 0},
'm_control': 2,
'm_handicap': 100,
'm_name': 'Aspirates',
'm_observe': 0,
'm_race': 'Terran',
'm_result': 1,
'm_teamId': 0,
'm_toon': {'m_id': 1404640,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}},
{'m_color': {'m_a': 255,
'm_b': 234,
'm_g': 167,
'm_r': 28},
'm_control': 2,
'm_handicap': 100,
'm_name': 'loropendejo',
'm_observe': 0,
'm_race': 'Terran',
'm_result': 1,
'm_teamId': 1,
'm_toon': {'m_id': 1840716,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}},
{'m_color': {'m_a': 255, 'm_b': 129, 'm_g': 0, 'm_r': 84},
'm_control': 2,
'm_handicap': 100,
'm_name': 'SNIPER',
'm_observe': 0,
'm_race': 'Terran',
'm_result': 2,
'm_teamId': 1,
'm_toon': {'m_id': 1890674,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}},
{'m_color': {'m_a': 255,
'm_b': 41,
'm_g': 225,
'm_r': 235},
'm_control': 2,
'm_handicap': 100,
'm_name': 'Gogeta',
'm_observe': 0,
'm_race': 'Terran',
'm_result': 2,
'm_teamId': 1,
'm_toon': {'m_id': 497421,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}},
{'m_color': {'m_a': 255,
'm_b': 14,
'm_g': 138,
'm_r': 254},
'm_control': 1,
'm_handicap': 100,
'm_name': 'Foco',
'm_observe': 1,
'm_race': 'Terran',
'm_result': 2,
'm_teamId': 0,
'm_toon': {'m_id': 1678160,
'm_programId': '\x00\x00S2',
'm_realm': 1,
'm_region': 2}}],
...
}
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by running the documented `s2protocol --details example.SC2Replay` command against the attached replay and inspect how the `m_playerList` values are decoded. Compare the reported team and result fields with the replay outcome; the issue is done when the mismatch is explained and the decoder behavior or documentation is corrected accordingly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- reverse-engineering
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100