# Port a Flash game to platforms that still exist

> Adobe ended Flash Player support on December 31, 2020. Porting a Flash game means rebuilding a title you own so it runs on platforms people still use.

- URL: https://www.summerengine.com/port-a-flash-game
- Keyword: port a flash game
- Related: https://www.summerengine.com/porting

Porting a Flash game means rebuilding a game you own, because no browser runs Flash anymore. Adobe ended Flash Player support on December 31, 2020, and blocked content from running in January 2021. Every SWF that relied on the plugin stopped working on that date.

You need the rights to the game. Port a Flash game you made, or one you hold a license to remake. Decompiling a SWF that belongs to someone else, extracting its assets, and republishing it is not covered here.

Rebuilt properly, a Flash game is well suited to modern targets. It was built for mouse input, vector art, and short sessions. Summer Engine rebuilds it as a project you own and exports desktop builds for Steam and itch.io, with no royalties. A GDScript rebuild also exports a web build that you publish on Summer Games.

## What survives from an old Flash project

If you still have the FLA files, your vector art is the most valuable thing you own. Vector shapes re-export at any resolution, which means a game authored for a 550x400 stage can be rebuilt sharp at 4K. Timeline animations need to be recreated as animation tracks or sprite sheets, since no engine reads the Flash timeline. ActionScript is reference material: the logic transfers, the syntax does not.

## ActionScript to a modern language

ActionScript 3 and GDScript are both dynamically friendly, class based scripting languages, so the translation is mechanical more often than not. Event listeners become signals. enterFrame handlers become a process callback. MovieClip becomes a node with a sprite and an animation player. ActionScript 2 code is looser and usually needs restructuring rather than translation. C# is also available in the desktop editor if you prefer it.

## Frame based timing has to become delta time

Flash ran on a stage frame rate, often 24 or 30 frames per second, and a lot of game logic counted frames instead of seconds. On modern displays running at 60, 120, or 144 Hz, frame counting breaks the game speed. Convert every frame counter to a time based value during the rebuild. This is the single most common source of bugs in a Flash port, and it is far cheaper to fix while rebuilding than after.

## Mouse first design, now on touch

Flash games were built for a mouse cursor with hover states, click and drag, and precise pointing. Touchscreens have no hover, and a fingertip is much larger than a cursor. Hover based tooltips need a tap alternative, small buttons need larger hit areas, and drag interactions need to account for the finger covering what is being dragged. Keyboard controlled Flash games need an on-screen control layout designed for the game, not a generic overlay.

## Where the rebuilt game goes

A rebuilt Flash game ships as a desktop build, on Steam or as an itch.io download. A GDScript rebuild can also ship as a web build on Summer Games, where people play it in the browser. Short Flash era games suit a free itch.io download that people can try before a paid Steam release. Many of them also fit phones, and iOS and Android builds need that platform's toolchain and signing and a pass on touch input.

## FAQ

### Why do Flash games not work anymore?

Adobe ended Flash Player support on December 31, 2020, and blocked Flash content from running on January 12, 2021. Browsers removed the plugin entirely. Any game distributed as an SWF that depended on the plugin no longer runs for ordinary players.

### Can an SWF file be converted into a modern game?

Not into an editable project you can maintain. Decompilers can extract some assets and bytecode, but the result is not a working project in another engine. A Flash port is a rebuild, ideally from your original FLA files and ActionScript source.

### Can I port a Flash game if I lost the FLA files?

Yes, if you own the rights. You rebuild from whatever you still have: exported art, screenshots, gameplay recordings, and design notes. Vector sources make the rebuild much cheaper, but they are not required.

### Does ActionScript code transfer?

The logic transfers, the syntax does not. ActionScript 3 maps fairly directly onto GDScript: listeners become signals, enterFrame becomes a process callback, and MovieClip becomes a node with an animation player. ActionScript 2 usually needs restructuring.

### What is the most common bug in a Flash port?

Frame based timing. Flash ran at a fixed stage frame rate, often 24 or 30, and game logic frequently counted frames. On a 60 or 144 Hz display that logic runs at the wrong speed. Convert every frame counter to delta time during the rebuild.

### Can the rebuilt game run in a browser again?

Yes. A GDScript rebuild exports a web build in Summer, and you publish it on Summer Games, where people play it in the browser. If the exact original matters most, an emulator such as Ruffle can run your own SWF in a browser for preservation, though its ActionScript 3 support is still incomplete for some games.

[Rebuild your Flash game](https://www.summerengine.com/download)

---

## Machine-readable resources

- Site index for agents: https://www.summerengine.com/llms.txt
- Full inlined content: https://www.summerengine.com/llms-full.txt
- Porting catalog: https://www.summerengine.com/llms-porting.txt
- Structured catalog: https://www.summerengine.com/agent-catalog.json
- Sitemap: https://www.summerengine.com/sitemap.xml
- Developer resources: https://www.summerengine.com/docs