Jump to content
thatman84

(Tutorial) Using Games In Subfolders - "Folder Trick"

Recommended Posts

Setting Up Systems That Have/Need Games In Subfolders

Credits
loueradun
brentg

This guide requires the text editor Notepad++
https://notepad-plus-plus.org/

NOTE
A PC IS REQUIRED

Why? - HSAndroid doesn't support games stored in subfolders directly

There are a few systems that "need" games to be stored in subfolders, to retain specific rom file names and structure (ScummVM, Quake collection etc) and some that you really should organise games into subfolders to save a world of renaming "full sets" (Playstation or any large CD based system with bin/cue files or alike).

This thread was the source of this information and IS a very welcome tip for any HyperSpin Android user (I should have done this post long ago...)

 

Side Effects...

The main side effect of doing this trick means all media needs to be stored in subfolders...It's a simple fix but will take a little extra work on your part. (Much less than renaming everything imo)

The knock on side effects are...

  • Custom database is required.
  • The roms_only filter doesn't function

How?
1. For CD based systems like PS1

Note.
For more information on databases refer to the
Tutorial Section Here.
There are tools availiable for creating databases from your rom folders automatically. You will be missing all meta data but its up to. I personally dont create databases this way but have used
Don's Tools Here to do it before. Other apps may be better... See 3rd Party Apps Here

Step 1
Your game folders along with the game file Hyperspin launches (i.e. .CUE files) must be named as stated in the xml or vice versa, as per normal Hyperspin setups require.

 

Screenshot (263).png

Step 2

Once your files are renamed and organised as required you will need to open the .xml database in Notepad++

  • Hit control "ctrl f" to open the "Find" console
  • Choose the Replace tab (or navigate to Search=>Replace from the menu)

 

Under "Find What:" input

