Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Scratch Everywhere Wii: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 4: Line 4:
|description=Custom Scratch Runtime for Nintendo Wii.
|description=Custom Scratch Runtime for Nintendo Wii.
|author=NateXS
|author=NateXS
|lastupdated=2025/09/07
|lastupdated=2025/09/14
|type=Other Apps
|type=Other Apps
|version=0.22
|version=0.23
|license=MIT
|license=MIT
|download=https://dlhb.gamebrew.org/wiihomebrews/ScratchEverywhereWii.7z
|download=https://dlhb.gamebrew.org/wiihomebrews/ScratchEverywhereWii.7z
Line 56: Line 56:


==Changelog==
==Changelog==
'''Beta Build 23'''
* New Features
** Scratch Everywhere! Custom Blocks!
*** This actually isn't a new feature, but we never talked about them at all so I'll talk about it here :)
*** Similar to TurboWarp's <code>is compiled?</code> and <code>is TurboWarp?</code> blocks, We've made a few new blocks that Scratch Everywhere! can understand!
*** You can still upload your projects to the Scratch website when using these new blocks!
*** <code>is Scratch Everywhere!?</code> block returns <code>true</code> if your project is running on Scratch Everywhere, and returns <code>0</code> otherwise.
*** <code>is New 3DS</code> block returns <code>true</code> if your project is being played on a New 3DS, returns <code>false</code> otherwise.
*** <code>Scratch Everywhere! platform</code> returns the platform your game is being played on (<code>3DS</code>,<code>Wii</code>,etc).
*** A project containing these blocks can be downloaded [https://scratchbox.grady.link/api/project/K26OtTN2WDJ9/download here]!
** Unpack project option in project settings!
*** Instead of the normal way the runtime works by putting the entire scratch project in memory, unpacking a project eliminates this by only loading things when it needs to!
*** Unpacked projects are great for large projects, and projects with a ton of images!
*** Depending on the speed of your SD card, unpacked projects can run way faster than normal projects!
*** Unpacked projects will have a lightning symbol next to it, and will appear towards the bottom of the project menu.
** Bottom Screen option in project settings!
*** For 3DS, you can enable any project to be played on the bottom screen instead of the top screen!
*** Great for projects where the touchscreen plays a key factor in gameplay!
*** This also means Scratch Everywhere! can be used with a broken top screen! (I know at least 1 person will be happy about this)
* Runtime Changes
** If you have a project in your Scratch Everywhere! folder named <code>project.sb3</code>, the project will now automatically run when opening the app.
** Changed D-Pad controls in Main Menu
*** NOTE: If you're using a Wii Remote, this means you now have to use the remote sideways to navigate the Main Menu.
** Added more splash text to the Main Menu
** Fixed a ton of memory leaks under the hood
* 3DS Changes
** Fixed buttons in the Main Menu sometimes not loading correctly
* Switch Changes
** Changed resolution to the handheld's native 1280 x 720, instead of being a weird stretched resolution
'''Beta Build 22'''
'''Beta Build 22'''
*New Features
*New Features

Revision as of 03:21, 20 September 2025

Scratch Everywhere
General
AuthorNateXS
TypeOther Apps
Version0.23
LicenseMIT License
Last Updated2025/09/14
Links
Download
Website
Source

Scratch Everywhere! is a work-in-progress runtime written in C++ that lets you run Scratch 3 projects. Initially developed for the 3DS, it now supports a number of 6-8th generation consoles including Wii, Wii U, Vita and Switch.

Features

  • Runs standard and TurboWarp-modified Scratch 3 projects on Wii hardware.
  • Custom blocks exclusive to Scratch Everywhere!
  • Mouse input - Controlled via the Wii Remote and Sensor Bar.
  • Audio - Support MP3, Ogg Vorbis, and WAV formats.
  • Framerate - Adjustable through TurboWarp's project settings.

Installation

Download scratch-wii.zip from the Releases page.

Unzip and place the apps folder inside the root of your SD card.

Put Scratch projects into sdcard:/apps/scratch-wii/.

Launch the app from Homebrew Channel on the Wii.

Media

Porting Scratch to the 3DS (NateXS)

Limitations

General:

  • Text and embedded bitmap images will not show up on vector images containing it.
  • Extensions (e.g. pen and music extensions) are not yet supported.
  • Some blocks may lead to crashing/unintended behavior (Please open an issue if you know of a block that's causing problems).
  • Performance is poor when using many (~30+) clones (memory management issue).

Wii:

  • "Streamed Sound" is not supported. Any sounds in "Stage" will load and play like a normal sound.
  • Sounds may fail to load if the length of the sound is too long, or if there's too many sounds loaded at once.
  • Cloud Variables aren't currently supported, but likely will be in the future.
  • The first controller connected will be the only one that will work.
  • If you're using a PAL Wii, you must use 50Hz.

Changelog

Beta Build 23

  • New Features
    • Scratch Everywhere! Custom Blocks!
      • This actually isn't a new feature, but we never talked about them at all so I'll talk about it here :)
      • Similar to TurboWarp's is compiled? and is TurboWarp? blocks, We've made a few new blocks that Scratch Everywhere! can understand!
      • You can still upload your projects to the Scratch website when using these new blocks!
      • is Scratch Everywhere!? block returns true if your project is running on Scratch Everywhere, and returns 0 otherwise.
      • is New 3DS block returns true if your project is being played on a New 3DS, returns false otherwise.
      • Scratch Everywhere! platform returns the platform your game is being played on (3DS,Wii,etc).
      • A project containing these blocks can be downloaded here!
    • Unpack project option in project settings!
      • Instead of the normal way the runtime works by putting the entire scratch project in memory, unpacking a project eliminates this by only loading things when it needs to!
      • Unpacked projects are great for large projects, and projects with a ton of images!
      • Depending on the speed of your SD card, unpacked projects can run way faster than normal projects!
      • Unpacked projects will have a lightning symbol next to it, and will appear towards the bottom of the project menu.
    • Bottom Screen option in project settings!
      • For 3DS, you can enable any project to be played on the bottom screen instead of the top screen!
      • Great for projects where the touchscreen plays a key factor in gameplay!
      • This also means Scratch Everywhere! can be used with a broken top screen! (I know at least 1 person will be happy about this)
  • Runtime Changes
    • If you have a project in your Scratch Everywhere! folder named project.sb3, the project will now automatically run when opening the app.
    • Changed D-Pad controls in Main Menu
      • NOTE: If you're using a Wii Remote, this means you now have to use the remote sideways to navigate the Main Menu.
    • Added more splash text to the Main Menu
    • Fixed a ton of memory leaks under the hood
  • 3DS Changes
    • Fixed buttons in the Main Menu sometimes not loading correctly
  • Switch Changes
    • Changed resolution to the handheld's native 1280 x 720, instead of being a weird stretched resolution

Beta Build 22

  • New Features
    • Brightness costume effect added!
    • Logs now get saved to a log file
      • Log file is located in the same spot your scratch projects are placed
      • [3DS] Logs are only saved when holding Select while launching the app
  • Runtime Fixes
    • Fixed When this sprite clicked being ran for every sprite instead of only the sprite that's clicked
    • Fixed When this sprite clicked being able to click multiple sprites in one click
    • Fixed a few crashes that could happen related to audio
    • Fixed backdrop rendering
    • Added some new Main Menu splash text
    • A bunch of code refactoring under the hood
  • 3DS Changes
    • Fixed bottom screen not rendering correctly

Beta Build 21

  • New Features
    • Main menu splash text!
      • A random message will appear at the bottom of the logo!
  • Runtime Changes
    • Reverted vector image collision fix
      • This caused many issues with image rendering, so vector image collision will be inaccurate until we find a better fix.
    • Fixed collision not working on clones
    • Broadcast and Broadcast and wait blocks should work more consistently
    • Fixed sprites sometimes rendering behind the backdrop
    • Added version number in main menu
    • Changed font in main menu
    • Fixed controls menu not saving or loading properly
    • Removed .sb3 extension in the project menu
  • 3DS Changes
    • CIA release!
      • Highly requested feature finally brought together!
      • Via pull request #317!
    • New RAM_AMOUNT compile variable
      • Used for old 3DS to specify the maximum amount of RAM it can use
      • More info in the README
    • Changed executable name from Scratch to scratch-3ds
    • Optimized text rendering
  • PS Vita Changes
    • Significantly improved performance!
      • Via pull request #321!
  • Known Issues
    • Backdrop images may not render correctly
    • [3DS] File size is much larger due to using new fonts

Beta Build 20

  • New Features
    • PS Vita port!
      • Via pull request (#274)
  • Scratch Parity
    • Added When this sprite clicked block
    • Added When backdrop switched to block
    • Added Show list and Hide List blocks (Via #295)
    • Added support for dragging sprites
  • Runtime Changes
    • Added support for more clones when Infinite Clones is enabled in TurboWarp or other Scratch Mods
    • Mouse position is now more consistent
    • Fixed collision on vector images being half the size it should be
    • Fixed Move __ steps block not fencing the sprite correctly
  • Wii Changes
    • Fixed projects not searching in the right location in the SD card
  • 3DS Changes
    • Changed icon

Beta Build 19

  • Scratch Parity
    • Added support for hidden While block
    • Support last, all, and random as list indexes
    • Support Infinity and -Infinity
    • The default distance in the distance to block is now 10000
    • The mod block now works like Scratch does
    • Support scientific notation
    • Support octal, hex, and binary numbers
    • Support string comparisons
    • List block items no longer get separated by a space if all items are one character long
  • Runtime Changes
    • Fixed crash when custom block arguments are used outside of the custom block definition
    • Fixed layering working incorrectly
  • 3DS Changes
    • Stereoscopic 3D support!
      • Uses Scratch's layering system to determine 3D depth
      • NOTE: using 3D may result in worse performance. I'm working to fix this.
    • Fixed unzipped projects crashing after some time
  • Wii U / Switch Changes
    • Added stick click support!
      • Left stick click is c
      • Right stick click is v
  • Wii Changes
    • [EDIT quick fix] fixed projects searching in SD card root instead of searching in apps/scratch-wii

Beta Build 18

  • New Features
    • Scratch Everywhere! logo
    • Added support for more image types
  • 3DS Changes
    • When compiling an unzipped project, all bitmap images get converted to .t3x format
      • This means images will load way faster, and the problem with images not loading is gone!
    • Fixed audio cracking (again)
      • Note: audio may still crack in certain scenarios.
  • Wii U Changes
    • Fixed icon and boot splash not showing up on the home screen
  • Wii Changes
    • Fixed audio not working
    • Fixed wrong date in meta.xml
  • Switch Changes
    • Fixed audio not working

Beta Build 17

    • Scratch Everywhere!
  • The name has been changed to Scratch Everywhere!
    • That's Scratch Everywhere! with the exclamation point btw..
    • It made 0 sense to keep the name Scratch 3DS as this is now on 5 different platforms...
    • speaking of which...
  • Switch Port!
    • For all 1.5 people who own a modded Switch, you can now enjoy Scratch games!
    • Via pull request (#97)!
  • All new main menu screen!
    • The Main Menu has gone through a huge refactor under the hood!
    • It should be a smoother and better experience overall!
    • It's still a work in progress, but now it should be a little easier to add stuff to it in the future!
  • Custom controls!
    • In the Project menu is a new option to remap the controls of any project!
    • Control mappings get loaded and saved to scratch-everywhere/'project_name'.json
      • Wii U is sd:/wiiu/scratch-wiiu/'project_name.json'
  • Runtime changes
    • Sprite fencing has been implemented!
      • Can be disabled with TurboWarp or other Scratch mods.
    • The Stop 'All' block now takes you back to the Main Menu instead of the homebrew menu!
      • Note: The Wii U will still exit the app, as it would freeze when going back to the Main Menu for some reason.
    • Booleans (anything set to true or false) now doesn't get set to 1 or 0 by the runtime mistakenly
    • Fixed a couple of crashes that could happen while loading
    • Custom blocks with no definition now works as intended
      • Logging blocks created by Scratch Addons Debugging Addon can now be used.
    • The runtime can now be compiled with ENABLE_AUDIO=0.
      • For the 3DS, this means smaller file size, and you no longer need SDL2 to compile.
  • 3DS Changes
    • Fixed crash when closing the app
    • Fixed audio cracking issue
    • Sprites are no longer rendered in fractional positions, fixing some image weirdness
    • Changed image filtering from nearest to linear
      • This fixes the image fuzziness and weirdness issues, with a tradeoff to some images looking slightly blurry. I might add a filtering option to the Main Menu in the future.
  • Wii Changes
    • Fixed projects not showing up in Main Menu
    • Fixed images sometimes not being able to load
    • [Quick Edit 16 Aug 2025] Fixed meta.xml showing the wrong date
  • Wii U Changes
    • Fixed projects not showing up in Main Menu

Beta Build 16

  • Wii and Gamecube port!
    • The runtime has been ported to 2 new consoles!
    • More information in the README!
  • [3DS and Wii U] Cloud Variable support!
    • Cloud Variables now sync over the network with anyone also playing the same game!
    • Syncs across both Wii U and 3DS
    • Note: does NOT sync with people playing on the Scratch website or Turbowarp.
    • Via pull request (#145)
  • Runtime Changes
    • Broadcast blocks now have more consistent behavior
    • Disabling Fencing in advanced settings now disables size limitations
    • Variables set to True or False no longer gets set to 1 or 0
    • Images in any project now only load whenever it's needed, instead of loading every image in memory while loading the project
    • [Wii U] Main Menu with no projects should now work correctly
    • [Wii U] Unzipped projects now load images and sounds correctly
    • [3DS] when compiling, the final executable will now be in build/3ds/ instead of the root directory.

External links

Advertising: