Spore-Mod-Manager
Spore-Mod-Manager copied to clipboard
Mod Identity 2
- [ ] Rethink syntax to be less awful or more automatable
-
- [ ] Easier debugging for mod developers, if we stick to the manual route
- [ ] Support config tweaks
- [ ] Allow a mod to programmatically query its configuration ingame
- [ ] Allow a mod to programmatically check for the presence of another mod ingame
- [ ] Allow optional specialization for different game builds?
- [ ] Other stuff TBD
@emd4600 Think you can help with support for config tweaks?
This is my approach:
<mod mod things here>
<file>ForcedFile.dll</file>
<component unique="" name="">
<description>Sample Description</description>
<file game="GalacticAdventures">example.package</file>
<file>example.dll</file>
<remove game="GalacticAdvenures">remove_example.package</remove>
<remove>remove_example.dll</remove>
<compatibility>
<require game="Spore">Arenas.package</require>
<file>AntiArenas.dll</file>
</compatibility>
</component>
</mod>
Basically, a mod is made of component
elements. Each component can have the following attributes:
-
file
: Add a file into a certain folder (ModAPI folder, Spore Data, GA Data) -
remove
: Remove a file from a certain folder (ModAPI folder, Spore Data, GA Data) -
compatibility
: Add/remove files only if certain files are present, done with therequire
tag.
Every mod has a main component, which are the files that are always added/removed. These go directly inside the mod
block, which can have the same attributes as components.
About configuration tweaks, there are two possibilities:
- Allowing the mod identity to just append text to those files.
- Adding attributes that do it for them. Something like
<configTweak type='int' name=''frameLimitMS">17</configTweak>
I like this so far...but if possible, I'd like to add more control for the presentation, e.g. to allow using say, sliders or ComboBoxes for mutually-exclusive components, rather than having RadioButtons be the only option. I'd also like to separate visual grouping from mutual-exclusivity of components. Any thoughts on how we could expose that?
Also, regarding the config tweaks bit...I kinda think allowing appending text would be better...mainly because of the Ultimate Graphics Fix...
EDIT: Oh, and one other thing: Files which are only added when the mod is disabled. (e.g. parts with no UI for a parts mod, to ensure creation compatibility remains intact)