Line 1,508: |
Line 1,508: |
| |- | | |- |
| | <samp>RequiredTags</samp> | | | <samp>RequiredTags</samp> |
− | | Defines conditions for the order appearing. Can be one of the following: | + | | Defines conditions for the order appearing. Can be one or several of the following in a comma-delimited list: |
| * <samp>season_{{t|season}}</samp>: must currently be the specified season. | | * <samp>season_{{t|season}}</samp>: must currently be the specified season. |
− | * <samp>event_{{t|ID}}</samp>: the specified event ID must have been seen. | + | * <samp>event_{{t|ID}}</samp>: the host player has seen the event with the specified ID. |
− | * <samp>mail_{{t|ID}}</samp>: the specified mail must have been read. | + | * <samp>mail_{{t|ID}}</samp>: the host player has the specified mail key. |
| * <samp>rule_{{t|name}}</samp>: the specified rule is in effect. (See below.) | | * <samp>rule_{{t|name}}</samp>: the specified rule is in effect. (See below.) |
− | * <samp>dropbox_{{t|name}}</samp>: the specified dropbox is targetted. (See below.) | + | * <samp>dropbox_{{t|name}}</samp>: the specified dropbox is currently in use by another quest or special order. (See below.) |
− | * <samp>island</samp>: Ginger Island has been visited. | + | * <samp>island</samp>: Ginger Island has been unlocked. This also adds an island motif to the note. |
| + | * <samp>knows_{{t|NPCname}}</samp>: Returns true if any farmer knows the specified NPC. |
| * <samp>NOT_IMPLEMENTED</samp>: Always returns false. | | * <samp>NOT_IMPLEMENTED</samp>: Always returns false. |
− | Additionally, requirements may be prefixed with <samp>!</samp> to invert the condition. | + | Additionally, requirements may be prefixed with <samp>!</samp> to invert the condition. For example, <samp>!dropbox_{{t|name}}</samp> returns true only if the specified dropbox is ''not'' in use. |
| |- | | |- |
| | <samp>OrderType</samp> | | | <samp>OrderType</samp> |
Line 1,522: |
Line 1,523: |
| |- | | |- |
| | <samp>SpecialRule</samp> | | | <samp>SpecialRule</samp> |
− | | One of the following: | + | | A comma-delimited list of [[#Special rules|special rules]] that apply while this special order is active. |
− | * <samp>FIVE_PLAGUES</samp>
| |
− | * <samp>QI_BEANS</samp>
| |
− | * <samp>DROP_QI_BEANS</samp>
| |
− | * <samp>SC_NO_FOOD</samp>
| |
− | * <samp>QI_COOKING</samp>
| |
− | * <samp>LEGENDARY_FAMILY</samp>
| |
− | * <samp>MINE_HARD</samp>
| |
− | * <samp>SC_HARD</samp>
| |
− | * <samp>QI_DOUBLE</samp>
| |
− | The purpose of these is not well-understood.
| |
| |- | | |- |
| | <samp>Text</samp> | | | <samp>Text</samp> |
Line 1,603: |
Line 1,594: |
| |- | | |- |
| | <samp>Ship</samp> | | | <samp>Ship</samp> |
− | | The player must ship items through their [[Shipping|shipping bin]] which match the [[#Context tags|<samp>AcceptedContextTags</samp> field]]. The quest objective progresses when the items are collected, not when they're put in the bin. Player still get money for the shipped items as they would normally. | + | | The player must ship items through their [[Shipping|shipping bin]] which match the [[#Context tags|<samp>AcceptedContextTags</samp> field]]. The quest objective progresses when the items are collected, not when they're put in the bin. Player still get money for the shipped items as they would normally. The <samp>UseShipmentValue</samp> field (<samp>"false"</samp> by default) can be set to <samp>"true"</samp> to require shipping a certain amount of money worth of items, instead of a certain number of items. |
| |- | | |- |
| | <samp>Donate</samp> | | | <samp>Donate</samp> |
Line 1,689: |
Line 1,680: |
| | | |
| For example, <code>!forage_item, category_vegetable/category_fruit, quality_gold</code> would match non-forage gold-quality items which are either fruits or vegetables. | | For example, <code>!forage_item, category_vegetable/category_fruit, quality_gold</code> would match non-forage gold-quality items which are either fruits or vegetables. |
| + | |
| + | ==Special rules== |
| + | Special rules are [[Modding:Common data field types#Unique string ID|unique string IDs]] that can be used to apply logic while the special order is active. |
| + | |
| + | The game has some predefined rules: |
| + | {| class="wikitable" |
| + | |- |
| + | ! rule ID |
| + | ! effect |
| + | |- |
| + | | <samp>DROP_QI_BEANS</samp> |
| + | | The player can find [[Qi Beans]] for the ''Qi's Crop'' order. |
| + | |- |
| + | | <samp>LEGENDARY_FAMILY</samp> |
| + | | The player can catch the new legendary fish for the ''Extended Family'' order. |
| + | |- |
| + | | <samp>MINE_HARD</samp><br /><samp>SC_HARD</samp> |
| + | | Raises the difficulty level of the mines or [[Skull Cavern]]. |
| + | |- |
| + | | <samp>SC_NO_FOOD</samp> |
| + | | The player can't eat food in the [[Skull Cavern]]. |
| + | |- |
| + | | <samp>QI_BEANS</samp><br /><samp>QI_COOKING</samp><br /><samp>QI_DOUBLE</samp> |
| + | | TODO: document what these do. |
| + | |} |
| + | |
| + | Special orders can also have arbitrary rule IDs, which can be checked using [[Modding:Game state queries|game state queries]] (via <samp>PLAYER_SPECIAL_ORDER_RULE_ACTIVE</samp>) or in C# (via <code>Game1.player.team.SpecialOrderRuleActive</code>). |
| | | |
| ==See also== | | ==See also== |