MineColonies
MineColonies is an interactive building mod that allows you to create a thriving town within Minecraft. It lets your leadership skills soar by providing you with everything you need to build your kingdom. MineColonies gives you the flexibility to create a colony as unique as every player. With so many options, you'll create a different colony every time, adapt it to any biome, build inside a mountain, on top of one, under the ocean, or in the sky.
The limit is your imagination!
MineColonies features NPC workers such as Builders, Farmers, Fishers, Foresters, Guards, Miners, Smelters, Bakers, Cooks, Couriers, five types of animal herders, Composters, and many more, with even more being developed and added as the mod grows.
It also includes specialized buildings such as the Warehouse, House, Town Hall, Barracks, Library, University, and even the School.
Website:
For Users
You can find all our versions on Curseforge:
https://www.curseforge.com/minecraft/mc-mods/minecolonies/files/all
If you want to chat with the developers and join our amazing community:
https://discord.minecolonies.com
Creating an Issue
MineColonies crashes every time? 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
- Choose which type of issue you want to create.
- Fill in the form. Don't leave anything out!
- Click
Submit New Issue
and wait for a response!
For Developers
Compiling MineColonies
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! It's not our fault if your OS crashes, becomes corrupted, etc.
Setup Java
The Java JDK is used to compile MineColonies.
- Download and install the Java JDK 8.
- Windows: Choose OpenJDK 8 (LTS) version and HotSpot JVM, then click the
latest release
button. After the download is complete, open the file, accept the license agreement, and in a custom setup make sure thatAdd to Path
andSet JAVA_HOME
are set toEntire feature will be installed on your local hard drive
. Then chooseInstall
and wait for the installation to finish. - 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/openjdk-bin:8
- Archlinux:
pacman -S jdk8-openjdk
- Ubuntu/Debian:
apt-get install openjdk-8-jdk
- Fedora:
yum install java-1.8.0-openjdk
- Gentoo:
- Windows: Choose OpenJDK 8 (LTS) version and HotSpot JVM, then click the
- Open up your command line and run
javac
. If it spews out a bunch of possible options and the usage, you're good to go. If not, try the steps again.
Troubleshooting
If the javac
command does not work on Windows:
- 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.8.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 to make sure.
Setup Gradle (Optional)
Gradle is used to execute the various build tasks when compiling MineColonies.
- 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, for example,
C:\Gradle
.
- Unzip the package and put it wherever you want, for example,
- 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-3.0
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, try the steps again.
Setup Git
Git is used to clone MineColonies and update your local copy.
- Download and install Git here.
- Optional: Download and install a Git GUI client, such as Gitkraken, SourceTree, GitHub for Windows/Mac, SmartGitHg, TortoiseGit, etc. A nice list is available here.
Setup MineColonies (Command Line)
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 the MineColonies source (e.g.,
C:\GitHub\MineColonies\
) by executingcd [folder location]
. This location is known asbasefolder
from now on. - Execute
git clone https://github.com/Minecolonies/minecolonies.git
. This will download MineColonies' source intobasefolder
. - Right now, you should have a directory that looks something like this:
basefolder
\-MineColonies
\-MineColonies' files (should have `build.gradle`)
Setup MineColonies (GitKraken)
If you decide to go with a GUI client like GitKraken:
- Open GitKraken
- Click
File → Clone Repo
- Select GitHub.com and choose a base folder to clone to.
- Write MineColonies in the "Repository to Clone" and select the one by ldtteam.
- Click 'Clone the Repo'.
Compile MineColonies (Command Line)
- Navigate to the MineColonies folder and run a
dir
to make sure thebuild.gradle
file is where you expect it to be. - Execute
gradlew build
. This first sets up Forge and downloads the necessary libraries to build MineColonies. Be patient, as this may take a while.- If you did everything right,
BUILD SUCCESSFUL
will be displayed after it finishes. - If you see
BUILD FAILED
, check the error output (it should be right aroundBUILD FAILED
), fix everything (if possible), and try again.
- If you did everything right,
- Go to
basefolder\MineColonies\build\libs
.- You should see a
.jar
file namedMineColonies-universal-null.jar
.
- You should see a
- Copy the jar into your Minecraft
mods
folder, and you are done! (~/.minecraft/mods
on Linux) - Alternatively, you can also run
./gradlew runClient
to start Minecraft with this jar.
Compile MineColonies (Intellij)
- Right-click the
build.gradle
file (or the background of the folder it's in) and selectOpen Folder as Intellij Project
. - Select
Auto Import
and make sure a valid Gradle and JVM are selected.
- This will prepare some of the libraries used by Forge.
- Click
View → Tool Windows → Gradle
. - In the Gradle view, expand the options to
Tasks → fg_runs
. - Click the small refresh symbol in the upper left of the Gradle view. This sets up Forge and downloads the necessary libraries to build MineColonies.
- Execute
genIntellijRuns
and restart Intellij. - You will see a runClient and runServer startup configuration in the dropdown at the top right next to the green "run" button. Select one and press "run".
- If it doesn't start and throws a lot of errors, try another refresh. This often does wonders.
- If you want to produce a running jar, execute the
build
task. This will result in a runnable jar file inbasefolder\MineColonies\build\libs
.
Troubleshooting
If Gradle synchronization fails, make sure:
File → Project structure → Project → Project SDK
is set to your installed JDK version.File → Settings → Build, Execution, Deployment → Build Tools → Gradle → Gradle JVM
is set to your installed JDK version.
Updating Your Repository
To get the most up-to-date builds, you'll have to update your local repository periodically.
- Open up your command line.
- Navigate to
basefolder
in the console. - Ensure you have not made any changes to the local repository (if you did, there might be issues with Git).
- If you have, try reverting them to their status when you last updated your repository.
- Execute
git pull version/1.16.3
. This pulls all commits from the official repository that do not yet exist on your local repository and updates it (with GitKraken, click the small pull arrow at the top).
Troubleshooting
- Sometimes Gradle tasks fail because of missing memory. For that, you can find system-wide settings in the
.gradle
folder of yourHOME
directory (~/.gradle/gradle.properties
or on Windows inC:\Users\username\.gradle\gradle.properties
). - Sometimes after a branch change, libraries can not be resolved. Running another refresh in IntelliJ or the command line usually solves this issue.
Contributing
Submitting a PR
Found a bug in our 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. - Make your changes and commit them.
- If you're making changes locally, you'll have to do
git commit -a
andgit push
in your command line (or with GitKraken stage the changes, commit them, and push them first).
- If you're making changes locally, you'll have to do
- Click
Pull Request
in the middle. - Click 'New pull request' to create a pull request for this comparison, enter your PR's title, and create a detailed description telling us what you changed.
- Click
Create pull request
and wait for feedback!