Playmaker Forum

PlayMaker Updates & Downloads => Share New Actions => Topic started by: jeanfabre on October 28, 2011, 03:24:09 AM

Title: ArrayMaker is now available [April 2021]
Post by: jeanfabre on October 28, 2011, 03:24:09 AM
Hi Everyone,

 So... you want arrays and hashtables with playmaker?! then this is for you. I have made a fully functionnal system to easily work with arrays and hashtable within playmaker. You can get the package on the wiki here:

https://hutonggames.fogbugz.com/default.asp?W715 (https://hutonggames.fogbugz.com/default.asp?W715)

you can get it directly from the Ecosystem (https://hutonggames.fogbugz.com/default.asp?W1181) now!

(https://pbs.twimg.com/media/CE9BKwdUUAAITYU.png)

Also, thanks to Sebastian alvarez for making screencasts videos:

http://www.youtube.com/watch?v=6SBuH1vxC7A (http://www.youtube.com/watch?v=6SBuH1vxC7A)


Basically, there is two proxy components that you create either during authoring or during runtime ( custom actions available to do so right within playmaker). Then  with a full set of custom actions, you can do everything you normally do with arrays and hashtable but within playmaker.

 The good thing is that the array and hashtable proxy component feature a custom editor so that you can pre fill content during authoring, making it very easy.

 I originally planned to release this on the asset store, but I have to be realistic, this is not the right time for me: I would not be able to provide a good enough support. when I will get some downtime work wise, It might make it with some more goodies.

 Several samples are available with this package using most if not all the custom actions, some are just "unit test" to make sure the system works as expected, some xample are more "fun to watch" like "PlayMakerSamples/Addons/ArrayMaker/ArrayList/GameObjectPositionning"

This sample creates as much cubes as you define in an array ( using a position), and also set it's color again from a another array. As they fall, each cube set back it's position to the array, so that you can watch in real time the position of cube being set in that original array. Furthermore, if you modify the colors from the array, the related cube will update its color in real time! ( note, in the unity preferences, uncheck "use OS X color picker" for an even more granular color update, the osX picker only update when you mouse up on the a color, not while you are mouse down).

 If you have any questions, use this forum and put in the title "ArrayMaker"

 There are few more things to do like help sections for each custom actions, screencasts to explain the basics, and generally some script improvements ( not happy with many aspect of it, so lots of room for enhancements).

 Enjoy,

 Jean
Title: Re: ArrayMaker is now available
Post by: qholmes on October 28, 2011, 03:40:23 AM
Cool Jean thanks!!

Look forward to playing with it this week.

Q
Title: Re: ArrayMaker is now available
Post by: tobbeo on October 28, 2011, 03:41:33 AM
Very cool Jean! You are awesome for sharing this with everyone for free. I know if I start using Arrays in my game it would speed up the creation and modification of a lot of stuff.
Title: Re: ArrayMaker is now available
Post by: Duffdaddy on October 28, 2011, 05:57:01 AM
Woa, you've been busy. So much for time-off. Well done.
Title: Re: ArrayMaker is now available
Post by: MaDDoX on November 17, 2011, 01:27:47 AM
Well, what can I say, you just blew my socks off. Ingenious, generous and super-handy, congratulations and many thanks Jean :)
Title: Re: ArrayMaker is now available
Post by: jeanfabre on November 18, 2011, 06:30:18 AM
Thanks! Very motivating to hear your comments!

I still think that the custom editor for the array proxies need a more flexible interface for creating, editing, organising, and deleting content during editing, and why not when playing too. But at the same time i'd like to also build a xml proxy with some xpath support for reading, accessing and creating xml, that would be very very cool! A database proxy also would be nice... So much to do! I have also at the back of my mind an fsm exporter that would render in html 5 for easier sharing of content, so that we can better show and share fsm stuff conveniently, and also be able to provide some kind of documentation system for what we build inside playmaker.

Sigh... :)

Bye,

Jean
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 06, 2011, 01:33:26 AM
Hi,

 Just made a stress test of ArrayMaker with an array of 58000 + items and all is well at 400 FPS. this is actually very positive, it means I haven't spoiled the raw power available in unity and PlayMaker with my poor code  :P

You can follow the thread here:

http://hutonggames.com/playmakerforum/index.php?topic=891.msg3666#msg3666 (http://hutonggames.com/playmakerforum/index.php?topic=891.msg3666#msg3666)

Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Duffdaddy on December 06, 2011, 03:20:07 AM
Gotta love Playmaker for allowing open integration like this.
And of course nice add-ons like arraymaker!
I think thats why I love it so much. Such simplicity and such power! Muuah-ha-ha! ;D
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 12, 2011, 06:25:40 AM
Hi,

 New version of ArrayMaker with a new sample for a word search featuring the new text asset split system.

 Package available here:

https://hutonggames.fogbugz.com/default.asp?W715 (https://hutonggames.fogbugz.com/default.asp?W715)


 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: marcos on December 18, 2011, 12:13:37 AM
Holy smokes this just gave me a thousand game ideas!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 19, 2011, 02:13:48 AM
:) eh eh!

 And wait, more is coming, like csv and xml parsing, xpath etc etc, so that basically data handling in playmaker becomes natural and fun.

 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Red on December 21, 2011, 06:07:03 PM
Now for the million dollar question from those of us that are eternal newbs...

would you be able to put together a tutorial or detailed lesson plan to help teach us how to use it to it's fullest? ;)
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 22, 2011, 01:07:29 AM
Hi,

 Yes, I seriously need to allocate time for this and create a step by step tutorial and a screencast as well.


Meanwhile you might have  specific problem?

Have you been able to attach a array component to a gameObject?
Have you been able to prefill the array with values?
Have you been able to find and use any of the custom actions related to working with arrayMaker? for example counting the number of items in the array?

 or maybe you are already further and need explanations on design patterns?

Have you looked at the examples provided with the arrayMaker? in playmakerSamples/Addons/ArraList/

In there you have several scenese ranging from test cases to more advance usage.

 I am not trying to get away with this instead of making a tut or a screencast, I just want to know where you are stuck so that I can better target the tutorial level of explanation and possibly help you out the best I can right now.

 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Red on December 22, 2011, 07:49:34 AM
well, for starters, whenever i try to create/use the arrayMaker features, it keeps throwing an error saying "GameObject requires PlayMakerArrayListProxy component." even when copying and pasting the FSMs from the example scenes.
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 23, 2011, 12:50:02 AM
Hi,

 Does the gameObject in question indeed has such PlayMakerArrayListProxy component? If not, select that gameObject in question, then add such component via the menu (PlayMaker Add ons/ArrayMaker/Add ArrayList Proxy to selected Objects).

 Then you'll be able to enjoy all the related custom actions ( that is actions listed under "ArrayMaker/ArrayList"

If you do actually have that component, make sure the reference field is either empty or if set needs to be stipulated in the action you are using. This is used when several similar component feature on a single GameObject to differenciate them.

 Else, what feature exactly are you trying to use?

Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Red on December 23, 2011, 09:44:15 AM
Thank ye kindly! i didn't know to check the menu (i was scouring the action browser though. ;) )

works now! now to figure out how to make it do what i hope to make it do :P
Title: Re: ArrayMaker is now available
Post by: Mark_T on January 11, 2012, 11:55:06 AM

Many thanks for this cool addition!
One small request though for no scripting guys like me: when you have time (:) ) some tutorials will help a lot. I tried to use the examples you provide, and I managed to do my thing, but I`m sure can do more and this addon can be very very helpful (I have a few ideas where I can use it).
Anyway, again, many thanks. I`m sure it was a bit of work there. :)

Take care,

Title: Re: ArrayMaker is now available
Post by: jeanfabre on January 12, 2012, 02:35:55 AM
I know I know...

 I tried over the christmas holiday to make screencasts, but I get self aware when talking over the screencast, and talk rubbish :) it's just stupid... I need to do something about this! At the moment I am running around between the "not so" new born baby yet not giving us any sleep really, the work, the house, etc etc! so when I have time I am just not relaxed enough to do a good job at talking over screencasts...

 I'll give it a go tonight one more time! I just need to get the ball rolling with this. Doing help and tutorial is SO important, yet always such a difficult thing to manage and incorporate properly.

 bye,

 Jean

Title: Re: ArrayMaker is now available
Post by: Zyxil on April 14, 2012, 11:53:13 PM
ArrayMaker is excellent!  Thank you for releasing it to everybody.

I have an issue with an ArrayList of Materials.  I am using the Free Substances from the Asset Store and they are supposed to work exactly like a Material in Unity, they're just generated inside the editor.  The ArrayList allows adding them in the editor, but they disappear when running.

If my array is 10 elements and elements 5 and 6 are substances, then the proxy will show elements 0 through 4 and 7 through 9.  And when referenced by the Array List Get action, the action does not fail, but also does not retrieve the Substance from the array.  It works on a normal Material, even oddball ones like the Gem Shaders.

Any idea on what's going on here?

Thanks!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on April 15, 2012, 07:43:57 AM
Hi,

 I haven never tried with the substance materials, so will give it a try and see what coud go wrong within arraymaker.

Can you confirm that if you do the same with standard materials then it works ok? if too difficult to test don't bother ( it's just that I won't be able to look at it properly until tomorrow).

 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Zyxil on April 15, 2012, 03:47:39 PM
It works for the Materials that Unity can make, whether from model import, made manually within the editor or imported from asset packages like the Gem Shader package.

Thanks for looking at this, Jean!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on April 16, 2012, 06:56:12 AM
Hi,

 ok, Unity has introduce a new type of material "proceduralMaterial" for substance, so it simply has to be taken into account, you can reference a proceduralMaterial using a material, but to retrieve it, you need to qualify it properly.

I can't upload anything currently to the forum, so I have sent an email to you. Will post here when I'll be able to add attachment.

Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Zyxil on April 17, 2012, 09:24:17 PM
Jean, I checked the ArrayListGet action and it works!

Thank you for the great support!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on April 18, 2012, 02:24:45 AM
Hi,

 You are welcome, this is the least I can do!

The upload folder has been upgraded so here are the files in questions:

put ArrayListGet.cs in

playmaker/actions/addons/ArrayMaker/ArrayList

and HashTableGet.cs in

playmaker/actions/addons/ArrayMaker/HashTable

And then it will work for substances materials.

Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Amy on May 04, 2012, 10:10:48 PM
People talk about arrays so much but I'm still finding them hard to understand. This is how data bases are made correct? Would this help me make an RPG? ^^
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 06, 2012, 02:07:30 AM
hi,

 Array and database are two different things but they work together.

-- Arrays allow you to store a number of variables ( any ), and conveniently access them via one variable, so that you can iterate through them, organize them, sort them. Database holds a lot more power, and creates relationships between data, and allows very powerful queries with complex requirements.

 If you query a database, you will likely get the results in an array, that's how it works most of the time.

In playmaker, Array and database is not supported currently, that's why I create ArrayMaker, to support working with arrays within playmaker, and for database, monosqlite ( available on the asset store) has a solution that works with playmaker.

 Now, for an RPG, array and database will definitely help you, but first you need to really understand and grasp the concept behing database and arrays in order to use them in any kind of projects, not just RPG.

Bye,

 Jean
Title: Randomize (shuffle) ArrayList function
Post by: Jos Yule on May 14, 2012, 01:07:10 PM
Hello!

I'd love to have a "randomize" action available for the ArrayList.

My use-case is using an ArrayList as a holder for a "deck" of cards. I'd love a simple way to "shuffle" or randomize that deck.

What do you think?

Thanks
jos
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 14, 2012, 04:02:38 PM
Hi,

 good idea, When I needed that I was going for a manual way, but the opposite action to "sort" seems fair enough :)

 I will work on that and post back on that thread

Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Jos Yule on May 16, 2012, 10:00:11 AM
Great, thanks!

Jos
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 17, 2012, 01:28:51 AM
Hi,

 there you go, a nice shuffling algo. I took a simple random algorithm ( the Knuth-Fisher-Yates  one), so I think it will give you satisfaction:

http://www.4guysfromrolla.com/articles/070208-1.aspx

[EDIT] now shuffling can be assigned a range to shuffle only part of the array.

I have attached the action to this post.

Code: [Select]
// (c) Jean Fabre, 2012 All rights reserved.
// http://www.fabrejean.net
//  contact: http://www.fabrejean.net/contact.htm
//
// Version Alpha 0.7

// INSTRUCTIONS
// Drop a PlayMakerArrayList script onto a GameObject, and define a unique name for reference if several PlayMakerArrayList coexists on that GameObject.
// In this Action interface, link that GameObject in "arrayListObject" and input the reference name if defined.
// Note: You can directly reference that GameObject or store it in an Fsm variable or global Fsm variable


// the shuffle routine is a Knuth-Fisher-Yates algorithm explained at : http://www.4guysfromrolla.com/articles/070208-1.aspx

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

