@@ -10,6 +10,7 @@ pub struct EcosystemSchema {
1010 pub schema_version : Version ,
1111 pub games : HashMap < String , GameDef > ,
1212 pub communities : HashMap < String , SchemaCommunity > ,
13+ pub modloader_packages : Vec < R2MMModLoaderPackage > ,
1314}
1415
1516#[ derive( Serialize , Deserialize , Debug , Clone ) ]
@@ -34,7 +35,7 @@ pub struct GameDefMeta {
3435#[ serde( tag = "platform" ) ]
3536#[ serde( rename_all = "kebab-case" ) ]
3637pub enum GameDefPlatform {
37- #[ serde( rename = "egs " ) ]
38+ #[ serde( rename = "epic-games-store " ) ]
3839 EpicGames {
3940 identifier : String ,
4041 } ,
@@ -51,6 +52,7 @@ pub enum GameDefPlatform {
5152 SteamDirect {
5253 identifier : String ,
5354 } ,
55+ #[ serde( rename = "oculus-store" ) ]
5456 Oculus ,
5557 Other ,
5658}
@@ -60,7 +62,7 @@ impl GameDefPlatform {
6062 /// the ecosystem schema, preferably as a compile time check.
6163 pub fn ident_from_name < ' a > ( & ' a self , name : & str ) -> Option < & ' a str > {
6264 match self {
63- GameDefPlatform :: EpicGames { identifier } if name == "egs " => Some ( identifier) ,
65+ GameDefPlatform :: EpicGames { identifier } if name == "epic-games-store " => Some ( identifier) ,
6466 GameDefPlatform :: GamePass { identifier } if name == "gamepass" => Some ( identifier) ,
6567 GameDefPlatform :: Origin { identifier } if name == "origin" || name == "ea" => {
6668 Some ( identifier)
@@ -76,11 +78,11 @@ impl GameDefPlatform {
7678 pub fn get_platform_names ( & self ) -> Vec < & ' static str > {
7779 vec ! [
7880 "origin" ,
79- "egs " ,
81+ "epic-games-store " ,
8082 "gamepass" ,
8183 "steam" ,
8284 "steam-direct" ,
83- "oculus" ,
85+ "oculus-store " ,
8486 "other" ,
8587 ]
8688 }
@@ -93,14 +95,12 @@ pub struct GameDefR2MM {
9395 pub data_folder_name : String ,
9496 pub settings_identifier : String ,
9597 pub package_index : String ,
96- pub exclusions_url : String ,
9798 pub steam_folder_name : String ,
9899 pub exe_names : Vec < String > ,
99- pub game_instancetype : String ,
100+ pub game_instance_type : String ,
100101 pub game_selection_display_mode : String ,
101- pub mod_loader_packages : Vec < R2MMModLoaderPackage > ,
102102 pub install_rules : Vec < R2MMInstallRule > ,
103- pub relative_file_exclusions : Vec < String > ,
103+ pub relative_file_exclusions : Option < Vec < String > > ,
104104}
105105
106106#[ derive( Serialize , Deserialize , Debug , Clone ) ]
0 commit comments