I don't think there's a guide... but there is a pretty easy way to figure out what files you need to look at.
First, determine what you're trying to modify. Take a peek at the URL to this topic. The query string is: ubb=get_topic;f=26;t=002405
You'll want to pay attention to the stuff after ubb= - get_topic.
Open ultimatebb.cgi and search for the string "get_topic"
You'll find a few instances, the last probably being a block that looks something like this:
if ($ubb eq 'get_topic') {
&RequireCode("$vars_config{CGIPath}/ubb_get_topic.cgi");
&get_topic($in{f}, $in{t});
exit(0);
} #end get_topic
So, we know that get_topic causes the ubb_get_topic.cgi to be loaded.
Opening that one up would be your first step to modifying a topic page.
However, this case is a little tricky. The get_topic subroutine does little more than determine if there's a cached copy, then either serves up the cache or makes a new file.
In order to create a new file, it has to do a RequireCode of ubb_lib_posting. lib_posting's create_topic subroutine has most of the magic you're looking to change.
The last step - you need to figure out which template is used by create_topic. Look for a call to &LoadTemplate. In this case, create_topic loads the public_topic_page template.
You can use this same technique to determine which files and templates are involved for any function. Find the call in ultimatebb.cgi, find the file referenced and the sub referenced, then find any further RequireCode or LoadTemplate calls in that sub.
Or, of course, you could just ask.
Oh - as there's no ubb= action for the forum summary (the list of cats & forums), the files involved are ubb_forum_summary and public_forum_summary.