Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to TerraFirmaCraft Forums

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

  • Announcements

    • Dries007

      ATTENTION Forum Database Breach   03/04/2019

      There has been a breach of our database. Please make sure you change your password (use a password manager, like Lastpass).
      If you used this password anywhere else, change that too! The passwords themselves are stored hashed, but may old accounts still had old, insecure (by today's standards) hashes from back when they where created. This means they can be "cracked" more easily. Other leaked information includes: email, IP, account name.
      I'm trying my best to find out more and keep everyone up to date. Discord (http://invite.gg/TerraFirmaCraft) is the best option for up to date news and questions. I'm sorry for this, but the damage has been done. All I can do is try to make sure it doesn't happen again.
    • Claycorp

      This forum is now READ ONLY!   01/20/2020

      As of this post and forever into the future this forum has been put into READ ONLY MODE. There will be no new posts! A replacement is coming SoonTM . If you wish to stay up-to-date on whats going on or post your content. Please use the Discord or Sub-Reddit until the new forums are running.

      Any questions or comments can be directed to Claycorp on either platform.
Sign in to follow this  
Followers 0
Spore360

Addon Help

11 posts in this topic

I was wondering if anyone can help me with setting up Eclipse to make TFC addons. I couldn't find any other discussions about this so if some one can help me that would be great!

0

Share this post


Link to post
Share on other sites

1. Download Eclipse and ForgeSrc

2. Extract ForgeSrc to a separate folder ("tfc addon")

3. Edit "build.gradle":

Change "repositories" block (pay attention: not buildscript.repositories block)

and "dependencies" block

You perhaps will need to change TerraFirmaCraft and Waila version.

https://github.com/Deadrik/TFCraft/blob/master/build.gradle

repositories {    maven { // The repo from which to get waila	    name "Mobius Repo"	    url "http://mobiusstrip.eu/maven"    }    maven { // the repo from which to get NEI and stuff	    name 'CB Repo'	    url "http://chickenbones.net/maven/"    }}
dependencies {    compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"    compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')}

4. Add TFC mod jar to the "lib" folder.

5. Launch "gradlew setupDecompWorkspace --refresh-dependencies" (you can create .bat file or use cmd)

6. Launch "gradlew eclipse"

7. Launch Eclipse and set workspace folder to the folder/eclipse ("tfc addon/eclipse" in our case)

 

There are other ways to setting up Eclipse, but this is easiest as for me.

1

Share this post


Link to post
Share on other sites

This is what my file looks like, is that right?

buildscript {
    repositories {
        mavenCentral()
        maven { // The repo from which to get waila
            name "Mobius Repo"
            url "http://mobiusstrip.eu/maven"
        }
        maven { // the repo from which to get NEI and stuff
            name 'CB Repo'
            url "http://chickenbones.net/maven/"
        }
    }
    dependencies {
        classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
    }
}
 
apply plugin: 'forge'
 
version = "0.1"
archivesBaseName = "stoneagecraft"
 
minecraft {
    version = "1.7.10-10.13.2.1291"
    runDir = "eclipse"
}
 
dependencies {
compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"
compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')
    // you may put jars on which you depend on in ./libs
    // or you may define them like so..
    //compile "some.group:artifact:version:classifier"
    //compile "some.group:artifact:version"
   
    // real examples
    //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev'  // adds buildcraft to the dev env
    //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
 
    // for more info...
 
}
 
processResources
{
    // this will ensure that this task is redone when the versions change.
    inputs.property "version", project.version
    inputs.property "mcversion", project.minecraft.version
 
    // replace stuff in mcmod.info, nothing else
    from(sourceSets.main.resources.srcDirs) {
        include 'mcmod.info'
             
        // replace version and mcversion
        expand 'version':project.version, 'mcversion':project.minecraft.version
    }
     
    // copy everything else, thats not the mcmod.info
    from(sourceSets.main.resources.srcDirs) {
        exclude 'mcmod.info'
    }
}
 

Dumb question, why do I need Waila  and NEI? 

I did a whole bunch of Java tutorials, and was able to create blocks and items in vanilla. My problem right now is how to setup the workspace to make addons.

 

Build failed with these settings.

0

Share this post


Link to post
Share on other sites

1. Download Eclipse and ForgeSrc

2. Extract ForgeSrc to a separate folder ("tfc addon")

3. Edit "build.gradle":

Change "repositories" block (pay attention: not buildscript.repositories block)

and "dependencies" block

You perhaps will need to change TerraFirmaCraft and Waila version.

https://github.com/Deadrik/TFCraft/blob/master/build.gradle

repositories {    maven { // The repo from which to get waila	    name "Mobius Repo"	    url "http://mobiusstrip.eu/maven"    }    maven { // the repo from which to get NEI and stuff	    name 'CB Repo'	    url "http://chickenbones.net/maven/"    }}
dependencies {    compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"    compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')}

4. Add TFC mod jar to the "lib" folder.     Where is this lib folder? Or should it be after setting the workspace?

5. Launch "gradlew setupDecompWorkspace --refresh-dependencies" (you can create .bat file or use cmd)

6. Launch "gradlew eclipse"

7. Launch Eclipse and set workspace folder to the folder/eclipse ("tfc addon/eclipse" in our case)

 

There are other ways to setting up Eclipse, but this is easiest as for me.

0

Share this post


Link to post
Share on other sites

1. Download Eclipse and ForgeSrc

2. Extract ForgeSrc to a separate folder ("tfc addon")

3. Edit "build.gradle":

Change "repositories" block (pay attention: not buildscript.repositories block)

and "dependencies" block

You perhaps will need to change TerraFirmaCraft and Waila version.

https://github.com/Deadrik/TFCraft/blob/master/build.gradle

repositories {    maven { // The repo from which to get waila	    name "Mobius Repo"	    url "http://mobiusstrip.eu/maven"    }    maven { // the repo from which to get NEI and stuff	    name 'CB Repo'	    url "http://chickenbones.net/maven/"    }}
dependencies {    compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"    compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')}

4. Add TFC mod jar to the "lib" folder.

5. Launch "gradlew setupDecompWorkspace --refresh-dependencies" (you can create .bat file or use cmd)

6. Launch "gradlew eclipse"

7. Launch Eclipse and set workspace folder to the folder/eclipse ("tfc addon/eclipse" in our case)

 

There are other ways to setting up Eclipse, but this is easiest as for me.

So, Not in my wildest dreams I think I will be the next Bioxx.

I just finished a whole bunch of tutorials in Java. My conclusion:

Java is a easier then I though and harder then I realized.

Java is easy, but there is so much to learn that is just overwhelming.

Even after realizing that, I still want to have fun trying to create addons for TFC.

I was able to create some simple blocks and items for vanilla.

I need help setting up the workspace in eclipse.

The steps above fail if follow to the letter.

I would really appreciate if someone could give me detailed instructions on setting the workspace to create a addon for TFC.

Again I understand that I may not succeed in my endeavor, and even if I make a addon maybe no one will play with it. That's all besides the point for me, I will have fun trying. Also these instructions may help someone else.

Thanks for all the help.

0

Share this post


Link to post
Share on other sites

This is what my file looks like, is that right?

buildscript {
    repositories {
        mavenCentral()
        maven { // The repo from which to get waila
            name "Mobius Repo"
            url "http://mobiusstrip.eu/maven"
        }
        maven { // the repo from which to get NEI and stuff
            name 'CB Repo'
            url "http://chickenbones.net/maven/"
        }
    }
    dependencies {
        classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
    }
}
 
apply plugin: 'forge'
 
version = "0.1"
archivesBaseName = "stoneagecraft"
 
minecraft {
    version = "1.7.10-10.13.2.1291"
    runDir = "eclipse"
}
 
dependencies {
compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"
compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')
    // you may put jars on which you depend on in ./libs
    // or you may define them like so..
    //compile "some.group:artifact:version:classifier"
    //compile "some.group:artifact:version"
   
    // real examples
    //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev'  // adds buildcraft to the dev env
    //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
 
    // for more info...
 
}
 
processResources
{
    // this will ensure that this task is redone when the versions change.
    inputs.property "version", project.version
    inputs.property "mcversion", project.minecraft.version
 
    // replace stuff in mcmod.info, nothing else
    from(sourceSets.main.resources.srcDirs) {
        include 'mcmod.info'
             
        // replace version and mcversion
        expand 'version':project.version, 'mcversion':project.minecraft.version
    }
     
    // copy everything else, thats not the mcmod.info
    from(sourceSets.main.resources.srcDirs) {
        exclude 'mcmod.info'
    }
}
 

Dumb question, why do I need Waila  and NEI? 

I did a whole bunch of Java tutorials, and was able to create blocks and items in vanilla. My problem right now is how to setup the workspace to make addons.

 

Build failed with these settings.

You need Waila and NEI because TFC uses their methods and crashes without them (It happens only in eclipse and I don't know why. Waila and NEI will not be included to your mod and your mod will not crash without them)

Not right. You missed that:

Change "repositories" block (pay attention: not buildscript.repositories block)

Delete your build.gradle and extract from forge.zip again.

Here is how my build.gradle is look like:

buildscript {

  repositories {

  mavenCentral()

  maven {

  name = "forge"

  url = "http://files.minecraftforge.net/maven"

  }

  maven {

  name = "sonatype"

  url = "https://oss.sonatype.org/content/repositories/snapshots/"

  }

  }

  dependencies {

  classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'

  }

}

apply plugin: 'forge'

version = "1.0"

group= "your.mod.groupid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html

archivesBaseName = "YourModJarName"

minecraft {

  version = "1.7.10-10.13.2.1291"

  runDir = "eclipse"

}

repositories {

  maven { // The repo from which to get waila

  name "Mobius Repo"

  url "http://mobiusstrip.eu/maven"

  }

  maven { // the repo from which to get NEI and stuff

  name 'CB Repo'

  url "http://chickenbones.net/maven/"

  }

}

dependencies {

  compile "mcp.mobius.waila:Waila:1.5.8a_1.7.10"

 compile files('lib/[1.7.10]TerraFirmaCraft-0.79.15.538.jar')

}

processResources

{

  // this will ensure that this task is redone when the versions change.

  inputs.property "version", project.version

  inputs.property "mcversion", project.minecraft.version

  // replace stuff in mcmod.info, nothing else

  from(sourceSets.main.resources.srcDirs) {

  include 'mcmod.info'

 

  // replace version and mcversion

  expand 'version':project.version, 'mcversion':project.minecraft.version

  }

 

  // copy everything else, thats not the mcmod.info

  from(sourceSets.main.resources.srcDirs) {

  exclude 'mcmod.info'

  }

}

sourceSets {

  main {

  java {

  srcDirs 'src/java'

  }

  resources {

  srcDirs 'src/resources'

  }

  }

}

jar {

 destinationDir = file('jar')

}

Modify existing build.gradle, don't copy-paste all text - this is important.

 

4. Add TFC mod jar to the "lib" folder.     Where is this lib folder? Or should it be after setting the workspace?

In your mod folder. Create if doesn't exist.

Posted Image

0

Share this post


Link to post
Share on other sites

It works, at least I think it does. Now comes the fun part. Thank you very much..

0

Share this post


Link to post
Share on other sites

I setup the way Sladki said and I got to Eclipse with no errors, but I can't use the 'Run' button to see if I got Forge and TFC working correctly. It says there are no runnable classes.

0

Share this post


Link to post
Share on other sites

I used the method shown in this thread to create a dev environment, and I get a crash when I run it.

 

edit: Updated Crash Report, I'm using the newest version (79.19). Still getting a crash but I appears to be something different.

 

Crash Report

---- Minecraft Crash Report ----

// Oh - I know what I did wrong!

 

Time: 6/19/15 8:41 PM

Description: There was a severe problem during mod loading that has caused the game to fail

 

cpw.mods.fml.common.LoaderException: java.lang.NoSuchMethodError: net.minecraft.client.Minecraft.func_71410_x()Lnet/minecraft/client/Minecraft;

at cpw.mods.fml.common.LoadController.transition(LoadController.java:163)

at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:559)

at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:243)

at net.minecraft.client.Minecraft.startGame(Minecraft.java:522)

at net.minecraft.client.Minecraft.run(Minecraft.java:942)

at net.minecraft.client.main.Main.main(Main.java:164)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:483)

at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)

at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)

at GradleStart.main(Unknown Source)

Caused by: java.lang.NoSuchMethodError: net.minecraft.client.Minecraft.func_71410_x()Lnet/minecraft/client/Minecraft;

at com.bioxx.tfc.ClientProxy.getMinecraftDir(ClientProxy.java:348)

at com.bioxx.tfc.TerraFirmaCraft.loadSettings(TerraFirmaCraft.java:314)

at com.bioxx.tfc.TerraFirmaCraft.preInit(TerraFirmaCraft.java:121)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:483)

at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:483)

at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)

at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)

at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)

at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)

at com.google.common.eventbus.EventBus.post(EventBus.java:275)

at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)

at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:483)

at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)

at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)

at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)

at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)

at com.google.common.eventbus.EventBus.post(EventBus.java:275)

at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)

at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:556)

... 12 more

 

 

A detailed walkthrough of the error, its code path and all known details is as follows:

---------------------------------------------------------------------------------------

 

-- System Details --

Details:

Minecraft Version: 1.7.10

Operating System: Windows 7 (amd64) version 6.1

Java Version: 1.8.0_25, Oracle Corporation

Java VM Version: Java HotSpot 64-Bit Server VM (mixed mode), Oracle Corporation

Memory: 886890320 bytes (845 MB) / 1056309248 bytes (1007 MB) up to 1056309248 bytes (1007 MB)

JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M

AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used

IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0

FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1448 7 mods loaded, 7 mods active

States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

UCH mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 

UCH FML{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1448-1.7.10.jar) 

UCH Forge{10.13.4.1448} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1448-1.7.10.jar) 

UCH tfc_coremod{0.79.19} [TFC[coremod]] (minecraft.jar) 

UCH TFCI{0.1.0} [TerraInstrumenti] (bin) 

UCH Waila{1.5.11} [Waila] (Waila-1.5.11-RC2-NONEI_1.7.10.jar) 

UCE terrafirmacraft{0.79.19} [TerraFirmaCraft] ([1.7.10]TerraFirmaCraft-0.79.19.706.jar) 

GL info: ' Vendor: 'Intel' Version: '3.1.0 - Build 8.15.10.2712' Renderer: 'Intel® HD Graphics'

Edited by Powerman913717
0

Share this post


Link to post
Share on other sites
Sign in to follow this  
Followers 0