How to allow duplicate comments AND without comment text

WordPress will not allow you, using its default comment process, to insert empty comments into the database. This is enforced by wp_handle_comment_submission() with the following unconditional code:

if ( '' == $comment_content ) {
    return new WP_Error( 'require_valid_comment', __( '<strong>ERROR</strong>: please type a comment.' ), 200 );
}

If you insist on using comments, you will need to supply some non-empty value for $comment_content, which is most simply accomplished by inserting some whitespace content into the comment field itself.

As for duplicates, since WordPress 4.4.0 you can allow duplicate comments by using the duplicate_comment_id filter hook. As per the docs:

Filters the ID, if any, of the duplicate comment found when creating a new comment.

Return an empty value from this filter to allow what WP considers a duplicate comment.

For example, use the following code to unconditionally allow duplicate comments:

add_filter('duplicate_comment_id', '__return_false');

Hope this helps. 🙂