Custom field displayed based on author node
How about implementing hook_field_access() in your custom module.

This hook takes operation edit/view as parameters and returns access to the user for the operations.As a sample code 

function MYMODULE_field_access($op, $field, $entity_type, $entity, $account) {
  global $user;
  if ($op == 'view' &amp;&amp; !empty($entity) &amp;&amp; $field['field_name'] == 'your_field_name') {

   // $entity will be the node,so check node author with current user.
   if($entity-&gt;uid == $user-&gt;uid) {
      return TRUE;
    } 
   else {
    return FALSE;
    }
  }
}