User:Thingy Person
The Beyond Skyrim Wiki — Hosted by UESP
Revision as of 22:34, 31 May 2022 by Thingy Person (talk | contribs)
All credit to Jonahex
Contents
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!
- 2) 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>.
- 1) convert. Used for conversion between binary and xml representation of Havok (.hkx) files.
- 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.
- 3) exportfbx. Used to export nifs back to fbx.
- exportfbx <input nif path> -e <output folder path>.
- 4) importskin. Used to import creature or armor skin from fbx to nif.
- importskin <input fbx path> -e <output folder path>.
- 5) 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.
- 6) 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.
- 2. 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:
- Use importrig to export skeleton
- Use importskin to export skin. Fix root bone name to NPC Root [Root]
- Do all behavior edits you need on donor havok project
- For movement blend generators set weights to actual creature speed from animation
- Replace skeleton with new skeleton.
- In character file write in your new bone pair map.
- Use retargetcreature on donor behavior to copy behavior
- Use importanimation to export animations. Set -c to animationdata<YourCreature>project.txt generated by retargetcreature. Set -b to donor behavior (not new behavior!) folder
- Create race, skin, armor addon, etc in esp generated by retargetcreature. Set actual creature speed to movement type