Etterna Versions Save

Advanced cross-platform rhythm game focused on keyboard play

v0.72.3

1 year ago

[0.72.3] - 2023-03-21

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder. These folders are usually found in the folder your game is installed.

If you made modifications to Theme files for your custom windows, you will need to save that specific Lua file as well.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Linux Note

It has come to our attention that newer versions of some distributions like Ubuntu make it difficult to install the required OpenSSL libraries to run the game. If you try to open the game and are hit with an error complaining about OPENSSL_1_1_1 not found despite following proper instructions to install it, try this:

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Changes/Updates

  • General
    • Added FrameLimit and FrameLimitGameplay to Graphics Options in the main menu Options
  • Rebirth
    • Added FrameLimit and FrameLimitGameplay to the Settings menu under Graphics -> Global Options 2
    • Split Global Options into Global Options 1 and Global Options 2 because I'm running out of room

Fixes

  • General
    • NoteskinPreview crashing the game, caused by a Noteskin failing to load due to cmd() or other problems
    • Replays crashing when going wrong and sending impossible judgments to the engine
    • Replays getting horrible judgments, caused by "lift" actions in replays supported by InputData
    • Replays getting temporarily misaligned judgments, caused by hitting mines
  • Rebirth
    • Lua error causing missing E logo in the help screen

Development

  • chillin

v0.72.2

1 year ago

[0.72.2] - 2023-03-01

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder. These folders are usually found in the folder your game is installed.

If you made modifications to Theme files for your custom windows, you will need to save that specific Lua file as well.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Linux Note

It has come to our attention that newer versions of some distributions like Ubuntu make it difficult to install the required OpenSSL libraries to run the game. If you try to open the game and are hit with an error complaining about OPENSSL_1_1_1 not found despite following proper instructions to install it, try this:

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Changes/Updates

  • General
    • Image loading speed improved
      • Most noticeable for D3D (Windows default) users in Rebirth with wheel banners on or in spawncamping-wallhack
        • Preliminary testing in Rebirth under these conditions saw average FPS increase 5x while moving the music wheel and holding tab
  • Rebirth
    • Added Wheel Spin Speed to the Settings under Settings -> Graphics -> Theme Options 1 -> Music Wheel Speed
      • Use this to change the speed of the wheel movement. This can be useful if the wheel moves oddly slow because of your high framerate
    • Split Theme Options into 2 categories, Theme Options 1 and Theme Options 2
    • MeasureBars option was moved to a different place internally - this will cause everyone's setting for it to reset
      • It already defaulted off, so most people won't notice this
    • Hovering your mouse over the local player name has a new tooltip that just lets you know that clicking it will rename your local profile
    • Hovering the blank space between Setting names and Setting values should change the cursor position now
      • This was disabled before 0.71.0 release because I thought it sucked, but in my opinion the cursor not doing this sucks more
    • Added title gradient, title logo, and title triangles to the Color Config in the title category
      • Actual new entry names: LogoE LogoTriangle ItemTriangle GradientColor1 GradientColor2
    • Player Config now loads per profile
      • This means that each profile in Rebirth has its own configuration like 'Til Death does
      • You don't have to do anything to work around with this, because whatever settings you already have in Rebirth from 0.71.0-0.72.1 will apply as a default for every profile you load
      • This means that importing settings from 'Til Death is now even easier, and all you have to do is rename the /LocalProfiles/xxxxxxxx/Til Death_settings/ folder to /LocalProfiles/xxxxxxxx/Rebirth_settings/
  • 'Til Death
    • Added a Mean Display to Gameplay
      • Off by default
      • The option to turn it on is located here: Player Options -> Theme Options -> Current Mean
      • Only tracks the current mean of the play, not the EWMA
      • Use M or , in Customize Gameplay to move or resize it
    • Tooltip for hovering CDTitle has been reduced in size to a more appropriate level

Fixes

  • General
    • BPM Display should support the special BPM display types like "random numbers" again
    • Fixed crashes relating to abusing certain Rebirth color config and game customization functionality
    • Fixed crashes caused by placing a random audio file in a pack folder
    • Fixed crashes and errors caused by renaming a random folder to pretend it has a valid file extension of any kind
      • If these folders are actual songs, they may load. If they don't successfully load, you will see a message in the log
    • Fixed crashes caused by selecting a song and finishing a download before reaching gameplay but after picking the song
    • MacOS crashing occasionally due to an incompatibility with how we find the language of the user
    • Reloading Scripts or Overlays will no longer break buttons, break mouse functionality, or throw many errors per second
    • Replays where ghost taps occur before or during the song should no longer horribly desync
    • Replays which were locally recorded on a different song or global offset should no longer desync
    • ScreenTextEntry will no longer stop music playback
  • Rebirth
    • Music Wheel will no longer randomly stutter over and over, causing all the graphics to change repeatedly - as long as you are still holding down the directional button
    • Network Options should no longer show up and allow users to break menu continuity
    • Song Search will no longer pretend to do nothing in the specific case where you search for an exact song name that exists, but one of the results contains a chart key that becomes filtered out because it is listed with a different song name
    • ScreenTextEntry will no longer kill the visualizer
  • 'Til Death
    • Fixed Evaluation showing the wrong mean for a score that you just set if you hit any mines
    • ScreenTextEntry will no longer kill the visualizer

Development

  • Added ReloadedScriptsMessageCommand triggered by Ctrl + F2, by changing Games, or by changing graphics options
  • Added ReloadedMetricsMessageCommand triggered by Shift + F2, by Ctrl + Shift + F2, or by F2
  • Added ReloadedOverlayScreensMessageCommand triggered by Ctrl + Shift + F2
  • Added ReloadedTexturesMessageCommand triggered by F2
  • Added GameChangedMessageCommand triggered by changing Games. This occurs specifically when changing games using the settings menu
  • Custom Window Config file had some comments added to encourage proper maintenance of the file
  • GetDirListing has a new API which lets you choose between filtering to only directories, only files, or not caring
    • The previous boolean-based API meant for filtering to only directories or not caring still works the same way
    • Both APIs are implemented in the Lua binding
    • New Lua API: FILEMAN:GetDirListing(pathString, filterType, returnFullPathsBoolean)
    • New Lua API filterType: pick one of any_type only_dir only_file
  • Tooltips can be resized easily with new function TOOLTIP:SetTextSize(x)

v0.72.1

1 year ago

[0.72.1] - 2023-01-09

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder. These folders are usually found in the folder your game is installed.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Linux Note

It has come to our attention that newer versions of some distributions like Ubuntu make it difficult to install the required OpenSSL libraries to run the game. If you try to open the game and are hit with an error complaining about OPENSSL_1_1_1 not found despite following proper instructions to install it, try this:

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Changes/Updates

  • General
    • Cleartypes changed to not grant SDP/SDG if the score contains a combo breaker
    • Holding shift while pressing the Random Song button will bring you to the last song that was given by pressing the button
      • This only works backwards once, like a simple undo button. You can't go backwards several songs, only one
    • Noteskin Preview was optimized for loading times
      • SelectMusic entry in Rebirth should be noticeably faster
      • PlayerOptions (double enter) in all themes should be noticeably faster

Fixes

  • General
    • Buttons bound to Operator will no longer be impossible to type in a text field
    • Files loaded from .osu should never crash due to 0-length holds
    • Judge 1-3 should never visually show up anywhere anymore
    • Legacy Options row for input debounce should no longer be useless and broken
      • Now featuring increments of 1ms instead of 10ms
    • Mac players sometimes could not run the game due to an SSH related error for our recent builds
    • Pack Downloads for packs containing paths with "unacceptable" names will no longer cause the pack to either completely fail or partially extract
      • Invalid paths are renamed to make them valid. The game should handle these new names with auto resolving logic per song
      • An invalid character is considered anything with a byte value over 122 (so pretty much only ASCII characters are allowed)
    • Replays no longer miss the first note if you hit them early
    • Replays should no longer play very early or very late
      • This was caused by having multiple charts with the same chartkey but with different audio and offsets
    • Replays should delete decompressed InputData after failing to read from it
  • 'Til Death
    • Judgment Animations and Combo Animations no longer break the customize gameplay resizes you have set

Development

  • Added a Lua binding to NoteskinManager to allow adding Noteskin Actors as children to a given ActorFrame. This is mainly to help with Noteskin Preview optimization, but could be used cleverly in real noteskins
  • GHA will automatically generate documentation for us at every commit. This means that the documentation follows the latest develop branch. This includes a "wiki" like resource, doxygen output for C++, and ldoc output for Lua. In due time, we will be updating this documentation to be more complete. It will be a large task.
  • websocketpp updated to 0.8.2
  • websocketpp should no longer cause the game to be unable to compile under C++20 with very modern compilers

v0.72.0

1 year ago

[0.72.0] - 2022-12-25

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder. These folders are usually found in the folder your game is installed.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Linux Note

It has come to our attention that newer versions of some distributions like Ubuntu make it difficult to install the required OpenSSL libraries to run the game. If you try to open the game and are hit with an error complaining about OPENSSL_1_1_1 not found despite following proper instructions to install it, try this:

wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb

Changes/Updates

  • New Custom Window Config System
    • You can toggle this in Rebirth or 'Til Death by either pressing InsertCoin or clicking the WifePercent in the evaluation screen
    • You can switch between different config setups by clicking the new percentage that appears, or by using the rate changing buttons the same you would if you were changing judge on the screen
    • Turning on custom windows simply rescores the currently selected score in evaluation, replacing all visible values except for the original Wife 3 percent. This includes the information that shows up when you hover your mouse on the offset plot
    • The global configuration for this is stored in /Themes/_fallback/Scripts/72 custom_windows_config.lua
      • Read the instructions within the file if you would like to create your own custom config
      • Keep in mind that when reinstalling/updating in the future, this file will be overwritten. Consider this to be a theme edit - back it up
      • We will take suggestions for making certain popular custom window configurations part of the default list of configs
    • The system is not currently set up to support replacing your gameplay judgment windows, and is instead only intended to help properly rescore a score you already set
    • The system allows for configurations where the note priority is changed from current (closest first) to oldest (oldest unjudged note in the hit window)
    • The system ships with these configurations by default as examples: Wife2 J4, DP J4, osu!mania OD10
    • If you make modifications to the configuration file, the best way to apply those changes is to restart your game
    • The system does not function in multiplayer, but works for online leaderboard scores
  • Difficulty Calculator Changes (4k only)
    • Calculator version changed from 473 to 505
    • The MSD shown for a file no longer has a downscaler run on it. The output SSR keeps the downscaler
      • This is done to give you an idea of difficulty of a file, but not misrepresent the real worth of it
    • Changes were primarily focused on reducing extreme rating inflation seen globally. It's not intended for any score to ever reach the 40 SSR cap
    • Some changes targeted files abusable by jumpjacking all patterning and barely obtaining enough points for max scaling
    • Streamy patterns which break down into jumpjacks are rated less. Pad/Index patterning remains strongly rated
    • Jumpstream fully rebalanced, aligning most jump-heavy files and stream-heavy JS files
    • Handstream had a light general nerf, and a targeted nerf to files with extremely long anchors
    • Stamina had a slight nerf
    • Jackspeed had a slight nerf
    • Chordjacks had a strong nerf via multiple rewrites and retunes
      • Everyone will find that their rating is lower, and many files are underrated. More passes on this to come
    • Technical had a few fixes and a rebalance
      • Eliminated extremely fast runningman farm
      • Brought streamy-chaotic tech somewhat more in line with bursty-tech and runningman-tech
    • Lesser-dense chordjack type files are more likely to be rated tech due to the balancing and nerfing done to both skillsets
      • This classification is in line with one of the pattern sets which falls into tech, which is short/mini jack heavy patterning with otherwise light or technical patterning
  • General
    • Replays and HighScores newly created will track the RNG seed for the play, allowing replays to play back and rescore plays with inserts, removes, turns, and shuffles
      • This is not compatible with online scores yet
    • Replays newly created will play back the actual ghost inputs of your original play instead of just the judgments
    • Replays will now always save as long as the score saves
    • Pack Downloads are no longer restricted by your current FPS
      • Tabbing out of the game or going into gameplay will not slow down your downloads
      • If a download completes during gameplay, it extracts after gameplay exits
    • Fake Notes globally defaulted to 25% opacity
      • Added a new noteskin metric _NoteOpacityMultiplier to facilitate this change
      • Add TapFakeNoteOpacityMultiplier=1.0 to your noteskin metrics.ini under [NoteDisplay] to undo this change
      • You can use this same metric for all other note types, such as TapNoteNoteOpacityMultiplier and HoldBodyNoteOpacityMultiplier
    • Noteskins are forced to always load the highest possible resolution textures
      • This fixes an issue where spritesheet misalignments can break noteskins but only for certain MaxTextureResolution settings
    • Global Offset and Visual Delay are present in the legacy Graphics Options screen and are changed to allow 1ms increments
    • New H-Random Shuffle mod added to options screens where Shuffle mods are visible
      • H-Ran is a variant of SuperShuffle which avoids making jacks when possible. It also "un-jacks" existing jacks, if possible
    • Clap/Metronome was readded to the legacy Player Options screen (double enter menu) for some users who cannot use F7
    • Message that shows when using an invalidating mod in gameplay updated to be more obvious that you are invalidating a score
    • Hold/Roll timing window can no longer be reduced to below J4 manually
    • Hold/Roll life editing via preferences or metrics is no longer allowed
    • The existing mechanic which prevents getting a Bad while tapping within an alive Hold or Roll due to an incoming note has been changed to stay locked to the J4 window
      • This means that the window actually grew for users of higher judges, and you may be more likely to receive a Bad
    • Readded and improved the ShowBanners and ShowBackgrounds options to apply thoroughly
    • Scores over 100% should be force invalidated
  • Rebirth
    • Chart Author added to Gameplay splash intro
    • Chart Author should always show up when hovering the CDTitle area even if the CDTitle is invisible
    • Chart Leaderboards in SelectMusic and Evaluation will color Chord Cohesion On scores differently from others
      • Added a new color config entry for this under the evaluation and generalBox categories
    • Chart Preview was redone to replace the entire side of the screen and be more visible
    • Combo Animations are toggleable through the settings menu - defaulted off
    • Evaluation song banner keeps the same aspect ratio as everywhere else
    • EWMA numerical display added as a new toggleable gameplay element, like the mean display - defaulted off
    • Gameplay Goal Tracker had its 96.65% increment replaced with the 96.5% increment
    • Gameplay Leaderboard has a new option Local to show only local scores for the current rate
    • Help screen contains information about ClearTypes
    • Language changes in the settings screen will now force a theme restart
    • Show Banners option added to settings under Graphics -> Global Options to allow turning off all banners
    • Show Backgrounds option added to settings under Graphics -> Global Options to allow turning off all backgrounds
    • Standard Deviation numerical display added as a new toggleable gameplay element, like the mean display - defaulted off
    • Score uploads being done in bulk show progress via a new progress bar under the pack downloads progress bar
    • Translation support added
  • 'Til Death
    • Chart Author added to Gameplay splash intro
    • Chart Author added to CDTitle mouse hover action, unless the author cannot be determined
    • Leftmost buttons in SelectMusic meshed into the UI more
    • Searching should never send you to the first alphabetical file when failing a search
      • No more saying "All rise for the Etterna Song Search national anthem"
    • Show Banners option added to Theme Options to allow turning off all banners
    • Show Backgrounds option added to Theme Options to allow turning off all backgrounds
  • Localization
    • Japanese Translation
      • Updated core/fallback strings
      • Added partial 'Til Death translation
      • Added partial Rebirth translation
      • Translator's note: 違和感とか翻訳ミスがあれば連絡してください snover#2857

Fixes

  • General
    • BPMDisplay should properly work for files where the different difficulties have different BPMs
    • Difficulty calculator had discrepancies when comparing float values
    • Crashes when downloading files that had symbols not allowed in filepaths
    • Crashes due to memory leak when scrolling across packs with video banners
    • Crashes caused by ActorFrameTexture in D3D
    • Crashes caused by missing a theme metric
    • Crashes caused by using the song filtering to filter out the GameplaySyncMachine chart
    • Deadlock crashing related to audio playing
    • Errors caused by starting any file with BGChanges that was loaded from Ungrouped Songs
    • Invalid UTF8 in file paths now properly handled for Windows 10 (2019) users
      • Some of the packs you have loaded may suddenly have hundreds of new songs in them
    • Online HighScores didn't properly fill in the MissedHold field
    • Playlist creation for the first time caused 2 playlists to manifest incorrectly
    • Playlists having a file added which was recently reloaded from disk with a changed chartkey used to add a nonexistent file
    • Reloading a chart and causing a chartkey to no longer be associated with a Song was never recalculated
  • Rebirth
    • BGBrightness and ScreenFilter no longer forced to 0% or 100%
    • Crashes caused by breaking input system continuity by clicking to close a text box
    • Goals should properly visually update when adding them by pressing Ctrl + G
    • Lua errors in Practice Mode
    • Removed the random debug string that appears when you switch songs
    • WheelDataManager's unused functions don't break anymore
  • 'Til Death
    • Gameplay Leaderboard should no longer break gameplay when playing on unranked charts

Development

  • C++ standard moved to C++20
  • Added GAMEMAN->GetStyleForStepsType(StepsType) because it was a necessary evil
  • Added NOTESKIN->GetMetric(string, string, string) to allow defaulting noteskin metric values
  • Added Lua bindings for Replays and ReplaySnapshots
  • Added REPLAYS singleton created with Lua access to mess with replays
  • Replays were totally rewritten and use zlib compression for input data. The system basically deals with all previous formats and outputs a single one
  • D3D renderer error output improved
  • Fallback names for W1 and W5 changed to Marvelous and Bad
  • Lua no longer has access to modify invalidating PlayerOptions or music rate during gameplay
  • Miss window being 180ms is now a hardcoded constant
  • Moved the arbitrary -2000 gameplay number to -200000
  • libcurl updated to 7_83_1
  • Preference UnfocusedSleepMilliseconds created to allow changing the sleep time of the main thread while tabbed out
  • Preference DebugMenuButtonToggles created to allow people with lobotomized keyboards to use the debug menu
  • Removed references to ScreenProfileSave saving anything, because it does not save anything
  • Translation support added to the crashpad upload dialogue
  • Username associated with a successful leaderboard log in is recorded in the log file
  • Removed AutoPtrCopyOnWrite
  • Removed dead noteskins
  • Removed DefaultScoreType
  • Removed InitialHoldLife
  • Removed mapconv
  • Removed PlayerAI
  • Removed TimingWindowAdd
  • Removed GetChartLeaderboard (not GetChartLeaderBoard)
  • Removed SoundVolumeAttract
  • Removed EditRecordModeLeadIn
  • Removed ShowInstructions
  • Removed a lot of unused translation strings
  • Coverity defects (a lot)
  • Warnings related to MSVC, clang, and EnumTraits templates
  • XCode build issues fixed (?)

v0.71.2

2 years ago

[0.71.2] - 2022-03-14

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Highly recommend that you check the release notes for 0.71.0 and 0.71.1 if you want the full story of changes, if you haven't updated for a while. This release is for some changes on top of that.

Changes/Updates

  • Major Change
    • The late window for all judges is now normalized to 180ms.
      • Previously, late notes were forcibly turned into misses based on the very old max judge window sizes. This meant that on Judge 9, 36ms late gives a miss instead of a bad all the way to 180ms. This was not intended to be left like this. The result should be minimal, but I'm interested in seeing the effect it has on gameplay at a very high end. The following numbers are the former late window sizes (now replaced by 180ms)
      • Judge 4 - 180ms
      • Judge 5 - 151.2ms
      • Judge 6 - 118.8ms
      • Judge 7 - 90ms
      • Judge 8 - 59.4ms
      • Judge 9 - 36ms
  • General
    • Added preference AllowStartToGiveUp to toggle the "Hold Start to Give Up" feature in Gameplay
    • Added hold explosions to SubtractByZero to match the rest of the DBZ family
    • Practice Mode no longer allows you to access the Evaluation Screen - holding Enter no longer does anything
  • Rebirth
    • Chart preview related changes to its position and added the ability to still be able to click song banners to toggle it even when the banner is invisible
    • Customize Gameplay has access to Judgment Counter Spacing and Size
    • Error Bar count setting cap raised to 200
    • Help menu refers to graces as flams a little more visibly
    • Tournament Sortmode added to allow sorting songs within groups by their [x-x] prefix

Fixes

  • Rebirth
    • Artist sortmode sorted alphabetically instead of by artist
    • Banners were not aspect ratio 3.2 on most game aspect ratios
    • Clicking really fast on the TitleMenu caused crashes
    • Discord Rich Presence was not functioning correctly and now it does
    • Gameplay Leaderboard being enabled for unranked charts caused no elements to load at all
    • nowplaying.txt was not correctly clearing and now it does
    • Tag filtering was too harsh and too nice depending on the context
      • Tagging one chart of a multi diff file then filtering it made either all or none of the charts appear
    • Settings no longer overwrites your custom aspect ratio
    • Song Search did not allow funny capitalization on metadata field searches
  • 'Til Death
    • Player Options' XMod Scroll Speed display did not scale according to rates but does now
  • General
    • Default Beat noteskin was misaligned a bit
    • Input Debounce Preference was completely nonfunctional in Gameplay and is now fixed
    • MacOS <= 10.13 once could not open the game but should be able to now

Development

  • Actors have more access to GetTrueXYZ and GetTrueRotationXYZ
  • rootfs was once mounted and is no longer
  • Rebirth's changeMusicRate function was changed a bit to allow easier changing of the increment size

v0.71.1

2 years ago

[0.71.1] - 2021-12-12

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Highly recommend that you check the release notes for 0.71.0 if you want the full story of changes, if you haven't updated for a while. This release is for some changes on top of that.

Changes/Updates

  • Rebirth
    • Added separate color config options for Gameplay Text and Gameplay Background (check the gameplay section)
    • Added separate color config options for the text that goes on the Judgment bars (check the judgment section)
    • Added a way to stop the background from being the average color of the banner, if the background is missing
      • Added an option to Settings -> Graphics -> Theme Options called "BG Fallback to Banner Color"
      • If this option is turned off, it follows a new color config option called SelectMusicBackground to the main section
    • Added Measure Lines toggle option to settings
    • All legacy options screens should now scale in a way that is similar to older themes
    • Input is now locked completely when successfully entering a song
    • Customize Gameplay increments for Error Bar resizing increased to a more sane level
    • Mirror is moved from Appearance Options to Essential Options
    • Moved the permamirror and favorite icons off of wheel banners
    • Critical text in Evaluation is now very slightly bigger for general visibility reasons, mostly thumbnails

Fixes

  • Rebirth
    • Customize Gameplay had an issue where dragging the notefield with your mouse while using reverse made it save in the opposite direction
    • Custom resolutions used to be overridden if you even touched the settings window
    • Ghost difficulty cursor is now tangible
    • Scores tab local Grades are now also high resolution
    • Rates leaked out of Select Music into GameplaySyncMachine
  • 'Til Death
    • Scores Tab chart leaderboard had phantom scores when doing pretty much anything, if the leaderboard had less than 10 or 13 scores
    • Scores Tab unintentionally switched the nested tab between local and online when doing anything
    • Scores Tab caused the difficulty display to disappear forever
    • Tags Tab mouse hover logic was broken
  • General
    • Lua errors on the default pump skin are gone
    • Multiple instance detection on Windows was stopping many from opening the game from the shortcut in the game folder, because of the folder name
    • Replay snapshots did not consider beat gamemode related transforms

Development

  • Added util for easier conversion between the old 480 theme height and new ones
  • Removed some random /Scripts/ file

v0.71.0

2 years ago

[0.71.0] - 2021-12-10

As always, back up your Save. That includes any personal modifications to the Assets folder, Noteskins folder, and the entire Save folder.

MacOS Note

OpenSSL is required. It can be installed with Homebrew: NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

It's been a very long time since the previous update 0.70.3. We wanted to make sure that the coming changes were close to perfect so that you wouldn't be disappointed. That and simply a lack of personal free time to continue working is why it kept being delayed. But today is the day. I hope you enjoy Rebirth.

