Compiling LunatriusCore - for those that want the latest unreleased features
Contributing - for those that want to help out
The Java JDK is used to compile LunatriusCore.
- Download and install the Java JDK.
- Windows/Mac download link. Scroll down, accept the
Oracle Binary Code License Agreement for Java SE
, and download it (if you have a 64-bit OS, please download the 64-bit version). - Linux: Installation methods for certain popular flavors of Linux are listed below. If your distribution is not listed, follow the instructions specific to your package manager or install it manually here.
- Gentoo:
emerge dev-java/oracle-jdk-bin
- Archlinux:
pacman -S jdk7-openjdk
- Ubuntu/Debian:
apt-get install openjdk-7-jdk
- Fedora:
yum install java-1.7.0-openjdk
- Gentoo:
- Windows/Mac download link. Scroll down, accept the
- Set up the environment.
- Windows: Set environment variables for the JDK.
- Go to
Control Panel\System and Security\System
, and click onAdvanced System Settings
on the left-hand side. - Click on
Environment Variables
. - Under
System Variables
, clickNew
. - For
Variable Name
, inputJAVA_HOME
. - For
Variable Value
, input something similar toC:\Program Files\Java\jdk1.7.0_45
exactly as shown (or wherever your Java JDK installation is), and clickOk
. - Scroll down to a variable named
Path
, and double-click on it. - Append
;%JAVA_HOME%\bin
EXACTLY AS SHOWN and clickOk
. Make sure the location is correct; double-check just to make sure.
- Go to
- Windows: Set environment variables for the JDK.
- Open up your command line and run
javac
. If it spews out a bunch of possible options and the usage, then you're good to go. If not try the steps again.
Git is used to clone LunatriusCore and update your local copy.
- Download and install Git here.
- Optional Download and install a Git GUI client, such as Github for Windows/Mac, SmartGitHg, TortoiseGit, etc. A nice list is available here.
This section assumes that you're using the command-line version of Git.
- Open up your command line.
- Navigate to a place where you want to download LunatriusCore's source (eg
C:\Development\Github\Minecraft\
) by executingcd [folder location]
. This location is known asmcdev
from now on. - Execute
git clone [email protected]:Lunatrius/LunatriusCore.git
. This will download LunatriusCore's source intomcdev
. - Right now, you should have a directory that looks something like:
mcdev
\-LunatriusCore
\-LunatriusCore's files (should have build.gradle)
- Execute
gradlew setupDevWorkspace
. This sets up Forge and downloads the necessary libraries to build LunatriusCore. This might take some time, be patient.- You will generally only have to do this once until the Forge version in
build.properties
changes.
- You will generally only have to do this once until the Forge version in
- Execute
gradlew build
. If you did everything right,BUILD SUCCESSFUL
will be displayed after it finishes. This should be relatively quick.- If you see
BUILD FAILED
, check the error output (it should be right aroundBUILD FAILED
), fix everything (if possible), and try again.
- If you see
- Go to
mcdev\LunatriusCore\build\libs
.- You should see a
.jar
file namedLunatriusCore-#.#.#-#.#.#.#-universal.jar
.
- You should see a
- Copy the jar into your Minecraft mods folder, and you are done!
In order to get the most up-to-date builds, you'll have to periodically update your local repository.
- Open up your command line.
- Navigate to
mcdev
in the console. - Make sure you have not made any changes to the local repository, or else there might be issues with Git.
- If you have, try reverting them to the status that they were when you last updated your repository.
- Execute
git pull master
. This pulls all commits from the official repository that do not yet exist on your local repository and updates it.
So you found a bug in the code? Think you can make it more efficient? Want to help in general? Great!
- If you haven't already, create a GitHub account.
- Click the
Fork
icon located at the top-right of this page (below your username). - Make the changes that you want to and commit them.
- If you're making changes locally, you'll have to do
git add -A
,git commit
andgit push
in your command line.
- If you're making changes locally, you'll have to do
- Click
Pull Request
at the right-hand side of the gray bar directly below your fork's name. - Click
Click to create a pull request for this comparison
, enter your pull request title, and create a detailed description explaining what you changed. - Click
Send pull request
, and wait for feedback!
I use this IDEA formatting. To be short:
- spaces for indentation
- braces on same lines
When you finish up your PR you'll want to squash them into a single commit (unless it makes sense to have them split).
- Make sure your working directory is clean by executing
git status
. - Execute
git rebase -i HEAD~X
whereX
is the amount of your commits. This will make sure you squash only your own commits. - You should now see a list of all your commits, prefixed with
pick
. Change all instances ofpick
(excluding the first!) intosquash
or simplys
. Then save/quit the editor once. - A second screen should show up, displaying all the commit messages (you may edit them, delete or add some). After your done save/quit the editor again.
- If git successfuly rebased things simply push your cleaned up commits by executing
git push -f
.
Crashing? Have a suggestion? Found a bug? Create an issue now!
- Make sure your issue hasn't already been answered or fixed. Also think about whether your issue is a valid one before submitting it.
- Go to the issues page.
- Click
New Issue
right belowStar
andFork
. - Enter your issue title (something that summarizes your issue), and then add a detailed description ("Hey, could you add/change xxx?" or "Hey, found an exploit: stuff").
- If you are reporting a bug, make sure you include the following:
- Version (can be found in the mcmod.info file or in the mod list)
- ForgeModLoader log (please use gists for large amounts of text!)
- Detailed description of the bug
- If you are reporting a bug, make sure you include the following:
- Click
Submit new issue
, and wait for feedback!
Shamelessly based this README off pahimar's version.