Awesome! I once wrote a boggle solver to beat my friends at Bogglific on Facebook. It was loads of fun until I was banned from the game. http://www.hung-truong.com/blog/2007/11/07/banished-from-bog...
Do you have the code for it? I didn't see the code on your blog? I would be interested to see how it worked.
Winning at Candy Crush
101–110 of 148 posts
Re: Winning at Candy Crush
#102Maybe I'm overly cautious, but in today's world, where even simple URL manipulation can be regarded as hacking, I would be very reluctant to post exploits like this. It's crazy, but this can be construed as wire fraud or computer crime: 18 U.S.C. § 1030(a)(4) Whoever— (4) knowingly and with intent to defraud, accesses a protected computer without authorization, or exceeds authorized access, and by means of such condu…
Re: Winning at Candy Crush
#103A strange game. The only winning move is not to play.
Re: Winning at Candy Crush
#104Earlier quoted context omitted.
Nice! I did the same: https://github.com/bouk/rumble-solver
Also, my solution can easily do boards up to 30*30 or so
Re: Winning at Candy Crush
#105Earlier quoted context omitted.
Also, my solution can easily do boards up to 30*30 or so
Heh, I was mainly out to beat my co-workers, though if one of my co-workers was a fellow programmer I'd probably have had to improve on my algorithm.
Re: Winning at Candy Crush
#106What's the best solution for this, managing game state server-side? Did they do it this way to offload storage and processing for scalability reasons?
Here's a talk I gave on the FarmVille approach: http://www.slideshare.net/amittmahajan/rapidly-building-farm...
and one on the king approach that we're using at my current company: http://www.slideshare.net/amittmahajan/gdc-2013-ditching-the...
Re: Winning at Candy Crush
#107Back in the day I would log onto yahoo chess and beat everyone by simultaneously playing expert mode in windows chess and just mimicking the expert modes moves on yahoo as mine. Good times, never lost.
I hate you. I'm sure I played people like you. I like long games but people cheating forced me to play speed which I really hate.
Unless people intentionally griefed by creating new low-rating accounts to cheat at.
Re: Winning at Candy Crush
#108I had a somewhat similar story a few years ago with Bejeweled 2 (except that I didn't seek a way to cheat, just came across it). I wrote it up here: http://timotheeboucher.com/on-writing-laconic-error-messages... but the gist of it was that their score submission endpoint required a checksum, but the error message if the checksum was wrong was: Yes, the `int_csm` value is the checksum the server expected instead of t…
What you do with these flagged entries is up to you:-
a) Delete the scores after an hour or so (giving the chance for the user to check things)
b) Only display those scores to the user that logged in
c) Flag the entire account as 'cheat' and ban it after a few dodgy submissions
etc...
1. i.e. expected hash is hash(real_salt+data), supposed expected hash (returned to client in error message) is hash(cheat_salt+data). You obviously never return the real expected hash.
Re: Winning at Candy Crush
#109Re: Winning at Candy Crush
#110I had a somewhat similar story a few years ago with Bejeweled 2 (except that I didn't seek a way to cheat, just came across it). I wrote it up here: http://timotheeboucher.com/on-writing-laconic-error-messages... but the gist of it was that their score submission endpoint required a checksum, but the error message if the checksum was wrong was: Yes, the `int_csm` value is the checksum the server expected instead of t…
Hmm, if that was me (as the server programmer) I'd return a purposely different checksum[1] in the error message and then (internally) flag anything that was then submitted with that 'incorrect' checksum. What you do with these flagged entries is up to you:- a) Delete the scores after an hour or so (giving the chance for the user to check things) b) Only display those scores to the user that logged in c) Flag the ent…