Making a mode to rename items in another mod

Post » Tue Nov 20, 2012 12:07 pm

I'm new to the creation kit, so this is probably a pretty basic question. I'm trying to rename spellbooks added by the Apocalypse Spell mod to make the names consistent with Valdacil's sorting mod. My first attempt to was to make a separate mod that would load after Apocalypse and change names of the books. This way I wouldn't have to re-modify the actual Apocalypse mod every time it go updated. However, when did that in CK and saved the file and then tried to load it back, it complained that I have duplicate object IDs and made a duplicate of each book ID that I renamed with a "DUPLICATE01" appended.

So, what's the best way to do this? Is it possible to rename objects added by another mod using a separate additional mod?

Thanks in advance for your help.
User avatar
Sunny Under
 
Posts: 3368
Joined: Wed Apr 11, 2007 5:31 pm

Post » Tue Nov 20, 2012 1:31 pm

Bump
User avatar
Nick Pryce
 
Posts: 3386
Joined: Sat Jul 14, 2007 8:36 pm

Post » Tue Nov 20, 2012 6:16 am

I think I got around that sort of thing by doing the following:
1) Finish edits, save and close
2) After saving the mod and before doing anything else with it (testing, reopening, etc.), open Wrye Bash, select your mod, and 'Add Master', adding the relevant source ESP as a master.
3) Probably not necessary, but I click in the 'Master List' on the right side and explicitly hit 'Save'.

As long as you don't reopen it, you can probably keep saving the mod normally during a session safely. It's only when you close the CK / CK crashes and you want to reopen the mod that you have to do the Wrye Bash thing.

As I said, I think that let me avoid that, but I may not have been making edits that cause such conflicts. All I can say is try it and see if it helps. I also think it may work because although the CK will load masters as specified this way, it won't save them if those masters are ESPs.
User avatar
krystal sowten
 
Posts: 3367
Joined: Fri Mar 09, 2007 6:25 pm

Post » Tue Nov 20, 2012 8:08 am

You can do it by mastering the mod with the items whose names you'd like to change to your name-changer mod.

Open Wrye Bash, find the mod with the items in it, right-click and use Esmify Self. Open the CK, load that mod, but do not make it the active file. Make your name changes. Save your work as a new esp, call it whatever you like. Close the CK. Now go back to Wrye Bash, go to that same mod you changed before, and this time use Espify Self to revert it back to normal. Do not forget that last step or bad things happen.

Now you've got an esp with that other mod as its master. Your name changes will stick. Hooray!
User avatar
Nikki Morse
 
Posts: 3494
Joined: Fri Aug 25, 2006 12:08 pm

Post » Tue Nov 20, 2012 8:30 am

Thanks a lot for the advice! ChaosPearl, I did exactly what you said and it worked great.
User avatar
Steve Fallon
 
Posts: 3503
Joined: Thu Aug 23, 2007 12:29 am

Post » Tue Nov 20, 2012 3:01 am

You could use SKSE's http://www.creationkit.com/SetName_-_Form, but changes won't be saved so they'll need to be http://www.creationkit.com/Complete_Example_Scripts#Maintenance.2Fupdate_code_which_runs_once_per_save_load_and_shows_a_message_when_a_mod_is_updated_or_first_loaded. Seems an opportune time for use of a http://www.creationkit.com/Arrays_(Papyrus)#Creating_a_FormID_Array.
Spoiler
  • Quest:
    ScriptName YourQuestScript Extends Quest AutoInt[] Property iFormID AutoString[] Property sName AutoEvent OnInit()	Maintenance()EndEventFunction Maintenance()	Int iIndex = sName.Length	While iIndex > 0		iIndex -= 1		Game.GetFormFromFile(iFormID[iIndex], "Some Mod.esp").SetName(sName[iIndex])	EndWhileEndFunction
  • ReferenceAlias:
    ScriptName YourPlayerScript Extends ReferenceAliasYourQuestScript Property QuestScript AutoEvent OnPlayerLoadGame()	QuestScript.Maintenance()EndEvent
User avatar
Emma louise Wendelk
 
Posts: 3385
Joined: Sat Dec 09, 2006 9:31 pm


Return to V - Skyrim