NodeCanvas Forums › Support › Windows Store Apps Build Error
i get following error;
AssetsNodeCanvasScriptsCoreBlackboardBlackboard.cs(8,36): error CS0234: The type or namespace name ‘Formatters’ does not exist in the namespace ‘System.Runtime.Serialization’ (are you missing an assembly reference?)
additional errors;
AssetsNodeCanvasScriptsTasksConditionsCheckFunction.cs(42,30): error CS1061: ‘System.Type’ does not contain a definition for ‘GetMethod’ and no extension method ‘GetMethod’ accepting a first argument of type ‘System.Type’ could be found (are you missing a using directive or an assembly reference?)
AssetsNodeCanvasScriptsTasksConditionsCheckFunction.cs(42,64): error CS0117: ‘System.Type’ does not contain a definition for ‘EmptyTypes’
WP8 and Windows Store Apps, both have lot of limitation.
I am looking at making it compatible if at all possible, since I use stuff that those platforms simply don’t support.
So even if I manage to support those 2, some features will still be missing.
Join us on Discord: https://discord.gg/97q2Rjh
if start with wp8 and windows store apps then other platforms will have limitation. 🙂
i am sure that you can handle it with unity platform dependent defines.
i make my games for platforms; ios, android, mac os, wp8 and windows store apps. i quit playmaker because it is not compatible with all platforms and it does not give source code. also it has no collider option on any action. so your asset is great for me. if you make it compatible with all platform it will be perfect 🙂
I use lot of reflection API that WP8 and WSApps dont quite support, but I will do my best.
I suppose that you can build fine in ios, adroid and MacOS?
Join us on Discord: https://discord.gg/97q2Rjh
you can write a plugin for few reflection methods and call them for those 2 platforms with #if UNITY_WP8 and UNIT_METRO.
is there any progress/plan for windows store apps and windows phone 8? those platforms are MUST for me. also i have to use a FSM. so if you do not plan to make nodecanvas compatible with those platform soon, i have to find a solution like starting modify your core.
Hello,
I am working on it, but it would really help if you could send me all errors that apear unless it’s only the ones posted above. It would help since can’t really build on windows 8 or store.
Thank
Join us on Discord: https://discord.gg/97q2Rjh
do you have windows 8? you could get the same errors when you attempt to build for windows store apps on unity. there are 39 errors. i do not know how to copy and paste all once. i could add screenshot.
for phone 8. there is no build error. i get following error when i debug my game;
Exception: Attempt by method ‘NodeCanvas.Conditions.CheckEvent.Unity_Deserialize()’ to access method ‘NodeCanvas.Task+TaskAgent..ctor(UnityEngine.IUnitySerializable)’ failed.
Type: System.MethodAccessException
Module: Assembly-CSharp
InnerException: <No Data>
AdditionalInfo:<No Data>
at NodeCanvas.Conditions.CheckEvent.Unity_Deserialize()
at UnityEngine.IUnitySerializable.$Invoke0(Int64 instance, Int64* args)
at UnityEngine.Internal.$MethodUtility.InvokeMethod(Int64 instance, Int64* args, IntPtr method)
(Filename: C:/BuildAgent/work/d63dfc6385190b60/Runtime/Scripting/WinRTUtility.cpp Line: 88)
MethodAccessException: Attempt by method ‘NodeCanvas.Conditions.CheckEvent.Unity_Deserialize()’ to access method ‘NodeCanvas.Task+TaskAgent..ctor(UnityEngine.IUnitySerializable)’ failed.
at NodeCanvas.Conditions.CheckEvent.Unity_Deserialize()
at UnityEngine.IUnitySerializable.$Invoke0(Int64 instance, Int64* args)
at UnityEngine.Internal.$MethodUtility.InvokeMethod(Int64 instance, Int64* args, IntPtr method)
(Filename: TODO Line: 0)
A script behaviour has a different serialization layout when loading. (Read 32 bytes but expected 132 bytes)
Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts?
(Filename: C:/BuildAgent/work/d63dfc6385190b60/Runtime/Serialize/SerializedFile.cpp Line: 1170)
Exception: Attempt by method ‘NodeCanvas.ActionList.Unity_Deserialize()’ to access method ‘NodeCanvas.Task+TaskAgent..ctor(UnityEngine.IUnitySerializable)’ failed.
Type: System.MethodAccessException
Module: Assembly-CSharp
InnerException: <No Data>
AdditionalInfo:<No Data>
at NodeCanvas.ActionList.Unity_Deserialize()
at UnityEngine.IUnitySerializable.$Invoke0(Int64 instance, Int64* args)
at UnityEngine.Internal.$MethodUtility.InvokeMethod(Int64 instance, Int64* args, IntPtr method)
(Filename: C:/BuildAgent/work/d63dfc6385190b60/Runtime/Scripting/WinRTUtility.cpp Line: 88)
MethodAccessException: Attempt by method ‘NodeCanvas.ActionList.Unity_Deserialize()’ to access method ‘NodeCanvas.Task+TaskAgent..ctor(UnityEngine.IUnitySerializable)’ failed.
at NodeCanvas.ActionList.Unity_Deserialize()
at UnityEngine.IUnitySerializable.$Invoke0(Int64 instance, Int64* args)
at UnityEngine.Internal.$MethodUtility.InvokeMethod(Int64 instance, Int64* args, IntPtr method)
(Filename: TODO Line: 0)
Thanks for the detailed info.
No unfortunately Im not on Windows8.
I will take a look at those and inform you here as soon as I do
Thanks
Join us on Discord: https://discord.gg/97q2Rjh
Without having windows 8 it is hard to solve problems.you can use virtualbox and trial edition of windows 8 to solve problems.
That’s actually a nice idea and possibly the only one around to debug the issues until I upgrade to W8.
I’ve been having a hard time indeed.
Join us on Discord: https://discord.gg/97q2Rjh
or i can write and test this plugin for you for free. you should add Unity platform defines for windows 8. i need NodeCanvas for my 2 games so i need the fastest solution 🙂
have you found solution for phone 8 runtime error that i wrote above?
i examined your code. plugin will not solve this problem. to use plugin you have to move some part of NC core to plugin. i suggest you to keep blackboard values as HashTable or Dictionary. Reflection will cause problems.