Difference between revisions of "Modding:Achievement data"

From Stardew Valley Wiki
Jump to navigation Jump to search
(parsing info)
(→‎Raw data: Added new achievements.)
 
(11 intermediate revisions by 4 users not shown)
Line 4: Line 4:
  
 
==Raw data==
 
==Raw data==
Objects are stored in <tt>Content\Data\Achievements.xnb</tt>, which can be [[Modding:Creating an XNB mod#unpacking|unpacked using XNB Extract]]. Here's the raw data (as of v1.2) for reference:
+
Achievement data is stored in <samp>Content\Data\Achievements.xnb</samp>, which can be [[Modding:Editing XNB files#unpacking|unpacked for editing]]. Here's the raw data as of {{version|1.6}} for reference:
  
<source lang="yaml">content:  #!Dictionary<Int32,String>
+
{{collapse|Data|content=<syntaxhighlight lang="json">
    0: "Greenhorn (15k)^Earn 15,000g^true^-1^18" #!String
+
{
    1: "Cowpoke (50k)^Earn 50,000g^true^0^21" #!String
+
  "0": "Greenhorn (15k)^Earn 15,000g^true^-1^18",
    2: "Homesteader (250k)^Earn 250,000g^true^1^20" #!String
+
  "1": "Cowpoke (50k)^Earn 50,000g^true^0^21",
    3: "Millionaire (1mil)^Earn 1,000,000g^true^2^1" #!String
+
  "2": "Homesteader (250k)^Earn 250,000g^true^1^20",
    4: "Legend (10mil)^Earn 10,000,000g^false^-1^3" #!String
+
  "3": "Millionaire (1mil)^Earn 1,000,000g^true^2^1",
    5: "A Complete Collection^Complete the museum collection.^true^28^0" #!String
+
  "4": "Legend (10mil)^Earn 10,000,000g^false^-1^3",
    6: "A New Friend^Reach a 5-heart friend level with someone.^true^-1^14" #!String
+
  "5": "A Complete Collection^Complete the museum collection.^true^28^0",
    7: "Best Friends^Reach a 10-heart friend level with someone.^true^6^31" #!String
+
  "6": "A New Friend^Reach a 5-heart friend level with someone.^true^-1^14",
    9: "The Beloved Farmer^Reach a 10-heart friend level with 8 people.^true^7^32" #!String
+
  "7": "Best Friends^Reach a 10-heart friend level with someone.^true^6^31",
    11: "Cliques^Reach a 5-heart friend level with 4 people.^true^6^26" #!String
+
  "9": "The Beloved Farmer^Reach a 10-heart friend level with 8 people.^true^7^32",
    12: "Networking^Reach a 5-heart friend level with 10 people.^true^11^25" #!String
+
  "11": "Cliques^Reach a 5-heart friend level with 4 people.^true^6^26",
    13: "Popular^Reach a 5-heart friend level with 20 people.^true^12^11" #!String
+
  "12": "Networking^Reach a 5-heart friend level with 10 people.^true^11^25",
    15: "Cook^Cook 10 different recipes.^true^18^12" #!String
+
  "13": "Popular^Reach a 5-heart friend level with 20 people.^true^12^11",
    16: "Sous Chef^Cook 25 different recipes.^true^15^7" #!String
+
  "15": "Cook^Cook 10 different recipes.^true^18^12",
    17: "Gourmet Chef^Cook every recipe.^true^16^35" #!String
+
  "16": "Sous Chef^Cook 25 different recipes.^true^15^7",
    18: "Moving Up^Upgrade your house.^true^-1^13" #!String
+
  "17": "Gourmet Chef^Cook every recipe.^true^16^35",
    19: "Living Large^Upgrade your house to the maximum size.^true^18^15" #!String
+
  "18": "Moving Up^Upgrade your house.^true^-1^13",
    20: "D.I.Y.^Craft 15 different items.^true^-1^29" #!String
+
  "19": "Living Large^Upgrade your house to the maximum size.^true^18^15",
    21: "Artisan^Craft 30 different items.^true^20^16" #!String
+
  "20": "D.I.Y.^Craft 15 different items.^true^-1^29",
    22: "Craft Master^Craft every item.^true^21^23" #!String
+
  "21": "Artisan^Craft 30 different items.^true^20^16",
    24: "Fisherman^Catch 10 different fish.^true^-1^28" #!String
+
  "22": "Craft Master^Craft every item.^true^21^23",
    25: "Ol' Mariner^Catch 24 different fish.^true^24^5" #!String
+
  "24": "Fisherman^Catch 10 different fish.^true^-1^28",
    26: "Master Angler^Catch every fish.^true^25^24" #!String
+
  "25": "Ol' Mariner^Catch 24 different fish.^true^24^5",
    27: "Mother Catch^Catch 100 fish.^true^64^30" #!String
+
  "26": "Master Angler^Catch every fish.^true^25^24",
    28: "Treasure Trove^Donate 40 different items to the museum.^true^-1^6" #!String
+
  "27": "Mother Catch^Catch 100 fish.^true^64^30",
    29: "Gofer^Complete 10 'Help Wanted' requests.^true^-1^22" #!String
+
  "28": "Treasure Trove^Donate 40 different items to the museum.^true^-1^6",
    30: "A Big Help^Complete 40 'Help Wanted' requests.^true^29^10" #!String
+
  "29": "Gofer^Complete 10 'Help Wanted' requests.^true^-1^22",
    31: "Polyculture^Ship 15 of each crop.^true^-1^34" #!String
+
  "30": "A Big Help^Complete 40 'Help Wanted' requests.^true^29^10",
    32: "Monoculture^Ship 300 of one crop.^true^-1^33" #!String
+
  "31": "Polyculture^Ship 15 of each crop.^true^-1^34",
    34: "Full Shipment^Ship every item.^true^-1^9" #!String
+
  "32": "Monoculture^Ship 300 of one crop.^true^-1^33",
</source>
+
  "34": "Full Shipment^Ship every item.^true^-1^9"
 +
  "35": "Well-read^Read every book.^true^-1^9",
 +
  "36": "Two Thumbs Up^See a movie.^false^-1^9",
 +
  "37": "Blue Ribbon^Get 1st place in the Stardew Valley Fair competition.^true^-1^9",
 +
  "38": "An Unforgettable Soup^Delight the Governor.^true^-1^9",
 +
  "39": "Good Neighbors^Help your forest neighbors grow their family.^true^-1^9",
 +
  "40": "A Distant Shore^Reach Ginger Island.^false^-1^9",
 +
  "41": "Danger In The Deep^Reach the bottom of the 'dangerous' mines.^false^-1^9",
 +
  "42": "Infinite Power^Obtain the most powerful weapon.^true^-1^9",
 +
  "44": "Perfection^Reach the summit.^false^-1^9"
 +
}
 +
</syntaxhighlight>}}
  
 
==Format==
 
==Format==
Line 63: Line 74:
 
|-
 
|-
 
| 4
 
| 4
| hat earned (index from <tt>hats.xnb</tt>)
+
| hat earned (index from <samp>hats.xnb</samp>)
 
| ''13''
 
| ''13''
 
|-
 
|-
Line 72: Line 83:
 
The only achievement with a value of "false" in index 2 is the secret achievement that doesn't display until it's earned.
 
The only achievement with a value of "false" in index 2 is the secret achievement that doesn't display until it's earned.
  
For a list of hats, see [[Modding:Hat data|Hat data]].
+
For a list of hats, see [[Modding:Items|hat data]].
 +
 
 +
==See also==
 +
* [[Achievements]]
  
 
[[Category:Modding]]
 
[[Category:Modding]]
 +
 +
[[es:Modding:Datos de logros]]
 +
[[ru:Модификации:Достижения]]

Latest revision as of 01:39, 29 March 2024

Index

This page explains how the game stores and parses achievement data. This is an advanced guide for mod developers.

Raw data

Achievement data is stored in Content\Data\Achievements.xnb, which can be unpacked for editing. Here's the raw data as of 1.6 for reference:

Data 
{
  "0": "Greenhorn (15k)^Earn 15,000g^true^-1^18",
  "1": "Cowpoke (50k)^Earn 50,000g^true^0^21",
  "2": "Homesteader (250k)^Earn 250,000g^true^1^20",
  "3": "Millionaire (1mil)^Earn 1,000,000g^true^2^1",
  "4": "Legend (10mil)^Earn 10,000,000g^false^-1^3",
  "5": "A Complete Collection^Complete the museum collection.^true^28^0",
  "6": "A New Friend^Reach a 5-heart friend level with someone.^true^-1^14",
  "7": "Best Friends^Reach a 10-heart friend level with someone.^true^6^31",
  "9": "The Beloved Farmer^Reach a 10-heart friend level with 8 people.^true^7^32",
  "11": "Cliques^Reach a 5-heart friend level with 4 people.^true^6^26",
  "12": "Networking^Reach a 5-heart friend level with 10 people.^true^11^25",
  "13": "Popular^Reach a 5-heart friend level with 20 people.^true^12^11",
  "15": "Cook^Cook 10 different recipes.^true^18^12",
  "16": "Sous Chef^Cook 25 different recipes.^true^15^7",
  "17": "Gourmet Chef^Cook every recipe.^true^16^35",
  "18": "Moving Up^Upgrade your house.^true^-1^13",
  "19": "Living Large^Upgrade your house to the maximum size.^true^18^15",
  "20": "D.I.Y.^Craft 15 different items.^true^-1^29",
  "21": "Artisan^Craft 30 different items.^true^20^16",
  "22": "Craft Master^Craft every item.^true^21^23",
  "24": "Fisherman^Catch 10 different fish.^true^-1^28",
  "25": "Ol' Mariner^Catch 24 different fish.^true^24^5",
  "26": "Master Angler^Catch every fish.^true^25^24",
  "27": "Mother Catch^Catch 100 fish.^true^64^30",
  "28": "Treasure Trove^Donate 40 different items to the museum.^true^-1^6",
  "29": "Gofer^Complete 10 'Help Wanted' requests.^true^-1^22",
  "30": "A Big Help^Complete 40 'Help Wanted' requests.^true^29^10",
  "31": "Polyculture^Ship 15 of each crop.^true^-1^34",
  "32": "Monoculture^Ship 300 of one crop.^true^-1^33",
  "34": "Full Shipment^Ship every item.^true^-1^9"
  "35": "Well-read^Read every book.^true^-1^9",
  "36": "Two Thumbs Up^See a movie.^false^-1^9",
  "37": "Blue Ribbon^Get 1st place in the Stardew Valley Fair competition.^true^-1^9",
  "38": "An Unforgettable Soup^Delight the Governor.^true^-1^9",
  "39": "Good Neighbors^Help your forest neighbors grow their family.^true^-1^9",
  "40": "A Distant Shore^Reach Ginger Island.^false^-1^9",
  "41": "Danger In The Deep^Reach the bottom of the 'dangerous' mines.^false^-1^9",
  "42": "Infinite Power^Obtain the most powerful weapon.^true^-1^9",
  "44": "Perfection^Reach the summit.^false^-1^9"
}

Format

Index Field Example Value
0 name Moving Up
1 description Upgrade your house.
2 display achievement on collections tab before it's earned true
3 prerequisite achievement -1
4 hat earned (index from hats.xnb) 13

If index 2 is "true" and index 3 is "-1" then the achievement star will be displayed on the collections tab (greyed out if not yet achieved). Otherwise, index 3 shows the number of the achievement that must be earned before the achievement will be displayed on the Collections tab. (Example: you must earn achievement 28 "Treasure Trove" before achievement 5 "A Complete Collection" will be displayed.)

The only achievement with a value of "false" in index 2 is the secret achievement that doesn't display until it's earned.

For a list of hats, see hat data.

See also