There's a great mod from JRaven, called "JRavens GMToolkit II New Status Effects and Emotes":
https://steamcommunity.com/sharedfiles/filedetails/?id=1171786943
The idea is that it added a lot of statuses, including animations which could be toggleable as statuses. For continuous animations, you could set status length -1 and it would loop all over again. That made this mod invaluable for GM sessions. Roleplaying became more lively.
Unfortunately, after the game received some patch about 6 months ago, animation looping stopped working. You could still use them though, even without looping. But then after few more weeks, there was another patch which completely broke all the animation statuses. Interesting though, that old "emotes" that were placed before the patch are still working, until you cancel them.
Anyway, since JRaven doesn't support his mod anymore, I've decided to check myself how this mod works and if there any way to fix it. So this is how it works on the example of the bow emotion.
First he added this part to goals.div, goals.raw and story.div
Code
Goal(47).Title("EMOTEBOW");
Goal(47)
{
	INIT
	{
		
	}
	KB
	{
		IF
		CharacterStatusApplied(_Char,"GMTK_EMOTE_BOW",_)
		THEN
		CharacterSetAnimationOverride(_Char,"Bow_01");
		
		IF
		CharacterStatusRemoved(_Char,"GMTK_EMOTE_BOW",_)
		THEN
		CharacterSetAnimationOverride(_Char,"");
		
	}
	EXIT
	{
		
	}
}

Then he added this part to GMTK_EMOTES.txt
Code
IF
CharacterStatusApplied(_Char,"GMTK_EMOTE_BOW",_)
THEN
CharacterSetAnimationOverride(_Char,"Bow_01");

IF
CharacterStatusRemoved(_Char,"GMTK_EMOTE_BOW",_)
THEN
CharacterSetAnimationOverride(_Char,"");

And last he created file named EMOTEBOW.txt with the following code:
Code
Version 1
SubGoalCombiner SGC_AND
INITSECTION

KBSECTION
IF
CharacterStatusApplied(_Char,"GMTK_EMOTE_BOW",_)
THEN
CharacterSetAnimationOverride(_Char,"Bow_01");

IF
CharacterStatusRemoved(_Char,"GMTK_EMOTE_BOW",_)
THEN
CharacterSetAnimationOverride(_Char,"");
EXITSECTION

ENDEXITSECTION

I'm not sure why the same code needs to be executed in multiple places at once, but what I see, the script is simple, when a character receives status, execute the expected animation using CharacterSetAnimationOverride. I've checked the documentation and as far as I understand it, all the commands are correct. And I couldn't find any changes in API that might stop these scripts from working. Maybe somebody here might give me a hint, what could break them?

Last edited by JetNLoad; 30/06/18 07:17 AM.