Param.json

From PS5 Developer wiki
Revision as of 20:25, 4 November 2023 by SvenGDK (talk | contribs)
Jump to navigation Jump to search

PSP/PS3/PS4/Vita used a param.sfo file for metadata. PS5 games have a similar file, but instead of .sfo it is now .json.

There are three types of param.json: param.json, origin-param.json and target-param.json. What the differences are and what they are for is currently unknown.

addcont

serviceIdForSharing

Format: List <String>

Required: Yes?

ageLevel

Format: Dictionary <string, int>

Required: Yes?

Agelevel contains a dict of age levels for different regions. Aside from the default age level, the following regions are available:

  • AE
  • AR
  • AT
  • AU
  • BE
  • BG
  • BH
  • BO
  • BR
  • CA
  • CH
  • CL
  • CN
  • CO
  • CR
  • CY
  • CZ
  • DE
  • DK
  • EC
  • ES
  • FI
  • FR
  • GB
  • GR
  • GT
  • HK
  • HN
  • HR
  • HU
  • ID
  • IE
  • IL
  • IN
  • IS
  • IT
  • JP
  • KR
  • KW
  • LB
  • LU
  • MT
  • MX
  • MY
  • NI
  • NL
  • NO
  • NZ
  • OM
  • PA
  • PE
  • PL
  • PT
  • PY
  • QA
  • RO
  • RU
  • SA
  • SE
  • SG
  • SI
  • SK
  • SV
  • TH
  • TR
  • TW
  • UA
  • US
  • UY
  • ZA

applicationCategoryType

Format: Int

Required: Yes

Possible values:

Int Category
0 Native Game
65792 RNPS Media App
131328 System Built-in App
131584 Big Daemon
16777216 ShellUI
33554432 Daemon
67108864 ShellApp

applicationDrmType

Format: String

Required: ?

Possible values: upgradable standard demo free

asa

Required: No

code

asa01

Format: String

Required: ?

Possible values: 2000000

asa09

Format: String

Required: ?

Possible values: 1

sign

Format: List <String>

Required: ?

attribute

Format: Int

Required: Yes

Int Description
0 The application does not support the initial user's logout.

The application does not support HDR.

1 The application supports the initial user's logout.

The application does not support HDR.

536870912 The application does not support the initial user's logout.

The application supports HDR.

1073741824 The application does not support the initial user's logout.

The application is not suspended when PS button is pressed.

The application does not support HDR.

The application requests HDCP2.2 when started up if possible.

1107296256 The application does not support the initial user's logout.

The application is not suspended when PS button is pressed.

The Application supports Text to Speech (TTS).

The application does not support HDR.

The application requests HDCP2.2 when started up if possible.

1644167168 The application does not support the initial user's logout.

The application is not suspended when PS button is pressed.

The Application supports Text to Speech (TTS).

The application supports HDR.

The application requests HDCP2.2 when started up if possible.

attribute2

Format: Int

Required: Yes

Int Description
0 The application does not support Content Search feature.
4 The application supports Content Search feature.

attribute3

Format: Int

Required: Yes

Int Description
0 The application does not receive video-out info.
4 The application receives video-out info.
68 The application receives video-out info.

The application supports HFR.

80 The application uses Share Library Capture API.

The application supports HFR.

Auto Scaling is applied for the non-media application.

4160 The application supports High Framerate Mode.

conceptId

Format: String

Required: ?

A concept id is an over-arching id for a game or entity. A game can have multiple different content-ids for different regions, but they will all have the same concept id.

contentBadgeType

Format: Int

Required: ?

Possible values:

Int Badge Type
0 N/A
1 Game
2 Other

contentId

Format: String

Required: Yes

contentVersion

Format: String

Required: ?

Example: 01.000.000

disc

Format: Array

Required: On a disc: yes.

contents

Format: Array

Required: On a disc: yes. Sub Array of 'disc'.

Info: This array contains for each available PKG an object with the Strings contentId & contentType.

contentId

Format: String

Required: On a disc: yes.

Example: IV9999-CUSA99999_00-XXXXXXXXXXXXXXXX

contentType

Format: String

Required: On a disc: yes.

Example: PS5GD

files

Format: Array

Required: On a disc: yes. Sub Array of 'disc'. This array contains both Strings digests & fileName in an object.

digests

Format: String

Required: On a disc: yes.

fileName

Format: String

Required: On a disc: yes.

Example: icon0.png

localizedParameters

Format: Object

Required: On a disc: yes. This object contains both the String defaultLanguage & the object en-US (for ex.) in an object.

defaultLanguage

Format: String

Required: On a disc: yes.

Example: en-US

en-US

Format: Object

Required: On a disc: yes. This object contains titleName as String.

Example: en-US

titleName

Format: String

Required: On a disc: yes.

masterDataId

Format: String

Required: On a disc: yes.

Example: PPSA01234

role

Format: String

Required: On a disc: yes.

Possible values for role: Play Disc

discNumber

Format: Int

Required: ?

discTotal

Format: Int

Required: ?

downloadDataSize

Format: Int

Required: ?

gameIntent

permittedIntents

Format: List <Dict <"intentType", String>>

Required: ?

Possible values for intentType: launchActivity launchMultiplayerActivity launchByCustomParameters joinSession

kernel

Required: No

cpuPageTableSize

Format: Int

Required: No

flexibleMemorySize

Format: Int

Required: No

gpuPageTableSize

Format: Int

Required: No

localizedParameters

Contains a dictionary of localized titles. As with ageLevel there is a default entry called defaultLanguage. The defaultLanguage entry does not have the same contents as the example entry below, but contains a simple string with the language code of the default language (e.g. en-US).

Example of localized entry:

"<language-identifer>": {
  "titleName": "Title of your game"
}

Where <language-identifer> is one of the following:

  • ar-AE
  • cs-CZ
  • da-DK
  • de-DE
  • el-GR
  • en-GB
  • en-US
  • es-419
  • es-ES
  • fi-FI
  • fr-CA
  • fr-FR
  • hu-HU
  • id-ID
  • it-IT
  • ja-JP
  • ko-KR
  • nl-NL
  • no-NO
  • pl-PL
  • pt-BR
  • pt-PT
  • ro-RO
  • ru-RU
  • sv-SE
  • th-TH
  • tr-TR
  • vi-VN
  • zh-Hans
  • zh-Hant

massSize

Format: Integer

Required: No, but an ASA code (asa01 & asa09) is required for using this parameter.

Example: 1

masterVersion

Format: String

Required: ?

Example: 01.00

originContentVersion

Format: String

Required: ?

Example: 01.000.000

pubtools

Required: ?

Example: 01.00

creationDate

Format: String/Date (yyyy-mm-dd hh:mm:ss)

Required: ?

loudnessSnd0

Format: Float as String

Required: No

submission

Format: Bool

Required: ?

toolVersion

Format: String

Required: ?

Example: 1.00

pubtoolsVersion

Required: ?

requiredSystemSoftwareVersion

Format: String/Hex

Required: ?

Example: 0x0114000000000000

sdkVersion

Format: String/Hex

Required: ?

Example: 0x0100000000000000

serviceLaunchButtonKeyCode

Format: Integer

Required: ?

Example: 1

targetContentVersion

Format: String

Required: No

Example: 01.000.001

Used only in delta-patches/updates?

titleId

Format: String

Required: ?

Example: ABCD12345

userDefinedParam1

Format: Int

Required: ?

userDefinedParam2

Format: Int

Required: ?

userDefinedParam3

Format: Int

Required: ?

userDefinedParam4

Format: Int

Required: ?

versionFileUri

Format: String

Required: Yes