Jump to content

Recommended Posts

Posted

I'm trying to adapt a modpack to the modlist json format, mostly because I can, and also because I can double up on a bunch of mods from another pack if I do. I've managed to grok the format of the file itself, but the wiki(https://github.com/MinecraftForge/FML/wiki/New-JSON-Modlist-format) says nothing(that I can see) about where you actually put it. And I seem to recall that it needs some sort of prefix as well.

Is anyone able to clarify this?

Posted

It's a command-line option, add it to the command-line options in your launcher profile.

 

The path you use as the value of this option can either be an absolute path (in which case you need to prefix it with absolute:) or a path relative to the game directory.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted (edited)

I did try that, and it gave me an error. I opened the file in pluma, and then opened the launcher, and it went and reset the file. touchy...

Anyway, just appending "--modListFile ./mods/modList.json"(sans quotes, obviously) to the JVM options in the MC launcher gave me this error:

Unrecognized option: --modListFile
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

That's why I suspected there was a prefix to that command involved. I think it was something like "-Dfml".

 

I should say that I'm on Linux, which didn't get the fancy new-look launcher. That may make a difference.

 

EDIT: And I was using the wrong Forge version that time. The actual version I was supposed to be using(Forge build 2281) just doesn't start up at all. I suspect that the reset may have gone further than I originally thought... I'll check that, because I'm pretty sure I got an error.

 

EDIT 2: Ok, so I do actually get that error after making sure that it's got everything. And that I don't get it on other things.

Edited by TheTrueForce
Posted

You're getting that error because the launcher is passing --modListFile as a JVM argument.

 

On closer inspection, it looks like Mojang's launcher only lets you set the command-line options for the JVM but not for Minecraft. The only way to add command-line arguments for Minecraft seems to be to create a new version and specify them there.

 

If you don't want to do this, you can save your file to one of the paths that FML automatically checks: mods/mod_list.json or mods/<minecraft_version>/mod_list.json.

  • Like 1

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted

That would explain the error... Thank you for your help, Choonster. I changed the filename of my json file, and now it's getting to the point of FML crashing. So It's working more than it was before.

In the file itself, are characters like hyphens, spaces and apostrophes permitted in the specifiers? And are you limited to three colons? because I think I may be doing things wrong. For example, I'm doing

"Aroma1997s-Dimensional-World:1.9.4:1.2.0.6"

in my json, intending it to load

repositoryRoot/Aroma1997s-Dimensional-World/1.9.4/1.2.0.6/Aroma1997s-Dimensional-World-1.9.4-1.2.0.6.jar

Among others. I'm getting this error

[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: java.lang.ArrayIndexOutOfBoundsException: 2
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.ModListHelper.parseListFile(ModListHelper.java:140)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.ModListHelper.parseModList(ModListHelper.java:75)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:261)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:255)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:102)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupClient(FMLLaunchHandler.java:79)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.relauncher.FMLLaunchHandler.configureForClientLaunch(FMLLaunchHandler.java:41)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraftforge.fml.common.launcher.FMLTweaker.injectIntoClassLoader(FMLTweaker.java:138)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraft.launchwrapper.Launch.launch(Launch.java:115)
[09:59:13] [main/INFO] [STDERR]: [net.minecraftforge.fml.relauncher.FMLLaunchHandler:setupHome:106]: 	at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

I suspect that this means I've got too many things in one specifier in my json.

What do you think? I can post the whole log(it's really short), and the mod list file, if necessary.

Posted

Each specifier must be composed of either three or four parts separated by colons. The parts can contain any other character (that the OS allows in a file name).

 

That exception means that you've got a specifier with less than three parts to it.

 

Could you post the entire FML log and the mod list file that caused that error?

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted

That'd be right. Some of these mods use version schemes that are less than compatible with the Maven system. Botania is one of them. I'll have to rename a few more files, then...

 

I can indeed post those files.

The modlist file does not specify every mod in the pack. I got halfway through converting i before I remembered to test it.

fml-client-latest.log

mod_list.json

Posted

Your file isn't really following the format properly, you're treating the first part of the specifier as the mod name instead of the group ID.

 

I explain each part of the specifier format in more detail here.

 

Instead of Aroma1997s-Dimensional-World:1.9.4:1.2.0.6, use aroma1997:Aroma1997s-Dimensional-World:1.9.4-1.2.0.6. This will be mapped to <repositoryRoot>/aroma1997/Aroma1997s-Dimensional-World/1.9.4-1.2.0.6/Aroma1997s-Dimensional-World-1.9.4-1.2.0.6.jar.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted (edited)

Oh. That's... counter-intuitive. I was using it as modName:MCVersion:modVersion. That results in a fairly neat directory structure. I also tend to think in terms of 'what mod is this', rather than 'whose mod is this'. That's why I did it that way. It would also have had the effect of keeping the mod versions sorted by minecraft version.

This is clearly going to cause stupid problems if I don't change it. Blast.

 

EDIT: Thank you again. I just got a dependency error, so that means it's loading something.

Edited by TheTrueForce

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.

Guest
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.

Announcements



×
×
  • Create New...

Important Information

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