Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Automating the Forge Installer


Foxtrek_64
 Share

Recommended Posts

I'm leaving this post right before I crash, so bear with me here...

 

I'm a C# developer writing a custom cross-platform install package (through Mono). The install package is small and configurable, and provides the end-user with a single package for installing the provided Forge version as well as deploying a few resource packs and Forge mods.

 

My question has to do with the Forge Installer itself - there are three modes once launced: install client, install server, and extract. All three require you to select a destination. I've attempted to use the extract option, which dumps forge-1.8.8-11.15.0.1655-universal.jar to my selected folder. I then, for test purposes, attempt to execute the program with the --help flag, but it appears to just instantly close. I get the same result with the installer .jar and .exe.

 

What I would like to do, ultimately, is either replicate the installation process within C# or to have my installer kick off a Forge Client Install.

 

Question-time then...

 

What is the purpose of forge-1.8.8-11.15.0.1655-universal.jar? There does not appear to be an attached GUI (double clicking does nothing) and running the program through the command line does not appear to have any results either. I can't find anything on the Wiki for this either - it mentions that "extract" is an option, but it does not elaborate further.

 

My second question is whether or not there are any command line options for installing the client. So far, the only command line options I can find are --help, --install-server, and --extract, though these are poorly documented on the wiki.

 

Lastly, has anyone else attempted to automate this process with any degree of success? I can re-write the entire installer in C# or I can fork the Java installer and trim out what I don't need, providing a surface for my C# app. However, for logging purposes, having what I need in the C# installer seems to be a better option. Food for thought.

 

Thanks,

 

Fox

Link to comment
Share on other sites

I'm leaving this post right before I crash, so bear with me here...

 

I'm a C# developer writing a custom cross-platform install package (through Mono). The install package is small and configurable, and provides the end-user with a single package for installing the provided Forge version as well as deploying a few resource packs and Forge mods.

 

My question has to do with the Forge Installer itself - there are three modes once launced: install client, install server, and extract. All three require you to select a destination. I've attempted to use the extract option, which dumps forge-1.8.8-11.15.0.1655-universal.jar to my selected folder. I then, for test purposes, attempt to execute the program with the --help flag, but it appears to just instantly close. I get the same result with the installer .jar and .exe.

 

What I would like to do, ultimately, is either replicate the installation process within C# or to have my installer kick off a Forge Client Install.

 

Question-time then...

 

What is the purpose of forge-1.8.8-11.15.0.1655-universal.jar? There does not appear to be an attached GUI (double clicking does nothing) and running the program through the command line does not appear to have any results either. I can't find anything on the Wiki for this either - it mentions that "extract" is an option, but it does not elaborate further.

 

My second question is whether or not there are any command line options for installing the client. So far, the only command line options I can find are --help, --install-server, and --extract, though these are poorly documented on the wiki.

 

Lastly, has anyone else attempted to automate this process with any degree of success? I can re-write the entire installer in C# or I can fork the Java installer and trim out what I don't need, providing a surface for my C# app. However, for logging purposes, having what I need in the C# installer seems to be a better option. Food for thought.

 

Thanks,

 

Fox

Link to comment
Share on other sites

Preface: making your own stuff is kinda discouraged, since forge pays for itself using the ads that are run when you download the installer.

 

The universal jar is what is needed when you run a server. "Extract" produces this jar to make it easier for server owners to update forge without changing the MC version. "Install Server" produces a ready-to-run server installation, including all libraries needed. (So "Install Server" = Extract + vanilla server jar + libraries).

"Install Client" creates a JSON file describing how to launch forge to the launcher (libraries list, main class, etc.) and installs itself and all the libraries into the libraries repository of the launcher. Then it creates / updates a "Forge" profile in the launcher to point to this new version.

Link to comment
Share on other sites

Preface: making your own stuff is kinda discouraged, since forge pays for itself using the ads that are run when you download the installer.

 

