As the first stage of my project with adoomgod comes to a close in having modified the masteries of the game, it now occurs to us that, as far as we can tell, we’re totally boned when it comes to itemization consistency, particularly with +skills on items. This is largely because we’ve found we needed to rename many skills in order for them to be utilized by the game in a mod (it seems the game defaults to vanilla files if there’s a naming conflict). If there’s a way around this mess, we’d love to hear it (i.e., a means for us to use same-(file)named skills and have their changes be pulled into the mod). But assuming the worst…
Cutting to the point, it seems we’re going to need to edit a lot of stuff in order to get proper item-skill functionality working. I plan on writing an automated script to handle this sort of editing, but it’d be very nice to know where I need that script to be looking. I figure the entire records/items/ folder will need to be copied, parsed, and rewritten so as to match up with what we’ve changed. Will Devotion need a look at, too? And what else as well? And if we start changing up items and needing them to have different filenames too, recursively how far do we need to change things to get items dropping/craftable/shoppable/etc. with proper +skills linkage?
If you’re just going for the items, editing the items should be fine (search in item for itemskillname entry, compare skillpath to all old skillpaths, if found, overwrite by new skillpath for a script).
As for masteries, you’ll need to update some of the ui files to display the new skills properly and you also need to register them in the skilltree instead of the old ones.
I didn’t see anything in devotion that would need to be updated when you’re only renaming stuff inside masteries as there is (to my knowledge) no +x to skill y.
No idea whether skills from devotion have to be renamed and work arounded like mastery skills, didn’t try it yet.
If anyone else is editing existing masteries, you can use the source code I wrote below (Java 8.0) to automatically update items relative to whichever +skills you need. You’ll need to edit some of the Path variables and search functions as pertaining to the naming convention of your mod. Edit: Also, this runs through command line with no argument functionality built in because I’m a lazy sod working in an IDE.
Edit 2: Updated code for more abstraction so that there’s less you need to edit to use in your own mod.