Idea-collection to make KotoR 3 more mod-friendly
I don't believe there are many people thinking that the KotoR series so far has been all that mod-friendly.
Some things are easily done thanks to kotortool but most other things quickly run into major problems if you ever want to install more than one mod.
So, I'd like to dedicate this tread to idea on how to remedy this situation.
In a nutshell: drop a folder containing something new into the override folder and it will show up in the game PLUS many more options open up to modders.
*Most* mods change some textures, add an item or something alike.
So, my first suggestion are file-based items, forcepowers, feats, etc.
Each of those would consist of a central textfile that contains the entire information needed to locate all other necessary files as well as script and stats for the object.
Requirments, rules, category, random loot script(returns chance for item to appear as random loot), animations, model, textures, effects, sounds etc. are all scripts that can access a range of info functions, store local variables and call other scripts.
Examples of the callable functions would include functions to query all player stats, partymembers, currently selected enemy, query all present NPCs/entities and filter them, current position, status and stats of any entity. I'm sure there's many more that'll come up if we think about this more.
On game-startup, the Override directory (and it's subfolders) are scanned for such entry files. The files are then checked for changes against any previous version and, if changed, are compiled (uncompiled scripts are slow) and added to a central database of their kind (equivalent to the current 2da files) From there, the items/FPs/etc. are accessible in their respective categories (so an FP would show up in the list of FPs, a feat in the list of feats, an item accessible to the random loot generator).
Now, I'm also thinking about a similar system for dialog-options. The idea would be attributes containing the parent node and child node(s) by ID so the new dialoge can be sorted into an existing dialoge tree-structure.
Then associate scripts and sounds inside the central text file. Inserting into the dialoge tree is also done at game startup (fast operation, trees are buid for that).
The structure of the file should allow for several dialoge nodes within a single file.
Dialoge tree-nodes should take an arbitrary number of childs (ie each new dialoge added to a given node is displayed, there's no conflict). Dialoges from different modders of course have different scripts that are called when the dialoge is chosen, but it must stay in the modders responsibility to check for any preconditions that are needed by his/her scripts (ie if someone/-thing is present, player level etc)
All of this of course assumes that mod-friendlyness will even be considered for K3.
What are your ideas?
on wings of destiny
through virgin skies
to far horizons I will fly