Quote from encseMar 22, 2011 - 06:33:43
Well. I wouldnt have thought that this is such a pain for you guys.
I've played through a lot of challenges on a lot of sites and I've done alright, but on average I've gotten the right answer on the first try maybe something like 25-30% of the time. That depends a lot on how the site itself is set-up. Yours looks to be formatted in such a way that that percentage should be much higher, still, mistakes happen.
Quote from encseMar 22, 2011 - 06:33:43
1) I have to prevent trial and error in the solution posting.
If your solution passwords are moderately long and complicated you are talking about millions of possibilities. No one is going to manually guess their way through. That leaves...
Quote from encseMar 22, 2011 - 06:33:43
2) also a simple way to prevent actual brute force attacks.
Brute forcing millions of passwords means lots of attempts per second or the brute forcing will take a very long time. A delay of five seconds between attempts will make brute forcing very time consuming. I've also seen an attempt limit of 5 or 10 per day. That should also pretty much kill brute forcing.
Most people in most cases won't notice the delay of five seconds. If you get it wrong you have to go back and rethink anyway. If you know the answer and misspelled it, you'll have to wait five seconds but that won't kill you. It would be irritating to lose points over a typo though.
Quote from encseMar 22, 2011 - 06:33:43
3) helps ranking the perfect agents amongst the perfect agents
I believe that the 'hint bank' mechanism mentioned by sabretooth is a better way to do this. There are other methods also, though. I've seen sites track attempts but not punish for the attempts. That way, you can rank by score and then by attempts. Brainquest sometimes offers hints after x amount of time (0 seconds to several days). You don't have to look at the hint but if you do it is recorded. Some sites record "time taken to solve". I don't think this is a very good method as there are a lot of external factors that effect it.
Quote from encseMar 22, 2011 - 06:33:43
4) the solution checker accepts a wide range of solution formats (eg if you need to submit numbers, you are free to
select the separator).
That may be the case and I am happy to know that you have attempted to make the solution checker flexible. It is irritating to miss a challenge because the checker expects a different but equivalent solution format. I don't think your checker is going to accommodate all possibilities. It is a noble goal but a very difficult one. You are, in practice, going to be punishing for formatting errors.
Quote from encseMar 22, 2011 - 06:33:43
5) it's hard to come up with a wrong answer if you understood the problem and think that you solved it.
I haven't played enough of your site to comment directly, but I have seen this claim in other contexts and it didn't really play out true.
Quote from encse
Or you just say, that it's an ever going fight, because there will always be cheaters with e.g. duplicated accounts, so it's impossible to make any difference?
This one is tough and I don't know how to solve it. I'd start by tracking "time taken to solve". It should take more that a few seconds to solve a challenge. I'd track "solution frequency". Someone solving five challenges in three minutes is definitely suspicious. I'd track "solutions across multiple users". If two users consistently solve the same challenge within seconds or minutes it would be suspicious-- duplicate accounts or someone is passing answers to someone else. Tracking IPs should help. Two players solve the same challenge within a minute or two from the same IP would count as suspicious. You will never catch everyone and moving from 'suspicious' to 'proven' would be tricky but I'd think that some of these mechanisms should help.
Those are my thoughts. I hope some of it is helpful.