Jump to content

Teaching Coding with Minecraft Forge?


Recommended Posts



I am a technology teacher and we are trying to teach kids how to code through Minecraft Modding.

We would like to use the Forge API to do this, but I wanted to make sure that we are abiding by the license of the software before we proceed.


Could someone in a position to comment on this please contact me to discuss this further or if you know who I should talk to please let me know.



Link to comment
Share on other sites

What exactly are you wanting to do?

We have no issue with using Forge in order to educate people. We actually encourage it.

We make great strives to try and cleanup the minecraft code base so it's easier to learn from.


There is a project out there that you may want to talk to called MCEdu. May be something you want to start off with.


Our license is fairly simple, you can do what you want as long as you follow a few basic things:

1) Don't claim our work as yours

2) Do not directly make money off our work

3) Don't be a twat.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Hey Lexmanos,


The only question I still have is about MCP.

As I'm sure you know, the license on the MCP website says that you are not allowed to:

Release modified or unmodified versions of MCP anywhere.


We just want to make sure that if we have our students use Forge, we are not violating their terms of use.



Link to comment
Share on other sites

Forge has permission to download and distribute parts of MCP. We don't actually ship MCP we ship a condensed version of the conf folder which is the mappings.

Our install scripts download MCP from there web site directly.


If you are concerned about MCP though, you can e-mail them and get permissions yourself.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

  • 3 weeks later...

Hi LexManos,

Thanks again for all the info.


I'm really sorry that I have to ask about this, but before we begin our class and have all our students download Forge, I just need to confirm that you officially speak for Forge.


I tried to look through the site to find official Forge Staff / Employees... but could not say with 100% certainty who that would be.


I know it's a kind of awkward question to ask / answer, but I just wanted to confirm for sure to be thorough.


Thanks once again,

Link to comment
Share on other sites

  • 2 months later...

Hello again, Lexmanos,


I know I mentioned it above, but I teach students (ages 8-14) how to Make Minecraft Mods using Minecraft Forge (1.6.4).

The problem I'm having is that, as Forge is being developed, the original installer that we tell the kids to use (where they just double-click on install.cmd) goes in and out of working condition.


For example: Last week, we had the "http 403 forbidden error" that was resolved here:



Most recently, we are having "Failed to download" issues that I think are the result of the move over to the new Gradle system.


It's wonderful that so much development is always going on, but is it possible to have a link to a "src" download that would always stay in working condition, even if it is out of date?


What I mean is:

Could there be an older version of Forge (for 1.6.4) that would stay the same and not go out of order while Forge is being developed?


Thanks in advance,

Link to comment
Share on other sites

Thanks for your reply diesieben,


Do you know if the issue I linked is similar to the issue that is going on right now with the forge-1.6.4- download?

When you run Install.cmd right now, you get the following output:


================ Forge ModLoader Setup Start ===================

Checking MCP zip (may take time to download)

Extracting MCP to 'C:\Users\Aaron\Desktop\forge\mcp'

Setting up MCP

Patching commands.py

patching file commands.py

    Commands patch applied successfully

Copying FML conf

Creating Repackaged data

    Creating re-packaged srg

    Creating re-packaged exc

    Creating re-packaged MCP patches

Fixing MCP Workspace

