View Single Post
  #4  
Unread 09-17-2010, 10:42 AM
daimon's Avatar
daimon daimon is offline
The Undying
Interface Author - Click to view interfaces
 
Join Date: Aug 2007
Location: Finland
Posts: 466
lemme try to do an example.

I open the default Skindefinition.xml (it has loads of entiries) and Skindictionary.txt in my notepad.

I'll make a new text document. Then I decide to add/edit following things in it:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<opt>

  <SkinName Name="Travisimo's Skin"></SkinName>

  <Mapping ArtAssetID="letterbox_bottom" FileName="letterbox_bottom.tga"></Mapping>
  <Mapping ArtAssetID="pedigree_bg" FileName="pedigree_bg.tga"></Mapping>
  <Mapping ArtAssetID="minimap\no_hope_no_dread" FileName="no_hope_no_dread.tga"></Mapping>

 <PanelFile ID="ID_UISkin_GamePlay_MountDisplayBox">
  <Element ID="GamePlay_MountDisplayBox" X="409" Y="500" Width="147" Height="56">
   <Element ID="MountDisplayField" X="-13" Y="10" Width="207" Height="70">
    <Element ID="MountNameText" X="57" Y="11" Width="1" Height="1"></Element>
   </Element>
  </Element>
 </PanelFile>

</opt>
Next thing I do is I'll save my new file into \\My Documents\The Lord of the Rings Online\UI\Skins\Travisimo\ folder (I have to create the UI folder and the subdirectios Skins and My Skin as the client doesn't do it by itself) and name it as Skindefinition.xml.

Right so now I have a newly created Skindefinition.xml in that folder. Next thing I need to do is to have those modified .tga files where I just assigned them to.

So I move my letterbox_bottom.tga and pedigree_bg.tga into that same folder where my Skindefinition.xml is.

For some reason I wanted the next file to be located in a sub folder. So I will create that subfolder. Now I have \\UI\Skins\Travisimo\minimap\ folder. Next I move my no_hope_no_dread.tga into that minimap folder I just created.

Then I try my skin by launching the lotro client. Note that every change you make into Skindefinition.xml means that you have to load the client from the start, relogging isn't enough. You can edit pictures while you're skinning tho. Just modify your picture, deselect your skin from the game options and reselect it to see the effect you just did.

To know what you're modifying might be a bit pain. Best thing is to have some picture browser software open so you can see what .tga files you want to edit and add to your skin. This is even more difficult with things in SkinDictionary.txt as you basically have to guess what something does, it's a lot of work to find the right coordinates for example for the element you're trying to edit.

What does the above example do:
  • It sets the skin name to Travisimo's Skin
  • It changes the mainbar art into your modified art (letterbox_bottom.tga)
  • It changes the pedigree panel (bio) art into your modified art (pedigree_bg_tga)
  • It changes the minimap art into your modified art (no_hope_no_dread.tga). (Note if you gain more hope or dread then the file doesn't effect minimap anymore, you need to assign more minimap assets for dread/hope)
  • PanelFile ID="ID_UISkin_GamePlay_MountDisplayBox" defines values for the panel while you're mounted ie. it shows your mount health, name etc. In the example I have removed lots of lines from the original <PanelFile ID> and kept only the <Element ID>'s I need to have to modify the things I wanted. In this case I wanted to remove the name of my mount so I changed height and width values in <Element ID="MainNameText"> into "1" to hide the name.
Tags in the example:
  • <opt> & </opt> these tags start and end the skindefinition.xml
  • <Skinname> tag sets the name of your skin, the name you can see in the in-game menu.
  • <Mapping ArtAssetID=""> are used for the .tga files. every file got it's own specific tag
  • <PanelFile ID=""> is the parent tag for <Element ID=""> tags.
  • <Element ID=""> tag defines various structural values, like crafting panel size, location of crafting button, size of the crafting button, size of the crafting entry field etc.
The basic structure of Skindefinition.xml therefore is:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<opt>

  <SkinName Name="Name of the Skin"></SkinName>

<!--comment: optional modifications start -->

  <Mapping ArtAssetID="tga_asset_name" Filename="tga_file_name.tga"></Mapping
 ...
 ...
 <PanelFile ID="panel_file_name">
  <Element ID="element_name1>
   <Element ID="element_name2></Element>
   ...
   ...
  </Element>
 </PanelFile>

<!--comment: optional modifications end -->

</opt>

It's a lot to take when you start but it really isn't that complicated as it first seems. Try different things, start from something easy, just replacing some art like the mainbar to see how it works, then move on more advanced stuff.
__________________
~·~ DaimonUI ~·~
avatar by Humon

Last edited by daimon : 09-17-2010 at 10:47 AM.
Reply With Quote