
Adobe Flash’s Gaming Legacy and My Efforts To Save It - bdz
https://blog.usejournal.com/adobe-flashs-gaming-legacy-thousands-upon-thousands-of-titles-and-my-efforts-to-save-it-58c14811558a
======
ravenstine
Perhaps worse than the death of Flash was the death of Shockwave. I feel like
so many Shockwave games I played back in the day are completely gone with no
reference to them on the modern internet. Today, you can install some version
of Flash on most operating systems, but I don't think there's any modern
standalone Shockwave player and I could only get the plugin to work in Safari
on macOS. Chrome and Firefox don't even run those types of plugins anymore.

There's one particular Shockwave game that I was recently able to recover from
the depths of the Wayback Machine, which was a game from Disney for the
Inspector Gadget movie; terrible film, but their website had this nifty little
game that wasn't necessarily difficult but was addicting in that I wanted to
see just how far I could go with it. For years I thought it was gone for good,
and was glad to finally see it again after I lost it 15+ years ago.

Here it is in all its 1999 glory:
[https://web.archive.org/web/20031017000018/http://www.disney...](https://web.archive.org/web/20031017000018/http://www.disney.co.uk:80/gadget/repair.html)

I always liked it in part because I don't think I've seen a similar game. It's
kind of like if you took the random shapes part of Tetris and added a "jigsaw
puzzle" element.

~~~
chrisseaton
What was the difference between Flash, Shockwave, and Shockwave Flash (I think
the last one was a thing!)?

~~~
tomysshadow
When asking the difference between Shockwave and Flash, you'll often get the
answer that they're two products that have nothing to do with each other. That
is almost true, but not entirely true.

Director was originally meant for creating CD-ROM games. However, in the early
90's, it began finding a new home on the web. "Shockwave" was Macromedia's
term which meant "compressed for the web." The first entry in the Shockwave
line of products was Shockwave Director Player - so called because it could
play Director Movies which had been compressed for the web. Because it was, at
the time, the first and only product in the Shockwave line of products,
Shockwave Director Player was often shortened to just "Shockwave."

Enter Flash. Again, Macromedia wanted Flash Movies to be able to be compressed
so they could be downloaded quickly over the web - so they made the Shockwave
Flash Player plugin, so called because it could play Flash Movies which had
been compressed for the web. So there was Shockwave Director Player, to play
compressed Director Movies, and Shockwave Flash Player, to play compressed
Flash Movies.

The problem is, by this point, everyone already knew Shockwave Director Player
as just "Shockwave." To those uninformed, it seemed that there was now both a
Shockwave AND a Shockwave Flash. Shockwave Flash Player was more often
referred to as just Flash, to avoid confusion with what was already being
referred to as Shockwave.

So when we say Shockwave, we're referring to the first word in Shockwave
Director Player, but when we say Flash, we're referring to the second word in
Shockwave Flash Player...

Or at least, this was the case until Adobe acquired these names from
Macromedia, at which point they just decided to rename the plugins to what
they were being popularly referred to as. Now what was Shockwave Director
Player is officially just called Shockwave, and what was Shockwave Flash
Player is officially just called Flash. In order to further undo the
confusion, SWF was changed to stand for Small Web Files instead of ShockWave
Flash.

~~~
kalleboo
Great summary!

As for useless trivia, Director actually even predates it's main use of
producing multimedia CD-ROMs. When it was still a MacroMind product, it was
used for stuff like the "getting started" floppy disk for early Macs (the
tutorial where you learned how to use a mouse by feeding fish and stuff)

[http://www.action-
packed.net/q-design/examples/Instructional...](http://www.action-
packed.net/q-design/examples/Instructional/MacBasics.html)

~~~
tomysshadow
Right, I suppose it's not fair to say it was originally meant for "creating
CD-ROM games," that's an oversimplification. It's more like it was meant as a
way to make applications without needing to learn a more advanced language
like C++.

------
nneonneo
It's a damn shame that HTML5 implementations of Flash, like Shumway
([https://en.wikipedia.org/wiki/Shumway_(software)](https://en.wikipedia.org/wiki/Shumway_\(software\)))
and Swiffy
([https://en.wikipedia.org/wiki/Google_Swiffy](https://en.wikipedia.org/wiki/Google_Swiffy))
are no longer being actively developed. I would have thought running SWFs in
the JS sandbox would be a good way to get the compatibility of Flash, without
the insane security bugs that it comes with.

And in case anyone is still in doubt about Flash's security woes - take a
gander at the Flash CVE page at [https://www.cvedetails.com/vulnerability-
list/vendor_id-53/p...](https://www.cvedetails.com/vulnerability-
list/vendor_id-53/product_id-6761/Adobe-Flash-Player.html). There were FIVE
CVSS 10 bugs (total and complete remote code execution with minimal user
interaction, i.e. visit a malicious page and your computer is owned) published
just _two months ago_. The author of Flashpoint is absolutely correct in his
assessment that Flash will be overrun with security bugs as soon as it hits
EOL in 2020.

~~~
clouddrover
> _I would have thought running SWFs in the JS sandbox would be a good way to
> get the compatibility of Flash_

And these days a WebAssembly build of Flash player would be an even better
way, but it would depend on Adobe being willing to spend the time and the
money to do it.

~~~
nojvek
I’ve spent a ridiculous amount of time reverse engineering SWF files. There
was even a time when Adobe published the SWF file bytecode format. It’s not a
terribly complicated format like photoshop psd.

WebAssembly is probably a good target. However flash added a ton of apis in
their latest versions. They were so ahead of the game before html5 before even
became a thing.

I’m sure Adobe has patents/trademark on some of the things. Also Adobe Flex,
that was a god send for rich internet applications. Their components were
really well done and I still can’t fine equivalent things in this day and age.

I do strongly believe if Adobe had open sourced big chunks of things, Flash
and a number of technologies would still be relevant today. Their big money
makers were the IDE’s like Flash Studio, dreamweaver, photoshop etc. The
formats and the runtimes should have been open from the get go.

Although it was the Ballmer era when most corporate CEOs truly believed OS was
cancer.

~~~
random3
Flash was mixed with licensed non-opensource-able stuff and it wasn't a
trivial code base in the first place. Given that Adobe hasn't actually made
much money off Flash, such an effort would have been likely unfeasible and
prohibitively expensive. Someone from the Flash team could chime in here to
give more details.

~~~
cft
Another option was for Google to buy Macromedia, instead of Adobe. I believe
web would have looked completely different today.

------
lxe
I do understand some of the reasons behind the web community’s rejection of
flash over the past decade and a half — security and accessibility issues,
closed standards, etc. However Flash and Shockwawe technology enabled smooth
interactive graphics on 90’s and 00’s desktop hardware, in packages that are
friendly for 56kbps dialup connections. Nothing compares to it, still to this
day — web platform tech still horribly underperforms and is only now capable
of what flash could do a decade ago. We could also blame Apple and Smartphones
and Yourube for its demise, but I feel like we haven’t moved forward in terms
of quality shareable interactive media since Flash.

~~~
mhenr18
I hope by smooth you're referring to the graphics being vector vs bitmap,
because Flash performed really badly once you added any kind of complexity to
a scene. (edit: simple things worked brilliantly though, and often that was
enough.) The key innovation of Flash was and still is the creation side of
things in Flash Pro rather than the runtime.

My main experience was with Line Rider. I didn't create it, but I became
involved in the community and started making tweaked versions with tools that
made it easier to create tracks (as opposed to versions that let you do things
like change the physics or the rider).

Every line you added to a track caused a new MovieClip to be added to the
scene that had a line drawn in it. By the time you had around 3,000 lines or
so you'd start to get reduced framerates. 3,000 lines sounds like a lot, but
is tiny when you consider tracks that have accompanying artwork.

A few years ago, we released a JS + WebGL rewrite of Line Rider that has a
physics engine that's bug-for-bug compatible with the original (you can play
it at [https://www.linerider.com/](https://www.linerider.com/) if you're
interested - sorry if that's too self promotional). With access to WebGL and a
_massively_ faster ECMAScript runtime, the JS version runs multiple orders of
magnitude faster than the original Flash version.

It's now possible to work with tracks that have hundreds of thousands of lines
without experiencing frame rate drops as opposed to just a few thousand lines.
So as for web platform tech underperforming from a runtime point of view, I
disagree.

The problem is that all the ingredients are there to make something great, but
the developer effort required is monumental in comparison to how fast it was
to make something work with Flash Pro.

~~~
annywhey
To be fair, it became possible to do deeper graphical optimizations in Flash
later in its lifespan(particularly after the BitmapData API, and towards the
very end, Stage3D) but I would agree that it wasn't in the spirit of the tool
to work on Flash games with an eye towards high framerates, that just happened
as a byproduct of the web-game space professionalizing around the close of the
last decade.

It really was an odd, "software is brutal" history in that in a very short
timeframe Flash progressed from being the domain of hobbyist game makers,
animators and web site designers into the core client technology of _every_
web site using audio and video. And then a few years after that, it was cut
off from expanding to mobile and was strangled on the web through expansion of
HTML.

------
jdonaldson
For those of you involved in saving flash projects, consider Haxe and OpenFL :

[https://haxe.org/](https://haxe.org/)

[http://www.openfl.org/](http://www.openfl.org/)

Case Studies:

[https://haxe.org/blog/tivo-using-haxe-to-improve-user-
experi...](https://haxe.org/blog/tivo-using-haxe-to-improve-user-experience-
for-millions-of-customers/)

[https://venturebeat.com/2017/12/12/flowplay-overhauls-
vegas-...](https://venturebeat.com/2017/12/12/flowplay-overhauls-vegas-world-
ditches-adobe-flash-for-haxe/)

------
bdz
Here is the latest dump with almost 4000 titles
[https://archive.org/details/Flashpoint3.3.zip](https://archive.org/details/Flashpoint3.3.zip)

------
anchpop
Imo this is an incredible project. I wasted thousands of hours playing flash
games as a kid, glad to see someone is interested in preserving them

~~~
simongr3dal
I also grew up spending a lot of time playing those games. I say good ridance
to the flash video players, but seeing the screenshots of those games, it
makes me pretty sad to think that so many of them might be going away.

------
krupan
Let this be a warning to young developers tying into proprietary platforms.

(Not one mention in TFA of
[http://homestarrunner.com](http://homestarrunner.com), for shame)

~~~
wvenable
That's not fair. There was a point in time that if you don't use flash for web
games, you just weren't doing web games. HTML was not up to the task.

You could avoid being tied to proprietary platforms now but there is a good
chance you're just leaving the market to someone else.

~~~
sigjuice
Running another program in a rectangle in your web browser can hardly be
called “web”.

~~~
kalleboo
Does WebAssembly running in a <canvas> tag count as "web"?

~~~
fooker
Maybe. However, wasm will eventually tightly integrate with the DOM.

~~~
charlchi
Yeah it seems like people don't understand this. We've had an era of
JavaScript dominating web standards. I also don't think people realize this is
only the start of wasm...

------
exgamedev
Thank you to everyone preserving these games. I made over 40 flash games in my
career and I'd like to see at least 3 of them preserved indefinitely

------
mintplant
To capture more than just the SWF:

\- Load the game into a real web browser and let it run for a bit

\- Intercept all network requests with a caching proxy

\- Save the external resources loaded to disk

Would that help? The process could be automated, though only for games which
load all their resources without human interaction. But then, clicking through
a few screens to get a game to start is a much less time- and knowledge-
intensive task per game than reverse-engineering the source code of each, at
least to get as much data backed up in some state as possible before it
disappears.

~~~
tomysshadow
There's an excellent command line application called Auto Saving Sniffer which
can be found here (ignoring the rather crude abbreviated name.)

[https://www.cockos.com/assniffer/](https://www.cockos.com/assniffer/)

While you need to play through the entire game to be sure you have all of it,
this is a big time save, though with the downside it doesn't work over HTTPS.
It's also possible to use a Fiddler script to accomplish something similar,
which defeats the HTTPS problem.

------
JasonFruit
From the article:

 _There’s eventually going to be one question on the lips of everyone
involved, though: is this legal? And the only real answer is nobody knows and
really, nobody should care._

I can understand having an urge to preserve something that is in danger of
decaying past recovery — I feel the same way when I see an interesting
building or a classic airplane rotting away somewhere — but the usual course
of action is to choose what you find most worth saving, _purchase it from the
owner_ , and restore your new possession. Any other course isn't legal, in
most cases, and it isn't here either, in most cases. I care about that, and
some of the game creators will care about it too.

~~~
LocalH
If we care about legality when it comes to media preservation, more often than
not works will end up lost or destroyed one day.

Today's pirates are tomorrow's historians.

~~~
JasonFruit
That is true. Other people's rights are often an inconvenience.

~~~
bobajeff
Copyright isn't really a right in the sense of the public freedoms/choice.

It's there to limit publishing and distribution to only those with the legal
document saying they can. It's more of a anti-right. In fact historically it
was created for the purpose of censorship.

~~~
JasonFruit
People have a right to the fruits of their labors. I don't care a tinker's
mother about the history of copyright — the principle is simple, and copyright
is a flawed protection of that right.

~~~
bobajeff
Though it may be used by industry on some occasion to protect someone's
ability to profit. Copyright and the right to the fruits of your labor are not
the same thing.

In cases like this disregarding one isn't equivalent to infringing on the
other.

~~~
JasonFruit
I expressed the contrast between copyright and the right it attempts to
protect above. Notice that I didn't say anything about _profiting_ from the
fruit of their labors, but the right to them, no matter whether they choose to
profit or let it rot. It's just as much an infringement to preserve it without
their permission as it is to sell it.

~~~
bobajeff
Yep that's the definition of copyright. Seems like more of a anti-right as
it's about limiting others rights.

~~~
JasonFruit
I see the problem here: you don't know what a right is.

------
keymone
Some years from today it will be proper chunk of retro scene, but I for one am
happy we’ve moved on. Flash was horrible and a burden.

Edit: missing word

~~~
coldacid
In hindsight, sure. But it was perfect (or as close as you could get) for the
time it was created.

------
shmerl
Mozilla tried with Shumway project, but it got abandoned.

------
ducttape12
And this is the problem I have with tying anything to a remote server. Every
digital movie, song, book, or video game that requires a remote server for
patches, activation, or anything else will eventually end up like this.

What happens in 5 years when Sony turns off their PS3 servers? And what
happens in 10 years when most of the hard drives in those PS3s need replacing?

------
endgame
Not only this, but I've had a very difficult time even finding original SWFs
of animutations. Albinoblacksheep only seems to host video renders these days.
While that works, many authors hid extra content in their videos, and that's
now lost to time.

------
yosefzeev
One could ask is the attempt to save lost games, or lost innocence?

~~~
jplayer01
It's about saving cultural goods. The worst thing about the modern age is how
transient and impermanent data is. In 100 years, the past 30 years will be
effectively a big black hole for anybody interested in studying our culture
and civilization.

