Jump to navigation Jump to search
|Release date||To be determined|
|Minimum SDL version||SDL 2.24.0|
|Shipped SDL version||To be determined|
Version 2.4 is a major update to VVVVVV, starting development on August 31st, 2021. It is currently in development and is scheduled to have localization and input rebinding.
destroy(moving)destroys moving platforms (instead of being bugged and only stopping them and making them invisible, like
destroy(disappear)specifically destroys disappearing platforms.
setactivitytextwere added, allowing users to change the color and text of the next activity zone which appears.
- The text which
setactivitytextuses is the text on the next line.
- The text which
- This command changes the color the player respawns with upon death.
- Save file migration from 2.0 data to 2.2 data was removed.
- WebAssembly is now a supported build target.
__unix__is used to detect Unix-like platforms, meaning many platforms don't need any changes to VVVVVV to work.
- Debug statements were added to print the values of the xoshiro RNG generator.
- The CMake config option
-DREMOVE_ABSOLUTE_PATHSwas added to remove potentially-sensitive absolute paths from the compiled binary, if supported by the compiler. It was enabled by default.
-versioncommand-line argument was added to print the version number of the executable, as well as the hash and date of the commit it was built from if the executable has that information.
- Misa Kai's name was moved from the "super" GitHub contributors list to the C++ developers list.
- All time strings were made more uniform. Centiseconds are now always separated by a period, and the first unit of the timestamp always no longer has a leading zero.
- Launching the game in Big Picture or on the Steam Deck will now force the game to fullscreen, with windowing options removed from the graphics menu.
- The game was made to default to integer scaling mode when launched for the first time.
.data.zipassets were removed due to disuse.
- Custom level zips were made more forgiving. They no longer require level names to be the same name as the zip, and can have multiple level files in one zip sharing assets.
- When the game is attempting to convert a string to a color (ex.
changeplayercolour), it now attempts to treat it like a numerical color ID if the string cannot be converted.
- Loading music tracks from separate audio files was added. If neither
mmmmmm.vvvexist, the game will load music from the
- Logging was completely overhauled.
- Output was made prefixed with
[DEBUG], including bold and colors (if available).
[ERROR]logs were made to properly go to STDERR, instead of STDOUT.
[DEBUG]logs were disabled by default.
- Output was made prefixed with
- Command-line options were added to customize logging output:
-nooutputdisables output entirely.
-forcecolourforces colors to be on.
-nocolourforces colors to be off.
-debugenables debug logs.
-noinfodisables info logs.
-nowarndisables warning logs.
-noerrordisables error logs.
- Output of loading/saving XML files was streamlined and was made to print TinyXML-2's error output in case of an error.
- The minimum SDL version was upgraded to 2.24.0.
- The game's audio system was migrated from SDL_mixer to FAudio.
- This minimizes the number of libraries ("DLLs" on Windows) needed to run the game (in officially shipped builds).
- Users have reported that the audio quality is no longer crushed when played through certain speakers.
- Upon startup, the game will only create the window after all assets have been successfully loaded. In case of an error (like an invalid playtesting level name provided), then the window won't be created at all.
- The level folder path in the levels menu was made to be hidden behind a "show level folder path" menu option. The option warns the user they may leak sensitive information if they are streaming.
- On Windows, the game no longer needs users to install Visual C++ redistributables in order to run it.
- Spikes are no longer considered to be solid by moving platforms and entities if invincibility mode is enabled.
- While nearly unnoticeable to the naked eye, the colors used by the Time Trial trophies in the Secret Lab were mistakenly using BGR format instead of RGB, which was fixed.
- A rare chance where a glitchy tileset would be drawn during finalstretch was fixed.
- A bug was fixed where
levelstats.vvvcould copy-paste all its entries over and over if you selected the "play a level" option multiple times and then went and completed a level.
- A bug was fixed where using STDIN playtesting (e.g. playtesting a level within Ved) and then completing it would write a
special/stdin.vvvvvventry to the
- Script names containing spaces or capitals were made possible to be jumped to via
- Duplicate player entities were made to have the same momentum as the true player entity.
- The workaround used to make the VSync toggle work was fixed, making it more reliable on some systems that might have had problems with it previously.
- The game now checks that
VVVVVV.pngis loaded and decoded properly before dereferencing, fixing a potential source of crashes.
- The game learned to not explicitly write
settings.vvvif it hadn't attempted to load them yet, preventing overwriting perfectly good save data. Previously, this was handled implicitly and was still theoretically possible in a number of cases involving the game aborting upon startup.
- Misa Kai streamed her review of the localization pull requests on Twitch.
- First localization pull request (YouTube VOD playlist)