comments hooks on custom post type

One alternative is simply not to display the comment field if the current user isn’t logged in, using is_user_logged_in().

For example, inside your comments template:

<?php comment_form( $args ); ?>

Just wrap that in a conditional:

<?php
// Don't output the comment form if CPT and user isn't logged in
if ( 'debate' != get_post_type() || is_user_logged_in() ) {
    comment_form( $args );
}
?>

Edit

Just put it into the template directly:

<?php
// If CPT and not logged in, display a message:
if ( 'debate' == get_post_type() && ! is_user_logged_in() ) {
    echo '<p class="must-log-in">' . sprintf( __( 'You must be <a href="https://wordpress.stackexchange.com/questions/123157/%s">logged in</a> to post a comment.' ), wp_login_url( apply_filters( 'the_permalink', get_permalink( $post_id ) ) ) ) . '</p>';
}
?>