Adding on to @Jan-Rienk’s good responses.
Because of the limitation with the Roles feature that you only have one chance to assign all roles at the time of project instantiation from the template or else the tasks go unassigned and the role is removed, I often recommend using a “Role” custom field (as JR mentioned) exclusively.
Thanks,
Larry