Moving the game import files away from PiTool folders?

im seriously considering using PE’s own directories for storing all game import JSON files etc. Just like all steamvr optimization and favorites json files are now already.

This means we could create much more sophisticated json files for each game, with arguments, custom thumbnail urls, descriptions, setting recommendation tabs, and fundamental things like on-start up scripts per-game all in one file per game.

I dont know if the PiTool engineers will like this idea, as these imports will no longer be read by PiTool game launcher and many features will be disconnected from PiTool, but I still think its something to consider.

The current game json profiles are too simple and limited. And PiTool has a bad habit to re-import all existing ( and already imported) games and overwrite the game profiles upon each start of PiTool (windows reboot etc) which currently would destroy any added fields to the json.

(This is the reason why PE is re-importing all SteamVR games upon each PE launch in latest version 0.25. Really not an optimal solution…)

The only thing that currently stops me from moving to new folders is the fact I still have an issue with my own import script for Oculus games (not Revive, thats easier). Once I have solved it, we could run PE totally independent of PiTool except for the connection required for changing/initializing HMD settings of course.

Ive already created my own thumbnails import as well, so Pitool game launcher imports are really not needed anymore.

What do you think guys?


Hi Martin

I think it sounds like the best option for future improvements :+1:
Freedom to code and not have it destroyed / ruined by PiTool behaviour.



Thanks, yeah I feel the same. Let me just dig into the Oculus import script and fix the missing part…


If it makes PE be a more feature-rich launcher and have no drawbacks then it’s a no brainer. It makes sense for PE to hold this info and leave pitool out of it…but only if the configuration isnt manual. Could PE search steam/Oculus store for apptitle or something and pull up an image url? Perhaps “update library” (for new titles) and “clean library” (for uninstalled titles) buttons could be put in the UI somewhere to keep the title database under control… and kept locally.

Sharable configs would be nice for people with matching system specs so we can push clarity/fps…doesn’t need to be shared from PE tho…perhaps voluntarily on the forums.

The “favourites” category is great as I have a lot of old entries that I dont want/need/even have installed anymore that still show up and I’d rather not there…so great!

The whole point of the launcher being inside the headset is that you never need to look at Pitool ever again… so let’s get everything in there we can think of.


Yes it already does so for SteamVR games in v0.25, importing (downloading) thumbnails if not already exists. Im currently looking for a bulletproof way for Oculus as well.

Oculus thumbnails are no problem, but Oculus game titles are (hence PiTool also uses game directory name as game title, except with underscores replaced with spaces).

Another issue is multiple Oculus Apps folders (multiple libraries) which is a mess. Steam sorts this extremely simple while Oculus (probably intentionally) makes a mess out of the manifest files, registry entries etc.

Importing Revive titles is as easy as steam, including titles, thumbs, exe and arguments. I would love to simply use Revive importer for all Oculus games instead (and using 2 methods of launching each game, steamvr or native via OVRLauncher) but not everyone has Revive installed or even knowing what it is, so I cant simply replace the Oculus import with Revive only.

Worst case, I will simply keep the Oculus imports from PiTool, and handle the rest with my own scripts (SteamVR, Revive, VivePort, Imports and Favorites)


This does sound like a good idea. Tbh I don’t see a reason why each launcher in this case couldn’t have their own game json.

The enguneers may even understand the idea against needing to rescan the library. They should convert that more to a scan button options.

Ie scan Steam/Vive Port/Oculus Library for new Content.

Instead of re importing the entire lubrary it returns a list of new content to add.

Your efforts on this is quite awesome!


that’s something I already have on my to do. Simple re-import and clean-up feature. Could be very handy. Easy to implement as well, as the import functions are already made and can be called at any time. Its all about adding it to buttons and also refreshing the DataTables once import is done.

Yep thats a part of the online cloud profile system im still struggling with.

The Favorite category will get its own favorite lists you can create. Like “Flight Sims”, “Racing” or whatever you wanna call it. Thats very simple to implement and will be done the upcoming weeks.

Yep, thats the plan :slight_smile:


It would also make it better to have option after a scan/rescan for content to have options like

  • Add all new Content
  • Choose Content to add

This would be beneficial for things like a vr arcade center.


The reason may be it could get quite confusing when a user suddenly uses the PiTool features and realizes many functions wont be accessible from PiTool and custom profiles would not even exist.
That could be solved if PiTool simply relies on PEs config folders, which relies on the coders to re-do some stuff, which im not sure they are so willing to :wink:

Lets hope so :slight_smile:

Btw thanks man. Its a blast to work on this, even if it takes all my time, day and night. I look forward once we have the code in public and get some really skilled heads put into the project!


that’s doable as well. Not a bad idea actually. Noted!


True enough. It might be a mild pain. But could maybe have PE export the game json after changes made in PE to pitool directory with just the Pitool Launcher specific related settings? If there not wanting to change structures. Though with idea of opensourcing pitool and experiencing PE; I am sure they will want to make the changes. :beers::sunglasses::+1::sparkles:

Your very welcome Marcin! Your really shining with this fantastuc project. Back in the p4k days we had often discussed about having a Piplay VR launcher and your delivering it very nicely.


go for it, Pitool needs a facelift anyway probably to keep up with you not the other way around.

Pitool is currently a UI nightmare. And I know I do UI for a living.

Exactly. It’s amazing how far You’ve gotten in such a short while, Martin…!