(?<=\<game name=\")(.*?)(?=\")

Under "Replace With:" input

$0/$0

And finally make sure "Regular expression" is marked in the Search ModeScreenshot (265).png

Click "Replace All" then save your file.

 

Exampl Output Database Entry

Note "game name" is repeated twice. "Blockids (USA)/Blockids (USA)"

</game>
	<game name="Blockids (USA)/Blockids (USA)" index=""  image="">
		<description>Blockids (USA)</description>
		<cloneof></cloneof>
		<crc></crc>
		<manufacturer>Natsume</manufacturer>
		<year>2003</year>
		<genre>Puzzle</genre>
		<rating>ESRB - E (Everyone)</rating>
		<enabled>Yes</enabled>
	</game>
	<game name="Blood Lines (

Tip

If you want to reverse these settings, use these values for the regex:

(?<=\<game name=\")(.*?)/(.*?)(?=\")
$1

One thing to note is that the regex is searching for the string <game name=" and stops when it sees the next double quote so if you have any additional spaces or a name is not the first attribute on the game element in the xml then it won't find the right string.

 

2. For Systems like Quake (Tyrquake core in RetroArch)

As the Quake Collection has different names for Game Folders and Game Files you would need to manually create the entries in the database.

So long as you put the "folder/gamefile" under the <game name= tag everything will work correctly.

Screenshot (267).png

 

Step 3 - Organising your media

As I mentioned before ALL of your "per game" media will need to be sorted into their own folder to be of any use.... The database is looking for files inside a folder named the same as the file :confused:

  • Wheel Art
  • Box Art/Cart Art (Basically anthing in the Artwork 1 to 4 folders)
  • Videos
  • Game Themes (default.zip theme EXCLUDED)

For Collections like Quake some games are named the same (PAK0.pak)....In this case you will probably have to manualy organise the media or manually rename it to match the xml.

 

There are many methods of doing this in batch format. The quickest method I have found is a Program by EmuMovies user Tempest.

https://emumovies.com/files/file/597-roms-in-and-out-of-folders/

MAKE SURE YOU READ THE RELEASE POST.
It will put EVERY file into a folder so only run it on a folder thats artwork only
(There is a reverse program included)

Quick Steps...

  1. Download the file (linked above) and unzip it.
  2. Copy the "Put Roms in Folders.exe" in to your artwork folder
  3. Double click
  4. Rince and Repeat for all types of game media you have

File2Folder1.png

File2Folder2.png

Alternativley you can use WinRAR to zip everything then unzip all files to their own folder.

Or another program that adds a shell extension to your right click menu

http://www.dcmembers.com/skwire/download/files-2-folder/

Another program I have that will browse to your directory is "File_in_Folder_Renamer.exe" but I cant find a link for that.

  • Super Like 1

Share this post


Link to post
Share on other sites

Respekt for writing up "the folder trick" as I like to call it. As you well know, I just pointed people to that PS thread you have given credit to.

Yes unfortunately ALL media needs to be stored in subfolders and that includes the unique game themes we sometimes use, rather than just the "default.zip" in the themes folder.

Is there a thread/guide for creating a custom database that could be added as a link in the OP? A custom database  (of just the games we want) is required as we MUST set "roms only=false" in the filters section of the .ini file for the system. Meaning ALL games are shown from the XML whether we have the game or not. If it's set to "roms only=true" nothing will display whether you have the games or not and you will just get kicked back to the main menu of Hyperspin.

Yes this trick makes doing the system more "tricky" BUT it's not really that difficult once you get the hang of it. Fine work my friend :)

 

Share this post


Link to post
Share on other sites
1 hour ago, Honosuseri said:

Respekt for writing up "the folder trick" as I like to call it. As you well know, I just pointed people to that PS thread you have given credit to.

Yes unfortunately ALL media needs to be stored in subfolders and that includes the unique game themes we sometimes use, rather than just the "default.zip" in the themes folder.

Is there a thread/guide for creating a custom database that could be added as a link in the OP? A custom database  (of just the games we want) is required as we MUST set "roms only=false" in the filters section of the .ini file for the system. Meaning ALL games are shown from the XML whether we have the game or not. If it's set to "roms only=true" nothing will display whether you have the games or not and you will just get kicked back to the main menu of Hyperspin.

Yes this trick makes doing the system more "tricky" BUT it's not really that difficult once you get the hang of it. Fine work my friend :)

 

Thanks for the extra info dude. I went through the process of renaming all my sets so only used this for Quake and now scrummvm (unfinshed).

I can link the DB guides in the tutorials section and update the side effects with themes & rom filter :)

  • Like 1

Share this post


Link to post
Share on other sites

Yes I'm the same. Renamed my PS 1 images and they are in one folder not sub folders. I have used this trick for a few systems though, can't recall them all off the top of my head. Yes Doom Classics, the Quake Collection & ScummVM are amongst them.

Happy to provide the extra info. Figured it made sense for "noobs" to have a link from here, so they know how to make a gamelist xml for only the games they want shown.

Share this post


Link to post
Share on other sites
On 23/04/2018 at 8:12 AM, Honosuseri said:

Respekt for writing up "the folder trick" as I like to call it. As you well know, I just pointed people to that PS thread you have given credit to.

Yes unfortunately ALL media needs to be stored in subfolders and that includes the unique game themes we sometimes use, rather than just the "default.zip" in the themes folder.

Is there a thread/guide for creating a custom database that could be added as a link in the OP? A custom database  (of just the games we want) is required as we MUST set "roms only=false" in the filters section of the .ini file for the system. Meaning ALL games are shown from the XML whether we have the game or not. If it's set to "roms only=true" nothing will display whether you have the games or not and you will just get kicked back to the main menu of Hyperspin.

Yes this trick makes doing the system more "tricky" BUT it's not really that difficult once you get the hang of it. Fine work my friend :)

 

Updated OP....Default.zip theme works fine in the Quake collection but yes games themes need to be in subfolders.

I know you may not be getting this :)

