Spriter/C2 - (9-16-2019 - bug fix)

From the Asset Store
Rotate & Animation for 16 Direction & Mouse Direction
  • New beta release of Spriter today contains bug fixes that are important to making sure the pro features are working correctly in C2.

    If you're having any issues with sound, collision boxes, or character maps, please make sure you have the latest beta version of Spriter (you can manually check through Edit|Settings if you don't have automatic update checks set up) and the latest version of the plugin.

    plugin changelog 5/24/14

    • Fixed bug that caused blending between animations to sometimes stop blending early.
    • Improved handling of changing to another animation blend before the current one has finished.
    • Improved animation blend handling of image switching by switching to the new animations' images once a blend has reached the halfway mark, resulting in smoother, more natural looking blends.
    • Fixed a bug in the scaling of collision boxes in the plugin.
    • Fixed a bug that caused certain character maps to be ignored.
    • Fixed a bug that caused sounds to be triggered every tick when an animation was paused.

    You can see the new animation blending in action in the transitional and second animation blend capx's below.

    lucid - some of my animations play at varying speeds and I don't know why, would you like to see my capx?

    PSI, if you sent the capx, I never got it.

    I just looked at a view videos of this program and I have to just say.... wow. I bought it almost instantly. How the hell are you guys not charging more than 25 dollars!

    dmurphy, thank you very much!

    Thas started happening since I updated the spriter plugin.

    Please help me, I'm stuck here because I can't do a thing.

    josiascaignard, as Roccinio said, this probably has to do with needing to update Spriter and/or resave with the new save option

    How can I change sound (footstep) while walking on different areas ?

    Sound Changing capx

    winsonzhong, to do this, I just made a grounddetector collision box in Spriter for the walk animation, as well as adding the default walking sound effect which was named step.wav

    If you look in the capx, you can see I used a family for the ground types and a private variable to control changing the sound to alternate versions. Please let me know if you have any questions about the capx:

    [quote:1as3i13t]and it's hard to understand setting the blend mood , can make an capx for example?

    Transitional Animation Blend capx

    If you just want your animations to blend into eachother, you just have to choose a blend type for the animation start parameter of Set Animation, and the amount of time you want the blend to take:

    Manual Animation Blend capx

    You can also manually control a blend between two animations, by setting a 'second animation' and then changing the blend ratio. There is also an action to end the 'second animation' style blend:

  • lucid

    which is better ?

    Every tick ->position to dummy sprite

    Or

    Add pin behavior to scml object, and pin it to dummy sprite on startup or on object created ?

  • Pinning seems cleaner, but I think they should both be equivalent now that the lagging issue is resolved.

  • Good work as always Lucid!

    I asked a question about performance and to be honest i felt a little left out since i did not receive an answer

    In all seriousness now, i never felt like you gave a clear answer regarding how much a scml file affects performance.

    I understand that quite a few people that they do not see the real scope of spriter(it is revolutionary in every way and people that they do not use it,they should) might get scared if they read something negative. And since devs hate talking about performance because of the above reason i feel like there is a grey area that needs clarification.

    By using one set of png's you can have a thousand animations without the extra object count.

    this i know.

    But what happens when you have many scml objects in one layout?

    Do they tween even if they are off screen consuming resources?

    Is there a way to stop this from happening ?

    could you find a solution to this?

    i tried to have my coins as a silky smooth scml object but after a few hundred of these my game started to slow down.

    I dont want to use png's from spriter for my animations ,they look terrible compared to real time tweening and it defeats the whole purpose of Spriter.

    could you please shed some light to this subject?

  • oh yes Roccinio, I remember meaning to add that to this response, but I was holding off on responding to everyone because I found some bugs and room for improvement in the plugin while making the example capx's for winsonzhong. And I missed yours when going back through everyone's questions. Sorry about that. In any case, there's a few things I want to try before answering. I'll respond back with my findings

    Anyone else I missed, it was a mistake, please repeat your question.

  • Roccinio

    plugin changelog 5/25/14

    • Fixed a bug that was recalculating the current frame even while paused nullifying the cpu savings while paused.
    • Removed a js array search bottleneck resulting in massive speed gains.
    • Added 'Set Automatic Pausing' action that allows you to set a padded border to the viewport. Animation playback will automatically pause and resume as it leaves and enters the padded viewport area to save cpu resources when objects are offscreen. The animation timer will continue to tick even while outside the viewport to give the appearance the animation was playing the whole time. The action also allows you to set sound playback to be excluded from automatic pausing.

    A few quick tests:

    Objects all on screen animating:

    Objects all on screen paused:

    Objects sparsely populating a large area and automatically pausing off-screen

  • You are the man!!

    The second you exterminated the bottleneck i saw a huge performance gain!

    As for the automatic pausing feature i just do not understand how to properly use it.

    i do not understand the padding concept at all.

    by adding numbers on the boxes we create an invisible square that if the scml object is within these boundaries it stops animating?

    and if yes what happens if it patrols 2000 px left or right?

    for now everything i try it just makes the scml animation invisible when the event kicks in

  • Roccinio

    You just set the automatic pause settings once, when the object is created. Once you set the padding with a single action, then the plugin will continue to pause and unpause automatically, unless you use another action to stop automatic pausing.

    The padding values decide how far outside the current viewport the object is before it pauses automatically.

    Messing around with this should make it pretty clear:

    AutoPause Demo

    To use the demo:

    • Use arrow keys or click inside minimap to move the camera.
    • Red means paused. Green means playing.
    • Move the sliders to change the automatic pausing settings.
    • Moving the values into the negative puts them firmly into the viewport where it's easy to watch the behavior of the pausing in real time as you scroll through the layout.

  • plugin changelog 5/25/14b

    • Fixed a bug with automatic pausing that was calculating the padded viewport wrong for objects on certain layers
    • Added 'Position is outside padded viewport' condition which returns true if the object is outside of the padded viewport used for automatic pausing.
  • plugin changelog 5/27/14

    • Fixed autopausing to set the sprites to invisible when automatically paused. Otherwise you could see them positioned where they were just before the animation autopaused.
  • plugin changelog 5/28/14

    • Fixed an issue where using multiple 'set animation' actions each tick would allow an animation that gets set temporarily in events (but never actually displayed) to trigger the displayed animation to loop.
  • Excellent! Keep up the good work. Thanks, Morgan.

  • lucid - since the latest scml update, there is something I call "dislocalization" going on. Often, the first projectile from a projectile attack will originate from a place other than where the event tells it to.

  • lucid

    Any plan to reduce or just use one object (scml/scon) in Construct 2?

    GreyGuy example with "prettify option" set to off would be 500kb (scml+scon). Having a lot of animations would easily build up duplicate or redundant files and make the size huge.

    May I know why we still need two formats ? (XML+JSON)

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • lucid - since the latest scml update, there is something I call "dislocalization" going on. Often, the first projectile from a projectile attack will originate from a place other than where the event tells it to.

    Please email me how to replicate it with the last capx, or a new one if needed.

    lucid

    Any plan to reduce or just use one object (scml/scon) in Construct 2?

    GreyGuy example with "prettify option" set to off would be 500kb (scml+scon). Having a lot of animations would easily build up duplicate or redundant files and make the size huge.

    May I know why we still need two formats ? (XML+JSON)

    Ashley will need to handle that aspect of things, as the scml is just used for importing. The reason for needing two formats was that after Ashley got everything up and running, I realized the plugin should switch to json (scon) for many reasons, such as speed and cocoonjs support. He discussed making import using scon, but there was never an established time frame that might happen, and I imagine there are number of other things higher on the priority list.

    We're going to need one more importer update to support some Spriter 1.x features, and at that point I'll suggest it again.

    Also, note that aside from reimporting, you don't need the scml file there for anything after the initial import. So you could just delete it from your project, and copy it back temporarily for any reimports.

Jump to:
Active Users
There are 6 visitors browsing this topic (0 users and 6 guests)