Monster 1.0.11 .jar error fix.

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord
Status
Not open for further replies.

gamar356

New Member
Jul 29, 2019
1
0
0
What happened?

corruption

why?

conspiracy!

No really...

This mornings Monster update (1.0.11) ended on the repo with a corrupt Mariculture file that contained a size of 0. I don't exactly know why, since my local copies contained a perfectly fine copy. Interwebz happens.

I have uploaded a fixed, verified, version to the repo that will be available as soon as the sync process finishes. Please wait approximately a half hour from the time of this post and then Force Update your instance if you downloaded 1.0.11 earlier.

sorry for the inconvenience.

1. i downloaded this yesterday and dont have 1.0.11
2. i could make a world but wont launch the world
3. i tried everything but closes the console and minecraft mid-load
help plz
 

Redlotus99

New Member
Jul 29, 2019
18
0
0
Are you asking for the whole process of making a conversion list or just how to use it?

0) Backup (zip up) your world's folder in the saves folder.
0.5) Make sure you really did 0.
1) Unzip the MidasGold application. (Also, make sure you made a backup.)
2) Run the MidasGold.jar file.
3) There is a button to import a list of conversions, do that with thee Monster10to11.txt file.
4) There is a button to add a save to the drop down list. (It defaults to the normal minecraft folder.) This button will add 1 world's folder.
5) Click Start and wait. (You have a backup, right? Because this is the step that changes it.)
6) Check out the numbers it changed and hit OK.
7) Launch FTB launcher and then Monster 1.0.11.
8) It may complain about ID mismatches, the tool does not fix Forge's history. Click OK.
9) Check out the world, look for holes where stuff was or transformed into other things.
10) if it is bad, restore from backup and edit the mapping file and try again.

IMarv

Exactly what I needed. Awesome and thank you!
 

rhn

Too Much Free Time
Nov 11, 2013
5,706
4,420
333
1. i downloaded this yesterday and dont have 1.0.11
2. i could make a world but wont launch the world
3. i tried everything but closes the console and minecraft mid-load
help plz
1: You need to choose something other than the Recommended version in the dropdown menu for it to install anything other than the Recommended version. But there is a reason why the Recommended version is the recommended version.
2: This is not a support thread. Make post in the support section and follow the guidelines layed out there on which information to input and how to format it.
3: This is not a support thread. Make post in the support section and follow the guidelines layed out there on which information to input and how to format it.
 
  • Like
Reactions: Nerixel

rhn

Too Much Free Time
Nov 11, 2013
5,706
4,420
333
@Eyamaz We had a discussion in some thread some time ago about adding the Geostrata rocks to the Forge multipart config to offset the lack of stairs and slabs to make them more useful. From what I recall it ended with @Reika saying he was looking into enabling it by default for his mods, but I would assume that would only be so for the most recent version onwards. And I assume Monster are a few versions behind just to make sure to squash out bugs etc. So would it be possible to have the rocks added to the forge multipart config the old fashion way until such a time where Monster catches up with a version of Geostrata that has the multipart support?

I know that I can add it myself manually, but I am sure a lot of people don't know it is possible or know how to. And it would be much easier for all if it was on by default.

Its a bit of a shame as it is, since I heard of several people just destroying the rocks from geostrata. The artwork and variety is great, but without anything but whole blocks it is hard to build anything but very crude vanilla looking buildings with it.
 
Last edited:

Eyamaz

New Member
Jul 29, 2019
2,373
0
0
Oi. I forgot again because other stuff too precedence. AFAIK Reika is not going to add native support because FMP is not written entirely in java. I also need to re add all the metallurgy blocks since the m3 config change.
 

rhn

Too Much Free Time
Nov 11, 2013
5,706
4,420
333
Oi. I forgot again because other stuff too precedence. AFAIK Reika is not going to add native support because FMP is not written entirely in java. I also need to re add all the metallurgy blocks since the m3 config change.
Hehe, no worries. It is nothing game breaking, but would be an amazing addition for anyone who enjoy building I think.
 

Reika

RotaryCraft Dev
FTB Mod Dev
Sep 3, 2013
5,079
5,331
550
Toronto, Canada
sites.google.com
Oi. I forgot again because other stuff too precedence. AFAIK Reika is not going to add native support because FMP is not written entirely in java. I also need to re add all the metallurgy blocks since the m3 config change.
Just to clarify, I do not really care what a mod is written in - though if some derp writes a mod in Fortran I will be simultaneously impressed and disgusted - but what I have to do; as you may imagine, expecting me to learn two new programming languages (Scala and Json) is not exactly reasonable. Plus it would be less "call another mod's API" and more "write a module for that other mod", OpenPeripherals-style.
 
  • Like
Reactions: Eyamaz

gallowglass

New Member
Jul 29, 2019
226
0
0
as you may imagine, expecting me to learn two new programming languages (Scala and Json) is not exactly reasonable. Plus it would be less "call another mod's API" and more "write a module for that other mod", OpenPeripherals-style.

So this is not quite accurate?