namespace HutongGames.PlayMaker.Actions
{
[ActionCategory("ArrayMaker/ArrayList")]
[Tooltip("Shuffle elements from an ArrayList Proxy component")]
public class ArrayListShuffle : ArrayListActions
{
[ActionSection("Set up")]

[RequiredField]
[Tooltip("The gameObject with the PlayMaker ArrayList Proxy component to shuffle")]
[CheckForComponent(typeof(PlayMakerArrayListProxy))]
public FsmOwnerDefault gameObject;

[Tooltip("Author defined Reference of the PlayMaker ArrayList Proxy component to copy from ( necessary if several component coexists on the same GameObject")]
public FsmString reference;

[Tooltip("Optional start Index for the shuffling. Leave it to 0 for no effect")]
public FsmInt startIndex;

[Tooltip("Optional range for the shuffling, starting at the start index if greater than 0. Leave it to 0 for no effect, that is will shuffle the whole array")]
public FsmInt shufflingRange;


public override void Reset()
{
gameObject = null;
reference = null;

startIndex = 0;
shufflingRange = 0;

}


public override void OnEnter()
{

if ( SetUpArrayListProxyPointer(Fsm.GetOwnerDefaultTarget(gameObject),reference.Value) )
{
DoArrayListShuffle(proxy.arrayList);
}

Finish();
}


public void DoArrayListShuffle(ArrayList source)
{
if (! isProxyValid())
{
return;
}

int start = 0;
int end = proxy.arrayList.Count-1;

if (startIndex.Value>0)
{
start = Mathf.Min(startIndex.Value,end);
}

if (shufflingRange.Value>0)
{
end = Mathf.Min(proxy.arrayList.Count-1,start + shufflingRange.Value);

}
Debug.Log(start);
Debug.Log(end);
// Knuth-Fisher-Yates algo

// for (int i = proxy.arrayList.Count - 1; i > 0; i--)
for (int i = end; i > start; i--)
{
   // Set swapWithPos a random position such that 0 <= swapWithPos <= i
   int swapWithPos = Random.Range(start,i + 1);

   // Swap the value at the "current" position (i) with value at swapWithPos
   System.Object tmp = proxy.arrayList[i];
   proxy.arrayList[i] = proxy.arrayList[swapWithPos];
   proxy.arrayList[swapWithPos] = tmp;
}
//

}
}
}


Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 17, 2012, 08:02:08 AM
Hi,

 While I am at it, I have also created am easier iteration class to loop through items of an arrayList ( I haven't made it for hash tables, but can do if you so wish). thanks to this original post:

http://hutonggames.com/playmakerforum/index.php?topic=1577.0 (http://hutonggames.com/playmakerforum/index.php?topic=1577.0)

Code: [Select]
// (c) Jean Fabre, 2012 All rights reserved.
// http://www.fabrejean.net
//  contact: http://www.fabrejean.net/contact.htm
//
// Version Alpha 0.7

// INSTRUCTIONS
// Drop a PlayMakerArrayList script onto a GameObject, and define a unique name for reference if several PlayMakerArrayList coexists on that GameObject.
// In this Action interface, link that GameObject in "arrayListObject" and input the reference name if defined.
// Note: You can directly reference that GameObject or store it in an Fsm variable or global Fsm variable

using UnityEngine;

namespace HutongGames.PlayMaker.Actions
{
[ActionCategory("ArrayMaker/ArrayList")]
[Tooltip("Each time this action is called it gets the next item from a PlayMaker ArrayList Proxy component. \n" +
"This lets you quickly loop through all the children of an object to perform actions on them.\n" +
"NOTE: To get to specific item use ArrayListGet instead.")]
public class ArrayListGetNext : ArrayListActions
{
[ActionSection("Set up")]

[RequiredField]
[Tooltip("The gameObject with the PlayMaker ArrayList Proxy component")]
[CheckForComponent(typeof(PlayMakerArrayListProxy))]
public FsmOwnerDefault gameObject;

[Tooltip("Author defined Reference of the PlayMaker ArrayList Proxy component ( necessary if several component coexists on the same GameObject")]
public FsmString reference;

[Tooltip("Event to send to get the next item.")]
public FsmEvent loopEvent;

[Tooltip("Event to send when there are no more items.")]
public FsmEvent finishedEvent;

[UIHint(UIHint.FsmEvent)]
[Tooltip("The event to trigger if the action fails ( likely and index is out of range exception)")]
public FsmEvent failureEvent;



[ActionSection("Data Storage")]
[UIHint(UIHint.Variable)]
public FsmBool getBoolData;
[UIHint(UIHint.Variable)]
public FsmInt getIntData;
[UIHint(UIHint.Variable)]
public FsmFloat getFloatData;
[UIHint(UIHint.Variable)]
public FsmVector3 getVector3Data;
[UIHint(UIHint.Variable)]
public FsmString getStringData;
[UIHint(UIHint.Variable)]
public FsmGameObject getGameObjectData;
[UIHint(UIHint.Variable)]
public FsmRect getRectData;
[UIHint(UIHint.Variable)]
public FsmQuaternion getQuaternionData;
[UIHint(UIHint.Variable)]
public FsmMaterial getMaterialData;
[UIHint(UIHint.Variable)]
public FsmTexture getTextureData;
[UIHint(UIHint.Variable)]
public FsmColor getColorData;
[UIHint(UIHint.Variable)]
public FsmObject getObjectData;



// increment that index as we loop through item
private int nextItemIndex = 0;


public override void Reset()
{

gameObject = null;
loopEvent = null;
finishedEvent = null;

failureEvent = null;

getBoolData = null;
getIntData = null;
getFloatData = null;
getVector3Data = null;
getStringData = null;
getGameObjectData = null;
getRectData = null;
getQuaternionData = null;
getMaterialData = null;
getTextureData = null;
getColorData = null;
getObjectData = null;
}


public override void OnEnter()
{
if (nextItemIndex == 0)
{
if ( ! SetUpArrayListProxyPointer(Fsm.GetOwnerDefaultTarget(gameObject),reference.Value) )
{
Fsm.Event(failureEvent);

Finish();
}
}

DoGetNextItem();

Finish();
}


void DoGetNextItem()
{

// no more children?
// check first to avoid errors.

if (nextItemIndex >= proxy.arrayList.Count)
{
nextItemIndex = 0;
Fsm.Event(finishedEvent);
return;
}

// get next item

GetItemAtIndex();


// no more items?
// check a second time to avoid process lock and possible infinite loop if the action is called again.
// Practically, this enabled calling again this state and it will start again iterating from the first child.

if (nextItemIndex >= proxy.arrayList.Count)
{
nextItemIndex = 0;
Fsm.Event(finishedEvent);
return;
}

// iterate the next child
nextItemIndex++;

if (loopEvent != null)
{
Fsm.Event(loopEvent);
}
}


public void GetItemAtIndex(){

if (! isProxyValid())
return;

System.Type valueType = null;
object element = null;

try{
valueType = proxy.arrayList[nextItemIndex].GetType();
element = proxy.arrayList[nextItemIndex];
}catch(System.Exception e){
Debug.LogError(e.Message);
Fsm.Event(failureEvent);
return;
}

if (valueType == typeof(bool) ){
getBoolData.Value = (bool)element;
}else if(valueType == typeof(Color) ){
getColorData.Value = (Color)element;
}else if(valueType == typeof(float) ){
getFloatData.Value = (float)element;
}else if(valueType == typeof(GameObject) ){
getGameObjectData.Value = (GameObject)element;
}else if(valueType == typeof(int) ){
getIntData.Value = (int)element;
}else if(valueType == typeof(Material) ){
getMaterialData.Value = (Material)element;
}else if(valueType == typeof(Object) ){
getObjectData.Value = (Object)element;
}else if(valueType == typeof(Quaternion) ){
getQuaternionData.Value = (Quaternion)element;
}else if(valueType == typeof(Rect) ){
getRectData.Value = (Rect)element;
}else if(valueType == typeof(string) ){
getStringData.Value = (string)element;
}else if(valueType == typeof(Texture2D) ){
getTextureData.Value = (Texture2D)element;
}else if(valueType == typeof(Vector3) ){
getVector3Data.Value = (Vector3)element;
}else{
//  don't know, should I put in FsmObject?
}

}
}
}


 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Jos Yule on May 17, 2012, 10:20:29 AM
Thanks for this and the Randomize/Shuffle actions. I will checkout the GetNextChild action too, for further hints on how to best use this new action!

When i've tried these out i will report back with any feedback too.

Peace
jos

Title: Re: ArrayMaker is now available
Post by: balasco on May 28, 2012, 04:44:54 PM
Is there any chance you could add a new script to support multi dimension arrays? I need to build a 2D array for a game that uses a tile grid and using ArrayMaker would be ideal. Thanks
Title: Re: ArrayMaker is now available
Post by: kiriri on May 28, 2012, 05:46:59 PM
in case your in a hurry you might want to create a jagged array. It's kinda cheating but it worked like a charm for me in the past :D
To make it, you just create an array which contains game objects that themselves contain an array. Then to get to say 5/2 on your field you just get the 5th object of your first array and then save it to a gameObject variable, and then use that variable to access the 2nd  value of the array on that gameObject.

Jagged arrays are awesome btw, because with  them you can finally create non rectangular 2D arrays :D
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 29, 2012, 01:57:39 AM
Hi,

 I would love to be able to build a multi dimensionnal array system but it's going to be tricky because of the action User Interface limitations, It's getting in the way of building more complex systems.

 What I have in mind actually would be to create a csv/xml system very much like ArrayMaker, but dealing with xml under the hood, with a csv parser as well ( and why not json), then it would open fantastic perspectives usch as xpath queries.

right now, I would recommand to just split your multi dimensionnal arra yinto a set of arrays and simply maintain references, I do that all the time, it's working very well ( and exposes more, because a multid array would be difficult to display its content in the inspector)

So as kiriri is explaining, I would ( and actually am) use this technic for now.

 I unfortunately seriously lack of spare time to tackle this xmlMaker project ( I have input.touches framework and vectrosity framework currently cooking :) ), but if a project has sufficient fundings to support the initial kick to get that up and running, I would be delighted to make it. I know exactly how I would do it,

I make some initial tests, for example to parse csv and make it as an xml: http://hutonggames.com/playmakerforum/index.php?topic=891.msg3876#msg3876 (http://hutonggames.com/playmakerforum/index.php?topic=891.msg3876#msg3876)


Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: balasco on May 29, 2012, 11:01:15 AM
Thanks guys, will look into using jagged arrays for now, are they easy to iterate through using PlayMaker, or do you think I should stick to normal scripting?
Title: Re: ArrayMaker is now available
Post by: jeanfabre on May 29, 2012, 01:25:16 PM
Hi,

 You don't really iterate hashtables, but arrays yes, I made an action few days ago that ease the process ( while it's perfectly doable as is with PlayMaker): http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941 (http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941)

 If you do find actions you would like to see implemented for arrayMaker or else, do not hesitate to ask for them.

 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: u0204909 on July 31, 2012, 11:45:27 PM
Hi Jean, thanks for ArrayMaker!

I couldnt get the Array List Copy To action to work, so I checked the code. I noticed you werent using the source element and were copying from destination proxy to destination proxy. So I changed

System.Array _tmp_ = proxy.arrayList.ToArray()
to
System.Array _tmp_ = source.ToArray()

It worked for me but I wanted to let you know and also check if I made a valid/invalid correction.
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 01, 2012, 06:07:39 AM
Hi,

 Completely forgot to finish that action! :) thanks for spotting this,

 Here's a version attached that will work with the start index and count properties, so that you can copy only part of the array.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: amaranth on August 06, 2012, 07:32:47 PM
Jean, I think I've found a bug. If I import a text file, using Split Text To Array, with integers, I can't get the integers with Array List Get. If I import the same text file with strings, everything works fine.

(or maybe this isn't a bug? perhaps a little help text that indicates only strings can be imported?)

Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 07, 2012, 08:43:27 AM
Hi,

It's not a bug, it's just that it needs to be explicitly defined.

Here we go, the action is updated to let you parse the items as int or float, default is string. I'll see if I can extend to other types, such as vectors, rect, bool etc.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: amaranth on August 07, 2012, 12:41:28 PM
Woot! Okay, I have one more hypothetical question...

Is it possible to specify a range in SplitTextToArray? For example, a save game file will probably have many different types of values stored inside. I plan to put strings in one chunk, integers in another chunk, etc. So slot 0-100 are reserved for integers, 101-200 are reserved for strings.
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 08, 2012, 06:25:41 AM
Hi,

 ok, I can see a good use of that, so I updated the action, redownload it from the post above, you are now able to provide a start index and a range.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 08, 2012, 08:12:42 AM
Hi,

 Here's an updated version of ArrayGetNext where you can now define a start and end index so that you can iterate only a portion of an array.

 Bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: amaranth on August 08, 2012, 01:14:41 PM
Thank you, Jean! :D
Title: Re: ArrayMaker is now available
Post by: Netjera on August 17, 2012, 09:30:39 PM
Hi Jean, thanks again for the help in my other thread!

I'm trying to put together a very simple inventory system, like what you'd see in really old point and click adventures.  Basically, a small panel of ten items.  Items can be picked up in any order, and are assigned the next open slot in the panel.  When the panel is full, the player can't pick up anything else until they've used something.

Would arraymaker help with this?  I've never worked with arrays before, so I'm with Amy in that I really don't understand what they're used for.

Also, what file do I download?  I've read through and it seems there have been a lot of additions but no files added so I'm a bit confused.

Thanks!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 20, 2012, 03:14:47 AM
Hi,

 yes, arrayMaker would help you a lot with this. Also MonoSqlite would also be of a greta help too, and I am currently preparing a bridge for playmaker with advanced editing tools. Basically it will create the necessary actions ( Create, read, update, delete) for you. You simply select the database and table, what fields to use and the tool will generate the actions. It will work with arrayMaker as well.

 that combination is in my opinion mandatory for any inventory system. I don't have enough gaming experience to really understand the requirements, but  I know for sure that you'll need a data management of some sorts.

As for learning what are Arrays, you should simply see them as lists, you can either have a indexed lists, you can get to an item in the list by its index ( give me the third item in that list). you can also have a key baased list ( hashtable), where you would reference each item against a string. So you would query something like "give me the item with key "Player 2"  or something.

I suggest to read documentations on arrayList and Hastables on the net, even if it's for scripting, you will get the basics, and will be able to apply this with playmaker since I have created all the actions necessary, using the same naming conventions as when scripting.

http://www.dotnetperls.com/arraylist (http://www.dotnetperls.com/arraylist)
http://www.dotnetperls.com/hashtable (http://www.dotnetperls.com/hashtable)

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Netjera on August 20, 2012, 02:00:12 PM
Wow, that's really helpful!  Thanks a lot, I'll definitely have a look today.
Title: Re: ArrayMaker is now available
Post by: Netjera on August 30, 2012, 03:10:18 AM
Is the ability to loop through the array built-in now, or do I still need the script I saw mentioned here?  Thanks!
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 30, 2012, 03:47:29 AM
Hi,

 Yes, you'll need that action:

http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941 (http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941)

It's not yet part of the arrayMaker bundle, but simply get it there for now. thanks.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Netjera on August 30, 2012, 05:03:58 PM
Hi,

 Yes, you'll need that action:

http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941 (http://hutonggames.com/playmakerforum/index.php?topic=835.msg6941#msg6941)

It's not yet part of the arrayMaker bundle, but simply get it there for now. thanks.

bye,

 Jean

Thanks a lot Jean.  :)
Title: Re: ArrayMaker is now available
Post by: Netjera on August 30, 2012, 10:31:34 PM
I've never used a .cs script with Unity before.  How do I get it into the project so that Playmaker/Arraymaker will recognize it?  Thanks!

EDIT:  I figured out how to import it into the project using "Import Assets".  But when I drag it onto my cube object containing the Arraymaker component, it gives me an error, "Can't add script:  Can't add script behavior ArrayListGetNext.  The scripts file name does not match the name of the class defined in the script!"  Can someone tell me what I did wrong, please?
Title: Re: ArrayMaker is now available
Post by: jeanfabre on August 31, 2012, 03:39:46 AM
Hi,

 This script is used internally by playmaker, it appears listed with the rest of the available actions in the actions browser of playmaker.

 So select an fsm state, and in the action browser search for ArrayListGetNext ( use the search field to get to it directly).

By simply having playmaker action scripts in the assets, playmaker will pick them up, and you can use them like any of the rest of the actions.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: Netjera on August 31, 2012, 04:43:53 AM
Hi,

 This script is used internally by playmaker, it appears listed with the rest of the available actions in the actions browser of playmaker.

 So select an fsm state, and in the action browser search for ArrayListGetNext ( use the search field to get to it directly).

By simply having playmaker action scripts in the assets, playmaker will pick them up, and you can use them like any of the rest of the actions.

bye,

 Jean

Ugh!  You're right, it was right there in the list the whole time!  lol  Thanks!
Title: Re: ArrayMaker is now available
Post by: Dev_Sebas on September 03, 2012, 06:33:08 PM
Thanks a lot Jean.The feature is amazing. :D
Bye
Title: Re: ArrayMaker is now available
Post by: amaranth on November 22, 2012, 01:20:01 AM
Hi Jean, I think I've found a problem with the Array List Index Of action. When I successfully find an index and call the Item Found event, the event pauses for around 5 seconds and then doesn't go anywhere. Item Not Found works fine. I used this with an array of integers. I found a workaround, but I thought you should know if no one else has reported this.
Title: Re: ArrayMaker is now available
Post by: jeanfabre on November 22, 2012, 05:34:12 AM
Hi,

 I just tested, and I don't experience any delay of glitch at all.

 How large if your array?

Are you sure that this is not something else that cause the hang?

if you can send me a repro package, that would be good, or a video.

bye,

 Jean
 
Title: Re: ArrayMaker is now available
Post by: amaranth on November 22, 2012, 04:28:07 PM
Args! I loaded it this morning and took a look. It was me. I accidentally attached the global event to the send event. Infinite loop ensued.  ::)
Title: Re: ArrayMaker is now available
Post by: pixlweaver on November 29, 2012, 03:53:18 PM
I've been using Array Maker and it is indeed very handy - thanks Jean!

I did run into one problem so far, however. I am using the Array List Copy To action to attempt a simple copy one ArrayList to another. But action doesn't seem to work. No errors - just an empty destination array list.

Is there a trick to using this action?
Title: Re: ArrayMaker is now available
Post by: jeanfabre on November 29, 2012, 04:53:41 PM
Hi,

 Did you get the latest from the wiki? It was indeed not working on the first few releases, but now it should all be good.

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: pixlweaver on November 29, 2012, 05:33:18 PM
This link right? https://hutonggames.fogbugz.com/default.asp?W715

I do indeed have the latest from that link. Version 0.9
Title: Re: ArrayMaker is now available
Post by: poofdragon on December 03, 2012, 12:42:02 AM
I did run into one problem so far, however. I am using the Array List Copy To action to attempt a simple copy one ArrayList to another. But action doesn't seem to work. No errors - just an empty destination array list.

Is there a trick to using this action?

I had the exact same issue. Also, I noticed that when I used the "Count" variable, the "copied" values were added to the end of the target Array which grew in length every time the Array was copied.

I ended up altering the code in ArrayListCopyTo.cs:

Code: [Select]
//proxy.arrayList.Add(source[i]);
proxy._arrayList[i] = source[i];

Note: It seems to require setting the Count regardless of it saying otherwise in the tooltips.
Title: Re: ArrayMaker is now available
Post by: pixlweaver on December 03, 2012, 11:46:24 AM
I had the exact same issue. Also, I noticed that when I used the "Count" variable, the "copied" values were added to the end of the target Array which grew in length every time the Array was copied.

I ended up altering the code in ArrayListCopyTo.cs:

Code: [Select]
//proxy.arrayList.Add(source[i]);
proxy._arrayList[i] = source[i];

Note: It seems to require setting the Count regardless of it saying otherwise in the tooltips.

Ahh! Sure enough setting the count does the trick (didn't have to alter the CopyTo code for it to work). Thanks Poofdragon!  :D
Title: Re: ArrayMaker is now available
Post by: jeanfabre on December 03, 2012, 08:22:09 PM
Hi Guys,

 I am so glad you are able to sort it out yourself. Bear with me, I am barely seeing the light at the moment :) I will get back to normal availabilities in few days.

 bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: qholmes on February 05, 2013, 03:09:30 PM
Jean,

I am working on an option for my conveyor belt system.. I was going to try tracking the position of the parts along the 'belt' And would like to use an array to do it. So i thought i would try ArrayMaker

Each conveyor is a start and end object and i want to create an array based on the distance between then divided by my part size. Then each part will be assigned an array location when it enters the conveyor and just watch the part in front of it for a collision. I have a true collision system working now but am worried about performance with hundreds of parts.. and i loose accuracy as well using the basic collision method.

So my question is what sample is going to point me in the right direction? I have looked at a few and am not quite sure how to proceed? Or maybe it does not suit?

Q
Title: Re: ArrayMaker is now available
Post by: jeanfabre on February 08, 2013, 01:54:07 AM
Hi,

 I had to solve a very similar problem with my excavator tracks, each track pads are controlled very much like how you want to do it, but I don't really recommend doing it with arrayMaker really..

-- is your belt a straight line?
-- can you have missing boxes on the belt?

can boxes be interacted physically by pother elements ( other than siblings) ?

bye,

 Jean
Title: Re: ArrayMaker is now available
Post by: qholmes on February 08, 2013, 07:42:19 AM
Funny i had an idea in the shower right after i wrote that message... i realized that each object just had to watch the object in front of it... so i just send a reference of the previous object to each arriving object. It can watch the distance between them..

That is the basic idea anyway..

It is a sliding track not fixed locations so there can be any distances between objects.. but they can back up at the end temporarily etc.

Q
Title: Re: ArrayMaker is now available
Post by: jeanfabre on March 20, 2013, 02:37:47 AM
Hi EVeryone,

 huge update of ArrayMaker today!! I am finally getting on top of all the things I need to do re playmaker :) so I could finally do that necessary facelift to ArrayMaker actions to make them easy to use, short and generally less scary to look at :)

the latest addition to playmaker is the ability to let the user select a type of fsm variable and then select that variable. It was before not possible, and therefore I had to provide all possible solutions, which would make the actions interface really ugly, not conveninient, confusing, frustrating, prone to error, etc etc etc...

 now, it's so much easier!!

 !!!!WARNING: NOT COMPATIBLE WITH PREVIOUS VERSIONS!!!!

most actions have chanbges their interface, and therefore will oose their set up if you import the latest package into an exisiting project. You simply need to go over each of your arrayMaker actions and re set them to what you want to set, add, get or delete. The engine itself remains the same, so you can upgrade, but you need to back up before just to make sure you can come back to it and study how it was set up for example.

You can download it at the usual wiki page:

https://hutonggames.fogbugz.com/default.asp?W715

Enjoy,

 Jean
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: jeanfabre on March 21, 2013, 02:15:58 AM
Hi,

 I updated the package with a new sample, RTS selection, it's been requested many time, so I rolled a working sample, where you can drag a rectangle on screen and it will pick up LIVE objects that responds to this rts selection system. It also outputs the set of selected object into an array.

pretty cool, especially since I managed to make the visual rectangle all in unity, using GUI, so no third party required here :) I will make a vectrosity based version of this in few days, but this is something else.

bye,

 Jean
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: Lobohotpants on March 21, 2013, 10:42:29 AM
I updated today and it was pretty painless.  I only had to re-input my variables and types but other than that I had no errors.  Awesome job Jean. 8)
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: jeanfabre on March 22, 2013, 12:45:58 AM
Hi,

 Thanks for the feedback :)

bye,

 Jean
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: rojosedano on April 06, 2013, 10:44:53 PM
Hi Jean, I have a variation in the sample selection rts but need adjustments to work properly. My intention is to add selections to the array.
If you see a better way ...
thank you for your excellent work

attached scene: rts pruebas

Rojosedano
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: Fail257 on April 11, 2013, 11:27:50 AM
hello,

want you please add Dictionary support?
its  much faster than Hashtables and  it would match and make Arraymaker more complete.
just my 5 cent
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: jeanfabre on April 12, 2013, 02:08:26 AM
Hi,

http://stackoverflow.com/questions/301371/why-is-dictionary-preferred-over-hashtable

 How would you see Dictionnaries implemented, and how that could improve the perfs in our situation? It's been a struggle when I started, cause I did ask myself this question, and I went for hashtables, I guess I can support dictionnaries too, but I need hard evidences that indeed it will perform a lot better.

The main use for ArrayMaker is really about discrete access to information, not processing a huge list of items during the gameLoop, in that case, yes, I would actually myself look for a more appropriate solution. Having said that, Playmaker would also be out of the question in terms of pur fsm implementation, and I would delegate this sensitive task to a custom action.

The main thing to keep in mind in our Unity environment is that, most likely arrayMaker will never be the bottle neck to performances. Physics, character animation, shaders, network lag, Mesh processing will come first in 99% of the projects. I am running highly sensitive simulation systems using this very same ArrayMaker version, and when I profile, it's completly unnoticeable, peanuts...

 If you have a use case scenario where dictionnary would perform better, I would be really glad to test it and provide a more performant alternative for sure, and would actually be a good thing to provide as a sample with ArrayMaker to demonstrate when to use Dictionnary over hashtables.


Bye,

 Jean
 
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: tam on May 20, 2013, 03:59:17 PM
Wow. This tool is great.
Thank you very much for making this, and making it free too!
Title: Re: ArrayMaker is now available [NEW VERSION]
Post by: jeanfabre on May 21, 2013, 02:30:54 AM
Hi,

 Thanks :) you are welcome!

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 03, 2013, 07:11:44 AM
Hi Everyone,

 Major new release of PlayMaker today :)

-- more goodies like ArrayListGetPrevious and HashTableGetNext
-- finally, a better support for Vector2 all around ( especially in the prefill inspector)
-- better handling of null values display

and now, ArrayMaker can be save and loaded at runtime!! Thanks for EasySave2. You can now download this as an add on form the usual wiki page:

https://hutonggames.fogbugz.com/default.asp?W715

it's not 100% ideal, I fail miserably to serialize data as bytes... so right now I simply serialize as strings, so not the most efficient in terms of space, but that will do just fine for now. I also support upload and download from servers using also easySave features and ready made php/msql system.

 Also, I wanted to make a note on something I discover lately, utomate, from the asset store, it's a automationg system for all the common tasks for project management, I am using this now to build all the various packages, it's SO MUCH BETTER than unity export option!! incredibly powerful! and very much inspired by PlayMaker, it features actions, a graph view, and lots of similar goodies, So if you are doing lots of painful repeatitive tasks with your project, I encourage you to check it out ( it's not a runtime system, it only works in Unity Editor).

Bye,

 Jean

ps: If I forgot to do something I promised for this update, shame on me, simply bump the related post, and I'll look it up :) thanks

Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Flying Robot on June 04, 2013, 03:21:18 AM
I've been using the ArrayMaker from the early version.

Jean, I just want to say, without your extension a range of games wouldn't be possible.

I'd happily buy this if you release a paid version of this someday.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 04, 2013, 04:12:51 AM
Hi,

 Thanks :)

 I am slowly getting my head around providing this on the assets store with the following plan in mind:

 I want to still keep ArrayMaker free, BUT on the asset store I would charge for it, and the free version would always be like 1 or 2 iteration behind, and available to download on the wiki as usual. so if I make something new, you would get it first on the assets store, and eventually the wiki version would catch up like 2 3 month down the line.

 So in practice, it's free if you want it, knowing this always behind the asset version.

 Essentially, users who would purchase it on the asset store would very much sponsor the development and thus get that edge over free users, which I think is fair. If I simply make a "donate" button, I don't think it works very well.

What do you say? I am making now a poll to see how much users would be ready to pay for such version on the asset store.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 05, 2013, 08:57:53 AM
Hi,

 Small update, with a new sample "Three in a row", showing how to check for winning combinations out of 9 cubes, basically checking for 3 matching colors.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Pawel on June 10, 2013, 09:20:21 AM
Jean,

Do you have any suggestions on how to learn what ArrayMaker is capable of? I would imagine that just as with PlayMaker, your main audience will be artists with very limited (or non-existent) knowledge of programming and understanding of arrays.

It seems to me that this would be a perfect tool to develop a game like Sudoku (I am sort of contemplating doing this...) -- Do you think this would be possible with just ArrayMaker, or it is beyond it's scope and you would need some hard core programming to make it work?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 11, 2013, 01:18:10 AM
Hi,

 Sudoku is very easy to do, and I actually don't really need ArrayMaker I would say.

 the difficulty comes into defining the grid in the first place, and for this I would suggest you find pre made grids, cause the logic to create a grid is for sure way above beginners levels,

When you have the grid, you simply hide few, and the user is responsible for working it out, not you, you simply match his guess with the grid you have internally. you don't need much here.

Have you already started with this?

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 11, 2013, 01:21:43 AM
Hi,

 Need to reply to your actual question :)

ArrayMaker is simply a bridge to lists and hashtable, if you want to learn about lists and hashtable, these doc will help you.

 as far as arrayMaker itself, it simply expose all the possible interaction you can have with list and hashtable, get/set, add, delete, pick a random, iterate throught them, etc etc. The difficulty when you start with all this, is not the features, but really how to apply ArrayMaker to fit your needs, and that comes more with experience then going through tutorial I think.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Flying Robot on June 11, 2013, 03:27:51 AM
A quick question Jean,

Do you plan to do 2D Arrays in ArrayMaker in the future? Would certainly make life a lot easier.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 11, 2013, 05:25:35 AM
hi,
 
I am facing this issue right now actually. I am currently preparing Json support, and it's problematic when json features nested lists and hashtables, right now the solution I went for is to save the list or hashtable as a string if you want to store it in a string, or if you pass a gameObject, then I look for the list proxy and inject the list or hashtable in there.

