Playmaker Forum

Playmaker Help & Tips => Windows Phone 8 Help => Topic started by: ergin on August 04, 2015, 08:02:15 PM

Title: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on August 04, 2015, 08:02:15 PM
Hello,

my app builds fine to Android but fails at windows phone

I use .xml as text asset and Datamaker for arrays. Projects without Playmaker builds to windows phone fine.

Screen Capture is attached. Thanks
Title: Re: Failed to build for windows phone
Post by: ergin on August 05, 2015, 05:40:43 PM
Projects with playmaker builds fine to windows phone but as soon as I import DataMaker into project, build fails with given errors. So it is Datamaker. I don't even bind or use any datamaker component its only imported...
Title: Re: Failed to build for windows phone
Post by: jeanfabre on August 18, 2015, 10:47:21 AM
Hi,

 I am pretty sure I updated DataMaker to counter this issue few weeks agi. Can you download it it again, and if that doesn't work, tell me which version of DataMaker and PlayMaker utils you have ( in the folders, you'll have files like "VersionInfo" or changelog" to find the version number)

 Same with the Warnings, if you get uGui full package from the ecosystem, the warnings should go awa too ( fixed it yesterday).

Bye,

 Jean
Title: Re: Failed to build for windows phone
Post by: ergin on August 19, 2015, 03:11:21 PM
Hello and thank you for the reply!

Playmaker version: 1.7.8.3
Unity 5.1.2f1

#DataMaker Change log ### 1.0.3
{"Major":1, "Minor":0, "Patch":3, "Build":3, "Type":"f"}

#ArrayMaker Change log### 1.1.3
Arraymaker {"Major":1, "Minor":1, "Patch":3, "Build":0, "Type":"f"}

#PlayMaker Utils Change log### 1.1.3
{"Major":1,"Minor":1, "Patch":3, "Build":0, "Type":"f"}

#PlayMaker uGui Change log### 1.1.1
{"Major":1, "Patch":1, "Build":1, "Type":"a", "Minor":1}

When I get and install datamaker - ugui packages from ecosystem I get the attached screen capture error. ("Assets / Run API updater" is disabled)

Also, I develop my project at another offline computer. How can I transfer ecosystem downloaded packages into offline computer?

Thanks again.
Title: Re: Failed to build for windows phone
Post by: ergin on August 20, 2015, 03:00:08 PM
I downloaded and installed all the addons from ecosystem. Project still doesn't build for windows phone.

As soon as I Import datamaker into any project, it doesn't build for windows phone. Still builds to android.

Is there any others steps that I might have missed such as installing the plugin. Plugin is present at the plugins folder, is there any other thing I have to do?
Title: Re: Failed to build for windows phone
Post by: ergin on August 31, 2015, 04:44:13 PM
I still couldn't make Datamaker projects build to windows phone, could it be the amd cpu? (since all of my cpu's are)
Title: Re: Failed to build for windows phone
Post by: jeanfabre on September 02, 2015, 10:18:24 PM
Hi,

 I am testing right now. I'll get back when I have found the issue and provided a fix.

Thanks for giving me the versions, it helps, I am glad this is coming useful, it took me a while to start maintaining version info but it's good!

 Bye,

 Jean
Title: Re: Failed to build for windows phone
Post by: ergin on September 03, 2015, 05:22:19 AM
Thanks, I look forward for the fix.
Title: Re: Failed to build for windows phone
Post by: jeanfabre on September 07, 2015, 11:19:04 PM
Hi,

 Unfortunatly, after trying several ways to make datamaker work on windows phone, It's just not compatible as is.

You can work with Json however, which is likely why I got confused because I fixed json support for the windows platform ( within PlayMaker Utils and the Ecosystem), but not xml.

 The problem is that windows phone has a special sub set support for what Unity/.net provides in general, and xml has been replaced by a version that has less support, and xPath. which means for DataMaker to work on Windows Phone, it would need a specific version using some specific commands and the logic to use to search in your xml would be different which means you would not be able to port a unique project across different platforms.

 It's very bad that Windows which created the .net, is the one not supporting it properly, whereas other mobile platform support it better... it's very frustrating indeed.

 I made a note on the wiki. I am also working on a project scanner within the Ecosystem which will provide in depth analysis of waht's compatible and not, this should prevent ending up in your situation.

If your project is locked because of this, we could discuss your actual needs and find an alternative so that it works across platforms.

 Bye,

 Jean

 
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on September 08, 2015, 08:36:41 AM
Thank you! I'm currently completing the android version and as soon I finish it, I'll switch to json for windows phone.

Thanks for the great support!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on September 09, 2015, 12:01:25 AM
Hi,

 Good. Let me know how it goes.

 Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on December 22, 2015, 11:47:03 AM
Hello Jean, thanks for great support!

I finished android version of the game, now I want to implement Windows Phone version.

Since "as soon as" I import datamaker into unity3d, it doesn't compile, How I can use Json with datamaker? Is there way to do it without datamaker? Do you have any recommendations? I have around 1000 strings(which are around 200 chars each) I store/search these strings with datamaker inside .xml file. If I store each string as variable string0001, string0002 would this cause memory issues?

Thanks!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on December 22, 2015, 10:39:12 PM
Hi,

 I would use arrayMaker, have a text file where each line represent one string, you can then split your text using the Return char, and you end up with an arrayList of yll your strings.

use the action "SplitTextToArrayList" to do this.

It will not be practical to create 1000 variables manually... and it would not be possible to work properly with it since you would have to hardcode access to each variables... so it's simply not doable like that.

 Explore what I mentionned above for the text split. This is how I would tackle this myself.

