Param.json: Difference between revisions
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
'''Format:''' List <String> | '''Format:''' List <String> | ||
'''Required:''' Yes | '''Required:''' Yes. A simple application however does not require this parameter to be set. | ||
== ageLevel == | == ageLevel == | ||
'''Format:''' Dictionary <string, int> | '''Format:''' Dictionary <string, int> | ||
'''Required:''' Yes | '''Required:''' Yes | ||
Agelevel contains a dict of age levels for different regions. Aside from the <code>default</code> age level, the following regions are available: | Agelevel contains a dict of age levels for different regions. Aside from the <code>default</code> age level, the following regions are available: | ||
Line 116: | Line 116: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes | ||
'''Possible values:''' <code>upgradable</code> <code>standard</code> <code>demo</code> <code>free</code> | '''Possible values:''' <code>upgradable</code> <code>standard</code> <code>demo</code> <code>free</code> | ||
Line 128: | Line 128: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes if 'asa' is set. | ||
'''Possible values:''' <code>2000000</code> | '''Possible values:''' <code>2000000</code> | ||
Line 135: | Line 135: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes if you want to use the paramete 'massSize'. | ||
'''Possible values:''' <code>1</code> | '''Possible values:''' <code>1</code> | ||
Line 142: | Line 142: | ||
'''Format:''' List <String> | '''Format:''' List <String> | ||
'''Required:''' | '''Required:''' Yes if 'asa01' is set. Requires 8 Strings (lenght=64) in the List Of <String>. | ||
== attribute == | == attribute == | ||
Line 226: | Line 226: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''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. | 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. | ||
Line 233: | Line 233: | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' Yes | ||
'''Possible values:''' | '''Possible values:''' | ||
Line 255: | Line 255: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes | ||
'''Example:''' <code>01.000.000</code> | '''Example:''' <code>01.000.000</code> | ||
== deeplinkUri == | |||
'''Format:''' String | |||
'''Required:''' No | |||
'''Possible values:''' | |||
{| class="wikitable" | |||
! 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 == | == disc == | ||
Line 343: | Line 432: | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' On a disc: yes. | ||
== discTotal == | == discTotal == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' On a disc: yes. | ||
== downloadDataSize == | == downloadDataSize == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' No | ||
'''Example:''' <code>0</code> | |||
== gameIntent == | == gameIntent == | ||
Line 359: | Line 450: | ||
'''Format:''' List <Dict <"intentType", String>> | '''Format:''' List <Dict <"intentType", String>> | ||
'''Required:''' | '''Required:''' For games: Yes. | ||
'''Possible values for intentType: ''' <code>launchActivity</code> <code>launchMultiplayerActivity</code> <code>launchByCustomParameters</code> <code>joinSession</code> | '''Possible values for intentType: ''' <code>launchActivity</code> <code>launchMultiplayerActivity</code> <code>launchByCustomParameters</code> <code>joinSession</code> | ||
Line 434: | Line 525: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes | ||
'''Example:''' <code>01.00</code> | '''Example:''' <code>01.00</code> | ||
Line 441: | Line 532: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' No | ||
'''Example:''' <code>01.000.000</code> | '''Example:''' <code>01.000.000</code> | ||
Line 492: | Line 583: | ||
'''Format:''' Integer | '''Format:''' Integer | ||
'''Required:''' | '''Required:''' No | ||
'''Example:''' <code>1</code> | '''Example:''' <code>1</code> | ||
Line 508: | Line 599: | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' | '''Required:''' Yes | ||
'''Example:''' <code> | '''Example:''' <code>PPSA12345</code> | ||
== userDefinedParam1 == | == userDefinedParam1 == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' No | ||
== userDefinedParam2 == | == userDefinedParam2 == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' No | ||
== userDefinedParam3 == | == userDefinedParam3 == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' No | ||
== userDefinedParam4 == | == userDefinedParam4 == | ||
'''Format:''' Int | '''Format:''' Int | ||
'''Required:''' | '''Required:''' No | ||
== versionFileUri == | == versionFileUri == | ||
'''Format:''' String | '''Format:''' String | ||
'''Required:''' Yes | '''Required:''' Yes. A simple application however does not require this parameter to be set. |
Revision as of 08:50, 5 November 2023
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.
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: Yes
Possible values: upgradable
standard
demo
free
asa
Required: No
code
asa01
Format: String
Required: Yes if 'asa' is set.
Possible values: 2000000
asa09
Format: String
Required: Yes if you want to use the paramete 'massSize'.
Possible values: 1
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. |
4160 | The application supports High Framerate Mode. |
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
- 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
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.