Supported nested list within ArrayMaker will make things very complicated on the front side, I haven't yet found a proper nice way to present this.

This will becomes a lot easier when I will enhance arrayMaker to be able to create list and hashtable in memory, so I will be able to present an editor window to preview and edit lists, and that will be easier then to provided nested support, cause the interface will have more room to provice all the necessary navigation functionnalities.

 I am also thinking of simply use XML behind the scene to provide access to data via Xpath, this is SOOO powerful! that might be something on the side, or maybe become part of the system, I am not sure yet.

It will become also a lot easier when creating custom Fsm Variable types will become available.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Pawel on June 11, 2013, 10:33:33 AM
Thanks Jean for your suggestions,

I've been going through and analyzing many Sudoku scripts in various programming languages that can find on the web. From what I can see they are using arrays... I've also bought the sudoku generating script from the asset store. (I knew is not very good as it repeats the same numbers over and over... I've wanted to know how the guy has approached the project).

Yes, I did consider doing what you suggest, as a last resort simply hiding and exposing field numbers of pre-made games. Of course this is not really the best solution -- you would only have the levels you manually input...

A real Sudoku game app would have to self-generate levels, so the sudoku addicts never run out of the juice. I suppose I will develop it manually and test it in the marketplace with pre-loaded games. If it generates enough money, I will hire someone to create a real game engine.

http://www.codeproject.com/Articles/23206/Sudoku-Algorithm-Generates-a-Valid-Sudoku-in-0-018
http://www.websudoku.com/
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Pawel on June 13, 2013, 10:14:49 AM
I have a question regarding Sudoku type of logic: Suppose I have 3 INT arrays setup and I need to pick a random number that is present in all 3 of those arrays... How do I accomplish that? The only thing I see is the "Array List Contains" action, but this seems such a long way to go to check individually every possibility -- Is there a faster way?


I wish there was an option to save only the items common to all arrays when merging into one using Arrays Concatenate... Would it be hard to add this kind of functionality?

Or perhaps expanding the "Array List Contain" to "Multiple Array Lists Contain" where you could specify the number of the arrays you want to check for an item...
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Flying Robot on June 18, 2013, 04:56:14 AM
I am also thinking of simply use XML behind the scene to provide access to data via Xpath, this is SOOO powerful! that might be something on the side, or maybe become part of the system, I am not sure yet.

It will become also a lot easier when creating custom Fsm Variable types will become available.

bye,

 Jean


Xpath sounds exciting. Will it be too much to ask for a system to call xquery on the xml from Playmaker.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 18, 2013, 05:25:55 AM
Hi,

 I have an alpha version of xPath, that I posted some time ago. I am currently giving it a second pass. More on this soon, meanwhile, get the alpha version here:

http://hutonggames.com/playmakerforum/index.php?topic=2583.msg11611#msg11611

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: cosmigo on June 26, 2013, 02:21:24 PM
ArrayMaker is of great help. However, I ran into some problem with "Array List Get Next" and possible bug. Iterating through an ArrayMaker List with GameObjects (set at Reference 1) seems to stop short of 1 before the end index. So a list of 9 Objects in my example seems to finish at 8. When I use the iterate function with the same start/end and use manual "Array List Get" it works fine. When I use a higher end index it seems to crash Unity (3.5). I would expect to user "Array List Get Next" in the same way as Iterate?

A minor typo is also in the ArrayMaker Inspector dialog "PLayMaker events" instead of "PlayMaker events" (cap "L"). Thanks for ArrayMaker!
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on June 26, 2013, 04:02:25 PM
Hi,

 thanks for spotting the typo, I'll fix it.

 Arrays indexes starts by convention ( in most languages ) at 0, not 1, so you have 9 items in your list, and the first item is index 0 and the last itme is index 8.

 I know...

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Cosmack on June 29, 2013, 08:23:15 AM
Thank you for the great add-on. It has been a huge asset.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: markinjapan on August 04, 2013, 12:01:32 PM
Hi,

Is it possible to put Objects (not Game Objects) in an array?

I see 'Get Object Data' in the 'Get Array List' acton but unsure of how to actually get Objects in there since there is no so 'Object' in the Prefill Type dropdown.

Or am I doing something wrong :/

Thanks

Mark

 
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on August 05, 2013, 07:44:52 AM
Hi,

 yes, I need to address this. I am not sure how to tackle it because I have then no way to show it in the inspector in an easy way. And using object can lead to very bad memory leak... so I am bit unsure how to go around all this.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: boblin on August 09, 2013, 12:14:20 PM
cannot make ArrayList "Copy To" work. There are two ArrayList named instances on one GameObject, one prepopulated and one empty. I try to copy from prepopulated to empty, and it seems not to work. What am i doing wrong?

"Array list Add" works under same conditions, so i can emulate "copy to" with "add", but it is not elegant way );

Thanks!
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on August 12, 2013, 04:54:12 AM
hi,

 Are you properly referencing both gameobjects. and are you using "reference" in both proxies?

does the console output something?

bye,

Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: boblin on August 13, 2013, 04:36:00 AM
I do reference, and console is silent.

I've figured it out more precisely.
It works, when i manually set number of elements to copy. So, duct-tape solution for me was to state number of elements to copy exceeding number of elements i was going to have in an array.

It seems that action processes "0" for number of elements too literally and actually copies none.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on August 14, 2013, 03:51:13 AM
Hi,

 Ah yes, good point. I have modified it so that by default it copies everything. It's now updated on the ArrayMaker wiki page.

Thanks for spotting this!

bye,

Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on September 10, 2013, 05:59:44 AM
This morning when i opened my project, i found that the arraymaker actions that i use totally wreck my FSMs. I made a state, threw in "Array List Get" and then when i try to add a transition, the transition shows "..." and i get nullreferenceexceptions. I tried creating a new project and just importing playmaker and arraymaker, and tried again. Did the same thing. I thought somehow my whole computer is screwed so i returned to a backup of windows from a few months ago (needed a reformat anyway) and did a fresh install of the newest unity and tried again. Exactly the same. Last night i was making arrays, no problem at all. I tried making some states with other actions and they seem to be fine. Then i tried some of the array ones and things go crazy. If i keep messing with it after i get those errors, the playmaker window will just go blank on that FSM and the FSM is gone.

Here's the error:


NullReferenceException: Object reference not set to an instance of an object
HutongGames.PlayMaker.FsmVariables.GetVariable (System.String name)
HutongGames.PlayMakerEditor.FsmSearch.FindVariableInField (System.Type fieldType, System.Object fieldValue)
HutongGames.PlayMakerEditor.FsmSearch.FindVariableUsage (System.Object obj, Int32 currentDepth)
HutongGames.PlayMakerEditor.FsmSearch.DoSearch ()
HutongGames.PlayMakerEditor.FsmSearch.Update ()
HutongGames.PlayMakerEditor.FsmSearch.Update (HutongGames.PlayMaker.Fsm fsm)
HutongGames.PlayMakerEditor.EditorCommands.AddTransitionToSelectedState ()
HutongGames.PlayMakerEditor.FsmGraphView.ContextMenuAddTransition (System.Object userdata)
UnityEditor.GenericMenu.CatchMenu (System.Object userData, System.String[] options, Int32 selected) (at C:/BuildAgent/work/cac08d8a5e25d4cb/Editor/MonoGenerated/Editor/GenericMenu.cs:111)

any advice? Love Arraymaker...
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 10, 2013, 06:17:49 AM
Hi,

 uhm... I never encountered this. Are you on unity 3 or 4 and are you using the the latest playmaker?

 Pm me if you can send me the project, If I can repro, I can find the problem.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on September 10, 2013, 07:55:01 AM
What do i need to attach? Just the scene files is ok or is something else needed? I know i shouldn't be attaching the whole playmaker and arraymaker etc.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 11, 2013, 02:56:32 AM
Hi,

 I have pm you.

 bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 12, 2013, 07:01:31 AM
Hi,

 ok, this is actually a PlayMaker bug, and it's currently fixed in the beta, it will become very soon available on the asset store. I'll update you when it's up.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on September 12, 2013, 07:26:38 AM
Thanks for the speedy reply. Is there a chance i can get my hands on the beta? Currently there is no way to resume work on any projects with the playmaker actions in them.

Thanks again for looking into the problem for me.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 12, 2013, 07:56:21 AM
Hi,

 Yes, simply pm Alex and request access to the beta referencing your bug report and this thread.

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on September 15, 2013, 08:58:28 AM
Hi,

I couldn't download the beta because of some problems accessing some websites but i just checked the asset store and noticed the new Playmaker is out. Just updated and like you said, the problem is all gone. Thanks so much for all the support. You really helped me through this problem and i'm so happy to be able to continue with my work.

Thanks again.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Mayhem on September 21, 2013, 09:48:44 AM
So, I have a little problem with ArrayMaker, a Prefab and Parenting.

Here is what I am trying to do:
For a 2D Game we made a Menu, a nice 2D-Book. When the Character gets a Quest, a new Page should be visible with Information and so on. So, the idea was to have an ArrayList which contains these Pages, and everytime the Player gets a new Quest a new GameObject-Item is added to the list. When that happens a new Page is created from the Page-Prefab-Object and parented to a certain Object in my GUI.

I'm testing this right now with a little Box (a future NPC :P ) which triggers an Event on Collision and sends the "NEWQUEST"-Event to the FSM which manages the ArrayList and the Creation of the Pages.


