If you didn’t know, I recently built a game called The Wingdings Game based on an odd idea born out of a group meeting. The game loads a set grid of random wingdings symbols, with one smiley face. You have to find the smiley face to win the level. Each level has increasing size grids, along with a hard mode where all the symbols are faces.
You can find the game here: http://nxrk.co.uk/wingdings/
Below is a few notes and observations from building this game:
1 – If you have a submission to a highscore table, people will go and edit in scores simply because they feel like ruining the table. Initially i had the score submission through a hidden field, but since that’s editable through any browser with a console / inspector, it’s now a session variable. As for the time going inbetween levels, nothing can be really done about this in this version without ditching PHP for the grid generation entirely.
2 – Wingdings is… an odd font. You can’t really find any information about it online. Or webdings for that matter. Support is fine in webkit-based browsers, and IE. Firefox however, has no support for wingdings, and to license the font for @font-face can only seem to be done via fonts.com for more money than it’s actually worth. Unicode does seem to have the symbols too, so version 2 will hopefully be making the switch to unicode.
3 – Since wingdings is just a font, people just like to find the character on the grid, in this case a capital J. Unicode could fix this in theory, unless someone copies that character to just paste into the find on page field. For now, the fix is to try and disable this field by disabling the letter F being pressed on the keyboard, but i’m sure there are ways around this.
4 – PHP’s strlen() function counts somewhat oddly. It may be it starts from 1 instead of 0 as with most things in php, but the result is that to avoid some odd errors with random generation, sometimes the string length minus one has to be used.