Changes/Updates

  • New Default Theme - Rebirth

    • Rebirth is a rebuild of the Etterna UI almost entirely from scratch. Taking advantage of starting from an empty folder, all code follows a particular style and structure which should be simple to follow and allows for the theme to be functional on any reasonable aspect ratio, for example.
    • Designed with 16:9 in mind, tested lightly on all other aspect ratios
    • Contains every feature expected out of 'Til Death with some minor exceptions
      • Multiplayer is not present at this time - It will be later. There is a planned full redesign of the entire experience
      • Custom judge windows are not present - This will come later and I know you will like it
      • Floating chart leaderboard view is not present - Minor feature not requested by testers, but can add at some point
      • Calculator debug is not present - Not necessary for the general public and I have some cool ideas I want to try later
      • Other minor things forgotten? If I don't remember them now, they probably weren't important
    • Designed for keyboard players specifically. You will need a mouse for some UI elements. However, nearly everything is accessible with mouse or keyboard
    • No splash screen - We want to put you into the game as fast as possible
    • Title Screen contains your profile list, removing Select Profile entirely
      • Click the already selected profile to skip the two step process - The topmost profile is highlighted initially
      • Otherwise, use the arrows and enter to select a menu item and then a profile. Double tapping enter should select the currently selected profile immediately
    • Added a Help Screen accessible from the Title Screen and SelectMusic
      • Contains several categories of useful information
      • Accepting ideas on things that need to be put here
    • SelectMusic looks a lot different.... Before you complain about the music wheel position and the banners being on the wheel: open Settings (Ctrl + 5), Graphics (3), Theme Options and mess with positioning there. You're welcome
      • Tabs are generally in the same order, but are consolidated
      • General Tab has had the 'Til Death MSD Tab combined into it.
        • Tags on the current chart show up here
        • Hover the CDTitle with your mouse to see the chart author
        • Space will toggle chart preview
      • Scores Tab moved to position 2, works essentially the exact same as 'Til Death
        • There was once a bug that hid rate selection if you had scores on too many rates - that is fixed here
        • Use EffectUp/EffectDown to change displayed local scores
        • Hold Select while pressing those buttons to change rate displays
        • Click the tab again or press 2 again to switch between Local and Online
      • Profile Tab moved to position 3
        • Contains all the same information from the 'Til Death Profile Tab
        • Overall tab displays general stats. More stats can be revealed by clicking "Player Ratings"
      • Goals Tab moved to position 4
        • Contains all the 'Til Death features. Everything here should be self explanatory if you are familiar with Goals
      • Playlists Tab moved to position 5
        • Contains all the essential 'Til Death features. There's not a lot to explain here
      • Tags Tab moved to position 6
        • Contains all 'Til Death features including new ones from this update
        • Assign - Toggle a Tag's assignment to the chart you are currently hovering
        • Require Tag - Require that ALL or ANY selected tags are attached to a file when filtering
        • Hide Tag - Require that if ALL or ANY selected tags are attached to a file, it should be filtered out
        • Mode - Only visible when in Require/Hide selection mode. This toggles whether or not to use ANY or ALL behavior in filtering
        • Delete - Toggle delete mode. Clicking a tag at this point would delete it
        • New - Make a new tag
        • Apply - Apply your filter related changes to the wheel
        • Reset - Reset filter related changes
        • Tags from Til Death can be imported if you copy tags.lua from /Save/Til Death_settings/ into /Save/Rebirth_settings/
      • The top section of what I call the "General Box" can be called the "Current Song Box"
        • Clicking the banner is the way to toggle chart preview (only when in the General Tab)
        • Music rate can be changed by clicking or using mouse wheel while hovering
        • Difficulty display still behaves as you are used to: up-up for easier, down-down for harder
      • The top of the screen is the Header section
        • Clicking your Avatar will open Asset Settings (or double tapping Select)
        • Clicking the chain icon on your Avatar attempts Login/Logout (or pressing Ctrl+L)
        • Clicking profile name allows changing the local profile name
        • Clicking rating sends you to the Profile Tab
        • The top right buttons have special shortcut behavior
          • When NOT in a submenu related to the Top Header, use Ctrl + number to invoke those buttons
          • When in a submenu related to the Top Header, use Ctrl + number to access the General box tabs
          • F1 is a global shortcut to open Song Search
      • Header Button 1 is Song Search and Filtering
        • Simply type a query and hit enter to search. Should be self explanatory
        • Use Tab to switch text entry fields if necessary (or click them) - yes, Shift + Tab works to go backwards
        • Filtering is only controlled by the mouse. You drag sliders or click buttons. Works exactly like it looks
      • Header Button 2 is Random
        • Left clicking this button or using Ctrl + 2 selects a globally random song
        • Right clicking this button selects a random song within the currently opened song folder
        • Left clicking the header of the music wheel doubles as either selecting a random folder or a random song in the folder, if one is opened
      • Header Button 3 is Pack Downloads and Bundle Downloads
        • Type to search. Delete to remove search
        • Downloads in progress and queued downloads can now be cancelled individually
      • Header Button 4 is a shortcut to the Help Screen
      • Header Button 5 is Settings
        • This is a new menu that contains every single setting you should need access to
        • Full mouse and keyboard compatibility
        • Use numbers to switch option categories
        • Space to toggle chart preview
        • Some options have double arrows - this means they have larger increments available if you hold Ctrl while using Left/Right
        • Scroll wheel can be used on any option you expect to need it
      • Settings Sub Screen - Key Config Rewritten
        • The first time you open this screen, it removes all of your bindings!
        • Rebinding your controls on this screen puts them directly on the old "default" column
        • Double setup is dead
      • Settings Sub Screen - Color Config Rewritten
        • Hovering with the mouse, you can learn the keyboard shortcuts to make this screen function
        • Color Config Presets: You can now save full color config setups separately and share them, and load them dynamically
        • Any color change made on this screen immediately reflects without you having to do anything extra - try it on main > PrimaryBackground
      • The Music Wheel has been rewritten completely in Lua
        • Allows for extremely easy modification or addition of sort modes - Check out the new ones
          • ClearType, Pack Clear Percent, Most Recent Score, Last PB Date MSD/Percent, Author
        • The wheel does not have a strict concept of song folders, meaning different sort modes each have their own pack lamp possibilities
          • The wheel refers to them as Folders internally
          • To get a Pack Lamp of C or above, you must pass all valid files on at least 1.0 with a C or above
          • To get a Clear Lamp, you must pass all valid files on any rate on C or above
    • Evaluation was completely remade
      • Offset plot highlighting is more comprehensive
      • Offset plot hovering shows standard deviation, timestamp, and mean
      • Mouse hovering the lower stats section details your combo breaks per column
      • Judge switching is still a thing (EffectUp/EffectDown)
      • Login and Logout is possible on this screen
      • Clicking a score that has a replay will load that score to see it in detail
    • Customize Gameplay has been completely rewritten
      • Much more generic - If you ever decide to make a new Gameplay element, it's trivial to add to Customize Gameplay
      • Capable of loading your existing 'Til Death Customization
        • To load it, close your game, copy your playerConfig.lua from /Save/LocalProfiles/????????/Til Death_settings/, and put it into /Save/Rebirth_settings/
      • Has a menu within it controlled with the mouse or the arrow keys
      • Every element can be mouse dragged (Cannot drag elements that are rotated!)
      • Press space with an element selected to scroll through movement types if available (Coordinates, Sizing, Spacing)
      • Right clicking or pressing enter will deselect a selected element
      • Delete, RestartGameplay, and Backspace function as the undo button - This will undo only one action for the selected element
      • Holding Ctrl when pressing Undo resets the selected element to default
      • Holding Shift when using the arrow keys to modify an element enables smaller increments
    • Replay mode has 2 extra visual buttons added for mouse simplicity
    • There's a couple of secrets on the main menu
    • Old options menus can still be accessed the same way you usually get to them
      • Double-Enter for Player Options is still there
      • Old Key Config is still there
      • All main menu options are still there
  • Difficulty Calculator Changes

    • See Calculator Bugfixes below for some actual bug related changes
    • SoloCalc has been generalized for n keys. All keymodes now have a calculator
      • Profile rating is not yet enabled outside of 4k
    • Downscaling based on accuracy is much more harsh below 90%
    • Downscaling based on time is redone - The downscaler now attempts to throw out intervals not reaching a certain density threshold before making the time calculation
      • Side effect of this is very empty charts are nerfed
      • Due to the nature of jacks, the time downscaler is a lot less harsh on short files if the highest skillset is jacks
    • Aggregation related functionality has been centralized but should not affect output
    • Optimized chisel for huge speed increase - skillsets not within 10% of the highest rating after the initial pass are not re-iterated
    • Chordjack pattern mods can detect continuous one handed anchors or chains
    • Chordjack difficulties are no longer smoothed, like all other skillsets
    • Chordjacks have been retuned basically to the point that ultra dense stamina oriented files should be much less overrated
      • Side effect of this is chordjacks in general are nerfed
    • Harshly nerfed flam based farm files
      • Side effect of this is a short list of legitimate files are nerfed at higher rates -- this is not a permanent fix
    • Added detection for handstream density, but left disabled
    • Jackspeed difficulties decoupled from runningman difficulties for simpler tuning
    • Jackspeed retuned in a particular way that nerfs most files but doesn't harm proper jack files in the grand scheme of things
      • Not perfect but looks better than before
    • Nerfed runningman burst anchor difficulties to pull back tech farm
    • Stamina globally boosted 0.5% to allow it to show up as a top skillset for files
    • did a bunch of debug info display stuff related to jacks and points and downscaling
  • Logging Rewrite

    • Reimplemented using Plog
    • Each game session gets its own unique log file, timestamped
    • Log messages consolidated to one single .log
    • Reset the default logging level to INFO and redid some of the logging messages so hopefully this doesn't eat all your space instantly
      • To change: Preferences.ini LoggingLevel=
    • Log files are never deleted by the game. You must remove them yourself if space is needed
    • If opted in to crash dump uploading, the log file that is associated with a crash dump will also be uploaded
  • Crash Logger Rewrite

    • Reimplemented using crashpad
    • Each crash should generate a .dmp file which ends up in a CrashData folder in your install directory
      • This dmp contains information about the call stack of each process thread and information about variables and memory associated with it. This means in a really roundabout way that, for example, if you ever crashed within a very specific set of conditions, the dmp can contain sensitive information (as far as I am aware at this time, at worst it would be your login password)
      • Read about decoding it yourself in the documentation if you want
    • Crash dumps and associated log files will be uploaded automatically IF YOU OPT IN. We don't want to force you to hand off random files
      • Preference to toggle it at any time is located in Advanced Options
      • When turned on, your crash dumps and the log for that session will be uploaded to crash.etterna.dev (we run this site)
  • Other Core Additions

    • ActorProxy is back. ActorProxy makes a visual copy of whatever you set as a target. Usually used for modfiles
    • Added InputData recording. This means the game tracks how long you press the gameplay columns for each score. Nothing else
    • MultiToasty is back
      • Hidden behind a default-off preference: MultiToasty
    • Added pack progress counter to C++ based music wheels
      • Defaulted off - check options for Show Pack Progress
    • Added NoteField cover similar to the NoteField board but in front
    • Completed pack downloads cause the taskbar icon to flash on Windows, or the icon to bounce on Mac
    • Osu loader added support for 3k (dance-threepanel), 9k (popn-nine), and 10k (pump-double)
    • Popn (5k, 9k) support added to customize gameplay
    • Popn support added to Noteskin Preview
    • Replay Snapshots contain information about standard deviation and mean
    • Unranked charts vs empty chart leaderboards are now distinguishable
    • Pack banners support movie formats like song banners
  • Other Core Changes

    • AAAAA is moved to 99.9935%
    • Non-4k keymodes no longer automatically invalidate
    • Volume changes update live
    • Volume levels sound more natural - 10% actually feels quiet
    • New default beat skin
    • Everyone's combo and judgment got moved vertically some distance and you just have to deal with it
    • Resolved a long standing issue related to vsync and/or using DACs or certain sound drivers all leading to you experiencing unresolvable consistent stuttering in gameplay
      • This issue is separate from everyone's own unique issue of stuttering due to CPU pre-emption
    • Debug menu F8 page shows current chartkey
    • Debug menu F8 page allows opening the current song folder
      • This doesn't work on Windows for certain paths
    • Explicitly using double bindings for a score is now being tracked
    • J4-normalized judgments are saved in addition to regular judgments for scores
    • Filters allow filtering by Highest Percent Score for all scores on charts
    • Filters allow filtering by Highest Difficulty Only, meaning the filter only checks the hardest chart on a song
    • Filter rate lower bound moved to 0.05x
    • Goals allow selecting the specific percentages of the higher accuracy grades AAA - AAAAA
    • Goal priority 0 removed, all default to 1
    • Gameplay goal/PB tracker ignores failed scores
    • Insert mods previously hidden away are now selectable: AnchorJS, JackJS, IcyWorld
    • Pressing RestartGameplay in Evaluation restarts the song (does not undo your score)
    • Lua is allowed to turn on the background of a song even if brightness is set to 0, if any bgchanges are present
    • Rewrote chart preview completely
      • probably gonna rewrite it again
    • Forced DelayedTextureDelete on for everyone (keep textures temporarily in memory for 30 seconds)
      • Can be turned back off ... there's no reason to
    • Select Game screen reordered based on popularity of gamemode
    • Secretly added support for quintuple setup
    • Cheating holds by holding some certain buttons is no longer possible
    • Shortened and truncated downloading messages for readability
    • Player Options was split into 3 pages by broad category
    • Practice Mode resets life bar to 100% when moving position
    • RestartGameplay follows the DelayedBack preference
    • Reverse is now called Downscroll in Player Options
    • Replaced SurviveSeconds with PlayedSeconds and made it more accurate to physical time spent in Gameplay
    • Sync overlays in gameplay adjusted for readability and clarity
    • Toasty now triggers at 250 combo instead of 251
    • Multiplayer chat message sending is now restricted to 500 characters
  • Til' Death Refresher

    • General
      • Redid all mouse input in the UI
      • Asset settings reformatted for UI reasons
      • Chord density graph hovers will now show BPM and NPS at the timestamp
      • Chord density graphs now support any keymode
      • Added a "Press Enter for Player Options" pop up
      • Added theme option for removing the Combo text
      • Added theme option to toggle combo related animations
      • Added theme option for toggling judgment related animations
      • Fullscreen cursor displays at your refresh rate properly
      • Fallback banner replaced
      • Grammar referring to goods as misses calls them CBs
      • Multiplayer chat window resized and reformatted
      • Cleaned or merged several multiplayer screens or actor files
      • GameplaySyncMachine has a disappearing NoteField to encourage reading by audio
        • Added an option to Theme Options to turn this off
      • Options cursors are faster
      • Color config doesn't save unnecessary alpha values
      • Font is now dummy huge high quality (you guys complain about the smallest things)
      • Less unsafe editor link
      • Recolored a bunch of stuff you will notice immediately
      • Exiting replays no longer says "Saving Profile"
    • Customize Gameplay
      • Backspace resets a selected element to the default position
    • SelectMusic
      • Scores tab will toggle between Local and Online if you press 3 again or click the tab again
      • Songs can be excluded based on tags
      • Rewrote the difficulty display in Lua
      • Chart Preview follows scroll mod changes
      • Login works like 5% better
      • Minimum music rate is now 0.05x
      • MusicWheel scroll bar can be dragged
      • MSD tab shows calc version
      • Top 3 skillsets in general tab do not show up outside of 4k
      • Multiple other minor tab redesign, color, or UI shape things
    • Evaluation
      • Clicking a score in the scoreboard switches to it
      • Offset plot hovers show the timestamp of the hover
      • Offset plot hovers show the mean and standard deviation at the hover
      • Offset plot tries to animate a little
      • Moved multiple things on this screen about 1 millimeter
      • Multiplayer scoreboard player cap raised to 32
  • bare-frames

    • nothing 👍

