Screenshot

The Strange Sine Orbs

Sine orbs are strange. They slowly stalk you, waiting for the right time so it can start moving in a sine wave and grab your blue swirly stuff to use against you, and destroy your ship thingies. But don't worry: in this game, you get to control them!

Awards

Give this entry an award

Scores

Ratings (show detail)

Overall: 3.3
Fun: 2.9
Production: 3
Innovation: 4.1

Respondents: 20

Files

File Uploader Date
TheStrangeSineOrbs-1.0-no-music-no-pyglet.zip
Same as final, but without music or pyglet.
Tee 2010/04/04 22:06
TheStrangeSineOrbs-1.0-no-music.zip
Same as final, but without music.
Tee 2010/04/04 22:01
TheStrangeSineOrbs-screenshot.png
Screenshot
Tee 2010/04/03 23:14
TheStrangeSineOrbs-1.0.zipfinal
The Strange Sine Orbs
Tee 2010/04/03 23:13

Diary Entries

Starting in the middle of the challenge

Hello everyone, and I'm happy to be in a Pyweek again. :)

I've been away until yesterday morning (didn't even know the theme until then), so I'm only starting now. Also, I think I won't have much time to work on the game in the rest of the week. But, of course, I'll try to create and submit something. :)

Unfortunately, I don't think I'll have much time to follow your posts and progresses as I usually do. I might still be around wasting precious time in IRC, though. :P

As usual, I'm struggling to find a good idea seed, but I think I have something now. Unfortunately, this is an idea that probably won't give me much points for innovation and I'm not sure if the relation to the theme is clear, but it's hopefully fun, solid and not hard to implement. Maybe next time I'll try something more experimental as I normally like to try, but due to lack of time and better ideas, I need to stick to something simple this time if I want to finish.

I'll try to do my best, but I admit I'm not expecting much from myself this time. Well, I suppose you can expect some game at least, bad as it may be. :)

4 comments

Postmortem: The Strange Sine Orbs

Another Pyweek over and plenty of games to play. Congratulations to everyone who finished. :)

Time for my usual postmortem. Beware, this is a huge post - this is basically all the diary entries I was supposed to write combined. It's probably a good idea to play The Strange Sine Orbs before you read this so you get the context, too, but it's not necessary.


Like I wrote in my previous post, I was away until Tuesday morning and that was when I got to know the theme. I usually end up spending too much time trying to find a good idea seed, and this Pyweek was no exception. In fact, it was probably the Pyweek in which I felt the worst creative block (possibly due to the theme). I only settled on something on Wednesday evening, but, actually, I didn't like the idea much.

My original idea was to make a game where a character is controlled by the mouse and another character is elastically attached to the first one, and the player would have to navigate some skill/puzzle levels. I had a few puzzles in mind using this simple mechanic - I think you can work out some nice levels if you add bouncing walls and such. 

But I didn't really like this idea. The core of the idea was a bit too "boring" (in the sense that, not that it wouldn't be fun, but I like to experiment with different things). The elasticity was the only part related to the theme, which I thought was a bit vague. I was relying too much on the level design, but there was still a lot of work to do on levels and I would only be able to implement core stuff and a few sloppy levels at most. So, Friday night, I decided to stop implementing it, go to sleep, and wake up very early in the next morning with a fresh mind to see if I could come up with something else easy to implement, even if it's just a bad game to submit. I had the whole Saturday free for Pyweek, so I figured I could work something out. I had my hopes down to the point of thinking I would have nothing to submit, but I've been frustrated more than a few times before in Pyweek and I knew I just had to keep trying, even if just for the sake of trying.


Saturday morning, woke up very early, had breakfast and started thinking of ideas. I spent around one hour and a half trying to come up with "one day" ideas until I had a seed of the idea for The Strange Sine Orbs. At first, it was just the following mechanic concept: "objects that either go straight or in a sine wave, and that's the only control the player has". (Actually, that mechanic came from the idea of forcing cars to wobble and causing them to crash in Burnout style, but I decided that would be way too complicated, especially for a one day game.) That mechanic is pretty easy to implement, so, since by then I was very tired of thinking, I decided to go with it and see what happens. This was something that pleased me much more than the previous idea, because it's something more unusual that I could experiment with and toy around with.

