Releases: Wieku/danser-go
0.9.1
Danser
Scoring
- Fixed combo not resetting when very short sliders are missed (0.9.0 regression)
- Fixed spinners sometimes not clearing or giving too much bonus in replays (#330)
- Fixed spinners sometimes auto-missing with massive RPM in replays (#342, https://reddit.com/r/osugame/comments/15sf7ui/comment/jwdyumm)
- Fixed passive hp drain being too high on some maps (#316, #342)
Misc
- Debug overlay now shows memory info
- Reduced memory hit by debug overlay
- Reduced memory allocation by shaders, should result in less GC cycles.
Launcher
- Fixed strain graph not showing properly for freshly imported maps
0.9.0
General
- Dropped support for Windows 7/8/8.1
- Updated go to 1.21 which brings stability improvements
- Added a
DANSER_FLAGS
=AMDHACK
environment variable to fix cases when launcher only has triangles visible or danser has random missing letters on older AMD GPUs
Danser
Recording
- Fixed color issues/stuttering on 23.7.1 or newer AMD drivers (#337)
UI
- Strain Graph now ends at last object's end, not start
- Strain Graph now better exposes most difficult parts of the map
- Fixed Strain Graph crashing if map has only one object
Objects
- Fixed reverse arrows being broken on old maps (#328)
- Fixed missed kick slider head circles disappearing too late
Settings
Cursor.CursorRipples
is now disabled by default because a lot of people confused them with HitLighting- Paths are not being sanitized anymore which enables use of network locations (#323)
Misc
- LZMA compressed and Base64 encoded settings are now embedded in danser.log for easier issue analysis
- Improved stability of frame limiter, fixes update thread sometimes being stuck at 800-ish ups
-debug
flag now also shows memory information
Launcher
- Launcher logs now also print platform information
- Fixed "Select replay" button crashing the launcher if Replays dir doesn't exist, it now defaults to danser's dir
- Improved wording of Encoder option tooltip (by @AliceUnderwater)
- Fixed task bar progress being stuck on failed replays
- File/Directory that triggered the database refresh request is now being logged
- Added strain graph to Time/Offset menu:
I think I didn't omit anything this time ;)
0.8.4
Happy New Year! 🎉🎉
General
Settings
- Changed default values for OversampleMultiplier and BlendFrames to 16 and 24
Launcher
- Fixed launcher crashing if Songs dir doesn't exist
- Fixed "Browse" button freezing the launcher
0.8.3
Ho Ho Ho! 🎅
A small update this time, but read to the very end ;)
Danser
Recording
- Improved quality (especially hitcircles) at lower resolutions
Gameplay
- Added an option to ignore fails in replays. You can now render your multi replays ;)
Objects
- Fixed some sliders not loading correctly
- Danser is now ignoring sliders with 1B total length (pixel_length * repeats)
Cursordance
- Fixed danser failing at ~60% of the map when Slider Dance is turned on.
Playfield
- Fixed "Bloom to the beat" not being disableable
Storyboards
- Fixed looping sprites disappearing too early
Launcher
Import
- Slightly improved speed of calculating Star Rating of longer maps
- Fixed some maps freezing Star Rating Calculation
Recording
- Fixed danser opening new videos folder each time after finishing 2nd+ video.
And a small surprise in the launcher!
Merry Christmas! 🎅🎄
0.8.2
Finally an update :P
There are some changes in settings file format, read below.
General
- Fixed function keys crashing danser and launcher (#293)
- (Linux) Fixed inability to run danser if working directory is not the same as danser's directory
- Fixed broken video on AMD GPUs with 15.200.* drivers
Danser
Recording
- Fixed AAC audio being encoded at 128kbps no matter the setting
- Removed manual blending weights
- Moved Automatic weights to Motion Blur:
They migrate automatically
Gameplay
- Fixed HT plays having wrong passive HP drain (#288)
- Fixed NaN pp appearing in some cases
- Fixed osu! auto replays auo-failing (OR just use danser UI mode FFS)
- Switched danser auto and play mode to lazer's notelock (kinda, auto-miss is missing yet). Ability to switch between stable/lazer notelock will come in the future
Cursor dance
- Numerous improvements to 2B cursor dancing (example: https://youtu.be/97Gx97iCQ9s)
Objects
- Added support for lazer's multi-type sliders:
- Fixed timing points with decimal time (lazer) being skipped
- Improved performance of sliders with huge amounts of ticks/repeats
- Immensely improved performance of slider path rendering, allowing complex sliders without losing quality. As a result, Quality options have been removed. For nerds: https://img.wieku.me/22/solace.mp4
- Fixed distortions not looking correctly
- Added options to customize distortions
- Fixed objects with negative volume being loud
Storyboards
- Fixed video of https://osu.ppy.sh/s/95981 crashing danser if internal ffmpeg is used
- Fixed some sprites of https://osu.ppy.sh/beatmapsets/1521219 storyboard not being scaled/flipped correctly
Launcher
General
- Fixed some maps freezing Star Rating calculation
- Removed classic knockout
- Danser now detects new maps in osu! Songs directory, restart is no longer required:
- Maps can be imported by dropping OSZ file on launcher's window. osu! may complain about it.
Settings
- Fixed search being reset on reopening
- Added more tooltips
- Added 16:9 presets to Recording Resolution:
And probably something I forgot about.
0.8.1
General
- Switched to 2022-09-30 PP System: https://osu.ppy.sh/home/news/2022-09-30-changes-to-osu-sr-and-pp
- Fixed danser crashing during database refresh while trying to load beatmaps that are broken in a specific way
- On Windows, danser first looks into registry to find osu! installation path (if multiple osu! instances are installed the one that handles files is selected) before defaulting to
%localappdata%
Danser
UI
Gameplay
- Fixed DT ScoreV2 plays having wrong score
0.8.0
IMPORTANT
-
danser switched to GPLv3 license. Thanks to that, from now on, danser will be released with built-in ffmpeg (danser-optimized build that takes ~20MB instead of 100MB+). Now you will be able to render videos (or play background videos) out of the box ;)
-
Renamed danser to danser-cli and danser-launcher to danser. If it's important you can rename cli back, but launcher won't work properly then.
-
Settings from this version are not compatible with 0.7.1 downwards. Please make a backup if you plan to rollback. More info below
General
- Fixed broken rendering on AMD/ATI TeraScale architectures (eg. Radeon HD 5xxx/6xxx). If you updated your graphics drivers and it's still broken, please let me know.
Danser
Record
- Fixed dark colors being green-tinted in recordings (#268)
UI
- Added Infinite results screen in play mode
- Fixed strain graph being funky on %Centre% alignments (#261)
- BREAKING: Switched to per stat color (Color300, Color100 etc) instead of confusing to use list in hit counter. Old values are migrated automatically
Input
- Added support to play with other keys than
A-Z/0-9
- Added an option to change screenshot key (default F2)
Objects
- Make slider tick fade-in be closer to stable's behavior
- Slider's Snake In/Out can be changed in real time
- Fixed Fade/Duration Multipliers affecting slider ticks even if Snake In is disabled
- Added -24ms offset for beatmaps with version lower than 5
- Fixed old maps having wrong number of slider ticks
Gameplay
- Added fail support. Danser now will stop rendering if player fails. Caveat: if
-end
(End time in launcher) option is set before fail, fail can still be heard ifGameplay.ShowResultsScreen
is set to true
Cursor dance
- Fixed danser missing on "hidden" circles (0 length sliders)
- Added an option to offset spinner's centre, shouldn't be used in "Danser with UI" mode.
Background
- Added
MoveStoryboardWithPlayfield
option, ignored ifOsuShift
is set to true - Fixed video having wrong offset on 3079907 map (#278)
- Fixed storyboard of 1985210 map eating ~16GB of RAM. Can reduce performance slightly on other heavy storyboards
- Fixed old storyboards with missing volume info in audio samples crashing danser
- Fixed Parallax Amount affecting scale even if parallax is disabled (#281)
Skinning
- Fixed boolean values not working properly in skin.ini (should now match c language specs)
Misc
- Added better FPS limiter
FPSCap
can be now edited liveFPSCap
lower than zero now meansabs(FPSCap)*monitorRefreshRate
Launcher
- Launcher window now adapts to Windows screen scaling
- Fixed record/screenshot name box allowing forbidden characters (#263)
- Reduced VRAM usage a bit
Replays:
- Select replay button now remembers last used directory
- Fixed replays from other modes not being ignored on "Load latest replay at startup"
- Fixed not properly set "Replays" directory crashing launcher
- Properly announce that replay is from another mode
Knockouts:
- Knockout "Select replays" button saves last used directory between launcher runs
- Added support of dropping multiple replays at launcher window/executable, thus turning on knockout mode
- Added enable/disable all button in knockout manager
- Added shift+select in knockout manager
- Added indicator how many replays are selected
Config manager/editor:
- Added live edit of some settings while danser is running in Watch mode. It can be summoned by clicking "Edit" in the launcher or with ctrl+o in danser itself, will unminimize the launcher and open the config editor. Some not-locked options may still require restart for now
- Added config save/clone confirmation with enter key
- Added a launcher option to enable/disable JSON Paths in config editor (disabled by default, reduces noise)
- Added "(!)" before option's label if that option has a tooltip
- Added tooltips to some options
- Fixed config editor's layout breaking when there are conditionally hidden options
- Added key changer to input options
- Added some user-friendliness to
Custom FPS limit
And probably something I forgot about.
0.7.1
0.7.0
:CatJam:
WARNING: This release may not be entirely stable. Please report any issues immediately.
WARNING: Settings and database from this version are not compatible with 0.6.9 downwards. Please make a backup if you plan to rollback.
Biggest new feature
Official launcher (under danser-launcher executable). No more info on this, just try it yourself ;)
Command
- Launching danser with
-settings=credentials
or-settings=launcher
will crash as those names are reserved - Added
-preciseprogress
flag - Added
-knockout2
flag
Info on those flags can be read in README
Recording
- Improved rendering speed on slow/mobile CPUs (3x improvement on Intel i5 8250U, from 0.36 to 1.1x at 1080p and QuickSync)
- New (incompatible) per encoder (video and audio) settings. Remember/backup your previous settings before using 0.7.0
- Forcing nv12 on QuickSync encoders as its improving speed
- Fixed combine process crashing if ffmpeg was in subfolder (by @jamiegyoung)
- Added FLAC support to mp4 container
- Added ffmpeg error to crash message
UI
- Fixed Hp Bar not sliding out on breaks
Audio
- Fixed 0 byte samples being rejected
- Fixed audio getting randomly delayed on some Windows machines
Storyboards
- Always load storyboard samples (similar behavior to osu)
- Don't play expired samples
- Fixed videos/samples not being loaded from subdirectories
- Don't use separate thread if only samples were loaded, reducing CPU usage
- Fixed 1 pixel elements being half-transparent
Knockout/Replays
- Fixed "bubbles" getting very big if multiple players died at similar time
- Added
Knockout.MinPlayers
setting (by @PercyDan54) - Fixed SD/PF replays crashing danser randomly after fail point
Settings
- Moved
api.txt
tocredentials.json
. Migration happens automatically - Added
Playfield.Background.Parallax.Enabled
option - Added
Playfield.Logo.Enabled
option
Misc
- All danser crashes should be now recorded in
danser.log
And probably something I forgot about.
Big thanks to beta testers of the launcher ❤
Happy dansing!!!
0.6.9
NICE ( ͡° ͜ʖ ͡°)
Command:
- Added
-offset
flag. Acts like osu!'s local offset. It's applied to recorded videos as well (unlikeAudio.Offset
). NOTE: it's inverted compared to stable.
Recording/Background videos:
- FFmpeg can now be put in
{danser dir}/ffmpeg/*
to not bloat the main directory - Fixed ffmpeg being loaded from working directory if danser is started not from inside danser's directory
- FFmpeg errors are more descriptive now
UI:
- Combo Counter now looks even closer to stable
- Ability to make PP, UR, Accuracy, Score and Combo static (not roll/bump)
- Accuracy now starts at 100%
- Configurable fade time of hit/aim errors
- Configurable scale of positional misses on hit error bar
- Added an option to scale hit error bar with speed
- Added an option to show Slider Breaks in the hit counter
- Fixed result screen not appearing if DT mod is used in preview/play modes
- Added an option to add HUD underlay (refer to wiki)
- PP/UR/hit counter font is now changeable (refer to wiki)
Storyboards:
- Fixed some storyboard assets not loading due to leading/trailing spaces
Beatmaps:
- Longer maps should take a bit less to load
- Negative AR should take waaaaay less to load
- Approach circles are forcibly disabled on AR < -88
- Various hitsounding fixes (fixed 2883509 beatmap crashing danser)
Import:
- Beatmap import spam is turned off by default, it may speed up loading of large libraries on slower PCs
- Even with
-nodbcheck
enabled danser will load newly added beatmap sets
Knockout:
- Added an option to sort knockout plays by Accuracy
- Score, Accuracy and PP in knockout overlay now use standardized rolling counter
- Players won't get knocked out if they lose combo before
GraceEndTime
(applies only to mode 0).
Settings:
- Changed default cursor size to 12
- Changed default trail density to 1
- Added
Top
andBottom
as aliases forTopCentre
andBottomCentre
alignment values in settings EZHT
is removed from defaultExcludedMods
Misc:
-noupdatecheck
is on by default for Linux packages- Reduced
assets.dpak
size by 2MB (by @vladaad) - Switched to go 1.18
- Added Discord RPC to logs (should be clear now if danser is stuck connecting to RPC and not during GLFW initialization)
And probably something I forgot about.