Jump to content

Quick Questions, Quick Answers


Mattiewagg

Recommended Posts

RE player alias, make sure all properties are pointing to the correct thing. Also, your chain of functions ends up with a function per DLC / mod. In them you have a bool which only lets it continue if it has never been done before. In this setup, it should only do something if you add a supported DLC / mod after having ran the game with this mod active for a bit.

 

Ideally, you use the initial start up to set up your compatibility with other installed mods. The player load game situation is for catching newly added mods or those that have been removed. Should you do your coding appropriately, one function or chain of functions can do all that work with minimal impact when the player loads the game. In a nutshell, you're just checking to see if everything is still the same or something needs to be adjusted.

 

Until you know how you want to handle various scenarios via script, calling the initial setup code from the player load game is the way to go. It may not handle removed stuff but will cover anything new that is supported.

 

RE the MCM thing, MCM menus have text displayed on the left which indicates what the choice on the right is for. Usually the left is cryptic and the info text which shows at the bottom when the option is selected contains the detailed information. It is one option per line. If you want the text to change on the left, you'll have to use a string variable and change it accordingly. But that won't change the option choices on the right...

 

I'm not sure how that helps you nor how to achieve what you want.

Link to comment
Share on other sites

  • Replies 2.6k
  • Created
  • Last Reply

Top Posters In This Topic

 

How do I post a thread on the forums in the skyrim mod section (Make my own post like you can on bethesda.net)

Pick a sub-forum of Skyrim Modding such as Skyrim Mod Talk and press the Start New Topic button at the top right (immediately above the list of threads).

 

I got it, thanks a lot thought!! (:

Link to comment
Share on other sites

Is it possible to change a keyword via a script and a form list? I ask this because I'm adding some stuff to a vanilla game that is actually Dawnguard or Dragonborn that I created myself, the issue is I don't have the keywords in Skyrim.esm. Is there any way around this issue?

 

Edit: For more clarification, I'm not talking about the workbench keywords. I'm referring to the ones that determine what type of material or it's categorized as like DLC2WeaponMaterialNordic.

 

Thanks in advance for a reply.

Edited by LadyCrystyna
Link to comment
Share on other sites

 

 

No way to change keyword via script. Only thing that could be done, as far as I know, is add the item(s) to alias references and have the alias references supply the desired keyword.

 

 

 

Yes, I found some reading on it, however, there are no examples for me to go by. How would I write a script for a DLC item as a reference alias to set the object reference to something else?

Link to comment
Share on other sites

I think at the level where you are wanting to assign base game or custom stuff to base game things and then swap them out for DLC / mod stuff... you might want to look into xEdit scripts. Have your users run the xEdit script on their game and create a patch file with all the adjustments necessary based upon what is in their install.

 

That isn't something I can help with but I do know it is possible as I had assistance making one for a mod (unreleased). Mine creates a variety of formlists based on what mods the player sets as active and loads into xEdit. While I could do my formlist building in game, it did take a good bit of time. Switching to this method, it cut the initial build time after closing the MCM menu by quite a bit.

 

A working example of an xEdit script would be DynDOLOD. It may seem like its own program but it is really xEdit with additional command line parameters to launch the script(s).

 

FYI - xEdit is the collective term for TES5Edit, FO4Edit, SSEEdit, etc...

Link to comment
Share on other sites

How do I update an MCM script? I understand the part about GetVersion and OnVersionUpdate, but changing the return value of GetVersion when I make a change to the script, is not working as expected as OnVersionUpate isn't called.

 

I'm needing to add a new page.

Link to comment
Share on other sites

I probably should clarify what I want to do with my mod:

 

All those previous questions about item swapping come into play here, as the mod would be (I hope) Skyrim & Update required. (Update for CCOR & WAFR support via injected records).

 

I'm looking to add Arrow & Bolt upgrades to support DLC and add new bolts. - This part can be done with item swap for DLC arrows and bolts except for the ones I add which obviously I would include.

 

I'm also looking to add enchanted versions, which would be fine except that causes the issue with keywords in editor IDs. IE: DLC2Dragonbone etc. (I'm not really sure how this would affect the game if those are missing from enchanted versions when included with the original version via Dawguard, WAFR or CCOR). My mod will support WAF & CCOR when it comes to appropriate items.

 

The other issue with adding DLC enchanted versions to a vanilla game: I would have to unpack textures and I'm not sure if those need to be included with my mod. I do know they need to be included if I include a glow around the arrows and bolts.

 

Creating the explosion & projectile for enchanted is ok for the vanilla but what to do about the DLC?

Link to comment
Share on other sites

 

How do I update an MCM script? I understand the part about GetVersion and OnVersionUpdate, but changing the return value of GetVersion when I make a change to the script, is not working as expected as OnVersionUpate isn't called.

 

I'm needing to add a new page.

 

 

You would add the new stuff in OnConfigInit() and have your update script call OnConfigInit again I believe. Well, that's how I do it, below is an example of how mine works if it will give you an idea.

 

 

 

int function GetVersion()
return 1 ; New Script Version or Current Script Version
endFunction

Event OnVersionUpdate(int a_version)
   If (a_version >= 2 && CurrentVersion < 2) ; Called when a version update of this script has been detected 
Debug.Trace("LC's Crafting Addons is updating script version " + a_version)
OnConfigInit()
   EndIf
EndEvent

Event OnConfigInit()
Pages = New String[4]
Pages[0] = "Recipe Options"
Pages[1] = "Compatibility"
Pages[2] = "Help"
Pages[3] = "Uninstall"
 
DebugText = New String[3]
DebugText[0] = ""
DebugText[1] = "Working... Please Wait"
DebugText[2] = "Process Completed"
 
TypeText = New String[4]
TypeText[0] = "Custom"
TypeText[1] = "Alternative"
TypeText[2] = "Both"
TypeText[3] = "Costless"
 
Add your new variables and whatever inside here.
EndEvent

Edited by LadyCrystyna
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...