Строка 1: |
Строка 1: |
| ← [[Модификации:Индекс|Индекс]] | | ← [[Модификации:Индекс|Индекс]] |
− | | + | {{Переведите}} |
| На этой странице объясняется, как игра хранит и анализирует почтовые данные. Это расширенное руководство для разработчиков модов. | | На этой странице объясняется, как игра хранит и анализирует почтовые данные. Это расширенное руководство для разработчиков модов. |
| | | |
| ==Источник== | | ==Источник== |
− | Данные объекта хранятся в <tt>Content\Data\Mail.xnb</tt>, могут быть [[Модификации:Редактирование_XNB_файлов#Редактирование распакованных данных|извлечены для редактирования]]. Вот исходные данные по состоянию на {{version|1.5.1}} для примера: | + | Данные объекта хранятся в <samp>Content\Data\Mail.xnb</samp>, могут быть [[Модификации:Редактирование_XNB_файлов#Редактирование распакованных данных|извлечены для редактирования]]. Вот исходные данные по состоянию на {{version|1.5.1}} для примера: |
| | | |
| {{collapse|Данные|content=<syntaxhighlight lang="json"> | | {{collapse|Данные|content=<syntaxhighlight lang="json"> |
Строка 191: |
Строка 191: |
| ==Формат== | | ==Формат== |
| ===Ключ=== | | ===Ключ=== |
− | Каждая запись почты имеет уникальный ключ, который идентифицирует сообщение (например, для отслеживания того, получил ли его уже игрок). Например, <tt>Robin</tt> в начале этой записи находится почтовый ключ: | + | Каждая запись почты имеет уникальный ключ, который идентифицирует сообщение (например, для отслеживания того, получил ли его уже игрок). Например, <samp>Robin</samp> в начале этой записи находится почтовый ключ: |
| <syntaxhighlight lang="json"> | | <syntaxhighlight lang="json"> |
| "Robin": "Hey there!^I had some extra wood lying around... I thought maybe you could use it. Take care! ^ -Robin %item object 388 50 %%[#]A Gift From Robin" | | "Robin": "Hey there!^I had some extra wood lying around... I thought maybe you could use it. Take care! ^ -Robin %item object 388 50 %%[#]A Gift From Robin" |
Строка 198: |
Строка 198: |
| Ключом может быть один из этих форматов: | | Ключом может быть один из этих форматов: |
| | | |
− | {| class="wikitable" | + | {|class="wikitable" |
| |- | | |- |
| ! Синтаксис | | ! Синтаксис |
| ! Описание | | ! Описание |
| |- | | |- |
− | | <tt>{{t|season}}_{{t|day of month}}_{{t|year}}</tt> | + | | <samp>{{t|season}}_{{t|day of month}}_{{t|year}}</samp> |
− | | Отправлено в указанную дату.<br /><small>Например: <tt>spring_15_3</tt> применяется весной 15 в 3-м году.</small> | + | | Отправлено в указанную дату.<br /><small>Например: <samp>spring_15_3</samp> применяется весной 15 в 3-м году.</small> |
| |- | | |- |
− | | <tt>{{t|season}}_{{t|day of month}}</tt> | + | | <samp>{{t|season}}_{{t|day of month}}</samp> |
− | | Отправлено в указанную дату в любом году. Это игнорируется, если почта была отправлена в предыдущем формате.<br /><small>Например: <tt>spring_15</tt> применяется весной 15.</small> | + | | Отправлено в указанную дату в любом году. Это игнорируется, если почта была отправлена в предыдущем формате.<br /><small>Например: <samp>spring_15</samp> применяется весной 15.</small> |
| |- | | |- |
| | ''arbitrary key'' | | | ''arbitrary key'' |
− | | Все остальное - просто уникальный ID письма, который можно отправить в коде или через [[Modding:Event data|an event script]]. | + | | Все остальное - просто уникальный ID письма, который можно отправить в коде или через [[Модификации:События|сценарий события]]. |
| |} | | |} |
| | | |
− | ===Value=== | + | ===Значение=== |
− | The value for each letter entry has this format: {{t|letter text}}[#]{{t|letter name}}.
| + | Значение для каждой записи письма имеет следующий формат: {{t|letter text}}[#]{{t|letter name}}. |
| | | |
− | The {{t|letter name}} field is just a unique human-readable name for the letter, shown in the mail collections tab.
| + | Поле {{t|letter name}} просто уникальное удобочитаемое имя письма, отображаемое на вкладке почтовые коллекции. |
| | | |
− | The {{t|letter text}} field is the text to show when the player opens the letter. This recognizes some special tokens:
| + | Поле {{t|letter text}} текст, который будет отображаться, когда игрок откроет письмо. Распознает некоторые специальные токены: |
| | | |
− | {| class="wikitable" | + | {|class="wikitable" |
| |- | | |- |
− | ! token | + | ! Токен |
− | ! description | + | ! Описание |
| |- | | |- |
− | | <tt>@</tt> | + | | <samp>@</samp> |
− | | Replaced with the player name.<br /><small>Example: <tt>Hello @!</tt></small> | + | | Заменяется именем игрока.<br /><small>Например: <samp>Hello @!</samp></small> |
| |- | | |- |
− | | <tt>¦</tt> | + | | <samp>¦</samp> |
− | | Switches between gendered versions of the letter. Male players see the text before <tt>¦</tt>, and others see the text after it. Only the first instance is recognized. If the text doesn't contain it, all players see the same version. | + | | Переключение между гендерными версиями письма. Игроки мужского пола видят текст перед <samp>¦</samp>, а женского видят текст после него. Распознается только первый экземпляр. Если текст этого не содержит, все игроки видят одну и ту же версию. |
| |- | | |- |
− | | <tt>%item object [{{t|id}} {{t|count}}]+ %%</tt> | + | | <samp>%item object [{{t|id}} {{t|count}}]+ %%</samp> |
− | | Attach a random item from the listed space-delimited item IDs and counts. For example, <tt>%item object 388 50 %%</tt> attaches 50 wood; <tt>%item object 388 50 390 10 %%</tt> attaches ''either'' 50 wood, or 10 stone. See [[Modding:Object data]] for a list of item IDs. | + | | Прикрепите случайный элемент из перечисленных ID и количества элементов, разделенных пробелами. Например, <samp>%item object 388 50 %%</samp> приложит 50 древесины; <samp>%item object 388 50 390 10 %%</samp> приложит ''также'' 50 древесины, или 10 камня. Смотри [[Модификации:Объекты]] для списка ID предметов. |
| |- | | |- |
− | | <tt>%item bigobject [{{t|id}}]+ %%</tt> | + | | <samp>%item bigobject [{{t|id}}]+ %%</samp> |
− | | Attach a random big craftable from the listed space-delimited IDs. For example, <tt>%item bigobject 144 163 %%</tt> attaches ''either'' a stone brazier or cask. See [[Modding:Big craftables data]] for a list of item IDs. | + | | Прикрепите случайный большой объект, созданный из перечисленных ID, разделенных пробелами. Например, <samp>%item bigobject 144 163 %%</samp> приложит ''также'' каменный светильник или бочку. Смотри [[Модификации:Изготовляемые предметы]] для списка ID предметов. |
| |- | | |- |
− | | <tt>%item money {{t|amount}} %%</tt><br /><tt>%item money {{t|min}} {{t|max}} %%</tt> | + | | <samp>%item money {{t|amount}} %%</samp><br /><samp>%item money {{t|min}} {{t|max}} %%</samp> |
− | | Attach the given amount of money, or a random amount between an inclusive {{t|min}} and exclusive {{t|max}} value. In either case, the value is rounded down to the nearest 10 (e.g. 156→150). | + | | Прикрепите указанную сумму денег или случайную сумму между значениями включительно {{t|min}} и исключительно {{t|max}}. В любом случае значение округляется до ближайшего десятка (например, 156→150). |
| |- | | |- |
− | | <tt>%item tools [{{t|type}}]+ %%</tt> | + | | <samp>%item tools [{{t|type}}]+ %%</samp> |
− | | Attach one or more base-quality tools. The valid types are <tt>Axe</tt>, <tt>Hoe</tt>, <tt>Can</tt> (watering can), <tt>Pickaxe</tt>, and <tt>Scythe</tt>. Invalid types are ignored. For example, <tt>%item tools Axe Scythe %%</tt> attaches both an axe and scythe. | + | | Прикрепите один или несколько инструментов базового качества. Допустимыми типами являются <samp>Axe</samp>, <samp>Hoe</samp>, <samp>Can</samp> (лейка), <samp>Pickaxe</samp>, и <samp>Scythe</samp>. Недопустимые типы игнорируются. Например, <samp>%item tools Axe Scythe %%</samp> прикрепляет как топор, так и косу. |
| |- | | |- |
− | | <tt>%item conversationTopic {{t|key}} {{t|days}} %%</tt> | + | | <samp>%item conversationTopic {{t|key}} {{t|days}} %%</samp> |
− | | Start an [[Modding:Dialogue#Active dialogue events|active dialogue event]] for the given number of days. | + | | Начинается [[Модификации:Диалоги]] за заданное количество дней. |
| |- | | |- |
− | | <tt>%item cookingRecipe %%</tt> | + | | <samp>%item cookingRecipe %%</samp> |
− | | Teach the player the cooking recipe whose requirement field starts with <tt>f {{t|npc name}}</tt>, where {{t|npc name}} is the mail key with 'Cooking' removed. For example, if the mail key is <tt>RobinCooking</tt>, this command would find a cooking recipe with a requirement starting with <tt>f Robin</tt> that the player doesn't already know. | + | | Научить игрока рецепту приготовления пищи, поле требований которого начинается с <samp>f {{t|npc name}}</samp>, где {{t|npc name}} - почтовый ключ с удаленным "Приготовлением". Например, если почтовый ключ <samp>RobinCooking</samp>, эта команда найдет рецепт приготовления с требованием, начинающимся с <samp>f Robin</samp>, который игрок еще не знает. |
| |- | | |- |
− | | <tt>%item craftingRecipe {{t|key}} %%</tt> | + | | <samp>%item craftingRecipe {{t|key}} %%</samp> |
− | | Teach the player the crafting recipe with the given ID. | + | | Научить игрока рецепту крафта с заданным ID. |
| |- | | |- |
− | | <tt>%item itemRecovery {{t|key}} %%</tt> | + | | <samp>%item itemRecovery {{t|key}} %%</samp> |
− | | Attach the item that the player asked [[Marlon]] to find in the mines, if any. | + | | Прикрепить предмет, который просил игрок у [[Марлон]]а чтобы найти в шахтах, если таковые имеются. |
| |- | | |- |
− | | <tt>%item quest {{t|quest ID}} %%</tt> | + | | <samp>%item quest {{t|quest ID}} %%</samp> |
− | | Attach the given quest ID to the letter, so the player can choose to accept it. | + | | Прикрепить данный ID задания к письму, чтобы игрок мог принять его. |
| |- | | |- |
− | | <tt>%item quest {{t|quest ID}} true %%</tt> | + | | <samp>%item quest {{t|quest ID}} true %%</samp> |
− | | Attach the given quest ID to the letter and add it automatically. (If the player has the <tt>NOQUEST_{{t|quest id}}</tt> mail flag set, it won't be added automatically.) | + | | Прикрепить данный ID задания к письму и добавьте его автоматически. (Если у игрока есть <samp>NOQUEST_{{t|quest id}}</samp> установленный флаг почты, он не будет добавлен автоматически.) |
| |- | | |- |
− | | <tt>%secretsanta</tt> | + | | <samp>%secretsanta</samp> |
− | | Replaced with a random town NPC name if the date is winter 18–25 inclusively, else replaced with <tt>???</tt>. | + | | Заменено случайным NPC, если дата-зима 18-25 включительно, в противном случае заменено <samp>???</samp>. |
| |} | | |} |
| | | |
− | ==Mail flags== | + | ==Почтовые флаги== |
− | ===Overview=== | + | ===Общее представление=== |
− | The game tracks ''mail flags'' for each player. This is used for two purposes:
| + | Игра отслеживает ''почтовые флаги'' для каждого игрока. Это используется для двух целей: |
− | * Tracking received letters. The key for each letter in <tt>Data\Mail</tt> is a mail flag; if the player has the flag for a letter, the game considers it to be received. | + | * Отслеживание полученных писем. Ключом для каждой буквы в <samp>Data\Mail</samp> является почтовый флаг; если у игрока есть флаг для письма, игра считает его полученным. |
− | * Tracking non-mail changes in the world. For example, <tt>artifactFound</tt> means the player has found at least one artifact, <tt>jojaMember</tt> means the player has a Joja membership, etc. These have no letter associated with them. | + | * Отслеживание изменений в мире, не связанных с почтой. Например, <samp>artifactFound</samp> означает, что игрок нашел хотя бы один артефакт, <samp>jojaMember</samp> означает, что у игрока есть членство в Joja и т.д. С ними не связано никакой буквы. |
| | | |
− | Mail flags are tracked in three main fields:
| + | Почтовые флаги отслеживаются в трех основных полях: |
| | | |
− | {| class="wikitable" | + | {|class="wikitable" |
| |- | | |- |
− | ! field | + | ! Поле |
− | ! description | + | ! Описание |
| |- | | |- |
− | | <tt>Game1.player.mailForTomorrow</tt> | + | | <samp>Game1.player.mailForTomorrow</samp> |
− | | Letters to add to the player's mailbox at the start of the next day. | + | | Письма, которые нужно добавить в почтовый ящик игрока в начале следующего дня. |
| |- | | |- |
− | | <tt>Game1.player.mailbox</tt> | + | | <samp>Game1.player.mailbox</samp> |
− | | Letters currently in the player's mailbox. | + | | Письма в настоящее время находятся в почтовом ящике игрока. |
| |- | | |- |
− | | <tt>Game1.player.mailReceived</tt> | + | | <samp>Game1.player.mailReceived</samp> |
− | | All mail flags set for the player. That includes both letters and non-mail flags. | + | | Все почтовые флаги установлены для игрока. Включает в себя как почтовые, так и не почтовые флаги. |
| |} | | |} |
| | | |
− | You need to check all three fields to know if a letter was sent or mail flag set, but the game provides a <tt>Game1.hasOrWillReceiveMail(string id)</tt> method for convenience.
| + | Вам нужно проверить все три поля, чтобы узнать, было ли отправлено письмо или установлен флаг почты, но для удобства в игре предусмотрен метод <samp>Game1.hasOrWillReceiveMail(string ID)</samp>. |
| | | |
− | ===List=== | + | ===Список=== |
− | There are far too many flags to list, but here are some useful ones:
| + | Существует слишком много флагов, чтобы перечислять их, но вот некоторые полезные из них |
| | | |
− | ; [[Community Center]] and [[JojaMart]]: | + | ; [[Клуб]] и [[ДжоджаМарт]]: |
− | :{| class="wikitable" | + | :{|class="wikitable" |
| |- | | |- |
− | ! flag | + | ! Флаг |
− | ! meaning | + | ! Значение |
| |- | | |- |
− | | <tt>abandonedJojaMartAccessible</tt> | + | | <samp>abandonedJojaMartAccessible</samp> |
− | | The [[Bundles#Abandoned JojaMart|abandoned JojaMart]] is accessible. | + | | [[Узелки#Заброшенный ДжоджаМарт|Заброшенный ДжоджаМарт]] доступен. |
| |- | | |- |
− | | <tt>canReadJunimoText</tt> | + | | <samp>canReadJunimoText</samp> |
− | | The player can read the language of Junimos (i.e. the plaques in the Community Center). | + | | Игрок может читать на языке Джунимо (т. е. таблички в Общественном центре). |
| |- | | |- |
− | | <tt>ccIsComplete</tt> | + | | <samp>ccIsComplete</samp> |
− | | The player has completed the Community Center. Note that this isn't set reliably; if using [[Modding:Content Patcher|Content Patcher]], use the <tt>IsCommunityCenterComplete</tt> and <tt>IsJojaMartComplete</tt> tokens instead. See also flags for specific sections: <tt>ccBoilerRoom</tt>, <tt>ccBulletin</tt>, <tt>ccCraftsRoom</tt>, <tt>ccFishTank</tt>, <tt>ccPantry</tt>, and <tt>ccVault</tt>. The equivalent section flags for the Joja warehouse are <tt>jojaBoilerRoom</tt>, <tt>jojaCraftsRoom</tt>, <tt>jojaFishTank</tt>, <tt>jojaPantry</tt>, and <tt>jojaVault</tt>. | + | | The player has completed the Community Center. Note that this isn't set reliably; if using [[Modding:Content Patcher|Content Patcher]], use the <samp>IsCommunityCenterComplete</samp> and <samp>IsJojaMartComplete</samp> tokens instead. See also flags for specific sections: <samp>ccBoilerRoom</samp>, <samp>ccBulletin</samp>, <samp>ccCraftsRoom</samp>, <samp>ccFishTank</samp>, <samp>ccPantry</samp>, and <samp>ccVault</samp>. The equivalent section flags for the Joja warehouse are <samp>jojaBoilerRoom</samp>, <samp>jojaCraftsRoom</samp>, <samp>jojaFishTank</samp>, <samp>jojaPantry</samp>, and <samp>jojaVault</samp>. |
| |- | | |- |
− | | <tt>ccMovieTheater</tt><br /><tt>ccMovieTheaterJoja</tt> | + | | <samp>ccMovieTheater</samp><br /><samp>ccMovieTheaterJoja</samp> |
− | | The movie theater has been constructed, either through the community path (only <tt>ccMovieTheater</tt> is set) or through Joja (both are set). | + | | The movie theater has been constructed, either through the community path (only <samp>ccMovieTheater</samp> is set) or through Joja (both are set). |
| |- | | |- |
− | | <tt>jojaMember</tt> | + | | <samp>jojaMember</samp> |
| | The player bought a [[JojaMart]] membership. | | | The player bought a [[JojaMart]] membership. |
| |} | | |} |
| | | |
| ; Found items: | | ; Found items: |
− | :{| class="wikitable" | + | :{|class="wikitable" |
| |- | | |- |
| ! flag | | ! flag |
| ! meaning | | ! meaning |
| |- | | |- |
− | | <tt>artifactFound</tt> | + | | <samp>artifactFound</samp> |
| | The player has found at least one artifact. | | | The player has found at least one artifact. |
| |- | | |- |
− | | <tt>galaxySword</tt> | + | | <samp>galaxySword</samp> |
| | The player has acquired the [[Galaxy Sword]]. | | | The player has acquired the [[Galaxy Sword]]. |
| |- | | |- |
− | | <tt>geodeFound</tt> | + | | <samp>geodeFound</samp> |
| | The player has found at least one geode. | | | The player has found at least one geode. |
| |} | | |} |
| | | |
| ; Unlocked areas & upgrades: | | ; Unlocked areas & upgrades: |
− | :{| class="wikitable" | + | :{|class="wikitable" |
| |- | | |- |
| ! area | | ! area |
Строка 339: |
Строка 339: |
| |- | | |- |
| | [[Beach]] | | | [[Beach]] |
− | | <tt>beachBridgeFixed</tt> | + | | <samp>beachBridgeFixed</samp> |
| | The bridge to access the second beach area is repaired. | | | The bridge to access the second beach area is repaired. |
| |- | | |- |
| | [[Secret Woods]] | | | [[Secret Woods]] |
− | | <tt>beenToWoods</tt> | + | | <samp>beenToWoods</samp> |
| | The player has entered the [[Secret Woods]] at least once. | | | The player has entered the [[Secret Woods]] at least once. |
| |- | | |- |
| | [[Town]] | | | [[Town]] |
− | | <tt>doorUnlock*</tt> | + | | <samp>doorUnlock*</samp> |
− | | The player has unlocked access to a given NPC's room. See the flag for each NPC: <tt>doorUnlockAbigail</tt>, <tt>doorUnlockAlex</tt>, <tt>doorUnlockCaroline</tt>, <tt>doorUnlockEmily</tt>, <tt>doorUnlockHaley</tt>, <tt>doorUnlockHarvey</tt>, <tt>doorUnlockJas</tt>, <tt>doorUnlockJodi</tt>, <tt>doorUnlockMarnie</tt>, <tt>doorUnlockMaru</tt>, <tt>doorUnlockPenny</tt>, <tt>doorUnlockPierre</tt>, <tt>doorUnlockRobin</tt>, <tt>doorUnlockSam</tt>, <tt>doorUnlockSebastian</tt>, <tt>doorUnlockVincent</tt>. | + | | The player has unlocked access to a given NPC's room. See the flag for each NPC: <samp>doorUnlockAbigail</samp>, <samp>doorUnlockAlex</samp>, <samp>doorUnlockCaroline</samp>, <samp>doorUnlockEmily</samp>, <samp>doorUnlockHaley</samp>, <samp>doorUnlockHarvey</samp>, <samp>doorUnlockJas</samp>, <samp>doorUnlockJodi</samp>, <samp>doorUnlockMarnie</samp>, <samp>doorUnlockMaru</samp>, <samp>doorUnlockPenny</samp>, <samp>doorUnlockPierre</samp>, <samp>doorUnlockRobin</samp>, <samp>doorUnlockSam</samp>, <samp>doorUnlockSebastian</samp>, <samp>doorUnlockVincent</samp>. |
| |- | | |- |
| | [[The Mountain|Mountain]] | | | [[The Mountain|Mountain]] |
− | | <tt>landslideDone</tt> | + | | <samp>landslideDone</samp> |
| | The landside blocking access to the [[mines]] has been cleared. | | | The landside blocking access to the [[mines]] has been cleared. |
| |- | | |- |
| | [[The Sewers|Sewers]] | | | [[The Sewers|Sewers]] |
− | | <tt>openedSewer</tt> | + | | <samp>openedSewer</samp> |
| | The player has unlocked the sewers. | | | The player has unlocked the sewers. |
| |- | | |- |
| | [[Fish Shop]] | | | [[Fish Shop]] |
− | | <tt>willyBoatFixed</tt> | + | | <samp>willyBoatFixed</samp> |
| | The player fixed Willy's boat, so they can now access [[Ginger Island]]. | | | The player fixed Willy's boat, so they can now access [[Ginger Island]]. |
| |- | | |- |
| | [[Ginger Island#Island West|Island farm]] | | | [[Ginger Island#Island West|Island farm]] |
− | | <tt>Island_UpgradeParrotPlatform</tt> | + | | <samp>Island_UpgradeParrotPlatform</samp> |
| | The player unlocked the [[Ginger Island#Parrot Express|Parrot Express]]. | | | The player unlocked the [[Ginger Island#Parrot Express|Parrot Express]]. |
| |- | | |- |
| | [[Ginger Island#Island West|Island farm]] | | | [[Ginger Island#Island West|Island farm]] |
− | | <tt>Island_UpgradeHouse</tt> | + | | <samp>Island_UpgradeHouse</samp> |
| | The player unlocked the island house. | | | The player unlocked the island house. |
| |- | | |- |
| | [[Ginger Island#Island West|Island farm]] | | | [[Ginger Island#Island West|Island farm]] |
− | | <tt>Island_UpgradeHouse_Mailbox</tt> | + | | <samp>Island_UpgradeHouse_Mailbox</samp> |
| | The player unlocked the island mailbox. | | | The player unlocked the island mailbox. |
| |- | | |- |
| | [[Ginger Island#Island West|Island farm]] | | | [[Ginger Island#Island West|Island farm]] |
− | | <tt>Island_W_Obelisk</tt> | + | | <samp>Island_W_Obelisk</samp> |
| | The player unlocked the island [[Farm Obelisk]]. | | | The player unlocked the island [[Farm Obelisk]]. |
| |- | | |- |
| | [[Ginger Island#Island North|Island north]] | | | [[Ginger Island#Island North|Island north]] |
− | | <tt>Island_FirstParrot</tt> | + | | <samp>Island_FirstParrot</samp> |
| | The player unlocked access to the norther section of the island. | | | The player unlocked access to the norther section of the island. |
| |- | | |- |
| | [[Ginger Island#Island North|Island north]] | | | [[Ginger Island#Island North|Island north]] |
− | | <tt>Island_UpgradeBridge</tt> | + | | <samp>Island_UpgradeBridge</samp> |
| | The player repaired the bridge to the [[Ginger Island#Dig Site|island dig site]]. | | | The player repaired the bridge to the [[Ginger Island#Dig Site|island dig site]]. |
| |- | | |- |
| | [[Ginger Island#Island North|Island north]] | | | [[Ginger Island#Island North|Island north]] |
− | | <tt>Island_UpgradeTrader</tt> | + | | <samp>Island_UpgradeTrader</samp> |
| | The player unlocked the [[Island Trader]]. | | | The player unlocked the [[Island Trader]]. |
| |- | | |- |
| | [[Ginger Island#Island South|Island south]] | | | [[Ginger Island#Island South|Island south]] |
− | | <tt>Island_Resort</tt> | + | | <samp>Island_Resort</samp> |
| | The player built the island resort. | | | The player built the island resort. |
| |- | | |- |
| | [[Ginger Island#Island South|Island south]] | | | [[Ginger Island#Island South|Island south]] |
− | | <tt>Island_Turtle</tt> | + | | <samp>Island_Turtle</samp> |
| | The player unlocked access to the island farm. | | | The player unlocked access to the island farm. |
| |- | | |- |
| | [[Volcano Dungeon|Volcano]] | | | [[Volcano Dungeon|Volcano]] |
− | | <tt>Island_VolcanoBridge</tt> | + | | <samp>Island_VolcanoBridge</samp> |
| | The player unlocked the bridge at the Volcano Dungeon entrance. | | | The player unlocked the bridge at the Volcano Dungeon entrance. |
| |- | | |- |
| | [[Volcano Dungeon|Volcano]] | | | [[Volcano Dungeon|Volcano]] |
− | | <tt>Island_VolcanoShortcutOut</tt> | + | | <samp>Island_VolcanoShortcutOut</samp> |
| | The player unlocked the shortcut exit from the [[Volcano Dungeon#Shop|volcano shop]]. | | | The player unlocked the shortcut exit from the [[Volcano Dungeon#Shop|volcano shop]]. |
| |} | | |} |
| | | |
| ; Other: | | ; Other: |
− | :{| class="wikitable" | + | :{|class="wikitable" |
| |- | | |- |
| ! flag | | ! flag |
| ! meaning | | ! meaning |
| |- | | |- |
− | | <tt>Beat_PK</tt> | + | | <samp>Beat_PK</samp> |
| | The player has beaten the [[Prairie King Arcade System|Prairie King]] arcade game. | | | The player has beaten the [[Prairie King Arcade System|Prairie King]] arcade game. |
| |- | | |- |
− | | <tt>Farm_Eternal</tt> | + | | <samp>Farm_Eternal</samp> |
| | The player has reached a 100% [[perfection]] score. | | | The player has reached a 100% [[perfection]] score. |
| |- | | |- |
− | | <tt>guildMember</tt> | + | | <samp>guildMember</samp> |
| | The player is a member of the [[Adventurer's Guild]]. | | | The player is a member of the [[Adventurer's Guild]]. |
| |- | | |- |
− | | <tt>JunimoKart</tt> | + | | <samp>JunimoKart</samp> |
| | The player has beaten the [[Junimo Kart]] arcade game. | | | The player has beaten the [[Junimo Kart]] arcade game. |
| |- | | |- |
− | | <tt>museumComplete</tt> | + | | <samp>museumComplete</samp> |
| | The player has completed the [[Museum]] artifact collection. | | | The player has completed the [[Museum]] artifact collection. |
| |- | | |- |
− | | <tt>qiChallengeComplete</tt> | + | | <samp>qiChallengeComplete</samp> |
| | The player completed the Qi's Challenge [[quest]] by reaching level 25 in the Skull Cavern. | | | The player completed the Qi's Challenge [[quest]] by reaching level 25 in the Skull Cavern. |
| |} | | |} |
| [[en:Modding:Mail_data]] | | [[en:Modding:Mail_data]] |
| [[Category:Модификации]] | | [[Category:Модификации]] |