Flash Game History
flashgamehistory.com
flashgamehistory.com
Brings up a good point of the old WWW: we expected to have to navigate a number of sites to source content, and it was good! I remember having to surf Ebaumsworld, Newgrounds, and a bunch of direct content-creator sites to play a whole slew of games.
https://medium.com/leaningtech/running-flash-in-webassembly-...
https://medium.com/leaningtech/preserving-flash-content-with...
A presentation about the architecture of the system: https://www.youtube.com/watch?v=7JUs4c99-mo
Feel free to drop me any question: https://twitter.com/alexpignotti
Our approach is different. We run the binary plugin safely in the browser via WebAssembly virtualization.
So many developers still feel like Flash was the most amazing thing that ever happened to them in their creative careers.
For building today’s platforms and technologies, it is important to remember what made Flash great, but it is at risk of being forgotten because Flash will no longer be supported after December 2020.
I’d like to spread the message to influence and inspire the next generation of tool creators!
On top of that, for kids learning to make games, the idea of getting a $20/month Adobe CC subscription is a massive stretch. For it to catch on these days there would really need to be some free tier.
It's impossible to tell which games were made by kids, but take a look at this:
Which with the addition of timelines editor and ability to add Javascript code we think is pretty much on feature parity with Flash.
Be interested to hear if we're lacking in any way compared to Flash as we'd like to close any of those gaps!
I did a few Flash games myself when I was young, it was amazing, so quick to achieve a result. A decade later I tried doing the same over Unity, and I couldn't do much...
Vector graphic allow you to easily draw something quick and animate it easily with interpolation. It also has the advantage of looking great whatever resolution you got. 2D graphic allow you to not be concerned about performance that much, nor does it require complex manipulation to be used quickly.
Additionally, PC/Console 2D & 3D games were using Flash to author and render their UIs for a very long time via ScaleForm. They only discontinued it in 2018.
Flash gaming became much bigger than Newgrounds and had massive influence on how to build future WYSIWIG tools to empower designers and artists.
In fact, Adobe hoped it would become the new JavaScript. The history of ECMA 4 was fascinating[1].
In a surprising twist of history, AS3's ideas were rediscovered years later with a language called Typescript that among other things added classes and static typing...
Flash development's language and tools were surprisingly ahead of their time!
That's a bit jumbled. AS3 was an early implementation of the ECMAScript 4th edition spec - Macromedia/Adobe implemented it expecting that the same changes would soon be coming to standard JS. ECMA later wound up abandoning that spec (for reasons unrelated to Flash), leaving AS3 sort of stranded as its own separate language.
Here's an article I wrote about it when flash was still a thing:
https://www.boristhebrave.com/2010/05/04/x-gems-of-as3-langu...
But it was a very significant industry, every major games company had divisions building FB games, we had games hitting 20+ million DAU overnight, it was big business.
I made Flash games (among other things) at Sony, Disney, PopCap, and Amazon. I’m not sure people understand how widely it was used.
Now... I also saw the writing on the wall and made a hasty exit in 2012 because it was clearly dying. But for a while it was a vibrant and well-paying niche.
Even stuff like Roblox is only just getting noticed by game development influencers and it’s a huge platform pointing at the road towards the next big thing in games.
Glad this is no longer a thing, still remember playing Borderlands for the first time and thinking the UI was really janky and unresponsive feeling, then I googled ScaleForm because the logo was at the start and I hadn't heard of it and suddenly it all made sense because the UI had that jank that was really unique to poorly coded Flash content.
I'm pro Flash on the whole because of the explosion of creativity in the web game scene but ScaleForm was one case where the technology made a few engineers lives easier at the expense of making the end user experience way jankier.
Game in question is Roadblocks for anyone interested https://www.newgrounds.com/portal/view/192217
For all the problems with Flash, we definitely lost a lot when we dropped it.
I remember some project that seems to require you to download the entire 1 TB torrent and/or some sort of custom launcher, but nothing that focuses on trying to translate games into JavaScript (or WASM, or something else that lets you go to a web site and start playing right away), or just provide ZIP files that you can drop into a VM with an old browser.
Edit: The project I know of is https://bluemaxima.org/flashpoint/ and seems the most promising so far that I've seen. It's windows-only, the sandboxing seems sketchy (seems to explicitly make changes on the host then try to revert them), and the launcher is almost 2 GB, but I suspect it's the best we have right now.
http://ruffle-rs.s3-website-us-west-1.amazonaws.com/builds/w...
Unfortunately not all games are compatible yet. (Edit: actually, I could only get two games to run - the above-mentioned Fishy and Divine Intervention https://www.newgrounds.com/portal/view/136337; everything else fails)
Let me tell you a story.
So, there was a gathering of supposedly some of the best ActionScript developers in the world in the Macromedia office in San Francisco (just as they were about to be acquired by Adobe). These developers were the ones that wrote libraries the world uses, best game developers, et al.
One of the talks was by Gary Grossman, the father/inventor of ActionScript. He starts off by saying in the lines of, "I'm going to go a bit technical in this."
Well, we heard him talk about things after which we begin to think if he was talking about ActionScript or something else. We looked at each other, “We are all n00bs here.” ;-)
https://adobe-flash.github.io/crossbridge/
Unreal Engine 3 demo on CrossBridge
https://www.youtube.com/watch?v=UQiUP2Hd60Y
While trying to play the safe card,
"Everything Old is New Again: Binary Security of WebAssembly" - USENIX 2020
http://www.software-lab.org/publications/usenixSec2020-WebAs...
And no other tool is yet to match the tooling capabilities of Flash.
We talk about tool capabilities, but it's also a standalone format, a single file that you include and it works. There's no way to achieve the same yet in JS. I'm sure some people tried to push standard ways, but none never became as standard as including a SWF file.
You can include all your JS and CSS into one HTML file.
It's widely considered a bad practice for sure, but you absolutely can include it all in one file. Even your images can be included in the file with base64 encoding.
Interestingly the first versions of Unity game engine included support for Javascript as a way to bring Flash devs into their product.
I vividly remember my first experience with Flash: watching an artist use a Wacom tablet to draw and animate a cartoon using vector brushes, the timeline, onion-skinning and then adding sound and publishing all from his laptop. As a web developer pushing out HTML pages with single-pixel gifs and tables, this was eye-opening. I worked heavily with Flash over the next few years and it really opened my eyes to the power of animation and motion graphics on the web.
[0] https://en.wikipedia.org/wiki/Roblox
[1] https://twitter.com/molleindustria/status/128375548540196045...
I haven't used RPG Maker in a decade, but when I did you had to import sprites, same with GameMaker. JS doesn't help you with art. Unreal Engine has a basic modeller but you have to use Blender which is quite complex for beginners
Flash was like an animated paint, super accessible
That's the site that really roped me into programming... and illustrating with a Wacom!
https://github.com/tobeytailor/gordon
https://www.gnu.org/software/gnash/
In development:
https://github.com/lightspark/lightspark
https://github.com/ruffle-rs/ruffle
And then the most recent one, CheerpX, which as I understand it runs the Adobe flash runtime itself via wasm: https://leaningtech.com/pages/cheerpxflash.html
Which brings me to Java. Java left the browser even before flash did. Not all of these are javascript jvms, but all of them are intended to run Java applications in the browser (some are transpilers, others require code changes):
https://leaningtech.com/pages/cheerpj.html
https://github.com/java2script/java2script (this links to some less-complete projects)
https://github.com/Jivings/jsJVM
https://github.com/nurv/BicaVM
https://github.com/st-js/st-js/
https://github.com/plasma-umass/doppio
https://github.com/jtulach/bck2brwsr
https://www.keithschwarz.com/+script/
https://github.com/robterrell/orto
https://github.com/jdstroy/JavaPoly
https://gitlab.com/neoexpert/jvm/-/blob/master/jsjvm/README....
Java in the browser reminds of classic RuneScape and my favorite old game site Javagameplay. Great times