• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!
  • Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Question - IDE Question about spine compatibility

C

CakeAqua

Guest
I'm using IDE 2.2.3.436 and Runtime 2.2.3.344, and using Spine version 3.4.0.2.
Is there any documentation of wich Spine versions are compatibale with GMS2? I've sucessfully imported the JSON file in-game, but when I call its animations via skeleton_animation_set, it does not play. Would anyone be able to tell if that could be a compatibility issue, or simply a coding issue or similar?
 
Last edited by a moderator:

Nocturne

Friendly Tyrant
Forum Staff
Admin
Is there any documentation of wich Spine versions are compatibale with GMS2?
 

rIKmAN

Member
You can use v3.7.94.

It may be just the wording you have used, but just to clarify you don’t call the .json file by name for animations - whatever that name is after import essentially becomes the sprite_index.

You should be calling the animations as you have named them within Spine when using skeleton_animation_set()
 
C

CakeAqua

Guest
You should be calling the animations as you have named them within Spine when using skeleton_animation_set()
Firstly, thanks for the heads up!
I am using skeleton_animation_set(). Let's say the animation name is "swing".
skeleton_animation_set(swing) crashes the program, and skeleton_animation_set("swing") doesn't, but also plays no animation
 

rIKmAN

Member
Firstly, thanks for the heads up!
I am using skeleton_animation_set(). Let's say the animation name is "swing".
skeleton_animation_set(swing) crashes the program, and skeleton_animation_set("swing") doesn't, but also plays no animation
Yeah, the animation name should be in quotes as it's a string.
Are you 100% sure the name is correct, including case?

Are you applying Rotation/Translation/Scale directly to the root bone inside Spine?
If so, there can be issues with this - try creating your own "myRoot" bone underneath it in the heirarchy and applying RTS to that just to see if it works.

Also - keep a backup of your v3.4.02 project, then upgrade the "copy" to use v3.7.94 - and retest importing that into v2.3.
It's possible using such an old version is causing an issue as I know some of the names of things in the .json have changed over time with each Spine update.

Make sure you have a backup of the Spine project, as once you "update" the project to v3.7.94 you will no longer be able to load that back into an older version such as v3.4.02

EDIT:
Also, just to rule it out - where are you calling skeleton_animation_set()?
 
C

CakeAqua

Guest
Are you applying Rotation/Translation/Scale directly to the root bone inside Spine?
If so, there can be issues with this - try creating your own "myRoot" bone underneath it in the heirarchy and applying RTS to that just to see if it works

EDIT:
Also, just to rule it out - where are you calling skeleton_animation_set()?
This root problem might be the case; I'll create a custom root point and report back.
I'm calling it on the create event of the object. I'm aware there are "Animation" events but they don't seem to have an equivalent to create
 

rIKmAN

Member
This root problem might be the case; I'll create a custom root point and report back.
I'm calling it on the create event of the object. I'm aware there are "Animation" events but they don't seem to have an equivalent to create
That sounds probable if you are applying RTS directly to the original root - GMS has always had issues with it for some reason.

Create Event is correct - I was just checking you weren't calling it in a Step Even or other event that ran every frame, meaning it would have been resetting the animation to the first frame each step and making it look like it wasn't animation when in fact it was - but never past frame 1.
 
Top