Skyrim Special Edition

File information

Last updated

Original upload

Created by

xavier0self

Uploaded by

xavier0self

Virus scan

Safe to use

Tags for this mod

21 comments

  1. xavier0self
    xavier0self
    • member
    • 68 kudos
    Sticky
    Now all I need is an EXPAND ALL TREES button in SSEEdit.
    Someone please fill me in if that exists. :P
    1. Taffer42
      Taffer42
      • supporter
      • 33 kudos
      I think this is built in to xEdit. Hold down the ALT key on the keyword when you click the + symbol to expand a tree.
    2. xavier0self
      xavier0self
      • member
      • 68 kudos
      AHHH so close to what I meant haha
      I mean like, expand all mods at once, and all of the trees in them, specifically for use with this script.
      I want to filter what I search for, then open all mods at once and all [armo] and [arma] records within them
      it gets tricky to alt + click them one at a time when all the 'expand boxes' keep getting lower and lower lol (AND by random intervals haha) (AND theres like 30 mods to go through.  too tedious to bother honestly :p)
      im glad you posted though because someone will find this helpful for sure!
  2. backup158
    backup158
    • member
    • 2 kudos
    This is some serious gourmet s#*!
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      lol wicked!! <3
  3. Sondju
    Sondju
    • member
    • 0 kudos
    Hi! If I want to remove the binding to the slot, how do I do it?
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      Edit:  If you just meant, how do you select flags within SSEEdit, check out the below pic I've included for you.
      Spoiler:  
      Show

      Just right-click the "First Person Flags (sorted)" values and select "Edit"


      You might want to enable some functionality with SSEEdit as well, so you can start the program with arguments like
      -iknowwhatimdoing
      and
      -AllowMasterFilesEdit
      Spoiler:  
      Show




      hmm thats a good question!
      The script wouldn't be able to accommodate that, unfortunately.  Like, you couldn't ask this script to remove "X-slot" from all selected mods.
      You could however, change the slots to a combination that didn't include "x-slot".. but you probably had already thought about that as a work around.
      And that probably doesn't quite work for all situations.

      But technically, there is likely a way to do what you want.  It sounds like you want to just remove a specific slot from some selected mods or armors.
      I do not know how to write scripts or code. 
      But I can comb through the SSEdit threads and hopefully stumble across something that is kinda like what im looking for!
      By me, I mean you lmao  
      that's all i did to make this scipt!    Looked around the internet a bunch (googled everything), copy/pasted what I thought I would need.  And then trial and errored my way to something that worked and I could share haha

      https://tes5edit.github.io/docs/13-Scripting-Functions.html

      Personally, I would start by looking for an alternative to SetElementNativeValues
      That is an instruction that changes the flags, but maybe there is one for removing flags like "SubtractElementNativeValues" or something
      I have NO IDEA if that exists or not just an example of what I would be looking for
      Do keep me posted if you require any more help!  I'll answer as much as I can for you, and help some more if you do the leg work haha
  4. yelnats2355
    yelnats2355
    • supporter
    • 0 kudos
    I am really, really ignorant when it come to scripting.  I wanted to filter all the armors using slot 32. 

    This is what tried to do"
    unit ApplyCustomScripted;
    function Filter(e: IInterface): Boolean;
    begin
        

    if GetElementNativeValues(e, 'BOD2\First Person Flags') and $4 = $4 then
    Result := GetElementNativeValues(e, 'BOD2 - Biped Body Template\First Person Flags\32 - body') <> 0;
      
      //Remember to filter a flag you are searching for!  or not, that might be handy for some reason..
    end;

    This is the result:
    Error in unit 'applycustomscripted' on line 127: Declaration expected but 'unit' found.

    Line 127 is "unit ApplyCustomScripted;". I have no clue what I'm doing or what any of the above really means.  Can anyone help out a dummy, please?
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      OKAY!  SORRY FOR THE LATE REPLY BUDDY 
      I just noticed the question right now.

      SO I tested but could not get your error!  :(
      What I would do is reinstall this file.  As in, overwrite the one you have now with an original from the .zip or 7zip file.
      Then try the search again.   
      try replacing just the portion of the script with what is in the spoiler below:
      Spoiler:  
      Show

      unit ApplyCustomScripted;
      function Filter(e: IInterface): Boolean;
      begin
          

      if GetElementNativeValues(e, 'BOD2\First Person Flags') and $4 = $4 then
      Result := GetElementNativeValues(e, 'BOD2 - Biped Body Template\First Person Flags\32 - body') <> 0;
        
        //Remember to filter a flag you are searching for!  or not, that might be handy for some reason..
      end;


      Make sure to edit ONLY the variables.  Maybe you accidentally added a space in the code somewhere that's invalidating it all.  I have no idea lol
      I do not script what so ever haha
    2. xavier0self
      xavier0self
      • member
      • 68 kudos
      OH WAIT.  
      IF YOU ARE ONLY USING THAT PORTION OF MY SCRIPT (but not the rest of the code found hidden way below in my script)

      then you will probably get that error

      you ALSO NEED:
      Spoiler:  
      Show

      function Initialize: Integer;
      begin
        FilterConflictAll := False;
        FilterConflictThis := False;
        FilterByInjectStatus := False;
        FilterInjectStatus := False;
        FilterByNotReachableStatus := False;
        FilterNotReachableStatus := False;
        FilterByReferencesInjectedStatus := False;
        FilterReferencesInjectedStatus := False;
        FilterByEditorID := False;
        FilterEditorID := '';
        FilterByName := False;
        FilterName := '';
        FilterByBaseEditorID := False;
        FilterBaseEditorID := '';
        FilterByBaseName := False;
        FilterBaseName := '';
        FilterScaledActors := False;
        FilterByPersistent := False;
        FilterPersistent := False;
        FilterUnnecessaryPersistent := False;
        FilterMasterIsTemporary := False;
        FilterIsMaster := False;
        FilterPersistentPosChanged := False;
        FilterDeleted := False;
        FilterByVWD := False;
        FilterVWD := False;
        FilterByHasVWDMesh := False;
        FilterHasVWDMesh := False;
        FilterBySignature := True;
        FilterSignatures := 'ARMO, ARMA';
        FilterByBaseSignature := False;
        FilterBaseSignatures := '';
        FlattenBlocks := False;
        FlattenCellChilds := False;
        AssignPersWrldChild := False;
        InheritConflictByParent := False; // color conflicts
        FilterScripted := True; // use custom Filter() function
        ApplyFilter;
      end;
      function Process(e: IInterface): integer;
      begin
      AddMessage(GetElementEditValues(e, 'FULL'));
      end;
      end.

      tacked on at the end of your script.
    3. yelnats2355
      yelnats2355
      • supporter
      • 0 kudos
      Hey, thank you for the response!  I don't care at all that it was not immediate.  A couple days after i wrote my post, I had to go on the road to address family issues.  It will likely be mid to late November before I have a chance to get home and try your suggestions, but I will post the results here.  Thanks again for looking into my problem!
    4. yelnats2355
      yelnats2355
      • supporter
      • 0 kudos
      got it, I will report the results when I finally get home next month.  thanks again.
    5. xavier0self
      xavier0self
      • member
      • 68 kudos
      np, and yeah let me know how it goes!
  5. dulcinea14
    dulcinea14
    • supporter
    • 31 kudos
    Thanks, this is super helpful putting outfits together!
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      yay! im so glad its helping you
  6. Taffer42
    Taffer42
    • supporter
    • 33 kudos
    I once found the following information at https://wiki.nexusmods.com/index.php/Skyrim_bodyparts_number and copied it down ... I was wondering if it may be useful to include it in your reference tables as well?

    Other body parts that exist in vanilla nif models
    ...
    130 - Used in helmets that conceal the whole head and neck inside
    131 - Used in open faced helmets\hoods (Also the nightingale hood)
    141 - Disables Hair Geometry like 131 and 31
    142 - Used in circlets
    143 - Disabled Ear geometry to prevent clipping issues?
    150 - The gore that covers a decapitated head neck
    230 - Neck, where 130 and this meets is the decapitation point of the neck

    Edit: Apparently the website I got the information from changed their web address. Fixed the above link so it works now. :)
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      NEAT
      i personally don't know how to incorporate those into a plugin, simply because I can't select any of those flags from within creation kit or SSEEdit
      but i am ignorant to many-a-thing, and being able to filter/change these may be be helpful
      I'm not sure what their decimal values or hex values would be though
      if you go into outfit studio and check out the partitions, there's actually a s*** tonne more partitions than even the ones you listed
      so the decimal values go up by powers of two for each next flag (2^n where n=index of flag), so maybe try that
      hex values follow a nice pattern looks like so try indexing those flags with the hex pattern

      im glad you posted because someone will probably find this helpful too!
  7. MyHouseatl
    MyHouseatl
    • member
    • 14 kudos
    Any chance you could make the script find a body slot and add a keyword?  That would help a lot with SOS schlongify.
    1. xavier0self
      xavier0self
      • member
      • 68 kudos
      I got you covered, be my guinea pig though and try it out for everyone before I upload it, i sent it to you in pm
    2. OverMaid
      OverMaid
      • member
      • 10 kudos
      hi i have a transgender woman characters, does this script work for changing skirts slot? in mcm the top is visible to use the reveal option in armor, but when a skirt uses slot 52 the mcm does not identify this item as armor
      if so this script would be useful
    3. xavier0self
      xavier0self
      • member
      • 68 kudos
      It should be able to do what you suggest!

      so i guess you'd want to filter out all slot 52 armor in your load order
      then find the specific mods that have the skirts you want to change (maybe don't blanket-edit all body slot 52 items in your entire load order)

      then just right-click all highlighted items and "compare all"
      now change the body slot in one of them, right click on edited body slot and "copy to selected records"
      I would also use this approach to add or remove keywords to those same skirts (or what ever armor pieces)

      remember, you have to change the partition data of the mesh if you change the body slot info in the plugin (esp)!
      to do so, use outfit studio or nifskope.  if you require some help doing so, pm me and i'll try to help out :)

      i hope that helps!