Giter Club home page Giter Club logo

polyrhythmmania's Introduction

Polyrhythm Mania

A game that faithfully recreates the Polyrhythm minigame from Rhythm Tengoku (リズム天国), with a built-in level editor and side modes.

Polyrhythm Mania thumbnail Polyrhythm: Assemble side mode thumbnail

Downloads GitHub license Donate to the project maintainer

Original Soundtrack on YouTube by GENERIC

Features

  • Full re-creation of the Polyrhythm minigame from Rhythm Tengoku, and more!
  • A full Story Mode with over 40 levels
  • Sort and organize your custom levels using the Library feature
  • Create custom levels with a built-in and intuitive level editor
  • Level effects such as changing the colour palette, adding text boxes, putting Skill Stars, and more
  • Switch between classic GBA, modern HD, and arcade textures, or add your own custom texture pack
  • Practice modes to improve your Polyrhythm skills with levels from the original GBA game
  • Endless Mode keeps you on your toes with never-ending procedurally generated patterns
  • Daily Challenge mode which has a series of patterns not seen in regular Endless Mode, with online leaderboards
  • Extra side modes like Polyrhythm: Dunk, Polyrhythm: Assemble, and Built to Scale: Solitaire add more Polyrhythm fun

Check out the v1.2 update trailer on YouTube!
Check out the announcement trailer on YouTube!
Check out the August 2021 features trailer!

System requirements to play

Officially supported operating systems: Windows 7 or newer, Linux (x86 and ARM).

macOS is not officially supported (i.e. we don't accept bug reports from macOS) but you can attempt to run it per issue #29.

System Specifications: Similar requirements as Minecraft: Java Edition are used, since the same underlying graphics library (GLFW with OpenGL 4.4) is used.

Minimum requirements

  • CPU: Intel Core i3-3210 3.2 GHz / AMD A8-7600 APU 3.1 GHz or equivalent
  • RAM: 4GB
  • GPU (Integrated): Intel HD Graphics 4000 (Ivy Bridge) or AMD Radeon R5 series (Kaveri line) with OpenGL 4.4
  • GPU (Discrete): NVIDIA GeForce 400 Series or AMD Radeon HD 7000 series with OpenGL 4.4
  • HDD: At least 1GB for game and levels
  • OS: Windows 7 and up, Linux 64-bit distributions from 2018 onwards
  • Display: 1280x720 resolution

Recommended requirements

  • CPU: Intel Core i5-4690 3.5GHz / AMD A10-7800 APU 3.5 GHz or equivalent
  • RAM: 8GB
  • GPU: NVIDIA GeForce 700 Series or AMD Radeon Rx 200 Series (excluding integrated chipsets) with OpenGL 4.5
  • HDD: 2GB (SSD is recommended)
  • OS: Windows 10 and newer (64-bit), Linux 64-bit distributions from 2020 onwards (e.g. Ubuntu 20.04)
  • Display: 1920x1080 resolution

Installation instructions

These instructions are the same if you're downloading the game for the first time or upgrading to a new version. Make sure that you meet the system requirements above.

Windows (64-bit only, no Java installation required):

  1. Navigate to the latest release here in a new tab or window.
  2. Download the correct version of the game in the Assets section named PolyrhythmMania_VERSION_win64.zip, where VERSION is the release version name. Note the "win64" in the file name. Don't download the "Source code".
  3. Find the downloaded zip file in File Explorer. Extract the zip file: right click the downloaded zip file, click "Extract All...", and extract the contents to a folder.
  4. Open the newly extracted folder and go into the PolyrhythmMania_win64 folder.
  5. Double-click the LaunchPolyrhythmMania.exe executable to start the game! (You don't need the Java Runtime Environment already installed, the game comes with a copy.)
  6. If Windows Defender says "Windows Defender SmartScreen prevented an unrecognized app from starting", you can safely ignore it by clicking "More info" and then "Run anyway".

Other platforms (or for advanced users who already have Java installed)

  1. (Pre-requisite) Ensure you already have the Java Runtime Environment (JRE 17 recommended, JRE 11 minimum) installed and it is accessible in your path as the java command.
  2. Navigate to the latest release here in a new tab or window.
  3. Download the correct version of the game in the Assets section named PolyrhythmMania_VERSION.zip, where VERSION is the release version name. Don't download the "Source code".
  4. Extract the zip file to a known location.
  5. Open the newly extracted directory and go into the PolyrhythmMania_platform_agnostic directory.
  6. Run the appropriate launch script: On Windows, double click play_windows.bat. On Linux, run the play_linux.sh file (you may have to chmod +x play_linux.sh first).
  7. If you prefer not to use a launch script, you can run java -jar bin/PolyrhythmMania.jar with your preferred settings.

Compilation instructions

These instructions are for people interested in editing the source code of the game.

  1. Ensure JDK 11 or newer (JDK 17 recommended) is installed.
  2. chmod +x gradlew
  3. ./gradlew :desktop:run

Other information

Rhythm Heaven is the intellectual property of Nintendo. This program is NOT endorsed nor sponsored in any way by Nintendo. All used properties of Nintendo (such as names, audio, graphics, etc.) in this software are not intended to maliciously infringe trademark rights. All other trademarks and assets are property of their respective owners. This is a community project and this is available for others to use according to the GPL-3.0 license, without charge.

polyrhythmmania's People

Contributors

chrislo27 avatar rcano avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

polyrhythmmania's Issues

[Bug]: "Daredevil" achievement unobtainable in v1.2.0

Version

v1.2.0

Operating System

Windows 10

Problem Description

Some of Polyrhythm Mania's achievements aren't well-tested, here is a list of "unobtainable" achievements so far:

  • Daredevil (get 100+ in endless mode with daredevil mode on)
  • Daily Double (get a 2 day daily streak)
  • (possibly, not sure) Daily Dose (get a 7 day daily streak)
  • Polyrhythm Maniac (all achievements including the "unobtainable" ones are required)
    Please fix them ASAP, gotta get those achievements!

Steps to Reproduce Problem

  1. Open up Polyrhythm Mania v1.2.0
  2. Try and do these achievements listed above, and you can see that the achievements don't appear on the screen.
  3. Go to the achievements tab only to see that they're not obtained yet.

Relevant log output

No response

(Optional) Other useful information

No response

[Bug]: Performance issues

Version

v2.02

Operating System

Windows 11

Problem Description

Performance ingame is horrendous compared to v1.2.1, I used to play that version all the time and there were absolutely no performance issues, now it runs at around 13-20fps with slowdown making it almost impossible to play the game, not sure what changed but I also made sure that the game was using the correct graphics processor and it still won't run correctly (I tried it with intel but that wasn't good either), not sure what's up with the game.

Steps to Reproduce Problem

Boot up the game, go into library (or any other mode) then when you enter a level, it runs terribly. menus are fine

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v2.0.2-20230512a
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 11.0.15
    Java Vendor: Eclipse Adoptium
    Kotlin Version: 1.8.10
    OS Name: Windows 11
    OS Version: 10.0
    OS Arch: amd64
    SystemUtils.OSType: WINDOWS
    JVM memory available: 4151296 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: NVIDIA Corporation
    GL_RENDERER: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2
    GL_VERSION: 4.6.0 NVIDIA 535.98



00:00:01.842: [INFO][main] Initialized all 9 fonts in 0.0583 ms
00:00:02.055: [INFO][main] Using OpenAL sound system
00:00:02.330: [INFO][main] Setting recommended legacy audio JavaSound mixer to mixer from settings: Primary Sound Driver
00:00:02.540: [DEBUG][main] [GlobalStats] Statistics loaded
00:00:02.565: [DEBUG][main] [Achievements] Achievements loaded
00:00:02.710: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen
00:00:03.208: [DEBUG][main] DEBUG MONITORS: Primary=Generic PnP Monitor, current=Generic PnP Monitor, allMonitors=Generic PnP Monitor
00:00:03.898: [INFO][main] [DiscordRichPresence] Loaded successfully.
00:00:06.284: [INFO][GitHub version checker] Got version from server: v2.0.2
00:00:07.447: [INFO][main] Supported JavaSound mixer: Primary Sound Driver
00:00:07.448: [INFO][main] Supported JavaSound mixer: Speakers (FxSound Audio Enhancer)
00:00:07.449: [INFO][main] Supported JavaSound mixer: Speakers (Realtek(R) Audio)
00:00:07.638: [DEBUG][Main Menu music decoder] Starting main menu music decode
00:00:08.189: [DEBUG][main] [FrameBufferManager: WorldRenderer] Re-created 3 framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:00:08.381: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen
00:00:08.590: [DEBUG][main] [FrameBufferManager: Main Menu tileflip] Re-created 2 framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:00:08.606: [DEBUG][main] [FrameBufferManager: WorldRenderer] Re-created 3 framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:00:09.091: [DEBUG][main] [GlobalStats] Statistics saved
00:00:09.095: [DEBUG][main] [Achievements] Achievements saved
00:00:09.096: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:00:09.110: [ERROR][main] [DiscordRichPresence] Handle reply error Error("unknown variant `unknown`, expected one of `offline`, `online`, `idle`, `dnd`", line: 0, column: 0)
00:00:12.155: [INFO][Library Search] Starting Library search in D:\Games\PolyRhythm mania\Levels
00:00:12.160: [INFO][Library Search] [Library Search] Possible files found: 31
00:00:12.562: [DEBUG][Main Menu music decoder] Finished main menu music decode
00:00:12.736: [INFO][Library Search] [Library Search] Levels read: 31 (took 577.3784 ms)
00:00:19.588: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:00:20.302: [DEBUG][main] [FrameBufferManager: WorldRenderer] Re-created 3 framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:00:20.839: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.play.regular.EnginePlayScreenBase
00:01:29.534: [DEBUG][main] Changed screens from polyrhythmmania.screen.play.regular.EnginePlayScreenBase to paintbox.transition.TransitionScreen
00:01:29.890: [DEBUG][main] [FrameBufferManager: WorldRenderer] Disposed of 3 framebuffers
00:01:30.033: [DEBUG][main] [GlobalStats] Statistics saved
00:01:30.034: [DEBUG][main] [Achievements] Achievements saved
00:01:30.035: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:01:33.912: [INFO][Library Search] Starting Library search in D:\Games\PolyRhythm mania\Levels
00:01:33.914: [INFO][Library Search] [Library Search] Possible files found: 31
00:01:34.024: [INFO][Library Search] [Library Search] Levels read: 31 (took 110.26009 ms)
00:01:38.186: [WARN][Thread-9] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack
00:01:48.995: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:01:49.032: [DEBUG][main] [FrameBufferManager: WorldRenderer] Re-created 3 framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:01:49.353: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.play.regular.EnginePlayScreenBase
00:02:33.706: [DEBUG][main] Changed screens from polyrhythmmania.screen.play.regular.EnginePlayScreenBase to paintbox.transition.TransitionScreen
00:02:34.085: [DEBUG][main] [FrameBufferManager: WorldRenderer] Disposed of 3 framebuffers
00:02:34.212: [DEBUG][main] [GlobalStats] Statistics saved
00:02:34.214: [DEBUG][main] [Achievements] Achievements saved
00:02:34.214: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:02:50.067: [INFO][main] Settings persisted
00:02:52.589: [DEBUG][StemLoader-0] Starting story music handler stem decode for story/music/title/full1.ogg
00:02:52.595: [DEBUG][StemLoader-1] Starting story music handler stem decode for story/music/title/perc1.ogg
00:02:52.604: [DEBUG][StemLoader-2] Starting story music handler stem decode for story/music/desktop/harm.ogg
00:02:52.615: [DEBUG][StemLoader-3] Starting story music handler stem decode for story/music/desktop/main.ogg
00:02:52.640: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:02:53.179: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.storymode.screen.StoryAssetsLoadingScreen
00:02:55.623: [DEBUG][StemLoader-0] Finished story music handler stem decode for story/music/title/full1.ogg - took 3027.1912 ms
00:02:55.623: [DEBUG][StemLoader-0] Starting story music handler stem decode for story/music/desktop/perc.ogg
00:02:55.768: [DEBUG][StemLoader-1] Finished story music handler stem decode for story/music/title/perc1.ogg - took 3171.5894 ms
00:02:55.855: [DEBUG][StemLoader-3] Finished story music handler stem decode for story/music/desktop/main.ogg - took 3238.248 ms
00:02:55.913: [DEBUG][StemLoader-2] Finished story music handler stem decode for story/music/desktop/harm.ogg - took 3306.94 ms
00:02:56.394: [INFO][main] No story mode savefile 1, treating as brand new
00:02:56.397: [INFO][main] No story mode savefile 2, treating as brand new
00:02:56.397: [INFO][main] No story mode savefile 3, treating as brand new
00:02:56.545: [DEBUG][main] Changed screens from polyrhythmmania.storymode.screen.StoryAssetsLoadingScreen to paintbox.transition.TransitionScreen
00:02:56.811: [DEBUG][StemLoader-0] Finished story music handler stem decode for story/music/desktop/perc.ogg - took 1186.5973 ms
00:02:57.160: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.storymode.screen.StoryTitleScreen
00:03:00.291: [DEBUG][main] Changed screens from polyrhythmmania.storymode.screen.StoryTitleScreen to paintbox.transition.TransitionScreen
00:03:04.130: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.storymode.screen.StoryDesktopScreen
00:03:14.658: [INFO][main] Starting dispose call
00:03:14.673: [INFO][main] Dispose call finished, goodbye!
00:03:14.678: [DEBUG][main] [GlobalStats] Statistics saved
00:03:14.679: [DEBUG][main] [Achievements] Achievements saved
00:03:15.426: [DEBUG][main] [FrameBufferManager: Main Menu tileflip] Disposed of 2 framebuffers
00:03:15.439: [DEBUG][main] [FrameBufferManager: WorldRenderer] Disposed of 3 framebuffers
java.nio.channels.ClosedChannelException
	at java.base/sun.nio.ch.FileChannelImpl.ensureOpen(Unknown Source)
	at java.base/sun.nio.ch.FileChannelImpl.position(Unknown Source)
	at java.base/sun.nio.ch.FileChannelImpl.position(Unknown Source)
	at polyrhythmmania.soundsystem.sample.MusicSample$Buffer.populate(MusicSample.kt:258)
	at polyrhythmmania.soundsystem.sample.MusicSample.getFrame(MusicSample.kt:81)
	at polyrhythmmania.soundsystem.sample.MusicSample.getFrameLinear(MusicSample.kt:119)
	at polyrhythmmania.soundsystem.sample.MusicSamplePlayer.calculateBuffer(MusicSamplePlayer.kt:88)
	at net.beadsproject.beads.core.UGen.update(UGen.java:459)
	at net.beadsproject.beads.core.UGen.pullInputs(UGen.java:402)
	at net.beadsproject.beads.core.UGen.update(UGen.java:455)
	at net.beadsproject.beads.core.UGen.pullInputs(UGen.java:425)
	at net.beadsproject.beads.core.UGen.update(UGen.java:455)
	at net.beadsproject.beads.ugens.CrossFade.calculateBuffer(CrossFade.java:103)
	at net.beadsproject.beads.core.UGen.update(UGen.java:459)
	at net.beadsproject.beads.core.UGen.pullInputs(UGen.java:402)
	at net.beadsproject.beads.core.UGen.update(UGen.java:455)
	at net.beadsproject.beads.core.AudioContext.update(AudioContext.java:231)
	at net.beadsproject.beads.core.AudioIO.update(AudioIO.java:61)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO.prepareLineBuffer(OpenALAudioIO.kt:106)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO.runRealTime$primeBuffer(OpenALAudioIO.kt:89)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO.runRealTime(OpenALAudioIO.kt:94)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO.access$runRealTime(OpenALAudioIO.kt:32)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO$start$1.invoke(OpenALAudioIO.kt:137)
	at polyrhythmmania.soundsystem.beads.OpenALAudioIO$start$1.invoke(OpenALAudioIO.kt:136)
	at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)

