Param.json

From PS5 Developer wiki
Revision as of 16:36, 5 September 2024 by Anonymous (Privacy policy) (Added missing language identifier for Ukrainian language)
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. A simple application however does not require this parameter to be set.

Info: Shares the game id of the same title on PS4 & PS5 to use (probably) online cross services.

Example: EP1004-PPSA01721_00 & EP1004-CUSA00411_00

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

amm

Format: Object

Required: No

multimapVaRangeInGib

Format: Integer

Required: No

Example: 512

vaRangeInGib

Format: Integer

Required: No

Example: 512

applicationCategoryType

Format: Int

Required: Yes

Possible values:

Int Category
0 Native Game
65536 Prospero Native Media App
65792 RNPS Media App
66048 Web Based Media App
131328 System Built-in App
131584 Big Daemon
16777216 ShellUI
33554432 Daemon
50331648 CommonDialog
67108864 ShellApp

applicationDrmType

Format: String

Required: Yes

Possible values: upgradable standard demo free

asa

Required: No

code

asa01

Format: String

Required: Yes if 'asa' is set.

Possible values: 2000000

asa08

Format: String

Required: No.

Possible values: 10

asa09

Format: String

Required: Yes if you want to use the paramete 'massSize'.

Possible values: 1

asa10

Format: String

Required: No.

Possible values: 1400

sign

Format: List <String>

Required: Yes if 'asa01' is set. Requires 8 Strings (lenght=64) in the List Of <String>.

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.

132 The application receives video-out info.

The application does not use Share Library Capture API.

The application does not support HFR.

Auto Scaling is not applied for the non-media application.

4160 The application supports High Framerate Mode.

backgroundBasematType

Format: String

Required: No.

Possible values:

Linear, EllipseNarrow

conceptId

Format: String

Required: Yes

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: Yes

Possible values:

Int Badge Type
0 N/A
1 Game
2 Other

contentId

Format: String

Required: Yes

contentVersion

Format: String

Required: Yes

Example: 01.000.000

deeplinkUri

Format: String

Required: No

Possible values:

String Info
Any URL (like https://google.com) Setting an URL will open the internal WebBrowser.
pssettings:play?mode=settings&function=debug_settings Open Debug Settings
psgm:play?id= Launch an application with the given id.
pssettings:play?mode=settings&function=language Open Language Settings
pssettings:play?mode=settings&function=storage&storage=internal&userid= Open Console Storage Settings
pstc:browse Show trophies
pssettings:play?mode=settings&function=savedata Show savedata
pssettings:play?mode=settings&function=controller Open Controller Settings
pssettings:play?mode=settings&function=mic_level Adjust microphone audio level
pssettings:play?mode=settings&function=adjust_controller_light Adjust controller light
pssettings:play?mode=settings&function=safearea Adjust display area (can trow a system error after adjusting)
pssettings:play?mode=settings&function=video Open Video Playback Settings
pssettings:play?mode=settings&function=eye_distance Calibrate Eye-to-Eye distance for the VR Headset
pssettings:play?mode=settings&function=notification Open Notification Settings
pssettings:play?mode=settings&function=network Open Network Settings
pssettings:play?mode=settings&function=adjust_controller_light&caller=LoginMgr&deviceId= Adjust Controller (requires deviceId= to be set or it will give you an error)
psappinst:workspace-setting?titleid= ★Workspace Setting
psgamedatamgmt:play?titleId= Game Data Management (Requires titleId=)
pspatchcheck:update-history?titleid= Show Update History (Requires titleId=)
psappinst:switch-content-config?titleid= ★Switch Content Config
psactivity:showUams?npTitleId= ★Activity Preview
psactivity:showConfig?npTitleId= ★Show Activity Configuration
pssettings:play?function=savedata ★Saved Data Management
pssettings:play?function=savedata_ps4 ★Saved Data Management for PS4
psbase:shell?c=coredump_and_quit&id= Generate Core file and quit
sbase:shell?c=coredump_and_continue&id= Generate Core file and continue
psbase:shell?c=play_go_snapshot_by_title_id&id= Save Snapshot to USB
psbase:shell?c=play_go_revert_to_snapshot&id= Load Snapshot from USB
psbase:shell?c=play_go_resume&id= Start / Resume
psbase:shell?c=play_go_suspend&id= Pause
psappinst:pat-uninstall?titleid= ★Delete (Requires titleid=)
ppscontentinfo:copyright?titleId= Show intellectual property notice (Requires titleId=)
pscontentinfo:info?titleId= Show application information (Requires titleId=)
pssettings:play?function=delete_contents_by_titleid&titleID= Delete application with all its content (Requires titleId=)
pssmdlg:open?dialogName=AppDeleteDialog&customParam= Remove application from home
pspatchcheck:check-for-update?titleid= Check for application update (Requires titleId=)
pssettings:play?function=initial_setup Show Initial Setup
pssettings:play?function=delete_contents Delete contents
pssettings:play?function=set_date_and_time_now Set Date & Time

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: On a disc: yes.

discTotal

Format: Int

Required: On a disc: yes.

downloadDataSize

Format: Int

Required: No

Example: 0

gameIntent

permittedIntents

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

Required: For games: Yes.

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
  • uk-UA
  • 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: Yes

Example: 01.00

originContentVersion

Format: String

Required: No

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: No

Example: 1

targetContentVersion

Format: String

Required: No

Example: 01.000.001

Used only in delta-patches/updates?

titleId

Format: String

Required: Yes

Example: PPSA12345

usbDir

Format: List of String

Required: No. Could be only usable in Media Apps.

Example: Possible values: MUSIC, VIDEO, PSNOW

userDefinedParam1

Format: Int

Required: No

userDefinedParam2

Format: Int

Required: No

userDefinedParam3

Format: Int

Required: No

userDefinedParam4

Format: Int

Required: No

versionFileUri

Format: String

Required: Yes. A simple application however does not require this parameter to be set.