Muse Behavior Sub-Graph Sometimes Doesn't Update

I’m not fully sure how to replicate the issue, but I’ve had it on two separate days where I have modified a subgraph and upon playing again the subgraph has acted as if there were no changes. Reloading the project, restarting pc, re-importing either graph, refreshing, and using custom editor code to set them as dirty didn’t fix it. Only removing the graph from the subgraph and re-adding it fixed it. I thought it was going to be an ongoing issue for me since it was so prevalent yesterday but today it is seeing the changes normally. I unfortunately don’t have any screenshots since I can’t replicate it with attempts to do so today but I was getting this error yesterday any time I hit ctrl + s while in the graph:

The following asset(s) located in immutable packages were unexpectedly altered. Making changes to immutable packages isn’t recommended because the changes can be lost without any warning during Package Manager operations. Packages/com.unity.dt.app-ui/PackageResources/Fonts/Inter-Regular SDF.asset

I think it may have started after removing some assets I was currently not using, but I’m unsure. I will be sure to provide more information if it occurs again, but if someone else runs into it be sure to re-assign the subgraph to fix your issue

Muse version 0.5.7
Unity 2023.2.3f1

Thank you for reporting this! Please do give us more information if you find a way to reproduce it. We’ll also do some testing :slight_smile:

I’m sorry it happened!

So today I’m having a slightly different take on the same issue. After adding an asset, Animancer Lite, to check it out; instead of not seeing changes in the subgraph it just doesn’t start the subgraph. There was a warning where it said it could not find the graph with the id. Unassigning and re-assigning the graph fixed it for play but after stopping it had the same issue. Unassigning, closing unity, opening, and re-assign has fixed it.

I thought maybe upon removing this asset it would have the same problem as the other day since this is similar, but no luck. Re-importing Animancer lite did not replicate the issue it just caused either.

Re-importing an asset removed the other day, Toon Effects Maker URP - Anime & Cartoon FX by ARTnGAME, just created the same issue of the sub graph not running at all. Re-assigning fixed it without the need to restart unity. No issue on removal of this asset.

Exact same case with Breeze - Advanced Character Behaviour by Breeze Assets, only it caused the issue on import and deletion.

DestroyIt - Destruction System by ModelShark Studio and Performance Tools by New Game Studio, the only other two assets I removed that day, had no impact, but the ones I removed I had replaced previously the obsolete lines of code with the required new lines so that may have been a factor.

So I was unable to replicate the exact issue, but this one is very similar. Seems like it may just sometimes happen upon compile after an asset addition or removal. Granted this was done in the same project as before to see if it would cause the issue since it had happened on two separate days already and not a fresh project.

This project has had it’s version of unity updated a few times so it may never happen again if I start a fresh project and re-download from the source control.

Hi @barretkeyes ,

Thanks for the follow up! Can you give an example (screenshots) of the main graph and subgraph you’re running, or a simplified version of them so we can try to reproduce more accurately? I’m really not sure what’s happening here but we’re aware and we’re trying to figure it out!

Sure thing! Part of the main graph here. Essentially it boils down to running a base action, flips a coin to see if it will do one of two action types on repeat (out of frame in this snippet) and when it receives the shot event it runs the enemyai subgraph. That was the one that kept not registering changes and sometimes wouldn’t play.

The enemyai graph patrols until it sees the player. Upon seeing the player it starts the left hand side. It chases and attacks until it loses sight of the player.

I did do a fresh download of the project as well and there was quite a discrepancy between the sizes of the two so it may very well be likely just some old files were messing up the project. I’ve downloaded an asset or two again since re-downloading and it hasn’t broken at all yet

I would love any info on behavior trees if you could share your process on how you got your behavior tree going.

I found the tutorial video that Unity has up on youtube super helpful. It’s still linked from the example project on the asset store here:

My takeaway from it was having a couple of nodes at the start for variable setup, utilizing a helper script(s) on the agent that I access with calls from the graph, and using the Run In Parallel Until Any Success to get out of any branches when another condition is met. I create a lot of custom nodes so it’s great that it’s super easy to do so. I can’t think of anything else since I was called to another project this last month, but if you have any other questions I will try my best to answer!

Your response is super helpful. I am however running into a few issues myself. I have helper classes that I am trying to use but for some reason, they are succeeding when they should not. I suspect my setup is incorrect.

If you change line 40 to return Status.Running; and add return Status.Success; into the if statement above that it should run the way you intended. That way it’ll mark off the node when the player is heard but otherwise keep checking. Alternatively you can have it do Status.Failure on line 40 and it’ll immediately stop and restart that whole branch under the Repeat Until Success.

That did it. Thanks a bunch! I will try to learn more and drop some questions should I get stuck. I doubt this is the right thread to add questions. Perhaps a new thread for others trying to get into Muse Behaviour? The lack of information makes it super difficult to start exploring Muse Behaviour.

No problem. Happy to help! If you get stuck again and need help you can make a new thread for sure. I’m not sure if @'ing me in another thread I’m not already in will send me a notification so feel free to message me when it’s created.

Hey,

I tried to tag you on a different thread but no luck. I will add the new thread here. I have already posted a question there