An interview topic data object registered via interviewTopics:registerNew(). Note that all the variables for validity checks are entirely optional.
id
the ID of the data.
pricing
table containing 2 keys: type (can be either "greater" or "lesser") and "price". If declared, will use logic accordingly when checking whether this topic can is valid.
daysWorkedOn
table containing 2 keys: type (can be either "greater" or "lesser") and days.
features
table containing 4 keys: featureIDs (table containing task type data IDs to check for), allFeaturesInList (whether all features should be present), minimumFeatures (the minimum amount of features that need to be present), maximumFeatures (the maximum amount of features that can be in the project).
platforms
table containing 4 keys: platformIDs (table containing platform IDs to check for), allPlatformsInList (whether all platforms should be present), minimumPlatforms (the minimum amount of platforms that need to be present), maximumPlatforms (the maximum amount of platforms that the project can be made for).
facts
table containing 4 keys: factIDs (table containing task IDs to check for), allFactsInList (whether all the facts should be present on the studio object), minimumFacts (the min. amount of facts that need to be present on the studio object), maximumFacts (the max. amount of facts that can be present on the studio object).
theme
string, the theme that the game should be of.
genre
string, the genre that the game should be of.
checkEligibility
function to call for additional custom-defined validity checking.
invisible
whether this interview topic is invisible, and therefore never valid. (this is useful for things such as using some kind of topic as a base for other topics).
setStudioFacts
table containing facts to set on the studio object when declared.
baseClass
the base class of this topicData.