Page 1 of 1

Assertion failed: Quest Machine:

Posted: Mon Apr 06, 2020 10:46 am
by Molina
Hi Tony,
I hope you're right.
I begin to play with Quest Machine, linked to Dialogue System for Unity and Inventory Pro.
I followed your tutorial, and, on the whole, it works. But I have several alert in the console as follow :

-Assertion failed: Quest Machine: conditionList element 0 is null. Does your Conditions list have an invalid entry?
Assertion failure. Value was Null
-Quest Machine: QuestSubasset.CloneList<QuestCondition>: Element 0 is null.
-CloneList<QuestCondition>: Element 0 is null.

I don't see what I miss. I have a QuestGiver. I used "GiveQuest("QuestGiverID", "QuestID")" , I don't have a condition, except for my first condition (where I have to send a message) before I considered the quest as succeeded.

Despite these errors, The journal is updated and the quest is assigned.

Be well!
Molina

Re: Assertion failed: Quest Machine:

Posted: Mon Apr 06, 2020 10:57 am
by Tony Li
Hi,

That indicates a minor internal error in the quest asset. It doesn't hurt anything, but it means something happened that left unused data in the quest.

Please inspect the quest in the Quest Editor window. From the gear menu in the upper right, select Debug > Delete Unused Subassets. Let me know if that clears up the error.

Re: Assertion failed: Quest Machine:

Posted: Mon Apr 06, 2020 11:21 am
by Molina
Strange It does nothing. I still have the same message.
But if it's not a big deal, I can live with that ! Thank you.

For the reccord, here the all message :
Spoiler
Assertion failed: Quest Machine: conditionList element 0 is null. Does your Conditions list have an invalid entry?
Assertion failure. Value was Null
Expected: Value was not Null
UnityEngine.Assertions.Assert:IsNotNull(QuestCondition, String)
PixelCrushers.QuestMachine.QuestConditionSet:StartChecking(Action) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest/Quest Condition Set/QuestConditionSet.cs:127)
PixelCrushers.QuestMachine.Quest:SetStartChecking(Boolean) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest/Quest.cs:771)
PixelCrushers.QuestMachine.Quest:SetState(QuestState, Boolean) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest/Quest.cs:865)
PixelCrushers.QuestMachine.Quest:RuntimeStartup() (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest/Quest.cs:759)
PixelCrushers.QuestMachine.QuestListContainer:AddQuest(Quest) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestListContainer.cs:184)
PixelCrushers.QuestMachine.QuestGiver:AddQuest(Quest) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:304)
PixelCrushers.QuestMachine.QuestListContainer:AddQuests(List`1) (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestListContainer.cs:171)
PixelCrushers.QuestMachine.QuestListContainer:InstantiateQuestAssets() (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestListContainer.cs:141)
PixelCrushers.QuestMachine.QuestListContainer:Awake() (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestListContainer.cs:125)
PixelCrushers.QuestMachine.QuestGiver:Awake() (at Assets/Plugins/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:173)

Re: Assertion failed: Quest Machine:

Posted: Mon Apr 06, 2020 11:30 am
by Tony Li
Thanks for the details. In the next version, I'll make sure it automatically cleans this up / prevents it instead of reporting an issue.