Loot

Loot (TDESC: Action) is typically the result of a game mechanic once it is completed or when conditions are met. However, actions can perform a variety of operations. Loots can trigger Interaction outcomes (or basic_extras), statistics, buffs, drama_nodes, and a myriad of other tunings. In tuning, the code normally refers to loot as 'loot' or 'loots', sometimes as 'loot_actions', but rarely as 'actions'.

Purpose
The purpose of Actions is to execute a variety of operations due to something happening or having happened in game. For example, the outcome of a Mean interaction generally triggers a loot to lose relationship points between the Sims involved. The player's choices when answering a phone call, particularly Community Closeness calls, can result into different loots, such as displaying notifications and a relationship change, matching the answer given by the player.

Coding
There are several different types of Actions. Usually, any Action can be referenced wherever the game looks for a 'loot'.


 * LootActions: This is the basis for all other Action types as they share its features. This is unquestionably the most common type of Loot. This is a list of operations or changes to be made. It can include giving or removing buffs, traits, statistics, relationship bits, etc; changing statistics, and everything else Actions can do. It presents those changes in a list that will be processed from top to bottom by the game. Each element of the LootActions can have its own test to determine wether or not it should run.
 * RandomWeighedLoot: The second most common type of Action. It makes it possible to list a certain amount of LootActions tunings (or to directly set a certain amount of operations within itself) and give them Weights and Tests, which calculates which of its subordinate loots will occur. Only one loot can result out of this calculation, making it based on chance.
 * ScheduledDeliveryLoot: TDESC: "Loot which will place object(s) in a Sim's mailbox after a tuned amount of time."
 * SituationGoalLootActions: TDESC: "A list of loots that will be applied to each sim in the situation if this goal is completed. It must not be used to remove buffs that are added by RoleStates."
 * WeightedSingleSimLootAction: Processes a list of weighted buff loots that operate only on one Sim. In game, this is only used to set up buffs on certain SituationJobs. For example, it will randomly give a mood buff to Sims who participate in the Protesters and Penthouse Neighbors Visit situation.
 * LiveDragLootActions: TDESC: "A list of loot that will be applied to either the Live Drag object or the target object it is dropped on. This list must be limited to loot that supports the apply(resolver) method."

LootActions
Actions are used to trigger an already existing Action tuning of any type. For example, if one wants to add a relationship bit to their LootActions as well as other Loot, they can simply reference an already existing loot instead of rewriting the initial loot for that relationship bit.

Below is a full list of LootActions:


 * add_career_gig: Used to add a Career Gig to a Sim.
 * add_relic_combo: TDESC: "A loot that adds a specified relic combo to a Sim's relic tracker."
 * apply_canvas_overlay: TDESC "applies an overlay texture to the canvas component texture of an object."
 * apply_loot_to_all_lot_level_objects: TDESC: "applies actions to all levels on a lot.". Lets you choose existing Action tunings that will be applied to all lot levels. ONLY used for dust in the Bust the Dust kit.
 * apply_loot_to_hidden_inventory_items: TDESC: "Loot that will apply actions from a loot list for every item in an actor's hidden inventory that passes an object test set."
 * apply_loot_to_lot_level_objects: TDESC: "Loot operation that applies actions to objects on the lot level.". ONLY used in the Bust the Dust kit for dust.
 * apply_tags_to_object: TDESC: "A construct that sets object tags"
 * audio: Used to play audio.
 * award_perk: TDESC: "This loot will give the specified perk to the sim."
 * award_whim_bucks: TDESC: "This loot will give the specified number of whim bucks to the sim."
 * breakthrough_moment: TDESC: "An operation that shows a breakthrough headline on target Sim." ONLY used in the Scientist Career of Get to Work EP.
 * bucks_loot: TDESC: "A loot operation granting a tuned amount of a specific type of Bucks."
 * buff: to add one buff and specify the reason for it.
 * buff_removal: Used to remove one or several buffs.
 * buff_transfer: TDESC: "Loot action to facilitate transfer of buffs (or mood buffs). The buffs are applied to the tuned Subject Sim." Only used in one loot in game (Loot_Buff_Enraptured)
 * business_modify_customer_flow: TDESC: "A loot that either sets a business as ready to receive customers or as not ready to receive customers. In the later case it means customers will stop showing up at all."
 * butler_state_change: TDESC: "A loot that either enables or disables the butler situation state." ONLY used in the Stuff Pack with the Butler.
 * cancel_scheduled_drama_node: Used to cancel a planned phone call or text message.
 * career_level: TDESC: "For promoting/demoting a sim in a career." Contrarily to using Demote or Promote under career_loots, this enables to have chance and weight multipliers to determine whether or not the promotion / demotion should happen, and will apply on only one career level.
 * career_loot: Used to apply various career operations (demote, promote, fire, retire, join career, take day off, change work performance, quit).
 * career_stay_late: TDESC: "Loot action to extend a sim's work day while they are currently at work."
 * cas_unlock: TDESC: "Loot operation to unlock a cas part for a household."
 * claim_seat: TDESC: "A loot that allows a sim to claim a seat at a restaurant. This works for seats that are unclaimed and also seats that are claimed by someone else. If the seat is already claimed by the subject then nothing happens." ONLY used in the Dining GP.
 * claim_table: "A loot that allows a sim to claim a restaurant table. This works for an individual Sim or any group that the specified Sim is part of." ONLY used in the Dining GP
 * create_notebook_entry: TDESC: "Unlocks a notebook entry to be displayed on the notebook UI."
 * create_object: To generate an object into a specified inventory
 * create_plant: TDESC: "loot that creates a plant using the location of a specified participant as a starting location."
 * create_puddles: This loot will create puddles based on a tuned set of chances.
 * create_situation: Used to start a situation. Can be specified to be user-facing (i.e. displays a U.I.) or not.
 * custom_tooltip_transfer: TDESC: "Loot action to transfer a Custom Tooltip between participants. The Custom Tooltip is taken from the Subject and applied to the Target."
 * destroy_objects_from_inventory: to remove an object from an inventory (Sim, Mailbox, etc)
 * destroy_situation: Used to end a Situation.
 * destroy_target_objects: TDESC: "Destroy the objects identified by the subject participant."
 * discover_clue: TDESC: "An operation that gives the player a notification and a notebook entry about a clue they have discovered." ONLY used in the Detective Career of the Get to Work EP.
 * dynamic_buff_loot: TDESC: "This loot will give a random buff based on the weight get tuned inside." This makes it possible to set up several possible buffs that the game will choose from based on weights and chance.
 * dynamic_skill_loot: Used to increase skill level in a specific Skill, relative to existing Skill level.
 * dynamic_variant_skill_loot: TDESC: "An alternative version of the DynamicSkillLootOp that grabs the skill from something other than a reference to a statistic. It is currently designed to be used as a LootAction only, meaning that it does not get tuned directly on Interactions, Recipes, etc. like DynamicSkillLootOp does."
 * event: TDESC: "A loot operation that processes a test event." Used ONLY in very specific circumstances as the 'events' are a limited available set defined in event_testing-test_events.TestEvent.
 * extinguish_nearby_fire: TDESC: "Loot operation used to extinguish fires and sims near the subject"
 * festival_contest_get_reward: TDESC: "A loot that triggers the Contest to give out awards." Only used in the City Living EP for Festivals.
 * fire: TDESC: "Loot operation used to create fire at the position of the subject. Can optionally create multiple fires"
 * fire_clean_scorch: TDESC: "This loot will remove any instance of the tuned floor features within the removal radius of the Sim."
 * fire_deactivate_sprinkler: TDESC: "Loot operation used to deactivate the lot's fire sprinkler system"
 * fix_gender_preference: TDESC: "Loot that will influence the gender preference of the sims involved in the interaction."
 * force_spawn_objects: TDESC: "Operation to force a target to spawn objects."
 * game_over: TDESC: "Game component's game over loot operation. Note that the subject is almost always object since the game component is not on the Sim." Used only to end in-game games (no 'Game Over' for the Sims game itself).
 * give_sickness: TDESC: "Makes the subject sick with a given or random sickness." Only used in the Get to Work EP.
 * global_policy_add_progress: TDESC: "Loot operation that will add a specified value to the progress of the global policy."
 * greeting: TDESC: "A loot operation that runs through the greetings tuning and attempts to push a greeting between two participants."
 * headline_loot: TDESC: "A loot that allows us to send headline message manually. This has no gameplay impact."
 * hidden_inventory_transfer: TDESC: "Tuning that moves an object to and from the hidden inventory."
 * increment_community_challenge_count: TDESC: "An operation to increment the count for the active community challenge.
 * interest_income: TDESC: "This loot will deliver interest income to the current Household for their current funds, based on the percentage tuned against total held."
 * inventory_loot: TDESC: "Loot option for transfering an object from an owner Sim to a target Sim. If objects are in the inventory it will try to do a transfer from inventory-inventory. If not it will try to mail the gift to other Sim e.g. Give gift interaction, you want to give an object from sim A inventory to Sim B"
 * know_other_sims_career: Loot used in the 'Ask about Career' interaction to learn another Sim's career.
 * know_other_sims_major: Enables a Sim to learn the University Major of another Sim.
 * know_other_sims_statistics: Used to learn a statistic of another Sim. Rarely used in Skills.
 * know_other_sims_trait: Enables a Sim to know another Sim's trait. Used in the "Get to Know" interaction, among others.
 * life_extension: Extends the life of a Sim.
 * lighting_loot: TDESC: "Loot operation used to control lighting."
 * lock_door: TDESC: "An operation that locks an object."
 * looping_loot_ops: TDESC: "A loot that allows a tech designer to loop through a specified set of participants via a participant type (for instance ObjectChildren) and apply loots to each of those objects using existing loots. An example would be the Family Bulletin Board where a Sim that reads a note left for them and gets a relationship boost/hit depending on what kind of note it is. This loot allows the tech designer to loop through all the notes on the board and test for a specific relationship between the note and the Sim and award a relationship change between the actor and the person that wrote the note (which is stored on the note as the owner)."
 * make_pet_missing: Only used in the Cats and Dogs Expansion Pack; this loot causes a pet to go missing.
 * money_loot: To add or substract a certain amount of Simoleons from what a Sim owns. For example, used to give money when selling a painting.
 * motherplant_battle_change: used in the story part of the Strangerville GP only
 * name_reset: TDESC: "This loot will reset the custom name and description which been given to the object. Object must have a NameComponent attached to it for this loot operation to be valid."
 * narrative: Incomplete.
 * narrative_progression: Incomplete.
 * new_crime: This is used in the Get to Work detective career only.
 * normalize_stat: TDESC: "A loot operation that normalizes the statistics listed between values found on two subjects."
 * notification_and_dialog: used to display notifications
 * object_marketplace: TDESC: "Loot operation to apply an object marketplace function on an object. Subject is a sim, and target is the marketplace object."
 * object_relationship: TDESC: "This loot will modify the relationship between an object and a Sim. The target object must have an ObjectRelationshipComponent attached to it for this loot operation to be valid."
 * object_rewards: TDESC: "Loot operation to give multiple objects to a sim as a reward from an interaction. All objects may have its own weight to calculate which should be created"
 * oneshot_broadcaster: "TDESC: Triggers a one-shot broadcaster effect. This MUST be an immediate broadcaster and tuned as an 'On Enter' broadcaster."
 * organization_membership_loot: Loot that modifies the Sim's membership in the organization.
 * play_audio_on_lot_level: TDESC: "Loot operation to play a global audio sting if the lot renderer is displaying a particular level."
 * post_missing_pet_alert: TDESC: "A loot action to post an alert about a missing pet." Only used in the Cats and Dogs EP.
 * reaction: TDESC: "An operation to play Reaction animations." In game, this is used mostly to cause a reaction animation to something happening (For example, Sims panicking when there's a fire triggers that way). Can be used to push an interaction through a loot vs a continuation.
 * recycling_bucks_loot: TDESC: "A loot operation granting a computed amount of a specific type of Recycling Bucks."
 * refresh_inventory_items_decay_modifiers: TDESC: "Loot operation that refreshes decay modifiers of inventory item objects on the lot"
 * refresh_whims: TDESC: "Loot operation that refreshes all of the non-locked whims on a sim."
 * refund_crafting_process: TDESC: "Loot that refunds any refundable resources to the paying Sim."
 * register_to_lost_and_found: TDESC: "Factory for registering an object to Lost and Found service."
 * relationship_bits_lock: TDESC: "Loot to unlock a relationship bit."
 * relationship_bits_loot: Used to add or remove one or more relationship bits.
 * relationship_bits_with_filter: Adds any number of relationship bits to the subject Sim, as well as any Sims that pass the Sim Filter.
 * release_table: TDESC: "A loot that allows a sim to release a restaurant table they currently have claimed."
 * remove_notebook_entry: TDESC: "An operation that clears the notebook data out the specified entries."
 * remove_object_info: TDESC: "Remove the StoredObjectInfoComponent, if it exists."
 * remove_sickness: TDESC: "Removes a sickness from the subject." Used only with the system of diseases of the Get to Work EP.
 * remove_stored_sim_info: to clear out SimInfo previously stored onto an object.
 * reset_aspiration: TDESC: "Operation to reset an aspiration on a Sim."
 * reset_game: TDESC: "Game component's reset game loot operation. Note that the subject is almost always object since the game component is not on the Sim. Only resets score. Leave it to tuning to reset state of target (presumably on xevent)." Used only for in-game games.
 * reset_high_score: TDESC: "Game component's reset high score loot operation. Note that the subject is almost always object since the game component is not on the Sim. Only resets high score. Leave it to tuning to reset state of target (presumably on xevent)." Used only for in-game games.
 * restaurant_expedite_order: TDSC: "A loot that will insert the subjects group order to the front of the chefs list of food to create." Used only in the Dining GP.
 * reward: TDESC: "Loot operation to give a reward to a Sim or Household."
 * roommate_ops: TDESC: "This loot will contain all the roommate loots."
 * schedule_drama_node: Schedule a phone call or text message
 * scheduled_delivery: Used with ScheduledDeliveryLoot to trigger alongside deliveries. Can be used for letters that are also triggered with another line under LootActions.
 * scholarship_action_loot: TDESC: "Loot action to submit an application from the Sim for the tuned scholarship."
 * scholarship_apply_loot: TDESC: "Loot action to submit an application from the Sim for the tuned scholarship."
 * scholarship_get_status_loot: TDESC: "Loot action to display a notification with the status of the Sim's scholarships' statuses."
 * scholarship_show_high_chance_loot: TDESC: "Loot action to display the scholarships the Sim is most likely to win."
 * scholarship_show_info_sign: TDESC: "Loot action to display the Dynamic Scholarship Info Sign."
 * set_club_gathering_vibe:
 * set_dust_overlay: TDESC: "Loot operation used to set dust overlay on the floor, given the lot level."
 * set_favorite: TDESC: "Sets an target as the subject Sim's favorite for the provided favorite_type."
 * set_game_outcome: TDESC: "Determine the winning and losing team for the current game. This does not actually end the game. Normally outcomes are determined when a player/team reaches a target score or when the number of max rounds have been played.  However, a winner may be declared sooner if a player/team performs an action that ends the game." only for in-game games.
 * set_name_from_object_relationship: TDESC: "Loot to set the custom name from the Object Relationship Name."
 * set_primary_aspiration_track: TDESC: "An operation to set the primary aspiration track."
 * set_routing_info_and_state: TDESC: "Factory for setting an object's routing info and routing state."
 * setup_game: TDESC: "Game component's setup game loot operation. Note that the subject is almost always object since the game component is not on the Sim." Only for in-game games.
 * skill_effectiveness:
 * slot_objects: TDESC: "Operation to slot an object into another."
 * squad_loot: TDESC: "Add or remove Sims from another Sims squad."
 * state_change: This changes the state of the object; for example, it can make a letter's state change from "unread" to "read".
 * statistics: Used for various statistic operations, such as adding a statistic, removing a statistic, increasing or decreasing relationship, needs, sentiments, and so on.
 * store_cas_parts: TDESC: "Loot operation to store a cas part or parts on an object."
 * store_object_info: TDESC: "Store data in a StoredObjectInfoComponent. That component is then added to the target, which allows it to be retrieved later."
 * store_sim_info: saves a Sim's SimInfo onto an object. For example, when a Sim dies, their SimInfo is stored within their Urn or Tombstone so that it can display their name.
 * stored_sim_info_transfer: TDESC: "loot action to transfer the Stored Sim Info between participants. The Stored Sim Info is taken from the Subject and applied to the Target."
 * summon_npc: Summons an NPC to the current lot.
 * take_turn: TDESC: "Factory created by tuning to represent a turn change loot operation." Only for in-game games.
 * team_score: TDESC: "Factory created by tuning to represent a team score change loot operation." Only for in-game games.
 * team_score_points: TDESC: "Factory created by tuning to represent a team score change loot operation that awards a specific number of points." Only for in-game games.
 * topic_loot: TDESC: "Factory created by tuning to represent topic update."
 * trait_add: This loot adds a trait.
 * trait_remove: This removes one's trait.
 * transfer_name_loot: TDESC: "Loot to transfer the custom name and custom description between objects."
 * transfer_ownership: TDESC: "This loot will give ownership of the tuned object to the tuned sim or to the tuned sim's household."
 * transfer_painting_state: TDESC: "Loot Operation to copy the painting state of one object to another. Copies from subject to target."
 * travel_to_target_sim: TDESC: "An Operation to travel the actor sim to the target sim's lot."
 * university_course_grade_notification: TDESC: "Operation to give grade TNS.".
 * university_loot: TDESC: "Loot which contains all the university loots." Used for acceptance results, cheating on homework, completing requirement for finals, and enrolling.
 * unlock_door: TDESC: "An operation to unlock a locked object."
 * unlock_hidden_aspiration_track: TDESC: "An operation to unlock a hidden aspiration track." Such as the hidden Grilled Cheese aspiration.
 * unlock_item: TDESC: "Loot operation to give sim unlock items."
 * utility: TDESC: "An operation to shut off or restore utility.
 * utility_usage:" TDESC: "An operation to turn on/off the ability of the object to use utility."
 * vfx: TDESC: "Loot operation to play vfx."
 * weather_set_override_forecast: TDESC: "Set the override forecast"
 * weather_set_season: TDESC: "Interpolate to the specified season over the specified time"
 * weather_start_event: TDESC: "Start the specified weather event for the specified duration"