Fixes

  • Core Fixes
    • Beat was inconsistently treating the scratch column for some mods and contexts (chart preview)
    • Background videos not rendering in some openGL contexts should be fixed. Still an issue for some
    • Binding gameplay buttons to your up and down arrow keys no longer breaks the close-pack shortcut
    • Branching logic was bad in fallback causing certain AutoSetStyle configurations lead to crashes or black screens
    • Chat overlay showed up in wrong situations
    • Mac cursor visibility can now be toggled by the game
    • Mac/Linux treatment of caps lock was broken and now is less broken
    • MSD lower bound extrapolation no longer stops at 0.7x
    • Multiplayer tracks wifeversion. This caused scores to show wife2 wrongly
    • Multiplayer tracks RadarValues. This caused issues with score recalculation
    • Certain Turn and Transform mods didn't properly invalidate but now they do
    • Fallback NoteField noteskin was stuck to default instead of dbz, causing continuity issues if loading NoteFields in an unexpected order
    • ScreenTextEntry validator failures stop the user from pressing enter
    • Crash when closing the game (one of many)
    • Crash when exiting GameplaySyncMachine
    • Crash when setting a first Highscore
    • Crash when looking for a first Highscore when there are none
    • Crash when getting Replay snapshots for no replay
    • Crash when hovering a song with 24 difficulties
    • Crash when intentionally breaking Filtermanager
    • Crash when restarting GameplaySyncMachine
    • Crash when syncing in solo
    • Crash when internal player state vanishes before gameplay has a chance to think
    • Crash in gameplay when no notedata is present
    • Crash when deleting Favorites playlist
    • Crash when setting MusicWheel to a size of -3. no more no less
    • Crash when loading an osu file that has any BPM that fails parsing
    • Crash when its cloudy outside and you touch any playlist functionality
    • Crash due to having installed Linux while the number of times you blinked that day was divisible by 13
      • Pressing any button crashes the game - related to scan code char widths
    • Crash vaguely related to opening the game for the sole purpose of playing multiplayer
    • Crash when syncing a file that has an unrecognized style in the .sm
    • Crash when opening the game after logging in 1 time
      • Logging in with an empty profile sometimes causes the site to 404, which was not accounted for
    • Crash when pressing enter after going into a replay or view evaluation
    • Ghost playlists (luckily not poltergeists)
    • Hard to find DirectX in cmake
    • Misalignments in dividebyzero based noteskins
    • Downloads in progress pointed to wrong in progress link being used
    • Bundle downloads no longer always broken mirror links
    • Favorites sort no longer nonsensically foldered
    • Filters used to care about all charts in a suboptimal situation in which they were already filtered out by length
    • Logs not showing proper git build information should be fixed
    • Multiple highscores with the exact same percentages used to be considered one score while displaying them, causing scores to be hidden
    • IsOver used to not care about ZoomY
    • Broken Linux audio probably fixed probably wasn't broken
    • LifeGraphs and ComboGraphs should be better synced with song positions
    • Fixed the order of the gameplay buttons so it works for a keyboard
    • Reset redirected input when using key config or service switch shortcuts
    • muFFT related memory leaks
    • muFFT debug compiling issues
    • muFFT linux crashing? probably. we really put like 1000 seconds into fixing this like super high effort im sure its fixed by now
    • Mac Big Sur used to not be able to run the game
    • Mac Big Sur used to not be able to compile the game
    • Mac Big Sur used to not have any audio in the game
    • Mac M1 used to not be able to run the game
    • Mac M1 used to not be able to compile the game
    • Mac Retina displays used to break the game by default
    • Mac now has the ability to self translocate which means the no noteskins errors should be gone
      • This behavior is considered malicious but we aren't in the business of getting an official license anyways. Getting an official license would mean we can undo this and not have to deal with the original problem
    • Malformed logins broke the game and now don't
    • Blank multiplayer rooms were possible and that was such a problem it caused errors while playing singleplayer
    • MusicWheel sortmode caching now actually works
    • MusicWheel showed filtered out chart grades
    • Extra non C++ NoteField children used to always be invisible due to a lack of any draw calls
    • Syncing osu files used to be impossible
    • Inability to load the first difficulty of an osu file for any reason caused a crash
    • Playlists caused double saves at the end of a course
    • Reloads from disk while in Practice Mode used to not reload any sync data, causing oddities related to ssc scrolls and bpm changes
    • Profile used to not save FailType, BatteryType, DrainType, LifeType
    • Unnecessitated the necessity for hacking profile overall rating into a separate field instead of the thing that carries all of your profile ratings
    • Replay snapshots unintentionally placed all unjudgeable notes as misses
    • Replay snapshots would unintentionally place all dropped holds at the start of the file
    • Replay type was not populated at the right moment during score save
    • Replays could get into a weird state causing the TNS_Hidenote to be an impossible number
    • Replays that hit any mines would have a chance to try to assign a mine hit every frame for the rest of the file
    • Replays received from online used to say a miss was a 180ms bad instead
    • RageTextureID no longer leaks a lot of textures
    • Screens assigned any delayed periodic functions never destructed them which one way or another caused the Lua runtime to do quantum type assignment (do not investigate)
    • SSC scrolls no longer broken in chart preview
    • SSC scrolls no longer broken when loaded from cache
      • This issue actually affected every SSC field
    • Changing sync of a file using F11/F12 never live updated the file unless you saved it which didn't really make any sense
    • TotalDancePoints was never updated across stages, breaking theme code that is useful but was written 46 (give or take a few) years ago
    • Entering replays showed "Press Start for Player Options" wrongly
  • Calculator Bugfixes
    • No longer using large static STL arrays because MSVC update made them eat all of your RAM at compile (thanks Microsoft)
    • Fixed some edge cases where data structures did not reset at the end of iteration
    • Some debug graph bandaiding was done where difficulties were unable to be shown
    • Parameter loading for tuning fixed by moving all control to a new Preference AlwaysLoadCalcParams
    • Debug line drawing was bad and is more optimized and less bad
    • Profile recalculation did not recalculate profile but now does recalculate profile
    • Erroneous jack difficulties caused by falsely non terminating anchors on either finger of any hand are now fixed
    • Visibility related color and position changes
    • Technically infinite files are skipped
    • Stale state related things were fixed which could fix a small number of SSR related abnormalities
  • Til' Death Fixes
    • Aspect ratios other than 4:3 and 16:9 no longer have odd issues with clicking around the music wheel
    • Asset settings is no longer very rarely in the wrong order
    • Chord density graph clicking used to not match timestamp if the current chart had timing different from the song
    • Cleartypes previously used a saved Grade instead of score based Grade
    • Clicking a goal of a song that is not able to be switched to no longer changes rate
    • German Til Death called the game fluid dynamic simulator 2011 or something
    • Bunch of lua errors everywhere that nobody actually really ever got
    • Wife2 scores that convert to Wife3 used to not show Wife3 after converting
    • Rescoring in evaluation was sometimes very wrong for reasons related to RadarValues
    • Transliteration on Playlists was nonexistent
    • Rare input lock in Select Profile
    • Lag related to music playing in selectmusic
  • bare-frames Fixes
    • MSD display no longer fails to update when changing rates