(Optional) Other useful information

here's a 1.2.1 log, for comparison

==============
AUTO-GENERATED

Program Specifications:
Launch arguments: []
Version: v1.2.1-20220502a
Application type: Desktop
LazySound loading enabled: true

System Specifications:
Java Version: 11.0.15
Java Vendor: Eclipse Adoptium
Kotlin Version: 1.6.21
OS Name: Windows 11
OS Version: 10.0
OS Arch: amd64
SystemUtils.OSType: WINDOWS
JVM memory available: 4151296 KiB

Graphics Specifications:
Resolution: 1280x720
Fullscreen: false
GL_VENDOR: Intel
GL_RENDERER: Intel(R) UHD Graphics
GL_VERSION: 4.6.0 - Build 27.20.100.8280

00:00:01.226: [INFO][main] Initialized all 9 fonts in 0.0409 ms
00:00:01.329: [INFO][main] Using OpenAL sound system
00:00:01.454: [INFO][main] Setting recommended legacy audio JavaSound mixer to mixer from settings: Primary Sound Driver
00:00:01.538: [DEBUG][main] [GlobalStats] Statistics loaded
00:00:01.562: [DEBUG][main] [Achievements] Achievements loaded
00:00:01.612: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen
00:00:02.088: [DEBUG][main] DEBUG MONITORS: Primary=Generic PnP Monitor, current=Generic PnP Monitor, allMonitors=Generic PnP Monitor
00:00:02.348: [INFO][main] [DiscordRichPresence] Loaded successfully.
00:00:03.672: [INFO][GitHub version checker] Got version from server: v1.2.1
00:00:04.082: [INFO][main] Supported JavaSound mixer: Primary Sound Driver
00:00:04.083: [INFO][main] Supported JavaSound mixer: Speakers (Realtek(R) Audio)
00:00:04.195: [DEBUG][Main Menu music decoder] Starting main menu music decode
00:00:04.211: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:00:04.507: [DEBUG][OpenALAudioIO] Did AL_DIRECT_CHANNELS_SOFT fix for OpenALAudioDevice. This will be removed with libGDX 1.10.1
00:00:04.547: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen
00:00:04.971: [DEBUG][main] [GlobalStats] Statistics saved
00:00:04.973: [DEBUG][main] [Achievements] Achievements saved
00:00:04.973: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:00:05.161: [ERROR][main] [[DiscordRichPresence]] Handle reply error Error("unknown variant unknown, expected one of offline, online, idle, dnd", line: 0, column: 0)
00:00:06.358: [DEBUG][Main Menu music decoder] Finished main menu music decode
00:00:12.293: [INFO][Library Search] Starting Library search in D:\Games\PolyRhythm mania\Levels
00:00:12.295: [INFO][Library Search] [Library Search] Possible files found: 31
00:00:13.128: [INFO][Library Search] [Library Search] Levels read: 31 (took 833.23126 ms)
00:00:19.963: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:00:20.324: [DEBUG][OpenALAudioIO] Did AL_DIRECT_CHANNELS_SOFT fix for OpenALAudioDevice. This will be removed with libGDX 1.10.1
00:00:20.775: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.play.PlayScreen
00:00:31.771: [INFO][main] Starting dispose call
00:00:31.777: [INFO][main] Dispose call finished, goodbye!
00:00:31.783: [DEBUG][main] [GlobalStats] Statistics saved
00:00:31.784: [DEBUG][main] [Achievements] Achievements saved

Option to force GBA or HD textures

Discussed in #32

Originally posted by goldenyoshi22 September 23, 2021
An option (maybe in "VIDEO" tab) to either force the GBA or HD texture, or don't force a texture. (Don't force by default)

Justification

The reason for this is because there are many slow computers like mine, and it lags with the HD texture.

Potential Issues

If there are maps that use custom textures, it may look weird. You could maybe have an option to let custom textures override or not.

I am typing this on mobile, so I can't make an image mockup. If I could, I would make a checkmark with the text "Force texture". When it's on, an arrow switch appears with the options, "GBA" and "HD".

The option will be added to a new Graphics settings menu with a dropdown to either not force any texture, to force GBA textures, or to force HD textures. There will also be a checkbox to enable/disable custom textures.

[Bug]: Error while trying to load a level in the editor or when I try to play it.

Version

v1.0.2

Operating System

Windows 10

Problem Description

Hello, I'd like to report a bug that happened to me. I was editing a level in my laptop and then put it in sleep mode with the editor still open, and when I opened back my laptop after a while I noticed that the level stopped autosaving like it normally does. At first, I did not pay to much attention to it since I thought I could just save manually, which I did, and the editor even told me that the saves were succesful. But, when I finished the level and seved once more and tried to play it through the main menu but an error message appeared saying the the level could not be loaded, and the same message poped up when I tried to load the level in the editor, which you can see the following screenshots I took. I don't know exactly what caused this, but I think it's related to the fact that I put my laptop in sleep mode with the editor open. So I was hoping that there was a way to make my level to load properly, that would be great, thanks.

edit error
load error

Steps to Reproduce Problem

  1. Create a new polyrhythm mania map.
  2. Put some stuff in it .
  3. Put your PC on sleep mode for like an hour.
  4. Open your PC and save the level.
  5. Return to main menu and try to play it or open it again through the editor.

*As I said, I don't what caused this exactly, so this is just an assumption.

Relevant log output

No response

(Optional) Other useful information

In any case, here's also the link to a google drive folder in which there's the level I can't get to load, it is called "WISH".
Link: https://drive.google.com/drive/folders/1GN9E2UTAmP20fP-KWcVrOTRpy90DNH4w?usp=sharing

[Bug]: Audio Mixer setting does not effect menu sfx

Version

v1.0.0

Operating System

Windows 10

Problem Description

Title is pretty self explanatory, changing the audio mixer setting has no effect on menu sounds.
This includes mousing over menu options, entering menus, exiting menus, and also pausing the game (Pause menu navigation sfx are also effected)
Game sounds seem to be unaffected (Not including pausing)

Steps to Reproduce Problem

Requirements: Multiple audio mixers are required

  1. Change the audio mixer setting to a mixer setting that either isn't used or plays sound at a different location
  2. Listen as some sounds and music play through one source while the menu sounds play through another

Relevant log output

No response

(Optional) Other useful information

No response

[Bug]: GLFW_VERSION_UNAVAILABLE error on Manjaro with NVIDIA drivers

Version

v1.2.1-20220502a

Operating System

Linux

Problem Description

Game will not launch on my current hardware configuration, giving "GLFW_VERSION_UNAVAILABLE" errors.

Graphics:
  Device-1: NVIDIA GA106 [GeForce RTX 3060] driver: nvidia v: 510.60.02
  Device-2: Logitech StreamCam type: USB
    driver: hid-generic,snd-usb-audio,usbhid,uvcvideo
  Display: x11 server: X.Org v: 21.1.3 driver: X: loaded: nvidia
    gpu: nvidia resolution: 1: 1680x1050~60Hz 2: 1050x1680~60Hz 3: 1920x1080
  OpenGL: renderer: N/A v: N/A

Steps to Reproduce Problem

  1. Launch the game using openjdk 18, using the "java -java bin/polyrhythmmania.jar"

Relevant log output

[LWJGL] GLFW_VERSION_UNAVAILABLE error
        Description : GLX: Failed to create context: BadValue (integer parameter out of range for operation)
        Stacktrace  :
                org.lwjgl.glfw.GLFW.nglfwCreateWindow(GLFW.java:1714)
                org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1897)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:469)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
                paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:40)
                paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:40)
                polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:85)
Exception in thread "main" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't create window
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:472)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
        at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:40)
        at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:40)
        at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:85)
AL lib: (EE) alc_cleanup: 1 device not closed

(Optional) Other useful information

No response

[Bug]: Crash when starting

Version

v1.0.1

Operating System

Windows 10

Problem Description

I still don't know at all how did this happened, but when I open the game in the win64 and non-win64 it simply crash.

Steps to Reproduce Problem

  1. Open the game
  2. Crash (?)

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.0.1-20210829a
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 11.0.11
    Java Vendor: AdoptOpenJDK
    Kotlin Version: 1.5.21
    OS Name: Windows 10
    OS Version: 10.0
    OS Arch: amd64
    JVM memory available: 2084864 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: ATI Technologies Inc.
    GL_RENDERER: Radeon RX 5500 XT
    GL_VERSION: 4.6.13596 Compatibility Profile Context 20.10.35.02 27.20.1034.6



00:00:01.085: [INFO][main] Initialized all 8 fonts in 0.0275 ms00:00:01.085: [INFO][main] Initialized all 8 fonts in 0.0275 ms

00:00:01.270: [INFO][main] No saved mixer string, using Controlador primario de sonido00:00:01.270: [INFO][main] No saved mixer string, using Controlador primario de sonido

00:00:01.280: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen00:00:01.280: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen

00:00:01.949: [INFO][GitHub version checker] Got version from server: v1.0.100:00:01.949: [INFO][GitHub version checker] Got version from server: v1.0.1

java.lang.UnsatisfiedLinkError: C:\Users\Admin\AppData\Local\Temp\jna--1997254497\jna13712113709908747215.dll: Acceso denegadojava.lang.UnsatisfiedLinkError: C:\Users\Admin\AppData\Local\Temp\jna--1997254497\jna13712113709908747215.dll: Acceso denegado

	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)

	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)

	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)

	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)

	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)

	at java.base/java.lang.Runtime.load0(Unknown Source)	at java.base/java.lang.Runtime.load0(Unknown Source)

	at java.base/java.lang.System.load(Unknown Source)	at java.base/java.lang.System.load(Unknown Source)

	at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:947)	at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:947)

	at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)	at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)

	at com.sun.jna.Native.<clinit>(Native.java:190)	at com.sun.jna.Native.<clinit>(Native.java:190)

	at club.minnced.discord.rpc.DiscordRPC.<clinit>(DiscordRPC.java:42)	at club.minnced.discord.rpc.DiscordRPC.<clinit>(DiscordRPC.java:42)

	at polyrhythmmania.discordrpc.DiscordHelper.getLib(DiscordHelper.kt:23)	at polyrhythmmania.discordrpc.DiscordHelper.getLib(DiscordHelper.kt:23)

	at polyrhythmmania.discordrpc.DiscordHelper.init(DiscordHelper.kt:56)	at polyrhythmmania.discordrpc.DiscordHelper.init(DiscordHelper.kt:56)

	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:172)	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:172)

	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:171)	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:171)

	at polyrhythmmania.init.AssetRegistryLoadingScreen.render(AssetRegistryLoadingScreen.kt:81)	at polyrhythmmania.init.AssetRegistryLoadingScreen.render(AssetRegistryLoadingScreen.kt:81)

	at com.badlogic.gdx.Game.render(Game.java:46)	at com.badlogic.gdx.Game.render(Game.java:46)

	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)

	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)

	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)

	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)

00:00:02.304: [WARN][main] Failed to load DiscordRPC, disabling00:00:02.304: [WARN][main] Failed to load DiscordRPC, disabling

00:00:02.456: [INFO][main] Supported mixer: Controlador primario de sonido00:00:02.456: [INFO][main] Supported mixer: Controlador primario de sonido

00:00:02.457: [INFO][main] Supported mixer: Auriculares (High Definition Audio Device)00:00:02.457: [INFO][main] Supported mixer: Auriculares (High Definition Audio Device)

00:00:02.458: [INFO][main] Supported mixer: 6 - T24B530 (AMD High Definition Audio Device)00:00:02.458: [INFO][main] Supported mixer: 6 - T24B530 (AMD High Definition Audio Device)

00:00:02.459: [INFO][main] Supported mixer: Altavoces (USB Audio Device)00:00:02.459: [INFO][main] Supported mixer: Altavoces (USB Audio Device)

00:00:02.503: [DEBUG][Main Menu music decoder] Starting main menu music decode00:00:02.503: [DEBUG][Main Menu music decoder] Starting main menu music decode

00:00:02.694: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen00:00:02.694: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen

java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Nativejava.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native

	at com.sun.jna.Pointer.<clinit>(Pointer.java:54)	at com.sun.jna.Pointer.<clinit>(Pointer.java:54)

	at com.sun.jna.Structure.<clinit>(Structure.java:2131)	at com.sun.jna.Structure.<clinit>(Structure.java:2131)

	at polyrhythmmania.discordrpc.DiscordHelper.updatePresence(DiscordHelper.kt:111)	at polyrhythmmania.discordrpc.DiscordHelper.updatePresence(DiscordHelper.kt:111)

	at polyrhythmmania.screen.mainmenu.MainMenuScreen.show(MainMenuScreen.kt:560)	at polyrhythmmania.screen.mainmenu.MainMenuScreen.show(MainMenuScreen.kt:560)

	at com.badlogic.gdx.Game.setScreen(Game.java:61)	at com.badlogic.gdx.Game.setScreen(Game.java:61)

	at paintbox.PaintboxGame.setScreen(PaintboxGame.kt:282)	at paintbox.PaintboxGame.setScreen(PaintboxGame.kt:282)

	at paintbox.transition.TransitionScreen.render(TransitionScreen.kt:133)	at paintbox.transition.TransitionScreen.render(TransitionScreen.kt:133)

	at com.badlogic.gdx.Game.render(Game.java:46)	at com.badlogic.gdx.Game.render(Game.java:46)

	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)

	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)

	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)

	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)

00:00:03.134: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to polyrhythmmania.screen.CrashScreen00:00:03.134: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to polyrhythmmania.screen.CrashScreen

00:00:03.717: [DEBUG][Main Menu music decoder] Finished main menu music decode00:00:03.717: [DEBUG][Main Menu music decoder] Finished main menu music decode

(Optional) Other useful information

No response

[Bug]: Keys pressed at the very same frame will not register correctly (likely platform specific to Linux)

Version

v1.0.1-20210830a

Operating System

Linux

Problem Description

If you press and hold both A and + at the very same time, your + input will be delayed a beat. I know you're likely just thinking this is a human-proficiency issue and that I'm probably just that bad at the game, but this is not a problem isolated to this project, and the delay is consistently offset if holding both keys. If you are to let go of the key before this delay fully expires, the input will be dropped entirely and the block will never raise. Here's a video that'll definitely drive my paranoia of someone just responding "get good", but please trust me: I'm really just holding both buttons at the same time:

polyrhythm.issue.13.mp4

Regardless to say, the game's much more harder if you can't consistently use both lanes at the same time. It's visually random whether or not the input correctly works, but I believe that's down to this game running at a locked 60 frames per second. This means the game is playable with this limitation, sure, but I have to make such a concentrated effort to intentionally delay my n(A)+w(+) button presses in order to play around the issue that I can both say goodbye to any no miss runs and a lot of aces.

Steps to Reproduce Problem

  1. Launch the game through ./play_linux.sh
  2. Navigate to "Play->Practice Modes->Tutorial I"
  3. Reach section 3, where it says "Now, lets use both hands!"
  4. Attempt clearing section 3

Relevant log output

No response

(Optional) Other useful information

It's not all doom and gloom, however! As I mentioned previously, this isn't the first project to suffer from this issue, which appears to be a problem with GLFW of all libraries. That's right, Minecraft: Java Edition on Linux has had the same problem in the past, although it's much more nuanced since you aren't expected to begin inputs so synchronously in Minecraft. Thankfully, the user who submitted issue report MC-122421 included their workaround: modifying an environment variable. This means running Polyrhythm Mania with env XMODIFIERS="@im=null" ./play_linux.sh eliminates the issue! You could probably just add that to the play_linux.sh although I'm not exactly sure what the implications of that environment variable are. I personally don't run into any issues with the game open and the variable set in KDE plasma, but that very well might not be the case in GNOME, for instance. The aforementioned Minecraft issue report mentions a, now closed, Github issue report and pull request in GLFW's repository, going on to suggest simply recompiling GLFW with the fix in place instead of forcing a variable to change the way X renders things.

Now's where I make a bold claim: there's a good chance this doesn't occur on the Wayland display server protocol, since the environment variable to be changed is prepended "X". Recently more and more distributions have been using those systems instead of X.Org, so I wouldn't be surprised if this was impossible to reproduce in those distributions without specifying you'd like to use X.

[Bug]: Clicking "Reset this mapping to default" causes the entire tileset palette to be reset

Version

v1.1.0

Operating System

Windows 10

Problem Description

In the Editor > tileset palette editing dialog > clicking the "Reset this mapping to default" button causes the entire tileset palette to be reset to the selected base palette, instead of just that particular mapping.

Steps to Reproduce Problem

  1. Go to the Editor
  2. Click the "Customize Tileset Palette" button to open the relevant dialog
  3. Select "Group Mapping: Cube" and change the colour to something noticeable other than the default
  4. Select "Group Mapping: Piston" and change the colour to something noticeable other than the default
  5. Close the dialog and see that the changes have affected the preview in the top left
  6. Open the customize tileset palette dialog again and select "Group Mapping: Piston"
  7. Click "Reset this mapping to default"
  8. Close the dialog
  9. Notice that the entire tileset has been reset, including the cube group mapping, even though you didn't reset that one

Relevant log output

No response

(Optional) Other useful information

Resolved as of bc83fb2 for next patch.

[Bug]: Audio offset only effects the music and not the blocks.

Version

v.1.0.0

Operating System

Linux

Problem Description

Audio offset only effects the music and not the popping boxes. This just causes everything to be offsync and not working. Also, button offset similar to RHRE would be nice as delaying the audio means having the input before hand.

Steps to Reproduce Problem

  1. run java -jar -Xms512m PolyrhythmMania.jar
  2. Go to settings and set a offset
  3. Enjoy pain and suffering

Relevant log output

00:00:01.019: [INFO][main] Attaching to mixer from settings: default [default]00:00:01.019: [INFO][main] Attaching to mixer from settings: default [default]

00:00:01.023: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen00:00:01.023: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen

00:00:01.439: [INFO][GitHub version checker] Got version from server: v1.0.000:00:01.439: [INFO][GitHub version checker] Got version from server: v1.0.0

