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

      Server Move   09/13/18

      I (Dries007) have recently taken over as main developer and server admin. This involved moving servers to reduce cost. It's likely there will be some more downtime in the future but most  things should be sorted by now. This forum is in dire need of replacement as the software is quite old and can't be easily updated. If you wish to discuss or stay updated, join our discord: https://invite.gg/terrafirmacraft. The forum will remain available to read, but will be locked in the future, when a new system is setup. The forum and wiki are now ad free. If you'd like to contribute to keeping it that way, you can do so via paypal or patreon.
ninthworld

Running TFC from eclipse workspace

10 posts in this topic

Have you read, understood, and followed all of the rules listed in large text at the top of the support forum? (Yes/No): Yes

 

TFC Version #: 1.7.10 Forge Version #: 10.13.2.1291 SSP/SMP (SinglePlayer/MultiPlayer): N/A Description: I'm trying to setup my eclipse workspace to start making addons for Terrafirmacraft, but I've run into an issue.

I've downloaded the Forge (10.13.2.1291) src and run the commands "gradlew setupDecompworkspace --refresh-dependencies" and "gradlew eclipse"

I cloned the terrafirmacraft github project and ran the Setup.bat

 

I set my workspace to the forge/eclipse folder and created a new linking folder to the TFCraft/src folder.

I added all four of the folders in the linked src to the build path (API, ASM, Common, Resources)

I replaced the forgeSrc in the Project->Libraries with the (forgeSrc-1.7.10-10.13.2.1291.jar) from TFCraft/build/dirtyArtifacts

 

When I run the program, I get that errors exists (because "codechicken.nei.api" doesn't exist, which isnt an issue), but I run the program anyways.

 

The program encounters an error and can't continue:

cpw.mods.fml.common.LoaderException: java.lang.Error: Unresolved compilation problems: 	The final field WorldType.DEFAULT cannot be assigned	The final field WorldType.FLAT cannot be assigned	The final field WorldType.LARGE_BIOMES cannot be assigned	The final field WorldType.AMPLIFIED cannot be assigned 

I tried looking up how to solve this error on google, but since this is kind of a niche thing, I couldn't find any working solutions.

The closest "solution" I found was adding the ([1.7.10]TerraFirmaCraft-0.79.18.673.jar) to the lib folder, adding "compile files('lib/[1.7.10]TerraFirmaCraft-0.79.18.673.jar')" to the build.gradle's dependencies section, and rerunning the "gradlew setupDecompworkspace --refresh-dependencies" and "gradlew eclipse" commands.

 

However, even though the program now actually gets to the mojang logo, it can't get to the menu because "You have mod sources that are duplicate within your system, terrafirmacraft : bin, terrafirmacraft : [1.7.10]TerraFirmaCraft-0.79.18.673"

 Have you deleted your config files or are using default configs and are still able to reproduce this bug? (Yes/No): N/ADo you have any mods other than Forge and TFC installed? (Yes/No): NoIf yes, which mods?  If you have Optifine or Cauldron installed, can you still reproduce the bug after uninstalling them? (Yes/No): NoPastebin.com link of the Crash Report: N/A

0

Share this post


Link to post
Share on other sites

I've moved this to the appropriate section. If you scan this section you'll likely find the solution to your issue.

0

Share this post


Link to post
Share on other sites

The problem is that you installed forge separately. The TFC repo already has a gradle script that will handle forge installation. Just follow this guide (you can just run Setup.bat instead of the two gradlew commands):

 

 

Start with an empty folder. Let's call that folder "Minecraft". If you are going to be using a git client to pull and push, you should set your repo to be located at a folder inside Minecraft. Let's call that folder "TFCraft". If you are instead just downloading the zip off of github, extract the TFCraft-master folder into the Minecraft folder. You should end up with something that looks like this:

 

Posted Image

 

Posted Image

 

Shift-right click inside the TFCraft/TFCraft-master folder and select "Open command window here"

 

Posted Image

 

In the command window that you just opened, run gradlew setupDecompWorkspace and then when that completes run gradlew eclipse.

 

Once both commands are finished, open up eclipse and set your workspace to be the Minecraft folder.

 

Posted Image

 

Now, when this loads the project explorer is going to be empty. That is correct. You need to select Import > General > Existing Projects into Workspace

 

Posted Image

 

Set the root directory to be the Minecraft folder again, and TFCraft should show up as one of the projects to import.

 

That's it. You're done. If done correctly, there should be no errors, and you should not have done anything with any files other than the ones obtained from the TFC github repo. You should not be installing forge from any other source than the gradlew file that is included with the TFC repo, and you should not be moving any files around after you have run commands.

 
0

Share this post


Link to post
Share on other sites

After you have a working TFC project you can make your own addon project in almost the same way.

You can take a look at my simple project here ->  https://github.com/emris/LeatherWaterSacTFC

 

The only difference is that after adding your addon project to the workspace, you have to do a bit of cleaning up in your Referenced Libraries and add the TFC project in the Projects tab in Java Build Path. I never tried it but it should even work if you delete all of the libraries because they are all a part of the TFC project, and by adding the TFC project as a dependency all the needed libraries can be found there.

Add a new Run Configuration... for your addon and all should work for the development part.

I also define different "Working directories"(which i name "runClent" and "runServer") in the "Run Configuration" for every project, that way nothing gets mixed up :)

 

