December 16th-19th 2011 :: Theme: Alone

Back to Browse Entries

I Am A Ninja

by ThomasTC - 48 Hour Compo Entry

A lonely ninja swings on his ninja rope to clean up the evidence of his endeavours before disappearing back into the darkness.

A browser game in JavaScript, using HTML5 canvas. Using the latest Chrome is recommended; Firefox might also work. Enjoy!

Downloads and Links


Ratings

#28Fun3.50
#50Overall3.50
#92Innovation3.29
#129Community3.00
#213Graphics3.00
#264Mood2.58
#315Theme2.71
#557Audio1.13
#619Humor1.17
#685Coolness0%

Comments

CplMustard says ...
Dec 19, 2011 @ 7:22am

I really like this one, the gameplay is fun, very difficult at times, but not too much that it ruins the experience. The art style works really well too, my only complaint is a lack of sound, but otherwise, a very slick game.

ThomasTC says ...
Dec 19, 2011 @ 6:07pm

Thanks! There is sound, only it doesn't work in all browsers. I'll see if I can get that fixed tonight.

namrog84 says ...
Dec 19, 2011 @ 10:32pm

Although I think its more realistic how you handled extend/pull of rope. I keep expecting it to behave more like the old 2D worms games like Worms 2 or Worms Armageddon where it physically pushes you away, though "You can't push a rope"

I think you should continue to add more onto the game with more things, beyond even the theme. You got a good game going here

ThomasTC says ...
Dec 19, 2011 @ 11:28pm

namrog84, thanks for your comments, and well spotted :) Initially I had a "push rope" just like in Worms, but I realized it was easy to make it more realistic, so I did. Drawing it properly was a breeze with canvas's quadraticCurveTo method.

ThomasTC says ...
Dec 19, 2011 @ 11:31pm

I have completely disabled sounds for now because they were causing too much trouble -- Firefox not playing at all, Chrome completely ignoring the cache and re-downloading on every playback! HTML5 audio is a bitch. Impossible to use for games. Too late to add one of them Flash-wrapping libraries now...

ThomasTC says ...
Dec 20, 2011 @ 12:02am

Last update, I hope: now works on Safari too (workaround for missing requestAnimationFrame). Tested on MacBook Pro.

I tried to get it working in Opera but get DOMExceptions that I couldn't figure out. I tried to get it working in Konqueror just for kicks, and it almost worked, but the risk of breaking something else outweighs the required fixes.

Bottom line: use Chrome or Firefox!

Aaron says ...
Dec 20, 2011 @ 5:28am

Controls had a learning curve, and a quick tutorial would have been nice to help. Also the walking speed feels a bit sluggish for a ninja game, but once I got rolling Spider-man style, I had plenty of fun. :)

kato9 says ...
Dec 20, 2011 @ 7:01pm

Pretty cool game! Took a second to get used to the controls, and overall I still found it a bit hard, but the rope mechanic works surprisingly well. If you added in checkpoints for non-hardcore players like myself I think it would be a pretty great game.

ThomasTC says ...
Dec 20, 2011 @ 7:12pm

Aaron, the slow walking was mostly intentional, because yes, you're meant to go Spidey right from the word go! I say "mostly intentional" because there's also the aspect of it not being walking at all, but just a force pushing against friction; to make him go faster I'd have to reduce friction and this sliding effect would become too obvious. (Or hack around it. No time for that!)

kato9, Aaron, you both mentioned difficulty with the controls. What could be improved in that area?

kato9 says ...
Dec 20, 2011 @ 9:38pm

I just gave the game another whirl and found that I was able to play much better this time around. I think it's just a bit of a learning curve which isn't necessarily a bad thing at all. I think my main issue is that it's hard to gauge your momentum at any given time, so you end up not flinging yourself far enough or vice versa. A solution to that might be show a visible launch curve similar, if you've ever played peggle you might know what I mean - although I can't imagine that would be easy to program :/

Doft says ...
Dec 21, 2011 @ 4:40am

Really nice, the controls were perfect in my opinion! I only died in the very last part, and after that I realized how cool it was to go quickly through the level without having to stop to get stars. You should consider adding a "time attack" mode, where you have to make it to the finish as fast as possible.

FrozenCow says ...
Dec 21, 2011 @ 6:20pm

Yay! Another HTML5 game :D It plays very smoothly, very nicely done. Not collecting stars was also more fun imo, though they were needed to get to the next level. I'd also rather like a time-attack mode where the stars don't matter to keep the flow/smooth gameplay going.

FrozenCow says ...
Dec 21, 2011 @ 7:14pm

Oh, looked through some of the code. Very efficient approach on using SVG and parseLevel, I might borrow that techinque one day. Keeps you from developing a leveleditor :|

ThomasTC says ...
Dec 24, 2011 @ 11:32am

kato9: Maybe the ability to accurately gauge your momentum is part of the learning curve? But yeah, a projected trajectory would probably help here. It would be easy to code as well; the physics are frictionless, so it's just a parabola.

Doft, FrozenCow: The trouble with time attack was mainly that it would be fairly pointless without a proper highscore list, and that would require server-side programming that I had no time for. (I guess I could've used HTML5 client-side storage as well, so you could at least have a record of your own scores. Oh well.) If I continue development, I'll definitely add it! As to removing stars completely: they could be part of a time attack, as long as they're placed somewhere on the optimal path. That goes to show again that level design is not my forte...

FrozenCow: Please don't look too hard at the code, it's not exactly a shining example :) I think I could've made the browser do more of the SVG parsing, i.e. parse the path description as well, but once I'd gotten it to work there was no point. But yeah, I couldn't have done it without this technique; it saved me so much time in the end.

You must sign in to comment.


[cache: storing page]