00:00:01.621: [DEBUG][Main Menu music decoder] Starting main menu music decode00:00:01.621: [DEBUG][Main Menu music decoder] Starting main menu music decode

00:00:01.662: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:00:01.662: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:00:02.758: [DEBUG][Main Menu music decoder] Finished main menu music decode00:00:02.758: [DEBUG][Main Menu music decoder] Finished main menu music decode

00:01:44.535: [INFO][main] Settings persisted00:01:44.535: [INFO][main] Settings persisted

00:35:50.817: [INFO][main] Settings persisted00:35:50.817: [INFO][main] Settings persisted

00:35:57.310: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:35:57.310: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:35:57.544: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.128 (delta 0.11639003, force sync threshold 0.03)00:35:57.544: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.128 (delta 0.11639003, force sync threshold 0.03)

00:35:57.578: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17349657 and TimingBead was 0.13866666 (delta 0.034829915, force sync threshold 0.03)00:35:57.578: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17349657 and TimingBead was 0.13866666 (delta 0.034829915, force sync threshold 0.03)

00:35:57.787: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.34764615 and TimingBead was 0.30933332 (delta 0.038312823, force sync threshold 0.03)00:35:57.787: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.34764615 and TimingBead was 0.30933332 (delta 0.038312823, force sync threshold 0.03)

00:35:57.824: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:35:57.824: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:35:57.869: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.39060313 and TimingBead was 0.42666668 (delta 0.036063552, force sync threshold 0.03)00:35:57.869: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.39060313 and TimingBead was 0.42666668 (delta 0.036063552, force sync threshold 0.03)

00:35:58.008: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.56598634 and TimingBead was 0.53333336 (delta 0.032652974, force sync threshold 0.03)00:35:58.008: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.56598634 and TimingBead was 0.53333336 (delta 0.032652974, force sync threshold 0.03)

00:35:58.136: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.66104305 and TimingBead was 0.6933333 (delta 0.03229028, force sync threshold 0.03)00:35:58.136: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.66104305 and TimingBead was 0.6933333 (delta 0.03229028, force sync threshold 0.03)

00:35:59.448: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.0052652 and TimingBead was 1.9733334 (delta 0.031931877, force sync threshold 0.03)00:35:59.448: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.0052652 and TimingBead was 1.9733334 (delta 0.031931877, force sync threshold 0.03)

00:35:59.575: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.1010437 and TimingBead was 2.1333334 (delta 0.032289743, force sync threshold 0.03)00:35:59.575: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.1010437 and TimingBead was 2.1333334 (delta 0.032289743, force sync threshold 0.03)

00:36:01.967: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.5249996 and TimingBead was 4.490667 (delta 0.034332752, force sync threshold 0.03)00:36:01.967: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.5249996 and TimingBead was 4.490667 (delta 0.034332752, force sync threshold 0.03)

00:36:01.979: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.502277 and TimingBead was 4.5333333 (delta 0.031056404, force sync threshold 0.03)00:36:01.979: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.502277 and TimingBead was 4.5333333 (delta 0.031056404, force sync threshold 0.03)

00:36:02.896: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.4505258 and TimingBead was 5.418667 (delta 0.03185892, force sync threshold 0.03)00:36:02.896: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.4505258 and TimingBead was 5.418667 (delta 0.03185892, force sync threshold 0.03)

00:36:02.907: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.430277 and TimingBead was 5.4613333 (delta 0.031056404, force sync threshold 0.03)00:36:02.907: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.430277 and TimingBead was 5.4613333 (delta 0.031056404, force sync threshold 0.03)

00:36:04.475: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.0286875 and TimingBead was 6.9973335 (delta 0.03135395, force sync threshold 0.03)00:36:04.475: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.0286875 and TimingBead was 6.9973335 (delta 0.03135395, force sync threshold 0.03)

00:36:04.533: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.0553837 and TimingBead was 7.0933332 (delta 0.037949562, force sync threshold 0.03)00:36:04.533: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.0553837 and TimingBead was 7.0933332 (delta 0.037949562, force sync threshold 0.03)

00:36:04.916: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.4764643 and TimingBead was 7.4453335 (delta 0.03113079, force sync threshold 0.03)00:36:04.916: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.4764643 and TimingBead was 7.4453335 (delta 0.03113079, force sync threshold 0.03)

00:36:04.939: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.4685535 and TimingBead was 7.498667 (delta 0.03011322, force sync threshold 0.03)00:36:04.939: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.4685535 and TimingBead was 7.498667 (delta 0.03011322, force sync threshold 0.03)

00:36:05.276: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.8353577 and TimingBead was 7.7973332 (delta 0.038024426, force sync threshold 0.03)00:36:05.276: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.8353577 and TimingBead was 7.7973332 (delta 0.038024426, force sync threshold 0.03)

00:36:05.287: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.8089433 and TimingBead was 7.84 (delta 0.031056881, force sync threshold 0.03)00:36:05.287: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 7.8089433 and TimingBead was 7.84 (delta 0.031056881, force sync threshold 0.03)

00:36:06.054: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 8.606262 and TimingBead was 8.576 (delta 0.030261993, force sync threshold 0.03)00:36:06.054: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 8.606262 and TimingBead was 8.576 (delta 0.030261993, force sync threshold 0.03)

00:36:06.065: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 8.58761 and TimingBead was 8.618667 (delta 0.031056404, force sync threshold 0.03)00:36:06.065: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 8.58761 and TimingBead was 8.618667 (delta 0.031056404, force sync threshold 0.03)

00:36:06.855: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.408149 and TimingBead was 9.376 (delta 0.03214836, force sync threshold 0.03)00:36:06.855: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.408149 and TimingBead was 9.376 (delta 0.03214836, force sync threshold 0.03)

00:36:06.867: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.38761 and TimingBead was 9.418667 (delta 0.031056404, force sync threshold 0.03)00:36:06.867: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.38761 and TimingBead was 9.418667 (delta 0.031056404, force sync threshold 0.03)

00:36:11.348: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.158804 and TimingBead was 10.122666 (delta 0.03613758, force sync threshold 0.03)00:36:11.348: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.158804 and TimingBead was 10.122666 (delta 0.03613758, force sync threshold 0.03)

00:36:11.359: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.134276 and TimingBead was 10.165334 (delta 0.031057358, force sync threshold 0.03)00:36:11.359: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.134276 and TimingBead was 10.165334 (delta 0.031057358, force sync threshold 0.03)

00:36:11.487: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.293044 and TimingBead was 10.261333 (delta 0.031710625, force sync threshold 0.03)00:36:11.487: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.293044 and TimingBead was 10.261333 (delta 0.031710625, force sync threshold 0.03)

00:36:11.499: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.2729435 and TimingBead was 10.304 (delta 0.031056404, force sync threshold 0.03)00:36:11.499: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.2729435 and TimingBead was 10.304 (delta 0.031056404, force sync threshold 0.03)

00:36:11.615: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.4201 and TimingBead was 10.378667 (delta 0.041433334, force sync threshold 0.03)00:36:11.615: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 10.4201 and TimingBead was 10.378667 (delta 0.041433334, force sync threshold 0.03)

00:36:25.462: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:36:25.462: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:36:25.771: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:36:25.771: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:37:05.429: [INFO][main] Settings persisted00:37:05.429: [INFO][main] Settings persisted

00:37:11.413: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:37:11.413: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:37:11.434: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.128 (delta 0.11639003, force sync threshold 0.03)00:37:11.434: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.128 (delta 0.11639003, force sync threshold 0.03)

00:37:11.481: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17443989 and TimingBead was 0.13866666 (delta 0.035773233, force sync threshold 0.03)00:37:11.481: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17443989 and TimingBead was 0.13866666 (delta 0.035773233, force sync threshold 0.03)

00:37:11.711: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:37:11.711: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:37:41.527: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:37:41.527: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:37:41.831: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:37:41.831: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:37:56.662: [INFO][main] Settings persisted00:37:56.662: [INFO][main] Settings persisted

00:38:00.813: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:38:00.813: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:38:00.835: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.13866666 (delta 0.12705669, force sync threshold 0.03)00:38:00.835: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.13866666 (delta 0.12705669, force sync threshold 0.03)

00:38:00.869: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17349657 and TimingBead was 0.13866666 (delta 0.034829915, force sync threshold 0.03)00:38:00.869: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.17349657 and TimingBead was 0.13866666 (delta 0.034829915, force sync threshold 0.03)

00:38:01.055: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.3244262 and TimingBead was 0.288 (delta 0.036426216, force sync threshold 0.03)00:38:01.055: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.3244262 and TimingBead was 0.288 (delta 0.036426216, force sync threshold 0.03)

00:38:01.127: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:38:01.127: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:38:02.413: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.6783701 and TimingBead was 1.6426667 (delta 0.03570342, force sync threshold 0.03)00:38:02.413: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.6783701 and TimingBead was 1.6426667 (delta 0.03570342, force sync threshold 0.03)

00:38:02.425: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.6542767 and TimingBead was 1.6853334 (delta 0.031056643, force sync threshold 0.03)00:38:02.425: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.6542767 and TimingBead was 1.6853334 (delta 0.031056643, force sync threshold 0.03)

00:38:02.669: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.929144 and TimingBead was 1.8986666 (delta 0.030477405, force sync threshold 0.03)00:38:02.669: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.929144 and TimingBead was 1.8986666 (delta 0.030477405, force sync threshold 0.03)

00:38:02.692: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.9218867 and TimingBead was 1.9626666 (delta 0.04077995, force sync threshold 0.03)00:38:02.692: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 1.9218867 and TimingBead was 1.9626666 (delta 0.04077995, force sync threshold 0.03)

00:38:02.936: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.2064772 and TimingBead was 2.176 (delta 0.030477047, force sync threshold 0.03)00:38:02.936: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.2064772 and TimingBead was 2.176 (delta 0.030477047, force sync threshold 0.03)

00:38:02.948: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.1876101 and TimingBead was 2.2186666 (delta 0.031056404, force sync threshold 0.03)00:38:02.948: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.1876101 and TimingBead was 2.2186666 (delta 0.031056404, force sync threshold 0.03)

00:38:03.064: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.3347669 and TimingBead was 2.304 (delta 0.030766964, force sync threshold 0.03)00:38:03.064: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.3347669 and TimingBead was 2.304 (delta 0.030766964, force sync threshold 0.03)

00:38:03.447: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.687131 and TimingBead was 2.72 (delta 0.0328691, force sync threshold 0.03)00:38:03.447: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.687131 and TimingBead was 2.72 (delta 0.0328691, force sync threshold 0.03)

00:38:03.505: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.7780502 and TimingBead was 2.7413332 (delta 0.036716938, force sync threshold 0.03)00:38:03.505: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.7780502 and TimingBead was 2.7413332 (delta 0.036716938, force sync threshold 0.03)

00:38:03.621: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.8574336 and TimingBead was 2.8906667 (delta 0.033233166, force sync threshold 0.03)00:38:03.621: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 2.8574336 and TimingBead was 2.8906667 (delta 0.033233166, force sync threshold 0.03)

00:38:03.749: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.018377 and TimingBead was 2.9866667 (delta 0.031710386, force sync threshold 0.03)00:38:03.749: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.018377 and TimingBead was 2.9866667 (delta 0.031710386, force sync threshold 0.03)

00:38:03.876: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.114377 and TimingBead was 3.1466668 (delta 0.032289743, force sync threshold 0.03)00:38:03.876: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.114377 and TimingBead was 3.1466668 (delta 0.032289743, force sync threshold 0.03)

00:38:04.004: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.274377 and TimingBead was 3.2426667 (delta 0.031710386, force sync threshold 0.03)00:38:04.004: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.274377 and TimingBead was 3.2426667 (delta 0.031710386, force sync threshold 0.03)

00:38:04.283: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.5213075 and TimingBead was 3.552 (delta 0.030692577, force sync threshold 0.03)00:38:04.283: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.5213075 and TimingBead was 3.552 (delta 0.030692577, force sync threshold 0.03)

00:38:04.782: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.0512314 and TimingBead was 4.010667 (delta 0.040564537, force sync threshold 0.03)00:38:04.782: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.0512314 and TimingBead was 4.010667 (delta 0.040564537, force sync threshold 0.03)

00:38:05.571: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.8108153 and TimingBead was 4.8426666 (delta 0.03185129, force sync threshold 0.03)00:38:05.571: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 4.8108153 and TimingBead was 4.8426666 (delta 0.03185129, force sync threshold 0.03)

00:38:05.850: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.1213074 and TimingBead was 5.088 (delta 0.033307552, force sync threshold 0.03)00:38:05.850: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.1213074 and TimingBead was 5.088 (delta 0.033307552, force sync threshold 0.03)

00:38:05.862: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.09961 and TimingBead was 5.1306667 (delta 0.031056881, force sync threshold 0.03)00:38:05.862: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.09961 and TimingBead was 5.1306667 (delta 0.031056881, force sync threshold 0.03)

00:38:06.303: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.571848 and TimingBead was 5.536 (delta 0.03584814, force sync threshold 0.03)00:38:06.303: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.571848 and TimingBead was 5.536 (delta 0.03584814, force sync threshold 0.03)

00:38:06.314: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.54761 and TimingBead was 5.5786667 (delta 0.031056881, force sync threshold 0.03)00:38:06.314: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 5.54761 and TimingBead was 5.5786667 (delta 0.031056881, force sync threshold 0.03)

00:38:07.139: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 6.402979 and TimingBead was 6.368 (delta 0.034978867, force sync threshold 0.03)00:38:07.139: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 6.402979 and TimingBead was 6.368 (delta 0.034978867, force sync threshold 0.03)

00:38:07.150: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 6.37961 and TimingBead was 6.4106665 (delta 0.031056404, force sync threshold 0.03)00:38:07.150: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 6.37961 and TimingBead was 6.4106665 (delta 0.031056404, force sync threshold 0.03)

00:38:26.844: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:38:26.844: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:38:27.154: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:38:27.154: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

(Optional) Other useful information

I might come back with a video with additional info.

[Enhancement]: Add a built in calibration tool?

I have a particularly large audio lag on my setup as im a bit of an audiophile. RHRE had a calibration and it worked flawlessly, and plugging its numbers into PRM dont work because it dosent go above/below +-100 ms and editing the offset in the settings file yields same results. Maybe this is actually a bug but right now I cannot tell because im not going to spend 2 hours checking every value until it lines up.
image

Add a bash script for launching the game on Mac

I noticed there wasn't a bash script for launching the game on Mac, so I tried to just run the Linux sh file and got an error. I was able to fix the error with a simple modification to the java command in the script, so all that would have to be done to allow the game to work on Mac is just adding this bash script to the build folder, and modifying the portable script like I did with the regular one for that to also work (the script is attached below).
play_mac.sh.zip

[Bug]:Crash when starting the game

Version

v1.0.1

Operating System

Windows 10

Problem Description

I don't know why, but when I open the game in the win64 and even in the non-win64 version, the game simply crash. And yes, my PC is 64 bits

Steps to Reproduce Problem

  1. Download any of the two versions of the game
  2. Extract the ZIP file
  3. Go to the executable and open it

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.0.1-20210829a
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 11.0.11
    Java Vendor: AdoptOpenJDK
    Kotlin Version: 1.5.21
    OS Name: Windows 10
    OS Version: 10.0
    OS Arch: amd64
    JVM memory available: 2084864 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: ATI Technologies Inc.
    GL_RENDERER: Radeon RX 5500 XT
    GL_VERSION: 4.6.13596 Compatibility Profile Context 20.10.35.02 27.20.1034.6



00:00:01.085: [INFO][main] Initialized all 8 fonts in 0.0275 ms00:00:01.085: [INFO][main] Initialized all 8 fonts in 0.0275 ms

00:00:01.270: [INFO][main] No saved mixer string, using Controlador primario de sonido00:00:01.270: [INFO][main] No saved mixer string, using Controlador primario de sonido

00:00:01.280: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen00:00:01.280: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen

00:00:01.949: [INFO][GitHub version checker] Got version from server: v1.0.100:00:01.949: [INFO][GitHub version checker] Got version from server: v1.0.1

java.lang.UnsatisfiedLinkError: C:\Users\Admin\AppData\Local\Temp\jna--1997254497\jna13712113709908747215.dll: Acceso denegadojava.lang.UnsatisfiedLinkError: C:\Users\Admin\AppData\Local\Temp\jna--1997254497\jna13712113709908747215.dll: Acceso denegado

	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)	at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)

	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)	at java.base/java.lang.ClassLoader$NativeLibrary.load(Unknown Source)

	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)	at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(Unknown Source)

	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)	at java.base/java.lang.ClassLoader.loadLibrary0(Unknown Source)

	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)	at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)

	at java.base/java.lang.Runtime.load0(Unknown Source)	at java.base/java.lang.Runtime.load0(Unknown Source)

	at java.base/java.lang.System.load(Unknown Source)	at java.base/java.lang.System.load(Unknown Source)

	at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:947)	at com.sun.jna.Native.loadNativeDispatchLibraryFromClasspath(Native.java:947)

	at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)	at com.sun.jna.Native.loadNativeDispatchLibrary(Native.java:922)

	at com.sun.jna.Native.<clinit>(Native.java:190)	at com.sun.jna.Native.<clinit>(Native.java:190)

	at club.minnced.discord.rpc.DiscordRPC.<clinit>(DiscordRPC.java:42)	at club.minnced.discord.rpc.DiscordRPC.<clinit>(DiscordRPC.java:42)

	at polyrhythmmania.discordrpc.DiscordHelper.getLib(DiscordHelper.kt:23)	at polyrhythmmania.discordrpc.DiscordHelper.getLib(DiscordHelper.kt:23)

	at polyrhythmmania.discordrpc.DiscordHelper.init(DiscordHelper.kt:56)	at polyrhythmmania.discordrpc.DiscordHelper.init(DiscordHelper.kt:56)

	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:172)	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:172)

	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:171)	at polyrhythmmania.PRManiaGame$create$2$2.invoke(PRManiaGame.kt:171)

	at polyrhythmmania.init.AssetRegistryLoadingScreen.render(AssetRegistryLoadingScreen.kt:81)	at polyrhythmmania.init.AssetRegistryLoadingScreen.render(AssetRegistryLoadingScreen.kt:81)

	at com.badlogic.gdx.Game.render(Game.java:46)	at com.badlogic.gdx.Game.render(Game.java:46)

	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)

	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)

	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)

	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)

00:00:02.304: [WARN][main] Failed to load DiscordRPC, disabling00:00:02.304: [WARN][main] Failed to load DiscordRPC, disabling

00:00:02.456: [INFO][main] Supported mixer: Controlador primario de sonido00:00:02.456: [INFO][main] Supported mixer: Controlador primario de sonido

00:00:02.457: [INFO][main] Supported mixer: Auriculares (High Definition Audio Device)00:00:02.457: [INFO][main] Supported mixer: Auriculares (High Definition Audio Device)

00:00:02.458: [INFO][main] Supported mixer: 6 - T24B530 (AMD High Definition Audio Device)00:00:02.458: [INFO][main] Supported mixer: 6 - T24B530 (AMD High Definition Audio Device)

00:00:02.459: [INFO][main] Supported mixer: Altavoces (USB Audio Device)00:00:02.459: [INFO][main] Supported mixer: Altavoces (USB Audio Device)

00:00:02.503: [DEBUG][Main Menu music decoder] Starting main menu music decode00:00:02.503: [DEBUG][Main Menu music decoder] Starting main menu music decode

00:00:02.694: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen00:00:02.694: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen

java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Nativejava.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native

	at com.sun.jna.Pointer.<clinit>(Pointer.java:54)	at com.sun.jna.Pointer.<clinit>(Pointer.java:54)

	at com.sun.jna.Structure.<clinit>(Structure.java:2131)	at com.sun.jna.Structure.<clinit>(Structure.java:2131)

	at polyrhythmmania.discordrpc.DiscordHelper.updatePresence(DiscordHelper.kt:111)	at polyrhythmmania.discordrpc.DiscordHelper.updatePresence(DiscordHelper.kt:111)

	at polyrhythmmania.screen.mainmenu.MainMenuScreen.show(MainMenuScreen.kt:560)	at polyrhythmmania.screen.mainmenu.MainMenuScreen.show(MainMenuScreen.kt:560)

	at com.badlogic.gdx.Game.setScreen(Game.java:61)	at com.badlogic.gdx.Game.setScreen(Game.java:61)

	at paintbox.PaintboxGame.setScreen(PaintboxGame.kt:282)	at paintbox.PaintboxGame.setScreen(PaintboxGame.kt:282)

	at paintbox.transition.TransitionScreen.render(TransitionScreen.kt:133)	at paintbox.transition.TransitionScreen.render(TransitionScreen.kt:133)

	at com.badlogic.gdx.Game.render(Game.java:46)	at com.badlogic.gdx.Game.render(Game.java:46)

	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)	at paintbox.PaintboxGame.render(PaintboxGame.kt:215)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:403)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:143)

	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:116)

	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)

	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)	at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)

	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)	at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:74)

00:00:03.134: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to polyrhythmmania.screen.CrashScreen00:00:03.134: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to polyrhythmmania.screen.CrashScreen

00:00:03.717: [DEBUG][Main Menu music decoder] Finished main menu music decode00:00:03.717: [DEBUG][Main Menu music decoder] Finished main menu music decode

(Optional) Other useful information

No response

Ability to turn off the spotlights, especially in Story Mode

Discussed in #57

Originally posted by Weyverling August 14, 2023
[version 2.0.2-20230512a_win64]

Request: Some way to turn spotlights off as an additional Graphics & Accessibility option

Justification (/ bug report):
When the spotlights turn on in the "phase change" for the boss my computer lags out and none of my inputs can come out correctly and I die near-instantly. I think this is just a problem with my setup and probably can't be fixed, but I'd like to have some way of circumventing this lag spike to have a better chance of completing Story Mode. I'm not sure if it comes under Reduce In-game Motion normally but I have that checked too, and Robot Mode still uses the spotlights.

Attached is me trying to show this lag spike. I don't know if it just comes off as a skill issue but every single time the spotlights hit my run has died, this is just the first time I got it on tape. I was doing better before but I cropped the video for size.
image
Also for some reason this game loves to use 100% of my GPU. The only things I have open right now are Firefox to write this and Polyrhythm Mania. I've made the resolution as low as I can and capped the frame rate at 30 to try and counteract the spikes but I don't think that's helped either.
https://github.com/chrislo27/PolyrhythmMania/assets/83324457/5e4ade34-922e-441c-badd-fb21104c1983

[Bug]: Endless mode randomly goes back to the endless screen

Version

v1.0.2

Operating System

Windows 10

Problem Description

I got up to around 76 on endless mode and then the game went back to the endless seed select screen

Steps to Reproduce Problem

Not quite sure how to reproduce it, it might be seed specific if that's a thing since I've played up to 60 ish before on other levels and got the same issue but I can't get the seed I was just on back

Relevant log output

No response

(Optional) Other useful information

No response

[Bug]: charset issues on Chinese Windows machines

Version

v1.0.0

Operating System

Windows 10

Problem Description

image

I'm on a Chinese Windows laptop, and my audio devices have names that have Chinese characters in them. The game doesn't display them correctly.

Steps to Reproduce Problem

  1. Make an audio device have a name that contain Chinese characters (maybe also dependent on system charset?)
  2. Go to settings, as shown in the screenshot above

Relevant log output

No response

(Optional) Other useful information

No response

[Bug]: Endless Mode and Daily Challenge use GBA texture pack instead of HD one

Version

v1.0.1 up to v1.0.2

Operating System

Windows 10

Problem Description

The texture pack used in Endless Mode and the Daily Challenge is the default GBA one, instead of the HD one like in v1.0.0.

Steps to Reproduce Problem

  1. Go to Play > Endless Mode > Play with Random Seed
  2. Note that the texture pack used is the GBA texture pack and not the HD one.

Relevant log output

No response

(Optional) Other useful information

This has already been fixed as of commit 4e95ece. This is a regression caused by the fix to #8.

Feature Request: Portable mode

Discussed in #9

Originally posted by CebolaBros64 August 27, 2021

Feature Request: Portable mode

A portable mode which can be enabled via a launch argument, akin to the one in RHRE. Changes the location where the .polyrhythmmania/ directory can be found to be in the same directory as the PolyrhythmMania.jar executable.

Justification

Paraphrasing the RHRE docs: "[...] useful for portable flash drives."
Personally, I have PrMania saved on an external hard drive, and would rather to have my preferences stored alongside the game to it being in my home folder, in a different hard drive.

[Bug]: Instances where a completed sequence would not award points at faster speeds (Daily Challenge)

Version

v1.2.0-20220202c

Operating System

Windows 10

Problem Description

I encountered two instances in the same run where a completed sequence would award during the daily challenge (On score 99 and 102). This was my first and only time playing today.

Streamable link: https://streamable.com/l5i4ov

Steps to Reproduce Problem

  1. Start the Daily Challenge
  2. Complete a sequence without missing an input
  3. Not get rewarded with a score increase

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.2.0-20220202c
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 11.0.13
    Java Vendor: Eclipse Adoptium
    Kotlin Version: 1.6.10
    OS Name: Windows 10
    OS Version: 10.0
    OS Arch: amd64
    SystemUtils.OSType: WINDOWS
    JVM memory available: 4173824 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: NVIDIA Corporation
    GL_RENDERER: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2
    GL_VERSION: 4.6.0 NVIDIA 511.79



00:00:01.206: [INFO][main] Initialized all 8 fonts in 0.0276 ms
00:00:01.296: [INFO][main] Using OpenAL sound system
00:00:01.415: [INFO][main] Setting recommended legacy audio JavaSound mixer to mixer from settings: Primary Sound Driver
00:00:01.464: [DEBUG][main] [GlobalStats] Statistics loaded
00:00:01.485: [DEBUG][main] [Achievements] Achievements loaded
00:00:01.543: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen
00:00:01.727: [DEBUG][main] DEBUG MONITORS: Primary=Generic PnP Monitor, current=Generic PnP Monitor, allMonitors=Generic PnP Monitor
00:00:01.863: [INFO][main] [DiscordRichPresence] Loaded successfully.
00:00:02.774: [INFO][GitHub version checker] Got version from server: v1.2.0
00:00:03.122: [INFO][main] Supported JavaSound mixer: Primary Sound Driver
00:00:03.123: [INFO][main] Supported JavaSound mixer: Speakers (Realtek High Definition Audio)
00:00:03.415: [DEBUG][Main Menu music decoder] Starting main menu music decode
00:00:03.430: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1280x720 (logical 1280x720)
00:00:03.479: [DEBUG][OpenALAudioIO] Did AL_DIRECT_CHANNELS_SOFT fix for OpenALAudioDevice. This will be removed with libGDX 1.10.1
00:00:03.584: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen
00:00:04.007: [DEBUG][main] [GlobalStats] Statistics saved
00:00:04.009: [DEBUG][main] [Achievements] Achievements saved
00:00:04.010: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:00:04.895: [DEBUG][Main Menu music decoder] Finished main menu music decode
00:03:43.309: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1920x1080 (logical 1920x1080)
00:04:42.558: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:04:42.825: [DEBUG][OpenALAudioIO] Did AL_DIRECT_CHANNELS_SOFT fix for OpenALAudioDevice. This will be removed with libGDX 1.10.1
00:04:43.177: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.play.PlayScreen
00:09:50.212: [INFO][main] [Achievements] Achievement awarded: successful_inputs_1000
00:09:52.761: [DEBUG][main] Changed screens from polyrhythmmania.screen.play.PlayScreen to paintbox.transition.TransitionScreen
00:09:53.198: [DEBUG][main] [GlobalStats] Statistics saved
00:09:53.199: [DEBUG][main] [Achievements] Achievements saved
00:09:53.199: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:10:13.397: [INFO][main] Starting dispose call
00:10:13.402: [INFO][main] Dispose call finished, goodbye!
00:10:13.403: [DEBUG][main] [GlobalStats] Statistics saved
00:10:13.404: [DEBUG][main] [Achievements] Achievements saved

(Optional) Other useful information

No response

[Bug]: Audio not working on Linux due to using digital audio mixer

Version

v1.1.1

Operating System

Linux

Problem Description

I'm having an issue with audio on both PolyrhythmMania and RHRE3, audio does not work at all other than in the sfx of the menu buttons.
I have tried PolyrhythmMania on OpenJDK 8 and 11 and the issue still occurs, so it's not a java issue, audio seems to work on Windows tho
Here's also a video if needed: https://streamable.com/xkgykd

Steps to Reproduce Problem

  1. Run PolyrhythmMania
  2. No Music
  3. Try playing a level, still no music or audio

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.1.1-20211207a
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 17.0.1
    Java Vendor: N/A
    Kotlin Version: 1.5.31
    OS Name: Linux
    OS Version: 5.15.5-223-tkg-bmq
    OS Arch: amd64
    JVM memory available: 1048576 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: Mesa/X.org
    GL_RENDERER: llvmpipe (LLVM 14.0.0, 256 bits)
    GL_VERSION: 4.5 (Compatibility Profile) Mesa 22.0.0-devel (git-145b0711fc)



00:00:00.563: [INFO][main] Initialized all 8 fonts in 0.024456 ms
00:00:00.670: [INFO][main] Attaching to mixer from settings: HDMI [plughw:0,3]
00:00:00.677: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen
00:00:00.879: [INFO][main] [DiscordCore] Loaded successfully.
00:00:01.503: [INFO][GitHub version checker] Got version from server: v1.1.1
00:00:01.532: [INFO][main] Supported mixer: HDMI [plughw:0,3]
00:00:01.533: [INFO][main] Supported mixer: Generic [plughw:1,1]
00:00:01.635: [DEBUG][Main Menu music decoder] Starting main menu music decode
00:00:01.648: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1600x900 (logical 1600x900)
00:00:01.752: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen
00:00:02.284: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:00:02.364: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1280x720 (logical 1280x720)
00:00:02.922: [DEBUG][Main Menu music decoder] Finished main menu music decode
00:00:06.918: [INFO][Library Search] Starting Library search in /home/e404nnf/.polyrhythmmania/Levels
00:00:06.920: [INFO][Library Search] [Library Search] Possible files found: 5
00:00:06.954: [INFO][Library Search] [Library Search] Levels read: 5 (took 34.732555 ms)
00:00:14.078: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
Exception in thread "DaemonJavaSoundAudioIO" javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 48000.0 Hz, 16 bit, stereo, 4 bytes/frame, big-endian not supported.
	at java.desktop/com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(DirectAudioDevice.java:484)
	at java.desktop/com.sun.media.sound.AbstractDataLine.open(AbstractDataLine.java:115)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO.create(DaemonJavaSoundAudioIO.kt:62)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO.access$create(DaemonJavaSoundAudioIO.kt:23)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO$start$1.invoke(DaemonJavaSoundAudioIO.kt:173)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO$start$1.invoke(DaemonJavaSoundAudioIO.kt:172)
	at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)
00:00:14.508: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen
00:00:14.539: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.572: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.608: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.642: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.677: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.716: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.746: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.781: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.816: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.851: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.886: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.921: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.956: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:14.990: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.026: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.060: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.095: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.130: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.164: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.199: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.234: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.269: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.303: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.339: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.373: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.408: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.443: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.478: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.513: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.547: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.582: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.618: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.652: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.687: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.722: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.757: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.791: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.827: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.861: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.897: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.931: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:15.966: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.000: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.036: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.070: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.105: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.140: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.174: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.210: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.244: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.278: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.314: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.349: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.384: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.419: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.453: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.488: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.522: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.558: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.593: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.627: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.662: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.697: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.731: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.766: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.801: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.836: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.871: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.906: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.941: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:16.975: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.011: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.045: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.080: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.115: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.150: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.185: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.219: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.255: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.289: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.324: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.359: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.394: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.428: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.463: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.498: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.533: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.567: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.603: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.637: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.672: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.707: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.742: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.777: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.812: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.846: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.881: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.916: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.951: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:17.985: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.021: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.055: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.090: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.124: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.160: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.194: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.229: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.265: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.299: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.334: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.369: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.404: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.438: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.474: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.508: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.543: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.578: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.612: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.647: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.683: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.717: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.752: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.786: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.822: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.857: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.892: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.926: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.961: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:18.995: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.031: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.065: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.100: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.135: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.169: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.205: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.240: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.274: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.309: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.344: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.379: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.414: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.448: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.483: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.518: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.553: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.588: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.623: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.657: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.692: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.727: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.762: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.797: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.831: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.867: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.901: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.936: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:19.971: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.006: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.041: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.076: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.110: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.145: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.180: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.215: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.250: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.285: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.319: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.354: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.389: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.424: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.459: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.493: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.529: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.563: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.598: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.632: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.667: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.702: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.737: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.772: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.807: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.842: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.876: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.911: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.946: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:20.981: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.016: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.050: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.085: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.121: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.156: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.190: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.225: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.260: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.295: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.329: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.364: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.399: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.434: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.469: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.504: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.538: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.573: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.608: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.643: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.677: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.712: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.747: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.782: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.817: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.851: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.887: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.922: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.957: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:21.991: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.026: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.060: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.096: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.131: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.165: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.201: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.235: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.269: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.304: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.339: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.374: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.409: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.444: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.479: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.514: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.549: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.583: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.618: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.653: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.687: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.722: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.757: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.792: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.827: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.862: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.896: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.931: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:22.967: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.001: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.036: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.071: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.106: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.141: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.176: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.210: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.245: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.280: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.314: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.349: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.384: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.419: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.454: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.488: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.524: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.558: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.594: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.628: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.663: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.698: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.733: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.768: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.803: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.838: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.872: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.907: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.942: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:23.977: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.011: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.046: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.081: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.116: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.151: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.185: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.220: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:24.255: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.03482993 and TimingBead was 0.0 (delta 0.03482993, force sync threshold 0.03)
00:00:25.597: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

(Optional) Other useful information

No response

[Bug]: custom files wont show up

Version

v2.1.1-20231114a

Operating System

Windows 11

Problem Description

on explorer:
Screenshot 2024-06-13 100952
on polyrhythm mania:
Screenshot 2024-06-13 100300

Steps to Reproduce Problem

  1. open 2. edit 3. export

Relevant log output

cant put logs😭😭😭😭

(Optional) Other useful information

No response

[Bug]: Both standalone and Win64 give OpenGL error on Windows 10 64-bit Intel CPU

Version

v1.0.0

Operating System

Windows 10

Problem Description

On any version of Java, with both the platform-agnostic and Win64 versions, an error occurs when trying to start from LaunchPolyrhythmMania.exe or play_windows.bat, respectively. I expect this has something to do with the similar bug with RHRE3, but this time it's not mitigated by Java 8u25.

Steps to Reproduce Problem

  1. Get access to some version of 64-bit Windows 10, running on an Intel CPU.
  2. Download and unzip either or both versions of the program.
  3. Run either or both of the executables (play_windows.bat, launchpolyrhythmmania.exe).

Relevant log output

For the standalone version:

[LWJGL] GLFW_API_UNAVAILABLE error
        Description : WGL: The driver does not appear to support OpenGL
        Stacktrace  :
                org.lwjgl.glfw.GLFW.nglfwCreateWindow(GLFW.java:1714)
                org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1897)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:469)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
                paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)
                paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)
                polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:65)
Exception in thread "main" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't create window
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:472)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
        at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)
        at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)
        at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:65)
AL lib: (EE) alc_cleanup: 1 device not closed

For the Win64 version:

[LWJGL] GLFW_API_UNAVAILABLE error
        Description : WGL: The driver does not appear to support OpenGL
        Stacktrace  :
                org.lwjgl.glfw.GLFW.nglfwCreateWindow(GLFW.java:1714)
                org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1897)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:469)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
                com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
                paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)
                paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)
                polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:65)
Exception in thread "main" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't create window
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:472)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:415)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:401)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:113)
        at paintbox.desktop.PaintboxDesktopLauncher$launch$app$1.<init>(PaintboxDesktopLauncher.kt:32)
        at paintbox.desktop.PaintboxDesktopLauncher.launch(PaintboxDesktopLauncher.kt:32)
        at polyrhythmmania.desktop.DesktopLauncher.main(DesktopLauncher.kt:65)
AL lib: (EE) alc_cleanup: 1 device not closed

(Optional) Other useful information

No response

[Bug]: The play_linux.sh script in the release zip is malformed, and doesn't run without prior tampering

Version

v1.0.1-20210830a

Operating System

Linux

Problem Description

Upon attempting to load play_linux.sh right after extracting the release found here, I was greeted by two separate yet closely related issues. First, the shell script does not hold the executable mode bit, which can be added by running chmod +x play_linux.sh. After adding this flag, the shell script will still fail to load with the reasoning being limited down to the choice of Windows-specific line endings, according to fish. This shell even goes on to suggest its own workaround, that being the standalone utility named dos2unix, which explains the discrepancy in more detail through its manpage:

In DOS/Windows text files a line break, also known as newline, is a combination of two characters: a Carriage Return (CR) followed by a Line Feed (LF). In Unix text files a line break is a single character: the Line Feed (LF).

Since every shell I have available to myself(that being fish, bash, and dash/sh) expects the latter, this shell script does not work on any of them.

Steps to Reproduce Problem