At first, I didn't have much faith in this idea. I had it implemented and had some (white rectangle) baddies moving in the opposite direction and tried to make my bullets hit them. It was awful. There was absolutely no control. I couldn't hit the baddies because it was hard to know where the bullet would go. I was already invested in the idea even though I was almost sure it wouldn't come out good, so I decided to figure out a way to give control to the player. Given some time to think, I went with the three following ideas:
  • Path prediction. At first I felt this would take away the challenge of the player trying to predict his movement, but this turned out to be good, since the sine wave with accelerating amplitude was too hard to predict anyway, and the game is still quite challenging with the prediction.  
  • Stationary objects. With the path prediction, you know for sure you're hitting that object.
  • Quick decceleration, so you can "aim" easier from the wobble mode to the straight mode. 
These three things worked out surprisingly well (it actually took quite some time to tweak everything well enough to make them click - for quite a while I thought I was being crazy trying to put in things that didn't fit well). With stationary objects came the idea that the orb had to grab some "charges" before it reached to right side of the screen, and you had to destroy the baddies that moved to the left. Sort of like a battle between two unseen opponents. (I'd write a bit more about the design, but this post is already too long.)

One of the hardest parts was to figure out some "theme" to go on top of the mechanic. I had the mechanic, but finding an excuse for it was hard. I ended up not having much of a "theme"; I decided to just draw whatever popped in my mind and go with it. I think it turned out ok, though I know I will get a low Production score because of it. That's ok, given the time I had for it.

I'm not sure about the balancing, though. I didn't have much time to get someone else to playtest it, so I decided to submit it the way it was (playtested only by me). It might be a bit harder than I think because I was already used to the controls when I tested it, but I hope not. But I felt it wasn't hard to win, so that should balance it out.

I like the fact that some interesting strategies emerged. For example, if you let the enemy pass, you can have it wobble to the end so you can get it back at the beginning and try to block it again. Aiming at the enemy from wobble mode to straight mode is also a neat strategy. I also like that a clear distinction between attack and defense emerged: attack would be wobble a lot and try to get a lot of charges; defense would be to aim at the enemies by adjusting the position with small wobbles.

Taking everything into account, I'm quite satisfied with my performance in this Pyweek. This turned out to be an interesting one for me. In the end, I think my persistence paid off. The gameplay is a bit unusual and the game felt fun at least for me. The only thing I worry about is that the sloppy graphics and the initial apparent complexity/strangeness will scare some people off. I suppose I don't know how it feels to play the final version of the game for the first time.


Lessons learned:
  • As always, be persistent. Learn how to deal with your frustrations. It may not work, but there's a chance you'll surprise yourself, and that chance is worth it.
  • This is the third time I waste the rest of the week pursuing complicated objectives, then stop Friday and do a game in a day (others were Pyweek 7 and 8). I guess that if you aim for an idea that you can implement in a day, it'll be much easier. Maybe you should pretend this is Pyday and not Pyweek and start from there, so your goals are kept simple, and, more importantly, you stick with an idea that you're sure it's easy and quick to implement. A lot of problems come from thinking you can implement something and then finding out that it's not as easy as it sounds. Making a game in a day forces you to think: can I really implement this in less than a day? (On the other hand, I have to admit that sometimes aiming high and then failing hard is also quite thrilling. That's why I will probably never learn from this lesson. :P)
  • If you're trying to design something unusual, design iteratively. Design, implement, play, repeat. This way you can see what's not working right and tweak it. In my case, it was the lack of control for the wobbly mechanic. I ended up adding control features and then iteratively fine-tuning it into a reasonable game.

Anyway, as usual, I enjoy feedback a lot and you don't need to wait until you rate the games to comment. :) Please comment if you managed to use some strategy different from the ones I mentioned. If anyone wants to discuss the design of the game, I'd be happy to. If you didn't like the game, I'd be also interested to hear - since I was the only playtester, I have no idea if it's fun for others.

Well, sorry for the huge post, and thanks for reading all this and thanks for playing my game if you already did. Thanks to Richard for hosting yet another Pyweek. I'm looking forward to play your games. :)

1 comment

Reply to comments: The Strange Sine Orbs


Hello everyone, and thanks for all your comments. I'm going to write a bit about them here.

Although I don't really care much about the ratings themselves (I like reading the comments much more), I find it interesting that this was the first time I got a score above 4, and that was in innovation. That kind of makes me happy, though I wish I had gotten one with a more polished and complete game. However, unfortunately this innovation rating by itself doesn't tell me much, because according to my fun score, people didn't seem to have much fun. It sure needs tweaking, but does that mean the idea works or not? I mean, it means it's different, but unfortunately it doesn't tell me if it's a good idea. Thankfully, people comment and I can derive a few things from their comments. :) (In fact, if there were no comment system, I'd probably have some very misleading thoughts of how my game went.)

Another note was that it was very surprising to me that I got a 3 as a production score. I would have expected something more around 2. I'm also surprised no one even complained about the graphics in the comments.

Anyway, replies to comments. Not going to reply to all of them this time, just some of them. First of all, thanks to everyone who sent me positive comments (so I don't have to thank them one by one :P).

 

* This is hard, maybe because i'm more a singletask guy :) Your game is fun and it's wibbly-wobbly and the idea with the sinus curve movement is great. But as i said, i must concentrate hard to control the movement correctly. A real challenge and a great game!
* Wow, HARD. Neat idea though :)

Yes, the difficulty was the most commented thing (guess I didn't learn from my previous game :P). But I don't think I need to make it easier, I just need to make it easier to get a hang of. That's because once you get the hang of it, it's not hard (unlike my previous game, which is always hard even after you get the hang of it). The funny thing was that I was worried that the game was too easy, and after I finished I kept wondering whether I should've reduced the player's number of lives. That really shows how you can get it completely wrong when you get used to the game.

* I feel like the collisions could have been a little more forgiving. When the orbs got fast, I felt like I was playing one of those prize games where you have to stop the light at the right time and it never stops it right when you push the button and you miss the target light and you feel cheated.

I understand. You should've seen the game before I added the guidelines and static objects. :) But I think that if the player manages to get a hang of it and find a good strategy, it's not too hard and very controllable. The big problem is how to help the player get a hang of it. You should look at the guidelines to press the buttons at the right time.

* Very strange indeed. Controls need rethinking -- mapping a horizontal row of keys to a vertical arrangement of on-screen items is unintuitive and confusing.

That's true. In fact, the keys E D C also work, but I didn't document that. I put it in to test it out, but I thought the hand position felt too uncomfortable, so I decided to forget about it and go with the Z X C keys. I do wonder though if something like Q S C works out.

* One of the more innovative games. The learning curve was a bit steep - maybe it could start with only one orb to control. Also some explosions or effects or powerups would have made scoring seem a lot more fun.

Yes, maybe starting with only one orb is a good idea. Explosions or effects or powerups would have been definitely cool.

* It would be hard enough with one sine orb. With three you either need to play it as a three player coop or hope for the best while pressing them at random. I did the latter and won! The part I like is that it's a duel between two sides and they lose points until one runs out and loses the game. This is a nice framing that I haven't seen before and works very well.

Good point about pressing them at random. I only found out about this strategy after I submitted the game: it's worth it to just keep them in wobble mode always, because they go fast, respawn fast and even if it's not the best defense against enemies, that strategy grabs a whole bunch of charges and does a lot of damage. That needs fixing.

* Very innovative but hard to control. Music fits perfect.

I admit the music was a bit of a lucky thing. It was among the first musics I found, but the feeling that that music felt right combined with the fact that I was in a hurry made me choose that one. I'm glad that you liked it, but the credit is all for the musician behind Incompetech, who does some free great songs, for anyone who needs music next Pyweek. :)

* Very cool game idea! Really liked it, sure you could push this futher with square waves, saw-waves etc!

Great thought; that really didn't and wouldn't cross my mind. I'll keep that in mind.

* quite frustrating at first - but really good after you get a hang on the controls.
* quite difficult at first... easier once you get the hang of it. interesting indea :-)

Happy to hear that at least a few managed to overcome the apparent difficulty of the game. :) You just need to get a hang of it.


* Losing marks on production for no real game ending screen or sense of achievement in victory. Get amazingly high marks for everything else, cool concept and the music was fun .

At least you managed to finish it. :) If I had more time, I would've made something better for the ending.


So, if I were to improve the game, here's what I'd do:
  • Find a way to improve the learning curve of the game;
  • Do some balancing;
  • Find a way to eliminate the winning strategy of "just keep wobbling" - maybe make it even riskier;
  • Polish (intro, menu, ending, sounds, effects, etc.);
  • Maybe make it in levels and, if so, have different "units" (with different waves) for different levels.
I never really had time to improve a Pyweek game and I don't think I would now. But I'd be curious if anyone has any extra suggestion, so let me know if you do.


Thanks for all your comments! See you at Pyweek #11. :)

Add a comment