Coding a skin for a forum is easy for phpBB2.0.x.

. Baisically all it is is regular html(open the .tpl files in a normal text-editor, just like a html file). I'm assuming you know html, so all you need to know are two speical tags. <!-- --> and {}.
<!-- --> signals a `block'
{} signals a `variable'.(just like a mathmatical variable)
Further explaination is
here...
exempli graitia, taking from index_body.tpl of
Raid
HTML Code:
<div id="black_bar">
<div id="black_bar_left"> </div>
<div id="black_bar_right">
<img src="templates/Raid/images/whitearrow.gif" alt="" /><a href="{U_INDEX}">{L_INDEX}</a>
</div>
</div>
<!-- BEGIN catrow -->
<div class="main">
<div class="main-left">
<div>
<h1> <img src="templates/Raid/images/blackarrow.gif" alt="" /><a href="{catrow.U_VIEWCAT}">{catrow.CAT_DESC}</a></h1>
</div>
</div>
<div class="main-right">
<!-- BEGIN forumrow -->
<div onmouseout="this.style.backgroundColor='';" onmouseover="this.style.backgroundColor='{T_TR_COLOR1}'; this.style.cursor='pointer';" style="background-image: url({catrow.forumrow.FORUM_FOLDER_IMG});" onclick="window.location.href='{catrow.forumrow.U_VIEWFORUM}'">
<h2><a href="{catrow.forumrow.U_VIEWFORUM}">{catrow.forumrow.FORUM_NAME}</a><img src="templates/Raid/images/spacer.gif" alt="" /></h2>
{catrow.forumrow.FORUM_DESC}
</div>
<!-- END forumrow -->
</div>
</div>
<!-- END catrow -->
Now the top div "black_bar" is easy. {U_INDEX} will be translated to whatever the index page's url is, and {L_INDEX} will be translated to whatever the langauge variable for page index is. You don't need to worry about the exact value they contain, just know that they will contain the same general value.
Now for the second part of the code simpler...
HTML Code:
<!-- BEGIN catrow -->
<!-- BEGIN forumrow -->
<!-- END forumrow -->
<!-- END catrow -->
The idea behind this is a little complex. Baisically all it boils down to is every forum row or category row uses this. So your not defining each category row seperately, but a template that all of them use. If your wondering what a catrow or forum row is it goes like this...
On webmaster-talk the cateogry rows would be...
*Coding Talk
*Website Design and Graphics Talk
*Search Engine Talk
*Internet Marketing and SEO Talk
*Web Hosting Talk
*The Webmaster-Talk Marketplace
*Community Talk
*Webmaster-Talk Forum News and Suggestions
If you look at the index you'll notice how they are all the same because they all use the same html code from the template. Now the forum rows for ``Search Engine Talk'' are...
*The Google Forum
*The Other Search Engines
*Web Directories
You'll also notice that all of the layouts for them look the same. So the catrow and forumrow are called a ``loop''. All that means is the template engine takes one peice of code and does a ``loop''(repeats itself) for multiple category and forum rows. A special thing about loops is inside of them you get special variables to use. In the raid example above you'll notice the use of the variable {catrow.U_VIEWCAT}. This means that the parser should use the ``variable'' U_VIEWCAT(a url variable since it has U_ prefix) that is inside of the catrow loop. If you used {catrow.U_VIEWCAT} outside of the catrow ``loop'' it would give you an error(or may just not show up). You'll also notice... {catrow.forumrow.FORUM_DESC}, which means you should get the FORUM_DESC variable from ``forumrow'', which is inside of ``catrow''.
If you got that everything else should be downhill. Their is another kind of <!-- --> called conditional or switch. Another raid template example is...
HTML Code:
<!-- BEGIN switch_user_logged_in -->
<a href="{U_SEARCH_NEW}">{L_SEARCH_NEW}</a> <a href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a>
<!-- END switch_user_logged_in -->
All this does is tell the parser if the condition "user_logged_in" is true, then print out this stuff. What if you only want to ouput when the user isn't logged in? Then you would use ``switch_user_logged_out'' instead.
This is the very basic concept behind writing/editing a template. The above syntax will only work for phpBB, but the concepts transfer over. Now your thinking, okay I know how it works but how do I know what page to edit or what {L_ variables I can use in a page. Thats where documentation comes in handy.
link to variables available
link to template file descriptions
Site to ask for further information (the phpBB offical forums are a good place too)
Is that what you ment? Feel free to ask any questions.
~capiCrimm