trick: to generate this text file, use DataMaker! make a scene that parse your xml and create this string, it will prevent you doing this manually. so have another project where you simply create a scene for this conversion.


 Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on December 23, 2015, 01:30:52 PM
Thanks!  :)

Arraymaker worked great with windows 8 phone. I'll implement the game the way you explained. I hope after splitting whole text into array it will not cause memory issues.

By the way I made use of Split text into Array List a lot in my game but I really missed/needed "serialize array into text". Build string works kinda same way but a loop is required to serialize whole array(array(0), array(1),..) into text!

Note: When I imported arraymaker, it created a folder called datamaker along with arraymaker and it didn't compile, I deleted the datamaker folder and it compiled.

Thanks again!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: dudebxl on December 23, 2015, 01:47:57 PM
what do you mean by 'serialize array into text'? Saving/loading arrays?

If yes then you can you playerprefsX array extensions on ecosystem (for small /med size array +/- less than 300 indexes) or playerprefsQ (in this forum) for really large arrays. PlayerprefsX extension uses the normal playerprefs file and playerprefsQ saves into a basic txt file which you can find the path to (action incl). You can then see how it is built.. and if you know a tiny bit of coding you could change how playerprefsQ saves to a format you like.
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on December 23, 2015, 02:46:21 PM
Hello dudebxl,

I mean; when you have an array which contains "a" at index 0 and "b" at index 1. how can you make a combined string out of this array.(serialization) Normally if you have two strings which is sa = "a" and sb = "b" you can use build string which basically + these strings together. (sc = sa + "," + sb) What I need is (sc = a(0).ToString + separator + a(1).ToString) or (+ all)

Thanks!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: dudebxl on December 23, 2015, 02:52:47 PM
ah.. ok thanks for the explanation  :).. you could always build the action for this purpose, should be easy.
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on December 23, 2015, 04:04:42 PM
Thanks dudebxl!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: dudebxl on January 05, 2016, 12:48:16 PM
I was reading this: https://www.facebook.com/gaddygames/photos/a.549523828427899.1073741827.294549080592043/991991537514457/?type=3&theater

... so I converted to playmaker actions:
- ConvertIntToStringFast
- BuildStringFast
- ArrayListBuildStringFast
- ConvertFloatToStringFast

I have not modified the code so it should be as quick as he says (ref: Cstring).


on ecosystem or https://snipt.net/dudebxl/
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on January 05, 2016, 02:55:48 PM
Thank you for your great interest dudebxl!

ArrayListBuildStringFast works great and is exactly what I needed!

Thanks Again!
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on January 12, 2016, 11:48:44 PM
Hi,

 when you have issues with building, please paste the errors you get else we won't be able to held you.

 in the case of DataMaker, It could be that you need to switch to ".Net 2.0" int he player settings, instead of ".Net 2.0 subset". have you tried this?

 Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on January 13, 2016, 12:15:04 AM
Hello and Thanks for Great Support.

I removed datamaker and made working version with arraymaker only, which works fine inside unityeditor and builds into MSVSS project for windows phone 8. But when I deploy project into the phone, from the Development Console I get the error "The fsmVar value <System.Single> doesn't match the value <System.String> on stateSTATENAME on fsm:FSM on Gameobject:OBJNAME"

stateSTATENAME is the state where only "Split Text into Array List" is present and I both tried it with .txt and string variable with different types of seperators(new line, char).

everything else seems to work fine but I can't turn my text into array inside the phone.

Edit:
I tried ".Net 2.0", instead of ".Net 2.0 subset", didn't solve the problem.

Thanks again.
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on January 13, 2016, 12:34:15 AM
Hi,

can you try to use the custom action "GetStringWithoutBOM" on your string before using it with datamaker and arrayMaker? this action should be in your project shipped with ArrayMaker.

Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on January 13, 2016, 03:42:54 AM
Hello,

I tried it with GetStringWithoutBOM, error message didn't change.

Thanks again.
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on January 13, 2016, 06:19:45 AM
Hi,

 ok, so basically the problem is as follow, in that state, you have an action that points to an FsmInt and it should actually be an FsmString. Can you paste a screenshot of the stack of actions you have on that state: OBJNAME/STATENAME/FSM?

Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on January 13, 2016, 09:30:40 AM
Hello,

most right is a direct screen capture from the phone.

Thank you!

(http://www.ergin3d.com/images/screen1.jpg)
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on January 13, 2016, 10:51:04 AM
Hi,

 ok, and what's the content of the text you split? can you give a sample?

 Bye,

 Jean
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: ergin on January 13, 2016, 11:18:03 AM
Hello and thanks for great support.

mytext is utf8 text with turkish chs in it but it doesn't split "any text" such as: text1,text2,text3 (with no special chars in it)
or
text1,t1option1,t1option2;text2,t2option1,t2option2

"split text to array" works great under unity editor or android or windows 8

but fails at windows phone 8.

other arraymaker actions work fine such as array list add, array list get

BuildStringFast doesn't work as well...

Thanks.
Title: Re: Failed to build for windows phone, [DATAMAKER INCOMPATIBLE]
Post by: jeanfabre on January 13, 2016, 01:17:29 PM
Hi,
 
uhm, interesting indeed. Can you pm me with a real extract, even if I don't understand turkish, I think the problem may lie in the character encoding.

 what I would do on your side, is to output the content of the string you try to split on your device screen, just to triple check that indeed you are parsing what you expect.

I would also search in general forum for potential issues with turkish encoding and windows phone specifically. I don't see why it work everywhere else but on one device, if that's the case, surely, you are not the only one to have faced this issue. and so I woudl look outside the Unity workd, and certainly in .NET in general.


Bye,

 Jean