If you only want to use the API and not modify it:

  • Download the latest dev version from files.minecraftforge.net/ForgeMultipart/
  • Download the latest dev version of CCL.
  • Place both mods in your /libs/ folder and link them as libraries in your IDE.
Implementation of all parts of the API should be clean and easy in Java. The minecraft multipart mod is implemented in java as a test case.

(Bolding mine.)
 

Apoc

New Member
Jul 29, 2019
9
0
0
It says that, yes, but every bit of code in that mod is in scala, and I am told it reads Json-type files.

Not to nitpick, but JSON is just a data format. (Like XML, .ini, YML, etc) It's just cleaner, more "standardized", and typically faster to parse and write.

Last I checked, unless you plan to modify ForgeMultipart stuff directly, you don't need to deal with Scala at all. The JVM will do any mappings back and forth for you. Just check if ForgeMultipart is "available" before calling any API related to it. Using either forge API, or just some quick and simple (yet dirty...) reflection magic.
 

Reika

RotaryCraft Dev
FTB Mod Dev
Sep 3, 2013
5,079
5,331
550
Toronto, Canada
sites.google.com
Not to nitpick, but JSON is just a data format. (Like XML, .ini, YML, etc) It's just cleaner, more "standardized", and typically faster to parse and write.

Last I checked, unless you plan to modify ForgeMultipart stuff directly, you don't need to deal with Scala at all. The JVM will do any mappings back and forth for you. Just check if ForgeMultipart is "available" before calling any API related to it. Using either forge API, or just some quick and simple (yet dirty...) reflection magic.
Can you show me an example? I see nothing in FMP to plug into.
 

Apoc

New Member
Jul 29, 2019
9
0
0
Ignore my amalgamation of random bits of the FMP API, but this is a general "gist" of what's available. (I haven't actually played with FMP in quite a while, as the day-job doesn't allow me to work on "real" forge mods at the moment)

Code:
package com.apocdev.catalystmc;

import codechicken.multipart.IRandomUpdateTick;
import codechicken.multipart.MultiPartRegistry;
import codechicken.multipart.TMultiPart;

public class ExamplePart implements IRandomUpdateTick
{
    @Override
    public void randomUpdate()
    {
        MultiPartRegistry.registerParts(new ExamplePartFactory(), new String[]{ "my.custom.MultiPart", "my.custom.MultiPart2" });
        // I don't think Java supports delegate-style callbacks, so implementing the part factory seems required.
        // I'm  C++/C# dev, so I may be totally off-base here.

        // Note: I'm correct. Methods aren't considered first-class-citizens in the JVM, so passing around
        // function pointers isn't going to happen. You need to implement the IPartFactory interface.
    }

    public class ExamplePartFactory implements MultiPartRegistry.IPartFactory
    {
        @Override
        public TMultiPart createPart(String s, boolean b)
        {
            // Do your stuff to create the multipart object...
            return null;
        }
    }
}

I'll assume you can just go through and check the FMP API for any other requirements, etc. Mapping from Scala->Java (at least from the API src docs) is fairly trivial.


Edit: The "registerParts" call needs to be done from mod.init(). Again, just check in the FMP src for any usage notes, etc.
 

Yakuto

New Member
Jul 29, 2019
7
0
0
I know this is an off the subject question, but any chance that Greg Tech might end up in Monster? ;)
 

Reika

RotaryCraft Dev
FTB Mod Dev
Sep 3, 2013
5,079
5,331
550
Toronto, Canada
sites.google.com
Ignore my amalgamation of random bits of the FMP API, but this is a general "gist" of what's available. (I haven't actually played with FMP in quite a while, as the day-job doesn't allow me to work on "real" forge mods at the moment)

Code:
package com.apocdev.catalystmc;

import codechicken.multipart.IRandomUpdateTick;
import codechicken.multipart.MultiPartRegistry;
import codechicken.multipart.TMultiPart;

public class ExamplePart implements IRandomUpdateTick
{
    @Override
    public void randomUpdate()
    {
        MultiPartRegistry.registerParts(new ExamplePartFactory(), new String[]{ "my.custom.MultiPart", "my.custom.MultiPart2" });
        // I don't think Java supports delegate-style callbacks, so implementing the part factory seems required.
        // I'm  C++/C# dev, so I may be totally off-base here.

        // Note: I'm correct. Methods aren't considered first-class-citizens in the JVM, so passing around
        // function pointers isn't going to happen. You need to implement the IPartFactory interface.
    }

    public class ExamplePartFactory implements MultiPartRegistry.IPartFactory
    {
        @Override
        public TMultiPart createPart(String s, boolean b)
        {
            // Do your stuff to create the multipart object...
            return null;
        }
    }
}

I'll assume you can just go through and check the FMP API for any other requirements, etc. Mapping from Scala->Java (at least from the API src docs) is fairly trivial.


Edit: The "registerParts" call needs to be done from mod.init(). Again, just check in the FMP src for any usage notes, etc.
One, this references the mod directly (rather than an API) and would thus make me dependent on it. This is not acceptable. Two, the actual "create" function, the part I need most, is not present.
 
  • Like
Reactions: Nerixel
Status
Not open for further replies.