Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Worldle- 24 Hour real time boggle HTML5 hackathon game (concavegames.com)
91 points by farhadabas on Mar 24, 2012 | hide | past | favorite | 52 comments

Built this in 24 hours with 3 other friends as a part of an on campus Yahoo hackathon. We just finished working on the game, so it likely has many bugs. The game is built with html5, and the backend uses now.js. This works on the computer, iPad, iPhone, and Android devices. I am very tired right now, so going to leave this running, and go sleep! Game inspired by Wordament on WP7.

Super cool, but I keep clicking the wrong letters when I go diagonally on my trackpad.

You can use the keyboard to type out the words. There are a few bugs with that but it might be much easier. The game figures out which letters you want to use as you keep typing. Just press enter when you are done typing out the word.

Oh, sweet! Thanks!

Same issue with mouse.

Wow this is really cool for a 24 hour project! Hope your servers are equipped to handle all the HN traffic!

Thoughts on now.js? Why now.js instead of dnode?

It seems like you might not be properly escaping user input for their name by the looks of the leader board which is now popping up a window with a dude getting slapped in the face with a projectile.

So far there has been several GIF's embedded. An alert for your document.cookie, and a redirect to another gif. You can safely say it's not escaping the HTML input on the leader board.

Also the matching words shouldn't be passed to the client, keep as much data server side as possible to elevate some of the cheating, your never going to stop all of it but that should deter most people.

All in all though kudos, looks a decent outcome for a hack project.

"the matching words shouldn't be passed to the client, keep as much data server side" Communication cost between clients and server would be too high I guess. Also you would notice the delay between entering a word and getting the reply from the server.

Sorry for the problems- tried fixing some of them. Hope you enjoy it!

Someone is injecting a flash script into the background.

Edit: You might want to change the page's title. Also, thanks for the game. I really enjoyed it.

alleviate, not elevate.

Sorry I knew this was going to happen, but wanted to throw it up on here before I went to sleep. Now I have gotten such a huge response, that I am trying to fix it :)

The games' guts are all over the floor now.

edit: aaaand someone crashed the server :/

That was me taking down the server for a few seconds. I have done some more sanitization for now, but will likely do a much more thorough sanitization when I get the chance later.

Suggestion: make them circles instead of squares for easier diagonal moves.

Nice job - it's addicting and fun! But I agree that diagonal can sometimes be frustrating - I had to do it very carefully, which made me slower.

Also, I was hoping there would be more to it - like an all-time high list, or something like that. I'm not sure how you would structure it, but I think some kind of stored history would make me want to come back and play again.

Thanks- its great to hear that you enjoyed it. I am trying to fix some of the xss and injection problems with the game right now. I plan on adding high scores and polishing this game up!

Hey, I'm one of the other devs. I just emailed farhadabas a fix to the diagonal selection issue, so as soon as he wakes up, he'll update it. Thanks for the feedback!

You should capture the backspace key so it doesn't trigger the back button on the browser. Just stopping the event would be nice.

Agreed. I keep hitting backspace when I type a wrong letter or realize a word isn't actually there and suddenly my game is gone.

Sorry for the xss- knew it was a problem but thought I would fix it later after I got some sleep. I have done some basic sanitization for now, and will likely make it much better later. I have also increased the time limit to 2 minutes.

How are the boards generated with so many words?

I generate the letters based on the frequency of the letters in the English language. I just do this process many times, and then use the board with the most words. Its a very hacky brute force way :)

It's quite an interesting problem - was actually an interview question for one of the usual suspects that I've interviewed at.

I am working on a similar boggle clone for facebook (there is none for my main language).

What did you use for the server side? First I started with a Java server with sockets but I noticed that it does not work behind the firewalls and now I am using PHP as a messenger between the java server and flash client. Since flash is now only doing HTTP requests it should be fine with firewalls.

Also did you pregenerate the boards? I generated some but they are not very good.

This little greasemonkey script will play the game for you. http://pastebin.com/mcguLiWj

Haha- I love hacker news :)

Is this you? (https://twitter.com/#!/farhadabas) Was wondering if it was. If so, I'm gonna follow you so I can see what future projects you come up with. I try and keep up with new HTML5 stuff.

yup, thats me!

I think someone just rick-rolled the server. Was having fun up until then (although doing diagonal moves was frustrating!)

I just fixed a few more problems with how I was handling input which could have been the method for the rick roll. Will have to wait and see I guess.

Well, that didn't take long. http://twitpic.com/90ru0i

Lol, I just also saw someone with score 100000000. It's funny how they tear apart this game :)

Maybe its just my ignorance but I have no idea how to play this. From a user experience perspective I see that I can click on letters to make them turn red and spin, and sometimes they turn orange but I have no idea what the point is.

Drag to 'draw' a word :)

Doesn't work in Opera? It just asks me for me name and then sticks at LOADING?

BTW you could probably come up with something prettier than a JS prompt to ask for a name.

Thanks for bringing the Opera issue to our attention.

As for the name input prompt, it's true that we could've done something better, but to be fair, this was our first time working with nowjs/nodejs and HTML5/javascript (my first time with HTML5/javascript and I was doing the UI).

What are you using for hosting?

I've been making a game and using Heroku, but when I started doing multiplayer, I realized Heroku doesn't support socketio.

All I see is the word loading and an image? Chromium 17.0.963.83 in linux w/ click to play.

Thanks for letting me know. I will check it out when I am not so sleep deprived!

Yeah cool, you know you can cheat by just looking in the console, right? :)

yup- will likely do server side checks in the future, but this worked well for a hackathon. Thanks for pointing it out though!

i'm trying on chrome and not getting points for words (are those tallied at the end of a session)...it's not clear and at least in my browser it shows 0 points. great job

Congrats, team. You guys winning was quite predictable. -Prad

Rip off of the popular Wordament game on Windows Phone!

Yup thats where I got the idea from. Wanted to see if we could build an HTML5 version in 24 hours :)

Why the game outputs all the possible words in console?

Was debugging during the hackathon and forgot to turn it off :)

Impressive - so smooth on iOS!

tip, pit, sit, tit, git, tar, rat ... 2 and 3 letter words should really be excluded. They make the game boring. Great stuff otherwise, really enjoyed playing it. Thanks.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact