This is the TEALS repo for the development of the Minecraft projects and associated curriculum. The main project web site is at https://tealsk12.github.io/teals-minecraft.
NOTE: All information below is for developers of the TEALS Minecraft project. To use the Minecraft project (if you are an instructor or student), then download the latest release and follow the instructions in top-level README file.
This project is targeted for development on Windows. In addition to a standard Windows environment (I'm running Win10), you should also have the following:
- Java 1.6+
- Either Eclipse or IntelliJ IDEA. Other IDE's may work; if so, please augment and document.
In addition to the files and directories of a standard clone of this repo, you may also want to
set up a test/
directory. This directory is ignored in the repo, and is intended for local test
setups of the TealsMC distributed zip file. You can use this directory to hold a built release
from the build
directory. For example, running 'make build' might create
out\tealsmc-idea-1.0.1.zip
, which you could then extract to test
and try out from there.
-
At the root of the tree, run 'make dev-setup' to set up your local clone.
-
Start Eclipse. For the workspace choose the Forge directory at the root of your clone.
-
Run "File > New > Project...". Select "Java Project" and hit Next.
-
Project name = "production" (all lowercase)
-
Hit Finish.
-
Select Run > Run Configurations...
-
Select "Java Application". Hit the "New Launch Confuration" icon (it looks like a blank page with a plus sign, located in the upper left).
-
On "Main" tab, Main class = GradleStart. Hit the Run button.
-
After several seconds, you should see the Minecraft client splash screen.
-
At the root of the tree, run 'make dev-setup' to set up your local clone.
-
Start IntelliJ, and choose the "Open" option at the splash screen. Select the Forge folder at the root of your project clone.
-
Verify that you have the Java SDK set up. From the left pane, open
production/src/tealsmc.mods/blocks/BlocksModule
. If you see a message near the top of the file that the SDK hasn't yet been configured, hit the link and select the SDK. -
Add a new configuration ("Run > Edit Configurations...").
-
Hit the plus symbol in the upper left. Choose "Application".
-
Name:
TealsMC Client
Main class:GradleStart
Working directory:...\Forge\production
-
Hit OK to close the dialog box.
-
Run the TealsMC Client.
Use the make.cmd
file at the root of the project to build the various components of the TealsMC
project. Generated files will go to the root out
folder. Run make.cmd
without arguments to see a
list of options. The more important targets are:
- build — Generates the
tealsmc-x.y.z-eclipse.zip
andtealsmc-x.y.z-idea.zip
archives for distribution to students.
-
Ensure that
version.txt
contains the current release number. This project uses semantic versioning. Semantic versioning uses three values: MAJOR.MINOR.PATCH.- Increment the PATCH number if you're making a bug fix that is backwards compatible with the prior release.
- Increment the MINOR number (and reset PATCH to zero) if you're adding functionality that is backwards compatible with the prior release.
- Increment the MAJOR number (and reset MINOR and PATCH values to zero) if a release is somehow backwards incompatible with the prior release.
-
Verify that
CHANGELOG.md
contains a good description of the changes for this release. -
Update the release date in
CHANGELOG.md
. -
Review
build/README-Distrib.txt
for content and make any necessary changes. -
Build the new releases using
make all
from the root of the project. This will create the release Zip files in theout/
directory. -
Create a release tag at the current release point:
> git tag -a vX.Y.Z
This will create the tag
vX.Y.Z
at the current HEAD commit. In the editor, add all of the relevant changelog items fromCHANGELOG.md
. When done, push the new release tag up to GitHub:> git push origin vX.Y.Z
-
Now go to the
teals-minecraft
release page and hit the "Draft a new release" button. Enter the new release tag, ensure that the target branch ismaster
, enter the title (for example, "v1.1.0"). Finally add the changelog items in the description. After this, drag the release archives (tealsmc-X.Y.Z-eclipse.zip
andtealsmc-X.Y.Z-intellij.zip
) to the upload area. Finally, hit the "Publish release" button. -
Bump the version in the
version.txt
file in the project root. -
Start a new release section in
CHANGELOG.md
.
See the TEALS Minecraft wiki for more project information.