Jump to content

FNIS for Modders / FNIS 4.0 [WIP]


fore

Recommended Posts

  • 3 weeks later...
Posted

Fisrt off, i started modding Skyrim a few months ago, like November. At the time I THOUGHT that you couldnt have wolf and dog animations at the same time, due to a limitation with FNIS (may have been reading an outdated thread). Well, ive read some things tonight making me wonder otherwise. So im looking for an exact explanation of what I need to get this working. Versions, ect. I have FNIS 4_0_2 and creature pack (dnt know exact version) from when i started and it doesnt work :/

 

arr0w

 

EDIT:

Well.. When i recently clean installed and upgraded to MO, i used all of the mods that ive previously archived and it seems that while that is very useful to do in some ways, it can kill in others. Just realized that the LATEST FNIS DLs are indeed newer >>.    Gonna upgrade and see what happens ;)

 

EDIT 2: Okay, i did have the old ones. Upgraded and working like a charm. LOVE FNIS.

 

Also, good job on your work, very excited for what this all means for us, fore :D It is now the Golden Age of Skyrim Modding!!!

Posted

fore I have a question about SOS,

sos reads animations from its own folder behavior files.

 

is it possible for you to make sos read animations from animations folder with its behavior files like you do to anyother animation mod?

 

the reason for this question its simple I cant animate genital bones normaly like anyother bone, well I animate it but ingame sos ignores my animation cause it only reads from its own animation folder...

 

what can we do to change this?  you think you can had a behavior file to sos so it reads from any animation folder?

 

Thank you Sir.

 

:cool:

Posted

fore I have a question about SOS,

sos reads animations from its own folder behavior files.

 

is it possible for you to make sos read animations from animations folder with its behavior files like you do to anyother animation mod?

 

the reason for this question its simple I cant animate genital bones normaly like anyother bone, well I animate it but ingame sos ignores my animation cause it only reads from its own animation folder...

 

what can we do to change this?  you think you can had a behavior file to sos so it reads from any animation folder?

 

Thank you Sir.

 

:cool:

 

Is it possible? Yes and no.

 

I'm not fully sure if the way I'm adding independent FNIS mods to creatures (or tail) will work for SOS. SOS has an extremely stripped down behavior file, and it's missing the high level root node I'm usually using. The SOS root node might work, and probably will. But I can't guarantee.

 

It wouldn't be a big deal (for me, or VectorPlexus) to add new animevents that call some other animation files. But that's not the FNIS way.

 

You should also not underestimate the ingenuity of the SOS behaviors. 10 out of 12 animevents lead to blended animations. Where 2 animation files are merged together with different weighting parameters. And blended animations are not supported by FNIS.

 

But the main problem are the SOS authors. Do they give permission? It's their work, and I wouldn't do anything without permission anyway. How much are they involved? And then, what happens when they change their behavior? Honestly, if I were SOS author, and I was planning to add more functionality, I wouldn't allow anyone to mess with my data. Because any change you, or I, or someone else makes, will definitely cause compatibility problems as soon as they release an SOS update with new behavior files.

Posted

I understand theres a problem in a simple solution. I understand you and thank you for taking time to answer me your opinion in this situation. in my humble opinion to make animations I need a painted mesh with bones to animate, HDTX from hydrogen handles havok in runtime and all other bones are there to receive animation events when their sent. this is my humble opinion is this simple problem.

 

once again thank you for taking time fore. :cool:

Posted

Nshell, I'm still not sure what you really want to do. Add animations to SOS, or make your very own "schlong"?

 

If you want to add animations, then I can't do anything unless you or I have permission from VectorPlexus to do so. Because the SOS behaviors are his very own creation.

 

If you make your own schlong, then it can be VERY easy. Make it a spin off of tail. Tails are supported by FNIS Creatures. So you simply make a copy of the FNIS creatures part for tail, and then you are a simple one line file away from integrating it into FNIS. And then you can defin you own animevents, just like you would for a creature. See the FNIS documentation for Modders for details.

Posted

fore, my intentions are simple, I was trying to animate the genitals in an animation sceene I created, without knowing how sos was built as a "tail"(individual actor), I was surprised to see ingame that SOS ignored my animation. This problem made me think that even though its a great work very elegante, SOS its not practical for animations in its current stand alone state.

 My intentions are "to change it""(maybe as a SOS Ultra Light Release)" to become part of the body mesh and add configuration to HDTPhX .xml for havoc.

Posted

This is not surprising at all. And nothing SOS can do any better. This is the way havok behavior works.

 

For EVERY animation you want to run, you have to add data into the behavior files. Hardcoded. And very cryptic (xml, necause we can't use the Havok Behavior Tool HBT). The behavior files not only contain the animevent and animfile names, but also the embedding of the animation. Is the animation run once or looping? Merging of animation files? Events triggered at the end of the animation? Just to make a few examples.

 

So when making their release, how on earth could the authors of SOS foresee what you would like to have?

Posted

fore plz sos its outstanding work, its immersive and its incredibly well done. They have done the best they could to make it a stand alone plugin(I doubt anyone could have done it better).

 

my frustration is that, its such a good work but we cant use it while creating animations.

 

one simple example:

 

old sex animations for female breasts, animators would use spring position controllers to simulate the natural movement.

Now days we dont bother with it cause we all use HDTPhX.dll for havoc

 

what I would like to see is, male genitals in the body mesh exactly like the female body has breasts.

 

this way we could animate male genitals normaly during our sceenes, like old animations would use spring position controllers to simulate the natural movement for breasts.

Posted

fore plz sos its outstanding work, its immersive and its incredibly well done. They have done the best they could to make it a stand alone plugin(I doubt anyone could have done it better).

 

my frustration is that, its such a good work but we cant use it while creating animations.

 

one simple example:

 

old sex animations for female breasts, animators would use spring position controllers to simulate the natural movement.

Now days we dont bother with it cause we all use HDTPhX.dll for havoc

 

what I would like to see is, male genitals in the body mesh exactly like the female body has breasts.

 

this way we could animate male genitals normaly during our sceenes, like old animations would use spring position controllers to simulate the natural movement for breasts.

 

There are pros and cons for adding schlongs to the body mesh. Because if you add it to the body, then you have to add it to the skeleton, like xpms. But if it's part of the skeleton, you can't animate the genital bones separately any more. And since right now you only can have one animation per type of movement, you cannot have different erection levels while walking, for example.

 

I don't think there is a way to dynamically adjust spring controller parameters to make this work.

 

So we are back to the point where it's all depending on what the SOS authors are making, or what they allow us to modify. Again, if they give permission I can modify the SOS behaviors for FNIS integration.

Posted

fore plz ignore all I have posted/typed. ill make my own hkx for my game until SOS authors do what they wish to do to their incredible mod!

 

I now understand how it works and this chapter as come to an end, Ill focus on making animations for SSL normal and paired and all bones edited in my animations will work in the hkx built for it to work.

 

I want to thank you for taking time to answer my posts, mostly with out me even knowing what i was trying to ask you. Thank You.

Posted

Do you know of anyway to make PA's involving the player not lock the camera movement? Everything I've tries so far restricts left/right movement of the camera for the duration of the animation.

Posted

Do you know of anyway to make PA's involving the player not lock the camera movement? Everything I've tries so far restricts left/right movement of the camera for the duration of the animation.

 

Unfortunately not. I noticed myself that the camera always locks in to a posision close to the player where it is impossible to really watch. But there is nothing in the behavior which looks like something which could cause that.. So the only explanation I have it that this is tied to the actor1 initiation event (NPCKillMoveStart).

Posted

Hm, definitely limits the use in SexLab pretty heavily. I just tried a couple things to attempt a work around. 

 

Used PapyrusUtil's replace animation function to override the graph's NPCKillMoveStart and 2_KillMoveStart with an Idle object holding 00NextClip, didn't seem to affect anything.

 

Tried sae("PairEnd") and sae("NPCPairedStop") on the player soon as it starts the PA to see if that'd "reset" the players camera while they continued the animation. When called on the respective actor1 or actor2, it unsurprisingly just ends the animation outright, stopping the paired animation and unlocking full movement for both actors.

 

sae("Some_cyclic_sexlab_animation") on one of the actors also immediately stopped the PA for both actors, freeing the other's movement and forever trapping the sae'd actor in a loop.

 

Game.ForceThirdPerson() and Game.EnablePlayerControls(abLooking = true) also don't have any effect.

 

I'm thinking it's probably something tied into the PlayIdleWithTarget() function. Maybe it's something a new function added by an SKSE plugin could do as a replacement function.

Posted

Hm, definitely limits the use in SexLab pretty heavily. I just tried a couple things to attempt a work around. 

 

Used PapyrusUtil's replace animation function to override the graph's NPCKillMoveStart and 2_KillMoveStart with an Idle object holding 00NextClip, didn't seem to affect anything.

 

Tried sae("PairEnd") and sae("NPCPairedStop") on the player soon as it starts the PA to see if that'd "reset" the players camera while they continued the animation. When called on the respective actor1 or actor2, it unsurprisingly just ends the animation outright, stopping the paired animation and unlocking full movement for both actors.

 

sae("Some_cyclic_sexlab_animation") on one of the actors also immediately stopped the PA for both actors, freeing the other's movement and forever trapping the sae'd actor in a loop.

 

Game.ForceThirdPerson() and Game.EnablePlayerControls(abLooking = true) also don't have any effect.

 

I'm thinking it's probably something tied into the PlayIdleWithTarget() function. Maybe it's something a new function added by an SKSE plugin could do as a replacement function.

 

It doesn't surprise that a "replace animation" does not have the desired effects. NPCKillMoveStart and the other are AnimEvents that are only read by the engine. Not within behavior, as far as I can see. So such function could only do something additional, but the engine still will receive it. The only way would be to remove those from the respective hkbClipTriggerArray. But then I'm sure the PA wouldn't start at all for that actor.

 

Could well be you are right and its within the PlayIdleWithTarget() and it can be avoided with SKSE. Will you make a request there? 

Posted

It probably has nothing to do with your issue, but player used as target in PlayIdleWithTarget() behaves differently than if player is the object calling this function. I know it doesnt change anything in potential sexlab animations because they are 100% different for both actors, but you can test it with paHug (or w/e its name was).

  • 3 weeks later...
Posted

It probably has nothing to do with your issue, but player used as target in PlayIdleWithTarget() behaves differently than if player is the object calling this function. I know it doesnt change anything in potential sexlab animations because they are 100% different for both actors, but you can test it with paHug (or w/e its name was).

 

Sure they behave different. One is the actor, the other one the victim (as in killmoves). Each PA consists of 2-in-1 animations. And whether you are the actor or the object in PlayIdleWithTarget() will determine which of those 2 anim pieces will be used for the player.

Posted

ohh than this function is even better than the simple way I had for PAs. (dont laugh^^) I was making gender animations for PAs just by changing bone names in the project and exporting 2 animations one for Female PC one for Male PC where the PC would always be the Actor and never the victim.

Posted

Heads up for all Animators:

 

Nshell and I made some tests which prove that it is possible to animate the 3rd person camera. Between the 2 AnimEvents StartAnimatedCamera  and EndAnimatedCamera the cam is controlled by the animations Camera3rd[Cam3] bone. As Nshell has tested, this even works for Paired Animations. Why shouldn't it when Beth uses it for Killmoves  :shy:

 

The next FNIS Release 5.1 will support AnimatedCamera.

 

If you are interested to pre-test it in FNISSPells (animations a1, a2, a3, pa1, pa2, pa3) you can do it with these 2 behavior files:

http://www.mediafire.com/download/n9e3a8k286gm35f/FNIS_FNISSpells_Behavior.7z and http://www.mediafire.com/download/f7rbi6xx25ch8rg/0_master.7z

 

Thanks, Nshell, for your help.

Posted

ohh than this function is even better than the simple way I had for PAs. (dont laugh^^) I was making gender animations for PAs just by changing bone names in the project and exporting 2 animations one for Female PC one for Male PC where the PC would always be the Actor and never the victim.

 

Very one-side view of sex.  :D

 

But there is nothing to laugh about. Up until 5.0 your way was a very clever way simulate PAs. 

 

But in the PA we have both together, without any alignment problems. With the animated cam we now solved 1 of the two and half big obstacles for using PAs:

  • Watching the animation from places other than the back (solved with animated cam - btw did you test if it is possible now to freely control the cam during the animation?)
  • Alignment changes based on different skeleton scales (now this will always reain a problem)
  • Do something like "sequenced pa" (could be possible, but I think thats only a "half" big problem anyway)
Posted

these are PAs only tests:

 

toggle TFC its not possible during the animation, it will freez the cam in place where it was, when TFC command was issued, toggling it again will make the cam jump to its position in the animation.

 

this brings me to a question what is the anim event for TFC? maybe you can apply it to the behavior the same way you applied the cam[3rd] to the behavior.

 

animating the cam[3rd] in the project works perfect ingame, the cam will do exactly as you animated in the time line.

Posted

I have been wondering if the newest FNIS 5.0 or higher fixed the draugr Standing in stead lying down if you do not have any DLC installed ??

 

 

Posted

Sure they behave different. One is the actor, the other one the victim (as in killmoves). Each PA consists of 2-in-1 animations. And whether you are the actor or the object in PlayIdleWithTarget() will determine which of those 2 anim pieces will be used for the player.

 

Maybe I worded it badly, but what I meant is:

player.PlayIdleWithTarget(akIdle, akTarget)
akTarget.PlayIdleWithTarget(akIdle, player)

There was something broken when I called it on player form, that wasnt happening for non player actors. I forgot what it was exactly (tested a year ago), but it could be either camera issue, or being unable to equip weapon, or something similar.

 

So even on animations like paHug, that is kinda same for both actors, it was behaving differently.

Posted

I have been wondering if the newest FNIS 5.0 or higher fixed the draugr Standing in stead lying down if you do not have any DLC installed ??

 

That was supposed to be fixed since Creature Pack 4.1. There is a draugrbehavior_noDLC_TEMPLATE.txt which is used whenever there is neither DLC .esp installed. And it was confirmed by at least one user to work.

 

 

Sure they behave different. One is the actor, the other one the victim (as in killmoves). Each PA consists of 2-in-1 animations. And whether you are the actor or the object in PlayIdleWithTarget() will determine which of those 2 anim pieces will be used for the player.

 

Maybe I worded it badly, but what I meant is:

player.PlayIdleWithTarget(akIdle, akTarget)
akTarget.PlayIdleWithTarget(akIdle, player)

There was something broken when I called it on player form, that wasnt happening for non player actors. I forgot what it was exactly (tested a year ago), but it could be either camera issue, or being unable to equip weapon, or something similar.

 

So even on animations like paHug, that is kinda same for both actors, it was behaving differently.

 

 

I always test PAs in 3 versions: player/NPC, NPC/player, and NPC/NPC. And I never noticed any difference. Except that both animations are different. Even in the paHugA the arm positions differ. And that it's always the actor that it teleported to the victim.

Archived

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

  • Recently Browsing   0 members

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