Unity Bug

Bolt Collab prefab bug

srijanvoidsys 3 years ago updated by Lazlo Bonin (Lead Developer) 2 years ago 4

This is an issue which I've come to notice recently regarding Bolt and Unity Collab.

Whenever a change/commit is 'pulled' involving a flow machine which is currently applied to some prefab, the machine is updated fine but the prefab itself breaks. The flow machine component on the prefab shows 'none' in the macro input and remains so even if the original macro in question is dragged into the input (IMG 1).

Moreover the graph view that comes up on selecting the prefab shows a non updated macro which acts as a completely different macro than the original(source) macro and any change made on it does not reflect on the source macro or vice versa (IMG 2&3 where the 'branch' node is not reflected).

The solution right now is to either remove and re-add the flow machine component on the prefab or simply restart Unity. It would really help if this issue could be fixed.

Unity ver. 2018.2.13f1 Bolt ver. 1.4.0f9

Bolt Version:
Unity Version:
Scripting Backend:
.NET Version (API Compatibility Level):
Pending Review

Hi srijanvoidsys,

Sorry you're having this issue. It's odd, I don't know what might be causing something like that.

Can you provide clear reproduction steps to replicate the issue on an empty project?

For example:

  1. Create a GameObject with a Flow Machine
  2. Make it a prefab
  3. Upload it on collab
  4. etc.

Here are the reproduction steps:

  1. Create a new project and import/setup Bolt.

  2. Activate Unity Collab for the project

  3. Create a new flow macro and assign it to any scene object's flow machine and then make a prefab out of it.

  4. Make a commit of the changes.

  5. Click on the (three people) icon on the bottom left corner of the collab window to add another teammate. In the browser click on "edit the organization's permissions" and then on the subsequent page click on add members. Invite a team member to your org as a "User" and then assign him to this project. 

  6. Open the project as it shows up on cloud on the other team mate's computer and then after initialization make any change on the macro itself (I personally added a branch node) and then commit the change. Pull the change on the other machine.

  7. Marked in red is the 'none' macro which shows up on the prefab and dragging the macro back into the slot does nothing.

    This is the macro itself which is updated fine.

    Any changes made on the prefab 'ghost' macro stays on it and does not reflect in the original macro.

Unity Bug

Thank you so much for the in-depth reproduction steps.

That... is so odd. It feels like a low-level Unity bug more than a Bolt issue though...

You mention restarting Unity fixes it; does entering/exiting play mode also fix it? (This forces Unity to reserialize and reinitialize everything, so it's often a good "reset" trick).