The Scene-Structure of the GameObjects:
(http://s14.directupload.net/images/user/130921/w4z5l4sh.png)

The FSM has got one GameObject-Variable:
(http://s7.directupload.net/images/user/130921/chit3ec3.png)

The ArrayList has no prefilled Items:
(http://s1.directupload.net/images/user/130921/kjnonbiz.png)


In the very first state I check if there is already an Item in the Array with the "Contains"-Method:

(http://s1.directupload.net/images/user/130921/ebojhi5n.png)

If it's false, I'm creating an Object (choosing the Prefab "Page" and storing the Object into the GameObject-Variable)
(http://s14.directupload.net/images/user/130921/qo74fvi8.png)

Then I add the Item to the ArrayList:
(http://s7.directupload.net/images/user/130921/bu4w4l2i.png)

Find the Object:
(http://s7.directupload.net/images/user/130921/3b57a3v5.png)

And then I set the parent:
(http://s14.directupload.net/images/user/130921/3qew2f3g.png)


IF the Player rans into the box again, of course the "Contains"-Method is checking again, and this time it will say it's true, since an Item was added to the ArrayList before. There I do almost the same but FIRST I do add the Item to the List and THEN I create a Page from Prefab, find and parent it.

So, what's the problem? The parenting. The first time it works just fine:
(http://s1.directupload.net/images/user/130921/kkxy2ieu.png)

But after that it doesn't parent the object anymore. It just creates them in the Scene:
(http://s14.directupload.net/images/user/130921/ybxlsn4q.png)

It's adding the items into the ArrayList, but does not parent them.

Where's my mistake? :)

!EDIT:!

I also noticed something. Seems like a bug to me:

- when attaching an ArrayList-Component to an Object and not filling it with Items (leaving the Prefilled Count at 0) and the game plays, it is not prefilled, but as soon you modify that Value and set it back to 0 as soon as you hit play it is prefilled EVERYTIME!
I think this is not intended...


!EDIT2:!

Made some tests with no ArrayList. OnTrigger I create the Prefab-Object and Parent it. The First time it's okay, but then it just creates in the scene, and not as a child of the selected GameObject.

(http://s1.directupload.net/images/user/130921/7xj7ueqf.png)

(http://s7.directupload.net/images/user/130921/tsx9ig5l.png)

(http://s1.directupload.net/images/user/130921/hgu87g7i.png)

It's definitely a problem with Parenting and not my Array-Structure. The Prefab is tagged with "GUIPAGE" and of course all the created Instances are also tagged with "GUIPAGE". Is this a problem? It seems it can't find the Object with its tag after the first creation again...also using the Name of the Object ("Page(Clone)") does not work.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on September 22, 2013, 08:17:07 AM
Delete "find with tag". The last gameobject that was added is already stored in the variable. Although you added it to the array, the variable still contains that gameobject that was just added. "find with tag" stores one of the instances with that tag but you have no control over which one it finds. My assumption is that it keeps finding the first one again and again and setting its parent to the same object again and again so it looks as if it just did it once for that one object.

If i understand correctly, that's your problem.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Mayhem on September 22, 2013, 11:01:55 AM
Yes, thank you, that did the job :D

Though, the problem for the Display of the Prefilled Items which I mentioned above still occurs. Seems to be an ArrayMaker-Issue itself.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: mweyna on September 22, 2013, 05:20:57 PM
So I'm trying to build a system in where if a new object is placed on the map, the characters will move out of the way. To do this, I have an array of game objects on the map, an array of valid squares (Int 0 - Blocked, Int 1 - Open), and an array of all Vector 3 coordinates on the map (0,0,0, 0, 0, 1) etc.

I'm trying to find a way to find the closest Vector 3 to my characters position, so that I can use that Index ID to properly find a nearby open position to tell them to move to. However, the only action seems to be "Find by Game Object" and nothing related to position.

In my FSM, I have my characters position, object position, but can't seem to find any action like "Find Index by Closet Vector 3"

Any thoughs how to accomplish this?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 23, 2013, 01:17:48 AM
Hi,

 Uhm, I'll look into this. Thanks for reporting.

bye,

Jean

Yes, thank you, that did the job :D

Though, the problem for the Display of the Prefilled Items which I mentioned above still occurs. Seems to be an ArrayMaker-Issue itself.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 23, 2013, 01:19:11 AM
If i understand correctly, that's your problem.

Thanks for spotting this and helping out on arraymaker questions, I would not have found it myself!

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 23, 2013, 01:34:00 AM
In my FSM, I have my characters position, object position, but can't seem to find any action like "Find Index by Closet Vector 3"

Any thoughs how to accomplish this?

Hi,

 In the arrayMaker samples, you have a "distance sorting" scene. It's not really a single action, but rather a process. I actually sort the whole list, you may not want that, but that would give you a starting point.

I agree tho, a custom action to do that would be good. Added on my todos... :P

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Laralyn on September 23, 2013, 04:17:19 PM
I'm getting a ton of use out of Arraymaker--thanks so much for providing it!  :)

I have a feature request: can you show hashtable contents in some kind of sort order in the inspector? It could be alpha-numeric by key, or it could be in the order in which they were added to the hashtable.

I'm using a hashtable to store the contents of a random dungeon generator. It stores each wall name as the key, and the contents as the data for that key. When I look in the inspector to try to troubleshoot errors, however, I see something like this:

1_40
23_6
14_8
32_5

instead of:

1_1
1_2
1_3

The funny thing is that the hash table entries were CREATED in the order above--so they're getting randomized in some fashion when they're displayed in the inspector.

It's even worse when I have multiple keys of related data. That means entries that could show up like this:

1_1_SizeX
1_1_SizeY

instead have those two entries scattered sometimes hundreds of entries apart. Once again, this happens even though those two entries were added to the hashtable consecutively. It makes it really hard to debug large hashtables.

Thanks!
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on September 24, 2013, 06:04:29 AM
Hi,

 Yep, I am very much aware of this, and I have no solution to this currently. Hashtable are not sorted, it's not meant to be sorted, and I am not sure what to do to overcome this. I may have to add an abstraction layer and maybe provide some sorting features.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: mweyna on October 06, 2013, 08:44:18 PM
When using the "Array List Create" option, how do you define the variable type (INT, GO, STRING, etc) that the list will contain? I'm trying to dynamically create an array, add some GO's to it, then remove it when I no longer need it. Right now I have the array creating, but it error's out whenever I try to add anything to it since the type is undefined.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on October 07, 2013, 02:43:10 AM
Hi,

 What error does it throw and what object are you trying to add?

ArraList are flexible, ANY type can go in, currently the custom action allows you to add the available types from Fsm variables, but that's only the context that restricts to these types. What Fsm variables are you trying to add?

Also, you can mix types within arraylist, you are not restricted to one type per array.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Mayhem on October 17, 2013, 08:22:46 AM
Hey there.

So I'm trying to get something to work, but I miss something, I guess.

So here is what I want to do:

- I have an ArrayListProxy with Bool-Types which are add dynamicaly by other Objects trough FSMs
- another FSM has the task to count the Bools in the ArrayList
- only 1 Bool-Value is set to TRUE at a time

Another FSM searches for that certain True-Bool-Item in the ArrayList and there's the problem. I can't figure out how I can exactly do that. I need to check the value while looping AND need to get the position/index of that bool-value. Can't figure out how to achieve this.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Mayhem on October 18, 2013, 07:39:17 AM
Any ideas on this?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: parallel on October 21, 2013, 10:25:12 PM
If the guy who does the official Playmaker video tutorials were to do a set on arraymaker I would be SO happy. He has a way of making easily understandable examples with interesting narration for non programmers. I must say that this thread and the example scenes hasn't really made it clear to me how it is used, I'm dense like that, and sometimes get it the best from watching other people build something step by step.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on October 22, 2013, 12:58:59 AM
Hi,

 I agree, it would be good. Unfortunatly, I don't have that quality and natural expression when doing screencasts, I tried but I am the first to admit it's below acceptable...

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: terri on November 11, 2013, 07:13:37 PM
Hey, I'm getting this weird behavior from the Array List Proxy. If you raise the prefill count, it seems to not be able to lower it again.

For example, I have one with a prefill count of 10, Game Objects. I raise to 15. I don't even have to run or save, if I just type 10 again and run, it will add 5 empty gameobjects.

I once tried to replace 18 with 19, but did it wrong and typed 1819. I corrected it right away, but now my array list is permanently fixed at 1819, when I run the game it shows 1801 empty gameobjects on the list.

The only fix I've found is to create a whole new array. Am I missing anything?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on November 12, 2013, 02:05:57 AM
Hi,

 Good catch! It was always there, I missed few things to properly account for downsizing and clean up prefills.

 Please download the ArrayMaker from the wiki again, thanks.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on November 17, 2013, 10:10:22 PM
I noticed what Terri said but it is a little more serious than he said if you work with hashtables. Raising the prefill count then lowering it will permanently get you errors when you start a game. The only way to fix it is to delete the component then start again.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on November 18, 2013, 01:19:24 AM
Hi,

 Can you redownload from the wiki page, this has been addressed, thanks for reporting!

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: terri on December 10, 2013, 04:40:36 PM
Hi,

 Good catch! It was always there, I missed few things to properly account for downsizing and clean up prefills.

 Please download the ArrayMaker from the wiki again, thanks.

bye,

 Jean

sweet, thanks man
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: mweyna on December 16, 2013, 04:04:30 AM
Is it possible to get a "Get Farthest Game Object" script? I'm finding for my project I need the polar opposite of the "Get Closet" action.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on December 16, 2013, 06:05:38 AM
Hi,

 ok, added to the trello task.

https://trello.com/c/FamlVQBD/31-arraymaker-update

Make sure you up vote this to get on top and done quicker :)


bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: 4ppleseed on January 21, 2014, 01:57:31 PM
I used this today for the first time and had simple ArrayTables working in minutes via Playmaker - just wanted to say thank you Jean  8)
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on January 21, 2014, 11:47:02 PM
Hi,

 Thanks for the feedback :) don't hesitate to also share where you find issues and possible improvments, not that I have time to do it, but I would document it within Trello to record everything properly.

https://trello.com/c/FamlVQBD/31-arraymaker-update

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: 4ppleseed on January 22, 2014, 05:54:37 PM
Quick question actually :)

If I have two lists; A and B, each has 10 items.

I randomly pick from A and it picks Item 8, how do I then also select Item 8 from B?

I've tried a few Array Get options and can't seem to randomly choose from A and match the index number for B.

Hope that makes sense?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: mweyna on January 23, 2014, 02:53:38 AM
You'd use the a INT variable for that random get, then another Array Get function with that INT Variable defined for the "AT INDEX" field.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Slater on January 25, 2014, 01:33:26 PM
So I've been hesitating to upgrade Arraymaker because of the warning text about not being compatible with previous versions. But since I needed the audio array thingy I updated today. However the console gives me 32 errors like these:
The fsmVar value <System.Single> doesn't match the value <System.String>
UnityEngine.Debug:LogError(Object)
PlayMakerUtils:ApplyValueToFsmVar(Fsm, FsmVar, Object) (at Assets/PlayMaker Utils/PlayMakerUtils_FsmVar.cs:311)
HutongGames.PlayMaker.Actions.ArrayListGet:GetItemAtIndex() (at Assets/PlayMaker ArrayMaker/Actions/ArrayList/ArrayListGet.cs:81)
HutongGames.PlayMaker.Actions.ArrayListGet:OnEnter() (at Assets/PlayMaker ArrayMaker/Actions/ArrayList/ArrayListGet.cs:58)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:Start()
PlayMakerFSM:Start()

What is wrong? What do I need to do?
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Slater on January 25, 2014, 02:20:51 PM
Ahh I think I found the problem. I think it is the array list get in my text fsm handler that got reset. I need to put it back to store "string" in my variable.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on January 27, 2014, 04:13:25 AM
Hi,

 Is it working now?

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: TheBadFeeling on February 01, 2014, 07:35:23 AM
At first, let me say that I really appreciate the work you put into making PlayMaker more versatile.  8)

But -- I really wish someone could hack together a simple (video?) tutorial showing the absolute basics of how to use arrayMaker. I am simply too n00bish to comprehend the "help-text" for each action -- and I can't quite understand how the samples do what they do.

Like a step-by-step, showing how to

As it is, I've actually had to write my own array read-write scripts myself instead and called them from PlayMaker events because I couldn't make head nor tail of how to use with the ArrayMaker actions. I think that should be an indicator for the fact that a tutorial is ... interesting.  ;D

And yes, I agree with parallel (http://hutonggames.com/playmakerforum/index.php?topic=835.msg25048#msg25048) that the official guy would be awesome -- but really, I'd be happy for, like, anything.  ::)

Please help us n00bs use ArrayMaker too.

Thanks again.
/Bad
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on February 03, 2014, 04:08:27 AM
Hi,

 This kind of usage is very simple actually. I'll work on very simple scenes to add to the samples for you to understand better.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: wickedw on February 03, 2014, 02:36:18 PM
Hi,

Just a quick note to say thanks for providing ArrayMaker, just using it for a "PlayMaker made only" level in my Game! and without it would have been forced into code :) (forcing myself to not stray into code for training / experimentation)!

Thanks again
Matt
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: Alatriste on February 05, 2014, 07:10:37 AM
Thank you very much for this. I just found it and I cannot wait to start playing with it!  :D
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on April 01, 2014, 12:36:04 AM
Hello,

I'm using 2 gameobject arrays to move things around on a grid and am having a small problem. There are 50 items in each array, the index is their location on the grid. I iterate through the first array and set them to the new index(which refers to their location) on the second array. The reason i use 2 arrays is so i will not iterate through things that have already moved and have a higher index that has yet to be iterated through.

The problem i'm having is this:

I clear the first array and copy over the second array then clear that too. After clearing, the second array has no "prefilled data" and so i can't set things to those index's anymore. All index's are out of range. Is there a way to just make everything null, or empty?

I'm really hoping i don't have to do 50 iterations of "add to array", with gameobject set to "none". Or have another array that is completely empty but prefilled that i have to copy to the second array each time.

Thanks,
bkups.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on April 01, 2014, 08:12:37 AM
Hi,

 Use the action attached, I will push a new version soon of ArrayMaker package, it will be in there as well.

bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: bkups2003 on April 07, 2014, 03:47:09 AM
Thanks Jean. You double the value of Playmaker.  :)
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on April 07, 2014, 06:39:13 AM
Thanks :)

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: PaulH on May 11, 2014, 06:59:38 AM
hi Jean,

Im trying to get my head arround ArrayMaker, i can see how powerful it is but i wish there were a tutorial.

Anyway Im trying to create a game object at the position of all objects with a certain tag.

so for example i want a button to be pressed and all bombs, missiles etc with that tag will be destroyed (i have figured that part with destroyObjectsByTag) but then at that same position (using the tag) of all those objects i instantiate a puff of smoke (for example) as soon as they are destroyed.

so i guess the action would be createGameObjectsAtTagPosition ?

many thanks for any help you can offer with this.

and can i just say Jean, you have saved my backside on 'many' occasions from your past answers. playmaker wouldn't be anywhere near as good if it wasn't for you.

Paul.
Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: jeanfabre on May 13, 2014, 07:42:57 AM
Hi,

 thanks :)

 On your topic, you are taking the painful approach I would say. you need to hink more Object oriented.

 give each of your object the ability to destroy itself and spawn a gameobject just before, and fire a global event "DO THIS" or something, that these gameobjects will receive and act upon.

Does that make sense? so you completly remove the need for complex list management and all.

 IF these objects may have different tag, simply check for the object tag when receiving that global event and if it matches proceed, else don't do anything.

bye,

 Jean

Title: Re: ArrayMaker is now available [JUNE 2013 NEW VERSION]
Post by: devos on May 21, 2014, 04:48:47 PM
Hi I want to know how to do to print all the elements of an array by
example Guitex.text = (all array content together)

or enter into a String variable. plz help
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on May 23, 2014, 07:39:43 AM
Hi,

 For this, you should use the "string build" action, and use the "ArrayListGetNext" action to loop trhough all elements and build the string.

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on May 23, 2014, 07:40:58 AM
Hi,

 new version if up on the wiki. Lots of new actions and fixes.

https://hutonggames.fogbugz.com/default.asp?W715

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on May 28, 2014, 12:43:16 PM
I am having issues with the "Array List Get Next" action. It errors in of your example scenes (eg. ObjectsPooling and Inventory)

It also errors when I try to use it in my own fsms. I get the following errors.

In Inventory sample scene - "The fsmVar value <System.Single> doesn't match the value <System.String>

In ObjectsPooling sample scene - "The fsmVar value <System.Single> doesn't match the value <UnityEngine.GameObject>

In my own scene (using Int variables) - "The fsmVar value <System.Single> doesn't match the value <System.Int32>

Thanks Jean!

EDIT: Fixed them by changing the "Type" field to the proper variable type.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: poopdecksweeper on July 02, 2014, 07:42:52 PM
Hi Jean,

I need some help, I have 4 arrows that appear on-screen when the game-started button is hit. I can make all the arrows turn different directions (0,90,180,270 Degrees) and I have setup an invisible touch box for user input based on directions swiped. My big issue here is that on the first swipe if the direction swiped equals the direction of the arrow the answer is correct, but then AFTER that I want the user input to step forward and move on to the second arrow. Can I use array maker to do this?

I don't know how to make the user touch input jump from arrow 1 to arrow 2 to arrow 3 to arrow 4 (if the user's swipes are correct to the direction of the arrows). Hope this makes sense. If not, then I'll forward a photo to show the actions. Thanks!
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on July 03, 2014, 01:07:28 AM
Hi,

 What you want to build is a sequencer.

 Using ArrayMaker, you can define the sequence ( say the konami code). use an arrayList, and store strings like "Left","left","up","up", etc.

 then when you start a sequence, keep track of the index in an fsm variable, and until the use hasn't produce the current step, you don't increment your index, so at index 0, you watch for the swipe left, as soon as you have a swipe left, you move to the next step by incrementing the index and getting the string at the index, so again left, etc etc.

Does that make sense?

bye,

 Jean
Title: Any way to get list re-ordering like this?
Post by: gsmetzer on July 03, 2014, 09:43:23 PM
I found this great link.

https://bitbucket.org/rotorz/reorderable-list-editor-field-for-unity

Is there a way we can add functionality to re-order array lists?  This would be hugely useful while editing projects. 
 Arraymaker is great so far.  Thanks for your work to implement it into Playmaker!
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: gsmetzer on July 04, 2014, 03:40:34 PM
Or is there a way to pull a list based on GameObjects in the Hierarchy window?  That would be great too.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on July 07, 2014, 10:28:42 AM
Hi,

 I am not sure what you mean here. Can you elaborate?

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: gsmetzer on July 07, 2014, 02:01:14 PM
In my project I have an array of vector positions for the camera.  I am able to use arrow keys so the camera can jump back and forth between the positions.  However, when I want to change the order of the list or insert a new vector I have to re-enter vectors into the rest of the list. Its tedious and time-consuming.
The solution would be to have a 'drag and drop' re-orderable list.  You can see this example in the link I posted. https://bitbucket.org/rotorz/reorderable-list-editor-field-for-unity  I wish I knew enough code to implement it.    After some research it seems that 4.5 has added new functionality for changing the order of lists.   
If you sold something like this on the asset store I would buy it too. 
Thanks Jean!
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on July 10, 2014, 08:53:26 AM
Hi,

 Yes, I am aware of this. I don't have time currently to address this, but definitly in my radar.

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: poopdecksweeper on August 05, 2014, 07:46:47 PM
Hi there Jean,

I am finally responding to the post about the sequencer. I have been trying to mess with the sequencer on and off to no avail. I believe that I have too many variables and the water is a little bit too muddy for me to follow it all. I have multiple game objects that are dependent on one another. The biggest issue I have at the moment is that when one of the four arrows faces the same direction as any of the other four arrows, once the user has swiped a direction, any arrows facing the same way will register the swipe. I cannot differentiate the difference between the sequence. I need some help and this seems like the last link in the chain before it all goes smoothly. Any help would be a godsend. Thanks. And If you need to see the project to understand I would be more than happy to do so.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on August 06, 2014, 06:11:01 AM
hi,

 I don't understan your feature, can you explain a bit more in details what you are willing to achieve?

bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: poopdecksweeper on August 07, 2014, 11:26:55 PM
Of course! The game is an arrow game that has four arrows that show up once you hit start. The four arrows can face up, down, left, or right, and once the arrows have chosen their random directions it is up to the user to swipe in the proper directions. What I am trying to achieve is that once the arrows chose their random directions, if any arrows face the same way, then once the user swipes in the first arrow's direction any other arrows that face that same way will act in the same manner as the first arrow. So basically I cannot figure out how to use arraymaker to make a proper sequencer. I've attached photos of some of the fsm's that I have made for the sequencer.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on August 14, 2014, 08:33:49 AM
Hi,

 ok, can you bump me beginning of september? and I'll do a sequencer in ArrayMaker. I won't have much time now, between Unite and Pax.

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: mweyna on September 11, 2014, 03:22:41 AM
Bump. Also, is there a way to send something to all objects within an array at the same time? I currently have the process where it goes to object 1, send command, object 2, etc. I'm looking for a way to have all objects get the same command at the same time. Any ideas?
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on September 11, 2014, 11:17:25 AM
Is there an action to get the sum of all values in an array?
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on September 12, 2014, 01:12:51 AM
HI,

 added to trello, will procees that later this month.

https://trello.com/c/jPAktQDt/77-arraymaker-update

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on September 12, 2014, 01:13:53 AM
@mWeyna

Allow me few more days :)

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on September 12, 2014, 09:19:29 AM
@jeanfabre

Did you use anything specific to format the "corncob_lowercase.txt" in the example scene? I tried using versions of this found online and also the upper case all caps version, but they don't work with arraymaker.

The only difference I can see is when you open them in notepad, your example version seems to have no spaces between words. I am just wondering how you got it to that point.

Thanks!
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on September 18, 2014, 07:27:11 AM
Hi,

 Could it be some hidden return chars messing with you here?

 What errors or trouble do you get exactly? can you send me the link to these files and I'll test.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: junglist on October 09, 2014, 02:11:11 PM
Hello Jean, I am having an error when using the latest versions of array maker and easy save.

If i try to use hash table easy save I get

Code: [Select]
HashTable undefined
UnityEngine.Debug:LogError(Object)
HutongGames.PlayMaker.Actions.HashTableActions:isProxyValid() (at Assets/PlayMaker ArrayMaker/__internal__/HashTableActions.cs:49)
HutongGames.PlayMaker.Actions.HashTableEasySave:SaveHashTable() (at Assets/PlayMaker ArrayMaker/Addons/ThirdParty/EasySave2/Actions/HashTableEasySave.cs:60)
HutongGames.PlayMaker.Actions.HashTableEasySave:OnEnter() (at Assets/PlayMaker ArrayMaker/Addons/ThirdParty/EasySave2/Actions/HashTableEasySave.cs:52)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:UpdateState(FsmState)
HutongGames.PlayMaker.Fsm:Update()
PlayMakerFSM:Update()

And if I try to load a hash table:

Code: [Select]
HashTable undefined
UnityEngine.Debug:LogError(Object)
HutongGames.PlayMaker.Actions.HashTableActions:isProxyValid() (at Assets/PlayMaker ArrayMaker/__internal__/HashTableActions.cs:49)
HutongGames.PlayMaker.Actions.HashTableEasyLoad:LoadHashTable() (at Assets/PlayMaker ArrayMaker/Addons/ThirdParty/EasySave2/Actions/HashTableEasyLoad.cs:67)
HutongGames.PlayMaker.Actions.HashTableEasyLoad:OnEnter() (at Assets/PlayMaker ArrayMaker/Addons/ThirdParty/EasySave2/Actions/HashTableEasyLoad.cs:59)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:Start()
HutongGames.PlayMaker.Fsm:ProcessEvent(FsmEvent, FsmEventData)
HutongGames.PlayMaker.Fsm:Event(FsmEventTarget, FsmEvent)
HutongGames.PlayMaker.Fsm:Event(FsmEvent)
PlayMakerApplicationEvents:OnApplicationPause()
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on October 16, 2014, 02:59:00 AM
Hi,

 Odd, I can repro this. Can you explain your setup, are you on a prefab, you must use an instance, not the prefab directly.

Maybe you can can share your scene? pm me if possible.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: junglist on October 16, 2014, 10:21:32 PM
Both the hash table and the playmaker fsm are on scene objects, no prefabs involved.

But a strange thing just happened...

I duplicated the project and deleted everything not related to saving this hash table, it is saving and loading perfectly fine when isolated. Must be a problem somewhere else in my project. I will try to figure this out and report back here tomorrow.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: rik on December 07, 2014, 12:55:29 PM
can some one make array sort for float and int values like low to high/ high to low

in to a unity package so i could better understand

thanks
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on December 08, 2014, 03:32:47 AM
Hi,

 Use "array Sort" to do a High to Low, and use Array Reverse ( after you've done the sorting) to do a low to high.

 Have you tried this already? or where you not aware of the Reverse Action?

 Bye,

 Jean
 
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Ced on December 27, 2014, 03:06:03 AM
Hi Jean, awesome work on arraymaker. Are there any plans for playmaker (or arraymaker) to support fixed-length built-in arrays in the future? I'm using arraymaker on a grid and there are times when I need to do "arraylist get" about 60 times in a single frame. I am targeting mobile so optimization is necessary and all of these arrays will stay the same length.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on December 28, 2014, 09:12:14 AM
Hi,

 60 calls is still ok, are you profiling and finding some issues on this particular access? if you do, make sure it's this call specifically and not what you do with the data, say you are getting a string and try to find a gameobject in the scene, that will be a problem. If you do general math or transforms manips, you'll be fine.

 PlayMaker 1.8 will come with a new FsmArray type of variable and this is using ( I believe) built in array, so this will be an option to investigate if performance is the bottleneck here.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Ced on December 28, 2014, 09:17:56 PM
Awesome to hear that built in arrays may be supported. I don't have the paid version of unity so can't use the profiler. Just read around the unity forums that if there is a choice, and you dont need to change to size of an array, then built-in arrays should be the primary choice.

My grid has an array on each tile that references the surrounding tiles. Usually it just uses a whole load of "gets" and a few "counts" for some other arrays that do change in length. I'll see how it goes.

I do look forward to playing with the FsmArray variable in the future.

Thanks Jean.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on December 29, 2014, 12:37:43 AM
Hi,

 Yeah. Tho, I would be very careful with the initial logic itself to access 60 times per frame. If it's during the game loop, I would strongly advice to review this part of your system and refactor it so that you access data only if you really need to, only very specific occasions.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Ced on December 30, 2014, 12:47:01 AM
It doesn't do this every frame, of course. Just each time a new tile is selected. So if someone swipes really fast, this could equal doing all that logic once every few frames.

Actually, talking about this did give me an excellent idea. I could simply make a delay on checking the range. As you swipe around, the selected square could be displayed (which is only like 2 arraylist gets), and if you sit on the same tile for a small amount of time, then it could do the heavy logic for checking all the surrounding tiles.

Thanks Jean, just talking about the problem already helped me come up with an easy solution.  ;)
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on January 12, 2015, 07:55:08 AM
Hi,

 this is always true. Having to formulate to someone else your issue forces you to be precise, and then the solution will become a lot easier to find as well!

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: 455224 on January 21, 2015, 07:26:25 PM
Hi Jean,
After finally fixing my lap timer (thanks again for your help!) I'm still working on my racing game and, as such, am making a waypoint navigation FSM using Arraymaker. I'm using the 'Array List Create' 'Array List Find Objects by Tag' and 'Array List Get Next' (with this having an Nect Event Trigger upon collision with an empty tagged 'waypoint') but for some reason the array wont fill with the waypoint objects? Can you confirm that this would be the correct order for the action string?

Thanks again,
Ross
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: mweyna on February 05, 2015, 03:58:25 PM
I know there is a "Array List Get Closest Game Object," but is there an Inverse? A Get Furthest Game Object action somewhere?
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on February 16, 2015, 07:15:04 AM
Hi,

 yes, ArrayListGetFarthestGameObject.cs

 is it not in your package? have you downloaded the latest from the wiki?

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on March 10, 2015, 07:27:52 PM
Will Arraymaker be updated for Unity 5?
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: sebaslive on March 10, 2015, 09:00:11 PM
Hey lovely peeps, I just started a post on Arraymaker tutorials. Give it a looksie if you want to get an intro look into it. *includes a package

http://hutonggames.com/playmakerforum/index.php?topic=9800.0
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on March 11, 2015, 01:49:11 AM
Hi,

 Updating PlayMaker Utils, then uGUi packages, arrayMaker, datamaker, etc etc, I am on the case!

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on March 19, 2015, 01:52:34 AM
Thanks Jean, good to know. Just a little something I noticed in the latest Unity 5 package from the wiki.

The "Array List Send Event to Game Object" action is not working as intended, it appears to be sending the event only to the owner of the fsm and not to any of the gameobjects in the array.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on March 23, 2015, 02:35:30 AM
Hi,

 d'oh :) thanks for spotting this. I fixed it. Please redownload from the wiki and let me know.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: Graham on March 30, 2015, 10:34:44 AM
Hi,

 d'oh :) thanks for spotting this. I fixed it. Please redownload from the wiki and let me know.

 Bye,

 Jean

That fixed it, however now this action will not allow the state to exit.
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: jeanfabre on April 03, 2015, 06:01:35 AM
Hi,

 ok, good catch. Please redownload from the wiki page. I can't wait to have more time to do another pass on the ecosystem and start including arrayMaker, and other packages, the problem is that when arrayMaker actions will become visible, I must have a system that when downloading I double check that you indeed have arrayMaker and visually indicates the procedure, but until then I can't put them on the ecosystem... this will be the enabler for any packages to be features there, so quite important.

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: jeanfabre on May 14, 2015, 04:51:56 AM
Hi,

 New version up, now downloadable from the Ecosystem (https://hutonggames.fogbugz.com/default.asp?W1181) :)

This version split third party and samples in separate folder for easier maintenance and clarity. So now you have a clean ArrayMaker folder.

Features haven't really progressed, tho it now supporty bytes ( in prevision of Photon turnBased addon support I am working on currently).


 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: mitchelq on June 04, 2015, 04:53:56 PM
Hi Jean,

I previously used the actions "Array list take snap shot" and "revert to snapshot" are these action available somewhere for unity 5 or are they still being updated?

Best regards,

Mitchel
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: mitchelq on June 04, 2015, 05:10:21 PM
I have already found the actions. When I download the package from the wiki it is all there, including the menu in the playmaker add-on menu. When I downloaded from the ecosystem I didn't get all that, also the actions are in a different tab on the action browser.

Edit: The action "array list add range" does not seem to work anymore. "Array list insert" does work, so I can use that multiple times instead.
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: jeanfabre on June 08, 2015, 05:58:00 AM
Hi,

 I don't see any problems with ArrayListAddRange. if you have a repro scene, let me  know, I am not sure what's happening on your side.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: djaydino on June 10, 2015, 11:25:17 AM
hi,

i just noticed a duplicate action :

"Hash Table Contains" and "Hash Table Contains Key"

they do both exactly the same only the name is different

greetings,

Dino
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: jeanfabre on June 10, 2015, 12:04:07 PM
Hi,

Yep, they match the .NET api for Hashtables, and so I choose to do both for the sake of accurary, but indeed they internally do the exact same thing.

http://stackoverflow.com/questions/2591045/net-hashtable-contains-vs-containskey

I won't remove either, because now projects depends on both, but it doesn't hurt, and I personally prefer using HashTableContainsKey because it's explicit, HashtableContains could lead to expect to check if it contains a Value...

Bye,

 Jean
Title: Re: ArrayMaker is now available [MAI 2015 NEW VERSION]
Post by: djaydino on June 11, 2015, 11:50:00 AM
ah. ok

Greetings,

Dino
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on June 16, 2015, 08:23:03 AM
Hi Everyone,

 New version up, mostly for cleanup and bring code into par with other packages.

You'll notice the option to use bytes instead of ints. This is for the up coming release of PlayMaker support for Photon turnbased system, where data will be able to be transfered over the network as bytes instead of ints: more efficient, and total support for existing work that may be using bytes already.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: djaydino on June 17, 2015, 12:10:35 PM
hi Jean,
i noticed on the Easy Save Actions
that the default save file is still : defaultES2file.txt

and the default from all other Action are : defaultfile.txt

Easy Save has changed the default a while ago.
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: djaydino on June 17, 2015, 12:52:22 PM
hi jean,

I took the time to edit them and i tested them also
I also checked if the filenames where not changed in the test scene and they where still defaultES2File.txt so that is good

ow and i changed "Save File" to Filename so they are the same as the other Actions

you can test them and update on github if you want.
the package includes the complete folder.

i can update it also, but i want permission from you then.

Edit : there is still some problem i found if file path is not defautES2File.txt
but this problem is also there on the original actions.
checking it now..
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on June 17, 2015, 01:24:49 PM
Hi,

 Yeah, of course you can make changes to fix things :) then I'll update the packages.

 you can also fortk the github rep and push your version, which would be even more efficient, but not mandatory.

 bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: djaydino on June 17, 2015, 01:35:16 PM
there is another problem but i don't know what to change

when i set (only tested hashLoad and save) a action on a different object and use specify gameobject to where my hashtable component is

i get a not found error :
Code: [Select]
Easy Save 2 Error: The data, tag, file or folder you are looking for does not exist. Please ensure that ES2.Exists(string identifier) returns true before calling this method.
UnityEngine.Debug:LogError(Object)
ES2Reader:ProcessHeader(Key, ES2Type, ES2Type, String)
ES2Reader:ReadDictionary(String)
ES2:LoadDictionary(String)
HutongGames.PlayMaker.Actions.HashTableEasyLoad:LoadHashTable() (at Assets/PlayMaker ArrayMaker EasySave2/Actions/HashTableEasyLoad.cs:83)
HutongGames.PlayMaker.Actions.HashTableEasyLoad:OnEnter() (at Assets/PlayMaker ArrayMaker EasySave2/Actions/HashTableEasyLoad.cs:59)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:UpdateState(FsmState)
HutongGames.PlayMaker.Fsm:Update()
PlayMakerFSM:Update()

when i move the action to the object where the component is it works
Title: Re: ArrayMaker is now available [MAI 2014 NEW VERSION]
Post by: terri on June 17, 2015, 02:35:46 PM
Hi,

 yes, ArrayListGetFarthestGameObject.cs

 is it not in your package? have you downloaded the latest from the wiki?

 Bye,

 Jean

Hey Jean,

Do you mind double checking this action? (  ArrayListGetFarthestGameObject )
To me it acts exactly like the one that finds the closest game object. Checking out the actual script, it seems like the variable names were changed from closest for farthest but other than that everything is working the same way.

Did I misunderstand something or maybe have the wrong file?
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: djaydino on June 17, 2015, 03:19:15 PM
there was a < that should be >

i could not find right way on github where i could update

you can copy paste this for now,

we will update asap
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: terri on June 17, 2015, 03:37:12 PM
there was a < that should be >

i could not find right way on github where i could update

you can copy paste this for now,

we will update asap

Thanks, I just tried it but it didn't work, now it always returns as None.
Any tips?
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: djaydino on June 17, 2015, 03:57:01 PM
hmmm, and ArrayListGetClosestGameObject does work?

i compared ArrayListGetClosestGameObjectInSight vs ArrayListGetFarthestGameObjectInSight

and i saw there that the < was different on each and on
ArrayListGetClosestGameObject / ArrayListGetFarthestGameObject
where the same

i think you will have to wait for an answer from jean then
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: terri on June 17, 2015, 04:13:53 PM
hmmm, and ArrayListGetClosestGameObject does work?

i compared ArrayListGetClosestGameObjectInSight vs ArrayListGetFarthestGameObjectInSight

and i saw there that the < was different on each and on
ArrayListGetClosestGameObject / ArrayListGetFarthestGameObject
where the same

i think you will have to wait for an answer from jean then

Yeah that makes total sense, but doesn't seem to work.
I tested ArrayListGetFarthestGameObjectInSight and that also didn't work (returns null)

Both ArrayListGetClosestGameObjectInSight and ArrayListGetClosestGameObject work perfectly which is what makes me think the problem is with the scripts and not on my end, though I could be wrong.

Thanks a lot anyways!

Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on June 18, 2015, 02:36:20 AM
Hi,

 Thanks for spotting this, I'll double check and push when I have fixes.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: terri on June 30, 2015, 04:47:29 PM
So I think I got it working, by flipping the < like djaydino did, but also changing this:
Code: [Select]
float sqrDist = Mathf.Infinity;to this
Code: [Select]
float sqrDist = 0;
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: 600 on July 02, 2015, 03:50:54 PM
Hi,

using the new version I get this error:

Code: [Select]
InvalidCastException: Cannot cast from source type to destination type.
HutongGames.PlayMaker.Actions.ArrayListGetClosestGameObject.DoFindClosestGo () (at Assets/PlayMaker ArrayMaker/Addons/Custom/GameObject/ArrayListGetClosestGameObject.cs:100)
HutongGames.PlayMaker.Actions.ArrayListGetClosestGameObject.OnUpdate () (at Assets/PlayMaker ArrayMaker/Addons/Custom/GameObject/ArrayListGetClosestGameObject.cs:77)
HutongGames.PlayMaker.FsmState.OnUpdate ()
HutongGames.PlayMaker.Fsm.UpdateState (HutongGames.PlayMaker.FsmState state)
HutongGames.PlayMaker.Fsm.Update ()
PlayMakerFSM.Update ()

When delete it and import the old one (could be May version), no errors.

Unity 5.0.1f1
PM 1.7.8.3

Any ideas if this is a easy fix? I’m about to submit an asset, should I include the working ArrayMaker in the pack (leaving it in the Assets folder) and later when Wiki have the fix then remove..?
Please advise :)
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: sebaslive on July 13, 2015, 05:11:15 PM
Is there a way to get the closest game object in sight and exclude self?
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: johannastephen on July 13, 2015, 07:51:57 PM
Hi. I upgrade Arraymaker and i have get many errors. i also delete the Utils" folder before update. here is logs:

The fsmVar value <UnityEngine.Vector3> doesn't match the value <System.Single>

How can i correct this? (The other scenes show same errors. about Vector3)
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on July 14, 2015, 12:31:16 PM
Hi,

 ok, I have pushed a version with the latest PlayMaker utils and also a better log for this error, you'll know the state fsm name and gameobject name, so if this happens again, go to that state and see what actions are there and if they are all in order, maybe a variable went missing or something.

else, can you also report the unity version and PlayMaker version? thanks.

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: 600 on July 14, 2015, 04:07:43 PM
Hi,
about this:
Code: [Select]
InvalidCastException: Cannot cast from source type to destination type.
HutongGames.PlayMaker.Actions.ArrayListGetClosestGameObject.DoFindClosestGo () (at Assets/PlayMaker ArrayMaker/Addons/Custom/GameObject/ArrayListGetClosestGameObject.cs:100)
HutongGames.PlayMaker.Actions.ArrayListGetClosestGameObject.OnUpdate () (at Assets/PlayMaker ArrayMaker/Addons/Custom/GameObject/ArrayListGetClosestGameObject.cs:77)
HutongGames.PlayMaker.FsmState.OnUpdate ()
HutongGames.PlayMaker.Fsm.UpdateState (HutongGames.PlayMaker.FsmState state)
HutongGames.PlayMaker.Fsm.Update ()
PlayMakerFSM.Update ()

"Array List Add Range" don't load variables to a list, it is empty and "GetClosest" can't find anything.

Unity 5.0.1f1
PM 1.7.8.3
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: johannastephen on July 14, 2015, 06:33:51 PM
Hi,

 ok, I have pushed a version with the latest PlayMaker utils and also a better log for this error, you'll know the state fsm name and gameobject name, so if this happens again, go to that state and see what actions are there and if they are all in order, maybe a variable went missing or something.

else, can you also report the unity version and PlayMaker version? thanks.

Bye,

 Jean

My playmaker ver 1.7.7.f6   Unity 4.6.1f1

Ok. I will try  ;)
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: johannastephen on July 14, 2015, 06:58:43 PM
Hi,

 ok, I have pushed a version with the latest PlayMaker utils and also a better log for this error, you'll know the state fsm name and gameobject name, so if this happens again, go to that state and see what actions are there and if they are all in order, maybe a variable went missing or something.

else, can you also report the unity version and PlayMaker version? thanks.

Bye,

 Jean

My playmaker ver 1.7.7.f6   Unity 4.6.1f1

Ok. I will try  ;)

