Param.sfo

From PS4 Developer wiki
Jump to navigation Jump to search

PARAM.SFO

SFO (System File Object) file format can be also found on PSP, PSVITA, PS3.

External Structure

Internal Structure

Header SFO

This is the Header of a SFO file.

Offset Data Length Notes
0x0 0x00505346 0x04 PSF Magic
0x4 0x01010000 0x04 Version
0x8 - 0x04 Value Start
0xC - 0x04 Params Start
0x10 - 0x04 N° of params/values

Parameters Descriptions

APP_TYPE

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

APP_VER

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: 0x6 (6 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

The format is XX.YY where "XX" and "YY" are numbers, and the point "." is included in the string, e.g: 01.00 for the first stable version released.

ATTRIBUTE

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

Contains a maximun of 32 flags that can be turned on/off to activate/deactivate special boot modes and features of the content.

CATEGORY

Info
param_fmt: utf-8
param_max_len: 0x4 (4 bytes)
param_len: 0x3 (3 bytes)
Tip
Used by: PS4 DISC, PS4 HDD Game, PS4 Game Patch

See PS Vita Category

Value Standard name
bd Bluray Disc
gd -
gdk -
gp Game Patch

CONTENT_ID

Info
param_fmt: utf-8
param_max_len: 0x30 (48 bytes)
param_len: 0x25 (37 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

The format is:

DISC_NUMBER

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 DISC Game

Disc number: count from 01.

DISC_TOTAL

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 DISC Game

Total number of discs for this game.

DOWNLOAD_DATA_SIZE

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 Game Patch

FORMAT

Info
param_fmt: utf-8
param_max_len: 0x4 (4 bytes)
param_len: 0x3? (3 bytes)
Tip
Used by: PS4 DISC, PS4 HDD Game, PS4 Game Patch

"obs"

PARENTAL_LEVEL

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

It is a scale to rate the content for the different users based in user profile settings and international rating systems as: PEGI, ESRB, CERO, etc...

PUBTOOLINFO

Info
param_fmt: utf-8
param_max_len: 0x200 (512 bytes)
param_len:0x5F (95 bytes)?
Tip
Used by: PS4 HDD Game

contain creation data?, sdk version?

SERVICE_ID_ADDCONT_ADD_x

Info
param_fmt: utf-8
param_max_len: 0x200 (32 bytes)
param_len:Not used? (xx bytes)?
Tip
Used by: PS4 HDD Game, PS4 Game Patch

Same parameter outnumbered from _1 to _7.

SYSTEM_VER

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

Minimum FW to be play this game?

TITLE

Info
param_fmt: utf-8
param_max_len: 0x80 (128 bytes)
param_len: variable
Tip
Used by: PS4 Disc, PS4 Game Patch

Default "title of the game" for all languages.

TITLE_ID

Info
param_fmt: utf-8
param_max_len: 0x10 (16 bytes)
param_len: 0xA (10 bytes)
Tip
Used by: PS4 Disc, PS4 HDD Game, PS4 Application Patch

Identifier of the content, in the format WXYZ12345.

TITLE_xx

Info
param_fmt: utf-8
param_max_len: 0x80 (128 bytes)
param_len: variable
Tip
Used by: PS4 HDD Game, , PS4 Game Patch

Same than TITLE but for localized languages.

An .SFO can contain several TITLE_xx where xx is a number for a regional code.

The "default" TITLE is always present when other "localized" TITLE_xx are used.

VERSION

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: 0x6 (6 bytes)
Tip
Used by: PS4 HDD Game, PS4 Game Patch

Version content of the game: Disc revision, or Package revision. The number increases when the content is re-released or re-packaged for whatever reason that doesn't affect the main executable (e.g. when a disc game reaches platinum sales, or "game of the year edition" including extra contents).

Notes