RCOXML Animations: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
m (wrong)
No edit summary
 
(82 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Description=
=Description=
'''RCOXML animations''' are defined in the XML code embedded inside .rco files. See [[Resource Container (RCO)]] and [[RCOXML_Structure]]
'''RCOXML animations''' are defined in the XML code embedded inside .rco files. See [[Resource Container (RCO)]] and [[RCOXML Coding]]


*External links
*External links
**RCOXML animations basic ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=255053#pid255053
**RCOXML animations basic ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=255053#pid255053
**RCOXML animations delays ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=262236#pid262236
**RCOXML animations cube sample ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=326948#pid326948
**RCOXML animations cube sample ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=326948#pid326948
**RCOXML animations PS3 (gameboots, coldboots) --->
{{RCOXML contents PS3}}


==Gameboot Animation==
=General concepts=
In [[gamelib_plugin]].rco
 
{{Boxcode|content=<syntaxhighlight lang="xml">
==Delays and execution timeline==
<Animation name="anim_gameboot">
RCOXML animations delays ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=262236#pid262236
<Lock unknownInt0="0xffffffff" />
 
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
==entry types and reference types==
<Resize object="object:ps3logo" duration="0" accelMode="0x0" width="0.938" height="0.938" depth="1" />
{{RCO TOC entry types}}
<Delay time="500" />
{{RCO TOC reference types}}
<Fade object="object:ps3logo" duration="863" accelMode="0x3" transparency="1" />
 
<Resize object="object:ps3logo" duration="863" accelMode="0x4" width="1" height="1" depth="1" />
==Standard attributes used by animations==
<Delay time="1100" />
{| class="wikitable" style="font-size:small;"
<Fade object="object:ps3logo" duration="174" accelMode="0x1" transparency="0" />
|+RCO TOC Animations standard attributes {{ed right|RCO TOC Animations standard attributes}}
<Resize object="object:ps3logo" duration="174" accelMode="0x1" width="1.284" height="1.284" depth="1" />
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
<Delay time="1000" />
|-
<Delay time="200" />
| {{RCO TOC Animations standard attributes}}
<FireEvent event="event:native:/GameLibApp_OnBootAnimationFinished" />
|-
</Animation>
|}
 
*'''accelMode'''. Used to accelerate or decelerate an animation, used by most of the animations, posible values are:
**0x0 - no accelaration
**0x1 - starts fast, ends slow
**0x2 -
**0x3 -
**0x4 - starts slow, ends fast
 
==Measure units and conversions==
{{Measure units used in RCOXML code}}
 
=Animations=
Example
{{Boxcode|code=<syntaxhighlight lang="xml">
<RcoFile>
<MainTree name="maintree_label">
<AnimTree>
<Anim name="animation_1_label">
<Fade object="object:animated_object_label" time="100" accelMode="0x0" colorScaleA="1" />
<FireEvent event="event:native:/runFuctionX" />
</Anim>
</AnimTree>
</MainTree>
</RcoFile>
</syntaxhighlight>}}
</syntaxhighlight>}}


In [[custom_render_plugin]].rco
==(0x0900) AnimTree==
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': No}}
<Animation name="anim_gameboot">
{{Boxcode|code=<syntaxhighlight lang="xml"><AnimTree></syntaxhighlight>}}
<Lock unknownInt0="0xffffffff" />
 
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
{| class="wikitable" style="font-size:small;"
<Resize object="object:ps3logo" duration="0" accelMode="0x0" width="0.938" height="0.938" depth="1" />
|+RCO TOC entry_type 0x09000000 (AnimTree)
<FireEvent event="event:native:/anim_gameboot_BG2" />
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
<Delay time="500" />
|-
<Fade object="object:ps3logo" duration="863" accelMode="0x3" transparency="1" />
| colspan="9" {{cellcolors|lightgrey}}
<Resize object="object:ps3logo" duration="863" accelMode="0x4" width="1" height="1" depth="1" />
|-
<FireEvent event="event:native:/anim_gameboot_BG3" />
| {{RCO TOC entry common area|09 00|FF FF FF FF|AnimTree|00 00 00 00|00 00 00 28|unnamed}}
<Delay time="1100" />
|}
<Fade object="object:ps3logo" duration="174" accelMode="0x1" transparency="0" />
 
<Resize object="object:ps3logo" duration="174" accelMode="0x1" width="1.284" height="1.284" depth="1" />
==(0x0901) Anim==
<Delay time="1000" />
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': No}}
<Delay time="200" />
{{Boxcode|code=<syntaxhighlight lang="xml"><Anim name="label"></syntaxhighlight>}}
<FireEvent event="event:native:/anim_gameboot_Finished" />
 
</Animation>
The '''AnimTree''' can have one or more '''Anim''' childrens, and every '''Anim''' can have a list of the childrens listed below
</syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09010000 (Animation)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 01|00 00 00 00|Anim|00 00 00 00|00 00 00 28|}}
|}
 
==(0x0902) MoveTo==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><MoveTo object="object:label" time="1000" accelMode="0x3" positionX="1" positionY="1" positionZ="1" positionOverrideX="0x0" positionOverrideY="0x0" positionOverrideZ="0x0" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09020000 (MoveTo)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 02|FF FF FF FF|MoveTo|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|MoveTo}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''positionX''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionX="1" /></syntaxhighlight> || updates the value of attribute '''positionX''' from the animated [[RCOXML Objects|object]]
|-
| 0x3C || 0x04 || float || '''positionY''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionY="1" /></syntaxhighlight> || updates the value of attribute '''positionY''' from the animated [[RCOXML Objects|object]]
|-
| 0x40 || 0x04 || float || '''positionZ''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionZ="1" /></syntaxhighlight> || updates the value of attribute '''positionZ''' from the animated [[RCOXML Objects|object]]
|-
| 0x44 || 0x04 || <abbr title="data type unk used on purpose because rcomage cant convert the value correctlly">unk</abbr> || '''positionOverrideX''' || {{no}} || {{yes}} || 00 00 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionOverrideX="0x0" /></syntaxhighlight> || rowspan="3" | '''XYZ Position Override''' with values from [[XMB Layouts]]<!--<br>(first 2 bytes = line_number, last 2 bytes = unknown)-->
|-
| 0x48 || 0x04 || <abbr title="data type unk used on purpose because rcomage cant convert the value correctlly">unk</abbr> || '''positionOverrideY''' || {{no}} || {{yes}} || 00 00 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionOverrideY="0x0" /></syntaxhighlight>
|-
| 0x4C || 0x04 || <abbr title="data type unk used on purpose because rcomage cant convert the value correctlly">unk</abbr> || '''positionOverrideZ''' || {{no}} || {{yes}} || 00 00 00 00 || <syntaxhighlight lang="xml" inline><MoveTo positionOverrideZ="0x0" /></syntaxhighlight>
|}
 
==(0x0903) Recolour==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Recolour object="object:label" time="1000" accelMode="0x3" colorScaleR="1" colorScaleG="1" colorScaleB="1" colorScaleA="1" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09030000 (Recolour)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 03|FF FF FF FF|Recolour|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|Recolour}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''colorScaleR''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Recolour colorScaleR="1" /></syntaxhighlight> || updates the value of attribute '''colorScaleR''' from the animated [[RCOXML Objects|object]]
|-
| 0x3C || 0x04 || float || '''colorScaleG''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Recolour colorScaleG="1" /></syntaxhighlight> || updates the value of attribute '''colorScaleG''' from the animated [[RCOXML Objects|object]]
|-
| 0x40 || 0x04 || float || '''colorScaleB''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Recolour colorScaleB="1" /></syntaxhighlight> || updates the value of attribute '''colorScaleB''' from the animated [[RCOXML Objects|object]]
|-
| 0x44 || 0x04 || float || '''colorScaleA''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Recolour colorScaleA="1" /></syntaxhighlight> || updates the value of attribute '''colorScaleA''' from the animated [[RCOXML Objects|object]]
|}
 
==(0x0904) Rotate==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Rotate object="object:label" time="1000" accelMode="0x3" radiansX="1" radiansY="1" radiansZ="1" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09040000 (Rotate)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 04|FF FF FF FF|Rotate|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|Rotate}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''radiansX''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Rotate radiansX="1" /></syntaxhighlight> ||
|-
| 0x3C || 0x04 || float || '''radiansY''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Rotate radiansY="1" /></syntaxhighlight> ||
|-
| 0x40 || 0x04 || float || '''radiansZ''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Rotate radiansZ="1" /></syntaxhighlight> ||
|}
 
==(0x0905) Resize==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Resize object="object:label" time="1000" accelMode="0x3" sizeScaleX="1" sizeScaleY="1" sizeScaleZ="1" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09050000 (Resize)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 05|FF FF FF FF|Resize|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|Resize}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''sizeScaleX''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Resize sizeScaleX="1" /></syntaxhighlight> || updates the value of attribute '''sizeScaleX''' from the animated [[RCOXML Objects|object]]
|-
| 0x3C || 0x04 || float || '''sizeScaleY''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Resize sizeScaleY="1" /></syntaxhighlight> || updates the value of attribute '''sizeScaleY''' from the animated [[RCOXML Objects|object]]
|-
| 0x40 || 0x04 || float || '''sizeScaleZ''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Resize sizeScaleZ="1" /></syntaxhighlight> || updates the value of attribute '''sizeScaleZ''' from the animated [[RCOXML Objects|object]]
|}
 
==(0x0906) Fade==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Fade object="object:label" time="1000" accelMode="0x3" colorScaleA="1" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09060000 (Fade)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 06|FF FF FF FF|Fade|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|Fade}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''colorScaleA''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><Fade colorScaleA="1" /></syntaxhighlight> || updates the value of attribute '''colorScaleA''' from the animated [[RCOXML Objects|object]]
|}
 
==(0x0907) Delay==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Delay time="1000" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09070000 (Delay)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 07|FF FF FF FF|Delay|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x28 || 0x04 || float || '''time''' || {{yes}} || {{yes}} || 44 7A 00 00 || <syntaxhighlight lang="xml" inline><Delay time="1000" /></syntaxhighlight> ||
|}
 
==(0x0908) FireEvent==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><FireEvent event="event:native:/runFuctionX" /></syntaxhighlight>}}
 
Triggers (or "fires") an event, there are different types of events (see [[RCOXML Coding]]). The most used inside animations are "native events" and "animation events" itself
 
By triggering an animation event from inside an animation... both animations are played consecutivelly. Also is posible to reload the animation by triggering itself to create an infinite animation loop, see the examples in [[RCOXML ofw animations]]
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09080000 (FireEvent)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 08|FF FF FF FF|FireEvent|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| rowspan="2" | 0x28 || rowspan="2" | 0x08 || rowspan="2" | ref || rowspan="2" | '''event''' || rowspan="2" {{yes}} || rowspan="2" {{yes}} || 04 00 / <abbr title="Padding, always 0x00 0x00">00 00</abbr> / 12 34 56 78 || <syntaxhighlight lang="xml" inline><FireEvent event="event:native:/runFuctionX" /></syntaxhighlight><br><syntaxhighlight lang="xml" inline><FireEvent event="event:script:/main/runFuctionX" /></syntaxhighlight> || Triggers an '''event''' ([[Template:RCO TOC reference types|ref_type]][2], padding[2], [[Resource_Container_(RCO)|event_string_table_offset]][4])
|-
| 04 08 / <abbr title="Padding, always 0x00 0x00">00 00</abbr> / 12 34 56 78 || <syntaxhighlight lang="xml" inline><FireEvent event="anim:label" /></syntaxhighlight> || Triggers a '''animation''' ([[Template:RCO TOC reference types|ref_type]][2], padding[2], [[Resource_Container_(RCO)|event_string_table_offset]][4])
|}
 
==(0x0909) Lock==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Lock unknownInt0="0xffffffff" /></syntaxhighlight>}}
 
Disables [[XMB]]. Note in [[Talk:Custom_render_plugin]] how '''anim_coldboot''', '''anim_coldboot2''', '''anim_gameboot''', and '''anim_otherboot''' animations starts by locking the XMB to dont interfere
 
*In latest firmwares (where is used coldboot.raf animation) if XMB is not locked + having a dynamic theme applyed the PS3 crashes. Is because inside dynamic themes the background is a .raf animation. Is not posible to play 2 .raf animations together overlapped (from coldboot.raf and from inside a dynamic theme)
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x09090000 (Lock)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 09|FF FF FF FF|Lock|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x28 || 0x04 || int || {{cellcolors|#ff9999}} '''unknownInt0''' || {{yes}} || {{yes}} || FF FF FF FF || <syntaxhighlight lang="xml" inline><Lock unknownInt0="0xffffffff" /></syntaxhighlight> ||
|}
 
==(0x090A) Unlock==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': No<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><Unlock unknownInt0="0xffffffff" /></syntaxhighlight>}}
 
Enables [[XMB]]. Note in [[Talk:Custom_render_plugin]] how '''anim_gameboot''', and '''anim_otherboot''' animations doesnt unlocks XMB at the ending because when the animation is completed a game/app boots (doesnt returns to XMB)
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x090A0000 (Unlock)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 0A|FF FF FF FF|Unlock|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x28 || 0x04 || int || {{cellcolors|#ff9999}} '''unknownInt0''' || {{yes}} || {{yes}} || FF FF FF FF || <syntaxhighlight lang="xml" inline><Unlock unknownInt0="0xffffffff" /></syntaxhighlight> ||
|}
 
==(0x090B) SlideOut==
{{Boxinfo3|content='''Console support''': {{icon content psp|50px}} {{icon content ps3|50px}}<br />'''Standard attributes''': Yes<br />'''Specific attributes''': Yes}}
{{Boxcode|code=<syntaxhighlight lang="xml"><SlideOut object="object:label" time="1000" accelMode="0x3" speedX="1" speedY="1" compressX="1" compressY="1" /></syntaxhighlight>}}
 
{| class="wikitable" style="font-size:small;"
|+RCO TOC entry_type 0x090B0000 (SlideOut)
! Offset !! Length !! <abbr title="Data type">Type</abbr> !! Name !! {{icon content psp|50px}} !! {{icon content ps3|50px}} !! Example (TOC) !! Example (XML) !! Notes
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC entry common area|09 0B|FF FF FF FF|SlideOut|00 00 00 28|00 00 00 00|unnamed}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| {{RCO TOC Animations standard attributes|SlideOut}}
|-
| colspan="9" {{cellcolors|lightgrey}}
|-
| 0x38 || 0x04 || float || '''speedX''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><SlideOut speedX="1" /></syntaxhighlight> ||
|-
| 0x3C || 0x04 || float || '''speedY''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><SlideOut speedY="1" /></syntaxhighlight> ||
|-
| 0x40 || 0x04 || float || '''compressX''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><SlideOut compressX="1" /></syntaxhighlight> ||
|-
| 0x44 || 0x04 || float || '''compressY''' || {{yes}} || {{yes}} || 3F 80 00 00 || <syntaxhighlight lang="xml" inline><SlideOut compressY="1" /></syntaxhighlight> ||
|}
 
[http://ctfs.wiki.fc2.com/wiki/SlideOut%E3%81%AE%E4%BD%BF%E7%94%A8%E4%BE%8B example]


{{File Formats}}
{{File Formats}}<noinclude>[[Category:Main]]</noinclude>
<noinclude>[[Category:Main]]</noinclude>

Latest revision as of 15:55, 23 April 2023

Description[edit | edit source]

RCOXML animations are defined in the XML code embedded inside .rco files. See Resource Container (RCO) and RCOXML Coding

RCOXML contents PS3 firmware 4.76 (122 .rco files)  · 
filename name VSMXFile ImageTree FontTree TextTree ModelTree SoundTree ObjectTree AnimTree Notes
ap_plugin.rco ap_plugin No No No No No No Yes No
audioplayer_plugin.rco sample No Yes (gim) No Yes No No Yes No
audioplayer_plugin_dummy.rco sample No No No Yes No No No No
audioplayer_plugin_mini.rco sample No No No Yes No No Yes No
audioplayer_plugin_util.rco sample No No No Yes No No Yes No Associated .sprx has a different name.
auth_plugin.rco auth_plugin No Yes (gim) No Yes No No Yes No
autodownload_plugin.rco autodownload_plugin No Yes (gim) No Yes No No Yes No
autoupdateconf_plugin.rco autoupdateconff_plugin No Yes (gim) No Yes No No Yes No
avc2_game_plugin.rco sample No No No Yes No No No No
avc2_game_video_plugin.rco sample No Yes (gim) No No No No Yes No
avc2_text_plugin.rco tcgui No Yes (gim) No Yes No No Yes No
avc_game_plugin.rco sample No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
avc_plugin.rco sample No Yes (gim) No Yes No No Yes No
bdp_disccheck_plugin.rco bdp_disccheck_plugin No No No Yes No No Yes No
bdp_plugin.rco bdp_plugin No Yes (gim) No Yes No No Yes Yes
bdp_storage_plugin.rco bdp_storage_plugin No No No Yes No No Yes No
campaign_plugin.rco campaign_plugin No Yes (gim, png) No Yes No No Yes No
category_setting_plugin.rco category_setting_plugin No Yes (gim) No Yes No No No No
checker_plugin.rco checker No No No No No No Yes No Associated .sprx has a different name.
closedcaption_config_plugin.rco closedcaption_config_plugin No Yes (gim) No Yes No No Yes No
comboplay_plugin.rco comboplay_plugin No Yes (gim) No Yes No No Yes No
custom_render_plugin.rco custom_render_plugin No Yes (gim) No No No No Yes Yes
data_copy_plugin.rco sample No No No Yes No No Yes No
deviceconf_plugin.rco deviceconf_plugin No Yes (gim) No Yes No No Yes No
dlna_plugin.rco dlna No Yes (gim) No Yes No No Yes No
download_plugin.rco download No Yes (gim) No Yes No No Yes No
dtcpip_util.rco dtcpip_util No No No Yes No No Yes No
edy_plugin.rco edy_plugin No Yes (gim) No Yes No Yes Yes No
eula_cddb_plugin.rco eula_cddb_plugin No Yes (gim) No Yes No No Yes No
eula_hcopy_plugin.rco eula_hcopy No Yes (gim) No Yes No No Yes No
eula_net_plugin.rco regcam_plugin No Yes (gim, png, jpg) No Yes No Yes Yes No
explore_category_friend.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_game.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_music.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_network.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_photo.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_psn.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_sysconf.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_tv.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_user.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_category_video.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_plugin_ft.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_plugin_full.rco explore_plugin No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
explore_plugin_game.rco explore_plugin No Yes (gim) No Yes No No Yes No
explore_plugin_np.rco explore_plugin No Yes (gim) No Yes No No Yes No
filecopy_plugin.rco sample No Yes (gim) No Yes No No Yes No
friendim_plugin.rco friendim No Yes (gim) No Yes No No Yes Yes
friendim_plugin_game.rco friendim No Yes (gim) No Yes No No Yes Yes Associated .sprx has a different name.
friendml_plugin.rco friendml_plugin No Yes (gim) No Yes No No Yes No
friendml_plugin_game.rco friendml_plugin No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
friendtrophy_plugin.rco friendtrophy_plugin No Yes (gim) No Yes No No Yes No
friendtrophy_plugin_game.rco friendtrophy_plugin No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
game_ext_plugin.rco game_ext_plugin No Yes (gim, png) No Yes No No Yes No
game_indicator_plugin.rco user_info_plugin No Yes (gim) No No No No Yes No
game_plugin.rco game_plugin No No No Yes No No Yes No Associated .sprx has a different name.
gamedata_plugin.rco gamedata_plugin No No No Yes No No Yes No
gamelib_plugin.rco gamelib_plugin No Yes (gim) No No No No Yes Yes
gameupdate_plugin.rco sample No No No Yes No No Yes No
hknw_plugin.rco hknw_plugin No Yes (gim) Yes Yes No No Yes No
idle_plugin.rco idle No No No No No No Yes No
impose_plugin.rco impose_plugin No Yes (gim) No Yes No No Yes Yes Associated .sprx has a different name.
ingame_manual_plugin.rco ingame_manual No No No Yes No No Yes No
kensaku_plugin.rco kensaku No Yes (gim) No Yes No No Yes No
msgdialog_plugin.rco msgdialog_plugin No No No Yes No No Yes No Associated .sprx has a different name.
mtpinitiator_plugin.rco sample No Yes (gim) No Yes No No Yes No
musicbrowser_plugin.rco sample No No No No No No Yes No
nas_plugin.rco nas_plugin No Yes (gim) No Yes No No Yes No
netconf_plugin.rco sample No Yes (gim) No Yes No No Yes No
newstore_effect.rco skeleton_plugin No No No No No No No No Empty file.
newstore_plugin.rco newstore_plugin No Yes (gim, png, jpg) No Yes No No Yes No
np_eula_plugin.rco npeula No Yes (gim) No Yes No No Yes No
np_matching_plugin.rco np_matching_plugin No Yes (gim) No Yes No No Yes No
np_multisignin_plugin.rco np_multisignin_plugin No Yes (gim) No Yes No No Yes No
np_sns_plugin.rco npsns No Yes (gim) No Yes No No Yes No
np_trophy_ingame.rco np_achiev No Yes (gim) No Yes No No Yes No
np_trophy_plugin.rco np_achiev No Yes (gim) No Yes No No Yes No
npsignin_plugin.rco npsignin_plugin No Yes (gim) No Yes No No Yes Yes
osk_plugin.rco sample No Yes (gim) No No No Yes Yes No
oskfullkeypanel_plugin.rco ime_osk_base_resouce No Yes (gim) No Yes No No Yes No
oskpanel_plugin.rco ime_osk_base_resouce No Yes (gim) No Yes No No Yes No
pesm_plugin.rco pesm No No No No No No Yes No
photo_network_sharing_plugin.rco pesm No Yes (gim) No Yes No No Yes No
photolist_plugin.rco sample No No No No No No Yes No
photoupload_plugin.rco dlna No Yes (gim) No Yes No No Yes No
photoviewer_plugin.rco photoviewer_plugin No Yes (gim, png) No Yes No No Yes No
playlist_plugin.rco sample No Yes (gim) No Yes No No Yes No
podl_plugin.rco podl_plugin No No No No No No Yes No
poweroff_plugin.rco poweroff No No No Yes No No Yes No
premo_plugin.rco premo_plugin No Yes (gim) No Yes No No Yes Yes
print_plugin.rco print_plugin No Yes (gim) No Yes No No Yes No
profile_plugin.rco profile_plugin No Yes (gim) No Yes No No Yes No
profile_plugin_mini.rco profile_plugin_mini No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
ps3_savedata_plugin.rco sample No Yes (gim) No Yes No No Yes No
ps3_savedata_plugin_game_mini.rco sample No No No Yes No No Yes No
rec_plugin.rco rec_plugin No No No No No No Yes No
regcam_plugin.rco regcam_plugin No Yes (gim, png, jpg) No Yes No Yes Yes No
remotedownload_plugin.rco remotedownload No No No Yes No No Yes No
sacd_plugin.rco sample No Yes (gim) No Yes No No Yes Yes
scenefolder_plugin.rco sample No No No No No No Yes No
screenshot_plugin.rco screenshot_plugin No No No Yes No No Yes No
search_service.rco search_service No No No Yes No No No No Associated .sprx has a different name.
software_update_plugin.rco software_update_plugin No Yes (gim) No Yes No No Yes No
soundvisualizer_plugin.rco soundvisualizer No Yes (gim) No Yes No No Yes No
strviewer_plugin.rco strviewer No No No Yes No No Yes No
subdisplay_plugin.rco ap_plugin No No No No No No Yes No Associated .sprx has a different name.
sv_pseudoaudioplayer_plugin.rco sv_pseudoaudioplayer No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
sysconf_plugin.rco sysconf_plugin No Yes (gim) Yes Yes No No Yes No
system_plugin.rco system_plugin No Yes (gim) No Yes No Yes Yes Yes Associated .sprx has a different name.
thumthum_plugin.rco sample No No No Yes No No Yes No
upload_util.rco upload_util No Yes (gim) No Yes No No Yes No
user_info_plugin.rco user_info_plugin No No No Yes No No Yes No
user_plugin.rco user No Yes (gim) No Yes No No Yes No
videoeditor_plugin.rco skeleton_plugin No Yes (gim, png, jpg) No Yes No Yes Yes No
videoplayer_plugin.rco videoplayer No Yes (gim) No Yes No No Yes No
videoplayer_util.rco videoplayer No No No Yes No No Yes No
vmc_savedata_plugin.rco sample No Yes (gim) No Yes No No Yes No
wboard_plugin.rco sample No Yes (gim) No Yes No No Yes No
webbrowser_plugin.rco sample No Yes (gim) No Yes No No Yes No
webrender_plugin.rco sample No Yes (gim) No Yes No No Yes No
xmb_ingame.rco xmb_plugin No Yes (gim) No Yes No No Yes No
xmb_plugin_normal.rco xmb_plugin No Yes (gim) No Yes No No Yes No Associated .sprx has a different name.
ycon_manual_plugin.rco ycon_plugin No Yes (gim) No Yes No No Yes No

General concepts[edit | edit source]

Delays and execution timeline[edit | edit source]

RCOXML animations delays ---> http://endlessparadigm.com/forum/showthread.php?tid=19501&pid=262236#pid262236

entry types and reference types[edit | edit source]

RCO TOC entry types
Second byte
0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1A 0x1B 0x1C 0x1D 0x1E 0x1F
First byte 0x01 unk MainTree
0x02 ScriptTree
0x03 TextTree Text
0x04 ImageTree Image
0x05 ModelTree Model
0x06 SoundTree Sound
0x07 FontTree Font
0x08 ObjectTree Page Plane Button XMenu XMList XList Progress Scroll MList MItem unk XItem Text ModelObject Spin Action ItemSpin Group LList LItem Edit Clock IList IItem Icon UButton unk CheckboxGroup CheckboxItem Meter EditBox
0x09 AnimTree Anim MoveTo Recolour Rotate Resize Fade Delay FireEvent Lock Unlock SlideOut
Supported by PSP icon and PS3 icon Supported by PS3 icon only
  • The entry_types with the suffix Tree (as example MainTree) are special and doesnt uses attributes, MainTree is always located as the first entry, doesn't have a parent, and doesn't have any previous or next "sibling", the maximun number posible of childrens for MainTree is 8 (containing all the other "trees"). The other "trees" (as example imageTree or soundTree) are siblings and are the childrens of "MainTree", Every one of those "trees" contains a variable number of entry_types that are its childrens
  • The attributes of the RCOXML Objects (entry_types starting with 0x08) and RCOXML Animations (entry_types starting with 0x09) can be grouped in standard attributes (used by most entryes of this type) and specific attributes (different for every entry_type). The standard attributes are always located before the specific attributes
  • First two bytes are swapped based on architecture (PSP in little endian, PS3 in big endian). The table shows the values in big endian
RCO TOC reference types
reference_type pointer Method Loader Loads From Example (XML) Notes
0xFFFF0000 0xFFFFFFFF n/a All Nothing None <Entry reference="nothing"/>
0x04000000 relative event: RCOXML Objects
RCOXML Animations
Code function Associated .SPRX <Entry event="event:native:/runFuctionX"/>
ScriptTree/Script File inside RCO <Entry event="event:script:/main/runFuctionX"/>
0x04010000 # (0-based) text: RCOXML Objects
XMBML Code
TextTree/Text Strings inside RCO <Entry text="text:msg_mytext"/>
0x04020000 absolute image: RCOXML Objects
XMBML Code
ImageTree/Image File inside RCO <Entry image="image:tex_mytexture"/>
0x04030000 absolute model: RCOXML Objects ModelTree/Model File inside RCO <Entry model="model:mymodel"/>
0x04040000 absolute ? sound: ? associated .SPRX SoundTree/Sound File inside RCO <Entry sound="sound:mysound"/> ? speculation
0x04050000 absolute font: RCOXML Objects FontTree/Font File inside RCO ? <Entry font="font:fontstyle_sanserif"/>
0x04060000 absolute ? anim2: ? RCOXML Objects ? AnimTree/Animation ? RCOXML code ? <Entry anim2="anim2:myanimation"/> ? speculation
0x04070000 absolute object2: RCOXML Objects ObjectTree/Object RCOXML code <Entry object2="object2:plane_myplane"/>
0x04080000 absolute anim: RCOXML Animations AnimTree/Animation RCOXML code <Entry anim="anim:myanimation"/>
0x04090000 absolute object: RCOXML Animations ObjectTree/Object RCOXML code <Entry object="object:plane_myplane"/>
  • A reference attribute is composed by two values, the first is the reference_type that indicates the "tree" of the entry that is going to be loaded, and the second is a pointer to a text string with the label of the entry that is going to be loaded
  • The reference_type event doesnt loads an entry from a "tree" though, it runs a code function from either a .sprx (by storing the text native:/ as part of the text string inside the RCO) or from a VSMX script (by storing the text script:/ as part of the text string inside the RCO)
  • First two bytes are swapped based on architecture (PSP in little endian, PS3 in big endian). The table shows the values in big endian


Standard attributes used by animations[edit | edit source]

RCO TOC Animations standard attributes
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <Element object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <Element time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <Element accelMode="0x3"/>
  • accelMode. Used to accelerate or decelerate an animation, used by most of the animations, posible values are:
    • 0x0 - no accelaration
    • 0x1 - starts fast, ends slow
    • 0x2 -
    • 0x3 -
    • 0x4 - starts slow, ends fast

Measure units and conversions[edit | edit source]

Measure units used in RCOXML code
  • XYZ Position, in pixels
  • RGBA Color Scale in percentage in a scale from 0 up to 1, where 1 represents the max value posible of 255 (decimal value divided by 255 to get into this scale)
  • XYZ Size, in pixels, negative numbers mirrors the image
  • XYZ Size Scale, in percentage in a scale from 0 up to 1, negative numbers mirrors the image
  • Time, in miliseconds, where 1000 is one second
  • XYZ Angle, in radians with right-handed rule coordinates, where radians=(π*degrees)/180, and degrees=(180*radians)/π, as example for one turn of 360º degrees: radians=(3.141*360)/180=6.283 ...so... 360º degrees = 6.283 radians

Animations[edit | edit source]

Example

<RcoFile>
	<MainTree name="maintree_label">
		<AnimTree>
			<Anim name="animation_1_label">
				<Fade object="object:animated_object_label" time="100" accelMode="0x0" colorScaleA="1" />
				<FireEvent event="event:native:/runFuctionX" />
			</Anim>
		</AnimTree>
	</MainTree>
</RcoFile>

(0x0900) AnimTree[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: No
<AnimTree>
RCO TOC entry_type 0x09000000 (AnimTree)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 00 / 00 00 <AnimTree/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 00 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 28 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown

(0x0901) Anim[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: No
<Anim name="label">

The AnimTree can have one or more Anim childrens, and every Anim can have a list of the childrens listed below

RCO TOC entry_type 0x09010000 (Animation)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 01 / 00 00 <Anim name="label"/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes 00 00 00 00 label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 00 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 28 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown

(0x0902) MoveTo[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<MoveTo object="object:label" time="1000" accelMode="0x3" positionX="1" positionY="1" positionZ="1" positionOverrideX="0x0" positionOverrideY="0x0" positionOverrideZ="0x0" />
RCO TOC entry_type 0x09020000 (MoveTo)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 02 / 00 00 <MoveTo/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <MoveTo object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <MoveTo time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <MoveTo accelMode="0x3"/>
0x38 0x04 float positionX Yes Yes 3F 80 00 00 <MoveTo positionX="1" /> updates the value of attribute positionX from the animated object
0x3C 0x04 float positionY Yes Yes 3F 80 00 00 <MoveTo positionY="1" /> updates the value of attribute positionY from the animated object
0x40 0x04 float positionZ Yes Yes 3F 80 00 00 <MoveTo positionZ="1" /> updates the value of attribute positionZ from the animated object
0x44 0x04 unk positionOverrideX No Yes 00 00 00 00 <MoveTo positionOverrideX="0x0" /> XYZ Position Override with values from XMB Layouts
0x48 0x04 unk positionOverrideY No Yes 00 00 00 00 <MoveTo positionOverrideY="0x0" />
0x4C 0x04 unk positionOverrideZ No Yes 00 00 00 00 <MoveTo positionOverrideZ="0x0" />

(0x0903) Recolour[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<Recolour object="object:label" time="1000" accelMode="0x3" colorScaleR="1" colorScaleG="1" colorScaleB="1" colorScaleA="1" />
RCO TOC entry_type 0x09030000 (Recolour)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 03 / 00 00 <Recolour/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <Recolour object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <Recolour time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <Recolour accelMode="0x3"/>
0x38 0x04 float colorScaleR Yes Yes 3F 80 00 00 <Recolour colorScaleR="1" /> updates the value of attribute colorScaleR from the animated object
0x3C 0x04 float colorScaleG Yes Yes 3F 80 00 00 <Recolour colorScaleG="1" /> updates the value of attribute colorScaleG from the animated object
0x40 0x04 float colorScaleB Yes Yes 3F 80 00 00 <Recolour colorScaleB="1" /> updates the value of attribute colorScaleB from the animated object
0x44 0x04 float colorScaleA Yes Yes 3F 80 00 00 <Recolour colorScaleA="1" /> updates the value of attribute colorScaleA from the animated object

(0x0904) Rotate[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<Rotate object="object:label" time="1000" accelMode="0x3" radiansX="1" radiansY="1" radiansZ="1" />
RCO TOC entry_type 0x09040000 (Rotate)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 04 / 00 00 <Rotate/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <Rotate object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <Rotate time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <Rotate accelMode="0x3"/>
0x38 0x04 float radiansX Yes Yes 3F 80 00 00 <Rotate radiansX="1" />
0x3C 0x04 float radiansY Yes Yes 3F 80 00 00 <Rotate radiansY="1" />
0x40 0x04 float radiansZ Yes Yes 3F 80 00 00 <Rotate radiansZ="1" />

(0x0905) Resize[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<Resize object="object:label" time="1000" accelMode="0x3" sizeScaleX="1" sizeScaleY="1" sizeScaleZ="1" />
RCO TOC entry_type 0x09050000 (Resize)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 05 / 00 00 <Resize/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <Resize object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <Resize time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <Resize accelMode="0x3"/>
0x38 0x04 float sizeScaleX Yes Yes 3F 80 00 00 <Resize sizeScaleX="1" /> updates the value of attribute sizeScaleX from the animated object
0x3C 0x04 float sizeScaleY Yes Yes 3F 80 00 00 <Resize sizeScaleY="1" /> updates the value of attribute sizeScaleY from the animated object
0x40 0x04 float sizeScaleZ Yes Yes 3F 80 00 00 <Resize sizeScaleZ="1" /> updates the value of attribute sizeScaleZ from the animated object

(0x0906) Fade[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<Fade object="object:label" time="1000" accelMode="0x3" colorScaleA="1" />
RCO TOC entry_type 0x09060000 (Fade)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 06 / 00 00 <Fade/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <Fade object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <Fade time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <Fade accelMode="0x3"/>
0x38 0x04 float colorScaleA Yes Yes 3F 80 00 00 <Fade colorScaleA="1" /> updates the value of attribute colorScaleA from the animated object

(0x0907) Delay[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: Yes
<Delay time="1000" />
RCO TOC entry_type 0x09070000 (Delay)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 07 / 00 00 <Delay/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x04 float time Yes Yes 44 7A 00 00 <Delay time="1000" />

(0x0908) FireEvent[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: Yes
<FireEvent event="event:native:/runFuctionX" />

Triggers (or "fires") an event, there are different types of events (see RCOXML Coding). The most used inside animations are "native events" and "animation events" itself

By triggering an animation event from inside an animation... both animations are played consecutivelly. Also is posible to reload the animation by triggering itself to create an infinite animation loop, see the examples in RCOXML ofw animations

RCO TOC entry_type 0x09080000 (FireEvent)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 08 / 00 00 <FireEvent/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref event Yes Yes 04 00 / 00 00 / 12 34 56 78 <FireEvent event="event:native:/runFuctionX" />
<FireEvent event="event:script:/main/runFuctionX" />
Triggers an event (ref_type[2], padding[2], event_string_table_offset[4])
04 08 / 00 00 / 12 34 56 78 <FireEvent event="anim:label" /> Triggers a animation (ref_type[2], padding[2], event_string_table_offset[4])

(0x0909) Lock[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: Yes
<Lock unknownInt0="0xffffffff" />

Disables XMB. Note in Talk:Custom_render_plugin how anim_coldboot, anim_coldboot2, anim_gameboot, and anim_otherboot animations starts by locking the XMB to dont interfere

  • In latest firmwares (where is used coldboot.raf animation) if XMB is not locked + having a dynamic theme applyed the PS3 crashes. Is because inside dynamic themes the background is a .raf animation. Is not posible to play 2 .raf animations together overlapped (from coldboot.raf and from inside a dynamic theme)
RCO TOC entry_type 0x09090000 (Lock)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 09 / 00 00 <Lock/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x04 int unknownInt0 Yes Yes FF FF FF FF <Lock unknownInt0="0xffffffff" />

(0x090A) Unlock[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: No
Specific attributes: Yes
<Unlock unknownInt0="0xffffffff" />

Enables XMB. Note in Talk:Custom_render_plugin how anim_gameboot, and anim_otherboot animations doesnt unlocks XMB at the ending because when the animation is completed a game/app boots (doesnt returns to XMB)

RCO TOC entry_type 0x090A0000 (Unlock)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 0A / 00 00 <Unlock/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x04 int unknownInt0 Yes Yes FF FF FF FF <Unlock unknownInt0="0xffffffff" />

(0x090B) SlideOut[edit | edit source]

Info
Console support: PSP icon PS3 icon
Standard attributes: Yes
Specific attributes: Yes
<SlideOut object="object:label" time="1000" accelMode="0x3" speedX="1" speedY="1" compressX="1" compressY="1" />
RCO TOC entry_type 0x090B0000 (SlideOut)
Offset Length Type Name PSP icon PS3 icon Example (TOC) Example (XML) Notes
0x00 0x04 int entry_type Yes Yes 09 0B / 00 00 <SlideOut/> entry_type[2], padding[2]
0x04 0x04 int entry_label_offset Yes Yes FF FF FF FF label_string_table_offset[4] (optional)
0x08 0x04 int attributes_offset Yes Yes 00 00 00 28 represents XML hierarchy Attributes offset relative to the start of this entry (optional)
0x0C 0x04 int children_offset Yes Yes 00 00 00 00 First children offset relative to the start of this entry (optional)
0x10 0x04 int children_number Yes Yes 00 00 00 00 Number of subentries
0x14 0x04 int next_sibling_offset Yes Yes 00 00 00 00 Next sibling offset relative to the start of this entry (optional)
0x18 0x04 int prev_sibling_offset Yes Yes 00 00 00 00 Previous sibling offset relative to the start of this entry (optional)
0x1C 0x04 int parent_offset Yes Yes 00 00 00 00 This entry offset relative to the start of the parent entry
0x20 0x08 unk toc_entry_unk Yes Yes 00 00 00 00 .. . no XML representation Unknown
0x28 0x08 ref object Yes Yes 04 09 / 00 00 / 12 34 56 78 <SlideOut object="object:label"/> links the animation to an object (ref_type[2], padding[2], label_string_table_offset[4])
0x30 0x04 float time Yes Yes 44 7A 00 00 <SlideOut time="1000"/>
0x34 0x04 int accelMode Yes Yes 00 00 00 03 <SlideOut accelMode="0x3"/>
0x38 0x04 float speedX Yes Yes 3F 80 00 00 <SlideOut speedX="1" />
0x3C 0x04 float speedY Yes Yes 3F 80 00 00 <SlideOut speedY="1" />
0x40 0x04 float compressX Yes Yes 3F 80 00 00 <SlideOut compressX="1" />
0x44 0x04 float compressY Yes Yes 3F 80 00 00 <SlideOut compressY="1" />

example