Thanks Jean.  I solved it  :D I upgrade again with your updated Playmaker Utils. And it showed the errors with fsm names and gameobjects. When i look deeply, i see Array List Get and Set actions show Variable as Float. Not Vector3. I changed them to Vector3. It makes everything ok. Thank you again. This problem solved.  ;)

My advice, my forum friends should check their variable types after the update.
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on July 23, 2015, 09:21:50 AM
Hi,

 yeah, and if you get this, make sure you reference it here on ananother thread. Maybe we'll see a pattern in maybe the way things are upgraded or else so that we can try to avoid this kind of loss, which always a pain, so don't hesitate to report even if you know how to fix it.

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: ramones on September 28, 2015, 09:29:23 AM
Is there any way to use arrays to show in inspector as a native var? If not, is there any other alternative?

Cheers.
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on September 29, 2015, 04:56:56 AM
Hi,

 The next version of PlayMaker will have FsmArray built in, so you'll soon be able to do that :)

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on November 19, 2015, 09:59:49 AM
Hi Jean.
I'm using Array Maker "Hash Tables proxies" with easysaver 2.

I went to the forum to EasySave 2 to ask about good practices with large amounts of data to be saved, queried and deleted according to need.

Is there a limit of proxies Hashtables size in relation to the quantity of items?
As it impacts in Mobile performance?
It is a good practice to work with Hashtables proxies with up to 100 items and when necessary to save this Hashtables proxies Easy Save, or even load that file as needed?

