Skip to content

Commit 30b77a0

Browse files
committed
Saints Row 3 support
1 parent 7accbb8 commit 30b77a0

1 file changed

Lines changed: 64 additions & 0 deletions

File tree

games/game_saintsrow3.py

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
from PyQt6.QtCore import QFileInfo
2+
3+
import mobase
4+
5+
from ..basic_features import BasicModDataChecker, GlobPatterns
6+
from ..basic_game import BasicGame
7+
8+
9+
class SaintsRow3Game(BasicGame):
10+
Name = "Saints Row: The Third Support Plugin"
11+
Author = "peezee"
12+
Version = "1.0.0"
13+
14+
GameName = "Saints Row: The Third"
15+
GameShortName = "saintsrow3"
16+
GameBinary = "SaintsRowTheThird.exe"
17+
GameDataPath = ""
18+
GameSteamId = 55230
19+
GameGogId = 1430740694
20+
#GameIniFiles = "display.ini" # Doesn't work for some reason
21+
#GameNexusId = # No idea how to get it, most mods aren't on Nexus anyway
22+
#GameSavesDirectory = #Need to get it from user-prefixed steam cloud directory
23+
24+
def init(self, organizer: mobase.IOrganizer) -> bool:
25+
super().init(organizer)
26+
self._register_feature(
27+
BasicModDataChecker(
28+
GlobPatterns(
29+
valid=[
30+
"*.xtbl",
31+
"*.str2_pc",
32+
"*.asm_pc",
33+
"*.cvbm_pc",
34+
"*.cmorph_pc",
35+
"*.bnk_pc",
36+
"*.gpeg_pc",
37+
"*.cpeg_pc",
38+
"*.le_strings",
39+
"*.asi",
40+
"packfiles",
41+
"videos",
42+
"*.txt"
43+
],
44+
move={
45+
"*.vpp_pc": "packfiles/pc/cache/",
46+
"*.bik": "videos/"
47+
}
48+
)
49+
),
50+
)
51+
return True
52+
53+
def executables(self):
54+
return [
55+
mobase.ExecutableInfo(
56+
"Saints Row: The Third (DX11)", QFileInfo(self.gameDirectory(), "SaintsRowTheThird_DX11.exe")
57+
),
58+
mobase.ExecutableInfo(
59+
"Saints Row: The Third (DX9)", QFileInfo(self.gameDirectory(), "SaintsRowTheThird.exe")
60+
),
61+
mobase.ExecutableInfo(
62+
"Saints Row: The Third (Launcher)", QFileInfo(self.gameDirectory(), "game_launcher.exe")
63+
)
64+
]

0 commit comments

Comments
 (0)