Homebrew WIP NX-RomGet - Python script to download roms

HoTsHoTz79

GIC-Developer
OP
Member
Joined
May 9, 2018
Messages
322
Trophies
0
Age
39
XP
964
Country
Canada
Downloading ROMs then transferring via FTP/MTP is a hassle...

So I started working on a Python script yesterday and this is what I've achieved so far using PyNx as base:
  • Main screen - console selection
  • 2020041518015200-85CACA99A3DD1763E1AC22D4DA96A14C.jpg
  • Console screen - rom selection
    • Based off of external .txt
    • Upto 900 records works
    • Failed to display with 1500+ rows
  • 2020041518015500-85CACA99A3DD1763E1AC22D4DA96A14C.jpg
  • Download screen - progress report
  • 2020041518023100-85CACA99A3DD1763E1AC22D4DA96A14C.jpg
  • Optional: I used NRO Asset Editor to change PyNx.nro name and image (as shown in screenshot)
  • 2020041518014100-85CACA99A3DD1763E1AC22D4DA96A14C.jpg
To Do / To Learn:
  • Option to Extract zip (e.g Dreamcast games)
  • Option to Delete zip after extraction
I'll share the Python script when I do a little more work on it this weekend but note the following:
  • The script itself does not contain any ROMs or links
  • You will need to create your own .txt files containing the name to display and the download link (e.g "name;link")
  • Side note; I just started learning Python yesterday
 
Last edited by HoTsHoTz79,

HoTsHoTz79

GIC-Developer
OP
Member
Joined
May 9, 2018
Messages
322
Trophies
0
Age
39
XP
964
Country
Canada
Script ready and posted on GitHub

https://github.com/hotshotz79/NX-RomGet

Reminder: you have to create your own .txt files that include the download links

I will also upload the renamed NRO later for those who prefer it as a separate Homebrew

See it in action:


Note: applet mode is okay for files under 100mb
 
Last edited by HoTsHoTz79,
  • Like
Reactions: DocKlokMan

Goma1337

Active Member
Newcomer
Joined
Jul 8, 2016
Messages
26
Trophies
0
Age
36
XP
601
Country
Brazil
Hey friend, first of all thanks for your project, this is pretty cool!

I was wondering if you'd be open to implementing custom install paths and even platform names. I've been looking for a tool to distribute fan translations of games and this would be perfect if that was a thing.

Cheers!
 
Last edited by Goma1337,
  • Like
Reactions: Zukov

steve51184

New Member
Newbie
Joined
Sep 28, 2007
Messages
3
Trophies
1
XP
15
Country
I'm confused you say "Downloading ROMs then transferring via FTP/MTP is a hassle" but how is downloading a rom, uploading to a custom host with direct link support (own server), getting the link, adding to a custom .txt file with custom naming, and then transfering that file via ftp/mtp quicker?

It's 5x the work and requires someone to have a server to host the files? I don't see how the first option isn't much much easier?
 
Last edited by steve51184,

Zukov

Dinosaur
Member
Joined
Oct 2, 2016
Messages
324
Trophies
0
Age
38
XP
908
Country
Chile
Hey friend, first of all thanks for your project, this is pretty cool!

I was wondering if you'd be open to implementing custom install paths and even platform names. I've been looking for a tool to distribute fan translations of games and this would be perfect if that was a thing.

Cheers!
Please include mods that enhance the experience.
 

Underprivlidged

Member
Newcomer
Joined
Sep 6, 2018
Messages
15
Trophies
0
Age
34
XP
197
Country
United States
I'm confused you say "Downloading ROMs then transferring via FTP/MTP is a hassle" but how is downloading a rom, uploading to a custom host with direct link support (own server), getting the link, adding to a custom .txt file with custom naming, and then transfering that file via ftp/mtp quicker?

It's 5x the work and requires someone to have a server to host the files? I don't see how the first option isn't much much easier?


You don't need to do all that. Just find a host with the file already, copy the link, then add it to the list.

Not saying this app is better/less work/etc, but what you stated is WAY over complicating it.
 

steve51184

New Member
Newbie
Joined
Sep 28, 2007
Messages
3
Trophies
1
XP
15
Country
You don't need to do all that. Just find a host with the file already, copy the link, then add it to the list.

Not saying this app is better/less work/etc, but what you stated is WAY over complicating it.

First there aren't many rom sites with direct links and adding hundreds of link like this would take a very long time

Second I'm not over complicating it.. it is a lot more work and still in the end requires you to FTP a file over.. so why no skip all the extra steps and just transfer the ROM file over instead
 

Underprivlidged

Member
Newcomer
Joined
Sep 6, 2018
Messages
15
Trophies
0
Age
34
XP
197
Country
United States
First there aren't many rom sites with direct links and adding hundreds of link like this would take a very long time

Second I'm not over complicating it.. it is a lot more work and still in the end requires you to FTP a file over.. so why no skip all the extra steps and just transfer the ROM file over instead

Because it is very obvious that many people are soon to be sharing around their text files for easy distribution. Just like how ALL these apps turn out.
 
  • Like
Reactions: HoTsHoTz79

HoTsHoTz79

GIC-Developer
OP
Member
Joined
May 9, 2018
Messages
322
Trophies
0
Age
39
XP
964
Country
Canada
Where is it pulling the roms from?
Do you need to provide the roms yourself?


Could i use Gdrive for example?

From user provided .txt files
You can either download from users sharing it or create it yourself

I used archive.org, found ROMs collection as individual zip... View source code, cleaned it up in Excel
Remember: the name of text file determines where the ROMs are downloaded, so Sega - Genesis.txt will download to //ROMs/Sega - Genesis

GDrive, I'm not sure... If you do test it, let us know... Also rename https to http.

I looked into mega.nz but PyNx does not support it

Hey friend, first of all thanks for your project, this is pretty cool!

I was wondering if you'd be open to implementing custom install paths and even platform names. I've been looking for a tool to distribute fan translations of games and this would be perfect if that was a thing.

Cheers!

Can you provide example? I'll see if I can... I just learned Python a week ago plus there's limited library available in PyNx

Currently the app is programmed to install to //ROMs/<name of txt file>

I'm confused you say "Downloading ROMs then transferring via FTP/MTP is a hassle" but how is downloading a rom, uploading to a custom host with direct link support (own server), getting the link, adding to a custom .txt file with custom naming, and then transfering that file via ftp/mtp quicker?

It's 5x the work and requires someone to have a server to host the files? I don't see how the first option isn't much much easier?

It's a hassle for me especially when downloading Dreamcast/PSX games... 700mb first on my phone, then transfer to switch

With this app, if I spend a little time to make a txt file (took me 5-10 min) I can have as many ROMs as I want on my switch, downloadable with 1 click
 
  • Like
Reactions: Cubuss

Underprivlidged

Member
Newcomer
Joined
Sep 6, 2018
Messages
15
Trophies
0
Age
34
XP
197
Country
United States
First there aren't many rom sites with direct links and adding hundreds of link like this would take a very long time

Second I'm not over complicating it.. it is a lot more work and still in the end requires you to FTP a file over.. so why no skip all the extra steps and just transfer the ROM file over instead


I already have a pack uploaded with multiple .txt lists populated and ready to use. And I wasn't even home all day. So... "very long time"
 
  • Like
Reactions: HoTsHoTz79

SeongGino

The Average One
Member
Joined
May 20, 2015
Messages
939
Trophies
0
Age
25
Location
Jersey, Jersey
Website
www.twitter.com
XP
1,932
Country
United States
With this app, if I spend a little time to make a txt file (took me 5-10 min) I can have as many ROMs as I want on my switch, downloadable with 1 click
I'm no lawyer, but turnkey piracy seems like a pretty legally dubious thing to be enabling.
Especially when you could just as easily use your PC and an SD reader to transfer your already-existing backups.
We're trying to enable others to use their own acquired backups, not promote the piracy involved to obtain said backups.
 

Captain_N

Well-Known Member
Member
Joined
Mar 29, 2010
Messages
1,905
Trophies
2
XP
2,032
Country
United States
the easiest rom managing i found is my windows server. all my roms are there (as well as burned on disc for backup). When ever i want to load a rom on the wii for example, i just open the folder with the roms separated by system. I use emulators with smb share features. if i need to install a switch game i can just copy it to usb. Why the install tools dont support SMB shares is beyond me. Tinfoil should support it but it dont.
 

NoNAND

Give me back my legions!
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
This seems nice and all but wouldn't it be better to have a GUI in which you can just paste your link and download stuff that way?
 

evertonstz

Well-Known Member
Member
Joined
Jan 5, 2019
Messages
209
Trophies
0
Age
29
XP
557
Country
Brazil
I'm confused you say "Downloading ROMs then transferring via FTP/MTP is a hassle" but how is downloading a rom, uploading to a custom host with direct link support (own server), getting the link, adding to a custom .txt file with custom naming, and then transfering that file via ftp/mtp quicker?

It's 5x the work and requires someone to have a server to host the files? I don't see how the first option isn't much much easier?

Automation, mate! Automation! Here's my use case:

>mount my google cloud with terabytes of no-intro roms in my fedora (m'lady) server using rclone
>serve the mounted folder with a simple web server locally
>use a simple python script to make the txt automatically pointing to the mounted folder
>send the txt over to the switch
>????
>profit, terabytes of roms in my palms

The good thing about rclone is that it won't actually download all the terabytes, but it's on demand: it'll only download the files I try to get from my switch. I can even make this setup remote over the internet with a reverse proxy, since I just need to point Gotify to it.
Pretty handy stuff if you ask me, just not that user friendly. And yes, you probably need a server or someone willing to share a server like people do with Tinfoil.
 
Last edited by evertonstz,

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,728
Country
Japan
Worth noting that unless this integrates .chd compression, it’s probably not a good idea to use an automated method for CD-based games since cue/bin is unnecessarily bloated.
 

evertonstz

Well-Known Member
Member
Joined
Jan 5, 2019
Messages
209
Trophies
0
Age
29
XP
557
Country
Brazil
Worth noting that unless this integrates .chd compression, it’s probably not a good idea to use an automated method for CD-based games since cue/bin is unnecessarily bloated.

Just put chd in your text files instead of cue/bin. Who is still using cue/bin for achieving anyways?
f8deef878867dee11b7a15a0a55765b4.jpg
 

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,728
Country
Japan
My personal files are all chd, but I suspect people needing an application like this will probably be downloading redump-format files as-is.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Sonic Angel Knight @ Sonic Angel Knight: Duh duh duh!