I was looking into this same issue. I was unable to find any documentation on creating custom post templates, however, the Shortcodes Ultimate plugin code reveals the solution.
Simply copy the ‘templates’ folder from the plugin directory to your active theme directory. You can then edit the templates all you want and they will be safe from plugin updates.
So, if your theme is ‘twentytwelve’ copy the folder:
From:
/wp-content/plugins/shortcodes-ultimate/templates
To:
/wp-content/themes/twentytwelve/templates
Shortcodes Ultimate will first look for the post template(s) in the stylesheet directory (child theme if used), then in the template directory (parent theme), then in its own plugin directory.
I found the following conditional template loader around line 1257 of: ‘wp-content/plugins/shortcodes-ultimate/inc/core/shortcodes.php’:
// Search for template in stylesheet directory
if ( file_exists( STYLESHEETPATH . '/' . $atts['template'] ) ) load_template( STYLESHEETPATH . '/' . $atts['template'], false );
// Search for template in theme directory
elseif ( file_exists( TEMPLATEPATH . '/' . $atts['template'] ) ) load_template( TEMPLATEPATH . '/' . $atts['template'], false );
// Search for template in plugin directory
elseif ( path_join( dirname( SU_PLUGIN_FILE ), $atts['template'] ) ) load_template( path_join( dirname( SU_PLUGIN_FILE ), $atts['template'] ), false );
// Template not found
else echo '<p class="su-error">Posts: ' . __( 'template not found', 'su' ) . '</p>';