XML:PSpc

From OniGalore
Jump to navigation Jump to search
PSpc : Part Specification
XML modding tips
  • See HERE to start learning about XML modding.
  • See HERE if you are searching for information on how to handle object coordinates.
  • See HERE for some typical modding errors and their causes.
XML.png
XML

OSBD << Other file types >> PSpL

switch to OBD page

general information

  • The xml code on this page is compatible with onisplit v0.9.61.0
  • This file handles TXMP (images) in IGPG (in-game page) which is used by OPge, TxtC and maybe a few other.
  • You could also try to emulate image align that way. (The image would be a corner and the rest would be a transparent, stretched pixel line.)
  • Limitation: please note that an animated TXMP doesn't work in PSpc.


XML structure

1 4 7
2 5 8
3 6 9


There are 9 <PSpcPoint> tags under <TopLeft> and <RightBottom>. The first <PSpcPoint> tag of <TopLeft> and <RightBottom> belong together - as well as all other second, third, etc. <PSpcPoint> tags belong together. But the order goes from top to bottom (so the upper parts are 1, 4, and 7).

<?xml version="1.0" encoding="utf-8"?>
<Oni>
   <PSpc id="0">
       <TopLeft>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           [...]
       </TopLeft>
       <RightBottom>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           [...]
       </RightBottom>
       <Texture>TXMP...</Texture>
   </PSpc>
</Oni>


positions on example

TXMPh_19 is the only image of TxtClevel_19a but Oni divide it into 9 parts. Each part is framed by pixel coordinates from [Left|Top] to [Right|Bottom].

The corners are fixed while boarders become stretched. Used parts in following example are 1, 4, and 7.

PSpc original.png
PSpc color indicated.png

TXMPh_19

Green left part is 1.
Yellow middle pixel line is 4.
Orange right part is 7.
(The yellow line becomes stretched.)

Coordinates of 1: [0|0] to [64|32]
Coordinates of 4: [64|0] to [64|32]
Coordinates of 7: [65|0] to [128|32]

PSpc parts ingame.png
<?xml version="1.0" encoding="utf-8"?>
<Oni>
   <PSpc id="0">
       <LeftTop>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>64</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>65</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
       </LeftTop>
       <RightBottom>
           <PSpcPoint>
               <X>64</X>
               <Y>32</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>64</X>
               <Y>32</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>128</X>
               <Y>32</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
           <PSpcPoint>
               <X>0</X>
               <Y>0</Y>
           </PSpcPoint>
       </RightBottom>
       <Texture>TXMPh_19</Texture>
   </PSpc>
</Oni>