Now to start the folder organising thing. Need to get this and Quake mods wrapped up.....TO MANY unfinished projects!

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By Honosuseri
      As we celebrate 25 years of DOOM! John Romero has brought us SIGIL, an unofficial 5th chapter to the original game. So as Retroarch's Prboom core has now been updated to support it...figured I should really add it to my Doom Classics wheel...
      Threw together a Sigil theme, wheel art and video snap. I was pleasantly surprised, that the prboom core now played the midi music natively. Doom 1&2 originally required me to add the music tracks as mp3 files. 
    • By thatman84
      (FYI having trouble with upping some screenshots and the new formatting so please excuse the wierd format)
      Converting 16x9 Themes for Hyperspin Android
      List of theme animation compatibility
      https://drive.google.com/folderview?id=1-8Ofa_GrAdnQ22nf7W7QYVeQoKBQxA_-
      (I am in NO way competent with artwork resolutions but my method works and looks good to me)
      Why...
      Because sometimes that theme you really liked just doesn’t display correctly 
      The main reason for theme problems is the use of animation and scripting of the .swf assets in the “theme”.zip
      (It’s best to replace themes that cause Hyperspin to crash out, but you can try to convert them)
       What’s covered...
             1.      Extract PNG assets from swf files
             2.      Reduce HQ artwork to be compatible with Hyperspin
             3.      Further reduce artwork width to allow for Hyperspin 4x3 -> 16x9 stretching
             4.      Recompile your theme
       
      What is Needed:
      Update on resizing tool.
            Fotosizer is now advised against because of the compression/quality loss it causes.
      pPlease use Photoshop or this program recommended by @IceLancer https://sourceforge.net/projects/easyimagesizer/?source=typ_redirect
      A    A  Fotosizer (http://www.fotosizer.com/) batch resize image files
              B.     Flash Decompiler (https://www.free-dec...flash/download/) extract png’s from swf
              C.     Time and Themes
       I have done a little testing for Main Menu themes. This spreadsheet shows what I have tested and its Android compatibility status. The sheet has download section links for all themes I have tried.
       
       
      Let’s get to it... 
       
      So grab a theme zip you want to play with and Unzip it. Any 16x9 Main Menu, Game or System Default theme will do.
       
       
      BakerMan provided me a guide to extracting the PNG’s from SWF but it has since been lost. 
      These are the steps
              1.      Open JPEXS once downloaded and installed from link above
              2.      Click on the “Open” tab and browse to the offending .swf file from your unzipped theme
       
           SCREENSHOT
      3.     
       

       

             3.      Right click on “Images” on the left and click “Export Selection”
      (At this step you may find multiple images. If these images are only parts of one image, say the arms and legs of a character, you will have to lose that image completely from the theme or replace it with another one)
       
      SCREENSHOT2
             4.      Click “ok” to PNG file type then choose a location for the exported images (Default is Desktop. Only export one at a time and  then move the PNG out of the output folder as it overwrites each one if not)
       
       
      SCREENSHOT3
             5.      Now browse to that Output location and you will find your PNG’s in an “images” folder.
       

       
      You are now ready for phase 2 – Resizing the images
      Note, fotosizer does cause a reduction in artwork quality. If your sensitive to this you may want to use another method. (If you know of a better program please comment) I only run a 37' screen and don't mind myself.
      (Resizing Artwork is covered comprehensively by Avar in his tutorials found HERE)
      Open Fotosizer Add the Artwork that was converted to PNG Reduce the images to 68% KEEP MAINTAIN ASPECT RATIO TICKED (this is the best size for the ones I have done)  
              4.       Move the right side settings bar down and select an Output Folder
       

      5   Remove that Artwork from Fotosizer
      6.   Add the newly resized artwork back into Fotosizer
      7.   Reduce the Width to 75% (to allow HS to stretch it back when its loaded)
      8.   UNTICK MAINTAIN ASPECT RATIO
       
             9.   Now add this finished art back into the theme folder and zip it up again
            
             10.       Name the zip file the same as you have it in the “Main Menu.xml” database
       
      Final Thoughts...
       
       
      Now when you try this theme out you may find the artwork has slightly changed location. If so adjust the Artwork positions in the theme.xml file within the theme.zip OR load it into Hypertheme and adjust it as required
       
       
      Hope this helps someone.
       
       
      HS Android Theme Animations.txt
    • By reznnate
      Tested Emulators -- .ini config settings   Retroarch - Various emulators   exe=com.retroarch/com.retroarch.browser.retroactivity.RetroActivityFuture  parameters=<choose one of the emulator cores like below>   Examples of retroarch core parameters Atari 2600 core:  parameters=cores/stella_libretro_android.so PSX core:  parameters=cores/pcsx_rearmed_libretro_neon_android.so   libretro cores:  4do_libretro_android.so  bsnes_mercury_performance_libretro_android.so  bsnes_performance_libretro_android.so etc...     Dolphin - Gamecube/Wii/Wiiware exe=org.dolphinemu.dolphinemu/org.dolphinemu.dolphinemu.activities.MainActivity parameters=AutoStartFile    Newer Builds from Dolphin Website:-   exe=org.dolphinemu.dolphinemu/org.dolphinemu.dolphinemu.ui.main.MainActivity parameters=AutoStartFile    IrataJaguar - Atari Jaguar  exe=ru.vastness.altmer.iratajaguar/ru.vastness.altmer.iratajaguar.MainActivity  parameters=rom   Real3DOPlayer - 3DO  exe=ru.vastness.altmer.real3doplayer/ru.vastness.altmer.real3doplayer.MainActivity  parameters=cd   NES.emu - NES  exe=com.explusalpha.NesEmu/com.imagine.BaseActivity  parameters=   MSX.emu - Colecovision, MSX, etc.  exe=com.explusalpha.MsxEmu/com.imagine.BaseActivity  parameters=   Mame4Droid - MAME  exe=com.seleuco.mame4droid/com.seleuco.mame4droid.MAME4droid  parameters=   Mupen64Plus AE exe=paulscode.android.mupen64plus/paulscode.android.mupen64plusae.MainActivity
      parameters=    Nightly builds exe=org.mupen64plusae.v3.alpha/paulscode.android.mupen64plusae.SplashActivity parameters=     Play! - Playstation 2 exe=com.virtualapplications.play/com.virtualapplications.play.ExternalEmulatorLauncher parameters=   Reicast - Dreamcast  exe=com.reicast.emulator/com.reicast.emulator.MainActivity  parameters=   Redream - Dreamcast exe=io.recompiled.redream/io.recompiled.redream.MainActivity parameters=   Drastic - Nintendo DS  exe=com.dsemu.drastic/com.dsemu.drastic.DraSticActivity  parameters=GAMEPATH   Fpse - PSX  exe=com.emulator.fpse/com.emulator.fpse.Main  parameters=path   ePSX - PSX  exe=com.epsxe.ePSXe/com.epsxe.ePSXe.ePSXe   parameters=com.epsxe.ePSXe.isoName  * change romext=cue in settings.ini, iso did not work for me   PPSSPP (FREE version) - PSP  exe=org.ppsspp.ppsspp/org.ppsspp.ppsspp.PpssppActivity  parameters=org.ppsspp.ppsspp.Shortcuts PPSSPP Gold - PSP             exe=org.ppsspp.ppssppgold/org.ppsspp.ppsspp.PpssppActivity              parameters=   uoYabause - Sega Saturn exe=org.uoyabause.android/org.uoyabause.android.Yabause
      parameters=org.uoyabause.android.FileNameEx
      Yaba Sanshiro
           exe=org.uoyabause.uranus/org.uoyabause.android.Yabause
               parameters=org.uoyabause.android.FileNameEx
      Gearoid - Sega Game Gear  exe=com.androidemu.gg/com.androidemu.gg.EmulatorActivity   Parameters=   Colem - Speccy ZX - fMSX VGBANext  Emulators from Garage Research  PAID  com.fms.colem.deluxe - Colem - Colecovision  com.fms.fmsx.deluxe - fMSX  com.fms.ines - iNES  com.fms.emu - VGBAnext - GBA/GBC/GB Emulator  com.fms.vgb - VGBc - Gameboy Color  com.fms.mg - Master Gear - Sega Game Gear  com.fms.speccy.deluxe - Spectrum Sinclair ZX  FREE  com.fms.colem  com.fms.fmsx  com.fms.speccy    Set "??" to "com.fms.emulib.MainActivity" for all products but VGBAnext.   For VGBAnext:  ??=com.fms.vgba.MainActivity for opening *.gba files  ??=com.fms.vgb.MainActivity for opening *.gbc/*.gb files   OpenBOR - 2D Game Engine (Some integration issues with Hyperspin)              exe=org.openbor.engine/org.libsdl.app.SDLActivity Parameters=   Launch android app package names in database.xml Determine Android game name through Google Play web interface. i.e. https://play.google....ure.dragonslair   pcgame=true
    • By Honosuseri
      A video to help you understand the Redream emulator, covering issues and questions you might have. Currently Redream doesn't use launch intent but it will be added soon. I'll do another video to help with setting it up with Hyperspin (for STV) and Arc Browser (for phones & STV) once that feature is added in.

       
       
×
×
  • Create New...