diff --git a/CHANGELOG.md b/CHANGELOG.md index b3c155f2f..b6759d354 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,43 @@ this find-and-replace regex (VSCode flavor): - Replace: [@$1](https://github.com/$1) --> +# Prerelease + +New features: +- Song manager now lets you sort songs by least recently played first. (#96) +- Random Trainer now lets you shift or mirror the lane order (#89) +- New launcher option (Music Select tab) to entirely skip the decide screen (#88) +- Can now configure the lane cover, lift, and hidden in-game (misc settings) (#102) +- Added basic support for sending scores to Discord via webhooks (#97) +- In-game LR2IR leaderboard viewing (#109) +- Automatically normalizing volume per-chart (#105) + +Behavior changes: +- Changed the default analog scratch threshold from 100 to 50 (9b3a17b6f0d0a82b1c878a561f039e94cea76b36) +- ImGui notifications (#74) +- Playing courses with CONSTANT no longer grant assist clear (#86) +- The spinning turntable emblem now spins nicer (#94) +- The sound of quickly scrolling through the music select is now less loud (#93) +- Improved audio when changing between scenes (#92) +- Music preview generated with the preview generator tool will now have lower priority (#91) +- Skins with large bitmap fonts will now load faster (#106) + +Bug fixes: +- Fixed a crash when launching borderless without a set monitor (31f81b8cf87094cda152387cca74a9de5002ee4d) +- Fixed several issues with loading osu files ([parser #2](https://github.com/seraxis/jbms-parser/pull/2)) +- On Linux, fixed opening chart folders with F3, the broken new version download link, + and the launcher becoming non-functional after starting the game (#98) + +Known issues: +- [Linux] Certain skin fonts may only load partially due to incorrect letter case + in their filenames. Can be manually resolved by renaming the offending files. +- [Linux] When loading configuration files created on Windows, skin settings will fail + to transfer. Fix by replacing backslashes with forward slashes in the skin paths in + saved skin settings in `config.json` and `config_player.json` in the player folder. +- [Linux + Nvidia] The game may crash when launching. Fix by launching the game with + gamescope: `gamescope -w 2560 -h 1440 -f -r 120.0 lr2oraja-endlessdream` + + # 0.3.0 ## Requires Java 17 to run correctly. [Download here](https://bell-sw.com/pages/downloads/#jdk-17-lts) (Ensure `Package: Full JDK`) diff --git a/core/src/bms/player/beatoraja/PerformanceMetrics.java b/core/src/bms/player/beatoraja/PerformanceMetrics.java index a87e30b3e..26e68a20e 100644 --- a/core/src/bms/player/beatoraja/PerformanceMetrics.java +++ b/core/src/bms/player/beatoraja/PerformanceMetrics.java @@ -25,7 +25,7 @@ public class PerformanceMetrics { public record EventResult(String name, int id, int parent, long startTime, long duration, String thread) {} - public List eventResults = + public final List eventResults = Collections.synchronizedList(new ArrayList()); public synchronized void submitWatchResult(String name, long time, long duration) { @@ -76,10 +76,8 @@ public EventBlock(String name) { public void close() { var endTime = System.nanoTime(); get().activeBlocks.get().pop(); - synchronized (eventResults) { - eventResults.add(new EventResult(name, id, parent, startTime, (endTime - startTime), - Thread.currentThread().getName())); - } + eventResults.add(new EventResult(name, id, parent, startTime, (endTime - startTime), + Thread.currentThread().getName())); } } diff --git a/core/src/bms/player/beatoraja/config/KeyConfiguration.java b/core/src/bms/player/beatoraja/config/KeyConfiguration.java index c954dbca2..7faaeae48 100644 --- a/core/src/bms/player/beatoraja/config/KeyConfiguration.java +++ b/core/src/bms/player/beatoraja/config/KeyConfiguration.java @@ -72,7 +72,7 @@ public class KeyConfiguration extends MainState { -2 } }; private static final int playerOffset = 100; - private static final String[] SELECTKEY = { "2dx sp", "popn", "2dx dp" }; + private static final String[] SELECTKEY = { "7 KEYS", "9 KEYS", "14 KEYS" }; private int cursorpos = 0; private int scrollpos = 0; @@ -266,11 +266,11 @@ public void render() { titlefont.setColor(Color.CYAN); titlefont.draw(sprite, "<-- " + MODE[mode] + " -->", 80 * scaleX, 650 * scaleY); titlefont.setColor(Color.YELLOW); - titlefont.draw(sprite, "Key Board", 180 * scaleX, 620 * scaleY); + titlefont.draw(sprite, "Keyboard", 180 * scaleX, 620 * scaleY); titlefont.draw(sprite, "Controller1", 330 * scaleX, 620 * scaleY); titlefont.draw(sprite, "MIDI", 630 * scaleX, 620 * scaleY); titlefont.setColor(Color.ORANGE); - titlefont.draw(sprite, "Music Select (press [1] to change) : ", 750 * scaleX, 620 * scaleY); + titlefont.draw(sprite, "Music Select Input (press [1] to change) : ", 750 * scaleX, 620 * scaleY); titlefont.draw(sprite, SELECTKEY[config.getMusicselectinput()], 780 * scaleX, 590 * scaleY); titlefont.draw(sprite, "Controller Device 1 (press [2] to change) : ", 750 * scaleX, 500 * scaleY); diff --git a/core/src/bms/player/beatoraja/launcher/VideoConfigurationView.fxml b/core/src/bms/player/beatoraja/launcher/VideoConfigurationView.fxml index cda1a4a87..03fb5590e 100644 --- a/core/src/bms/player/beatoraja/launcher/VideoConfigurationView.fxml +++ b/core/src/bms/player/beatoraja/launcher/VideoConfigurationView.fxml @@ -22,20 +22,23 @@