TurboWarp

sb3fix - fix corrupted Scratch projects

sb3fix fixes common problems that make Scratch projects not be able to load. It's not magic, but it has successfully recovered many projects and continues to improve. Just put your projects into the input below.

If you use TurboWarp, please first try File > Restore Points to access a previous version of your project. sb3fix is a community project and is not affiliated with the Scratch Team.

If your project is still broken

Please get your project to us. A real human will try to fix your project. If you have a GitHub account, the easiest way is to open a GitHub issue. Put your project file inside a zip, then you'll be able to attach it to the issue.

Don't waste your time asking AI to fix corrupted projects. It won't be able to help you, but it will happily gaslight you into thinking it does.

How sb3fix works

A Scratch project has three main components that can be "corrupted" in different ways.

Scratch project files are zip files. The zip file can often be corrupted by a storage device failure, for example, due to a power outage or not ejecting a USB drive before unplugging. Scratch and most other tools that open zips don't know how to handle corruption. sb3fix uses an alternative approach (similar to this post) that lets it read a zip file even when the "central directory" used by most apps is missing or corrupt. Depending on how badly the zip is corrupted, sb3fix might recover your project in its entirety or may miss significant parts.

Examples of error messages due to zip corruption

Inside the zip is a file called project.json. This file contains your project's sprites, scripts, variables, lists, and metadata about costumes and sounds. When you load a project, Scratch checks that all parts of the JSON are in the correct format. There are bugs that allow the project.json that gets generated when you save your project to not pass these checks. sb3fix checks for a bunch of these failure cases and changes the JSON to make the checks pass. This usually results in your whole project being recovered, and writing new fixes is usually easy when we become aware of missing fixes.

Examples of error messages due to project.json corruption

The last part of a Scratch project is your project's costumes and sounds, known as assets. Assets are also files in the zip and use standard file formats such as PNG, SVG, WAV, and others. Corrupted costumes appear as a question mark in a gray box, and corrupted sounds are replaced with zero-second sounds. There are other bugs that can result in these symptoms even if the asset is not corrupt. Some corrupted costumes load fine but cause a crash if you try to edit them. At this time, sb3fix does not attempt to fix asset corruption beyond our attempts to fix zip corruption. Asset corruption is not common and is rarely catastrophic as the rest of the project can still load.

sb3fix is open source at https://github.com/TurboWarp/sb3fix

Privacy

Files are processed locally on your computer and never sent to any server.