Save all custom field data into one “master” custom field

This is assuming each of the fields is a single value and you want to create a list for display…

add_action('edit_post','custom_combine_fields');

function custom_combine_fields($post_id) {

    $pirates = get_post_meta($post_id,'pirates',true);
    $robots = get_post_meta($post_id,'robots',true);
    $ninjas = get_post_meta($post_id,'ninjas',true);

    $professions = array();
    if ($pirates) {$professions[] = $pirates;}
    if ($robots) {$professions[] = $robots;}
    if ($ninjas) {$professions[] = $ninjas;}

    if (count($professions) > 0) {
        $professions = implode(', ',$professions);
        update_post_meta($post_id,'professions',$professions);
    }
}

I don’t see much great advantage to doing this on save rather than in a display template but if you really want to that should do it.