RCOXML Coding

From PS3 Developer wiki
Jump to navigation Jump to search

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

For specific examples of the contents of this rcoxml files see the Plugin Interfaces page, most resource containers (.rco) uses the same name than his associated plugin (.sprx), but there are a few that doesnt follows this rule so is a bit harder to know from how many plugins .sprx can be called (and this is a problem for wiki by now because the way pages are ordered and named)

audioplayer_plugin_util.rco
avc_game_plugin.rco
checker_plugin.rco
explore_plugin_full.rco
friendim_plugin_game.rco
friendml_plugin_game.rco
friendtrophy_plugin_game.rco
game_plugin.rco
impose_plugin.rco
msgdialog_plugin.rco
profile_plugin_mini.rco
search_service.rco
subdisplay_plugin.rco
sv_pseudoaudioplayer_plugin.rco
system_plugin.rco
xmb_plugin_normal.rco

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 label images texts sounds objects animations
audioplayer_plugin.rco label images texts sounds objects animations
audioplayer_plugin_dummy.rco label images texts sounds objects animations
audioplayer_plugin_mini.rco label images texts sounds objects animations
audioplayer_plugin_util.rco label images texts sounds objects animations
auth_plugin.rco label images texts sounds objects animations
autodownload_plugin.rco label images texts sounds objects animations
autoupdateconf_plugin.rco label images texts sounds objects animations
avc2_game_plugin.rco label images texts sounds objects animations
avc2_game_video_plugin.rco label images texts sounds objects animations
avc2_text_plugin.rco label images texts sounds objects animations
avc_game_plugin.rco label images texts sounds objects animations
avc_plugin.rco label images texts sounds objects animations
bdp_disccheck_plugin.rco label images texts sounds objects animations
bdp_plugin.rco label images texts sounds objects animations
bdp_storage_plugin.rco label images texts sounds objects animations
campaign_plugin.rco label images texts sounds objects animations
category_setting_plugin.rco label images texts sounds objects animations
checker_plugin.rco label images texts sounds objects animations
closedcaption_config_plugin.rco label images texts sounds objects animations
comboplay_plugin.rco label images texts sounds objects animations
custom_render_plugin.rco label images texts sounds objects animations
data_copy_plugin.rco label images texts sounds objects animations
deviceconf_plugin.rco label images texts sounds objects animations
dlna_plugin.rco label images texts sounds objects animations
download_plugin.rco label images texts sounds objects animations
dtcpip_util.rco label images texts sounds objects animations
edy_plugin.rco label images texts sounds objects animations
eula_cddb_plugin.rco label images texts sounds objects animations
eula_hcopy_plugin.rco label images texts sounds objects animations
eula_net_plugin.rco label images texts sounds objects animations
explore_category_friend.rco label images texts sounds objects animations
explore_category_game.rco label images texts sounds objects animations
explore_category_music.rco label images texts sounds objects animations
explore_category_network.rco label images texts sounds objects animations
explore_category_photo.rco label images texts sounds objects animations
explore_category_psn.rco label images texts sounds objects animations
explore_category_sysconf.rco label images texts sounds objects animations
explore_category_tv.rco label images texts sounds objects animations
explore_category_user.rco label images texts sounds objects animations
explore_category_video.rco label images texts sounds objects animations
explore_plugin_ft.rco label images texts sounds objects animations
explore_plugin_full.rco label images texts sounds objects animations
explore_plugin_game.rco label images texts sounds objects animations
explore_plugin_np.rco label images texts sounds objects animations
filecopy_plugin.rco label images texts sounds objects animations
friendim_plugin.rco label images texts sounds objects animations
friendim_plugin_game.rco label images texts sounds objects animations
friendml_plugin.rco label images texts sounds objects animations
friendml_plugin_game.rco label images texts sounds objects animations
friendtrophy_plugin.rco label images texts sounds objects animations
friendtrophy_plugin_game.rco label images texts sounds objects animations
game_ext_plugin.rco label images texts sounds objects animations
game_indicator_plugin.rco label images texts sounds objects animations
game_plugin.rco label images texts sounds objects animations
gamedata_plugin.rco label images texts sounds objects animations
gamelib_plugin.rco label images texts sounds objects animations
gameupdate_plugin.rco label images texts sounds objects animations
hknw_plugin.rco label images texts sounds objects animations
idle_plugin.rco label images texts sounds objects animations
impose_plugin.rco label images texts sounds objects animations
ingame_manual_plugin.rco label images texts sounds objects animations
kensaku_plugin.rco label images texts sounds objects animations
msgdialog_plugin.rco label images texts sounds objects animations
mtpinitiator_plugin.rco label images texts sounds objects animations
musicbrowser_plugin.rco label images texts sounds objects animations
nas_plugin.rco label images texts sounds objects animations
netconf_plugin.rco label images texts sounds objects animations
newstore_effect.rco label images texts sounds objects animations
newstore_plugin.rco label images texts sounds objects animations
np_eula_plugin.rco label images texts sounds objects animations
np_matching_plugin.rco label images texts sounds objects animations
np_multisignin_plugin.rco label images texts sounds objects animations
np_sns_plugin.rco label images texts sounds objects animations
np_trophy_ingame.rco label images texts sounds objects animations
np_trophy_plugin.rco label images texts sounds objects animations
npsignin_plugin.rco label images texts sounds objects animations
osk_plugin.rco label images texts sounds objects animations
oskfullkeypanel_plugin.rco label images texts sounds objects animations
oskpanel_plugin.rco label images texts sounds objects animations
pesm_plugin.rco label images texts sounds objects animations
photo_network_sharing_plugin.rco label images texts sounds objects animations
photolist_plugin.rco label images texts sounds objects animations
photoupload_plugin.rco label images texts sounds objects animations
photoviewer_plugin.rco label images texts sounds objects animations
playlist_plugin.rco label images texts sounds objects animations
podl_plugin.rco label images texts sounds objects animations
poweroff_plugin.rco label images texts sounds objects animations
premo_plugin.rco label images texts sounds objects animations
print_plugin.rco label images texts sounds objects animations
profile_plugin.rco label images texts sounds objects animations
profile_plugin_mini.rco label images texts sounds objects animations
ps3_savedata_plugin.rco label images texts sounds objects animations
ps3_savedata_plugin_game_mini.rco label images texts sounds objects animations
rec_plugin.rco label images texts sounds objects animations
regcam_plugin.rco label images texts sounds objects animations
remotedownload_plugin.rco label images texts sounds objects animations
sacd_plugin.rco label images texts sounds objects animations
scenefolder_plugin.rco label images texts sounds objects animations
screenshot_plugin.rco label images texts sounds objects animations
search_service.rco label images texts sounds objects animations
software_update_plugin.rco label images texts sounds objects animations
soundvisualizer_plugin.rco label images texts sounds objects animations
strviewer_plugin.rco label images texts sounds objects animations
subdisplay_plugin.rco label images texts sounds objects animations
sv_pseudoaudioplayer_plugin.rco label images texts sounds objects animations
sysconf_plugin.rco label images texts sounds objects animations
system_plugin.rco label images texts sounds objects animations
thumthum_plugin.rco label images texts sounds objects animations
upload_util.rco label images texts sounds objects animations
user_info_plugin.rco label images texts sounds objects animations
user_plugin.rco label images texts sounds objects animations
videoeditor_plugin.rco label images texts sounds objects animations
videoplayer_plugin.rco label images texts sounds objects animations
videoplayer_util.rco label images texts sounds objects animations
vmc_savedata_plugin.rco label images texts sounds objects animations
wboard_plugin.rco label images texts sounds objects animations
webbrowser_plugin.rco label images texts sounds objects animations
webrender_plugin.rco label images texts sounds objects animations
xmb_ingame.rco label images texts sounds objects animations
xmb_plugin_normal.rco label images texts sounds objects animations
ycon_manual_plugin.rco label images texts sounds objects animations
  • VSMXfile and ModelTree are not included in the table above because none of the PS3 .rco files includes them

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
			...

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

RCOXML Modifications

All modifications made in the main XML file that represents the structure of the RCO extracted by rcomage belongs to this category

Changing color, size & shadow of TEXTS

Tutorial link: Changing the XMB Colour

Located into .xml files of .rco files, scale R G B α colors go between 0 to 1.

e.g.: Decimal value divided by 255 to get into this scale.

Gameboot Animation

In gamelib_plugin.rco

Code Sample

In custom_render_plugin.rco

Code Sample