more generic creature factory