http://bugs.winehq.org/show_bug.cgi?id=17883
--- Comment #18 from Scott Percival pleasebanme@gmail.com 2009-07-22 23:43:33 --- The Telltale Launcher appears to be one giant nasty HTML page with all of the various states stored in table elements and lots of ghoulish Javascript to make the Trident engine do all of the dirty work. Thankfully, it first checks if the browser is one of the IE variants it knows how to deal with, and if not it shows a default "no script" div element which renders over the rest of the mess. This is where the "Serial Number" and "Click here to run the game" messages come from.
This is the bit of HTML in launcher/index.html used to submit the serial:
<!-- No script? This is shown by default. -->
<div id="noScriptDiv">
<form method="get">
Serial Number:<br />
<input type="text" name="activate_online"><br />
<br />
<input type="submit">
</form>
</div>
The problem is the form specifies a GET request, but not the "action" parameter. The old release of Wine Gecko correctly handled the quirk by loading "index.html?activate_online=WG100-12345-12345-12345-12345", at which point the program intercepts this with Black Magic and from then on kicks the user to launcher/success.html (the page with "Click here to run the game" on it). The new version doesn't bother using the GET request and just loads index.html again.
This was verified by editing index.html while the program was still running; after adding the "action" attribute the serial number submit process worked fine.
Irritatingly this bit appears to be handled by Wine Gecko. So really, all that changed in that regression test patch was:
-cpp_quote("#define GECKO_VERSION "0.1.0"") +cpp_quote("#define GECKO_VERSION "0.9.0"")
So a good workaround is to open up ~/.wine/drive_c/windows/temp, start the Telltale Game, wait for a new folder called something like E98AE04DBA0143AE8C646B9054FFE8DF to appear, and then edit launcher/index.html so that the <form> tag mentioned above has action="index.html" added to it. It should take a couple of tries to reload index.html into memory, but it'll activate as before. (Also, the demo should work if you add a hyperlink to "submit.html?command=launch")