wingsite

Ferium - A command line Minecraft mod manager

published: 2022-11-14

I always forget exactly when I started playing Minecraft, though I do remember it was prior to beds being added and I only paid around €10 for it.

Some perusing of the wiki tells me that means it was likely during Minecraft Alpha, sometime in 2010, so I’ve been playing it for over a decade and it’s been a mainstay in my games list for quite a while and despite it looking and playing fairly very differently than it did back then, there’s something about it that no other game really captures.

The base game is wonderful but when you’ve played the same game for some time it’s always fun to play around with mods and they became in integral part of the game for me.

Mods

I had played around with installing some random mods early on, which was before mod loaders really existed. Back then you had to open up the Minecraft jar file, dump the mod folder contents into it, delete the META-INF and hope there was no item ID conflicts. Oh, the fun!

I only properly started playing with mods when a friend who wanted to play “Tekkit”, one of the early popular modpacks that among other thing, heavily featured a mod called “Industrial Craft”, which added a power system, machines and many more things that would sort of end up becoming standard in tech mods. It was so different from playing the base game; it acted as my gateway mod.

I don’t remember the last time I really played Minecraft without mods but the quantity and style of my playthroughs changed a lot. Early on I was very into tech mods and automation, I feel like most people now start their Minecraft mod journey here because it gives you a lot to do and gives you a goal which I know a lot of people struggle with not having in sandbox games, as well as just having the satisfaction of completing a complicated automation.

Magic based mods are also hugely popular. “Thaumcraft” was a staple of many old modpacks and for good reason, it was amazing! It’s gone through many revisions but the base remained mostly the same: cool wands to cast spells, new tools and very importantly, little golems that you could have do tasks for you like cutting down trees or collecting items.

Newer mods like “Mekanism” and the “Thermal” series work similarly to the old style but there’s also new things like “Create” that come at it in a completely different way by putting smaller blocks together to make large moving, custom machines.

Basically, a lot of really popular mods drastically change how you go about playing the game but really I think it’s little quality of life mods that I tend to appreciate the most. Simple things like a sort button on inventories or larger chests and alternative storage make the game far more enjoyable by simply removing small annoyances.

My last few games I’ve actually tended to go a play much more “vanilla plus” style, with far fewer mods and nothing radically game changing which has been nice. All these styles of play are nice to keep things different, whether it be simple or complex, I’m fond of both.

Modpacks

While I played with a few modpacks over the years, I’ve always preferred putting my own together, which became far easier when mod loaders started popping up and matured, as well as the eventual removal of the need for item IDs, everything became much easier! Of course there was never any official way to manage mods, several solutions, usually in the form of launchers, came to be over the years, “MultiMC” was the first one I really liked, though I now use a fork of it called “Prism Launcher.”

One of the main reasons for wanting a proper manager to handle creating modpacks though was of course a way to automatically download updates, iand increasingly, grabbing other mods that the ones you downloading are dependant on, which is quite a lot of work if you’re doing it manually so great as they are at managing instances and letting you quickly enable and disable mods, these launchers didn’t really help with making modpacks.

People have a lot of opinions about it but for better or worse most of the modding community exists on a single site called “CurseForge,” the ownership of which has changed hands a few times but is now currently owned by a company called “Overwolf.” A relatively new site named “Modrinth” also exists though.

The Third-Party Problem

CurseForge had its own launcher, which included a mod manager and a way to download modpacks, for as long as I can remember, though it always felt bloated and slow in my opinion, and crucially for me at least, never had a linux version anyway.

While my preferred launcher would gain the ability to download modpacks, something that I didn’t really care about anyway, it never an easy way of actually building them. CurseForge never had an official API so there was few options outside their own for doing this in any kind of automated way besides methods that relied on scraping their website which were fine but prone to breaking of course. When Overwolf took over, an official API was something they promised and it did eventually become a reality, which brought a lot hope for third-party mod managers. It did come with some caveats, mod developers could specifically request that their mods not be accessed via this API, which is perfectly fine, but I’ve found most allow it.

Ferium

A command line mod manager isn’t something I actually ever went specifically looking for, but several of them have existed in the past, though they would all rely on either scraping or unofficial APIs that were floating around and none of them seemed to be developed for very long. After the API announcement though I went looking for new mod managers and came across “ferium”, an absolutely phenomenal piece of software.

It’s fast, easy to use and even supports CurseForge, Modrinth and even GitHub releases as download methods!

You can start by simply grabbing the ferium binary from the GitHub releases page. Ferium works off “profiles” which will serve as your custom modpacks. Create one using ferium profile create and follow the prompts to name it and choose details like your mod loader.

Then you can start adding mods using ferium add [mod_id] where “mod_id” is the Modrinth project ID, the CurseForge mod ID or the GitHub repo. Once you have all the mods you want added run ferium upgrade to actually download them all. At the time of writing it seems it simply skip over mods where the author on CurseForge has disallowed third-party downloads so you’ll have to keep on an eye on what’s missing, then grab them manually. I believe there’s talk of at least having it give you direct links to the pages to download them in the future.

You can remove mods with ferium remove "mod_name". This one is a little awkward since it doesn’t use the same thing you used to add it in the first place but it’s fine, you can get a list of mods using ferium list to grab the name easily. You can also add the --verbose flag to the list command so you can get extra infortmation like the link to the mod, the author(s) and mod categories, which is useful you want to include a mod list page with the pack or even to generate a website page.

I’ve been using ferium for a few months and I have to say, it’s by far the best tool I’ve used for creating modpacks on linux.