Difference between revisions of "Modding:Animal data"

From Stardew Valley Wiki
Jump to navigation Jump to search
Line 1: Line 1:
← [[Modding:Index|Index]]
+
←[[Modding:Index|Index]]
{{Stub}}
+
 
 +
==Source==
 +
Animal data is stored in <tt>'''Content\Data\FarmAnimals.xnb'''</tt>, which can be [[Modding:Editing XNB files#Getting started|unpacked using XNB Extract]].
 +
 
 +
Here's an example for reference:
 +
 
 +
<tt>"Dinosaur": "1/0/107/-1/none/8/32/48/32/8/32/48/32/0/false/Coop/16/16/16/16/1/8/null/644/1000/Dinosaur/Coop",</tt>
 +
 
 +
==Basic format==
 +
All bundles share the same format, which cannot be re-ordered.  Each field is explained below.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! index
 +
! syntax
 +
! description
 +
|-
 +
| 0
 +
| <tt>{{t|Animal Name}}</tt>
 +
| What the animal will be called.  Can be changed freely or new entries added for new animals.
 +
|-
 +
| 1
 +
| <tt>{{t|Days to Produce}}</tt>
 +
| Number of days for the animal to produce its product.  Is affected by friendship/happiness in some way.
 +
|-
 +
| 2
 +
| <tt>{{t|Age When Mature}}</tt>
 +
| Number of days until mature.
 +
|-
 +
| 3
 +
| <tt>{{t|Default Produce Index}}</tt>
 +
| Index number for default produce item (ex Milk).  Taken from springobjects.xnb
 +
|-
 +
| 4
 +
| <tt>{{t|Deluxe Produce Index}}</tt>
 +
| Index number for deluxe produce item (ex Large Milk).  Taken from springobjects.xnb.
 +
|-
 +
| 5
 +
| <tt>{{t|SoundID}}</tt>
 +
| What sound clip the animal will use.  Available sounds are <tt>cluck</tt>, <tt>Duck</tt>, <tt>rabbit</tt>, <tt>cow</tt>, <tt>goat</tt>, <tt>pig</tt>, <tt>sheep</tt>, or <tt>none</tt>.
 +
|-
 +
| 6-9
 +
| <tt>{{t|Front-to-back Bounding Box}}</tt>
 +
| Unused data.  In form of <tt>8/32/48/32/</tt>.  Can be all zeroes.
 +
|-
 +
| 10-13
 +
| <tt>{{t|Sideways Bounding Box}}</tt>
 +
| Unused data.  In form of <tt>8/32/48/32/</tt>.  Can be all zeroes.
 +
|-
 +
| 14
 +
| <tt>{{t|Harvest Type}}</tt>
 +
|
 +
|-
 +
| 15
 +
| <tt>{{t|Show Different Texture}}</tt>
 +
| Used for indicating an animal with a secondary texture, for example sheep.  Accepts <tt>true/false</tt>.
 +
|-
 +
| 16
 +
| <tt>{{t|Building Type}}</tt>
 +
| Building category animal lives in.  Currently only <tt>Coop</tt> or <tt>Barn</tt>.
 +
|-
 +
| 17-18
 +
| <tt>{{t|Sprite Width/Height}}</tt>
 +
| Size in pixels of front and back sprites.  Ex: Chickens are <tt>16/16</tt>.
 +
|-
 +
| 19-20
 +
| <tt>{{t|Sprite Width/Height}}</tt>
 +
| Size in pixels of sideways sprites.  Ex: Chickens are <tt>16/16</tt>.
 +
|-
 +
| 21
 +
| <tt>{{t|Fullness Drain}}</tt>
 +
|
 +
|-
 +
| 22
 +
| <tt>{{t|Happiness Drain}}</tt>
 +
|
 +
|-
 +
| 23
 +
| <tt>{{t|Harvest Tool}}</tt>
 +
| Which tool is needed to harvest produce from animal.  Excepts <tt>Milk Pail</tt>, <tt>Shears</tt>, or <tt>null</tt>.
 +
|-
 +
| 24
 +
| <tt>{{t|Meat Index}}</tt>
 +
| Index number for meat sprites, pulled from SpringObjects.xnb.  Unused in vanilla game, but may be used by mods such as Animal Husbandry.
 +
|-
 +
| 25
 +
| <tt>{{t|Price}}</tt>
 +
| Cost of animal when purchasing from Marnie.
 +
|-
 +
| 26
 +
| <tt>{{t|Display Type}}</tt>
 +
| Name to display for animal type.  Used for non-English language compatibility, but is also present in English version.
 +
|-
 +
| 16
 +
| <tt>{{t|Display Building}}</tt>
 +
| Name to display for what building animal lives in.  Used for non-English language compatibility, but is also present in English version.
 +
|}
  
 
[[Category:Modding]]
 
[[Category:Modding]]

Revision as of 20:21, 11 February 2019

Index

Source

Animal data is stored in Content\Data\FarmAnimals.xnb, which can be unpacked using XNB Extract.

Here's an example for reference:

"Dinosaur": "1/0/107/-1/none/8/32/48/32/8/32/48/32/0/false/Coop/16/16/16/16/1/8/null/644/1000/Dinosaur/Coop",

Basic format

All bundles share the same format, which cannot be re-ordered. Each field is explained below.

index syntax description
0 <Animal Name> What the animal will be called. Can be changed freely or new entries added for new animals.
1 <Days to Produce> Number of days for the animal to produce its product. Is affected by friendship/happiness in some way.
2 <Age When Mature> Number of days until mature.
3 <Default Produce Index> Index number for default produce item (ex Milk). Taken from springobjects.xnb
4 <Deluxe Produce Index> Index number for deluxe produce item (ex Large Milk). Taken from springobjects.xnb.
5 <SoundID> What sound clip the animal will use. Available sounds are cluck, Duck, rabbit, cow, goat, pig, sheep, or none.
6-9 <Front-to-back Bounding Box> Unused data. In form of 8/32/48/32/. Can be all zeroes.
10-13 <Sideways Bounding Box> Unused data. In form of 8/32/48/32/. Can be all zeroes.
14 <Harvest Type>
15 <Show Different Texture> Used for indicating an animal with a secondary texture, for example sheep. Accepts true/false.
16 <Building Type> Building category animal lives in. Currently only Coop or Barn.
17-18 <Sprite Width/Height> Size in pixels of front and back sprites. Ex: Chickens are 16/16.
19-20 <Sprite Width/Height> Size in pixels of sideways sprites. Ex: Chickens are 16/16.
21 <Fullness Drain>
22 <Happiness Drain>
23 <Harvest Tool> Which tool is needed to harvest produce from animal. Excepts Milk Pail, Shears, or null.
24 <Meat Index> Index number for meat sprites, pulled from SpringObjects.xnb. Unused in vanilla game, but may be used by mods such as Animal Husbandry.
25 <Price> Cost of animal when purchasing from Marnie.
26 <Display Type> Name to display for animal type. Used for non-English language compatibility, but is also present in English version.
16 <Display Building> Name to display for what building animal lives in. Used for non-English language compatibility, but is also present in English version.