Difference between revisions of "User:Thingy Person"

The Beyond Skyrim Wiki — Hosted by UESP
Jump to: navigation, search
Line 3: Line 3:
  
 
== Tools ==
 
== Tools ==
 +
# '''ck-cmd'''. Not earlier than May 2022 build is required for custom creature implementation. Can be downloaded from [https://github.com/aerisarn/ck-cmd github]. Either download latest build from appveyor artifacts or build if from sources.<br>ck-cmd is command line tool. Following commands are useful for animation implementation:
 +
## '''convert'''. Used for conversion between binary and xml representation of Havok (.hkx) files.
 +
::: '''convert <input file path> -o <output file path> -v WIN32 -f SAVE_DEFAULT''' — to convert xml to Skyrim LE hkx.
 +
::: '''convert <input file path> -o <output file path> -v AMD64 -f SAVE_DEFAULT''' — to convert xml to Skyrim SE hkx.
 +
::: '''convert <input file path> -o <output file path> -f SAVE_TEXT_FORMAT''' — to convert Skyrim LE hkx to xml.
 +
::: Fun fact #1: SE hkx can’t be converted back to xml. So, save your xmls!
 +
## '''importrig'''. Used to import skeleton from fbx to nif and hkx.
 +
::: '''importrig <input fbx path> -a <animation output folder path> -e <nif output folder path>'''.
 +
 +
::: Fun fact #2: skeleton hkx will be saved to folder where ck-cmd.exe is located, no matter which output paths you set.
 +
::: Fun fact #3: most of the time you don’t need animation output, but you need to set animation output folder anyway, command doesn’t work without it.
 +
## '''exportfbx'''. Used to export nifs back to fbx.
 +
::: '''exportfbx <input nif path> -e <output folder path>'''.
 +
## '''importskin'''. Used to import creature or armor skin from fbx to nif.
 +
::: '''importskin <input fbx path> -e <output folder path>'''.
 +
## '''retargetcreature'''. This command copies creature Havok project replacing creature name in all instances where it’s needed and creates esp with idles, sound descriptors and movement types for new creature.
 +
::: '''retargetcreature <path to source creature file in meshes\animationdata> <path to source creature Havok project folder> <new creature name> -s <Skyrim LE folder path>'''.
 +
 +
::: Fun fact #4: there is no output folder argument. All output is stored in ck-cmd folder. It includes animationdata and animationsetdata folders, animationdatasinglefile.txt, animationsetdatasinglefile.txt and <new creature name> folder with new Havok project.
 +
::: Fun fact #5: well, actually not all. Esp is stored in your Skyrim LE Data folder.
 +
## '''importanimation'''. Used to export fbx animations to hkx.
 +
::: '''importanimation <path to skeleton hkx file> <path to fbx animation file or folder with animations> --b=<path to creature behavior folder> --c=<path to your creature animation cache file, i.e., animationdata\<your creature’s name>project.txt> --e=<output animations folder>'''.
 +
::: Fun fact #6: but output animationdata and animationsetdata folders, animationdatasinglefile.txt, animationsetdatasinglefile.txt will be stored in ck-cmd folder!
 +
::: Fun fact #7: though they won’t be generated if in --b argument <your creature’s name>project.txt contains uppercase letters.
 +
And the final ck-cmd fun fact: if you any of folder paths in commands with slash, commands don’t work.
 +
## '''Skyrim Behavior Tool'''. GUI tool for behavior editing. Download it from [https://github.com/BrannigansLaw/Skyrim-Behavior-Editor- github].
  
 
== Custom creature implementation ==
 
== Custom creature implementation ==

Revision as of 03:31, 1 June 2022

All credit to Jonahex

Animation events

Tools

  1. ck-cmd. Not earlier than May 2022 build is required for custom creature implementation. Can be downloaded from github. Either download latest build from appveyor artifacts or build if from sources.
    ck-cmd is command line tool. Following commands are useful for animation implementation:
    1. convert. Used for conversion between binary and xml representation of Havok (.hkx) files.
convert <input file path> -o <output file path> -v WIN32 -f SAVE_DEFAULT — to convert xml to Skyrim LE hkx.
convert <input file path> -o <output file path> -v AMD64 -f SAVE_DEFAULT — to convert xml to Skyrim SE hkx.
convert <input file path> -o <output file path> -f SAVE_TEXT_FORMAT — to convert Skyrim LE hkx to xml.
Fun fact #1: SE hkx can’t be converted back to xml. So, save your xmls!
    1. importrig. Used to import skeleton from fbx to nif and hkx.
importrig <input fbx path> -a <animation output folder path> -e <nif output folder path>.
Fun fact #2: skeleton hkx will be saved to folder where ck-cmd.exe is located, no matter which output paths you set.
Fun fact #3: most of the time you don’t need animation output, but you need to set animation output folder anyway, command doesn’t work without it.
    1. exportfbx. Used to export nifs back to fbx.
exportfbx <input nif path> -e <output folder path>.
    1. importskin. Used to import creature or armor skin from fbx to nif.
importskin <input fbx path> -e <output folder path>.
    1. retargetcreature. This command copies creature Havok project replacing creature name in all instances where it’s needed and creates esp with idles, sound descriptors and movement types for new creature.
retargetcreature <path to source creature file in meshes\animationdata> <path to source creature Havok project folder> <new creature name> -s <Skyrim LE folder path>.
Fun fact #4: there is no output folder argument. All output is stored in ck-cmd folder. It includes animationdata and animationsetdata folders, animationdatasinglefile.txt, animationsetdatasinglefile.txt and <new creature name> folder with new Havok project.
Fun fact #5: well, actually not all. Esp is stored in your Skyrim LE Data folder.
    1. importanimation. Used to export fbx animations to hkx.
importanimation <path to skeleton hkx file> <path to fbx animation file or folder with animations> --b=<path to creature behavior folder> --c=<path to your creature animation cache file, i.e., animationdata\<your creature’s name>project.txt> --e=<output animations folder>.
Fun fact #6: but output animationdata and animationsetdata folders, animationdatasinglefile.txt, animationsetdatasinglefile.txt will be stored in ck-cmd folder!
Fun fact #7: though they won’t be generated if in --b argument <your creature’s name>project.txt contains uppercase letters.

And the final ck-cmd fun fact: if you any of folder paths in commands with slash, commands don’t work.

    1. Skyrim Behavior Tool. GUI tool for behavior editing. Download it from github.

Custom creature implementation

Short note on how to import custom creature using ck-cmd so I don't forget anything:

  1. Use importrig to export skeleton
  2. Use importskin to export skin. Fix root bone name to NPC Root [Root]
  3. Do all behavior edits you need on donor havok project
    1. For movement blend generators set weights to actual creature speed from animation
    2. Replace skeleton with new skeleton.
    3. In character file write in your new bone pair map.
  4. Use retargetcreature on donor behavior to copy behavior
  5. Use importanimation to export animations. Set -c to animationdata<YourCreature>project.txt generated by retargetcreature. Set -b to donor behavior (not new behavior!) folder
  6. Create race, skin, armor addon, etc in esp generated by retargetcreature. Set actual creature speed to movement type

Custom idles

Behavior editing