Giter Club home page Giter Club logo

cmpdl's Introduction

CMPDL (Curseforge ModPack Downloader)

A better version of Franckyi/CMPDL rewritten in python

IMPORTANT ANNOUNCEMENT โš ๏ธ

Due to a misssing library (A console-like GUI logs viewer). I have paused development on this project and started writing the missing library from scratch


CodeQL Python application


img forthebadge forthebadge

What is CMPDL

CMPDL (CurseForge Modpack Downloader) is an app that helps in downloading mods from a modpack (Not possible by a human)

If you are new to minecraft, you may not understand what this does. If you not ... Buddy. You Came To The Right Place ๐Ÿ™‚

This app will download all the mods to your desired folder from a modpack (zip) file

How it works

Every modpack is a zip file, In that zip file... there is a file called manifest.json

In manifest.json there is info about:

  • Modpack Name
  • What mods were used:
    • Mod Name
    • Mod ID (project id)
    • File ID
    • Whether it is required or not

My Program will collect the above info and generate direct download links for the mods And it will download them one by one & save it in your dest folder

How to build/run on ANY OS:

  • Install python
  • Download the ZipApp
  • Run it with python, eg:
    python ZipApp.zip
    
    or
    python ZipApp.pyz
    python ZipApp.pyzw
    

cmpdl's People

Contributors

advik-b avatar dependabot[bot] avatar imgbotapp avatar korewalidesu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

vindeflei

cmpdl's Issues

More Bugs - Need fixes

First one dont close on itself -> cause non Indented block
This one not work because there isnt connect property avail

Also cursepy is updated, you can use new API now without changing code and close #16 as its no longer needed

Add CLI support

I just found your tool, and it looks really promising. CLI support is like a must-have :P

Revamp the UI

It looks old, and it is NOT consistent, when (force) resizing
I was using tkinter, now I will use PyQt5

[Linux] Some mods in manifest cause a crash.

CMPDL v2.0.0, CLI interface

I'm downloading All The Mods 7 - To the Sky (modpack version 1.1.6) and some of the mods crash both the cli and gui versions.
My error is as follows

[19:36:32]-[INFO]: Downloading mod 30 out of 226
[19:36:32]-[INFO]: Mod name: Ex Nihilo: Sequentia
[19:36:32]-[INFO]: Mod url: https://www.curseforge.com/minecraft/mc-mods/ex-nihilo-sequentia
[19:36:32]-[INFO]: Mod author(s): (CurseAuthor(id=308637, name='NovaMachina', url='https://www.curseforge.com/members/100810788-novamachina?username=novamachina'),)
[19:36:32]-[INFO]: Mod is required
'NoneType' object has no attribute 'split'
Something went wrong, check the log for more info
If you think this is a bug, please report it on the GitHub page
https://github.com/Advik-B/CMPDL/issues/new
Traceback (most recent call last):
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cli.py", line 233, in <module>
    main()
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cmpdl/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cmpdl/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cmpdl/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cmpdl/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cli.py", line 227, in main
    raise e
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cli.py", line 221, in main
    m.install()
  File "/home/twigglenn4/Downloads/CMPDL-2.0.0/src/cli.py", line 135, in install
    mods_folder, unquote(file.download_url.split("/")[-1])
AttributeError: 'NoneType' object has no attribute 'split'

This occurred for Ex Nihilo: Sequentia and it's addons, so I think it might be related to the colon : in its title.

My current solution is to download the mod from the CurseForge website, copy the project ID from the website, find and remove that entry in the manifest.json, and run the program again.

Modpack .zip file link:
https://www.curseforge.com/minecraft/modpacks/all-the-mods-7-to-the-sky/download/4094716?client=n

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.