Playmaker and Unity 2018.1

With a new version of Unity, means that more of my PlayMaker games are now broken.  I believe I can now reproduce the steps which will most likely put you in the position to save a PlayMaker game after the latest Unity update.

If your game was using a newer version of PlayMaker, you my just need to do the following steps.  This was tested with a Unity project using PlayMaker 1.8.2.

  • Delete Assets/PlayMaker/Actions/ProceduralMaterial
  • Restart Unity

For older versions of PlayMaker, it may be necessary to reinstall PlayMaker completely.  Below are the steps I used to recover an older project, by upgrading to PlayMaker 1.8.8 and Unity 2018.1.0f2 Personal 64bit.

  • Save PlayMaker/Resources/PlayMakerGlobals.asset outside of the Assets tree
  • Save any PlayMaker addons used, such as ArrayMaker, PlayMaker Utils, and any Custom Actions downloaded from the Ecosystem.  Make sure to save these files outside of the Assets tree, otherwise Unity will try to compile them into the project again, which seems to cause problems.
  • Delete all PlayMaker, Gizmos, iTween, and Plugins/PlayMaker folders out of project
  • Restart Unity if it is running
  • Install a fresh new PlayMaker from the Unity Asset Store
  • After PlayMaker has installed, delete the PlayMaker/Actions/ProceduralMaterial folder.  This should make some of the errors go away.
  • Restart Unity.  At this point the PlayMaker menu interface should now display
  • Move PlayMakerGlobals.asset back to original location
  • Move ArrayMaker, PlayMaker Utils, and any CustomActions to their original locations
  • You may still have to manually edit some of the source code files in PlayMaker or PlayMaker addons to remove references to ProceduralMaterial.  I had to comment out lines of code in one of  the PlayMaker Utils source files.

PlayMaker in Unity

If you are using a revision control system such as Mercurial, the PlayMakerGlobals.asset file can alternatively be restored by finding the file in the current branch and discard the changes.  It seems counter intuitive, but discarding a deleted file is the same as restoring the file.

There is a thread on the Hutong Games PlayMaker support forum, which reported the issue with the references to ProceduralMaterial, so maybe these problems will be fixed in a future release of PlayMaker.