I setup this crazy project inspired by McTeelox's desire to track bugfixes for Masterwork in github.
I used github and version tracking/branching concept to track changes between mods and hopefully derive base patches to apply specific changes to other mods.
https://github.com/thistleknot/BasedOnVanillaRaws/branchesSo far, this concept works with mods that don't rewrite an entire raw file where contextual diff changes can't be used.
Update to use sed and regexp to sort token's by their token-id. Doing so will destroy [top level] comments (comments above the token-id) without some sort of fancy comment parsing method (which IMO is a little much for a batch script), so I suggest final raw input for diff comparison will be stripped of all comments except for file_name? What's scary about this is if using these patches to be based on contextual matches... the fact that things are alphabetized... idk if that would lead to matches for the wrong object... I don't think so due to the way we are deriving patches off a source branch, but any FOLLOWUP patches that are applied in a sequential order could potentially break it.
Regexp could match the [object:id]
and store it in a var.
Then when it finds [id:specificObject]'s
It will select all from that var [id:specificObject] to the next instance of another var (or EOF).
and reorder based on the [idspecificObject]'s alphabetically.
This will allow mods that reorder their reactions to better line up with each other prior to patch file creation.
I would like to post what I've come up with so far so other people can start adding to or basing their work on accordingly.
Btw, thanks goes to the original content creators who I try to give credit to if not in name, at least by title of mod.
So far I've added in
- Accelerated Mod
- Modest Mod options
- Billy Jack's leather changes ( Using just 1 type of leather)
- Tiered Leather
- Some masterwork shop's & reactions
- phoebus changes from 34.11
- 34_11 to 40_06 changes
I'd like to add more mods, and if people start forking, maybe we can track other mod changes so people can piecemeal their own patch files from the work.
The mod I'm working with is based on Phoebus, but due to the way I applied phoebus to the "tree?", the phoebus changes are more down line towards vanilla, so when looking at say Accelerated mod, the patches highlight the changes that accelerated specifically brings to the raws and doesn't muddy it up with say Phoebus changes at the same time.
I'm hoping to derive a diff application that can be used to help make modding a little bit easier.