The universal jar is what is needed when you run a server. "Extract" produces this jar to make it easier for server owners to update forge without changing the MC version. "Install Server" produces a ready-to-run server installation, including all libraries needed. (So "Install Server" = Extract + vanilla server jar + libraries).

"Install Client" creates a JSON file describing how to launch forge to the launcher (libraries list, main class, etc.) and installs itself and all the libraries into the libraries repository of the launcher. Then it creates / updates a "Forge" profile in the launcher to point to this new version.

Link to comment
Share on other sites

Preface: making your own stuff is kinda discouraged, since forge pays for itself using the ads that are run when you download the installer.

 

Understood. I'd been wanting to limit the number steps, but having a user install the Forge client should not be too difficult. Instead, I'll either provide a method within my plugin to navigate through the webpage (.net webbrowser) so they see the ads or provide a check for the forge version to exist within .minecraft/version, just checking major version (i.e. "1.8-forge") -- if any of those exist, all is well. If not, stop the user and have them download Forge. Thanks for the help!

Link to comment
Share on other sites

Preface: making your own stuff is kinda discouraged, since forge pays for itself using the ads that are run when you download the installer.

 

Understood. I'd been wanting to limit the number steps, but having a user install the Forge client should not be too difficult. Instead, I'll either provide a method within my plugin to navigate through the webpage (.net webbrowser) so they see the ads or provide a check for the forge version to exist within .minecraft/version, just checking major version (i.e. "1.8-forge") -- if any of those exist, all is well. If not, stop the user and have them download Forge. Thanks for the help!

Link to comment
Share on other sites

Understood. I'd been wanting to limit the number steps, but having a user install the Forge client should not be too difficult.

 

1. Go here

2. Click this button

3. Run

4. Click that button

5. ???

6. Profit

7. Forge installed

 

Installing Forge is literally the easiest it has ever been.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Understood. I'd been wanting to limit the number steps, but having a user install the Forge client should not be too difficult.

 

1. Go here

2. Click this button

3. Run

4. Click that button

5. ???

6. Profit

7. Forge installed

 

Installing Forge is literally the easiest it has ever been.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Locking this thread.

1) As stated, ads are how we pay the bills here at Forge. So bypassing our installer/downloads is not helpful

2) Your initial post makes it extremely clear that you have spent ZERO time actually doing any research into how anything in Forge or Minecraft modding is setup. All of this is open source, you can see exactly whats going on. You can see what the different jars and options are for by just looking at the installer and the minecraft folder post install.

3) The installer can ALREADY be modified to bundle any modpacks you want, you just have to look into it. Tho again this bypasses our downloads so its discouraged.

4) Mod/ModPack installation is stupid simple, literally "Install Forge, Put mods in mods folder" you don't need a custom installer for that.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Patreon: http://www.patreon.com/lexmanos
Paypal: http://paypal.me/LexManos

BitCoin: 1Q8rWvUNMM2T1ZfDaFeeYQyVXtYoeT6tTn

Link to comment
Share on other sites

Locking this thread.

1) As stated, ads are how we pay the bills here at Forge. So bypassing our installer/downloads is not helpful

2) Your initial post makes it extremely clear that you have spent ZERO time actually doing any research into how anything in Forge or Minecraft modding is setup. All of this is open source, you can see exactly whats going on. You can see what the different jars and options are for by just looking at the installer and the minecraft folder post install.

3) The installer can ALREADY be modified to bundle any modpacks you want, you just have to look into it. Tho again this bypasses our downloads so its discouraged.

4) Mod/ModPack installation is stupid simple, literally "Install Forge, Put mods in mods folder" you don't need a custom installer for that.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Patreon: http://www.patreon.com/lexmanos
Paypal: http://paypal.me/LexManos

BitCoin: 1Q8rWvUNMM2T1ZfDaFeeYQyVXtYoeT6tTn

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



×
×
  • Create New...

Important Information

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