Thanks for the reply Melinda! You got me most of the way there with the help with the syntax. What ended up working was this, with a camel cased hourType.
displayname=Project Name or Hour Type Name
textmode=true
valueexpression=IF(ISBLANK({projectID}),{hourType}.{name},{project}.{name})
valu...