All versions are available here
Compiling Iron Tanks - For those that want the latest unreleased features.
Contributing - For those that want to help out.
FAQ - For those that have questions.
IMPORTANT: Please report any issues you have as there might be some problems with the documentation. Also make sure you know EXACTLY what you're doing before proceeding! We are not responsible if your computer crashes, becomes corrupted, etc. 🙈
The Java JDK is used to compile Iron Tanks.
- 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
- 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_51
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
- 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, either try the steps again or check the FAQ.
Gradle is used to execute the various build tasks when compiling Iron Tanks.
- Download and install Gradle.
- Windows/Mac download link. You only need the binaries, but choose whatever flavor you want.
- Unzip the package and put it wherever you want, eg
C:\Gradle
.
- Unzip the package and put it wherever you want, eg
- 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/gradle-bin
- Archlinux: You'll have to install it from the AUR.
- Ubuntu/Debian:
apt-get install gradle
- Fedora: Install Gradle manually from its website (see above), as Fedora ships a "broken" version of Gradle. Use
yum install gradle
only if you know what you're doing.
- Gentoo:
- Windows/Mac download link. You only need the binaries, but choose whatever flavor you want.
- Windows: Set environment variables for Gradle.
- Go back to
Environment Variables
and then create a new system variable. - For
Variable Name
, inputGRADLE_HOME
. - For
Variable Value
, input something similar toC:\Gradle-1.11
exactly as shown (or wherever your Gradle installation is), and clickOk
. - Scroll down to
Path
again, and append;%GRADLE_HOME%\bin
EXACTLY AS SHOWN and clickOk
. Once again, double-check the location.
- Go back to
- Open up your command line and run
gradle
. If it says "Welcome to Gradle [version].", then you're good to go. If not, either try the steps again or check the FAQ.
Git is used to clone Iron Tanks 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 Iron Tank's source (eg
C:\Github
) by executingcd [folder location]
. If choosing a location other thanC:\Github
, just remember that when following the instructions. - Execute
git clone https://github.com/indemnity83/irontank.git
. This will download Iron Tank's source into anirontank
folder such asC:\Github\irontank
. - Right now, you should have a directory that looks something like:
Github
\-irontank
\-irontank's files (should have `build.gradle`)
- Execute
gradle setupCiWorkspace
in order to set up Forge and download the necessary libraries to build Iron Tanks. This might take some time, please be patient ⌚.- You will generally only have to do this when the Forge version in
build.properties
changes.
- You will generally only have to do this when the Forge version in
- Execute
gradle 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
- Navigate to
C:\Github\irontank\build\libs
.- You should see a
.jar
file namedIronTanks-x.y.z-#.jar
, where x.y.z is the Minecraft version number and # is the mod version.- NOTE:
null
means that you are missing abuild_number
value inbuild.properties
or that your CI environment is set up incorrectly-it is totally safe to ignore.
- NOTE:
- 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 wherever you cloned irontank in the console.
- Make sure you have not made any changes to the local repository, or else there might be issues with Git.
- If there are local changes, try reverting them to the status that they were when you last updated your repository by executing
git reset HEAD --hard
.
- If there are local changes, try reverting them to the status that they were when you last updated your repository by executing
- 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 🐛 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 execute
git commit -a
andgit push
in your command line.
- If you're making changes locally, you'll have to execute
When you finish up your change 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 successfully rebased things simply push your cleaned up commits by executing
git push -f
.
- 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!
Iron Tanks crashes every time 💣? Have a suggestion? Found a 🐛? Create an issue now!
- Make sure your issue hasn't already been answered or fixed by searching for it. 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's title (something that summarizes your issue), and then create a detailed description ("Hey indemnity83, could you add/change xxx?" or "Hey, found an exploit: stuff").
- If you are reporting a bug report from an unofficial version, make sure you include the following:
- Commit SHA (usually located in a changelog or the jar name itself)
- ForgeModLoader log
- Server log if applicable
- Detailed description of the bug and pictures if applicable
- If you are reporting a bug report from an unofficial version, make sure you include the following:
- Click
Submit new issue
, and wait for feedback! 💥
This software is licensed under the MIT license
Shamelessly based this README off pahimar's version.