Tags

Tag files are tiny text files that act as shortcuts for non-ROM platforms like Steam, Windows, ScummVM, PS Vita, Moonlight, and Xbox Game Pass. Instead of containing game data, they hold key-value pairs that tell Cocoon how to launch a specific game through an external app.

Tag files appear as normal games in your library — they get artwork scraping, favorites, folders, everything. Traditional emulator platforms (NES, SNES, GBA, etc.) use actual ROM files and never use tags.

Background: The tag file format originates from Daijishō — Cocoon’s platform JSON format is Daijishō-compatible.


How Tag Files Work

A tag file is a plain text file with a specific extension placed in the right platform folder. The filename (minus extension) becomes the game’s display name in Cocoon. Inside the file, each line follows this pattern:

[tagname] value

Multiple tags can exist in one file. At scan time, Cocoon treats tag files just like ROMs — it finds them and creates game entries using the filename. The tag content itself is only read at launch time, when Cocoon opens the file, parses the [key] value lines, and substitutes them into the launcher’s arguments.


Creating a Tag File

Here’s how to add a game — for example, Half-Life 2 via Steam:

  1. Create a file called Half-Life 2.steamappid in your steam/ folder
  2. Inside the file, write:
    [steamappid] 220
    
  3. Scan in Cocoon — it appears as “Half-Life 2” in your game grid

That’s it. The file is just a pointer — Cocoon reads the tag at launch and opens the game through the Steam app.


Tag File Extensions

Each platform uses a specific file extension. Cocoon recognizes the extension to know which launcher to use.

.steamappid — Steam

For games launched through the Steam app (via GameHub Lite or GameNative).

Tag key: steamappid

Example file: Portal 2.steamappid

[steamappid] 620

You can find a game’s Steam app ID from its store URL — for example, store.steampowered.com/app/620/Portal_2/ → the ID is 620.

Place these files in your steam/ folder.


.localgameid — Windows / Local Apps

For launching local apps installed on your device via GameHub Lite. Useful for Android ports, standalone games, or any app you want in your Cocoon library.

Tag key: localgameid

Example file: Minecraft.localgameid

[localgameid] com.mojang.minecraftpe

The value is the app’s Android package name. You can find it in the Play Store URL or using an app like “Package Name Viewer.”

Place these files in your windows/ folder.


.dpt — Daijishō Platform Tag (Multi-Purpose)

The .dpt extension is a generic, multi-purpose tag file. The tag key inside determines what it does. This is used by platforms that don’t have their own dedicated extension.

ScummVM

Tag key: scummvm_id

Example file: Monkey Island 2.dpt

[scummvm_id] monkey2

Place in your scummvm/ folder.

PS Vita

Tag key: vita_game_id

Example file: Persona 4 Golden.dpt

[vita_game_id] PCSE00120

Place in your psvita/ folder. Launched through Vita3K.


.moonlight — Moonlight Streaming

For games streamed from your PC via the Moonlight app.

Tag key: moonlight_id

Example file: Elden Ring.moonlight

[moonlight_id] Elden Ring

Place these files in your moonlight/ folder.


.xcloud — Xbox Game Pass

For games launched through Xbox Cloud Gaming via XBPlay.

Tag key: titleId

Example file: Halo Infinite.xcloud

[titleId] 1794566092

Place these files in your xcloud/ folder.


Folder Structure

Tag files go in platform folders just like ROMs:

games/
├── steam/
│   ├── Half-Life 2.steamappid
│   └── Portal 2.steamappid
├── windows/
│   └── Minecraft.localgameid
├── scummvm/
│   └── Monkey Island 2.dpt
├── psvita/
│   └── Persona 4 Golden.dpt
├── moonlight/
│   └── Elden Ring.moonlight
└── xcloud/
    └── Halo Infinite.xcloud

Quick Reference

PlatformExtensionTag KeyLauncher App
Steam.steamappidsteamappidGameHub Lite, GameNative
Windows (local).localgameidlocalgameidGameHub Lite
ScummVM.dptscummvm_idScummVM
PS Vita.dptvita_game_idVita3K
Moonlight.moonlightmoonlight_idMoonlight
Xbox Game Pass.xcloudtitleIdXBPlay

Tips

  • Tag files look like normal games. They get artwork scraping, favorites, folders — everything ROMs get.
  • The filename is the display name. Half-Life 2.steamappid shows up as “Half-Life 2” in your library.
  • Tags are read fresh every launch. They’re never cached in the database, so you can edit a tag file and the change takes effect immediately.
  • Legacy extensions like .txt, .daijishou, and .template are also recognized for backward compatibility.

See the Compatibility page for the full list of platform folders.