diff --git a/Readme.md b/Readme.md
index 187478a33..316371c98 100644
--- a/Readme.md
+++ b/Readme.md
@@ -1,18 +1,16 @@
#
Distant Horizons
+_See farther without turning your game into a slide show._
-> A mod that adds a Level of Detail System to Minecraft
-
+
# What is Distant Horizons?
-Distant Horizons is a Minecraft mod that adds a Level Of Detail (LOD) system to\
-render simplified chunks outside the normal render distance\
-allowing for an increased view distance without harming performance.
+Distant Horizons is a mod which implements a [Level of Detail](https://en.wikipedia.org/wiki/Level_of_detail_(computer_graphics)) system to Minecraft.\
+This allows for far greater render distances without harming performance by gradually lowering the quality of distant terrain.
-In other words: this mod lets you see farther without turning your game into a slide show.\
-If you want to see a quick demo, check out a video covering the mod here:
+Below is a video demonstrating the system:
-
+
@@ -81,7 +79,8 @@ Modmenu: 1.16.22
- 1.18.1, 1.18
- 1.19.1, 1.19
- 1.19.3
-
+
+
### Plugin and Library versions
@@ -101,7 +100,7 @@ Java Preprocessor plugin: Manifold Preprocessor
Visit https://www.oracle.com/java/technologies/downloads/ for installers.
* Git or someway to clone git projects.
Visit https://git-scm.com/ for installers.
-* (Not required) Any Java IDE with plugins that support Manifold, for example Intellij IDEA.
+* (Not required) Any Java IDE with plugins that support Manifold, for example IntelliJ IDEA.
**If using IntelliJ:**
1. Install the Manifold plugin
@@ -114,17 +113,20 @@ Java Preprocessor plugin: Manifold Preprocessor
3. Make sure eclipse has the JDK 17 installed. (This is needed so that eclipse can run minecraft)
4. Import the project into eclipse
-
+
## Switching Versions
To switch between different Minecraft versions, change `mcVer=1.?` in the `gradle.properties` file.
-If running in an IDE, to ensure the IDE noticed the version change, run any gradle command to refresh gradle. (In IntellJ you will also need to do a gradle sync if it didn't happen automatically.)
->Note: There may be a `java.nio.file.FileSystemException` thrown when running the command after switching versions. To fix it, either restart your IDE (as your IDE is probably locking a file) or use a tool like LockHunter to unlock the linked file(s). (Generally it is a lib file under `common\build\lib`, `forge\build\lib`, or `fabric\build\lib`). \
-> If anyone knows how to solve this issue please let us know here: \
-> https://gitlab.com/jeseibel/distant-horizons/-/issues/233
+If running in an IDE, to ensure the IDE noticed the version change, run any gradle command to refresh gradle.\
+In IntelliJ, you will also need to do a gradle sync if it didn't happen automatically.
+>There may be a `java.nio.file.FileSystemException` thrown when running the command after switching versions.\
+To fix it, either restart your IDE (as your IDE is probably locking a file) or use a tool like LockHunter to unlock the linked file(s).\
+(Generally it is a lib file under `common\build\lib`, `forge\build\lib`, or `fabric\build\lib`.)
+> If anyone knows how to solve this issue please let us know here:
+> https://gitlab.com/jeseibel/distant-horizons/-/issues/233
@@ -138,7 +140,7 @@ From the File Explorer:
2. Download the core from https://gitlab.com/jeseibel/distant-horizons-core and extract into a folder called `coreSubProjects`
3. Open a terminal emulator in the project folder (On Windows you can type `cmd` in the title bar)
4. Run the commands: `./gradlew assemble` (You may need to use a `.\` on Windows)
-5. Merge the jars wih `./gradlew mergeJars`
+5. Merge the jars with `./gradlew mergeJars`
6. The compiled jar file will be in the folder `Merged`
From the command line:
@@ -150,9 +152,8 @@ From the command line:
Run tests with: `./gradlew test`
->Note: You can add the arg: `-PmcVer=?` to tell gradle to build a selected MC version instead of having to modify the `gradle.properties` file. \
-> Example: `./gradlew assemble -PmcVer=1.18.2`
-
+>Note: You can add the argument `-PmcVer=?` to tell gradle to build a selected MC version instead of having to modify the `gradle.properties` file.\
+> For example: `./gradlew assemble -PmcVer=1.18.2`
@@ -162,7 +163,6 @@ Run tests with: `./gradlew test`
You can also locally compile the DH jars without a Java environment by using Docker. Where `` is the version of Minecraft to compile for (ie `1.20.1`), or the keyword `all`. See [Versions](#minecraft-and-library-versions) for a list of all supported values.
-
## Other commands
@@ -171,6 +171,7 @@ You can also locally compile the DH jars without a Java environment by using Doc
`./gradlew clean` to delete any compiled code.
+
## Note to self
@@ -178,7 +179,7 @@ The Minecraft source code is NOT added to your workspace in an editable way. Min
Source code uses Mojang mappings & [Parchment](https://parchmentmc.org/) mappings.
-To generate the source code run `./gradlew genSources`\
+To generate the source code run `./gradlew genSources`
If your IDE fails to auto-detect the source jars when browsing Minecraft classes; manually select the JAR file ending with -sources.jar when prompted by your IDE.
(In IntelliJ it's at the top where it says "choose sources" when browsing a Minecraft class)
@@ -186,11 +187,11 @@ If your IDE fails to auto-detect the source jars when browsing Minecraft classes
## Other Useful commands
-Run the standalone jar: `./gradlew run`\
-Build the standalone jar: `./gradlew core:build`\
-Only build Fabric: `./gradlew fabric:assemble` or `./gradlew fabric:build`\
-Only build Forge: `./gradlew fabric:assemble` or `./gradlew forge:build`\
-Run the Fabric client (for debugging): `./gradlew fabric:runClient`\
+Run the standalone jar: `./gradlew run`
+Build the standalone jar: `./gradlew core:build`
+Only build Fabric: `./gradlew fabric:assemble` or `./gradlew fabric:build`
+Only build Forge: `./gradlew forge:assemble` or `./gradlew forge:build`
+Run the Fabric client (for debugging): `./gradlew fabric:runClient`
Run the Forge client (for debugging): `./gradlew forge:runClient`
To build all versions: `./buildAll` (all builds will end up in the `Merged` folder)
@@ -205,7 +206,7 @@ https://github.com/PacifistMC/Forgix
LZ4 for Java (data compression)\
https://github.com/lz4/lz4-java
-NightConfig for Json & Toml (config handling)\
+NightConfig for JSON & TOML (config handling)\
https://github.com/TheElectronWill/night-config
SVG Salamander for SVG support (not being used atm)\