I found a easily dulicatable spine-2dtk runtime BUG: open the spineboy example, duplicate the exsiting spineboy, and run, then you will have a runtime exception:
NullReferenceException: Object reference not set to an instance of an object
tk2dSpineboy.Update () (at Assets/spine-tk2d/Example/Scripts/tk2dSpineboy.cs:23)
So basically I can only have one 2dtk-spine skeleton at a time of any kind, more than one will throw the above exception
I did some debugging and it turns out the skeleton.state is null during the update, in fact lots of variables are null during the update. But if you only have one spineboy this problem won't happen. This does not limit to spineboy, any skeleton with more than one number will have this problem.
For a single spineboy (default case), the skeleton has lots of null variable upon start by
calling skeleton = GetComponent<tk2dSpineSkeleton>();
but during the update() those variables have been magically assigned somehow. I'm not super familiar with monodevelop debugger so after start() I can on longer step into anything, the debugger literally halts, and it resumes only after I set another break point at the beginning of the update() function call, by then the skeleton will already have those value magically assigned, or not, in which case throws the exception.
Did anyone else having the same problem? I have tested it several times on different new projects and they all have the same error upon duplication.