{"id":1126,"date":"2021-01-04T13:48:27","date_gmt":"2021-01-04T18:48:27","guid":{"rendered":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/?p=1126"},"modified":"2021-01-04T13:48:30","modified_gmt":"2021-01-04T18:48:30","slug":"reviving-flash-as2-with-ruffle","status":"publish","type":"post","link":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/2021\/reviving-flash-as2-with-ruffle\/","title":{"rendered":"Reviving Flash (AS2) with Ruffle"},"content":{"rendered":"\n<p>In February of 2020 I started the cleanup and revival of an old website (read more about that in <a href=\"https:\/\/www.blindemanwebsites.com\/today-i-learned\/2020\/joy\/\" data-type=\"post\" data-id=\"845\">Joy<\/a>, visit <a rel=\"noreferrer noopener\" href=\"https:\/\/please-transfer.us\" target=\"_blank\">please-transfer.us<\/a>) and all the way at the end of December I did a lot more cleaning up still. I removed old dead links, added some new treasures and cleaned up more old code.<\/p>\n\n\n\n<p><strong>What:<\/strong> I had come across <a rel=\"noreferrer noopener\" href=\"https:\/\/blog.archive.org\/2020\/11\/19\/flash-animations-live-forever-at-the-internet-archive\/\" target=\"_blank\">an article on archive.org<\/a> about reviving old Flash animations and games (AS2) with <a rel=\"noreferrer noopener\" href=\"https:\/\/ruffle.rs\/\" target=\"_blank\">ruffle.rs<\/a> and the process seemed simple and easy enough to be very tempting. I couldn&#8217;t resist.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p><strong>How:<\/strong> It was in fact very easy:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>I downloaded the zip with the standalone version of ruffle. <\/li><li>Unzipped it and uploaded the files to the root of the website<\/li><li>Added <code>AddType application\/wasm .wasm<\/code> on its own line in the .htaccess file<\/li><li>Linked the ruffle.js in the footer of any webpage that has Flash files embedded<\/li><\/ol>\n\n\n\n<p>Et voil\u00e0, with a little Rust and JavaScript help, it all works again!<\/p>\n\n\n\n<p><strong>Thoughts:<\/strong> The only thing that stopped working for me was Flash scrollbars, buttons and simple animations etc all worked well, but this is of course by no means an exhaustive testing of Ruffle, just a mini-Flash revival on one of my sites.<\/p>\n\n\n\n<p>I will definitely be using ruffle again and am a little blue that it&#8217;s not yet working very well with AS3, but hopefully in the future!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In February of 2020 I started the cleanup and revival of an old website (read more about that in Joy, visit please-transfer.us) and all the way at the end of December I did a lot more cleaning up still. I removed old dead links, added some new treasures and cleaned up more old code. What: &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Reviving Flash (AS2) with Ruffle\" class=\"read-more button\" href=\"https:\/\/www.blindemanwebsites.com\/today-i-learned\/2021\/reviving-flash-as2-with-ruffle\/#more-1126\" aria-label=\"Read more about Reviving Flash (AS2) with Ruffle\">Read more<\/a><\/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":[208,206,211,11,103,209,210,91],"class_list":["post-1126","post","type-post","status-publish","format-standard","hentry","category-new-things","tag-as2","tag-flash","tag-internet-archive","tag-javascript","tag-personal-websites","tag-ruffle","tag-rust","tag-web-history","infinite-scroll-item"],"_links":{"self":[{"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/posts\/1126","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/comments?post=1126"}],"version-history":[{"count":1,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/posts\/1126\/revisions"}],"predecessor-version":[{"id":1127,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/posts\/1126\/revisions\/1127"}],"wp:attachment":[{"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/media?parent=1126"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/categories?post=1126"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blindemanwebsites.com\/today-i-learned\/wp-json\/wp\/v2\/tags?post=1126"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}