(assuming you're on fish, although realistically the steps would be the same on bash or dash. the output would be different, however)

  1. Download the platform agnostic zip release, as instructed by the readme: wget https://github.com/chrislo27/PolyrhythmMania/releases/download/v1.0.1/PolyrhythmMania_v1.0.1.zip
  2. Extract the downloaded .zip file: unzip PolyrhythmMania_v1.0.1.zip
  3. Change into the extracted directory: cd PolyrhythmMania_platform_agnostic/
    3.1. Attempting to run the shell script from this step (with ./play_linux.sh) would cause the following error: fish: The file “./play_linux.sh” is not executable by this user
  4. Set the executable mode bit: chmod +x play_linux.sh
    4.1. Attempting to run the shell script from this step (with ./play_linux.sh) will now cause the following error:
Failed to execute process './play_linux.sh'. Reason:
The file uses windows line endings (\r\n). Run dos2unix or similar to fix it.

Relevant log output

No response

(Optional) Other useful information

If you're curious how the error looks on bash or dash, here's the output. Ignore the claims that the file just doesn't exist. It really does! I tried with test -e and absolute paths and stuff.

In bash:

bash: ./play_linux.sh: /bin/bash^M: bad interpreter: No such file or directory

In dash:

dash: 7: /home/zaptorzap/Downloads/PolyrhythmMania_platform_agnostic/play_linux.sh: not found

If you don't have the time to spin up a real Unix machine just to make what's pretty much a text file, here's the script I eventually used to launch the game with. It should have +x set, and it definitely uses the right line breaks. Here's the portable shell script as well, since it suffers the same problem.

If you ask me personally, at least as a Debian 11 user, I don't see what the point of the read -n1 "Press any key to continue..." line is, as that read command is seemingly skipped on bash/dash(sh). fish displays an error citing: ``Press any key to continue...': not a valid identifier` and removing the line entirely still plays the game as normal, exiting gracefully through the menu. For completionist sake I removed the line in these regular and portable shell scripts, should you choose to use these instead. (you can't complain about the file size reductions!)
image
image

[Bug]: Rods don't make a landing sound on a block that was despawned

Version

v1.0.0

Operating System

Windows 10

Problem Description

In regular Polyrhythm, rods don't play a landing sound if they land on a block that has been recently despawned.

Steps to Reproduce Problem

  1. Deploy a rod on the A row.
  2. Notice that it plays a land sound after it falls.
  3. Deploy a platform or piston on the leftmost part of the A row at least two beats later.
  4. Despawn it one beat later.
  5. Deploy a rod one beat later.
  6. Notice that it does not play the land sound.

Relevant log output

No response

(Optional) Other useful information

This has already been fixed for the next patch update with commit b12b500.

[Bug]: LineUnavailableException when going from main menu to in-game

Version

v1.1.1

Operating System

Linux

Problem Description

Unable to hear in-game (Polyrhythm gameplay) sounds when playing. A LineUnavailableException occurs while loading.

Steps to Reproduce Problem

  1. Load a Polyrhythm level or Endless Mode.
  2. Note that there is no game audio.
  3. Exit to main menu. Normal sounds are back.
  4. Note that some menu sounds (button noises) still play normally.

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.1.2-beta_20220103a
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 17.0.1
    Java Vendor: N/A
    Kotlin Version: 1.5.31
    OS Name: Linux
    OS Version: 5.15.5-223-tkg-bmq
    OS Arch: amd64
    JVM memory available: 1048576 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: X.Org
    GL_RENDERER: AMD CEDAR (DRM 2.50.0 / 5.15.5-223-tkg-bmq, LLVM 14.0.0)
    GL_VERSION: 3.1 Mesa 22.0.0-devel (git-145b0711fc)
00:00:15.342: [INFO][main] Settings persisted
00:00:19.704: [INFO][Library Search] Starting Library search in /home/e404nnf/.polyrhythmmania/Levels
00:00:19.705: [INFO][Library Search] [Library Search] Possible files found: 5
00:00:19.739: [INFO][Library Search] [Library Search] Levels read: 5 (took 34.32304 ms)
00:00:31.847: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen
00:00:00.546: [INFO][main] Initialized all 8 fonts in 0.023835 ms
00:00:00.596: [INFO][main] [Settings] Migrated old setting settings_onlyDefaultPalette, previously was false
00:00:00.640: [INFO][main] Attaching to mixer from settings: Generic [plughw:1,0]
00:00:00.646: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen
00:00:00.793: [INFO][main] [DiscordCore] Loaded successfully.
00:00:01.377: [INFO][GitHub version checker] Got version from server: v1.1.1
00:00:01.431: [INFO][main] Supported mixer: HDMI [plughw:0,3]
00:00:01.431: [INFO][main] Supported mixer: Generic [plughw:1,0]
00:00:01.512: [DEBUG][Main Menu music decoder] Starting main menu music decode
00:00:01.516: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1600x900 (logical 1600x900)
00:00:01.540: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to paintbox.transition.TransitionScreen
00:00:01.951: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen
00:00:02.194: [DEBUG][main] Updated main menu framebuffers to be backbuffer 1280x720 (logical 1280x720)
00:00:02.449: [DEBUG][Main Menu music decoder] Finished main menu music decode
Exception in thread "DaemonJavaSoundAudioIO" javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 48000.0 Hz, 16 bit, stereo, 4 bytes/frame, big-endian not supported.
	at java.desktop/com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(DirectAudioDevice.java:484)
	at java.desktop/com.sun.media.sound.AbstractDataLine.open(AbstractDataLine.java:115)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO.create(DaemonJavaSoundAudioIO.kt:62)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO.access$create(DaemonJavaSoundAudioIO.kt:23)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO$start$1.invoke(DaemonJavaSoundAudioIO.kt:170)
	at polyrhythmmania.soundsystem.beads.DaemonJavaSoundAudioIO$start$1.invoke(DaemonJavaSoundAudioIO.kt:169)
	at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)
00:00:32.168: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen
00:00:41.360: [INFO][main] Starting dispose call
00:00:41.364: [INFO][main] Dispose call finished, goodbye!

(Optional) Other useful information

This issue was split off from #41 created by @E404NNF.

From preliminary investigation, this is an edge case where exactly one line is permitted to be opened on the sound system. Most systems will allow more than one line to be open at a time. In certain cases in Polyrhythm Mania, more than one line is open at a time, such as during the loading transition from the main menu to gameplay, or in the editor when loading a project.

[Bug]: Texture pack not switching back when restarting level

Version

v1.0.0-20210826b

Operating System

Windows 10

Problem Description

When you play a .prmania level through to the end, then start over, it keeps the last active texture pack instead of switching back to the "Starting Texture Pack".

Steps to Reproduce Problem

  1. Play a .prmania level that switches texture packs at some point during the level.
  2. Get to the results screen and choose "Start Over", or pause the game once it has switched and choose "Start Over".
  3. The texture pack should stay as the last one that was being used.

Relevant log output

==============
AUTO-GENERATED
==============

Program Specifications:
    Launch arguments: []
    Version: v1.0.0-20210826b
    Application type: Desktop
    LazySound loading enabled: true

System Specifications:
    Java Version: 1.8.0_292
    Java Vendor: AdoptOpenJDK
    Kotlin Version: 1.5.21
    OS Name: Windows 10
    OS Version: 10.0
    OS Arch: amd64
    JVM memory available: 3714048 KiB

Graphics Specifications:
    Resolution: 1280x720
    Fullscreen: false
    GL_VENDOR: NVIDIA Corporation
    GL_RENDERER: GeForce RTX 2070 SUPER/PCIe/SSE2
    GL_VERSION: 4.6.0 NVIDIA 460.79



00:00:00.661: [INFO][main] Initialized all 8 fonts in 0.1274 ms00:00:00.661: [INFO][main] Initialized all 8 fonts in 0.1274 ms

00:00:00.809: [INFO][main] Attaching to mixer from settings: Primary Sound Driver00:00:00.809: [INFO][main] Attaching to mixer from settings: Primary Sound Driver

00:00:00.814: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen00:00:00.814: [DEBUG][main] Changed screens from null to polyrhythmmania.init.AssetRegistryLoadingScreen

00:00:01.525: [INFO][GitHub version checker] Got version from server: v1.0.000:00:01.525: [INFO][GitHub version checker] Got version from server: v1.0.0

00:00:01.769: [DEBUG][Main Menu music decoder] Starting main menu music decode00:00:01.769: [DEBUG][Main Menu music decoder] Starting main menu music decode

00:00:01.903: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:00:01.903: [DEBUG][main] Changed screens from polyrhythmmania.init.AssetRegistryLoadingScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:00:02.712: [DEBUG][Main Menu music decoder] Finished main menu music decode00:00:02.712: [DEBUG][Main Menu music decoder] Finished main menu music decode

00:00:06.165: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:00:06.165: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:00:06.374: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)00:00:06.374: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)

00:00:06.653: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:00:06.653: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:02:27.870: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:02:27.870: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:02:28.162: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:02:28.162: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:02:31.121: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:02:31.121: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:02:31.131: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)00:02:31.131: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)

00:02:31.419: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:02:31.419: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:03:42.359: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:03:42.359: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:03:43.019: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen00:03:43.019: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

00:04:01.353: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen00:04:01.353: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

00:04:01.796: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:04:01.796: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:07:43.921: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:07:43.921: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:07:43.931: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)00:07:43.931: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)

00:07:44.220: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:07:44.220: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:10:01.454: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:10:01.454: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:10:02.120: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen00:10:02.120: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

00:10:34.337: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen00:10:34.337: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

00:10:34.781: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:10:34.781: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:11:01.654: [INFO][main] Settings persisted00:11:01.654: [INFO][main] Settings persisted

00:11:03.355: [INFO][main] Settings persisted00:11:03.355: [INFO][main] Settings persisted

00:11:05.005: [INFO][main] Settings persisted00:11:05.005: [INFO][main] Settings persisted

00:18:50.990: [INFO][main] Settings persisted00:18:50.990: [INFO][main] Settings persisted

00:18:59.322: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:18:59.322: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:18:59.333: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)00:18:59.333: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)

00:18:59.621: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:18:59.621: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:19:03.421: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:19:03.421: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:19:03.708: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:19:03.708: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:19:11.739: [INFO][main] Settings persisted00:19:11.739: [INFO][main] Settings persisted

00:19:29.206: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:19:29.206: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:19:29.216: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)00:19:29.216: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 0.011609977 and TimingBead was 0.053333335 (delta 0.041723356, force sync threshold 0.03)

00:19:29.504: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:19:29.504: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:20:08.137: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:20:08.137: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:20:08.441: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:20:08.441: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:20:20.305: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:20:20.305: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:20:20.622: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen00:20:20.622: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

00:21:59.122: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen00:21:59.122: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

00:21:59.788: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen00:21:59.788: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

00:23:04.222: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen00:23:04.222: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

00:23:04.675: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:23:04.675: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

00:23:08.954: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen00:23:08.954: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

00:23:09.655: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen00:23:09.655: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen

00:27:01.655: [DEBUG][main] Importing texture: piston_a.png00:27:01.655: [DEBUG][main] Importing texture: piston_a.png

00:28:11.206: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)00:28:11.206: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)

00:33:11.124: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)00:33:11.124: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)

00:38:11.297: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)00:38:11.297: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)

00:43:11.383: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)00:43:11.383: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: recovery_2021-08-27.prmania)

00:43:19.628: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen00:43:19.628: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen

00:43:19.929: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen00:43:19.929: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:24:43.291: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:24:43.291: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:24:43.605: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen02:24:43.605: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen

02:27:38.979: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 90.89974 and TimingBead was 90.86933 (delta 0.030410767, force sync threshold 0.03)02:27:38.979: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 90.89974 and TimingBead was 90.86933 (delta 0.030410767, force sync threshold 0.03)

02:28:39.338: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen02:28:39.338: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen

02:28:39.640: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:28:39.640: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:28:51.873: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:28:51.873: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:28:52.188: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:28:52.188: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:29:00.689: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:29:00.689: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:29:00.982: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:29:00.982: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:29:21.198: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:29:21.198: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:29:21.506: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen02:29:21.506: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen

02:29:50.555: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to null02:29:50.555: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to null

02:29:50.565: [DEBUG][main] Changed screens from null to polyrhythmmania.editor.EditorScreen02:29:50.565: [DEBUG][main] Changed screens from null to polyrhythmmania.editor.EditorScreen

02:34:50.553: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: showcase.autosave.prmania)02:34:50.553: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: showcase.autosave.prmania)

02:36:53.412: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 147.49667 and TimingBead was 147.46666 (delta 0.030014038, force sync threshold 0.03)02:36:53.412: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 147.49667 and TimingBead was 147.46666 (delta 0.030014038, force sync threshold 0.03)

02:39:50.569: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: showcase.autosave.prmania)02:39:50.569: [DEBUG][Editor Autosave] Autosave completed (interval: 5 min, filename: showcase.autosave.prmania)

02:42:23.356: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen02:42:23.356: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen

02:42:23.657: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:42:23.657: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:42:27.206: [WARN][main] Missing content for I18N key End State in bundle English ()02:42:27.206: [WARN][main] Missing content for I18N key End State in bundle English ()

02:42:36.873: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:42:36.873: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:42:37.190: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:42:37.190: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:42:41.102: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.9241855 and TimingBead was 3.8933334 (delta 0.03085208, force sync threshold 0.03)02:42:41.102: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 3.9241855 and TimingBead was 3.8933334 (delta 0.03085208, force sync threshold 0.03)

02:43:02.439: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:43:02.439: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:43:02.732: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:43:02.732: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:43:06.646: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:43:06.646: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:43:06.973: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen02:43:06.973: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.editor.EditorScreen

02:43:12.906: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to null02:43:12.906: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to null

02:43:12.916: [DEBUG][main] Changed screens from null to polyrhythmmania.editor.EditorScreen02:43:12.916: [DEBUG][main] Changed screens from null to polyrhythmmania.editor.EditorScreen

02:43:56.940: [DEBUG][main] Importing texture: piston_a.png02:43:56.940: [DEBUG][main] Importing texture: piston_a.png

02:44:29.156: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen02:44:29.156: [DEBUG][main] Changed screens from polyrhythmmania.editor.EditorScreen to paintbox.transition.TransitionScreen

02:44:29.457: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:44:29.457: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:44:33.115: [WARN][Thread-64] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack02:44:33.115: [WARN][Thread-64] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack

02:44:36.356: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:44:36.356: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:44:36.673: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:44:36.673: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:45:01.907: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:45:01.907: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:45:02.573: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen02:45:02.573: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

02:45:10.689: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen02:45:10.689: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

02:45:11.132: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:45:11.132: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:45:21.535: [WARN][Thread-67] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack02:45:21.535: [WARN][Thread-67] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack

02:46:16.257: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:46:16.257: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:46:16.558: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:46:16.558: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:46:41.806: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:46:41.806: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:46:42.101: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:46:42.101: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:47:04.200: [WARN][Thread-70] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack02:47:04.200: [WARN][Thread-70] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack

02:47:17.991: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:47:17.991: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:47:18.307: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:47:18.307: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:47:43.557: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:47:43.557: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:47:43.850: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen02:47:43.850: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

02:55:43.220: [WARN][Thread-73] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack02:55:43.220: [WARN][Thread-73] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack

02:55:46.356: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen02:55:46.356: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

02:55:46.673: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:55:46.673: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:56:11.906: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:56:11.906: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:56:12.573: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen02:56:12.573: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

02:56:42.309: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen02:56:42.309: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

02:56:43.107: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen02:56:43.107: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

02:57:08.340: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen02:57:08.340: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

02:57:09.007: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen02:57:09.007: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

03:05:07.256: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen03:05:07.256: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

03:05:07.700: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen03:05:07.700: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

03:07:31.849: [WARN][Thread-76] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack03:07:31.849: [WARN][Thread-76] [Container] Unknown tilesetConfig.texturePack.stockID 'cascading_custom', skipping stock texture pack

03:07:34.606: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen03:07:34.606: [DEBUG][main] Changed screens from polyrhythmmania.screen.mainmenu.MainMenuScreen to paintbox.transition.TransitionScreen

03:07:34.923: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen03:07:34.923: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

03:07:44.086: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.171919 and TimingBead was 9.141334 (delta 0.030585289, force sync threshold 0.03)03:07:44.086: [DEBUG][AdaptiveTimingProvider] AdaptiveTimingProvider Force sync: this was 9.171919 and TimingBead was 9.141334 (delta 0.030585289, force sync threshold 0.03)

03:07:50.657: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen03:07:50.657: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

03:07:51.489: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen03:07:51.489: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.PlayScreen

03:08:32.856: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen03:08:32.856: [DEBUG][main] Changed screens from polyrhythmmania.screen.PlayScreen to paintbox.transition.TransitionScreen

03:08:33.522: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen03:08:33.522: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.results.ResultsScreen

03:09:43.556: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen03:09:43.556: [DEBUG][main] Changed screens from polyrhythmmania.screen.results.ResultsScreen to paintbox.transition.TransitionScreen

03:09:43.999: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen03:09:43.999: [DEBUG][main] Changed screens from paintbox.transition.TransitionScreen to polyrhythmmania.screen.mainmenu.MainMenuScreen

03:09:47.539: [INFO][main] Starting dispose call03:09:47.539: [INFO][main] Starting dispose call

03:09:47.542: [INFO][main] Dispose call finished, goodbye!03:09:47.542: [INFO][main] Dispose call finished, goodbye!

(Optional) Other useful information

No response

[Bug]: Lightpad block (midi drumpad) doesn’t register inputs correctly

Version

V1.2.0-20220201a

Operating System

Windows 11

Problem Description

I tried using midikey2keywith my lightpad block to use it with polyrhythm heaven, but it’s not picking up the keystrokes specified, but when I try to input, it just fills in the slot with “unknown” rather than the keystroke

Steps to Reproduce Problem

Use midikey2key to turn your midi input into a keystroke

enter polyrhythm mania and go to input settings, try to use selected keystrokes

Relevant log output

No response

(Optional) Other useful information

No response

Make Tempo Change tool support arrow keys and WASD

I have to use scrolling, the problem is, I use a laptop with a touchpad, making it extremely hard to get the tempo just right.
RHRE3 supports this, but apparently, this doesnt work here
If you could add this, it would mean a lot to me! Thanks for reading
-Terraria Tree

[Bug]: Story Mode - Setting audio offset desyncs Robot MODE

Version

v2.0.1-20230506a

Operating System

Windows 10

Problem Description

Cues in the Robot MODE level occur at the wrong times after restarting the level if offset is negative.
Most things including sounds, cues, and music desync if offset is positive.

Steps to Reproduce Problem

For negative offset:

  1. Set audio offset below 0
  2. Start Robot MODE and wait until the opening scene finishes
  3. Restart the level in any way that skips the opening scene (Start Over in pause menu, Start Over after failure)

For positive offset:

  1. Set audio offset above 0
  2. Start Robot MODE

Relevant log output

No response

(Optional) Other useful information

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.