Changes

Jump to navigation Jump to search

Flash

7,388 bytes added, 28 March
m
Implementations
{{Infobox console
|title = Adobe Flash|logo = Adobe_Flash_Logo.png|developer logowidth= Adobe160|type = |generation developer= Adobe|release = 1996|discontinued = 2020|predecessor =
|emulated = {{✓}}
}}
'''Flash''' (previously FutureSplash Animator, before that SmartSketch) is a software platform created by FutureWave Software, and is currently owned by Adobe (previously formerly Macromedia). Originally a drawing program for PenPoint OS, later ported to Windows and Macintosh when pen computing failed to take off, frame-by-frame animation features were added to it in a new program called FutureSplash Animator. The company was acquired by Macromedia in December 1996, rebranding FutureSplash Animator to Flash, an amalgamation of "Future" and "Splash". In turn, Macromedia was acquired by Adobe on December 3, 2005. Their operations, networks, and customer care organizations were merged shortly after.
Used by an overwhelming majority of websites in between the early 2000s to and the mid-2010s, Flash has been was very much the go-to platform for multimedia online cartoons and animationgames, being utilised especially popular for streaming video providers such as YouTube, various entertainment sites and children's websites sites due to its rich content, and has spawned a its own subculture of animators and game developers as exemplified by the likes of Newgrounds. A number SWF elements also proved to be a crucial tool for many multimedia hosting sites so that they could actually play audio/video inside a browser, given the lack of popular animated series were also animated using Flashviable alternatives in the pre-HTML5 days. However, most notably ''My Little Pony: Friendship Is Magic''around the start of 2010 YouTube started pushing really hard for HTML5 media elements, ''Phineas which have since become a standard feature in modern browsers and Ferb'' and ''Happy Tree Friends'' to name a fewsingle-handedly made Flash Player obsolete for multimedia playback.
In fact, Flash's popularity declined as a whole started declining steeply in the mid-to-late 2010s due to the rise of alternative (and open) web standards such as HTML5 and mobile device manufacturers dropping support for the platform, a prominent example being Apple , who publicly stated that iOS will would ''never'' support Flash. Google followed suit when it dropped support for the platform in subsequent new releases of Android releases, and it didn't help that a series of security issues, coupled with Flash itself being a closed standard, has led Adobe to wind down on Flash and retire it the official player in 2020. The Flash authoring toolkit, since renamed Adobe Animate, is still actively supported and has undergone a total market shift towards animators; a number of popular cartoon series are already produced using Animate, most notably ''My Little Pony: Friendship is Magic'', ''Phineas and Ferb'' and ''Happy Tree Friends'', to name a few.
==Implementations==
; If you don't want to mess with these tools, just use [[Flashpoint]] - preservation effort for games and animations designed in commercial web frameworks (not just Flash).<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center;width:100%"! scope="col"|Name! scope="col"|Platform(s)! scope="col"|Latest version!scope="col"|[[#ScaleForm GFx|ScaleForm GFx]]!scope="col"|[[#Adobe AIR|Adobe AIR]]! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>! scope="col"|Active! scope="col"|[[Recommended Emulators|Recommended]]
|-
! colspan="68"|Desktop / Plugin <ref group=N name=plugin>Plugin versions of these players require a browser that supports & NPAPI/PPAPI.</ref>
|-
|Flash Player
|align=left|{{Icon|Windows|Linux|macOS|Web}}<ref group=N name=plugin>Web version requires a browser that supports NPAPI.</ref>|[https://web.archive.org/web/20220331041116/https://www.adobe.com/support/flashplayer/debug_downloads.html 32.0.0.465]|{{~}} <ref group=N name=scaleform>Requires the third-party software component to access it.</ref> ||{{✗}} ||{{✗}} ||{{~}} <ref group=N>Adobe versions discontinued. Harman versions are currently maintained for enterprise customers only.</ref> ||{{✓}}
|-
|[https://rufflegitlab.rscom/ cleanflash/installer Clean Flash Player]|align=left|{{Icon|Windows|Linux|macOS|Web}}<ref group=N name=plugin/>|[https://github.com/darktohka/clean-flash-builds 34.0.0.289] (Windows, Mac)<br />[https://github.com/darktohka/clean-flash-builds/releases/tag/v1.7 34.0.0.137] (Linux)|{{~}} <ref group=N name=scaleform/> ||{{✗}}||{{✗}} ||{{✓}} ||{{✓}}|-|[[Ruffle]]
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://ruffle.rs/#downloads Nightly builds]|{{~}} ||{{~}} ||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://lightspark.github.io/ Lightspark]
|align=left|{{Icon|Windows|Linux|Web}}<ref group=N name=plugin/>|[https://github.com/lightspark/lightspark/releases 0.8.67]|{{✗}} ||{{~}} [https://github.com/lightspark/lightspark/blob/master/src/main.1cpp#L365 *]||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>|-|Moco|align=left|{{Icon|Windows}}|[https://github.com/naomiEve/Moco git]|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://gnu.org/software/gnash GNU Gnash]
|align=left|{{Icon|Windows|Linux}}
|[https://www.gnu.org/software/gnash/download.html 0.8.10]
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
|-
|[http://tulrich.com/textweb.pl?path=geekstuff/gameswf.txt GameSWF]
|align=left|{{Icon|WindowsWindows7|macOS|Linux}}
|[https://sourceforge.net/projects/tu-testbed/files/demos/gameswf-2009-08-08/ 2009-08-08]
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/wiki swfdec]
|align=left|{{Icon|Linux|Web}}<ref group=N name=plugin/>
|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/download/swfdec/0.8/swfdec-0.8.4.tar.gz 0.8.4]
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
|-
! colspan="68"|HTML5 / WebAssembly
|-
|[https://github.com/vidkidz/waflash WAFlash[Ruffle]]
| rowspan="7" {{na}}
|[https://clubpenguinadvanced.github.iocom/waflashruffle-demors/ Webruffle git]|{{~}} ||{{~}} ||{{✓}} ||{{}} ||{{✓}}<small> (WIP)</small>
|-
|Ruffle[https://awayfl.org/ AwayFL]|[https://rufflegithub.rscom/demo Web demoawayfl/awayfl-player git]|{{✗}} ||{{~}} ||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://awayflvidkidz.org/ AwayFLgithub.io WAFlash]|[https://github.com/awayfl/awayfl-player git]<br />[https://exponenta.games/games/AFL/ Web demo]{{Na}}|{{✗}} ||{{✗}} ||{{✗}} ||{{}} ||{{~}}<small> (WIP)</small>
|-
|[https://swf2js.com/en/ swf2js]
|[https://github.com/swf2js/swf2js Download (Free Version only)]<br />Demo sites:<br />[https://swf2js.com/free/index.html Free Version]<br />[https://swf2js0.com/prod/index7.html Production Version8]|{{✗}} ||{{✗}} ||{{~}} ||{{✗}} ||{{~}}
|-
|[https://leaningtech.com/cheerpx-for-flash/ CheerpX for Flash]
|[https://docs.leaningtech.com/cheerpx-for-flash/Changelog Version 3435]|{{✗}} ||{{✗}} ||{{✗}} ||{{✓}} ||{{✗}}
|-
|[https://open-flash.github.io/ Open Flash / Doμ Player]
|[https://github.com/open-flash/domu-player git]
|{{✗}} ||{{✗}} ||{{✓}} ||{{✗}} ||{{✗}}
|-
|Shumway
|[https://github.com/mozilla/shumway git]
|{{✗}} ||{{~}} ||{{✓}} ||{{✗}} ||{{✗}}|-!colspan="8"|Mobile|-|[[Ruffle]]|align=left|{{Icon|Android}}|[https://github.com/ruffle-rs/ruffle-android git]|{{~}} ||{{~}} ||{{✓}} ||{{✓}} ||{{✓}}|-!colspan="8"|Consoles|-|FGP3|align=left|{{Icon|PS3}}|[https://github.com/DropSonic0/Flash-Player-PS3-Store 1.06]|? ||? ||{{✓}} ||{{✓}} ||{{✓}}|-|PSP Flash Player|align=left|{{Icon|PSP}}|[https://archive.org/details/swfplayerv13.7z v13]|? ||? ||{{✗}} ||{{✗}} ||{{✗}}
|}
</div>
<references group=N />
===Comparisons===
====Hybrid====;[[Ruffle]] <small class="plainlinks" style="font-weight:normal;">([https://ruffle.rs/demo/ web demo]) ([https://github.com/ruffle-rs/ruffle/issues/310 avm1 compatibility]) ([https://ruffle.rs/avm2.html avm2 compatibility])</small>:A Rust-based player that targets both HTML5 and desktop. Ruffle has been able to run many early Flash games since 2021, and the main development focus is now on support for newer AVM2-based files, although that's still far from complete as of 2024. Unlike the other HTML5 options, Ruffle can be installed as a WebExtension in browsers that support it, with the caveat that a website's hosted copy will sometimes override the extension even if the site is running an older build.:Ruffle has become hugely popular as an alternative SWF player, being notably used by a bunch of veteran Flash content sites including [https://www.newgrounds.com Newgrounds], [https://homestarrunner.com Homestar Runner] and [https://www.coolmathgames.com CoolMathGames], and also by the Internet Archive's [https://archive.org/details/softwarelibrary_flash Flash library]. It's also the most actively developed and arguably the most accurate of the open-source players that are available today, so this is likely your next best option if you don't want to bother with Flash Player or anything that's been forked from it. ====Desktop/ NPAPI====[[wikipedia:NPAPI|NPAPI]]—in case you don't remember—is an obsolete browser plugin system designed to allow for interactive web-page elements beyond what early versions of HTML could do on their own. While there were a bunch of different in-browser software platforms co-existing in the earlier days of the internet, NPAPI effectively existed only for the sake of SWF players once the format became properly dominant and pushed everything else out of the in-browser ecosystem. With the shrinking relevance of SWF in the late 2010s, the plugin system that the players relied on was increasingly seen as an ancient relic that modern browsers would be better off without, and so NPAPI started being phased out by all the major browser vendors in late 2020 (around the same time that Adobe was preparing to drop Flash Player itself). NPAPI hasn't entirely gone away though, as some indie browser devs still maintain it in their own forks of Firefox and Chromium and such. 
;Flash Player
:The proprietary reference implementationplayer, which Adobe stopped directly supporting at the end of 2020and has since fully delisted from their website. The web plugin version relies on [[wikipedia:NPAPI|NPAPI/PPAPI]], an obsolete browser plugin system has a built-in kill-switch that for many years only stuck around specifically because of Flash Player; as Adobe was phasing out the pluginflipped in January 2021, so too was the plugin system gradually being dropped by all it's probably not much use even in browsers that still support NPAPI, but the major browser vendors. The discontinued desktop player version is still available for usable if you download it from an archived version of the debug downloads section of Adobewebsite. It's website, and also worth noting that the player hasn't been completely discontinued: Harman International is also continues to maintain [https://airsdk.harman.com/flashplayer maintaining an extended support version specifically ] intended for enterprise users; and there's also a consumer-level Chinese version which is actively developed by Zhongcheng, although you shouldn't get it from their official site (Flash [dot]cn) because it'll be full of bundled malware.:Despite the hard discontinuation and a lack of support for user-friendly features such as URL spoofing, Adobe's Flash Player still remains the most widely-compatible desktop player for Flash games as of 2023, which is why the [[Flashpoint]] preservation project still relies on Flash Player to run its SWF games.:;CheerpX for Clean FlashPlayer::A proprietary software package designed to make An unofficial effort that takes the Harman still-active Zhongcheng version of Flash Player usable in modern web browsers by running and repacks it inside CheerpX, a payware x86 emulator in WebAssemblyminus as much malware as the Clean Flash project can remove. No-one on this wiki has had This might be the chance to properly evaluate it, but webetter option if you'd expect reference-level accuracy at the cost of woeful performance. That being said, CheerpX apparently has re looking for an alternate mode of operation that offloads most of the emulation and processing work to a server app, at which point the in-browser part is effectively just a streaming clientNPAPI player specifically.
;Lightspark
:A C++ implementation that's player designed specifically to provide drop-in FLOSS replacements for both the desktop and NPAPI versions of Flash Player. It claims to have 83% of the APIs overall SWF spec covered, as of August 2022, but development has been slow ever since it became a mostly one-person effort circa 2015. Lightspark historically focused on more recent versions of the Flash SWF spec that weren't supported by Gnash, hence why Lightspark could (and still can) use Gnash as an automatic fallback if both are installed simultaneously.
;GNU Gnash
:A desktop-only C++ implementation player that went inactive in 2017, with the most recent stable release dating back to 2012. Probably not much reason to use it over newer versions of Lightspark, which seem to have mostly (if not entirely) superseded Gnash. ;GameSWF:An ''extremely'' old C++ implementation, definitely one of the first serious efforts to reverse-engineer Flash Player into an open-source package. Inactive since 2009, though it did lay the foundations for Gnashcompatibility.
;GameSWF & swfdec:Another Two very early effort efforts to replicate create non-proprietary replacements for the desktop Flash Player's NPAPI plugin in open-source. Actually pretty advanced for 2008-09, but it hasn't been active both inactive since2009 and very much obsolete nowadays. Gnash began as a fork of GameSWF.
====HTML5====
;''Common aspects'':''Pretty much all of the implementations players listed here are specifically designed to be used as [[wikipedia:Polyfill (programming)|polyfills]] by webmasters who want to keep their Flash-based sites going despite the forced obsolescence of Adobe's in-browser Flash plugin. They are , therefore really , largely not intended for personal use, although it's usually not impossibleand some of them even have official demo pages that you can use to load whatever SWF file you want.''
;RuffleCheerpX for Flash:A Rust implementation that mainly targets HTML5, but is also available as a desktop player. Notably used by a bunch proprietary software package designed to make the Harman version of veteran Flash content sites including [https://www.newgrounds.com Newgrounds]Player usable in modern browsers by running it inside CheerpX, [https://homestarrunner.com Homestar Runner] and [https://wwwa payware x86 emulator in WebAssembly.coolmathgames.com CoolMathGames], and also by No one on this wiki has had the Internet Archive's [https://archive.org/details/softwarelibrary_flash Flash library]. It's progressed chance to the point where properly evaluate it can run many early Flash games, including but we'd expect reference-level accuracy at the original Flash version cost of [https://www.newgrounds.com/portal/view/59593/format/flash?emulate=flash Alien Hominid]woeful performance. Unlike the other HTML5 optionsThat being said, Ruffle CheerpX can actually be installed also function as a browser addon, with the caveat streaming client to a bundled server app that a website's hosted copy will usually override does the addon even if the site is running an older buildemulation and processing work instead.
;AwayFL<small class="plainlinks" style="font-weight:normal;">([https://exponenta.games/games/AFL/ web demo])</small>:An HTML5 implementation developed Developed by the Away Foundation. Sometimes works better than Ruffle, depending on this is arguably the specific Flash file you're trying most direct alternative to runRuffle, although it has fallen behind in terms of compatibility.
;WAFlash<small class="plainlinks" style="font-weight:normal;">([https://clubpenguinadvanced.github.io/waflash-demo/ web demo])</small>:An inactive, closed-source C++-to-HTML5 implementation WebAssembly player that technically hasn't been made available to outside users, although there are a few sites where you can use it. It was considered the most accurate of the unofficial Flash players as of late 2021, although Ruffle and AwayFL other still-active projects have since caught up significantly.
;swf2js<small class="plainlinks" style="font-weight:normal;">(web demos: [https://swf2js.com/free/index.html free], [https://swf2js.com/prod/index.html production])</small>:An open-core HTML5 implementation player that uses a dynamic recompiler. The source-available "Free" version supports limited features, such as AS1, AS2 and ZLIB compression. In contrast, whereas the payware "Production" version is better suited to newer Flash files using such features as AS3 and LZMA compressionfeatures. Built on more traditional JavaScript code, so it pretty much always performs worse than any of the WebAssembly-based optionsplayers, sometimes noticeably so.
;Shumway
:A relatively very early HTML5 implementation. Developed rather player, actively developed under Mozilla sponsorship between 2012 and 2016, but ultimately then abandoned before it could reach reaching a usable beta state. ==Peripherals=====ScaleForm GFx===Scaleform GFx is a discontinued game development middleware package, a vector graphics rendering engine used to display Adobe Flash-based user interfaces and HUDs for video games. In March 2011, Autodesk acquired Scaleform Corporation and Scaleform GFx became part of the Autodesk Gameware line of middleware. On July 12, 2018, Autodesk discontinued Scaleform GFx, and it is no longer available for purchase. Authors created user interfaces using Adobe Flash authoring tools, such as Adobe Animate (formerly Adobe Flash Professional); the resulting SWF files were used directly by the GFx libraries, providing similar functionality to the Adobe Flash Player but optimized for use within game engines. Scaleform GFx supported all major platforms, including game consoles, mobile and PC operating systems. Scaleform provides APIs for direct communication between Flash content and the game engine, and pre-built integrations for popular engines such as Unity, Unreal Engine, and CryENGINE. Scaleform GFx could also be licensed for use as a standalone Flash runtime system on mobile platforms, competing with Adobe AIR. ===Adobe AIR===Adobe AIR (also known as Adobe Integrated Runtime and codenamed Apollo) is a cross-platform runtime system currently developed by Harman International, in collaboration with Adobe Inc., for building desktop and mobile applications, programmed using Adobe Animate, ActionScript, and optionally Apache Flex. It was originally released in 2008. The runtime supports installable applications on Windows, macOS, and mobile operating systems, including Android, iOS, and BlackBerry Tablet OS. AIR is a runtime environment that allows Adobe Animate content and ActionScript 3.0 coders to construct applications and video games that run as a stand-alone executable and behave similarly to a native application on supported platforms. An HTML5 application used in a browser does not require installation, while AIR applications require installation from an installer file (Windows and macOS) or the appropriate App Store (iOS and Android). AIR applications have unrestricted access to local storage and file systems, while browser-based applications only have access to individual files selected by users.
==See also==
* [[Flashpoint]https://archive.org/details/softwarelibrary_flash?tab=collection Archive.org-Software Library: Flash] - preservation effort Internet Archive's Flash Games Software Library is abundant with options for any level of computer gaming. With an in-site emulator ready to run thousands of games designed in commercial web frameworks (not just Flash)the Software Library, the Internet Archive can turn your computer into a mini arcade at the click of a button.
== Resources ==
* [https://nosamu.medium.com/flash-player-emulators-how-to-play-swfs-in-2021-and-beyond-d56c3899b7e6 Article by nosamu (of Flashpoint): Flash Player Emulators: How to Play SWF Files in 2021 and Beyond]
* [https://huwdp.github.io/Flash-Matrix/ Huw Pritchard's Flash Matrix] ([https://github.com/huwdp/Flash-Matrix source repo]) &mdash; an effort to calculate AVM2/AS3 support across multiple Flash players
[[Category:Not really emulators]]
78
edits

Navigation menu