There's a bunch of letters: http://www.wannaspell.com/images/cs/a.png They're contained in the container:
All the JS is in two files: http://www.wannaspell.com/include/app.js http://www.wannaspell.com/include/lib.js The position of each letter is updated via constant fetches to: w3m -dump_source 'http://www.wannaspell.com/p.aspx?r=1' The data that's sent from server=>client looks like: [[121,352507],[149,70083],[22,195925],[83,332984],[119,326691],[156,249241],[104,132959],[63,147263],[24,137732],[141,0],[153,243853],[85,301000],[124,24602],[83,332984],[118,339984]...] The two data points are (from syncCallback() in app.js): 1. the index into the character[] array, which (I believe) is in the same order as what's present in the fun.aspx HTML 2. the new position for that letter, which is encoded as (y * canvasWidth + x), where canvasWidth is hardcoded in app.js as 780 To move a letter, the browser sends: http://www.wannaspell.com/p.aspx?a=AVAL&b=BVAL where AVAL is the character index, per above, and BVAL is the encoded position, per above -- where's the room number though?