playMaker

Author Topic: Prefab Apply BUG ALERT!!  (Read 12732 times)

Alex Chouls

  • Administrator
  • Hero Member
  • *****
  • Posts: 3987
  • Official Playmaker Support
    • LinkedIn
Prefab Apply BUG ALERT!!
« on: August 23, 2013, 08:33:56 AM »
We've recently found an issue with Prefab Apply corrupting FSM data. We're working to get a fix out asap.

Here's a summary of the problem:

If you have multiple prefab instances in a scene, and you override events or variables in actions on those instances, then hit Apply to apply those changes to the prefab, other instances of that prefab can get corrupted. Specifically, action fields that were overridden in other instances can get corrupted. Unfortunately you have to fix those fields manually (or Revert to the prefab).

But until we get the fix out, it's best to avoid Prefab Apply and overriding of individual action fields in prefab instance. Instead expose variables in the inspector and override those.

The problem stems from the way Unity figures out the differences between a prefab and its instances. It just doesn't work well with low level changes to the FSM graph and actions. In fact the fix may well be to disallow low level changes to the graph in prefab instances. Or changes to the graph will mark the whole graph as modified. Basically to prevent Unity from trying to resolve differences between the prefab and the instance.

Anyway, I hope that makes sense! Please ask questions if it's not clear.

I'm really sorry for the problems this has caused, it really sucks when a project breaks and you don't know why! We're working to get a fix out asap.

EDIT: The fix is currently in beta, just needs a little more testing...
« Last Edit: August 23, 2013, 01:32:48 PM by Alex Chouls »

saxton

  • Playmaker Newbie
  • *
  • Posts: 4
Re: Prefab Apply BUG ALERT!!
« Reply #1 on: August 30, 2013, 08:17:17 PM »
Any more updates available on when a fix will be ready?

Alex Chouls

  • Administrator
  • Hero Member
  • *****
  • Posts: 3987
  • Official Playmaker Support
    • LinkedIn
Re: Prefab Apply BUG ALERT!!
« Reply #2 on: August 31, 2013, 04:56:36 PM »
The fix didn't quite make it into the last update, it needs more testing. Hopefully next week...

saxton

  • Playmaker Newbie
  • *
  • Posts: 4
Re: Prefab Apply BUG ALERT!!
« Reply #3 on: September 01, 2013, 12:41:34 PM »
OK, great, thanks...waiting for it anxiously.

saxton

  • Playmaker Newbie
  • *
  • Posts: 4
Re: Prefab Apply BUG ALERT!!
« Reply #4 on: September 09, 2013, 12:54:54 PM »
Is an update available yet to fix this problem?

Red

  • Hero Member
  • *****
  • Posts: 563
Re: Prefab Apply BUG ALERT!!
« Reply #5 on: September 25, 2013, 12:45:32 PM »
To those asking whether it's been fixed... Relax. I'm certain that once it's addressed the staff will be sure to make a post about it.

That said, if this thread is to thrive, maybe a listing of ways to work around this issue? (however, I'm not sure I can really offer much... I'm actually running the older version and haven't faced this bug myself.)

FractalCore

  • 1.2 Beta
  • Full Member
  • *
  • Posts: 100
Re: Prefab Apply BUG ALERT!!
« Reply #6 on: December 19, 2013, 06:37:22 PM »
I only just found this post. I haven't come across any issues.

I'm using 1.7.5f2, and was about to update to 1.7.6, But I don't need to.

I read the release notes that had this entry;

"Fixed focus bug when editing default FSM variable values in prefabs with instances in the scene."

Is this the same problem or is it still in there?

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Prefab Apply BUG ALERT!!
« Reply #7 on: December 20, 2013, 12:59:14 PM »
Hi,

 I am not sure they are the same, but I'll investigate within the next few days.

bye,

 Jean

FritsLyn

  • Full Member
  • ***
  • Posts: 191
Still serious bugs
« Reply #8 on: March 13, 2014, 07:09:29 AM »
If someone has an asset - it could be in the asset store (Like as of when writing this, here's an example: http://u3d.as/content/3d-sauce/playmaker-platforming-starter-kit/5Fy) - and in that there are prefabs with Playmaker links to variables..

That was hard to write - then when opening this, PlayMaker shows errors all over - but the game is playing fine. The author should of course have made an initializing routine that was using empty Game Objects that was fetching - but that is another story.

HOWEVER, if one is importing something quite normal like that into an existing project, then all the existing projects Global Variables are just deleted!!

In other words, as of now, when importing material using Prefabs with variables this way, the entire project is destroyed.

Not so nice.

Lane

  • Administrator
  • Hero Member
  • *****
  • Posts: 2511
  • Mender of the past
    • Cleverous
Re: Prefab Apply BUG ALERT!!
« Reply #9 on: March 13, 2014, 07:57:35 AM »
That seems like a separate issue from this bug, which is when applying changes to prefabs and it corrupts the other instances of that prefab. I'm curious if this was fixed yet, haven't heard about it lately.
Products by Cleverous
|| Vault Core : Database
|| Vault Inventory : Multiplayer Inventory
|| Vault Attributes : Character Stats
|| That Hurt! : Dmg Floaties
|| Quinn : 3D

FritsLyn

  • Full Member
  • ***
  • Posts: 191
Re: Prefab Apply BUG ALERT!!
« Reply #10 on: March 13, 2014, 08:35:46 AM »
When deleting entire folders with prefabs - so they are no longer in the Unity project - and searching for 'Global variables', they still appear to be in there. And even the FSM's from these deleted prefabs are in there: Just right click on a global variable that was only used by a prefab, see which FSM's where using that global variable, click on it.. and there is an FSM.. that belongs to a Prefab that is not in the project at all.

Restarting Unity is the only way to get rid of these left overs..

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Prefab Apply BUG ALERT!!
« Reply #11 on: March 18, 2014, 10:08:12 AM »
Hi,

 have you submitted a bug to PlayMaker on this?

bye,

 Jean