diff --git a/distribution/linux/openrct2-mimeinfo.xml b/distribution/linux/openrct2-mimeinfo.xml
index 7b72a6b3bb..b950c5747a 100644
--- a/distribution/linux/openrct2-mimeinfo.xml
+++ b/distribution/linux/openrct2-mimeinfo.xml
@@ -25,6 +25,7 @@
+
diff --git a/src/openrct2-ui/windows/LoadSave.cpp b/src/openrct2-ui/windows/LoadSave.cpp
index 9485bb8cc9..7bc68f1d7e 100644
--- a/src/openrct2-ui/windows/LoadSave.cpp
+++ b/src/openrct2-ui/windows/LoadSave.cpp
@@ -358,16 +358,16 @@ static bool Browse(bool isSave, char* path, size_t pathSize)
break;
case LOADSAVETYPE_LANDSCAPE:
- extension = ".sc6";
- fileType = FILE_EXTENSION_SC6;
+ extension = ".park";
+ fileType = FILE_EXTENSION_PARK;
title = isSave ? STR_FILE_DIALOG_TITLE_SAVE_LANDSCAPE : STR_FILE_DIALOG_TITLE_LOAD_LANDSCAPE;
desc.filters[0].name = language_get_string(STR_OPENRCT2_LANDSCAPE_FILE);
desc.filters[0].pattern = GetFilterPatternByType(_type, isSave);
break;
case LOADSAVETYPE_SCENARIO:
- extension = ".sc6";
- fileType = FILE_EXTENSION_SC6;
+ extension = ".park";
+ fileType = FILE_EXTENSION_PARK;
title = STR_FILE_DIALOG_TITLE_SAVE_SCENARIO;
desc.filters[0].name = language_get_string(STR_OPENRCT2_SCENARIO_FILE);
desc.filters[0].pattern = GetFilterPatternByType(_type, isSave);
diff --git a/src/openrct2/Game.cpp b/src/openrct2/Game.cpp
index caa7e6954c..c012028653 100644
--- a/src/openrct2/Game.cpp
+++ b/src/openrct2/Game.cpp
@@ -609,7 +609,7 @@ static void limit_autosave_count(const size_t numberOfFilesToKeep, bool processL
if (processLandscapeFolder)
{
folderDirectory = environment->GetDirectoryPath(DIRBASE::USER, DIRID::LANDSCAPE);
- fileFilter = "autosave_*.sc6";
+ fileFilter = "autosave_*.park";
}
utf8 filter[MAX_PATH];
@@ -671,7 +671,7 @@ void game_autosave()
if (gScreenFlags & SCREEN_FLAGS_EDITOR)
{
subDirectory = "landscape";
- fileExtension = ".sc6";
+ fileExtension = ".park";
saveFlags |= 2;
}
diff --git a/src/openrct2/platform/Platform.Win32.cpp b/src/openrct2/platform/Platform.Win32.cpp
index 02a39ca464..96e12986c2 100644
--- a/src/openrct2/platform/Platform.Win32.cpp
+++ b/src/openrct2/platform/Platform.Win32.cpp
@@ -365,6 +365,7 @@ namespace Platform
void SetUpFileAssociations()
{
// Setup file extensions
+ SetUpFileAssociation(".park", "OpenRCT2 park (.park)", "Play", "\"%1\"", 0);
SetUpFileAssociation(".sc4", "RCT1 Scenario (.sc4)", "Play", "\"%1\"", 0);
SetUpFileAssociation(".sc6", "RCT2 Scenario (.sc6)", "Play", "\"%1\"", 0);
SetUpFileAssociation(".sv4", "RCT1 Saved Game (.sc4)", "Play", "\"%1\"", 0);
@@ -510,6 +511,7 @@ namespace Platform
void RemoveFileAssociations()
{
// Remove file extensions
+ RemoveFileAssociation(".park");
RemoveFileAssociation(".sc4");
RemoveFileAssociation(".sc6");
RemoveFileAssociation(".sv4");
diff --git a/src/openrct2/title/TitleSequence.cpp b/src/openrct2/title/TitleSequence.cpp
index 4bb66640fa..e85dab8923 100644
--- a/src/openrct2/title/TitleSequence.cpp
+++ b/src/openrct2/title/TitleSequence.cpp
@@ -291,7 +291,7 @@ static std::vector GetSaves(const std::string& directory)
{
std::vector saves;
- auto pattern = Path::Combine(directory, "*.sc6;*.sv6");
+ auto pattern = Path::Combine(directory, "*.sc6;*.sv6;*.park;*.sv4;*.sc4");
auto scanner = Path::ScanDirectory(pattern, true);
while (scanner->Next())
{