Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support downloading modpacks from the new ftb app #1540

Closed
1 task done
skyrina opened this issue Aug 19, 2023 · 8 comments
Closed
1 task done

support downloading modpacks from the new ftb app #1540

skyrina opened this issue Aug 19, 2023 · 8 comments
Labels
enhancement New feature or request

Comments

@skyrina
Copy link

skyrina commented Aug 19, 2023

Role

i play ftb modpacks

Suggestion

i want prism launcher to support downloading ftb modpacks

Benefit

overwolf bad

This suggestion is unique

  • I have searched the issue tracker and did not find an issue describing my suggestion, especially not one that has been rejected.

You may use the editor below to elaborate further.

here's a really quick proof of concept written in js for reference
this doesn't call any private apis so there's no access token needed, hopefully someone can implement this into the launcher itself, have fun

import { mkdir, writeFile } from 'node:fs/promises';
import { join } from 'node:path';

const funny = await fetch('https://api.modpacks.ch/public/modpack/103/6561/');
const data = await funny.json();
const len = data.files.length;

const root = './modpack/';
await mkdir(root, { recursive: true });
let i = 0;

console.log('downloading', data.files.length, 'files');

for (let file of data.files) {
	try {
		await mkdir(join(root, file.path), { recursive: true });
		let data;
		if (file.url) data = Buffer.from(await (await fetch(file.url)).arrayBuffer());
		if (file.curseforge) {
			const id = file.curseforge.file.toString();
			data = Buffer.from(await ((await fetch(encodeURI(`https://mediafilez.forgecdn.net/files/${id.substring(0, 4).replace(/^0+/gi, '')}/${id.substring(4).replace(/^0+/gi, '')}/${file.name}`).replace(/\+/gi, '%2B'))).arrayBuffer())); // cool one liner
		}
		if (data == undefined) throw "no data found";
		await writeFile(join(root, file.path, file.name), data);
		console.log('downloaded', file.name);
		console.log(len - ++i, 'files left');
	} catch (e) {
		console.error(e);
		console.log(file);
	}
}
@skyrina skyrina added the enhancement New feature or request label Aug 19, 2023
@Trial97
Copy link
Member

Trial97 commented Aug 19, 2023

Hi @skyrina,

The removal of the FTB app support was made at the request of the FTB Team.
For more information:https://prismlauncher.org/news/ftb-removal/
But fret not there will be an alternative: download the modpack using the new FTB App and then import it into prism.

Here is the issue that describes this: #235 and here is the PR that implements it: #1359

As this is yet to be released(planned for 8.0) you can try it using the nightly builds found here: https://nightly.link/PrismLauncher/PrismLauncher/workflows/trigger_builds/develop

@Trial97 Trial97 closed this as not planned Won't fix, can't repro, duplicate, stale Aug 19, 2023
@TheVekter
Copy link

Hi @skyrina,

The removal of the FTB app support was made at the request of the FTB Team. For more information:https://prismlauncher.org/news/ftb-removal/ But fret not there will be an alternative: download the modpack using the new FTB App and then import it into prism.

Here is the issue that describes this: #235 and here is the PR that implements it: #1359

As this is yet to be released(planned for 8.0) you can try it using the nightly builds found here: https://nightly.link/PrismLauncher/PrismLauncher/workflows/trigger_builds/develop

This is not a feasible workaround, as it still requires you to install the FTB App to begin with, meaning Overwolf gets a chance to install its spyware in the background. I shouldn't have to download a potentially dangerous program even temporarily to play a modpack.

@Trial97
Copy link
Member

Trial97 commented Oct 6, 2023

Hi @TheVekter,
If you say that the FTB App is a potentially dangerous program then how can the packs that they offer be safe?
Here is the short story: they do not want other launchers to make financial gains over their work so they revoked the API usage. By downloading packs with their app, you see ads that generate money for them and they can create more amazing packs.
So until we do not have their approval to download the packs through Prism the current solution is the only solution.

@TheVekter
Copy link

Hi @TheVekter, If you say that the FTB App is a potentially dangerous program then how can the packs that they offer be safe? Here is the short story: they do not want other launchers to make financial gains over their work so they revoked the API usage. By downloading packs with their app, you see ads that generate money for them and they can create more amazing packs. So until we do not have their approval to download the packs through Prism the current solution is the only solution.

The packs aren't the issue, it's Overwolf, the program they used to make FTB App. Prism wasn't making any money off their packs anyway, so it's not relevant.

@Trial97
Copy link
Member

Trial97 commented Oct 6, 2023

Well please take your time and read this article: https://prismlauncher.org/news/ftb-removal/
This should explain why we removed it.

@sTiKyt
Copy link

sTiKyt commented Mar 22, 2024

I guess we need a fork of prism now or something..

Dang i'm tired of this

First it MultiMC, then PolyMC, now Prism...

@TheVekter
Copy link

I guess we need a fork of prism now or something..

Dang i'm tired of this

First it MultiMC, then PolyMC, now Prism...

FTB is putting out a version of the launcher that doesn't include Overwolf, so we can still use that to download packs without having to worry about putting adware/malware on our PC. Apparently the reason FTB can't just let third party launchers hook into their API is because CurseForge is making an exception for FTB's use of their API, so third party launchers wouldn't be included in that.

tl;dr We don't, a fork isn't going to fix this issue.

@TheKodeToad
Copy link
Member

We didn't have much choice. Since 8.0 you've been able to import packs which you have installed in the FTB App, unfortunately you just can't download them directly in the launcher.

@PrismLauncher PrismLauncher locked as spam and limited conversation to collaborators Mar 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants