{"id":139,"date":"2009-04-06T19:46:41","date_gmt":"2009-04-06T09:46:41","guid":{"rendered":"http:\/\/blog.chase.net.au\/index.php\/2009\/04\/jade-empire-on-windows-7\/"},"modified":"2019-01-28T19:44:58","modified_gmt":"2019-01-28T09:44:58","slug":"jade-empire-on-windows-7","status":"publish","type":"post","link":"http:\/\/blog.chase.net.au\/index.php\/2009\/04\/jade-empire-on-windows-7\/","title":{"rendered":"Jade Empire on Windows 7"},"content":{"rendered":"<p>Note: This probably works on Vista as well.<\/p>\n<p>Having purchased <a href=\"http:\/\/jade.bioware.com\/\">Jade Empire<\/a> from <a href=\"http:\/\/www.steampowered.com\/\">Steam<\/a> for the cool price of <a href=\"http:\/\/store.steampowered.com\/app\/7110\/\">$15<\/a>, I was having all sorts of trouble trying to get it to run.\u00a0 Basically the configuration program would crash every time I attempted to run the application, and it refused to run the actual application without running the configuration program.<\/p>\n<p>Searching on the net proved pretty much worthless &#8211; turned out quite a few people were having the problem, but no one seemed to know any way to fix it.\u00a0 Other people were saying it ran fine if you just skipped the config program but the issue is you can\u2019t skip the config program on the \u201cfirst run\u201d.\u00a0 That was the trick \u2013 how to convince the game it was no longer the first run.<\/p>\n<p>First stop, good old post-moretem debugging with <a href=\"http:\/\/www.microsoft.com\/whdc\/devtools\/debugging\/\">Windbg<\/a>.\u00a0 Sadly, this told me that it was crashing trying to free a block of memory that had either not been allocated or had already been freed (the call stack was inside HeapFree, and through a few compatibility layers Win7 had tossed in for me).\u00a0 No help there, and telling it to ignore the exception didn\u2019t make matters any better \u2013 even to get it through the \u201cfirst run\u201d stage.<\/p>\n<p>Next stop, <a href=\"http:\/\/technet.microsoft.com\/en-us\/sysinternals\/bb896645.aspx\">Process Monitor<\/a>\u00a0(one of those evil apps that daft DRM companies like SecuRom decide shouldn\u2019t be allowed because they may actually help you fix their games for them I guess?).\u00a0 The last file it tried to access before crashing was <em>SystemInformation.xml<\/em> in the game\u2019s data directory.\u00a0 Turned out that file didn\u2019t exist, and so was a big clue about what the game used to determine whether the config had run or not.<\/p>\n<p>Nothing to lose \u2013 create a blank file with Notepad and save it as <em>SystemInformation.xml<\/em> in <em>C:\\Program Files (x86)\\steam\\steamapps\\common\\jade empire\\data<\/em>.\u00a0 Attempt to run the config program and it still crashes.\u00a0 Next, attempt to run the main game and it skips the config and actually starts and plays without issue (at least to character creation so far).<\/p>\n<p>Cool \u2013 not a waste of $15 after all!<\/p>\n<p>Edit:\u00a0 As pointed out in the comments, make sure you run Notepad as Administrator to create the file or it won\u2019t do what you think.\u00a0 Thanks to <a href=\"http:\/\/blogkindle.com\/\">Blog Kindle<\/a> for the tip.<\/p>\n<div class=\"bjtags\">Tags: <a href=\"http:\/\/technorati.com\/tag\/win7\" rel=\"tag\">win7<\/a>, <a href=\"http:\/\/technorati.com\/tag\/jade+empire\" rel=\"tag\">jade+empire<\/a>, <a href=\"http:\/\/technorati.com\/tag\/crash\" rel=\"tag\">crash<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Note: This probably works on Vista as well. Having purchased Jade Empire from Steam for the cool price of $15, I was having all sorts of trouble trying to get it to run.\u00a0 Basically the configuration program would crash every time I attempted to run the application, and it refused to run the actual application [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-139","post","type-post","status-publish","format-standard","hentry","category-general"],"_links":{"self":[{"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/posts\/139","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/comments?post=139"}],"version-history":[{"count":4,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/posts\/139\/revisions"}],"predecessor-version":[{"id":226,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/posts\/139\/revisions\/226"}],"wp:attachment":[{"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/media?parent=139"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/categories?post=139"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.chase.net.au\/index.php\/wp-json\/wp\/v2\/tags?post=139"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}