Spingle

It’s 0:28, well into the competition (with GMT+1 standards). That means, it’s time for a game! :smiley:
The game is Spingle, which is sort of a spiritual successor to my old Icejump4k (see my signature if you’re not familiar with it). Thus, I’ve also copied the general post style from that post. Here goes, in lots of large letters and fancy words:

The Spingle Experience

In the aftermath of the Icejump Challenge, you, the infamous yellow dart (that looks nothing like a dart, or anything approximating one), are faced with another task. Getting the hell out of there. The seas are stormy and unreliable, so you take to the skies. Enter the Spingles, your friendly neighborhood floating ice blocks. They will help you reach the sky, but there are also dangers; beware of powerful gusts of wind. A path to the stars awaits you - now all you have to do is climb it.

In other words, get as high as you can using those legendary ice jumping skills of yours. To aid you on your journey, The Spingles have granted you a special power - the multi-jump. As long as your SpinglePower ™ meter is not empty, you can jump in mid-air. SpinglePower ™ is gained by standing on the Spingles. The screen wraps from left to right, so if you leave the screen on one side you appear on the other.

[tr][td]

Features

  • Even more photorealistic graphics! Also, very pretty clouds.
  • A more acrobatic version of “the yellow dart”.
  • Coins - they’re acrobatic, too.
  • Space! And stars to go with it, of course.
  • Hard-to-master mid-air jump techniques for performing so called “multijumps”.
  • Spingles! (you know you love them)
  • Perhaps the dart’s hardest challenge to date: Powerful gusts of wind!

Controls

  • Use [Left Arrow] and to control the yellow dart’s sideway movement. The screen wraps, so exiting to the left will take you to the right side and vice versa.
  • Press [Space] or [Ctrl] to jump. Each jump costs power, which is gained by standing on Spingles.
  • [Q] changes between low and high quality graphics settings (the low quality settings may drastically improve performance).
  • Use [P] or [Up Arrow] to pause the game.
  • Escape exits the game.

[/td]
[td]
[right]

[/td][/tr]

Score

  • You gain points over time, but for an additional point boost, try standing on a Spingle until it explodes. The further down on the screen the Spingle is, the more points you get.
  • Also, each coin you collect gives you points. Every time you collect 20 coins, a field of bonus coins will appear for a huge point bonus!

Play Spingle!

Other
I’d warmly welcome any suggestions anyone has to offer, and it’s not set in stone yet. Currently it weighs in at an exact 4096 bytes, but I’m pretty sure I can squeeze it down a bit further if needed and if I think of anything to put in there. Also, any thoughts on how to make it more varying (level generation and stuff like that) help! :slight_smile:

EDIT: Tiny bits of layout.

Very nice. :slight_smile:

Very nice “Mario style” feeling to the game, and quite nice and modest description.

;D

Late now, so only played it twice and second time I survived for quite some time (score 8479). The only annoying thing I found was that the real challenge was the unpredictable wind and that the “lookahead” up was so short that you could end up with a blind jump and it would be practically impossible because of the location of the few blocks and direction of the wind. So more linearly increasing difficulty and one should only die because of lack of skill rather than bad luck would be my quick suggestion. It could just be that I need a bit more practice and I would have saved the situation, who knows…

Nice type of game to make in 4K! Has a complete feeling without being a too limited game.

Yea, very good. Maybe enlarge window height?

I’ve been thinking of that, and there are some problems with doing that. First, the graphics weren’t designed for speed (as much as for being small), which means it’ll eat even more CPU if I increase window size (which is also the prime reason I kept it low in the first place). Second, the truth is that after a couple of runs it gets too easy as it is; not even the wind does much to stop you. I’d change it but right now it’s all that adds difficulty to the game, kind of.

I’d also thought about perhaps increasing the pace (making the window scroll faster), but that leads to a lot of unforeseen problems, mostly due to how the code was designed but also with gameplay (for example you can’t jump from within a block, which means with too high speed you get stuck in them and sucked down to the bottom).

Another thought is to increase wind speeds as you go; little wind to start with, powerful gusts towards the end. What do you think?

I’ll try enlarging the window size when I get the chance - until then, can anyone think of how to adjust difficulty better?

EDIT: Oh, and jojoh, I’m impressed! 8,5k on the second run is very good.

