Ok, figured it out. You have to pass an array of info to do a set regarding. Below is my code in case anyone else wants to do something similar!
function contactAttemptQC(primaryControl) {
var formContext = primaryControl;
var recordGuid = formContext.data.entity.getId().replace("{", "").replace("}", "");
var recordName = formContext.getAttribute("name").getValue();
var recordType = "opportunity"
var entityFormOptions = {};
entityFormOptions["entityName"] = "aaaaa_contactattempt";
entityFormOptions["useQuickCreateForm"] = true;
var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();
// Set default values for the Contact form
var formParameters = {};
formParameters["name"] = "Contact Attempt";
formParameters["aaaaa_contactdate"] = today;
// Set lookup column
formParameters["aaaaa_attempts"] = [{ id: recordGuid, name: recordName, entityType: recordType }];
// Open the form.
Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
function (success) {
console.log(success);
},
function (error) {
console.log(error);
});
}