In short I am wanting to create something like a CRUD PHP, but without the use of PHP just gave an example.

I just need a direction to proceed with my project.
Thank you very much in advance.
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on November 24, 2015, 04:53:58 AM
Hi,

 you can load your hashtables and arrayList with lots of data. It's not the problem, the problem is what you do with them. for example if you start looping trhough all items and do some heavy operation ofr each items, that is going to have an impact on performances, but the storage is only a question of memory, not performances.

 I ran some tests with arrays and hashtables with thousands of items, ( 47 000 on an arrayList), and it works fine, no impact on perfs, again because I am careful with what I do with this data.

so to sum up, the amount of data affects memory, not Fps, what you do with this data affects fps.


 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on November 24, 2015, 03:30:26 PM
Hi,

 you can load your hashtables and arrayList with lots of data. It's not the problem, the problem is what you do with them. for example if you start looping trhough all items and do some heavy operation ofr each items, that is going to have an impact on performances, but the storage is only a question of memory, not performances.

 I ran some tests with arrays and hashtables with thousands of items, ( 47 000 on an arrayList), and it works fine, no impact on perfs, again because I am careful with what I do with this data.

so to sum up, the amount of data affects memory, not Fps, what you do with this data affects fps.


 Bye,

 Jean


Thank you Jean .
I will follow with arrays and hash tables and EasySave2 . I'll think of something in relation to the loop.

Bye, Nilton.
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on November 26, 2015, 09:26:32 PM
Hi, Jean.
On how to deal with lop the results on the screen I got EnhancedScroller here:https://www.assetstore.unity3d.com/en/#!/content/36378 (https://www.assetstore.unity3d.com/en/#!/content/36378)
That they had not supported playmaker actions.
How could I call the results into an ArrayMaker or HashTables proxies, through code?
Would you help me?
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: rik on November 27, 2015, 06:59:22 AM
is there any problem with easy save2 it have arraymaker support
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on November 30, 2015, 07:32:51 AM
Hi, Jean.
On how to deal with lop the results on the screen I got EnhancedScroller here:https://www.assetstore.unity3d.com/en/#!/content/36378 (https://www.assetstore.unity3d.com/en/#!/content/36378)
That they had not supported playmaker actions.
How could I call the results into an ArrayMaker or HashTables proxies, through code?
Would you help me?

Hi,

 I actually purchased it a while ago, and yes, it needs supporting. I am unfortunatly very busy theses days, please allow me several days to provide support. Can you get back to me in a week or two?

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on November 30, 2015, 07:33:44 AM
is there any problem with easy save2 it have arraymaker support

Hi,

 As far as I know, all is running well. Do you experience any issues?

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on December 01, 2015, 06:48:09 AM
Hi, Jean.
On how to deal with lop the results on the screen I got EnhancedScroller here:https://www.assetstore.unity3d.com/en/#!/content/36378 (https://www.assetstore.unity3d.com/en/#!/content/36378)
That they had not supported playmaker actions.
How could I call the results into an ArrayMaker or HashTables proxies, through code?
Would you help me?

Hi,

 I actually purchased it a while ago, and yes, it needs supporting. I am unfortunatly very busy theses days, please allow me several days to provide support. Can you get back to me in a week or two?

Bye,

 Jean


Hi,

I will await counting the days for this to happen .
Thank you for your help.
Jean Fabre which would Playmaker without their contribution . Always with optimal solutions .

bye .
Title: Re: ArrayMaker is now available [DECEMBER 2015 NEW VERSION]
Post by: jeanfabre on December 16, 2015, 03:24:52 AM
Hi,

 ArrayMaker got updated to work with Unity 5.3 and PlayMaker 1.8Beta ( available in the Asset store as an option for install).

 Make sure you back up your project first, as always with any updates!

this updates uses the latest PlayMaker Utils, so no new features, just a maintenance update for compatibility

 Bye,

 Jean
Title: Re: ArrayMaker is now available [DECEMBER 2015 NEW VERSION]
Post by: terri on December 18, 2015, 07:44:24 AM
Couldn't find this on the Ecosystem, Hash Table Get Random
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on December 20, 2015, 08:17:26 PM
 EnhancedScroller ArrayMaker (Hashtable)?

Yes, I haven't forgot about it, I just have a lot on the table at the moment... I am sorry, keep bumping, it's not personal  ;D my todo task exploded...

Bye,

 Jean
Title: Re: ArrayMaker is now available [DECEMBER 2015 NEW VERSION]
Post by: jeanfabre on December 21, 2015, 01:33:42 AM
Couldn't find this on the Ecosystem, Hash Table Get Random

Thanks, I have added to the official set, so it' will be shipped in the next package.

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: jeanfabre on December 21, 2015, 01:37:00 AM
EnhancedScroller ArrayMaker (Hashtable)?

Yes, I haven't forgot about it, I just have a lot on the table at the moment... I am sorry, keep bumping, it's not personal  ;D my todo task exploded...

Bye,

 Jean

woah, I am sorry, I accidently edit your post instead of replying :)


Bye,

 Jean
Title: Re: ArrayMaker is now available [DECEMBER 2015 NEW VERSION]
Post by: jeanfabre on January 13, 2016, 02:02:09 AM
Couldn't find this on the Ecosystem, Hash Table Get Random


Thanks for this, it's now integrated in the package :)

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: jeanfabre on January 13, 2016, 02:04:15 AM
Hi,

 Just to ping this thread for a quick update of ArrayMaker for compatibility with Unity 4.7

Bye,

 Jean
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: johannastephen on February 24, 2016, 11:23:37 AM
Hi, Jean.
On how to deal with lop the results on the screen I got EnhancedScroller here:https://www.assetstore.unity3d.com/en/#!/content/36378 (https://www.assetstore.unity3d.com/en/#!/content/36378)
That they had not supported playmaker actions.
How could I call the results into an ArrayMaker or HashTables proxies, through code?
Would you help me?

Hi,

 I actually purchased it a while ago, and yes, it needs supporting. I am unfortunatly very busy theses days, please allow me several days to provide support. Can you get back to me in a week or two?

Bye,

 Jean


Hi,

I will await counting the days for this to happen .
Thank you for your help.
Jean Fabre which would Playmaker without their contribution . Always with optimal solutions .

bye .

Jean, I'm also waiting for this. Are there any updates?
Title: Re: ArrayMaker is now available [JUNE 2015 NEW VERSION]
Post by: nilton_felicio on March 01, 2016, 08:51:08 AM
Hi, Jean.
On how to deal with lop the results on the screen I got EnhancedScroller here:https://www.assetstore.unity3d.com/en/#!/content/36378 (https://www.assetstore.unity3d.com/en/#!/content/36378)
That they had not supported playmaker actions.
How could I call the results into an ArrayMaker or HashTables proxies, through code?
Would you help me?

Hi,

 I actually purchased it a while ago, and yes, it needs supporting. I am unfortunatly very busy theses days, please allow me several days to provide support. Can you get back to me in a week or two?

Bye,

 Jean


Hi,

I will await counting the days for this to happen .
Thank you for your help.
Jean Fabre which would Playmaker without their contribution . Always with optimal solutions .

bye .

Jean, I'm also waiting for this. Are there any updates?


Jean, also waiting so.

Any news
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: jeanfabre on March 02, 2016, 01:45:05 AM
Hi,

 I am back to normal now, so I should be able to give it a go soon.

 Thanks for your patience, please keep bumping.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: joel.carlson on March 31, 2016, 04:12:36 PM
Hey there, Jean! I'm running into a bit of a problem.

I'm using Github to work on my project across multiple computers. Once I switch to a new computer, it looks like any information in my Array List Proxy components are not retained on transfer.

Any solution to this? Thanks!

edit: I'm in 4.7.1f1
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: jeanfabre on April 01, 2016, 02:11:10 AM
Hi,

 That's odd and likely due to your ignore rules that is too severe or the unity project setup not set to use text based meta file.

 Can you paste the content of your gitignore file? pm me if you want to keep this private.

However, it could also be due that you are referencing scene objects from prefabs? could it be the case? these arrayList proxies are on prefabs right?

can you tell me what are your project Editor settings?

http://docs.unity3d.com/Manual/class-EditorManager.html

typically your "Version Control" property and "Asset serialization" property.

Bye,

 Jean
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: joel.carlson on April 01, 2016, 10:38:26 AM
Thanks for the quick reply! The array list proxies are on objects directly in the scene. No prefabs. Attached is my editor settings, and below is the ignore file. Many thanks!


/[Ll]ibrary/
/emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/Assets/AssetStoreTools*

# Autogenerated VS/MD solution and project files
ExportedObj/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd


# Unity3D generated meta files
*.pidb.meta

# Unity3D Generated File On Crash Reports
sysinfo.txt
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: jeanfabre on April 05, 2016, 02:25:20 AM
Hi,

 Your ignore rules is odd for the library, and it could be theproblem.

emp/

also, you don't rule out the

ProjectSettings/

maybe this is the problem.

also, maybe you could invite me to this rep and I'll try to see what I am getting when cloning on my computer.

Are you cloning with the same version of Unity and PlayMaker?

Bye,

 Jean
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: Beepio on April 30, 2016, 03:48:22 AM
Hey guys, im getting an error on load saying the defaultES2File.txt doesnt exist. The thing is, I dont want to save the defaultES2File.txt before attempting to load one in case there is data. Im using the same unique tag to overwrite data each time a player unlocks a level. So if someone played the game, unlocked a few levels then closed the app down and reopened, I want it to check if there is data first before attempting to save a fresh one over the top... any ideas would be much appreciated?

Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: marv on April 30, 2016, 06:41:24 PM
There is a "check if file exists" action on the ecosystem iirc. You could use it to check if the savefile exists and if it doesn't you simply don't trigger the load action.
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: Beepio on May 03, 2016, 08:55:28 AM
great! thnx so much!
Title: ArrayMaker conflict with AnyKeyString
Post by: replikant on May 10, 2016, 02:47:51 PM
hello



 there is no duplicate and I use ecosystem to install AnyKeyString

It seems to be a conflict with the array maker actions, because AnyKeyString works in a different project where arraymaker is not installed.



I receive this message once AnyKeyString is installed:

first error


Assets/PlayMaker Custom Actions/ArrayMaker/PlayerPrefsxGetArrayList.cs(233,63): error CS0103: The name `PlayerPrefsX' does not exist in the current context


second error


NullReferenceException: Object reference not set to an instance of an object
hello
UnityEngine.UI.Graphic.OnRebuildRequested () (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/UI/Core/Graphic.cs:480)
UnityEngine.UI.GraphicRebuildTracker.OnRebuildRequested () (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/UI/Core/GraphicRebuildTracker.cs:33)
UnityEngine.CanvasRenderer.RequestRefresh () (at C:/buildslave/unity/build/artifacts/generated/common/modules/UI/CanvasRendererBindings.gen.cs:314)


Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: jeanfabre on May 11, 2016, 02:41:25 AM
Hi,

 PlayerPrefsxGetArrayList is a custom action not part of the official ArrayMaker package, so you are likely missing the related class for this action.

you can get it here: http://wiki.unity3d.com/index.php/ArrayPrefs2

then this error will go away, once you've done that, let me know if you still have problems.


Bye,

 Jean
Title: Re: ArrayMaker is now available [JANUARY 2016]
Post by: dudebxl on May 11, 2016, 09:18:38 AM
Hi,

@replikant, also another way is to download playerprefx from the pm wiki for the action to work.

link: https://hutonggames.fogbugz.com/default.asp?W1118

that action was build to work with playmaker playerprefsx
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on September 19, 2018, 02:55:09 AM
Hi Everyone,

 ok, a new version of ArrayMaker is up, with a notable new feature, ArrayTable.

 This is a new component that accepts a header as arrayListProxy to define the names of the columns, and as many column as you need, also reference each an ArrayList proxy.

 This ArrayTable wrap around all these arrayList with a set of dedicated actions to work with this data like a table, you access it either using the column name and row index, or column index and row index. you can get and set data directly, extract rows as arraylist or hashtable ( using the columns headers as keys for each value), etc etc.


 Let me know if you want more features,

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: edufurla on September 19, 2018, 05:15:12 AM
Thanks, Jean.
That's a fantastic addition. I will give a try as soon as possible.
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: Fat Pug Studio on September 19, 2018, 10:12:52 AM
Sounds good, can't wait to try it out!
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on September 24, 2018, 11:43:34 AM
This sounds SO cool Jean, a great addition and I'm excited to play with it :D
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on January 20, 2019, 06:19:04 PM
Hi Jean,

I've just updated a 2017.3 project to  2018.3 (new prefab system) and noticed some odd behavior with Arraymaker in the form of Array Lists and Hash Tables.

It seems when dragging a prefab into a scene that already has array lists/hash tables on it with set reference strings, those strings aren't carried over?

Example:

This is the opened prefab, note the reference strings on the arrays/hash tables.

(https://i.imgur.com/iAGQhmt.png)

This is it once it's been dragged into a scene.

(https://i.imgur.com/fSy1vrW.png)

And as you can see there's no current overrides on it.

(https://i.imgur.com/VFBdkxY.png)

Let me know if there's anything I can test/do. Worried about a bunch of broken things from this ;)

best,

craigz
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on January 21, 2019, 12:33:43 AM
Hi,

 crap... let me have a look at this.

 Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on January 21, 2019, 02:20:58 AM
Sounds good xD

 :o
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on January 21, 2019, 02:44:30 AM
Hi,

 It's odd, I can't reproduce. I have created a prefab from a scene object with a proxy, reference is set. and when I create new istances out of it in the scee, it's all good.

- maybe I am missing a step?
- what version of ArrayMaker is it
- does this happen only on this project? can you try on a fresh one?

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on January 23, 2019, 01:04:09 AM
Strange :/

- maybe I am missing a step?
Nope! That was the correct order xD

- what version of ArrayMaker is it?
Not particularly sure, probably a version that's at least 8 months old? I just updated to the latest version now though and this still seems to persist (after I've already updated to 2018.3). This is my main game, been in production for a while, so it's seen quite a few PM/Arraymaker updates :)

- does this happen only on this project? can you try on a fresh one?
Seems to only happen on this project :/

Any ideas/thoughts?
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on January 23, 2019, 02:19:31 AM
Hi,

If you create a brand new prefab similar to your existing ones, does it still do this?

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on January 23, 2019, 05:45:48 PM
1) I dragged the old prefab into a new scene, unpacked it completely, then reprefabbed it, the blank references persist.

2) I dragged the old prefab into a scene, unpacked it completely, set its references again, prefabbed it. Any changes I make propagate correctly.

3) *FIX* I opened up the prefab, cleared a reference string, then retyped it in, the prefab then auto-saved itself, and now all the OTHER array/hash references on the prefab seem to have updated/returned. So it looks like just some change needed to happen ON the prefab IN prefab edit mode to fix the reference fields. So the data IS there, it just needed some sort of refresh? Weird, I don't understand it, but I'm thankful it worked :)

Hope this helps in some way, though I'm thinking it might have been a fringe case.

Thanks for all the help with everything Jean, it means a lot to me! :)

-craigz
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on January 25, 2019, 01:42:05 AM
Hi,

 ok, let's see if we get the same issue some more, right now I can't repro, so I am not sure if there is something I can adjust or if it's a Unity issue.

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: craigz on January 25, 2019, 02:02:21 AM
Of course, I think it was probably just the mix of upgrading Playmaker and THEN going to 2018.3. Probably a fringe case :)

Thanks Jean!
Title: Re: huge bug when compiling.
Post by: pierre nay on August 14, 2019, 05:14:33 AM
WHILE  TESTING
dynamically filled arrayListproxies   can be used to transfer data to and from scripts, playmaker actions AND game objects.

AFTER COMPILING
dynamically filled arrayListproxies yields unreliable results when passing data to game objects , like fail
 
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: djaydino on August 14, 2019, 08:04:52 AM
Hi.
@pierre

I use array maker a lot and did not encounter this issue yet.

can you give more details on this?
What unity version / what playmaker version / which platform you compile to
How you fill the array and or how we can repo this.

Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jrDev on August 22, 2019, 12:43:10 AM
Hello,

I am new to arraymaker. What I want to know is what is the difference between using arraymaker and the regular array actions that come with playmaker?

Thanks,
jrDev
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on August 22, 2019, 02:17:35 AM
Hi,

 ArrayMaker was built before PlayMaker introduced arrays, but the implementation differs and both have their use.

- ArrayMaker uses external component to store data, which makes editing easier, and more open and easily accessible to c# scripts
- ArrayMaker features Hashtables, not just array, which is a powerful way to declare key/value pairs, while array only give you a list of values.

Basically, ArrayList is more versatile, while FsmArray is more integrated in the PlayMaker workflow.

I use both, FsmArray is good for simple use and when the list belongs to the logic ( for example you get a list of objects from a raycast), but as soon as data become complex and external to the logic itself ( for example level progress data), then ArrayMaker is the way to go.

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: Broken Stylus on August 23, 2019, 01:48:01 PM
Talking about arrays, has anyone here found a complete 2D matrix system for Unity, something to avoid relying on external tables tool like Excel?

I managed to fake one to some degree by using variables with several elements so, for example, using quaternions in a hash table, I could mimic a n rows x 4 columns matrix.
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: jeanfabre on September 11, 2019, 04:58:23 AM
Hi,

ArrayMaker has a component called ArrayListTable, have you tried it? It has a set of dedicated actions to work with it as well.

Bye,

 Jean
Title: Re: ArrayMaker is now available [SEPTEMBER 2018]
Post by: Broken Stylus on September 11, 2019, 06:37:35 AM
Right. That sounds like very good news.
I will have to try that in a new project. When doing the migration for the current one and tried to update AM with the master file from Gitbuh, I came across some Array Table scripts that were throwing a bajillion errors, so I simply nuked them, just to be sure. Worked like a charm after that.  ;D 8)
But now I see them, lurking in the deep recesses of the ArrayMaker package on the Ecosystem, those occult scripts.
I'll check on them and see what I can get out of them.
Thanks.
Title: Re: ArrayMaker is now available [April 2021]
Post by: jeanfabre on April 05, 2021, 02:47:04 AM
Hi Everyone,

 New updated version of ArrayMaker, with a fix for ArrayListSendEventToGameObjects which will not throw error anymore for the event you choose.

Bye,

Jean
Title: Re: ArrayMaker is now available [April 2021]
Post by: Abelius on July 14, 2022, 02:44:26 PM
I've been looking for a "Hash Table Copy To" action, the same as the Array List action, to no avail.

Did I miss some other action that does the same in one go? Or I'll need to make one myself?

Thanks.
Title: Re: ArrayMaker is now available [April 2021]
Post by: Lost Dragon on October 18, 2022, 02:38:52 PM
When I click the link or the ecosystem link I get

FogBugz    

Account Not Found

We cannot find the account corresponding to hutonggames.fogbugz.com in our records.
Title: Re: ArrayMaker is now available [April 2021]
Post by: djaydino on October 20, 2022, 12:12:56 AM
Hi.
Here is a direct ling to the Ecosystem download :
https://github.com/jeanfabre/PlayMaker--Ecosystem--Browser/blob/master/Packages/Ecosystem.unitypackage?raw=true

you can find array maker on the Ecosystem
Title: Re: ArrayMaker is now available [April 2021]
Post by: Broken Stylus on June 09, 2023, 07:15:39 AM
Hi Everyone,

 New updated version of ArrayMaker, with a fix for ArrayListSendEventToGameObjects which will not throw error anymore for the event you choose.

Bye,

Jean

Will there be a support for storing enum values, assuming the enum type can (or must) be defined beforehand?
Title: Re: ArrayMaker is now available [April 2021]
Post by: djaydino on June 11, 2023, 11:17:30 AM
Hi.
I believe that it already can work if you populate during runtime.
else you can also use the enum index (int)