Rewrite of the previous rewrite, targeting NeoForge/MC 1.20.4.
This Minecraft mod extends Minecraft height and depth to be nearly infinite (at least a million blocks).
For the most up-to-date information about this mod and its related mods, as well as the newest downloads, please join us on the Cubic Chunks Discord.
Github - Cubic Chunks - 1.20.4 and above
Github - Cubic Chunks - 1.12.2 and lower
Note: you need git installed to do the following:
git clone --recursive
You need a git submodule for the project to compile. If you don't yet have the submodule but already cloned the repository:
git submodule update --init --recursive
To get latest version of the submodule:
git submodule update --recursive --remote
Configure commits to be ignored for git blame:
git config blame.ignoreRevsFile .git-blame-ignore-revs
If running with IntelliJ, ensure that io.github.opencubicchunks.[folder name].main
is selected, not [folder name].main
:
- All mixin methods and fields must have a
cc_
prefix // todo automate this check in gh workflows. - If a class is significantly modified with mixins, it must have documentation explaining:
- The original vanilla behaviour, can mention important fields/methods.
- If the vanilla class has sufficient javadoc (through parchment), this can be skipped. Our javadoc should link to the parchment javadoc.
- The goal of all mixins targeting the class.
- The original vanilla behaviour, can mention important fields/methods.
- Any merged mixins must have tests associated with them.
- If a mixin is "untestable" its test class should have a comment explaining why it's untestable.
- Optionally a to-do (project task? issue?) suggesting integration tests when possible.
- All non-trivial mixins must have a comment explaining their purpose.
- Must pass checkstyle.
- Must build.
- All tests must pass (no regressions).
- //todo Investigate code coverage for mixin tests (jacoco? other link maybe it's bad) .
- If a mixin is "untestable" its test class should have a comment explaining why it's untestable.
- Any non-mixin class must have tests associated with it.
- The tests should reasonably cover all expected usage of the class (its external api).
- Any method(s) that can be reasonably unit tested must be. (TODO more contributing docs)