Facilitates workflow organization for PPSSPP upscale projects.
- Organize large groups of files with drag-and-drop simplicity
- Generate textures.ini file for your project
- Python 3.7
- Open PPSSPP Settings Menu:
Settings > Tools > Developer Tools - Check 'Save New Textures'
- Click 'Create/Open textures.ini file for current game.'
Make note of this location!
[PPSSPP DIRECTORY]/TEXTURES/[PSP GAME ID]
This is your [GID] directory (Game ID).
- Copy
generate_folders.pyandgenerate_texture_list.pyto[GID]/new
PPSSPP will save
[GID]/newif they are not yet listed in thetextures.inifile!
- Run
generate_folders.py
You can add multiple 'root' directories' Note: This script is designed to create directory trees three directories deep.
This script will also create temporarysorting foldersfor textures which have a more generalized use.
- Think carefully on how you organize your project. You may end up having thousands of files!
- It is highly recommended that you organize your project by
in-game location!
Take note of the new directories in [GID]/new
Symbolic links (also known as
"symlinks") are essentially 'shortcuts' which point your operating system to another file or folder at a different storage location.Symlinksmay be used to optimize your workflow without creating redundant copies of files.
- In Windows Vista/7/10, users can create linked directories or
"junctions"using the following commandline instruction:
mklink /J "[target directory]" "[source directory]"
- Press the
windows keyorstart buttonand type'cmd'to search for theCommand Lineutility. Right clickonCommand Lineand selectRun as administrator.- Navigate to
[GID]by enteringcd [path to GID]
Hint: You can copy thedirectory pathusingFile Explorer. - Create
junctionfor thetexturesdirectory.
Example:
mklink /J "[_FULL PATH_ to GID]/textures/" "[_FULL PATH_ to GID]/new/textures/"
Using a symlink in this way will make it easier for your to keep everything in the/new/directory while you are still working. Whenever you are ready to release your texture pack, users will be able to simply place the pack in[GID]without any modifications.
- Create
symlinkfortextures.ini:
mklink "[_FULL PATH_ to GID]/new/textures.ini" "[_FULL PATH_ to GID]/textures.ini"
Note that this command is not a Junction. Do not include
"/J"!
- Create
junctionsinsortingfolder: Similar to#4, createjunctionsfor each of the temporarysorting folderscreated inStep 2: Preparing Directories.
This time, create your shortcuts in thesorting`` folder in[GID]/new```.
Set up your workflow such that you have three windows open, one each for the following directories:
[GID]/new/,[GID]/sorting/, and[GID]/textures/.
- Simply play through an area of the game with the textures you want to replace. PPSSPP will save the textures in
[GID]/new/. - Create a
save state, then fully exit the game to PPSSPP'smain menu.
PPSSPP will not reload textures.ini if you do not fully exit the emulation.
- Select any general, repeated, or non-area-specific textures in the
/new/directory and move them into their appropriatesorting folders. - Leave any textures specific to your targeted
in-game areain/new/. - In your
[GID]/textures/window, navigate to the directory containing thesubdirectorywhich corresponds to yourin-game area.
Note: You can create directories yourself if you overlooked a certain area or feel you want to change your structure.
- Drag the
in-game areadirectory ontogenerate_texture_list.py Resumegame emulation andload state.- Repeat previous steps with the
next area.