Jump to content

FNIS- How to set up Chair Animations


nosdregamon

Recommended Posts

I have a working Furniture-Animation that I want to turn into a ch-Animation to use that nifty random variation of "sit"-idles. Original/working data:

 

 

fu -a xVampireSupplyEnter xVampireSupplyEnter.hkx
+ -o xVampireSupplyHang1 xVampireSupplyHang1.hkx xCuffRightLeg xCuffRightArm xCuffLeftArm xCuffLeftLeg
+ -o xVampireSupplyHang2 xVampireSupplyHang2.hkx xCuffRightLeg xCuffRightArm xCuffLeftArm xCuffLeftLeg
+ -o xVampireSupplyHang3 xVampireSupplyHang3.hkx xCuffRightLeg xCuffRightArm xCuffLeftArm xCuffLeftLeg
+ -o xVampireSupplyHang4 xVampireSupplyHang4.hkx xCuffRightLeg xCuffRightArm xCuffLeftArm xCuffLeftLeg
+ -a xVampireSupplyExit xVampireSupplyExit.hkx

 

With Help of RTFM I could turn it into a chair-animation that is accepted by FNIS:

 


ch -o xVampireSupplyHang xVampireSupplyHang1.hkx xCuffRightLeg xCuffRightArm xCuffLeftArm xCuffLeftLeg
+ xVampireSupplyHang_2 xVampireSupplyHang2.hkx
+ xVampireSupplyHang_3 xVampireSupplyHang3.hkx
+ xVampireSupplyHang_4 xVampireSupplyHang4.hkx
 

 

Now it seems I can't find the right combination of parameters in the Animation in CK to get it to work. With Furnitures I would create a Enter, EnterInstant and Exit-Idle. With chairs I only have an Enter-Idle "xVampireSupplyHang" and no Exit.

Link to comment

Chair animations are called while the actor is sitting (vanilla) in a chair. This animation type closely replicates what the vanilla animations for eating and drinking while sitting are doing. They are unlike furniture animations (fu), where the whole animation sequence is custom.

 

 

ch animations are meant to be an addon to vanilla sit animations, not an add-on to custom ones.

 

If you want to have random variations you need to do it with the help of a script.

Link to comment

Would have loved to get this done script free, but the script was at least quite easy :

Scriptname playRandomFurnitureIdle extends ObjectReference  Conditional

import utility
import Debug
Import MiscUtil

String[] Property AnimationEventNames  Auto  
{Fill this with the various possible Furniture event names from your FNIS-List}

Event OnActivate( ObjectReference akActionRef )
    if (AnimationEventNames.Length)
        Actor npc = akActionRef as Actor
        int maxEventIndex=AnimationEventNames.Length - 1
        int randomEvent=Utility.randomInt(0, maxEventIndex)
        Debug.sendAnimationEvent(npc, AnimationEventNames[randomEvent])
    endif    
EndEvent
Link to comment

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use