🔍
Condition Command Finder
Every Condition command on one page. Filter by topic, search names and descriptions together, or narrow down to the commands that take a particular parameter.
How to use this
- Search matches the command name and its description at once, so
family spousefindsIsFamilyRelationshipeven though "spouse" is not in the name. Multiple words are combined with AND. - Topic groups the commands by what they look at — character, family, vehicle, site, and so on. Click a topic in a row to jump to that group.
- Parameter narrows the list to commands that actually use a given column.
S1+CompareTypegives you the commands you drive with a string value. - Uses shows which of
CompareType·S1·S2·F1·F2·Proba command reads. Everything also takesBaseObject, so that column is left out. - The
Enumtag means the command's page lists the accepted values.
Reading a Condition row
A Condition is one row of a spreadsheet. Command picks which of the commands
below runs, and the remaining columns are that command's arguments:
| BaseObject | Command | CompareType | S1 | S2 | F1 | F2 |
|---|---|---|---|---|---|---|
Self | Age | Less | 19 | |||
Target | IsFamilyRelationship | Equal | Spouse |
Listing several rows evaluates them with AND. Which columns matter depends entirely on the command, which is what the Uses column here is for.
CompareType
| CompareType | Symbol | Meaning |
|---|---|---|
Equal | == | Equal to |
NotEqual | != | Not equal to |
Greater | > | Greater than |
Less | < | Less than |
GreaterOrEqual | >= | Greater than or equal to |
LessOrEqual | <= | Less than or equal to |
note
The Condition overview page prints this table with the > and <
symbols the other way round (Greater shown as <). The names are what the
game reads, so Greater is > — the symbols above are the correct ones.
All commands
491 commands
Topic
Parameter
| # | Uses | Description | |||
|---|---|---|---|---|---|
| 1 | AcademicAchievement | CompareTypeS1S2 | Checks the BaseObject student's latest academic achievement grade. The current grade is preferred; if it is not available, the latest weekly history grade is used. | 2 | |
| 2 | ActionTimeId | CompareTypeS1F1F2 | Checks whether a specific ActionId has been performed continuously for a certain amount of time by the specified BaseObject. Accumulated time is preserved across different interactions as long as the gap between actions does not exceed DA_GameConfig::ActionTimeResetDelay. | 4 | |
| 3 | ActionTimeTag | CompareTypeS1F1F2 | Checks whether actions with a specific ActionTag have been performed continuously for a certain amount of time by the specified BaseObject. The accumulated execution time of all actions sharing the given ActionTag is compared against the specified value. Accumulated time is preserved across different interactions as long as the gap does not exceed DA_GameConfig::ActionTimeResetDelay. | 4 | |
| 4 | AllInventoryChildState | CompareTypeS1S2 | Checks if all children in the BaseObject's inventory satisfy the specified state condition. Returns true if all children match the state (Equal), or if all children do not match the state (NotEqual). | 3 | |
| 5 | AvailableSlotCount | CompareTypeS1F1 | Checks whether the number of available (unoccupied, unblocked) slots of the specified slot type on the BaseObject entity satisfies a comparison condition. | 4 | |
| 6 | BargainResult | CompareTypeS1S2 | Checks whether the current or final bargain result matches the expected value specified in S1. S2 selects which result phase to evaluate: "Current" checks the result of the current bargain round, while "Final" checks the overall final outcome of the bargain. The host is always obtained from Self. | 3 | |
| 7 | Buff | CompareTypeS1 | Checks whether the specified character currently has a buff with the given BuffId. Returns true when CompareType is Equal and the buff is present, or when CompareType is NotEqual and the buff is absent. | 3 | |
| 8 | BuffTag | CompareTypeS1 | Checks whether the specified character currently has any buff matching the given BuffTag. Returns true when CompareType is Equal and a tagged buff is present, or when CompareType is NotEqual and no buff with that tag is present. | 3 | |
| 9 | CanAcquireFreelanceLicense | CompareTypeS1 | Checks whether the BaseObject character can acquire a specific freelance license. Validates all acquisition conditions defined for the license, including skill requirements and job experience. | 3 | |
| 10 | CanAddObjectTemplateToBag | S1F1 | Checks whether a TemplateObject-type item (randomly selected) can be added to the inventory. | 3 | |
| 11 | CanAddObjectToBag | S1F1 | Checks whether an item can be added to the inventory. | 3 | |
| 12 | CanApologize | CompareType | The source page has no description | 2 | |
| 13 | CanAutonomyFishing | CompareType | The source page has no description | — | |
| 14 | CanBlowCandle | — | Checks whether the BaseObject character has not yet blown out their birthday candle. Returns true if the candle for the character's current birthday remains unblown. No additional parameters required. | 1 | |
| 15 | CanCoopBlowCandle | — | Checks whether any member of the BaseObject character's household is currently able to coop-blow the birthday candle on their behalf (used for characters, such as babies, who cannot blow their own candle). Returns true if at least one household member is eligible. No additional parameters required. | 1 | |
| 16 | CanCustomizeBrightness | — | The source page has no description | — | |
| 17 | CanDeliverFreelanceQuestItem | CompareType | Checks whether Self can deliver the required item to the Recipient. Returns false if the BaseObject is not the Recipient of Self's active order. Returns false if Self does not have the required item in inventory. When Client and Recipient are the same character (direct delivery order), this condition is not used. | 2 | |
| 18 | CanDivorce | CompareType | Gates autonomy-originated divorce. Returns false only when the play reason is autonomy-sourced (Autonomy / AutonomyEmergency, injected by the autonomy collection path) and AllowDivorce is off. Player-directed and other non-autonomy paths are not restricted. Wired as an enable condition on the divorce coops (Divorce_01/02). | — | |
| 19 | CanFishingByImpactPoint | CompareType | Checks whether the TargetLocation (impact point) is inside a valid fishing territory. Returns false immediately if the TargetLocation is zero vector. | 2 | |
| 20 | CanGatherFromSeafloor | CompareType | Checks whether Self can gather from the seafloor. Self can gather only when it is the player-controlled character and the ScriptContext PredictedParam is non-zero. | 2 | |
| 21 | CanGiveTip | CompareType | Checks whether the BaseObject customer is eligible to give a tip at the HouseholdBiz site they are currently located at. Eligibility is determined by the HouseholdBiz's CanCustomerGiveTip logic (e.g., tip cooldown, biz state). | 2 | |
| 22 | CanGreetCustomer | — | Checks whether the target host character can greet the visiting customer (Self) at the door. This condition is only valid when the script reason is Coop. All of the following must be satisfied: the host must be in the same site as the door and must live there, the host must not be in the same zone as the customer, the host must have permission to open the door, and the host must be able to reach the greeting slot via pathfinding. | 3 | |
| 23 | CanHostStayover | — | The source page has no description | — | |
| 24 | CanInteractWithGhost | CompareType | Checks whether the specified character has the capability to interact with ghost characters. | 3 | |
| 25 | CanInviteStayoverGuest | — | The source page has no description | — | |
| 26 | CanKnockDoorAtExteriorEntrance | CompareType | Script condition function to check whether Self can start the normal knock-door flow at the Target door. The door must belong to a Residence and connect to a cached outer-ground Zone, while Self must not be inside that building. | 2 | |
| 27 | CanMarry | CompareType | Checks whether Self can marry Target. Verifies that neither is already married, both are in different family trees, both meet age requirements, and both have appropriate relationship status. | 2 | |
| 28 | CanMarrySuccess | CompareType | Checks whether the Self character can successfully marry the Target character. Note: Marriage attempts with NPCs are possible, but scheduled for removal depending on NPC marriageability status. Note: This condition allows marriage attempts with NPCs but forces them to fail. It is scheduled for removal now that NPC marriage is becoming available. | 2 | |
| 29 | CanMoveToScheduleDestination | CompareType | Checks whether the BaseObject character can move to the current CustomSchedule destination. The destination can be either an actionable RoomPurpose in the current site/career site or a GotoOtherSite. | 2 | |
| 30 | CanPayInsuranceFee | CompareTypeS1S2 | Checks whether the specified entity has enough currency to pay the insurance fee for S1. | 2 | |
| 31 | CanPregnancy | CompareType | Checks whether Self and Target can have a child. One must be female and one male (physical sex). The female must not be pregnant, both must be at least Youth age, and the household must have capacity. Returns false for Autonomy interactions when either party belongs to the currently played household. | 2 | |
| 32 | CanReceiveFreelanceQuestItem | CompareType | Checks whether Self can receive the required item from the Client. Returns false when Client and Recipient are the same character, indicating a direct delivery order where no separate item receive step is needed. Also returns false if the BaseObject is not the Client of Self's active order. | 2 | |
| 33 | CanRequesterLoveSchoolLockerOwner | CompareType | Checks whether the requester character and the owner of the school locker can romantically love each other. The school locker is resolved from NonBaseObject, and the owner is resolved through the school career seat owner path. This condition checks age, kinship, and both characters' romance orientation/target preference. | 2 | |
| 34 | CanRumorTransfer | CompareTypeF1 | Checks whether the BaseObject entity can transfer the rumor at the specified index to the other entity (Self transfers to Target, Target transfers to Self). | 3 | |
| 35 | CanSendCollectionInformation | CompareType | Returns whether the BaseObject has Family Collection information that can be sent to the non-BaseObject entity. | 3 | |
| 36 | CanSettleTip | CompareType | Checks whether the BaseObject employee or manager is eligible to settle tips at their current HouseholdBiz site. The character must be an employee or manager. For employees, the biz must be currently operating. The tip bottle must have at least one tip to settle. | 2 | |
| 37 | CanSpawnCraftingObject | CompareTypeS1 | Checks whether the BaseObject desk can spawn a crafting object at the slot(s) identified by S1. | 3 | |
| 38 | CanStartFleaMarket | CompareType | Checks if a flea market can be started at the specified site. Returns true if no flea market is already planned in the site and the character is eligible to start one. | 2 | |
| 39 | CanStealTip | CompareType | Checks whether the BaseObject character can steal tips from the tip bottle at their current HouseholdBiz site. The HouseholdBiz manager is never allowed to steal. The tip bottle must be at HalfFull state or above. | 2 | |
| 40 | CanUseByStayoverGuest | — | The source page has no description | — | |
| 41 | CareerAbsenceDayEnum | CompareTypeS1S2F1 | Compares the character's absence days against a threshold. Used by UnexcusedAbsenceScript to gate "fired" buffs until the consecutive absence count actually reaches the fire threshold. | 3 | |
| 42 | CareerEmploymentDayEnum | CompareTypeS1F1F2 | Compares the number of completed workdays (attendance days) for the character's career. Uses AttendanceDays which is incremented each time the member finishes a workday. On the first workday (before it ends): AttendanceDays == 0. After the first workday completes: AttendanceDays == 1. | 4 | |
| 43 | CareerRankEnum | CompareTypeS1F1F2 | Checks the current career rank of the BaseObject character. Compares the character's career rank against the specified value(s) using CompareType. | 4 | |
| 44 | CareerRankCompWithTargetEnum | CompareTypeS1 | Compares the career rank of Self against the career rank of Target. Both must belong to the same career entity; returns false if they differ. | 3 | |
| 45 | Channel | CompareTypeS1 | Checks if the BaseObject's current channel matches the specified channel ID. | 3 | |
| 46 | CharacterGroupType | CompareTypeS1 | Checks if the BaseObject's CharacterGroupType matches the type specified in S1. Supported group types include ResidenceFamily, CompanyRoleNpc, SiteRoleNpc, Crowd, EventCrowd, ServiceNpc, StaticNpc, and ShopNpc. | 4 | |
| 47 | CheckDice | S1F1F2 | Checks whether the previously rolled dice value falls within the specified range without rolling again. Used after CheckDiceWithRoll to re-evaluate the same roll result. | 4 | |
| 48 | CheckDiceWithRoll | CompareTypeS1F1F2 | Rolls the dice and checks whether the result falls within the specified range (inclusive). | 4 | |
| 49 | CheckEntityCountInAura | CompareTypeS1S2F1F2 | Checks the number of entities within the aura range of the specified BaseObject. Retrieves the aura identified by S1 and counts entities of the type specified by S2 within that aura's range. The resulting count is compared against F1 (and optionally F2) using CompareType. | 4 | |
| 50 | CheckGhostInteractionReason | CompareTypeS1 | Checks whether the specified character has a specific ghost interaction reason currently set. The reason to check is provided via S1. | 3 | |
| 51 | CheckMarketStallSeller | CompareTypeS1 | Checks whether the BaseObject is the seller of the NonBaseObject market stall. If S1 is AllowNoSeller, also returns true when the stall has no current owner. | 3 | |
| 52 | CheckOwnerGrowthStepEnum | CompareTypeS1S2 | Checks the GrowthStep (age group) of the owner of the entity specified by BaseObject. Resolves the entity’s ownership data to find the owner, fetches the owner’s BioComponent, and compares the owner’s GrowthStep against the expected value(s) using CompareType. This is useful when the evaluated object is not a character itself (e.g., an owned item) but you want to branch logic based on the owning character’s age group. | 4 | |
| 53 | CheckTaxPaymentAutomatic | CompareType | Checks if the BaseObject's household uses automatic tax payment (i.e., direct payment is disabled). Equal returns true when automatic payment is in use; NotEqual returns true when manual payment is used. | 4 | |
| 54 | CheckTaxPaymentDirect | CompareType | Checks whether the BaseObject's household uses manual (direct) tax payment. Equal returns true when direct tax payment is enabled; NotEqual returns true when it is disabled (automatic). | 4 | |
| 55 | Chemistry | CompareTypeS1S2 | Compares the chemistry level of the specified relationship stat between Self and Target against a target chemistry value. Chemistry is determined by trait compatibility and is defined in TraitChemistryReward data. | 4 | |
| 56 | ChildCount | CompareTypeS1F1 | Checks the number of child game objects of the BaseObject that have the specified object tag. The child count is compared against the given value using the specified comparison type. | 1 | |
| 57 | City | CompareTypeS1 | Checks whether the current city's ID matches the specified city map ID (S1). The city is obtained from the current simulation state, not from the BaseObject directly. | 3 | |
| 58 | CompareAscendingMinutes | CompareTypeF1F2 | Compares the remaining time in minutes until the character ascends. | 4 | |
| 59 | CompareGrowthStep | CompareTypeS1F1F2 | Checks the age group difference between Self and Target. The difference is calculated as (Target's GrowthStep) minus (Self's GrowthStep). A positive value means Target is older; a negative value means Target is younger. When S1 is "Abs", the absolute value of the difference is used for comparison. | 4 | |
| 60 | ComparePreference | CompareTypeF1F2 | Counts how many preferences Self and Target share (same preference ID and same like/dislike state), then compares that count using CompareType. | 4 | |
| 61 | ComparePreviousJobRank | CompareTypeS1S2F1F2 | Compares the previous JobRank from graduation history. Returns false if the JobId matches a currently active career. Returns false if the JobId is not found in graduation records. If the JobId exists in graduation records, compares the rank with F1 and returns the result. | 4 | |
| 62 | CompareSkill | CompareTypeS1 | Compares the skill level of the BaseObject entity against the Target entity's skill level. | 3 | |
| 63 | CompleteAmbition | CompareTypeS1F1F2 | Checks whether an ambition has been completed. When F1 is 1 or greater, it compares the total number of completed ambitions against F1 (and optionally F2) using CompareType. When F1 is less than 1, it checks whether the specific ambition identified by S1 has been completed, supporting only Equal and NotEqual comparisons. | 4 | |
| 64 | Costume | CompareTypeS1S2 | Checks whether the character has a specified costume equipped. If S2 is "All", checks all outfit slots; otherwise checks only the last (most recently applied) outfit slot. | 4 | |
| 65 | CostumeTag | CompareTypeS1S2 | Checks whether the character is wearing a costume that has the specified tag in its CostumeTags. If S2 is "All", checks all outfit slots; otherwise checks only the last (most recently applied) outfit slot. | 4 | |
| 66 | CraftingPlayIdleAnimation | CompareType | Checks whether the crafting idle animation should be played at this moment for the BaseObject actor. The result is determined by querying ShouldPlayIdleAnimation on the actor's CraftingComponent. | 3 | |
| 67 | CraftingPlaySuccessAnimation | CompareType | Checks whether the crafting success animation should be played at this moment for the BaseObject actor. The result is determined by querying ShouldPlaySuccessAnimation on the actor's CraftingComponent. | 3 | |
| 68 | CraftingQualityBoosted | CompareType | Checks whether the crafted object selected by BaseObject received the tool-driven quality boost. Use it to gate the completion presentation so that only boosted dishes play it. Crafting finish scripts provide the completed dish as Target, so BaseObject must be Target. | 2 | |
| 69 | CriminalBehaviorCount | CompareTypeS1F1F2 | Checks the criminal behavior count for the BaseObject character. If a Crime ID is specified in S1, checks the count for that specific crime. If S1 is omitted (None), checks the total count across all criminal behaviors. | 3 | |
| 70 | CrowdGroup | CompareTypeS1 | Checks whether a crowd character belongs to the crowd group specified by S1. The character must be of the Crowd group type; if not, the condition returns false. The crowd group ID is retrieved from the character's TraitComponent. | 3 | |
| 71 | CurrentAmbition | CompareTypeS1F1F2 | Checks the current step of a specific ambition for the specified entity. Retrieves the ambition's current step by ambition ID (S1) and compares it against the expected step value (F1), with optional upper bound (F2) for range comparisons. | 4 | |
| 72 | DayOfTheWeek | CompareTypeS1 | Checks whether the current day of the week matches the specified day. | 3 | |
| 73 | DaysUntilSiteEvent | CompareTypeS1F1F2 | Compares the remaining days until the next scheduled SiteEvent or SocialEvent calendar entry whose event ID matches S1. | 3 | |
| 74 | DisasterEnum | CompareTypeS1 | Checks whether a disaster is currently active. If S1 is provided, checks whether the specified disaster type is active; if S1 is omitted, checks whether any disaster is active. | 4 | |
| 75 | DoodleCount | CompareTypeF1F2 | Compares the number of active doodle texture ids on BaseObject's FB2StateComponent. | 2 | |
| 76 | DustyValue | CompareTypeF1F2 | Compares the dusty value of the BaseObject's DustyComponent against the given threshold values. | 3 | |
| 77 | Emotion | CompareTypeS1 | Checks a character's current emotion state. Resolves the target entity from BaseObject, retrieves its EmotionComponent, and compares the character's current EmotionType with the value specified in S1 using the given CompareType. | 3 | |
| 78 | EmotionLevel | CompareTypeS1F1F2 | Checks the level of the character's currently active emotion. First verifies that the character's current emotion type matches the value specified in S1. If it matches, the emotion's level is compared against the provided value(s) using CompareType. If the current emotion does not match S1, returns true only when CompareType is NotEqual. | 3 | |
| 79 | EmotionRestrict | CompareType | Determines whether the character is in an emotion-restricted state. Compares the character’s current emotion value against the restriction threshold defined in the EmotionDataAsset using the given CompareType. Used to block or allow specific reactions when the character is in an extreme emotional state (e.g., prevent positive reactions when emotion value >= RestrictEmotionValue). | 2 | |
| 80 | EmotionTendency | CompareTypeS1 | Checks a character's current emotion tendency. Retrieves the character's current EmotionTendency from the EmotionComponent and compares it against the tendency specified in S1 using the given CompareType. EmotionTendency is a high-level emotional inclination derived from the current emotion state. | 2 | |
| 81 | EmploymentFormEnum | CompareTypeS1 | Checks whether the BaseObject character's Business career employment form matches the specified form. Migrated from the deleted Job system's HasJobType command. | — | |
| 82 | EnableGenerateMotion | CompareType | Always returns true, unconditionally enabling the generated motion condition. | 2 | |
| 83 | EnteredSiteHasTag | CompareTypeS1S2 | Checks whether the site at the entity's current location has the specified site tag (S1). By default, if the entity is not on any site, the condition returns false. If S2 is set to "EvaluateOffSite", the condition is evaluated even when the actor is not on a site (in which case hasTag will be false and the result depends on CompareType). | 3 | |
| 84 | EnteredSiteHasTagByImpactPoint | CompareTypeS1S2 | Checks whether the site containing the impact point (clicked / target location) has the specified site tag (S1). Unlike EnteredSiteHasTag, this condition ALWAYS uses the script context's target location (impact point), regardless of BaseObject or whether a target entity exists. Intended for ground/location click interactions (e.g. ClickMove) where discrimination must be based on the clicked spot, not where the actor is standing. By default, if the impact point is not on any site, the condition returns false. If S2 is set to "EvaluateOffSite", the condition is evaluated even when the impact point is not on a site. | 2 | |
| 85 | EnteredSiteTypeEnum | CompareTypeS1 | Checks whether the SiteType of the site at the entity's current location matches the specified value. When CompareType is Equal, the site type at the test location must match exactly. When CompareType is NotEqual, the condition passes if the entity is on a site of a different type, or if the entity is not on any site at all. | 4 | |
| 86 | ExamRank | CompareTypeF1F2 | Checks the BaseObject student's latest exam rank in their active school. Rank 1 is the highest rank. Greater and GreaterOrEqual mean the student is ranked higher than the threshold, so they are implemented as numeric rank <= N. | 3 | |
| 87 | ExamRankCompare | CompareTypeF1 | Compares the latest exam rank gap between BaseObject and the opposite script object. Rank 1 is the highest rank. Greater and GreaterOrEqual mean BaseObject is higher-ranked by the requested gap. Less and LessOrEqual mean BaseObject is lower-ranked by the gap. | 2 | |
| 88 | FamilyRelationshipCountEnum | CompareTypeS1F1F2 | Checks the count of family members of a specific relationship type for the BaseObject. Counts how many relatives of the given type exist in the family tree and compares that count. | 4 | |
| 89 | FinishHomework | CompareType | Checks whether the BaseObject character has completed homework in hand or inventory and has no unfinished homework in those same locations. | 2 | |
| 90 | ForTimeSite | CompareTypeS1F1 | Checks whether the character has spent at least the specified time at the given site (Equal), or whether the specified time has elapsed since the character last left that site (NotEqual). Use "Home" for S1 to refer to the character's residential site. | 3 | |
| 91 | FreelanceLicenseGrade | CompareTypeS1F1 | Checks the grade level of a specific freelance license for the BaseObject character. Compares the current grade of the license (identified by S1) against the grade value specified in F1. Grade values: None=0, Beginner=1, Intermediate=2, Advanced=3, Expert=4. | 3 | |
| 92 | GatheringTool | CompareTypeS1 | Checks whether the BaseObject is currently holding a gathering tool of the type specified by S1 in their right hand. | 4 | |
| 93 | Gender | CompareTypeS1 | Checks whether the specified character's gender matches the given gender type. | 4 | |
| 94 | GenderCompWithTarget | CompareType | Checks whether the gender of the Self character matches (or does not match) the gender of the Target character. | 2 | |
| 95 | GiftBoxTendency | S1 | Checks the reward tendency (Positive or Negative) of the Target gift box. Returns true if the gift reward value is positive and S1 is "Positive", or if the value is negative and S1 is "Negative". | 2 | |
| 96 | GiftTypeEnum | CompareTypeS1 | Checks whether the current gift (Target entity) matches the specified gift type (S1). Note: This condition uses the Target entity id from the script context to look up gift data. | 2 | |
| 97 | GraduationSchool | CompareTypeS1 | Checks whether BaseObject graduated from a specific school identified by CareerDtId (Company.Id). | — | |
| 98 | GrowthStepEnum | CompareTypeS1S2 | Checks the GrowthStep (age group) of the entity specified by BaseObject. Evaluates the character's current GrowthStep and compares it against the expected value(s) using CompareType. S2 is used as the upper bound for range comparisons. | 4 | |
| 99 | HandCarriedObjectCreatePurposeEnum | CompareTypeS1 | Checks if the object currently held in the character's hand matches the specified CreatePurpose. During a PutDown action, uses the hand selected in PutDownContext; otherwise uses UseHand to determine the hand. If UseHand is not Left or Right, checks both hands (returns true if either hand matches). | 3 | |
| 100 | HandCarriedObjectId | CompareTypeS1 | Checks if the object currently held in the character's hand has the specified ObjectId. During a PutDown action, uses the hand selected in PutDownContext. If UseHand is not specified, checks both hands (right first, then left). | 2 |
… / 5