Spryke - hardcore new-school platformer

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.
  • Wow - that's a really great overview of everything. Thanks for sharing! I dabbled with a Toon Boon demo around 2012-ish but I'm a terrible illustrator and never progressed with it. I honestly had no idea it was that capable of a software.

    Please login to see this link.

  • This week I made some Puffworms. These little guys react to Spryke's movements, and give her a little puff to make her jump higher.


    Please login to see this picture.


    They're procedurally generated. All I need to do is place pairs of these Edge objects in my level editor wherever I want the Puffworms to spawn. The engine will then generate the worms itself: some behind Spryke, some in front. It will adapt their positioning and angle to any slopes, will choose from 3 pre-baked animations, and will randomise things like size, animation speed, and how close each worm must to be to Spryke before it reacts.


    Please login to see this picture.

    Please login to see this link.
    My Fusion Tools: Please login to see this link. | Please login to see this link. | Please login to see this link.

  • Very cool! Does that have a lot of storage and memory overhead for all the animations you are using, or are you loading those externally now?

    Please login to see this link.

  • Very cool! Does that have a lot of storage and memory overhead for all the animations you are using, or are you loading those externally now?

    I load animations externally. Though I was concerned about memory myself, so actually I also built a mechanism this week to calculate the RAM usage of imported animations, and can therefore tell you that these worms take up 16.9MB in RAM (3.17MB on disk). Not too bad. I make sure to crop animations where possible as I export them, to minimise empty pixels:

    Please login to see this picture.


    If anyone's interested, I'll explain how I calculate the RAM. PNGs are compressed of course, but I believe they must be uncompressed into RAM, so each pixel takes up 4 bytes of information (RGB & Alpha). So to calculate this per frame, you multiply Width * Height * 4.

    There's probably a way to read the width and height from the PNG's metadata, but I don't know how to do that. So during the fastloop that imports PNG files into an object one by one, I switch to that frame in the object so I can read the object's width and height. However, the object must have an unaltered scale and angle for that to be accurate. You can account for the scale by dividing by Xscale and Yscale as I have below (this may produce tiny rounding inaccuracies as Fusion supplies Xscale & Yscale only to 2 digits after the decimal place). There'd be a mathematical way to account for the angle too, but I just switch the angle to 0 then switch it back after the calculation.


    Please login to see this picture.


    Performance is pretty good too. I run code as infrequently as needed for things to still feel smooth. So:

    - Every 20 ticks I check which worms are on-screen, and most of the code only runs on those worms.
    - Every 10 ticks I check for things like distance and direction to Spryke and whether they need to play their leaning animation.
    - Every 4 ticks, I adjust the Y scale for any worms that Spryke is currently squashing.

    With a lot of worms in the level (about 800 objects - which is about 1600 worms, as each animation variant contains 1, 2, or 3 worms), I measured the average event-side performance of the worms at about 50 microseconds per frame. For my target framerate of 120fps the total budget is 833 microseconds, so 50 is not quite negligible, but pretty good.

    Please login to see this link.
    My Fusion Tools: Please login to see this link. | Please login to see this link. | Please login to see this link.

    Edited 4 times, last by Volnaiskra (November 11, 2023 at 2:14 AM).

  • Things are coming along. gameplay is very solid, 3 worlds are designed, and Spryke is fully animated. I'm about to spruce up my website with a bunch of new animated GIFs.

    If you have a minute, please take this survey to let me know which GIFs you think are the best!

    Please login to see this link.

    "G"
    Shows the speed, Gameplay and Graphics in one.

  • Hey Vol, it's been a long time since I checked in. Your recent images look great. It looks like you've really honed your skills in the years since I've seen the project, and they were high before. The interaction with those puffworms is charming and full of life. I hope development continues to go well and look forward to seeing more.

    SUPER MEGA BEST CAT ADVENTURES Please login to see this link. and Please login to see this link. live now!

  • "C" is for me the best one, it' s easy to see Spryke, and shows speed, actions, other "creatures" and the really nice parallax effect with diverses backgrounds.

    I must admit, really impressive work , Volnaiskra ! If I only had 1% of your graphic-talent !!!

    The puffworms are sooo sweet, they really seems to be alive !

    I think you are on the right path to make a formidable game - keep on Volnaiskra !

    Best regards,

    Sergio

  • Hey Vol, it's been a long time since I checked in. Your recent images look great. It looks like you've really honed your skills in the years since I've seen the project, and they were high before. The interaction with those puffworms is charming and full of life. I hope development continues to go well and look forward to seeing more.

    Thanks, PBarwick. Great to see you here again, by the way!

    How do you keep motivated to keep working on Spryke after so many years, Vol? How do you defeat the 'doubt demons' (if there are any)?

    Well, I've made enough progress on it by now that I know it's going to be an excellent game. So that keeps me going. The doubt demons are still there, of course. But after all these years, the doubt demons and I are on a first-name basis, so I just politely say hello every morning and then try to ignore them as I get on with my work.

    I must admit, really impressive work , Volnaiskra ! If I only had 1% of your graphic-talent !!!

    The puffworms are sooo sweet, they really seems to be alive !

    I think you are on the right path to make a formidable game - keep on Volnaiskra !

    Thanks, semar. :)

    Please login to see this link.
    My Fusion Tools: Please login to see this link. | Please login to see this link. | Please login to see this link.

  • I made an underwater geyser this week. I had fun animating the smoke, but It was quite tricky getting the physics to feel right.

    Spryke has to bob up and down nicely when staying in it, and be able to get extra height by utilising the bubble. So when Spryke falls into the geyser, the smoke has to push her very strongly to stop her hitting the ground....yet also weakly enough that it only flings her a little bit over the geyser. In the end, I needed to make the geyser affect Spryke's Y speed differently depending on whether she's moving downwards or upwards.

    When Spryke activates the bubble, the geyser's upward push must be amplified, to allow it to blow her much higher. But how much velocity Spryke inherits from the smoke must be based on how deep inside the geyser Spryke is, otherwise it feels wrong. So bubbling near the top needs to give very little lift, while bubbling deep inside enables a very high float.

    If Spryke runs and jumps from the ground directly into the smoke, then some of that upward jump trajectory is also inherited by the geyser, and her existing momentum combines with the upward push of the smoke for an even higher float.

    It took a lot of experimentation, and I needed to rethink how I managed the physics a couple of times, but think I got the balance right in the end. Spryke's motion physics is actually one of the facets of the game that I'm most proud of. I put as much nuance into the physics as I do the graphics so that, in my opinion, the movement feels very satisfying and organic.


    Please login to see this picture.

    Please login to see this link.
    My Fusion Tools: Please login to see this link. | Please login to see this link. | Please login to see this link.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!