Co to jest format pliku SB3?
Projekty utworzone w Scratch 3 są zapisywane jako pliki .sb3. Ten format plików został opracowany w MIT (Massachusetts Institute of Technology) dla platformy do nauki programowania opartej na blokach. Projekty Scratch mogą przybierać formę opowieści, animacji lub prostej gry, a cały projekt jest zapisywany jako archiwum ZIP ze zmienionym rozszerzeniem.
Format .sb3 zastąpił pliki .SB2 używane przez Scratch 2.0 oraz oryginalny format .SB wprowadzony wraz z pierwszą wersją Scratch. Eksperymentalna wersja ScratchX używała rozszerzenia .sbx dla swoich projektów.
Jakie dane mogą zawierać pliki .sb3?
Pliki projektów utworzone w Scratch 3.0 i nowszych wersjach zawierają kompletne dane projektu i mogą przechowywać takie obiekty jak:
- skrypty w formacie JSON (wszystkie bloki, duszki i zmienne),
- grafikę, ikony, kostiumy i inne obrazy duszków (PNG i SVG),
- pliki audio (WAV i MP3), z których każdy jest nazwany zgodnie z jego skrótem zawartości MD5 wewnątrz archiwum.
Aby uzyskać dostęp do danych .sb3 bez programu Scratch, użytkownik może rozpakować archiwum za pomocą dowolnego narzędzia obsługującego format ZIP. Czasami konieczna może być zmiana rozszerzenia .sb3 na .zip, zanim narzędzie do ekstrakcji je rozpozna.
Zarządzanie plikami .sb3 w Scratch
.sb3 to domyślny format plików projektów używany przez Scratch 3.0, dostępny zarówno jako aplikacja online, jak i Scratch Desktop dla systemów Windows i macOS. Korzystając z wersji online, wybierz Plik → Zapisz na swoim komputerze, aby zapisać projekt na dysku. Aby otworzyć plik .sb3 z dysku, wybierz Plik → Wczytaj ze swojego komputera z tego samego menu.
Bezpieczeństwo
RYZYKO: LOWSB3 to archiwum ZIP zawierające pliki JSON i multimedia bez kodu wykonywalnego; nie może zostać uruchomione poza środowiskiem Scratch. Maszyna wirtualna Scratch izoluje (sandbox) wykonywanie projektu. Brak znanych luk bezpieczeństwa poprzez złośliwe pliki SB3. Bezpieczny do udostępniania i inspekcji.
Szczegóły formatu
w pigułceProgramy otwierające pliki SB3
Szczegóły techniczne
specyfikacja| Format kontenera | Archiwum ZIP (bajty magiczne 50 4B 03 04 na offset 0, tak samo jak każdy plik `.zip`) |
| Manifest główny | `project.json` - kompletne dane projektu (wszystkie bloki, duszki, zmienne, scena) |
| Konwencja nazewnictwa zasobów | Kostiumy i dźwięki przechowywane jako `{md5hash}.{ext}` (np. `.png`, `.svg`, `.wav`, `.mp3`) |
| Kompresja | DEFLATE dla każdego wpisu ZIP |
| Kodowanie | Binarny kontener ZIP z UTF-8 JSON wewnątrz |
| Wymiary sceny | Stałe 480 × 360 px |
| Typ MIME | `application/x.scratch.sb3` |
| Integralność | ZIP CRC-32 dla każdego wpisu; nazwy plików zasobów to skróty MD5 zawartości plików |
| Typowy rozmiar pliku | 10 KB - 50 MB (zależy od kostiumów duszków i zasobów dźwiękowych) |
| Maksymalna liczba zasobów | Ograniczona przez ZIP (do 65 535 plików bez rozszerzenia ZIP64) |
| Wersja formatu | Schemat Scratch 3.0 JSON (sb3); niekompatybilny ze Scratch 2.0 (.sb2) bez konwersji |
| Wprowadzono | 2 stycznia 2019 (publiczna premiera Scratch 3.0) |
| Kompatybilność wsteczna | Scratch 3.0 otwiera pliki .sb2 z automatyczną konwersją; nie może otwierać plików `.sb` ze Scratch 1.x |
| Kompatybilność z systemami operacyjnymi | Windows, macOS, Linux, ChromeOS, Android, iOS (przez przeglądarkę internetową) |
| Wydano | January 2, 2019 (Scratch 3.0 public launch) |
| Najnowsza wersja | Scratch 3.0 (ongoing; format stable since 2019) |
| Specyfikacja | en.scratch-wiki.info |