Downloading 42 libraries

    launchwrapper-1.8.jar Done

    Download of asm-debug-all-4.1.jar failed md5 check, deleting

    Failed to download asm-debug-all-4.1.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m


    Download of asm-debug-all-4.1-sources.jar failed md5 check, deleting

    Failed to download asm-debug-all-4.1-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apac


    Download of scala-library-2.10.2.jar failed md5 check, deleting

    Failed to download scala-library-2.10.2.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.or


    Download of scala-library-2.10.2-sources.jar failed md5 check, deleting

    Failed to download scala-library-2.10.2-sources.jar from http://repo.maven.a'>http://repo.maven.a



    Download of scala-compiler-2.10.2.jar failed md5 check, deleting

    Failed to download scala-compiler-2.10.2.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.o


    Download of scala-compiler-2.10.2-sources.jar failed md5 check, deleting

    Failed to download scala-compiler-2.10.2-sources.jar from http://repo.maven.



    Download of jopt-simple-4.5.jar failed md5 check, deleting

    Failed to download jopt-simple-4.5.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/mav


    jopt-simple-4.5-sources.jar Done

    lzma-0.0.1.jar Done

    codecjorbis-20101023.jar Done

    codecwav-20101023.jar Done

    libraryjavasound-20101123.jar Done

    librarylwjglopenal-20100824.jar Done

    soundsystem-20120107.jar Done

    Download of lwjgl-2.9.0.jar failed md5 check, deleting

    Failed to download lwjgl-2.9.0.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/maven2/


    Download of lwjgl-2.9.0-sources.jar failed md5 check, deleting

    Failed to download lwjgl-2.9.0-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org


    Download of lwjgl_util-2.9.0.jar failed md5 check, deleting

    Failed to download lwjgl_util-2.9.0.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/ma


    Download of lwjgl_util-2.9.0-sources.jar failed md5 check, deleting

    Failed to download lwjgl_util-2.9.0-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apach


    argo-2.25_fixed.jar Done

    argo-2.25.jar Done

    Download of argo-2.25-sources.jar failed md5 check, deleting

    Failed to download argo-2.25-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m


    Download of bcprov-jdk15on-1.47.jar failed md5 check, deleting

    Failed to download bcprov-jdk15on-1.47.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org


    Download of bcprov-jdk15on-1.47-sources.jar failed md5 check, deleting

    Failed to download bcprov-jdk15on-1.47-sources.jar from http://repo.maven.a'>http://repo.maven.ap



    guava-14.0.jar Done

    Download of guava-14.0-sources.jar failed md5 check, deleting

    Failed to download guava-14.0-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/


    commons-lang3-3.1.jar Done

    Download of commons-lang3-3.1-sources.jar failed md5 check, deleting

    Failed to download commons-lang3-3.1-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apac



    Download of commons-io-2.4.jar failed md5 check, deleting

    Failed to download commons-io-2.4.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/m'>http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/mave


    Download of commons-io-2.4-sources.jar failed md5 check, deleting

    Failed to download commons-io-2.4-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.


    jinput-2.0.5.jar Done

    Download of jinput-2.0.5-sources.jar failed md5 check, deleting

    Failed to download jinput-2.0.5-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.or


    jutils-1.0.0.jar Done

    Download of jutils-1.0.0-sources.jar failed md5 check, deleting

    Failed to download jutils-1.0.0-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.or


    gson-2.2.2.jar Done

    Download of gson-2.2.2-sources.jar failed md5 check, deleting

    Failed to download gson-2.2.2-sources.jar from http://repo.maven.a'>http://repo.maven.apac'>http://repo.maven.a'>http://repo.maven.apache.org/


    lwjgl-platform-2.9.0-natives-windows.jar Done

        Extracting OpenAL32.dll

        Extracting OpenAL64.dll

        Extracting lwjgl.dll

        Extracting lwjgl64.dll

    lwjgl-platform-2.9.0-natives-osx.jar Done

        Extracting liblwjgl.jnilib

        Extracting openal.dylib

    lwjgl-platform-2.9.0-natives-linux.jar Done

        Extracting liblwjgl.so

        Extracting liblwjgl64.so

        Extracting libopenal.so

        Extracting libopenal64.so

    jinput-platform-2.0.5-natives-windows.jar Done

        Extracting jinput-dx8.dll

        Extracting jinput-dx8_64.dll

        Extracting jinput-raw.dll

        Extracting jinput-raw_64.dll

        Extracting jinput-wintab.dll

    jinput-platform-2.0.5-natives-osx.jar Done

        Extracting libjinput-osx.jnilib

    jinput-platform-2.0.5-natives-linux.jar Done

        Extracting libjinput-linux.so

        Extracting libjinput-linux64.so

Backing up client

Downloaded 1.6.4.jar

Backing up server

Downloaded minecraft_server.1.6.4.jar

Something failed verifying minecraft files, see log for details.

Decompile Exception: 1

Press any key to continue . . .



Do you know if there's a fix for this current issue?

Is it also just editing a link in one of the config files?


Another question I have going forward is:

Will it be possible to continue using this version of the Forge src without switching over to the gradle system?


Thanks again,

Link to comment
Share on other sites

Hello Lucas,


I would eventually want to switch to 1.6.4 - but many of my students spent a long time learning 1.6.4 learning in this framework and we would like to continue using it for a while as we're in the middle of a semester...


We will eventually switch to 1.7, just probably in a while.


Do you have any ideas for a solution?



Link to comment
Share on other sites

Hey Lucas,


We found a temporary solution to this where we disabled the md5 checks in the fml.py and fml.json python scripts.

This solves the problem but I'm afraid it may only be a temporary / unsustainable solution.


Let me know if you're not sure what I'm talking about and I can elaborate.


Do you know if this fix has any negative consequences / if it will cause problems down the road?



Link to comment
Share on other sites

Again this is stuff we can not control as it's changes on OTHERS {Read: Mojang's and Maven Central's} servers that break our stuff.

Nothing we can do but update and adapt.

In the old python way that requires me to manually go in and edit the python, rebuild the src zips, reupload them to the servers and tell you to re-download them.

In the new Gradle system, it means that I fix them in our repo and your system automatically downloads those updates.

This is one of the MAJOR {but not the only} reasons why we moved over to the new Gradle system.

If you continue to use the python system it's at your own volition.

As laucus said, we have a few 1.6.4 builds that use the gradle system. The only "problem" with those builds and why they are not recomended is that they pre-maturely removed ModLoader compatibility. And rather then deal with dropping that mid-minecraft version. I just disabled the end user installers for those versions.


However if you're using the src version you're best off using the gradle as 1) It can make 953 compatible mods just fine 2) It's more future proof {nothing is ever fully future proof} 3) It is more reflective of how the future of Minecraft Modding is actually going to be, esp post 1.7.


So in short: We can not control what other people do, so either use what we say to use, or prepare to deal with the issues yourself.


I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...

Important Information

By using this site, you agree to our Terms of Use.