-
Notifications
You must be signed in to change notification settings - Fork 65
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
Cursemeta API broken #67
Comments
CFCore is for game development, for third party applications (Server-start) you would need to apply for the API Key. Which can be found here, https://forms.monday.com/forms/dce5ccb7afda9a1c21dab1a1aa1d84eb?r=use1 This was taken from Curseforge's dev discord |
Does that mean it only needs a single API key for the whole application, or does every user need to create their own? |
Yes, I am aware that it will break at one point entirely, it was only a matter of time. It seems like that point is coming closer. As you've already said an API-Key is necessary for downloading mods now, which is quite problematic for an open source tool like this. Until curseforge provides a way to download mods without an key, the only options remaining are either letting curseforge downloads die and use full serverpack downloads provided by the authors or allowing the user to supply his own API-Key. This problem is sadly not only affecting ServerStarter but also MultiMC and many other alternative launchers. |
hmm, seems like PolyMC already got around this, see PolyMC/PolyMC#557 and PolyMC/PolyMC#585 |
IMO, just expose a setting for the API key and make it so that users of the script needs to make their own API key. |
This would not be an issue if in the settings you include a way for us users to supply our own key as brumoen has mentioned. |
Problem with this is, and this is in my perspective as a modpack developer who uses server start for my modpacks, the api key that I provide will be exposed still when my users download my server pack and get server start. |
that's just it you dont supply a key you make anyone who wants to use it get there own. |
This defeats the purpose of accessibility. I've learned that curseforge has set up the keys they give out, like the one they gave PolyMC, do not fall under ToS. Highly recommend Bloody chat with CF. |
I tested it with curseforge API and ran into a much bigger problem: mods that disallow third party downloads. Not even the polyMC key can download/get downloadlinks for those. |
An option for this with headless would be to list failed mods at the end of the installation process with URL's to manually download them, and instructions on where to place them when downloaded locally and uploaded to the server and then tell the script to continue the installation process. |
A HOPEFUL SOLUTIONSo, I was doing a bit of research into the CF client (aka surfing reddit), and it turns out that it too uses the CFCore API. So then, how does it get the files for the mods that are not publicly available through the API? A whitelisted API key hidden in the curseforge client! So, if you want to experiment with this, I have a fork that uses the CFCore API in place of the (RIP) cursemeta API, and that will allow you to provide an API key within the config. You can use this with a legit CFCore API key and it will download all of the mods it can, but you can also use this hidden key to return normal functionality. Huge cudos to this repo for finding this: Full instructions and the fork will be here. |
It looks like, for newer mod versions, the Cursemeta API used by this program does not work anymore.
For example mod Sophisticated Backpacks (
422301
) version 1.18.2-3.16.1.579 (3793584
): https://cursemeta.dries007.net/422301/3793584.jsonMoving to the official Curse API (CF Core) might be the only option.
That API needs an API key however, this may need to be added as a config option in
server-setup-config.yaml
.The API response is also different from Cursemeta, but the required information is all there.
CurseMeta
curl https://cursemeta.dries007.net/378646/3683708.json -H 'Accept: application/json'
Curse API
API keys can be created here: https://console.curseforge.com/?#/api-keys
The text was updated successfully, but these errors were encountered: