1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
import mobase
from ..basic_game import BasicGame
class DaggerfallUnityModDataChecker(mobase.ModDataChecker):
def __init__(self):
super().__init__()
self.validDirNames = [
"biogs",
"docs",
"factions",
"fonts",
"mods",
"questpacks",
"quests",
"sound",
"soundfonts",
"spellicons",
"tables",
"text",
"textures",
"worlddata",
"aa",
]
def dataLooksValid(
self, filetree: mobase.IFileTree
) -> mobase.ModDataChecker.CheckReturn:
for entry in filetree:
if not entry.isDir():
continue
if entry.name().casefold() in self.validDirNames:
return mobase.ModDataChecker.VALID
return mobase.ModDataChecker.INVALID
class DaggerfallUnityGame(BasicGame):
def init(self, organizer: mobase.IOrganizer) -> bool:
super().init(organizer)
self._register_feature(DaggerfallUnityModDataChecker())
return True
Name = "Daggerfall Unity Support Plugin"
Author = "HomerSimpleton"
Version = "1.0.0"
GameName = "Daggerfall Unity"
GameShortName = "daggerfallunity"
GameBinary = "DaggerfallUnity.exe"
GameLauncher = "DaggerfallUnity.exe"
GameDataPath = "%GAME_PATH%/DaggerfallUnity_Data/StreamingAssets"
GameSupportURL = (
r"https://github.com/ModOrganizer2/modorganizer-basic_games/wiki/"
"Game:-Daggerfall-Unity"
)
|