Homebrew COMPLETED PyNX - Game Redirector

Should I add NPDM editing to this?

  • Yes

  • No


Results are only viewable after voting.

ChainedHope

Active Member
OP
Newcomer
Joined
Dec 12, 2017
Messages
41
Trophies
0
Age
29
XP
195
Country
United States
GameRedirectory is a PyNX script for managing your LayeredFs games. Follow the installation and how-to section.
Features: NPDM editing, moving files between a storage location (/switch/games/) and donors (/atmosphere/titles/), configuration file to keep track of what is where.

Downloads
GITHUB: https://github.com/Kozlowlw/py-switch


Old releases:
v1.0.3: https://mega.nz/#!h6xhkQhY!rbzaB0mozAjoYSjcZ-dfcBIFiIkt4fmcvN_O9e7Y5Rw
v1.0.2: https://mega.nz/#!0rZTGKaY!DQxYZzXoQ0NFdClAvFz4GGWtr0gLardSB6EEh_2jcj0
Beta-v1.0.1: https://mega.nz/#!ImpzWYBC!C2vMSiJSDkNrww6F83J0M0t8prhZYjetNYeBESWzTtU
v1.0.0 - https://mega.nz/#!kiRlxCZK!DA3hl5dr_ea37tPsA_IWkXDQzf1x0fF5mhM8mrsw51g

Installation:
  1. Put PyNX in /switch
  2. Put GameRedirector.py in /switch
  3. Put your titles in /switch/games/
How To Use:
  1. Launch PyNX.nro from hbl/hbm
  2. Select GameRedirector.py from the list (Up/Down on dpad/left joycon to move, a to select)
  3. Press 'a' again. The dialog doesn't pop up that asks if you want to run with v0.5.1 for some reason.
  4. Use 'Select Donor Title' to pick which game to redirect to (overwrite)
  5. Use 'Select Game Folder' to pick the game you want to redirect (play)
  6. Use 'Swap Files' to begin the process
  7. Press the home button to exit. The 'End' option kills my script, but not PyNX. I couldn't find a method for doing that in there library.
  8. Start the donor game and enjoy.
FAQ:
Q: What file structure do the /switch/games/ need to be in?
A: {GameName}/RomFs/* <---- NOTE: It defaults to a folder. If you want it to use .bin or .romfs then change it in the config.ini in /switch/games/
{GameName}/ExeFs/*​

Q: How do I get my XCI into that structure?
A: You can use my python script (here) or any of the other XCI converters and just make the folders.

Q: What games work with what donors?
A: Check here [Also post what you try, so we get a better list]

Q: PyNX crashes/Homebrew doesn't load in LayeredFs patched kernel?
A: Right now you can only "sometimes" use homebrew alongside the LayeredFS kernels. Booting into a non-patched kernel [regular hetake] to use the script and then rebooting into your RomFS/LayeredFs patched kernel to run the game works too. This will hopefully be fixed at some point. I've heard Switchblade lets you run homebrew with less crashes.

Q: Your script crashed after running.
A: It happens. Try again.

Changelog:
V1.0.3 - Added .npdm editing. File structure has changed!!!! Games now go in /switch/games/{Game Name}/{ExeFs and RomFs dirs}. This also means that RomFs needs to be a folder now. You are welcome to change it in the code, but to make it better fit my python xci-to-lfs script its staying as a folder (literally change it to move '/RomFs/' to '/RomFs.bin' and it should work)

V1.0.2 - Updated.. Shouldn't have anymore issues with config files. Working on npdm and folder editing for v1.0.3. Will probably change file structure a bit if/when I do this.

V1.0.1 - Finished the config portion. Also managed to get moving files working instead of copying. It now takes less than a minute to move a previous redirect and move in a new game. #Success. This had very limited testing so... beta?

V1.0.0 - POC release. Works but super slow
 
Last edited by ChainedHope,

ChainedHope

Active Member
OP
Newcomer
Joined
Dec 12, 2017
Messages
41
Trophies
0
Age
29
XP
195
Country
United States
Sick! Will certainly serve very nicely for, well, swapping titles and play stuff that wasn't expected to run.
Tell me how it goes. I didn't even think to check save data between swaps. And well... its 8am and I've been up all night so I'm done for the now.
 

ChainedHope

Active Member
OP
Newcomer
Joined
Dec 12, 2017
Messages
41
Trophies
0
Age
29
XP
195
Country
United States
Hey, I notice you use shutils instead of os.rename(), is there any specific reason why?
I was having weird issues with os anything tbh. Mostly OSErrors, and when I would try to pass through them it would cause problems like files mysteriously disappearing as if they were being renamed or moved to hidden parts (or being deleted all together which shouldn't have happened). Other parts of PyNX use shutils so I figure they must have a good reason for it and just went with it. Originally the script only used os, sys, and a few nx imports.

-- e
I'm making a few changes. I want this configuration to work >.< its going to annoy me until its done....
 
Last edited by ChainedHope,
  • Like
Reactions: lutyj

ChainedHope

Active Member
OP
Newcomer
Joined
Dec 12, 2017
Messages
41
Trophies
0
Age
29
XP
195
Country
United States
If I could get someone to test the beta file out, that would be awesome. Cut down the time considerably and added the configuration file to keep track of everything. Config file might break tho so keep an eye on it. (Beta release)
 

bedbug1226

Well-Known Member
Newcomer
Joined
Dec 1, 2014
Messages
84
Trophies
0
Age
30
XP
535
Country
United States
I Tried it on The binding of isaac replaceing fallout shelter and it worked great.

Then I tested it and the config broke when I tried to put a game over the octopath demo. It seemed to put it over fortnight in the config for some reason?
 
Last edited by bedbug1226,

ReavoEnd

Member
Newcomer
Joined
Jun 17, 2018
Messages
22
Trophies
0
Age
34
XP
173
Country
United States
No idea, every game is binded with BlazBlue xD

Ditto. I selected Octopath Demo as the donor title and config states it instead used BlazBlue as the donor title. Since BlazBlue is the top entry, I'm guessing it is the default and the "Select Donor Title" menu is just not working/actually changing the selected donor title?
 

bedbug1226

Well-Known Member
Newcomer
Joined
Dec 1, 2014
Messages
84
Trophies
0
Age
30
XP
535
Country
United States
I think putting "current_settings[3] = selected" under "def donor_action(selected):" might fix this?

def donor_action(selected):
current_settings[0] = donor_tids[selected]
current_settings[3] = selected

(Ah I see this fixed the config but break the movement?)
 
Last edited by bedbug1226,

Cali-Bean

Member
Newcomer
Joined
Jun 17, 2018
Messages
13
Trophies
0
Age
22
XP
97
Country
United States
Is it possible to do this with a android phone?

--------------------- MERGED ---------------------------

Will it be possible to get the RomFS and ExeFS with an android?
 

bedbug1226

Well-Known Member
Newcomer
Joined
Dec 1, 2014
Messages
84
Trophies
0
Age
30
XP
535
Country
United States
Try this?
-DELETED-
Delete old config and place games back in correct directory

I'm not the best programmer and have no experience with python but i butchered the program and I fixed the bug added some checks for some common errors I could see people doing.

Trying to check for empty game folder or game already moved right now.
 
Last edited by bedbug1226,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • S @ salazarcosplay:
    and co op
  • Xdqwerty @ Xdqwerty:
    @salazarcosplay, kind of like mugen or rivals of aether?
  • S @ salazarcosplay:
    and also ahve the option to play as a human
  • S @ salazarcosplay:
    or set it up that when you get injured past a certain point they have to replace your human parts with cybernetics
  • Xdqwerty @ Xdqwerty:
    i have a placeholder enemy sprite i made
  • S @ salazarcosplay:
    or have it that you don't know you are a cyborg, robot, and you find out and have a existential crisis
  • S @ salazarcosplay:
    or have it start in the virtual world and you are an ai that gained sentience
  • Xdqwerty @ Xdqwerty:
    btw gonna wash my face in a bit, my eyes feel tired
  • S @ salazarcosplay:
    and you convince your owner to help you break out of the virtual world to real world
  • BigOnYa @ BigOnYa:
    Eyes - "yawn"
    +1
  • S @ salazarcosplay:
    you bleack in to goverment computer systems to get cyborg schematics so you can get a robot body constructed
  • Xdqwerty @ Xdqwerty:
    btw @BigOnYa the health bar doesnt decrease when i take damage (and yes i put the "at the beggining of the scene change value of greenflatbar: set to Protagonistcopmode.Health::Health())
  • S @ salazarcosplay:
    i the protagonist
  • S @ salazarcosplay:
    human, robot, cyborg
  • S @ salazarcosplay:
    human with cyborg enhancements
  • S @ salazarcosplay:
    or like terminatior
  • S @ salazarcosplay:
    with living tissue
  • BigOnYa @ BigOnYa:
    @Xdqwerty there is health behaviour you can add to your character, then to use a health bar is lil more complicated, google n watch a few tutorial video on it, be too hard to explain here.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, the character has the health behavior
  • BigOnYa @ BigOnYa:
    I know you have to create a health and health max variable. Then there is a calculation you use in code to subtract width size of the health bar. Google few vids.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, the "greenflatbar" is one of the preset health bars btw
  • BigOnYa @ BigOnYa:
    Yea you can use any bar/sprite. It will just change the width. Ok good luck and have fun. I'm off to go shoot some pool at the bar. Talk to you later.
    +1
    BigOnYa @ BigOnYa: Yea you can use any bar/sprite. It will just change the width. Ok good luck and have fun. I'm... +1