Skip to main content
description is text with a small markup (## title, - bullet, paragraphs separated by a blank line). The kit’s description() turns it into safe DOM nodes. Trailers (d.trailers[i].url) are HLS (.m3u8). Use the kit’s attachStream(), which uses native HLS or hls.js as needed.

Uninstall

ejg.game.uninstall(id) does not uninstall anything by itself. It opens a host dialog that explains what will happen and asks for confirmation.
  • If the game has an uninstaller, it is opened (the one from its entry in Windows’ Installed apps, or an unins000.exe / uninstall.exe in its folder). When the game disappears from disk, it leaves the library.
  • If it has nothing, its folder goes to the recycle bin. A library folder, a downloads folder, a system folder, or a folder that contains other games is never deleted.
  • If it is a console game, it is deleted: its folder (if it was downloaded from a catalog) or its file, with its DLC and updates, goes to the recycle bin.
It works for any game that is still in place. To know whether to show the option, use the kit’s canUninstall(game) (/_sdk/kit/library.js). Emulators installed from ejGames are in library.all with source: "emulator". They are not games. isSoftware(game) tells them apart, visible() leaves them out (the same as console games) and software(library.all) returns them for Homebrew. Console games (source: "rom" or "homebrew") carry platform ("switch", "vita", "3ds", "ps2"…), emulator (what opens them; "" if there is none) and rom (what was read from the file: titleId, version, region, serial and extras, its updates and DLC). From the kit:
When you uninstall, the game leaves the library along with its hours.