Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Dakk

Pages: [1]
Share New Actions / Re: Countdown Timer
« on: February 19, 2018, 12:40:49 PM »
Thanks for sharing Krillan87, helped me out... 
I have been banging my head with the same issue.  Somehow there was a phantom var populating a field, but that variable didn't exist at all in the FSM or project.  It was probably caused by copying an action.  Pretty sneaky bug though- and the error messages didn't help to figure it out at all and still seem completely unrelated.

Action Requests / Scripting Define Symbols
« on: December 11, 2017, 11:08:14 AM »
Is there any PM action that looks at Scripting Define Symbols?

It would function similar to a boolean test.

Action Requests / Arraymaker Easy Save 3 Actions
« on: November 13, 2017, 11:33:45 AM »
Hi Jean,

Any chance you will be updating the Arraymaker Easy Save actions to work with Easy Save version 3?   

ES3 is almost out of beta, and I'd like to switch over to it, but I am reliant on the excellent Arraymaker action set you made.

Let us know.

Playmaker Help / Re: Need advice on data driven design
« on: November 03, 2017, 09:15:41 AM »
My quick advice which you may already know:

-Don't use global variables unless you absolutely have to- it will save you a lot of time and pain to just follow that rule- I chose to learn the hard way.  Except for a few cases- there is almost always a better design pattern than using a global variable.  I only use them to define my system controller game objects and a few other things.
-Learn and use set fsm var actions to pass data from different fsms- need to tick the "inspector" attribute for the var so they are accessible.
-For instanced game objects you can set and store the data you need on the prefab itself- just add some public vars to a simple script on the prefab.  I've found that is the best way to keep data that is associated with an obj instance.
-Data Maker/Array Maker has a ton of options to load and save data- I read huge .csv of data into my game for inventory/unlockable system then store it in arrays for use- then apply to my game objects as needed- works great (except on UWP).  For tuning and balancing after the AI tests the game overnight I write out a huge .csv which I can analyze conveniently in excel.
-Templates and Run FSM are powerful- great way to keep your fsm's smaller and re-use fsm's. This feature doesn't seem to be widely used- but it is very useful- a bit hard to debug if you nest several templates and there are a few editor display bugs- but still worth exploiting.
-Easy Save is great!  I use it for saving all user data, and also offline in the editor to save out my level data, then load these files at run-time.  Works great, Joel is a pro and very dedicated to support.

Playmaker Help / DataMaker incompatible with UWP
« on: October 31, 2017, 04:39:54 PM »
I have been using datamaker without issue for some time, but when switching to Universal Windows Platform and trying to make a build I get a slew of errors- see the attachment.
Any idea how to fix these errors?

A follow-up in case someone finds themselves in a similar situation where they do not catch it in time for a simple version control rollback (the safest fix)-  I believe I have removed the corruption from my project. 

It didn't seem like the corruption was in the actual global variable file- I couldn't see any problems in the syntax going through the version history. 

It seems to have something to do with the relationship between prefabs and scene instances- like others have noted.  I was not ever editing the scene instance, only the prefabs, but I still encountered this corruption.  To fix it, I broke all my prefab connections then deleted the prefabs from the project.  I then painstakingly re-set the correct variables in all the FSMs in the scene and all the templates. 
This seems to have worked.  At some point I will need to convert the scene objects back to prefabs- hopefully that will not bring back the corruption.

Thanks for the reply, I am quite familiar now with the globals file (unfortunately).
I have compared the history in version control- but I am not certain how to locate the corruption. In fact, I am not even certain that file is where the corruption lies.

+1 to this frustrating bug.

PM arbitrarily switches global variables.  Switching them back only results in the problem re-surfacing in another FSM or template. 

Yes, I use version control, but this went unnoticed this time for at least 5 days of work because I was focused on a different section of my game that was unaffected.  I don't want to lose all the work.

I have tried replacing the vars with new ones- it just happens now on the new vars.  I even tried re-structuring the setup so those vars weren't used- corruption crept into the new setup.

Has anyone found a fix?  Editing the global vars file?  Replacing actions?

Does anyone know where the corruption resides so I can track it in source control and maybe patch it myself? 

How sure are you that it will be fixed in the next Unity release, and will that fix corrupted files, or just prevent 'clean' files from getting corrupted?

Any help appreciated!

Playmaker Help / Singleton Manager
« on: August 16, 2017, 10:11:40 AM »
I've searched the forums and couldn't find an answer, there is probably an easy/obvious one I am missing.

I use the singleton manager to prevent duplicates on my controllers as the game moves through different scenes (I have dups so that the game can be run from any scene without having to start at the title screen).  This works fine. 

The problem arises in that I have these controllers define themselves (get self) and store as global game object variables so that other FSM's can access them.

On scene load, the singleton manager destroys the original game object, which causes the controller to lose its global var game object assignment.  So I add an action for the controller to re-define itself after any level load.   

This doesn't work well, it requires a loop as the self-definition fails silently as the first step after level load.  So I have to check if it is null and loop (get self) until it gets defined.   This works, but causes a cascade of timing issues, as I can't rely on that controller being defined in the first few frames after load.  I am also concerned that the timing is not deterministic and could vary per user so it may cause some hard to track bugs in the wild.

If the singleton manager resolved duplicates by destroying the object in the NEW scene- instead of the one that is already in use, I think it would avoid all of these problems and my global variable game objects would stay defined.

Maybe there is another pattern I should be using.  Any help appreciated!

Playmaker Help / Re: Trigger event return a list of colliders?
« on: March 04, 2017, 01:44:29 PM »
I went back and looked at why Next Overlap Area 2D wasn't working- looks like there could be a bug. 

It works the first time you pass through the function, but doesn't reset the variables- so running it again after finding a collider will always result in false positives and a return of the previous collider(s).  It is possible I am not using it right and there is a way to reset the variables in the function.  Does anyone have any experience with this?

Playmaker Help / Re: Trigger event return a list of colliders?
« on: March 04, 2017, 09:27:18 AM »
For a little more context of the problem I am trying to solve: picture playing cards all laying face down on a table in different configurations some on top of others, I want to flip just the top cards over so they are face up.

I would have to cast a lot of rays to sort this out, due to small overlap situations.  Overlap Sphere would work, but take a lot of small spheres around the edges of the cards.

I initially started out using get Next Overlap Area physics2D- it worked on initialization fine, but I couldn't get it to update after the cards moved- it always returned a false positive of a card that used to be in the overlap area but had moved.  Also I was concerned about being locked into just 2d physics for the entire game as I don't think I could add 3d physics to the background scene.

Tcmeric, how would I get the list for the array?  "Trigger Event" just stores a single collider, and running it multiple times will not iterate through the colliders.  Get Trigger info returns the last event- but that doesnt work as mulitple colliders start inside the trigger on initialization.

Playmaker Help / Trigger event return a list of colliders?
« on: March 03, 2017, 03:22:30 PM »
Hi, I am new to Playmaker so there may be an easy answer but I have looked for a while and can't seem to find a way to get a list of all colliders inside a trigger (box collider).  Multiple objects in the scene may begin life inside the collider so I don't think Get Trigger Info will work, and Trigger Event only stores a single collider.   

I am looking to get a list of all of the objects inside a trigger volume then sort them by their z pos, to do some processing.
Thanks in advance!

Pages: [1]