Data packs - ZAWA-Evolved/ZAWA GitHub Wiki
A few features of ZAWA: Evolved have been coded to allow customization via data packs! With this information, you will be able to customize things such as: adding new variants to existing animals, changing an animal's breeding item or kibble, altering the items within a diet, and more.
Creating a data pack
First, follow this guide to get started with a working base data pack.
Animal data
See: animal stats
All animal data files exist within the entity_stats
data type. For example, the zawa:african_wild_dog
file is located at data/zawa/entity_stats/african_wild_dog.json
.
Temperament, an enum: timid
, neutral
, defensive
, territorial
, or aggressive
.
Kibble, an item. This can be any item that exists in your world, written as namespace:id
.
Size, an enum: ambient
, tiny
, small
, medium
, large
, or giant
.
Fertility, an enum: low
, medium
, or high
.
Breeding item, an item. This can be any item that exists in your world, written as namespace:id
.
Litter size, an integer or ranged integer.
Diet, a string written as namespace:id
.
Speed, an enum: slow
, medium
, or fast
.
Enrichment, a list of enrichment type lists: zawa:blocks
is a list of any blocks that exist in your world, written as namespace:id
; zawa:entities
is a list of any entities that exist in your world, written as namespace:id
.
Variant count, an integer.
Captive variants, an optional integer.
Data requirements for a full zoo animal differ from an ambient animal. We will use the african wild dog and butterfly as our examples.
african_wild_dog.json
{
"temperament": "defensive",
"kibble": "zawa:carnivore_kibble",
"size": "medium",
"fertility": "high",
"breeding_item": "zawa:large_meat",
"litter_size": {
"min": 4,
"max": 5
},
"diet": "zawa:large_carnivore",
"speed": "fast",
"enrichment": {
"zawa:blocks": [
"zawa:scratching_post",
"zawa:heat_rock",
"zawa:sprinkler"
],
"zawa:entities": [
"zawa:scented_ball",
"zawa:beef_ice_treat"
]
},
"variant_count": 5,
"captive_variants": 1
}
butterfly.json
{
"temperament": "timid",
"size": "ambient",
"breeding_item": "minecraft:sugar",
"speed": "medium",
"variant_count": 11
}