Dr. Eggman’s (AKA Dr. Robotnik’s) Death Egg was once again blasted by Sonic, crash-landing on the peak of a volcano on the Floating Island.
Dr. Eggman is still at large, and Sonic can’t allow him to get his hands on the Master Emerald and repair the Death Egg. Sonic must also keep Knuckles off his back but Knuckles has problems too. As guardian of the Floating Island and all the Emeralds, Knuckles must do his part to keep the island safe. While they’re going the rounds with each other, who will stop Dr. Eggman?
To play Sonic 3: Angel Island Revisited, you need Sonic 3 & Knuckles from the SEGA Mega Drive & Genesis Classics collection installed on Steam.
Screenshots
Observed history
| App | Change | Version | When ↓ |
|---|
No observed changes yet.
The initial import establishes a baseline. Future version changes will appear here.
Browse the app catalogue →Upstream releases
Release notes supplied by the developer. These dates are not Flathub package publication times.
v26.03.28.029 Mar 2026
New features and improvements
- Added an integrated file browser (in Options -> System) that allows for importing mod zips on Android and iOS/Web from the file system into S3AIR's app data
- Save data is now stored across multiple files in "storage" inside your save data folder, making it easier to delete or backup individual files if needed
- Added option for a hint on the hidden monitors that you can unveil with the signpost
- Added options for several minor enhancements that have always been part of S3AIR, but could not be turned off before
- A few more skippable cutscenes (end of LBZ 2, start of SSZ, DEZ act transition)
- Performance optimizations for software renderer, specifically for rotated / scaled sprites display
Bug fixes
- More precise ground collision check for spilled rings
- Fix for an issue that could lead to a stuttering frame rate
- Fixed several software renderer bugs
- Fixed a bug that could cause a crash during paused competition mode and in AIZ 2 / MHZ 2 blimp sequences
- Fixes for server communication issues that could randomly break both Ghost Sync and the Update Check
- Fixed that selecting HPZ in Act Select started the Lava Reef 2 boss fight
- Fixed a random emulated soundtrack issue with sped-up music playback
- Fix for emulated S3A versions of mini-boss music and Knuckles theme
- Fixed a bug that could lead to incorrect sprite rendering in mods
- Fixed that pressing Numpad-9 leads to a broken rewind and game freeze if dev mode is disabled
- Using proper animation for Tails carrying Sonic when exhausted underwater
- Corrected render priority for the Egg Mobile after SOZ 2 boss fight
- Fix for first Sonic outro win pose sprite position and rotation
- Fixed that ground did not fade to white after finishing a stage in Blue Sphere game mode
- Fixed a glitch in Act Select when starting a game during a transition of the zone preview slideshow
- Fixed a layering issue inside certain graphics, like Tails' run sprites
- Fix for a glitch when going back to the main menu immediately after entering Data Select (namely while still fading in)
- Fix for a memory leak related to text rendering
- Fixed a crash and errors when a modded font was loaded from a zip file or a path with non-ASCII characters
- Additional checks to prevent the "type is not convertible to string" error when e.g. the active-mods.json is malformed
- A bunch of more fixes for minor glitches and inconsistencies in animations and palettes
Modding features & improvements
- New dev mode menu system (toggle by pressing F1 when dev mode is enabled)
- Dev mode can now be toggled in the options menu's system tab (requiring a manual restart afterwards)
- Both Act Select and the Pause Menu are now implemented in scripts, making them fully moddable
- Lemonscript now supports arrays - for details, see page 11 of the Oxygen Handbook
- Added support for constant arrays of types float and double
- Local variables are now generally preferred over globals with the same name
- Reworked persistent data functions, so you can store data in individual files and optionally in a local folder for your mod
- You can now declare unresolvable mod conflicts with other mods as errors in your mod.json, using "IsConflict" in the "OtherMods" section - see pages 5/6 of the Modding.pdf
- Support for mods to use up to four players (see "UsesFeatures" section in Modding.pdf)
- Removed the hard limit for number of sprites
- Increased the maximum supported number of lines and colors per line in custom palettes from 64 to 256
- "Renderer.enableSecondaryPalette" now supports screen heights over 254
- F10 now also reloads modded audio
- Fixed that "Volume" property in audio_replacements.json was ignored in most cases
- On desktop platforms, config.json will now be preferred over settings.json for all properties that are defined in both
- Script compile error if a constant or global variable default value is too large for the data
- Fixed a script compile crash when using floating point values with bitwise operations
- Fixed a crash when retrying a previously failed mod script compilation
- Added stringformat support for float and double data types (using "%f")
- Added variants of "System.getGlobalVariableValueByName" for float, double, string types
- Revised random number generation and added new script functions "System.randomFloat" and "System.randRange" variants
- Added "makeCallable" function to get a u32 address for script functions to be used in calls
- Added "System.removePersistentData"
- Support for custom palettes in sprite rendering via new SpriteHandle functions "setPalette", "setPrimaryPalette", "setSecondaryPalette"
- Added alternative script function variants of SpriteHandle methods "setRotation", "setScale", "setTintColor", "setAddedColor"
- Added BlendMode constants to cpp_core_functions.lemon
- Added convenience script functions "getScreenCenterX" and "getScreenCenterY"
- "Log" and "LogDec" can now also be used with float, double, and string values
- Added "System.isDevModeActive" script function to check whether dev mode is enabled
- Oxygen Handbook now includes a documentation for how to use automatic font effects like outlines and shadows
v24.02.02.11 Feb 2024
New features and improvements
- Added controller rumble support (needs to be enabled in the Options and might not work with all controllers)
- Added an in-game downloader for the remastered soundtrack, so the game download can be noticably smaller
- Experimental Ghost Sync mode is now available directly in the Options menu
- Added an option for how to draw other players in Ghost Sync, e.g. with full opacity
- Added a more Mania-accurate rotation implementation to "Character Rotation" in the options
- Added an option for different visual styles for gamepad button icons
- Made glitch fix setting for speedrunning more accessible, and split it into three options
- In mod options, you can now expand / collapse each mod
- Added faster navigation in Options and Mods menus by holding X (D on keyboard)
- Changed the background of the mod details window to a dark one, for better readability
- You can now dropdash in MGZ spin wheel triggers to activate them
- Knuckles' AIZ intro now uses the correct critters for AIZ
- With infinite lives option active, 1-up bubbles in bonus stages are replaced with rings now
- FBZ 2 mid-boss laser can now be destroyed
- Added missing badniks to Knuckles' path in CNZ 1 for the Sonic 3 level layout
- Added sound for CNZ cannon shooting
- Starposts now indicate the special stage type more clearly
- Improved software rendering blur effect to the same quality as OpenGL hardware
- Performance improvements for ZIP mod loading and script execution
Bug fixes
- Added a whole bunch of game fixes contributed by community members
- Fixed a rendering problem with OpenGL Hardware setting on latest AMD graphics card drivers on Windows
- Fix for an issue in frame timing that could lead to a random stuttering frame rate
- Fix for various rendering issues (with both OpenGL and software)
- Stability fixes for networking
- Fix for a crush bug that can occur when walking on ceilings
- Fixed glitch when dropdashing or bubble bouncing onto the HCZ hand launcher
- Set a proper level floor height for HCZ 2, so you can't fall into the glitchy abyss there any more
- Fix for camera / capsule position after HCZ 2 boss
- Fix for a possible softlock with the MGZ spinning tops
- Fixed a bug that occurred if dying at the end of ICZ 1 without touching any checkpoint before
- Fixed a possible softlock with LBZ 1's first cup elevator
- Removed unnecessary springs in the floor in FBZ 1
- Fixed sand dust position in SOZ 1 boss
- Removed duplicate rings in LRZ 2
- Fixed chunk tiling in HPZ
- Fixed that the "Keep Shield after Zone" option could give you a shield again after restarting at the last checkpoint
- Fixed that after level results tally, score numbers just disappeared instead of quickly moving out of the screen
- Fixed an original game bug that caused you to lose two lives if drowning and be killed by a pirhana at the same time
- Fix for wrong background colored pixels in Continue sprites for Sonic and Tails
- Fix for wrong final time in Time Attack if the game got paused in the run
- Fixes for competition mode items
- Competition Mode now uses the original game's viewport sizes, instead of having a too small lower viewport
- Fix for wrong positioning of the competition mode background
- Several fixes when playing in 4:3 (using dev mode or the classic mode sample mod)
- Added a security check if scripts cause an internal script stack overflow
- Additional minor fixes and touch-ups
Modding features & improvements
- Replaced "Debug.drawRect" with "Renderer.drawRect", introducing a few more parameters like render queue
- Using the same reset behavior for "Renderer.drawText" and "Renderer.drawRect" as for sprites, so they don't disappear during fades any more
- Added a new way of rendering sprites in script ("Renderer.addSpriteHandle" and the various SpriteHandle methods)
- Also for sprite rendering, added several blend modes and more flexible support for tint & added colors
- Support for L + R shoulder buttons, if the mod.json unlocks it
- Support for defining required mods and recommended order of mods (see "doc/Modding.pdf" for details)
- Added "UniqueID" mod.json property
- Lemonscript now supports types "float" and "double" for floating point numbers
- Extended the standard library of functions usable by scripts with more math and string functions
- Added function "getStringFromCharacter"
- Support for adding string + number (requires script feature level 2)
- Added script function "addressof" to query the address inside a memory access (like a define) or the address hook of a function
- Added support for alias names for script functions
- Experimental rewind using Numpad-9 (requires dev mode)
- Added support for changing the "DATA SELECT" text by adding a sprite with the key "dataselect_text"
- Including a lot of base game script improvements by Vinegar
v24.02.02.01 Feb 2024
New features and improvements
- Added controller rumble support (needs to be enabled in the Options and might not work with all controllers)
- Added an in-game downloader for the remastered soundtrack, so the game download can be noticably smaller
- Experimental Ghost Sync mode is now available directly in the Options menu
- Added an option for how to draw other players in Ghost Sync, e.g. with full opacity
- Added a more Mania-accurate rotation implementation to "Character Rotation" in the options
- Added an option for different visual styles for gamepad button icons
- Made glitch fix setting for speedrunning more accessible, and split it into three options
- In mod options, you can now expand / collapse each mod
- Added faster navigation in Options and Mods menus by holding X (D on keyboard)
- Changed the background of the mod details window to a dark one, for better readability
- You can now dropdash in MGZ spin wheel triggers to activate them
- Knuckles' AIZ intro now uses the correct critters for AIZ
- With infinite lives option active, 1-up bubbles in bonus stages are replaced with rings now
- FBZ 2 mid-boss laser can now be destroyed
- Added missing badniks to Knuckles' path in CNZ 1 for the Sonic 3 level layout
- Added sound for CNZ cannon shooting
- Starposts now indicate the special stage type more clearly
- Improved software rendering blur effect to the same quality as OpenGL hardware
- Performance improvements for ZIP mod loading and script execution
Bug fixes
- Added a whole bunch of game fixes contributed by community members
- Fixed a rendering problem with OpenGL Hardware setting on latest AMD graphics card drivers on Windows
- Fix for an issue in frame timing that could lead to a random stuttering frame rate
- Fix for various rendering issues (with both OpenGL and software)
- Stability fixes for networking
- Fix for a crush bug that can occur when walking on ceilings
- Fixed glitch when dropdashing or bubble bouncing onto the HCZ hand launcher
- Set a proper level floor height for HCZ 2, so you can't fall into the glitchy abyss there any more
- Fix for camera / capsule position after HCZ 2 boss
- Fix for a possible softlock with the MGZ spinning tops
- Fixed a bug that occurred if dying at the end of ICZ 1 without touching any checkpoint before
- Fixed a possible softlock with LBZ 1's first cup elevator
- Removed unnecessary springs in the floor in FBZ 1
- Fixed sand dust position in SOZ 1 boss
- Removed duplicate rings in LRZ 2
- Fixed chunk tiling in HPZ
- Fixed that the "Keep Shield after Zone" option could give you a shield again after restarting at the last checkpoint
- Fixed that after level results tally, score numbers just disappeared instead of quickly moving out of the screen
- Fixed an original game bug that caused you to lose two lives if drowning and be killed by a pirhana at the same time
- Fix for wrong background colored pixels in Continue sprites for Sonic and Tails
- Fix for wrong final time in Time Attack if the game got paused in the run
- Fixes for competition mode items
- Competition Mode now uses the original game's viewport sizes, instead of having a too small lower viewport
- Fix for wrong positioning of the competition mode background
- Several fixes when playing in 4:3 (using dev mode or the classic mode sample mod)
- Added a security check if scripts cause an internal script stack overflow
- Additional minor fixes and touch-ups
Modding features & improvements
- Replaced "Debug.drawRect" with "Renderer.drawRect", introducing a few more parameters like render queue
- Using the same reset behavior for "Renderer.drawText" and "Renderer.drawRect" as for sprites, so they don't disappear during fades any more
- Added a new way of rendering sprites in script ("Renderer.addSpriteHandle" and the various SpriteHandle methods)
- Also for sprite rendering, added several blend modes and more flexible support for tint & added colors
- Support for L + R shoulder buttons, if the mod.json unlocks it
- Support for defining required mods and recommended order of mods (see "doc/Modding.pdf" for details)
- Added "UniqueID" mod.json property
- Lemonscript now supports types "float" and "double" for floating point numbers
- Extended the standard library of functions usable by scripts with more math and string functions
- Added function "getStringFromCharacter"
- Support for adding string + number (requires script feature level 2)
- Added script function "addressof" to query the address inside a memory access (like a define) or the address hook of a function
- Added support for alias names for script functions
- Experimental rewind using Numpad-9 (requires dev mode)
- Added support for changing the "DATA SELECT" text by adding a sprite with the key "dataselect_text"
- Including a lot of base game script improvements by Vinegar
v22.09.10.010 Sept 2022
Sonic 3 A.I.R. v24.02.02.1 is fixing a security issue with v24.02.02.0. If you still use the old version, it's strongly recommended to download the new version.
New features and options:
- Added a reduced version of the Options menu to the in-game Pause screen
- Replaced the static main menu background with an animated (and moddable) one
- Added an update check to the Options menu
- Added option for maintaining shields between zones
- Added option for using the Prototype Knuckles' Theme in the Hidden Palace fight against him
- Added an option to activate Hyper Dash only if pressing any direction, like it's done in Origins
- Added different Super Sonic Jump Ability options
- Added option to make monitors fall down when hit from below
- Added option to choose between main boss or mini-boss music for the FBZ 2 mid-boss / laser trap
- For the highest anti-flicker setting, reduced intensities of Hyper Sonic screen flash and screen shake effects
- Sound Test in Options menu now shows a proper name for each music track as well
- Added DDZ to Act Select after reaching it in a normal game
- Support for extended camera & camera outrun options in Time Attack
Bug fixes:
- Fix for a crash that can occur when entering the Options menu with certain controllers attached
- Fixed that audio mods used reverse mod priority
- Fix for positioning of Death Egg in SSZ end cutscene, which didn't work in all level layout settings
- Fixed a S3AIR-specific collision bug for the MGZ spinning top
- Also enabled several other glitch fixes previously prepared, like the "frame-perfect reset" bug
- Fixes for Knuckles outro
- Fix for a bug in Data Select when left + right is pressed at the same time
- Fix for a bug that caused some keys on the keyboard to be mapped incorrectly
- Fixed a possible soft-lock when using a bubble bounce to get on a MGZ spinning top
- Fixed that infinite lives setting reset your life counter of save games back to 3
- Fixed that in Time Attack or with Infinite Lives option, there was no ring sound for collecting a ring (or monitor) right when reaching 100, 200, etc. rings
- Fixed that drop dash did not work on certain badniks (like Jaws, Blastoid, Mushmeanie)
- Using the original emulated S&K credits medley now instead of the remastered on if emulated soundtrack is chosen (this ensures that the medley also works if no remastered soundtrack files are even available)
- Fixed "Value stack error: Too many elements" that could come up when Knuckles' fight against Super Mecha Sonic took very long
- Fix for wrong palette usage in LBZ 1 boss flash
- Fixed a glitch when character gets hurt while triggering a SSZ teleporter
- Fix for wrong animation sprite when Knuckles loses his super form while climbing
- Fixed that pressing Accept and Back at the same time in main menu could mess up the menu
- Fixed palette errors from the original game in some places
- Enforcing a fixed simulation update rate of 60 Hz in Time Attack
- Off-screen tails display for player 2 now correctly renders his tails as well
- Fixes in the "Score Millionaire" achievement image
- Fix for PS4 controller LED color when playing as Sonic & Tails
- Removed the unnecessary "Back" buttons between mods in the mods options
- Several fixes in scripts and documentation - thanks especially to Veenee, Lave slime and Dynamic Lemons
- Plus a whole bunch of minor other fixes
Other improvements:
- Performance improvement to rendering in Blue Spheres stages
- Optimizations for script loading speeds, e.g. when switching mods
- Improved on the reliability of triggering Tails Assist
- Small tweaks to make sure AI Tails drops out of his flight after respawn more consistently, when he's close to the player
- AI Tails does not consume the bouncepads in the Gumball Machine bonus stage any more
- Removed fast music track versions in options menu's sound test, unless dev mode is active
- Better OpenGL compatibility checks, to avoid startup crashes on some machines that require fail-safe mode
- Better support for high-DPI display scaling under Windows
- Test for possible fix to save data folder visibilty under Android 11 and higher
Modding:
- A lot of script code improvements
- More sprites added for modding (see "doc/modding/sprites")
- Better support for strings in scripts (requires script feature level 2)
- Added "Renderer.drawText" script function for easy text rendering
- Added support for modded fonts
- Added a better way of defining constants in scripts by using the "constant" keyword
- Support for constant arrays in scripts
- Added dynamic icons for input buttons like "@input_icon_button_A"
- Added support for underwater Super/Hyper palettes
- Added "Audio.getAudioKeyType" script function
- New script functions for mod interoperability: "System.callFunctionByName", "System.getGlobalVariableValueByName", "System.setGlobalVariableValueByName"
- Support for constant array definitions in a single line
- Fixed that something like "stringformat("%02d", 0)" did only output a single 0
- Now silently ignoring multiple includes of the same file in lemonscript
- Integration of the Sonic Hacking Contest splash screen