Development Updates

See the commit-by-commit changelog here

  • Miscellaneous
    • Solved at least 1 compile warning
    • Alpine build instructions added
    • MinaCalc cmake was modified to allow for building it just a little easier (like barely)
    • Added a tiny bit of MinaCalc documentation to the source
    • Updated issue templates
    • Cryptmanager supports SHA256
    • Cryptmanager uses openssl methods for SHA1 and MD5
    • MinaCalc preference added to force reload param xml every time - AlwaysLoadCalcParams
    • Added SampleMusicPreviewMode_Nothing to stop all sample music playback
    • ScreenTextEntry is now capable of maintaining the input redirection state of players if invoked from C++
    • Forked ffmpeg and use that for our builds instead
    • Overlay screens reload during theme changes (apparently they didn't before)
    • Renamed RefreshFavourites to RefreshFavorites
    • RageTextures track RageSurfaces
  • Lua
    • Updated from a 2017 version of LuaJIT-2.1.0-beta3 to whatever is latest as of like a month ago I don't know
    • Added access to InputMapper in general for key binding things
    • Added ActorProxy
    • Added GetTrueZoomX
    • Added GetTrueZoomY
    • Added GetTrueRotationZ
    • Added GetSSRCalcVersion for highscore calc versions
    • Added GetCalcVersion for installed calc version
    • Added GetMirror for getting download mirror links
    • Added ToggleHighestDifficultyOnly and GetHighestDifficultyOnly for filtering
    • Added FlushDirCache to force recaching a directory in the filemanager
    • Added GetGameFromString to get direct access to a Game in Lua
    • Added GetChartsOfCurrentGameMode for songs
    • Added GetChartsMatchingFilter for songs
    • Added GetHighestGrade for songs
    • Added AddGoal
    • Added RenamePlaylistNoDialog
    • Added GetHoldNoteVector for replays
    • Added SongTitleComparator to SongUtil bindings
    • Added GetPlayerRatingOverTime
    • Added GetPreferredStepsType
    • Added SetSelectionIndex for ScreenSelect
    • Added PlayChangeSound for ScreenSelect
    • Added PlaySelectSound for ScreenSelect
    • Added ReloadCurrentSong for ScreenSelectMusic
    • Added ReloadCurrentPack for ScreenSelectMusic
    • Added ToggleCurrentFavorite for ScreenSelectMusic
    • Added ToggleCurrentPermamirror for ScreenSelectMusic
    • Added GoalFromCurrentChart for ScreenSelectMusic
    • Added GetTopPlayedSkillsets
    • Added GetPlaycountPerSkillset
    • Added AddCurrentChartToActivePlaylist for ScreenSelectMusic
    • Added PlayCurrentSongSampleMusic, can also play the entire song instead
    • Added SwitchThemeAndLanguage
    • Added FromString to PlayerOptions
    • Added GetAverageColor to RageTexture
    • Added GetScoresThisSession
    • Added GetNumScoresThisSession
    • Added GetQueuedPacks to downloadmanager
    • Added RemoveFromQueue to downloads
    • Added ResyncMusicPlaying to gamesoundmanager
    • CurrentStepsChanged replaces CurrentStepsP1Changed
    • Added BundlesRefreshed and PacksRefreshed messages
    • Added BeginTextEntry, CancelTextEntry, CompleteTextEntry messages to ScreenTextEntry
    • Lua Input event table contains the event.charNoModifiers to allow access to the original char that is usually seen in C++ input events but never Lua
    • Added script SameColor to compare colors
    • Added scripts getLowerWindowForJudgment and getUpperWindowForJudgment to ms to get the ms windows for judgments and timescales
    • ms.ok compatible with tables
    • more i forgot
  • Removed
    • AllowW1
    • Calculator 0ms assert
    • Unused preferences
    • Cryptmanager UUIDs
    • P2 references in messages
    • IsGame Lua stuff
    • Deprecated SongUtil song search related things
    • Libtomcrypt
    • Libtommath
    • Picosha2
    • Profile chart edits
    • Preferred sort
    • Song shuffle caching
    • Signed profiles
    • TestInitialScreen
    • Putty crypto
    • many more unused things

v0.70.4

3 years ago

[0.70.4] - 2021-04-01

As always, back up your Save. (april fools)

MacOS Note

This MacOS binary is not signed, so before it can be installed it must be de-quarantined by executing this command in the same directory as Etterna-0.70.4-Darwin.dmg:

xattr -d com.apple.quarantine ./Etterna-0.70.4-Darwin.dmg

Additionally, OpenSSL is required. It can be installed with Homebrew:

NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Fixes

  • Fixed Favorites SortMode being sorted into groups that are also in an alphabetical order of an unknown language
  • Fixed extreme RAM usage when building in MSVC - large calc data has been moved from std array to std vector

v0.70.3

3 years ago

[0.70.3] - 2020-07-17

See the comprehensive changelog in detail here (this changelog is a lot different from the release notes so probably don't click on it)

Note

The calculator has had some changes in this update compared to 0.70.2. For information on the major calculator changes, refer to Here Specifically, the changes in this update are in jacks and handstream, but may affect other skillsets.

As always, back up your Save.

Automatic Score Uploading (the thing that uploads your older scores) is disabled at the moment. You can continue to upload manually. Scores should also continue to upload after setting new ones.

MacOS Note

This MacOS binary is not signed, so before it can be installed it must be de-quarantined by executing this command in the same directory as Etterna-0.70.3-Darwin.dmg:

xattr -d com.apple.quarantine ./Etterna-0.70.3-Darwin.dmg

Additionally, OpenSSL is required. It can be installed with Homebrew:

NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Changes/Updates

  • bare-frames
    • Added a new theme to the game called bare-frames
    • Meant to represent the absolute minimum amount of effort required to make a functioning singleplayer theme
      • Contains a few simple comments in the Lua files. Will expand on comments if desired
      • No mouse support (will add if desired)
      • Give suggestions to continue its development, but not for large scale features
    • Select the Theme by going to Options -> Display Options -> Appearance Options
  • Default SoundDriver is back to being WaveOut
    • Nobody reported improvements (nobody ever does anyways) and we only got complaints
  • MinaCalc HS/Jack changes mostly
  • Pressing Reset on the Filter tab will reset all of the buttons on that screen instead of just the number entries

Fixes

  • Crashing when selecting RandomBGMovies
  • Crash when calculating Replay Snapshots in a really specific scenario
  • Crash when filtering on edge cache rates (0.7, 2.0)
  • Dead possibly crashy SongOptions hidden in the fallback theme
  • Debug Graphs failing to display or scale properly
  • Jack Difficulty calc debug output is mostly fixed

Known Issues

  • See: github issues

Developer Updates

  • Miniscule cleaning

v0.70.2

3 years ago

[0.70.2] - 2020-07-13

See the comprehensive changelog in detail here (this changelog is a lot different from the release notes so probably don't click on it)

Note

The calculator has had some changes in this update compared to 0.70.1. For information on the major calculator changes, refer to Here Specifically, the changes in this update are in jacks and jumpstream, but may affect other skillsets.

As always, back up your Save.

Automatic Score Uploading (the thing that uploads your older scores) is disabled at the moment. You can continue to upload manually. Scores should also continue to upload after setting new ones.

MacOS Note

This MacOS binary is not signed, so before it can be installed it must be de-quarantined by executing this command in the same directory as Etterna-0.70.2-Darwin.dmg:

xattr -d com.apple.quarantine ./Etterna-0.70.2-Darwin.dmg

Additionally, OpenSSL is required. It can be installed with Homebrew:

NOTE: If you don't have Homebrew installed already, follow the instructions from the Homebrew website.

brew install openssl

Changes/Updates

  • Profile saving will take place after score upload and before entering Evaluation
    • You should notice a longer entrance into Evaluation but a shorter exit out of Evaluation

Fixes

  • Calc bugs were present, and are fewer. Don't worry about it
  • Highest-Only Filter should work as expected fully now
  • Linux won't crash if the visualizer is on
  • Profile Tab rate changing won't happen if you click a song and nothing else happens
  • Song Filtering should only display difficulties that fit the filter
  • Sortmode text alignment suddenly learned space flight and they were reprimanded for this transgression
  • Sorts used incorrectly from fallback metrics won't crash the game (why should this crash the game?)

Known Issues

  • Top Grades sort by WifePercent except in the D and F tier where it becomes unclear
  • Forgot to fix Favorites grouping for no reason (oops)

Developer Updates

  • Minacalc was moved a little, includes changed to be relative
  • Some more tiny code cleanup
  • Removed PlayMode
  • thank