RCOXML Coding
Description
RCOXML files are the XML descriptor files implicit inside Resource Container (RCO) files (.rco)
This RCOXML files doesnt exists inside the .rco container, tools like Rcomage extracts the info as XML as a representation of the data inside the .rco container
Are composed by tables, some of this tables works simply as an index of the contents inside the container (texts, sounds, languages), and others tables contains "pages" that builds the XMB items, animations, effects, dialog menues, selection windows, widgets, etc...
Note the name "page" here in wiki is used as a generic name for all types of pages, rcomage uses specific names for some types of pages wich purpose was identifyed, this names can vary between different versions of rcomage tool
RCOXML Contents (PS3)
There are 122 .rco files in PS3 firmware 4.76
filename.rco | RCOXML contents | notes | |||||
---|---|---|---|---|---|---|---|
MainTree Name |
ImageTree | TextTree | SoundTree | ObjectTree | AnimTree | ||
ap_plugin.rco | ap_plugin | No | No | No | Yes | No | |
audioplayer_plugin.rco | sample | Yes | Yes | No | Yes | No | |
audioplayer_plugin_dummy.rco | sample | No | Yes | No | No | No | |
audioplayer_plugin_mini.rco | sample | No | Yes | No | Yes | No | |
audioplayer_plugin_util.rco | sample | No | Yes | No | Yes | No | Associated .sprx has a different name. |
auth_plugin.rco | auth_plugin | Yes | Yes | No | Yes | No | |
autodownload_plugin.rco | autodownload_plugin | Yes | Yes | No | Yes | No | |
autoupdateconf_plugin.rco | autoupdateconff_plugin | Yes | Yes | No | Yes | No | |
avc2_game_plugin.rco | sample | No | Yes | No | No | No | |
avc2_game_video_plugin.rco | sample | Yes | No | No | Yes | No | |
avc2_text_plugin.rco | tcgui | Yes | Yes | No | Yes | No | |
avc_game_plugin.rco | sample | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
avc_plugin.rco | sample | Yes | Yes | No | Yes | No | |
bdp_disccheck_plugin.rco | bdp_disccheck_plugin | No | Yes | No | Yes | No | |
bdp_plugin.rco | bdp_plugin | Yes | Yes | No | Yes | Yes | |
bdp_storage_plugin.rco | bdp_storage_plugin | No | Yes | No | Yes | No | |
campaign_plugin.rco | campaign_plugin | Yes | Yes | No | Yes | No | Contains images with non-gim formats (png). |
category_setting_plugin.rco | category_setting_plugin | Yes | Yes | No | No | No | |
checker_plugin.rco | checker | No | No | No | Yes | No | Associated .sprx has a different name. |
closedcaption_config_plugin.rco | closedcaption_config_plugin | Yes | Yes | No | Yes | No | |
comboplay_plugin.rco | comboplay_plugin | Yes | Yes | No | Yes | No | |
custom_render_plugin.rco | custom_render_plugin | Yes | No | No | Yes | Yes | |
data_copy_plugin.rco | sample | No | Yes | No | Yes | No | |
deviceconf_plugin.rco | deviceconf_plugin | Yes | Yes | No | Yes | No | |
dlna_plugin.rco | dlna | Yes | Yes | No | Yes | No | |
download_plugin.rco | download | Yes | Yes | No | Yes | No | |
dtcpip_util.rco | dtcpip_util | No | Yes | No | Yes | No | |
edy_plugin.rco | edy_plugin | Yes | Yes | Yes | Yes | No | |
eula_cddb_plugin.rco | eula_cddb_plugin | Yes | Yes | No | Yes | No | |
eula_hcopy_plugin.rco | eula_hcopy | Yes | Yes | No | Yes | No | |
eula_net_plugin.rco | regcam_plugin | Yes | Yes | Yes | Yes | No | Contains images with non-gim formats (png, jpg). |
explore_category_friend.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_game.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_music.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_network.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_photo.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_psn.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_sysconf.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_tv.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_user.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_category_video.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_plugin_ft.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_plugin_full.rco | explore_plugin | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
explore_plugin_game.rco | explore_plugin | Yes | Yes | No | Yes | No | |
explore_plugin_np.rco | explore_plugin | Yes | Yes | No | Yes | No | |
filecopy_plugin.rco | sample | Yes | Yes | No | Yes | No | |
friendim_plugin.rco | friendim | Yes | Yes | No | Yes | Yes | |
friendim_plugin_game.rco | friendim | Yes | Yes | No | Yes | Yes | Associated .sprx has a different name. |
friendml_plugin.rco | friendml_plugin | Yes | Yes | No | Yes | No | |
friendml_plugin_game.rco | friendml_plugin | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
friendtrophy_plugin.rco | friendtrophy_plugin | Yes | Yes | No | Yes | No | |
friendtrophy_plugin_game.rco | friendtrophy_plugin | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
game_ext_plugin.rco | game_ext_plugin | Yes | Yes | No | Yes | No | Contains images with non-gim formats (png). |
game_indicator_plugin.rco | user_info_plugin | Yes | No | No | Yes | No | |
game_plugin.rco | game_plugin | No | Yes | No | Yes | No | Associated .sprx has a different name. |
gamedata_plugin.rco | gamedata_plugin | No | Yes | No | Yes | No | |
gamelib_plugin.rco | gamelib_plugin | Yes | No | No | Yes | Yes | |
gameupdate_plugin.rco | sample | No | Yes | No | Yes | No | |
hknw_plugin.rco | hknw_plugin | Yes | Yes | No | Yes | No | |
idle_plugin.rco | idle | No | No | No | Yes | No | |
impose_plugin.rco | impose_plugin | Yes | Yes | No | Yes | Yes | Associated .sprx has a different name. |
ingame_manual_plugin.rco | ingame_manual | No | Yes | No | Yes | No | |
kensaku_plugin.rco | kensaku | Yes | Yes | No | Yes | No | |
msgdialog_plugin.rco | msgdialog_plugin | No | Yes | No | Yes | No | Associated .sprx has a different name. |
mtpinitiator_plugin.rco | sample | Yes | Yes | No | Yes | No | |
musicbrowser_plugin.rco | sample | No | No | No | Yes | No | |
nas_plugin.rco | nas_plugin | Yes | Yes | No | Yes | No | |
netconf_plugin.rco | sample | Yes | Yes | No | Yes | No | |
newstore_effect.rco | skeleton_plugin | No | No | No | No | No | Empty file. |
newstore_plugin.rco | newstore_plugin | Yes | Yes | No | Yes | No | Contains images with non-gim formats (png, jpg). |
np_eula_plugin.rco | npeula | Yes | Yes | No | Yes | No | |
np_matching_plugin.rco | np_matching_plugin | Yes | Yes | No | Yes | No | |
np_multisignin_plugin.rco | np_multisignin_plugin | Yes | Yes | No | Yes | No | |
np_sns_plugin.rco | npsns | Yes | Yes | No | Yes | No | |
np_trophy_ingame.rco | np_achiev | Yes | Yes | No | Yes | No | |
np_trophy_plugin.rco | np_achiev | Yes | Yes | No | Yes | No | |
npsignin_plugin.rco | npsignin_plugin | Yes | Yes | No | Yes | Yes | |
osk_plugin.rco | sample | Yes | No | Yes | Yes | No | |
oskfullkeypanel_plugin.rco | ime_osk_base_resouce | Yes | Yes | No | Yes | No | |
oskpanel_plugin.rco | ime_osk_base_resouce | Yes | Yes | No | Yes | No | |
pesm_plugin.rco | pesm | No | No | No | Yes | No | |
photo_network_sharing_plugin.rco | pesm | Yes | Yes | No | Yes | No | |
photolist_plugin.rco | sample | No | No | No | Yes | No | |
photoupload_plugin.rco | dlna | Yes | Yes | No | Yes | No | |
photoviewer_plugin.rco | photoviewer_plugin | Yes | Yes | No | Yes | No | Contains images with non-gim formats (png). |
playlist_plugin.rco | sample | Yes | Yes | No | Yes | No | |
podl_plugin.rco | podl_plugin | No | No | No | Yes | No | |
poweroff_plugin.rco | poweroff | No | Yes | No | Yes | No | |
premo_plugin.rco | premo_plugin | Yes | Yes | No | Yes | Yes | |
print_plugin.rco | print_plugin | Yes | Yes | No | Yes | No | |
profile_plugin.rco | profile_plugin | Yes | Yes | No | Yes | No | |
profile_plugin_mini.rco | profile_plugin_mini | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
ps3_savedata_plugin.rco | sample | Yes | Yes | No | Yes | No | |
ps3_savedata_plugin_game_mini.rco | sample | No | Yes | No | Yes | No | |
rec_plugin.rco | rec_plugin | No | No | No | Yes | No | |
regcam_plugin.rco | regcam_plugin | Yes | Yes | Yes | Yes | No | Contains images with non-gim formats (png, jpg). |
remotedownload_plugin.rco | remotedownload | No | Yes | No | Yes | No | |
sacd_plugin.rco | sample | Yes | Yes | No | Yes | Yes | |
scenefolder_plugin.rco | sample | No | No | No | Yes | No | |
screenshot_plugin.rco | screenshot_plugin | No | Yes | No | Yes | No | |
search_service.rco | search_service | No | Yes | No | No | No | Associated .sprx has a different name. |
software_update_plugin.rco | software_update_plugin | Yes | Yes | No | Yes | No | |
soundvisualizer_plugin.rco | soundvisualizer | Yes | Yes | No | Yes | No | |
strviewer_plugin.rco | strviewer | No | Yes | No | Yes | No | |
subdisplay_plugin.rco | ap_plugin | No | No | No | Yes | No | Associated .sprx has a different name. |
sv_pseudoaudioplayer_plugin.rco | sv_pseudoaudioplayer | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
sysconf_plugin.rco | sysconf_plugin | Yes | Yes | No | Yes | No | |
system_plugin.rco | system_plugin | Yes | Yes | Yes | Yes | Yes | Associated .sprx has a different name. |
thumthum_plugin.rco | sample | No | Yes | No | Yes | No | |
upload_util.rco | upload_util | Yes | Yes | No | Yes | No | |
user_info_plugin.rco | user_info_plugin | No | Yes | No | Yes | No | |
user_plugin.rco | user | Yes | Yes | No | Yes | No | |
videoeditor_plugin.rco | skeleton_plugin | Yes | Yes | Yes | Yes | No | Contains images with non-gim formats (png, jpg). |
videoplayer_plugin.rco | videoplayer | Yes | Yes | No | Yes | No | |
videoplayer_util.rco | videoplayer | No | Yes | No | Yes | No | |
vmc_savedata_plugin.rco | sample | Yes | Yes | No | Yes | No | |
wboard_plugin.rco | sample | Yes | Yes | No | Yes | No | |
webbrowser_plugin.rco | sample | Yes | Yes | No | Yes | No | |
webrender_plugin.rco | sample | Yes | Yes | No | Yes | No | |
xmb_ingame.rco | xmb_plugin | Yes | Yes | No | Yes | No | |
xmb_plugin_normal.rco | xmb_plugin | Yes | Yes | No | Yes | No | Associated .sprx has a different name. |
ycon_manual_plugin.rco | ycon_plugin | Yes | Yes | No | Yes | No |
- VSMXfile and ModelTree are not included in the table above because none of the PS3 .rco files includes them
- Other .rco files from previous firmwares (not present in latest firmwares) using the MainTree name sample
- xai_plugin.rco
RCOXML Structure
Not all nodes below are required, and various object/anim entries are omitted.
RcoFile - XML root element; generally does not need to be modified MainTree - root RCO node from which everything must descend from VSMXFile - attached UMD virtual machine instruction code, for UMD and some LFTV RCOs. Only one may exist in an RCO file ImageTree - parent node from which all image resources descend from Image Image ... TextTree - parent node from which all text language resources descend from TextLang TextLang ... ModelTree - parent node from which all model resources descend from Model Model ... SoundTree - parent node from which all sound resources descend from Sound Sound ... ObjectTree - parent node from which all object pages descend from <Page> page objects go here <Page> page objects go here ... AnimTree - parent node from which all animation sequences descend from <Animation> animation entries go here <Animation> animation entries go here ...
MainTree
All RCOXML files starts with the tag:
<MainTree name="label">
MainTree represents the root of the container, so it seems the label is the name of the .rco container and is working as an identifyer of it
- Is unknown how this labels works and his purpose, but follows a few rules:
- The same label can be used by several .rco's that shares functions
- This label names doesnt appears in the associated .sprx
VSMXFile
None of the PS3 rco's uses a VSMXFile
ImageTree
TextTree
ModelTree
None of the PS3 rco's uses a ModelTree
SoundTree
ObjectTree
AnimTree
|