Building your addon with "gradle build" will not work, because gradle cant find TFC. For that to work just build the TFC project and copy the *deobf*.jar into the "libs" directory where your addon is. You may need to create the libs directory first. Gradle looks in the libs directory for any dependencies it needs to build your addon project successfully.

You may also need to copy the "dirtyArtifacts" from the TFC project to your addon build directory, not sure if gradle needs it for building or not.

 

I hope this gives you an idea of at least one way of how you can setup a TFC addon project dev env.

0

Share this post


Link to post
Share on other sites

The problem is that you installed forge separately. The TFC repo already has a gradle script that will handle forge installation. Just follow this guide (you can just run Setup.bat instead of the two gradlew commands):

 

 

Thanks, I followed your instructions and was able to get it working.

 

 

After you have a working TFC project you can make your own addon project in almost the same way.

You can take a look at my simple project here ->  https://github.com/emris/LeatherWaterSacTFC

 

The only difference is that after adding your addon project to the workspace, you have to do a bit of cleaning up in your Referenced Libraries and add the TFC project in the Projects tab in Java Build Path. I never tried it but it should even work if you delete all of the libraries because they are all a part of the TFC project, and by adding the TFC project as a dependency all the needed libraries can be found there.

Add a new Run Configuration... for your addon and all should work for the development part.

I also define different "Working directories"(which i name "runClent" and "runServer") in the "Run Configuration" for every project, that way nothing gets mixed up :)

 

Building your addon with "gradle build" will not work, because gradle cant find TFC. For that to work just build the TFC project and copy the *deobf*.jar into the "libs" directory where your addon is. You may need to create the libs directory first. Gradle looks in the libs directory for any dependencies it needs to build your addon project successfully.

You may also need to copy the "dirtyArtifacts" from the TFC project to your addon build directory, not sure if gradle needs it for building or not.

 

I hope this gives you an idea of at least one way of how you can setup a TFC addon project dev env.

 

I'm having a little trouble with this. When I created the TFCraft project, I was able to run it from eclipse by setting GradleStart as the main method. However, when I create a new project for my mod and set TFCraft as a build path project, there is no main method for me to run the game from eclipse.

Edited by ninthworld
0

Share this post


Link to post
Share on other sites

My Run Configuration looks like this:

 

Main class:

net.minecraft.launchwrapper.Launch

 

Program argumants:

--version 1.7 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker --username=YourMCName --accessToken FML --userProperties={} --assetIndex 1.7.10 --assetsDir C:UsersYourName.gradlecachesminecraftassets

 

VM argumants:

-Xincgc -Xmx2G -Xms1G -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.coreMods.load=com.bioxx.tfc.TFCASMLoadingPlugin

 

Working directory:

${workspace_loc:AddOnPath/run/Client}

0

Share this post


Link to post
Share on other sites

My Run Configuration looks like this:

 

Main class:

net.minecraft.launchwrapper.Launch

 

Program argumants:

--version 1.7 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker --username=YourMCName --accessToken FML --userProperties={} --assetIndex 1.7.10 --assetsDir C:UsersYourName.gradlecachesminecraftassets

 

VM argumants:

-Xincgc -Xmx2G -Xms1G -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.coreMods.load=com.bioxx.tfc.TFCASMLoadingPlugin

 

Working directory:

${workspace_loc:AddOnPath/run/Client}

 

Thanks, I got it working!

0

Share this post


Link to post
Share on other sites

after setting this up + native library path ( for lwjgl-2.9.1.jar from .gridle cache located in user profile folder) 

boostrap proces started, but then crashed :

...
[14:46:03] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
...
[14:47:33] [Client thread/INFO] [TerraFirmaCraft]: Loading TFCCrafting
[14:47:33] [Client thread/ERROR] [FML]: Fatal errors were detected during the transition from INITIALIZATION to POSTINITIALIZATION. Loading cannot continue
[14:47:33] [Client thread/ERROR] [FML]: 
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCHI    mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 
    UCHI    FML{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) 
    UCHI    Forge{10.13.4.1558} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) 
    UCHI    tfc_coremod{0.79.29} [TFC[coremod]] (minecraft.jar) 
    UCHI    terrafirmacraft{0.79.29} [TerraFirmaCraft] (bin) 
    UCHE    Waila{1.5.11} [Waila] (Waila-1.5.11-RC2-NONEI_1.7.10.jar) 
[14:47:33] [Client thread/ERROR] [FML]: The following problems were captured during this phase
[14:47:33] [Client thread/ERROR] [FML]: Caught exception from Waila
java.lang.NoSuchFieldError: field_150346_d
    at mcp.mobius.waila.overlay.WailaTickHandler.<init>(WailaTickHandler.java:34) ~[Waila-1.5.11-RC2-NONEI_1.7.10.jar:?]

which tells me that MC/Forge/TFC runs deobfuscated, yet the 3rd party mods do not.

What would be the recommended approach?

Thank you.

0

Share this post


Link to post
Share on other sites

This has nothing to do with deobfuscation, your project is missing the NEI library.

0

Share this post


Link to post
Share on other sites

Please help. I'm necroing this thread to ask a question because the gradlew build script fails when it tries to download the Waila .pom file (peer not authenticated).  I tried importing a cert using the keytool command, but that didn't work. I also tried adding systemProp.https lines in the gradle-wrapper.properties, but that didn't work either. I can straight up download the files the script is asking for, but I have no idea how to supply them to the script. gradle is infuriating. I miss the pre-gradle days.

-For anyone who has worked on addons for TFC, what version of the JDK are you using? I've got 1.7.0_80. (This could fix it)

Here's the error:
 

> Could not resolve mcp.mobius.waila:Waila:1.5.11-RC2-NONEI_1.7.10.
  Required by:
      com.bioxx.tfc:TFCraft-master:0.79.29
   > Could not GET 'http://mobiusstrip.eu/maven/mcp/mobius/waila/Waila/1.5.1
1-RC2-NONEI_1.7.10/Waila-1.5.11-RC2-NONEI_1.7.10.pom'.
      > peer not authenticated

Solution (in case this happens to anyone else): Copy https://www.mobiusstrip.eu/maven/mcp/mobius/waila/Waila/1.5.11-RC2-NONEI_1.7.10/Waila-1.5.11-RC2-NONEI_1.7.10-dev.jar and place it in TFCraft-master/build/dirtyArtifacts/

 

 

Edited by aeroc
0

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now