Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
161 changes: 161 additions & 0 deletions package/INI/Matchmaking.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
; [Matchmaking.ini] - Main Configuration for Matchmaking System
;
; This file defines the available game modes and their forced room settings.
;
; [How to add a new mode]
; 1. Add the mode identifier to the [MatchmakingModes] section (e.g., 4=MyNewMode).
; 2. Create a main section [MyNewMode] with core settings:
; - UIName: Unique name for matchmaking identification (Must match MatchmakingMaps.ini).
; - PlayerCount: Total players required (e.g., 2, 4, 6, 8).
; - AssignTeams: Set to True to enable TeamA/TeamB logic.
; 3. (Optional) Create [MyNewMode_ForceCheckboxes] to lock specific lobby options.
; 4. (Optional) Create [MyNewMode_ForceDropdowns] to lock specific dropdown values.
[MatchmakingModes]
0=1v1
1=2v2
2=3v3
3=2v2v2v2

[1v1]
UIName=1v1
PlayerCount=2
AssignTeams=False
AlliedSideNames=Allies,Allied
SovietSideNames=Soviets,Soviet
AlliedColors=Blue,Green,Cyan,Yellow
SovietColors=Red,Orange,Purple,Grey

[1v1_ForceCheckboxes]
chkShortGame=True
chkRedeplMCV=True
chkAutoRepair=False
chkMultiEng=False
chkIngameAllying=True
chkDestrBridges=True
chkBuildOffAlly=True
chkRedAlert2=False
chkYRRebalance=False
chkBlindStart=False
chkDisableGameSpeed=False
chkNoYuri=True
chkNoFrance=False
chkNoSpy=False
chkNoStolenTech=False
chkEngiDogImmune=False
chkCrates=False

[1v1_ForceDropdowns]
cmbCredits=10000
cmbStartingUnits=0
cmbGameSpeedCapMultiplayer=1
cmbSuperweaponsModifier=None
cmbCrateFrequency=Normal Crates
cmbAIModifier=Vanilla AI

[2v2]
UIName=2v2
PlayerCount=4
AssignTeams=True
AlliedSideNames=Allies,Allied
SovietSideNames=Soviets,Soviet
AlliedColors=Blue,Green,Cyan,Yellow
SovietColors=Red,Orange,Purple,Grey

[2v2_ForceCheckboxes]
chkShortGame=True
chkRedeplMCV=True
chkAutoRepair=False
chkMultiEng=False
chkIngameAllying=True
chkDestrBridges=True
chkBuildOffAlly=True
chkRedAlert2=False
chkYRRebalance=False
chkBlindStart=False
chkDisableGameSpeed=False
chkNoYuri=True
chkNoFrance=False
chkNoSpy=False
chkNoStolenTech=False
chkEngiDogImmune=False
chkCrates=False

[2v2_ForceDropdowns]
cmbCredits=10000
cmbStartingUnits=0
cmbGameSpeedCapMultiplayer=1
cmbSuperweaponsModifier=None
cmbCrateFrequency=Normal Crates
cmbAIModifier=Vanilla AI

[3v3]
UIName=3v3
PlayerCount=6
AssignTeams=True
AlliedSideNames=Allies,Allied
SovietSideNames=Soviets,Soviet
AlliedColors=Blue,Green,Cyan,Yellow
SovietColors=Red,Orange,Purple,Grey

[3v3_ForceCheckboxes]
chkShortGame=True
chkRedeplMCV=True
chkAutoRepair=False
chkMultiEng=False
chkIngameAllying=True
chkDestrBridges=True
chkBuildOffAlly=True
chkRedAlert2=False
chkYRRebalance=False
chkBlindStart=False
chkDisableGameSpeed=False
chkNoYuri=True
chkNoFrance=False
chkNoSpy=False
chkNoStolenTech=False
chkEngiDogImmune=False
chkCrates=False

[3v3_ForceDropdowns]
cmbCredits=10000
cmbStartingUnits=0
cmbGameSpeedCapMultiplayer=1
cmbSuperweaponsModifier=None
cmbCrateFrequency=Normal Crates
cmbAIModifier=Vanilla AI

[2v2v2v2]
UIName=2v2v2v2
PlayerCount=8
AssignTeams=True
AlliedSideNames=Allies,Allied
SovietSideNames=Soviets,Soviet
AlliedColors=Blue,Green,Cyan,Yellow
SovietColors=Red,Orange,Purple,Grey

[2v2v2v2_ForceCheckboxes]
chkShortGame=True
chkRedeplMCV=True
chkAutoRepair=False
chkMultiEng=False
chkIngameAllying=True
chkDestrBridges=True
chkBuildOffAlly=True
chkRedAlert2=False
chkYRRebalance=False
chkBlindStart=False
chkDisableGameSpeed=False
chkNoYuri=True
chkNoFrance=False
chkNoSpy=False
chkNoStolenTech=False
chkEngiDogImmune=False
chkCrates=False

[2v2v2v2_ForceDropdowns]
cmbCredits=10000
cmbStartingUnits=0
cmbGameSpeedCapMultiplayer=1
cmbSuperweaponsModifier=None
cmbCrateFrequency=Normal Crates
cmbAIModifier=Vanilla AI
34 changes: 34 additions & 0 deletions package/INI/MatchmakingMaps.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
; [MatchmakingMaps.ini] - Configuration for Matchmaking Map Pools
;
; Section names must match the UIName defined in Matchmaking.ini (e.g. 1v1, 2v2).
;
; Format per line:
; Key=SHA1_Hash | GameMode | TeamA:Spawn1,Spawn2 | TeamB:Spawn3,Spawn4
;
; [Components Explaination]
; -------------------------
; SHA1_Hash: The unique identifier of the map file.
; GameMode: (Optional) The internal name of the gamemode to force (e.g. Battle, Ra2 ladder).
; Any segment that does NOT start with "Team" will be treated as the Game Mode.
; TeamX: (Optional) Forces auto-allying. Syntax: TeamA:Indices or TeamB:Indices.
; Indices are 1-based start positions as seen in the game (1, 2, 3, 4...).
;
; [Examples]
; 1v1 Short: 0=B88ED4FEA3062FDD07... | Ra2 ladder
; 2v2 Forced: 1=A1B2C3D4E5F6... | Battle | TeamA:1,3 | TeamB:2,4

[1v1]
0=C1C9FC820EC9FBB4932D2FAFECA317B9D889D839|Battle; A Hill Between
1=9403314549EBCE94AA37FC5B2A8489D289016998|Battle; Fjord

[2v2]
0=7E19FFFB5A97EF5CD0105C18EBD28BC1FE012616|Battle|TeamA:1,2|TeamB:3,4; Depth Charge
1=B02D57D2A0F81AE6D177E5FED08921CFE3F5D3A1|Battle|TeamA:1,4|TeamB:3,2; Invasion Confirmed

[3v3]
0=68D761CA4CE5F9C23D025429C2CE4C6486A6DD24|Battle|TeamA:1,2,3|TeamB:4,5,6; Crushed Ice
1=5C26931A87068E64CD8E1E6DD245350F033C9274|Battle|TeamA:1,2,3|TeamB:4,5,6; East vs Best

[2v2v2v2]
0=CB87B5190432664861361257ADCDECADEF17BF76|Battle|TeamA:1,2|TeamB:3,4|TeamC:5,6|TeamD:7,8; Hex Bay
1=45D8C9EEE039AC4F041D5FD951377F4732DF3E34|Battle|TeamA:1,2|TeamB:3,4|TeamC:5,6|TeamD:7,8; Storm