For day-to-day development you can launch Endless Dream directly from Gradle without building a distributable JAR first. TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/seraxis/lr2oraja-endlessdream/llms.txt
Use this file to discover all available pages before exploring further.
core:runShadow task compiles the project and runs it in place, letting you iterate quickly on code changes.
Pointing to a beatoraja install
By default,core:runShadow uses the assets/ folder inside the repository as its working directory. To run against real song data and a full game installation, set the -DrunDir system property to the absolute path of your beatoraja 0.8.8 directory. The game will use that directory as its working directory, reading your songs, skins, and configuration from there.
IntelliJ IDEA setup
Open the Gradle tool window
In IntelliJ IDEA, open the Gradle panel on the right side of the window. Expand core → application / shadow to find the available run and build tasks.
Locate the runShadow task
Expand core → Tasks → shadow and find the
runShadow task. Right-click it and select Modify Run Configuration (or click the three-dots menu next to the run configuration in the toolbar and choose Edit Configurations).Add the runDir JVM argument
In the run configuration editor, find the VM options (or JVM arguments) field and add:Use the full absolute path to your beatoraja installation directory. On macOS and Linux, use forward slashes without quotes if the path contains no spaces.
(Optional) Enable IR testing
To test Internet Ranking (IR) dependent changes, append the When both
useIR property to the same VM options field:runDir and useIR=true are set, the build system automatically configures the -DcustomIRDirectory to point to the ir/ subdirectory of your beatoraja install.There is a known bug with the
useIR property. Check the linked issue for the current status and any workarounds before relying on this flag.Resolving “Cannot Resolve Symbols” in IntelliJ
IntelliJ IDEA sometimes cannot identify the project submodules, which causes missing class errors such asbms.model.*. This does not affect the ability to build or run the project, but it makes working with the code harder.
First verify that If the submodule folders are present but symbols are still unresolved, go to File → Project Structure → Modules → core → Dependencies → Add → JARs or Directories and add both
core/dependencies/ contains both the jbms-parser and jbmstable-parser folders. If they are missing, run the following command to fetch them:./core/dependencies/jbms-parser and ./core/dependencies/jbmstable-parser, then click Apply.Running from the command line
You can also run the project directly from a terminal. Pass the same system properties you would use in IntelliJ.-DuseIR=true: