ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   AddOn Help/Support (https://www.esoui.com/forums/forumdisplay.php?f=164)
-   -   Log Addon - No lip animations since Improved Facial Animations (https://www.esoui.com/forums/showthread.php?t=2388)

Scharesoft 11/04/14 09:48 AM

Log Addon - No lip animations since Improved Facial Animations
 
With the new update 5 and the improved facial animations there is a really annoying bug with one of the most important addons for me, the UespLog AddOn. With this addon almost everything is logged in the game. I need these data for a German knowledgebase, the Tamriel-Almanach.

After the update to 1.5.2 of eso a bug with the improved facial animations appears. The spoken dialogues begin a few seconds after the text appears and the lips do not move. If I disable the addon, it works again.

I tried to find the error, but I'm not come up with the solution. I checked all changes from api 100009 to 100010, but nothing helps.

A version with my fixes for the last update you can find here. The original UespLog AddOn you can find here.

I hope someone is able to help me with this problem! Thanks in advance!

(I asked the same question here)

Scharesoft 11/05/14 01:39 AM

It seems this issue is caused if I use the GetChatterGreeting() or GetChatterData() functions within the EVENT_CHATTER_BEGIN event. I can easily not call these functions but then I can't get the current dialogue string.

If I want to get facial animations working again I need to comment out this line like:

-- logData.bodyText = GetChatterGreeting()

in the function uespLog.OnChatterBegin (eventCode, optionCount) in uespLog.lua file.

I thing this could be also a bug in the game.

Garkin 11/05/14 06:08 AM

Quote:

Originally Posted by Scharesoft (Post 12994)
It seems this issue is caused if I use the GetChatterGreeting() or GetChatterData() functions within the EVENT_CHATTER_BEGIN event. I can easily not call these functions but then I can't get the current dialogue string.

If I want to get facial animations working again I need to comment out this line like:

-- logData.bodyText = GetChatterGreeting()

in the function uespLog.OnChatterBegin (eventCode, optionCount) in uespLog.lua file.

I thing this could be also a bug in the game.

Both those functions plays dialog from the start, so it can probably cause some issues. My guess how to make it work would be unregistering event EVENT_CHATTER_BEGIN from ZO_InteractWindow and handle it from your function. This way GetChatterGreeting() won't be called twice.

Untested:

To the function uespLog.Initialize( self, addOnName ) add this line:
Lua Code:
  1. ZO_InteractWindow:UnregisterForEvent(EVENT_CHATTER_BEGIN)

To the function uespLog.OnChatterBegin (eventCode, optionCount) add the following (after the line where is called function GetChatterGreeting()):
Lua Code:
  1. INTERACT_WINDOW:InitializeInteractWindow(logData.bodyText)
  2. INTERACT_WINDOW:PopulateChatterOptions(optionCount, false)

Scharesoft 11/05/14 09:03 AM

Thanks for your help, but unfortunately the following error message is now displayed when the game is started.



This is the position of INTERACT_WINDOW:UnregisterForEvent(EVENT_CHATTER_BEGIN)

The animation of the lips are now working, but the log addon stores nothing more into the saved variables file.

ZOS_ChipHilseberg 11/05/14 09:43 AM

It's an unfortunate reality that those query functions also trigger VO and animations. It's something we'd like to fix for sure.

Garkin 11/05/14 09:43 AM

Quote:

Originally Posted by Scharesoft (Post 13004)
Thanks for your help, but unfortunately the following error message is now displayed when the game is started.



This is the position of INTERACT_WINDOW:UnregisterForEvent(EVENT_CHATTER_BEGIN)

The animation of the lips are now working, but the log addon stores nothing more into the saved variables file.

Oops, my bad. You should be unregistering event from top level window, so the correct line is:
Lua Code:
  1. ZO_InteractWindow:UnregisterForEvent(EVENT_CHATTER_BEGIN)

Scharesoft 11/05/14 10:26 AM

With this change the error message is gone, but an other one appears when starting a dialogue:



The Goodbye is missing and the log addon is still not working correctly.

Quote:

Originally Posted by ZOS_ChipHilseberg (Post 13006)
It's an unfortunate reality that those query functions also trigger VO and animations. It's something we'd like to fix for sure.

A fix for this in a future version of ESO would be great :)

Garkin 11/05/14 10:38 AM

Quote:

Originally Posted by Scharesoft (Post 13008)
With this change the error message is gone, but an other one appears when starting a dialogue:



The Goodbye is missing and the log addon is still not working correctly.



A fix for this in a future version of ESO would be great :)

It says that logData.optionCount is not a number, move added code one more line down or change it to:
Lua Code:
  1. INTERACT_WINDOW:PopulateChatterOptions(optionCount, false)

Scharesoft 11/05/14 10:48 AM

Great, thank you very much Garkin :) It's working now!

dominoid 11/05/14 12:06 PM

I solved a similar problem as well in Harven's Quest Journal for GetOfferedQuestInfo() by placing the function on a different thread (I think that's what it's doing) using zo_callLater. See my post here:

http://www.esoui.com/downloads/filei...d=580#comments

Scharesoft 11/10/14 03:36 AM

Quote:

Originally Posted by dominoid (Post 13012)
I solved a similar problem as well in Harven's Quest Journal for GetOfferedQuestInfo() by placing the function on a different thread (I think that's what it's doing) using zo_callLater. See my post here:

http://www.esoui.com/downloads/filei...d=580#comments

This seems to be buggy. Did you find an other solution for the lip animation?

Scharesoft 03/04/15 07:37 AM

With the new update 6 I've got a problem again.

If I change nothing, this error message apears and the dialog window stays empty:

user:/AddOns/uespLog/uespLog.lua:1645: function expected instead of nil
stack traceback:
user:/AddOns/uespLog/uespLog.lua:1645: in function 'uespLog.OnChatterBegin'


This is the part why the error apears:

INTERACT_WINDOW:InitializeInteractWindow(ChatterGreeting)
INTERACT_WINDOW:PopulateChatterOptions(optionCount, false)


I need this to show the dialog because of this line:

ZO_InteractWindow:UnregisterForEvent(EVENT_CHATTER_BEGIN)


What do I have to change here to make it work again? Thanks in advance!

Garkin 03/04/15 10:45 AM

Quote:

Originally Posted by Scharesoft (Post 19177)
With the new update 6 I've got a problem again.

If I change nothing, this error message apears and the dialog window stays empty:

user:/AddOns/uespLog/uespLog.lua:1645: function expected instead of nil
stack traceback:
user:/AddOns/uespLog/uespLog.lua:1645: in function 'uespLog.OnChatterBegin'


This is the part why the error apears:

INTERACT_WINDOW:InitializeInteractWindow(ChatterGreeting)
INTERACT_WINDOW:PopulateChatterOptions(optionCount, false)


I need this to show the dialog because of this line:

ZO_InteractWindow:UnregisterForEvent(EVENT_CHATTER_BEGIN)


What do I have to change here to make it work again? Thanks in advance!

I think it should be now INTERACTION instead of INTERACT_WINDOW.

INTERACTION:InitializeInteractWindow(ChatterGreeting)
INTERACTION:PopulateChatterOptions(optionCount, false)

Scharesoft 03/04/15 10:57 AM

Quote:

Originally Posted by Garkin (Post 19181)
I think it should be now INTERACTION instead of INTERACT_WINDOW.

INTERACTION:InitializeInteractWindow(ChatterGreeting)
INTERACTION:PopulateChatterOptions(optionCount, false)

Great, this seems to work :) Thanks!

Scharesoft 11/26/17 07:03 AM

Unfortunately, the error with the limp animations occurs again. The latest version of the uespLog you can find here or here.

Maybe someone is able to help me here :) Thanks in advance!

Scharesoft 02/11/18 04:34 AM

This problem still occurs. Does somebody has any idea?


All times are GMT -6. The time now is 12:29 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI