Skip to content

Commit 494a596

Browse files
committed
feat: add support for "Undecided" match results in outcome processing
1 parent 4a6f4c2 commit 494a596

3 files changed

Lines changed: 19 additions & 3 deletions

File tree

src/sc2_datasets/transforms/mmr_vs_result.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,12 @@ def mmr_vs_result(sc2_replay: SC2ReplayData) -> Tuple[torch.Tensor, torch.Tensor
2929
dtype=torch.float,
3030
)
3131

32-
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0}
32+
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0, "Undecided": -1}
33+
34+
# Check if result is "Undecided" and return None to skip this replay
35+
if sc2_replay.toonPlayerDescMap[0].toon_player_info.result == "Undecided":
36+
return None, None
37+
3338
label_tensor = torch.tensor(
3439
result_dict[sc2_replay.toonPlayerDescMap[0].toon_player_info.result],
3540
dtype=torch.int8,

src/sc2_datasets/transforms/pytorch/economy_vs_outcome.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,12 @@ def economy_average_vs_outcome(
5959
# Creating feature tensor:
6060
feature_tensor = torch.tensor(feature_list, dtype=torch.float32)
6161

62-
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0}
62+
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0, "Undecided": -1}
63+
64+
# Check if result is "Undecided" and return None to skip this replay
65+
if sc2_replay.toonPlayerDescMap[0].toon_player_info.result == "Undecided":
66+
return None, None
67+
6368
target = result_dict[sc2_replay.toonPlayerDescMap[0].toon_player_info.result]
6469

6570
return feature_tensor, target

src/sc2_datasets/transforms/utils.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,13 @@ def select_outcome_1v1(sc2_replay: SC2ReplayData) -> Dict[str, int]:
235235

236236
player_outcome = {"1": 0, "2": 0}
237237

238-
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0}
238+
result_dict = {"Loss": 0, "Win": 1, "Victory": 1, "Defeat": 0, "Undecided": -1}
239+
240+
# Check if any player has an "Undecided" result and return None to indicate skipping
241+
for toon_desc_map in sc2_replay.toonPlayerDescMap:
242+
if toon_desc_map.toon_player_info.result == "Undecided":
243+
return None
244+
239245
for toon_desc_map in sc2_replay.toonPlayerDescMap:
240246
result = result_dict[toon_desc_map.toon_player_info.result]
241247
player_outcome[toon_desc_map.toon_player_info.playerID] = result

0 commit comments

Comments
 (0)