hey great game! is the source code available?

Thanks. I’m afraid the source is not available atm, and it’s not so pretty anyway. If you’d like, I’ll release it at some later point when the game’s finished and all that :slight_smile:

Maybe I should add a extra field when developers submit their game, being able to attach the source code to each game :slight_smile: Would be fun for people to read it.

yes I think it’s a good idea. I have learned a lot with source code published of latest contests.

Great stuff.

I think the window size is fine. I’m playing at 1024x768 resolution and I don’t have a problem with it. But since all the sprites are shapes you could probably let them scale to the screen size?

The wind feels OK to me. Once you see the clouds move you should start moving the same direction of the wind and jump through the side of the screen. As long as you follow the wind you can get to any part of the screen with a full bar of SpinglePower ™. The same with the lookahead, with a full bar you can get to anywhere from anywhere.

That should work. Max out the wind speed so that the player can move in only the same direction as the wind. The platform widths could decrease down to where they are constantly 2 blocks wide.

That’s how I lose sometimes. I was getting ready to jump from the edge of the platform and I was sucked back and lost the energy for that jump. During that jump I was holding down left or right to jump to the side but as I was sucked back when on the edge, I slipped down the block and because I lost the energy after being sucked down I didn’t have enough energy to get far enough to the next platform, this is bad especially when the platform is on the opposite side of the screen.

There’s one “bug” I found, you can press the jump key while the game is paused and the jump will be triggered when you unpause.

You could make the night turn to day again and constantly cycle them. A threat would also be nice, say, a bird comes flying across the screen and knock you away or something.

Other than all that, great stuff.

Maybe because I’m at 1920x1200, I didn’t give it a thought that people used smaller resolutions :wink:

Wow, thanks for the constructive critique, malberts. Some very valid points in there! :slight_smile:

Cycling between night and day is a good idea if that’s how you picture it; I pictured it as going further up in the atmosphere. The “bug” is pretty much nothing, but it’s a nice find - I didn’t know that myself :slight_smile:

I’d been thinking about having meteors to knock you off path, but I disregarded that notion in favour of wind, which is supposed to do roughly the same thing. I’ll have another look into it.

Ah I didn’t think of jumping into space. How about slowing down the transition period of the sky then? If the change is more gradual then you’ll experience a change in scenery longer.

The wind only has a single direction in which it affects the player. A meteor could bump the player in the opposite direction in which the player collided with the meteor. This can add some more difficulty but it can also be exploited by the player by jumping on top of the meteor to get extra leverage.

About the low-res mode, how necessary is it to include that? If a judge can only play it in low-res mode then he’s going to award a lower score for graphics. Isn’t there a way to improve/optimize the drawing code?

…Probably, but I’m not sure how much I could improve upon it. It’s all optimized for size now. In my opinion having to play in low-res mode shouldn’t make judges give less score; there are fancier graphics, they can still see them, it simply uses too much CPU. I’ll give it some thought, too :slight_smile:

Regarding meteors or birds, it’ll be more of an annoying distraction than anything else, I believe. The key might be randomizing the levels in a better way to make it properly tricky, adjust jump height, those kinds of things.

Slowing down the transition - hmm, yes, perhaps. It was much slower before, I made it faster to make sure even people who don’t get very far can see the pretty stars :wink: Don’t know which way is better. What’s everyone’s opinion on this?

How much more do you want to randomize?

The one way to randomize and ensure playability is to just randomize in a safe section, like you’re doing I think. You just randomize in a reachable row.

To make it harder you can randomize in more dangerous areas but then you’ll have to do in-game checking to ensure you’re not making it impossible. That’s going to waste time and more cpu power.

Instead you can integrate that checking into rules which then ensure a playable, harder randomization. But then you’ll need to know how you want to generate the stuff, I normally draw possible situations on paper and try to derive equations to model those situations.

One thing I can think of that you can do is add something like a skill jump. You force the player onto a certain platform and then you blow a strong wind at him. The next platform should then be placed at a height and position according to the strength of the wind. The player then has to jump with the wind and perform multi-jumps at certain intervals to reach the platform. You should be able to model this in a general way with some equations and then the entire situation is fleshed out according to the x-position of the lower platform and the strength of the wind.

Please remember to submit. Let me know of any problems when submitting :slight_smile: