Editing the PS3 Settings Category (RCO)

Discussion in 'XMB Modifications' started by DeViL303, Mar 16, 2017.

  1. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    So Im wondering is there any info available on editing the settings category? Has anyone tried it successfully even in a small way? Im making this thread so maybe we can pool some info and learn something more about it, Reversing the RCO xml format is not an easy task, this is probably why we havnt seen any Settings category mods so far. Most of the variables in the RCO xmls are labelled as "unknown".

    Of course it is easy to edit the titles shown on the XMB by editing the language xmls but im talking about proper mods like adding new items and menus that actually link up to functions, this will require sprx editing too..

    Here are a couple of things I have learned so far, Some of this is probably known already but anyway, maybe it will help someone someday.

    As we know, unlike other categories on the XMB that read from the xmls, the category_sysconf.xml (and category_sysconf_shop.xml of course) is not used at all, Actually both of those files can be deleted from flash without any change to the XMB, don't know why they are included in OFW (or CFW) at all? I notice they are included in XMBLOCK so maybe there is some use for them, but my PS3 is running without them. :)

    So without knowing much more about it this tells us that the category must be contained in the RCOs and SPRX files. Now if you have looked at the xmls contained in the RCOs you will know they can look a bit daunting , see below:
    [​IMG]

    Now that is just a small part of the music settings, and with over 900,000 characters in that one xml alone you can see how its just a little bit tricky :)

    So the best way to learn when you have no info is to just try change something and try to track down what each entry does. The problem with doing that in the settings category is that it is a very easy to mess the whole thing up. Its very unstable and a small change can have big effects. Small example below:



    I tried to add a new "page" into the debug settings menu, by copying one of the existing pages and adding it underneath with a new title, see the results, almost every item on the settings menu changed so that only "HDCP" and "Brazil" were selectable, for every bloody thing. :)

    It is strange the way a "small" (in comparison to the 900,000 characters) change in one section can have such a drastic effect. Anyway I have learned a bit more than this by making much smaller changes, I will post some more info here over the next few hours/days.
     
  2. 145
    89
    57
    Metalomeus

    Metalomeus Member

    Joined:
    Jun 11, 2015
    Messages:
    145
    Likes Received:
    89
    Trophy Points:
    57
    Holy **** !! This mod is very interesting ^^
     
    DeViL303 likes this.
  3. 2,464
    2,446
    372
    Berion

    Berion Developer

    Joined:
    Feb 3, 2015
    Messages:
    2,464
    Likes Received:
    2,446
    Trophy Points:
    372
    Gender:
    Male
    Location:
    Poland
    Without emulator testing this is really pain in the ass. And those unknown params... meh. This is the best way to discourage hackers.
     
    ntodek, bitsbubba and DeViL303 like this.
  4. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    Yeah, if it was easy everyone would be doing it :) , I think they are only unknown because RCOmage doesn't know what they are, they values that do have names only have them because RCOmage was coded to show them, you see the xml you get when you extract an RCO is not actually contained in it, the xml is just something that RCOmage makes to display the values.

    Here is a bit more info, here is what the Audio Import codec section looks like normally:
    [​IMG]

    Notice the 3 "Mitem" entries, well they are the 3 items that are available, but what I have found is that you can add a new "Mitem", with ANY name, and it will show on the XMB.

    [​IMG]

    There is something else interesting about this, because I have noticed, if you add an item with a new name, but use an existing text tag like on or off, then the option will do the same thing as the text tag (not in all cases) regardless of the name, So this makes me think that the text tag is more than it seems.
     
    Last edited: Mar 16, 2017
  5. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    I have been looking a bit more at the "pages" and "planes". In the image below you can see the "Crossfade Playback" setting from inside the "Music Settings" on the XMB.

    You can see the layout: A "header" with the page name, then below/inside that there is a "main" plane, with 2 further planes below/inside that ("_BG0" and "_BG1"), and then the "Mlist", with all the "Mitems" below it.
    [​IMG]


    So to try and identify what each section is I have been altering one value in each section at a time, then looking for changes on the XMB, So far I know that the plane "BG1" refers to this background. Anyone could do this, just requires time and interest, no real skill, its hit and miss really.
    [​IMG]

    As you can see I have doubled the width of it in the above image by editing the "iconOffset" value in the BG1 section.

    Now the "Mlist/lower_menu" section below the "BG1" is the text that appears on that background, as you can see in this image where I have increased the "iconOffset" value in the "Mlist" section and it has moved the text over:
    [​IMG]

    So now at least I know what these 2 areas in a section relate to, and have also identified what 2 values do aswell. The icon offset values are horizontal positions, I have not figured out exactly how they relate to exact positions yet though.

    In this image I have added a few new Mitems to the Mlist:
    [​IMG]

    Here are the results on the XMB:
    [​IMG]

    As you can see, the new items appear ok, the 2 items that have existing text tags in the language xmls show the text, the other new item with no existing text tag defaults to some Asian text, probably Japanese, don't know where it reads that from.
     
  6. 6,531
    6,199
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,531
    Likes Received:
    6,199
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Take a look at this page i was writing, long story short... in my research about the file formats related with rco i found some problems in rcomage and could identify a lof of that "unknown" atributes (some tenths that are not in rcomage), so i decided to create some wiki pages and use new names (more explicit or more official) when posible
    http://www.psdevwiki.com/ps3/RCOXML_Objects

    When looking at that rcoxml files take a look too at that wiki page to see if i found some of the "unknowns" used in your files
    There is a lot more i wrote in that page and other related pages in wiki, but are not finished, at some point i will continue completing them
    But take a read at that page anyway, by now works as an intro that explains how it works, and also is a list of all the "objects" availables to build "visual stuff" in XMB (i always say that are like the LEGO blocks of XMB) with his attributes, explains about what does each attribute, the valid attribute values found in ofw, its data types, etc...
    Is not complete (neither the intro, neither the lists) but the wiki page is ready to add more info, and that was a long road so im happy with it by now :)

    P.S.
    If you want to add some of the "unknowns" i identifyed to your rcomage (this way the xml generated by rcomage matches with the names in wiki) you need to modify the .ini files used by rcomage... the ones that uses the names "attrib" and "ps3"... something like... "object_attributes_definitions_ps3.ini"
    In that file you can add your findings... also if you identify a new one advise me to add some info about it to wiki (or add it to wiki yourself in that page)
     
    Last edited: Mar 18, 2017
    Berion, STLcardsWS and DeViL303 like this.
  7. 12,393
    4,993
    497
    pinky

    pinky Retired Developer

    Joined:
    Mar 8, 2015
    Messages:
    12,393
    Likes Received:
    4,993
    Trophy Points:
    497
    Gender:
    Male
    Location:
    The Great Gig in the Sky
    that's traditional Chinese actually. Japanese contains hiragana which r simple characters for particles. ;)
     
    DeViL303 likes this.
  8. 6,531
    6,199
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,531
    Likes Received:
    6,199
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Btw, the attribute named "iconOffset" in rcomage is part of the "standard attributes" (this attributes are the ones that goes first, and are used commonlly by most of the objects)

    I renamed it to "anchorMode" for wiki, because it works like in photoshop or other image edition program
    Is a point over the image that works as a "handler" or a "manipulator"
    All the positions and size scales are calculated using that "anchorpoint" as the world coordinates center

    Also, the coordinates center is local (based on the parent hierarchy in the xml)
    With this i mean.... if you have an object that is located at right in the screen... and then you create a children object inside it with coordinates 0,0,0 then that children object is going to be located at right of the screen too

    This "inheritance" of coordinates is happenning in your tests you posted above
    When you change the "anchorpoint" to value 2 (because you said you doubled his values) what you are doing is to move the "anchorpoint" of that page/plane/object to the right border (this is why images are moved to the left)

    Edit:
    Another detail i just realized...
    The original values you changed was 1... that 1 means the "anchor" was located at the left border of the object
    By replacing it by a 2... you are moving the "anchor" to the right border of the object
    The result is the object has been moved to left an amount of pixels equal to its width (exactlly)
    You can see the posible values of that "anchorMode" here, at bottom of the table (as part of the "standard object attributes") http://www.psdevwiki.com/ps3/RCOXML_Objects#Standard_attributes_used_by_objects

    I added the tail "Mode" to the name of the attribute (as "anchorMode") because the values used in it are not coordinates or amounts, are like a group of ID's that has been assigned geometrically to specific positions of a 2D square
    All the attributes that follows that rule (a group of values that doesnt seems to make sense and has been assigned in a specific way because someone at sony thought this was "the good way") has the tail "Mode" in the name... to difference them from the others
     
    Last edited: Mar 18, 2017
    Berion and DeViL303 like this.
  9. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    @sandungas thanks for the info.

    TBH Im even more confused after looking at the tables on the wiki. :) I suppose if you havnt been able to add new sections to the settings category with your knowledge and you wrote the wiki sections then I havnt much chance. :)
     
  10. 6,531
    6,199
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,531
    Likes Received:
    6,199
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    I made a lot of research, you know, every PS3 firmware has around 200 rco files, what i was doing is extracting all them with a .bat that automatizes the rcomage, then from windows by right clicking the mouse in the extraction folder and selecting "search" i was searching for pattern *.xml and from that list i dragged and dropped all the main .xml files into notepad++... and after that in notepad++ you can use the "search in all open documents" for all the unknown atributes and his values

    This is why in the wiki page appears some notes that tells... as example... "this value has been found used 200 times in PS3 firmware 4.76"... or "this value has been found used 150 times in PSP firmware 2.00"... etc...

    With this i mean i been doing massive searches in PSP and PS3 firmwares, and lot of firmwares versions (included preretail and prototype firmwares of both PSP and PS3)... in total this means i performed searches in thousands of rco files... really a lot, lol
    So im pretty sure there are not much missing in the wiki page (for sure probably i missed something, but not much)

    But i never made much RCO frankenstein experiments on PS3... because it was not needed for some of them
    As example, if you find an official rcoxml where appears an "unknown=event:/onInitTriggerSomething" is obvious that unknown is an "onInit"... there is no need to test it because is straightforward

    For others where appears a numeric value as example "unknown=1000" what i did was to copy that values to wiki to have a list of the valid values used for that attribute found in ofw
    That values are usefull for testing... because is not so obvious wich kind of data type could be that "1000" so is hard to know wich other values could be used for it... this is mostlly for experiments to try to deduce what it does... like you did when changing the value of "inconOffset" in your tests in this thread when you cganged the value from the original 1 to 2... in this case the change from 1 to 2 was something that probably would work (and it actually works) but when you find values like "0x0fff2000" is hard to know wich other values could be used for frankenstein tests
    By knowing the valid values used in ofw we have a good start point to make changes with other valid values and see what happens in XMB after the change to try to deduce how the attribute works (and after that try to imagine wich name we could use for that attribute, it needs to be a name very explicit that explains his purpose)

    So in resume... i have not made much tests changing values... but i took notes of most of them to have a good start point to make tests
    Actually, there are a lot that im pretty sure could be identifyed by doing a couple of tests

    There are a few "rcoxml objects" that has been used only a couple of times along PSP and PS3 firmwares history and had values "nothing" or "0" so is not posible to know wich values are valid for it. And there are a couple that has never been used in PSP neither in PS3 firmwares, this ones are real hard to find because we dont have an official example of how to use them, neither any of the values used in his attributes... but luckylly this ones are not much
    To identify this ones is needed some "fine frankenstein surgery" and lot of test/error/bricks... but for the others is not so hard

    --------------------------------
    So dont lost the hope and keep testing, my suggestion is to try to focus in objects that are associated, like what you did with Mlist and Mitem... this ones are always together... the same with the other *list and *item (all the *item are children of a *list... and all the *list are parents of one or more *item)

    Btw... the "MList" is the "XMB side menu" that appears at right... but i guess you realized about that yourself, im telling just to confirm it, is used in lot of places (in every place of the XMB where appears a "side menu" there is an rco with an "MList" driving it)

    And well... about how works the sysconf_plugin, i have lot of doubts with it, i noticed some weird things in how is build but i didnt spent too much time with it because i knew it was tricky and i had lot of other things to do, so i prefered to dont fight much with it but is interesting

    I will keep an eye at this thread to see what you do with it, if i can give you some help i will do for sure, but by now there is not much i could say that could help you (other than being picky with some small details, but i prefer not to write too much about small details to avoid people thinking im an greedy asshole)
    If i see you are interested in some detail i understand i will explain it, otherway i will shut up to not insist in it (if is something i know probably i wrote an explain it in wiki somewhere)

    Keep the good work, i like your experiments a lot, and this is a very interesting thread ;)
     
    Last edited: Mar 18, 2017
    Berion and DeViL303 like this.
  11. 5,910
    2,935
    497
    atreyu187

    atreyu187 Old Hunter Moderator

    Joined:
    Sep 29, 2014
    Messages:
    5,910
    Likes Received:
    2,935
    Trophy Points:
    497
    Gender:
    Male
    Occupation:
    Scholar of Byrgenwerth
    Location:
    Cainhurst Castle
    Home Page:
    You guys amaze me with your dedication
     
  12. 6,531
    6,199
    622
    sandungas

    sandungas Moderator Developer

    Joined:
    Dec 31, 2014
    Messages:
    6,531
    Likes Received:
    6,199
    Trophy Points:
    622
    Location:
    Babylon 20xxE series
    Hmmm, not exactly, the attribute "iconOffset" is what i renamed (for wiki purposes) "anchorMode"
    It belongs to a group of "standard attributes" (this means more than 95% of the objects uses it)
    http://www.psdevwiki.com/ps3/RCOXML_Objects#Standard_attributes_used_by_objects

    Rcomage doesnt extracts the value well (it has an error related with endianess, and how the value is divided internally)
    Long story short... rcomage extracts the original value as iconOffset="0x10000" but the 2 bytes at the end should not be there, that value is an 1
    If someone wants to try with other values (and use rcomage to rebuild the rco) you need to keep the bytes at the end with zeroes, this examples are valid, note how i modifyed them and where i located the zeroes:
    iconOffset="0x00010000" (original value, i just added some zeroes, if you compile the rco with this it will be valid)
    iconOffset="0x00110000"
    iconOffset="0x00230000"
    iconOffset="0x00320000"

    And the purpose of it is to be used a single point to handle the image and apply transformations to it (position, size, rotation, etc...)

    Every one of the available values you can use for it represents a point based on the geometry of an square, there are some that indicates the 4 corners of the square, there is another for the center of the square, etc...
    There are a lot (so many that became confusing), in PSP there was not so many as far i know but for PS3 sony made some changes to this... and this is why is not fully documented in wiki how it works ;)

    So returning to your test... what you did is to change the "anchor point" of the image... so the sidemenu image was not scaled or stretched (it has the same size in your screencaptures)... but it was displaced because his position is calculated based on that anchor point

    I guess originally (with the value 1) the anchor point was located at the "center of the left border", and you moved it to the "center of the right border"


    ----------------
    Edit:
    And i think BG0 is the vertical line (originally at the left border of sidemenu), note in your screencapture the vertical line is in his original position... basically because the sidemenu is composed by two different images, the horizontal degrade (BG1 you was playing with), and the vertical thin line (BG0 not modifyed)
    [​IMG]

    And the resulting positions of the texts for all the <MItem> are dependant on the "iconOffset" of his parent ("plane_music_config_crossfade_play_LowerMenu")
     
    Last edited: Mar 10, 2018
    DeViL303 likes this.
  13. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    Disabling a specific setting that uses the side menu

    If you want to disable a settings category entry, you can do so in the sysconf_plugin.rco. This method only works for items that bring up the side menu.

    There are pages like this in the rco xml for every setting:

    Code:
    <Page name="page_tool_game_type_debugger" unknownInt0="0x1110000" onInit="nothing" onCancel="event:native:/OnCancelToolConfig" onContextMenu="nothing" onActivate="event:native:/OnActivatePageToolConfig">
     <Plane name="plane_tool_game_type_debugger" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
     <Plane name="plane_tool_game_type_debugger_BG0" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
     <Plane name="plane_tool_game_type_debugger_BG1" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
     <MList name="plane_tool_game_type_debugger_LowerMenu" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="event:native:/OnInitMlistToolConfig" unknown17="0x0" unknown18="0x68030100" unknown19="0x69030100" unknownInt20="0x36a" unknownInt21="0x36b" unknown22="0x0" unknown23="0x15000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x7f030000" unknown30="0x80030000" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistToolConfig" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistToolConfig" unknownRef51="nothing">
     <MItem name="item_tool_game_type_debugger_0" text="text:msg_tool_disc_boot_game" altText="nothing" unknownRef4="nothing"></MItem>
     <MItem name="item_tool_game_type_debugger_1" text="text:msg_tool_hdd_boot_game" altText="nothing" unknownRef4="nothing"></MItem>
     <MItem name="item_tool_game_type_debugger_2" text="text:msg_tool_patch" altText="nothing" unknownRef4="nothing"></MItem>
     <MItem name="item_tool_game_type_debugger_3" text="text:msg_tool_param_sfo" altText="nothing" unknownRef4="nothing"></MItem>
     </MList>
     </Plane>
    </Page>
    If you delete all the MItem entries at the bottom of the page, and replace them with:

    Code:
    <MItem name="" text="text:msg_disabled" altText="nothing" unknownRef4="nothing"></MItem>
    So make it look like this:

    Code:
     <Page name="page_tool_game_type_debugger" unknownInt0="0x1110000" onInit="nothing" onCancel="event:native:/OnCancelToolConfig" onContextMenu="nothing" onActivate="event:native:/OnActivatePageToolConfig">
     <Plane name="plane_tool_game_type_debugger" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
     <Plane name="plane_tool_game_type_debugger_BG0" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
     <Plane name="plane_tool_game_type_debugger_BG1" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
     <MList name="plane_tool_game_type_debugger_LowerMenu" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x10000" onLoad="event:native:/OnInitMlistToolConfig" unknown17="0x0" unknown18="0x68030100" unknown19="0x69030100" unknownInt20="0x36a" unknownInt21="0x36b" unknown22="0x0" unknown23="0x15000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x7f030000" unknown30="0x80030000" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistToolConfig" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistToolConfig" unknownRef51="nothing">
     <MItem name="" text="text:msg_disabled" altText="nothing" unknownRef4="nothing"></MItem>
     </MList>
     </Plane>
     </Page>
    Then they will all just show the one option called "Disabled" (in your own language depending on PS3 language setting). That option will be the default option, so clicking will not change anything.

    Video from CFW showing some debug options disabled
     
    Last edited: Apr 8, 2018
    pink1 and sandungas like this.
  14. 7,824
    9,067
    797
    DeViL303

    DeViL303 Developer PSX-Place Supporter

    Joined:
    Jan 23, 2016
    Messages:
    7,824
    Likes Received:
    9,067
    Trophy Points:
    797
    To disable settings items that don't use the side menu

    For items that don't use the side menu (Mlist + MItems), here is how to disable them. This way would work for side menu items too, but its not as tidy imo as the screen dims but nothing happens when you click on them, imo having it say "Disabled" is better for those.

    This method is quite simple, it works by changing all the "oninit" and "onactivate" strings (event:native:xxxxxxxxxxxxxxx) to just read "nothing"

    So this page below:

    Code:
    <Page name="page_tool_np_environment_input" unknownInt0="0x1110000" onInit="event:native:/OnInitPageToolConfig" onCancel="event:native:/OnCancelToolConfig" onContextMenu="nothing" onActivate="event:native:/OnActivatePageToolConfig">
     <Plane name="plane_tool_np_environment" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
     <Text name="edit_tool_np_environment" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x100" unknown19="0x0" unknownInt20="0x10000" unknownInt21="0x10000" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x1000001" unknownInt29="0x0" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0x0" unknownInt56="0x10014" unknownInt57="0x3" unknown58="0x0"></Text>
     </Plane>
     </Page>
    Becomes:
    Code:
    <Page name="page_tool_np_environment_input" unknownInt0="0x1110000" onInit="nothing" onCancel="event:native:/OnCancelToolConfig" onContextMenu="nothing" onActivate="nothing">
     <Plane name="plane_tool_np_environment" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
     <Text name="edit_tool_np_environment" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x100" unknown19="0x0" unknownInt20="0x10000" unknownInt21="0x10000" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x1000001" unknownInt29="0x0" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0x0" unknownInt56="0x10014" unknownInt57="0x3" unknown58="0x0"></Text>
     </Plane>
     </Page>
    Notice I did not change the "oncancel" event, that is so you can still press circle to exit the dimmed screen.

    Using both the above methods any settings item can be disabled afaik, I have not tested all.
     
    pink1 likes this.

Share This Page