Merge branch 'wildlife_spawn_work' into 'master'

wildlife_spawn_work

See merge request veloren/veloren!3992
This commit is contained in:
Samuel Keiffer 2023-07-03 23:21:56 +00:00
commit 7380b9b485
29 changed files with 293 additions and 140 deletions

View File

@ -14,7 +14,6 @@ SpawnEntry (
(4, (4, 12, "common.entity.wild.peaceful.penguin")),
(4, (4, 8, "common.entity.wild.peaceful.seal")),
(1, (1, 1, "common.entity.wild.aggressive.tursus")),
(1, (1, 1, "common.entity.wild.aggressive.akhlut")),
],
spawn_mode: Ice,
day_period: [Night, Morning, Noon, Evening],

View File

@ -4,8 +4,10 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (3, 6, "common.entity.wild.peaceful.zebra")),
(1, (3, 6, "common.entity.wild.peaceful.antelope")),
(1, (1, 1, "common.entity.wild.aggressive.asp")),
(1, (1, 3, "common.entity.wild.aggressive.sand_raptor")),
(1, (1, 1, "common.entity.wild.aggressive.antlion")),
(1, (1, 1, "common.entity.wild.aggressive.lavadrake")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -9,7 +9,6 @@ SpawnEntry (
(2, (1, 1, "common.entity.wild.peaceful.sand_hare")),
(2, (1, 1, "common.entity.wild.peaceful.salamander")),
(2, (1, 1, "common.entity.wild.peaceful.gecko")),
(2, (1, 1, "common.entity.wild.aggressive.axebeak")),
// Rare
(1, (1, 1, "common.entity.wild.peaceful.crawler_sand")),
],
@ -18,10 +17,8 @@ SpawnEntry (
),
Pack(
groups: [
(1, (1, 1, "common.entity.wild.peaceful.holladon")),
(1, (1, 1, "common.entity.wild.peaceful.porcupine")),
(1, (1, 1, "common.entity.wild.peaceful.pangolin")),
(1, (1, 3, "common.entity.wild.aggressive.bat")),
],
spawn_mode: Land,
day_period: [Night],

View File

@ -8,6 +8,7 @@ SpawnEntry (
(2, (1, 1, "common.entity.wild.aggressive.dodarock")),
(5, (1, 3, "common.entity.wild.peaceful.gecko")),
(5, (1, 2, "common.entity.wild.peaceful.sand_hare")),
(5, (1, 1, "common.entity.wild.aggressive.bonerattler")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -5,18 +5,12 @@ SpawnEntry (
Pack(
groups: [
// Casual
(110, (1, 1, "common.entity.wild.aggressive.bonerattler")),
(100, (1, 1, "common.entity.wild.aggressive.sand_raptor")),
(100, (1, 1, "common.entity.wild.aggressive.sandshark")),
(100, (1, 1, "common.entity.wild.aggressive.antlion")),
(80, (1, 1, "common.entity.wild.peaceful.eagle")),
// Rare
(20, (1, 1, "common.entity.wild.aggressive.lavadrake")),
(20, (1, 1, "common.entity.wild.aggressive.ntouka")),
(20, (1, 1, "common.entity.wild.aggressive.archaeos")),
(20, (1, 1, "common.entity.wild.aggressive.ngoubou")),
(20, (1, 1, "common.entity.wild.aggressive.tarantula")),
// Ultra_rare
(1, (1, 1, "common.entity.wild.aggressive.roshwalr_boss")),
(20, (1, 1, "common.entity.wild.aggressive.ogre")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -5,9 +5,11 @@ SpawnEntry (
Pack(
groups: [
// Casual
(5, (1, 1, "common.entity.wild.aggressive.asp")),
(5, (1, 1, "common.entity.wild.aggressive.tiger")),
(5, (1, 1, "common.entity.wild.aggressive.maneater")),
(5, (1, 3, "common.entity.wild.aggressive.wood_raptor")),
(5, (1, 1, "common.entity.wild.aggressive.deadwood")),
(5, (1, 1, "common.entity.wild.peaceful.dodo")),
// Rare
(1, (1, 1, "common.entity.wild.aggressive.sunlizard")),
(1, (1, 1, "common.entity.wild.aggressive.odonto")),

View File

@ -1,5 +1,5 @@
SpawnEntry (
name: "Jungle rainforest rare wildlife.",
name: "Jungle rainforest wildlife.",
note: "Spread through the area.",
rules: [
Pack(
@ -9,6 +9,7 @@ SpawnEntry (
(5, (1, 1, "common.entity.wild.peaceful.quokka")),
(5, (1, 1, "common.entity.wild.peaceful.parakeet")),
// Rare
(1, (1, 1, "common.entity.wild.aggressive.tarasque")),
(1, (1, 1, "common.entity.wild.peaceful.tortoise")),
(1, (1, 1, "common.entity.wild.aggressive.monitor")),
(1, (1, 1, "common.entity.wild.aggressive.horn_beetle")),
@ -18,6 +19,7 @@ SpawnEntry (
(1, (1, 1, "common.entity.wild.aggressive.axebeak")),
(1, (1, 1, "common.entity.wild.peaceful.toucan")),
(1, (1, 1, "common.entity.wild.peaceful.peacock")),
(1, (1, 1, "common.entity.wild.aggressive.swamp_troll")),
],
spawn_mode: Land,
day_period: [Morning, Noon, Evening],
@ -26,7 +28,7 @@ SpawnEntry (
groups: [
(5, (1, 1, "common.entity.wild.peaceful.quokka")),
(1, (1, 1, "common.entity.wild.peaceful.tortoise")),
(2, (1, 3, "common.entity.wild.aggressive.bat")),
(1, (1, 1, "common.entity.wild.aggressive.swamp_troll")),
],
spawn_mode: Land,
day_period: [Night],

View File

@ -4,17 +4,40 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.bear")),
(1, (1, 1, "common.entity.wild.peaceful.eagle")),
(1, (1, 1, "common.entity.wild.peaceful.horned_owl")),
(1, (1, 1, "common.entity.wild.peaceful.arctic_fox")),
(1, (1, 1, "common.entity.wild.peaceful.moose")),
(1, (1, 1, "common.entity.wild.peaceful.arctic_hare")),
(1, (1, 1, "common.entity.wild.peaceful.tuskram")),
(1, (1, 1, "common.entity.wild.aggressive.bristleback")),
(1, (1, 4, "common.entity.wild.peaceful.crow")),
(1, (1, 7, "common.entity.wild.peaceful.deer")),
(1, (1, 7, "common.entity.wild.peaceful.jackalope")),
(1, (1, 7, "common.entity.wild.peaceful.boar")),
(1, (5, 10, "common.entity.wild.peaceful.sheep")),
(1, (1, 2, "common.entity.wild.peaceful.squirrel")),
(1, (5, 10, "common.entity.wild.peaceful.goat")),
(1, (3, 8, "common.entity.wild.peaceful.llama")),
(1, (1, 2, "common.entity.wild.peaceful.donkey")),
(1, (1, 1, "common.entity.wild.peaceful.skunk")),
(1, (1, 1, "common.entity.wild.peaceful.raccoon")),
(1, (1, 1, "common.entity.wild.peaceful.catoblepas")),
(1, (1, 1, "common.entity.wild.peaceful.truffler")),
(1, (1, 1, "common.entity.wild.aggressive.tarasque")),
(1, (1, 1, "common.entity.wild.aggressive.saber")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],
day_period: [Morning, Noon, Evening],
),
Pack(
groups: [
(5, (1, 3, "common.entity.wild.peaceful.squirrel")),
(5, (1, 1, "common.entity.wild.peaceful.forest_fox")),
(5, (1, 3, "common.entity.wild.peaceful.raccoon")),
(2, (1, 1, "common.entity.wild.aggressive.dullahan")),
],
spawn_mode: Land,
day_period: [Night],
),
],
)

View File

@ -1,11 +1,10 @@
SpawnEntry (
name: "Taiga pack animals.",
name: "Taiga core wildlife.",
note: "Search for them in the heart of taiga.",
rules: [
Pack(
groups: [
(1, (1, 3, "common.entity.wild.peaceful.mouflon")),
(1, (1, 3, "common.entity.wild.peaceful.yak")),
(1, (1, 3, "common.entity.wild.peaceful.llama")),
(1, (1, 3, "common.entity.wild.peaceful.alpaca")),
(1, (1, 3, "common.entity.wild.peaceful.highland")),

View File

@ -1,10 +1,9 @@
SpawnEntry (
name: "Taiga rare forest wildlife.",
name: "Taiga core forest wildlife.",
note: "Search for them in the heart of the taiga, if you are feeling lucky.",
rules: [
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.wendigo")),
(1, (1, 1, "common.entity.wild.aggressive.dreadhorn")),
],
spawn_mode: Land,
@ -12,7 +11,6 @@ SpawnEntry (
),
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.wendigo")),
(1, (1, 1, "common.entity.wild.aggressive.dreadhorn")),
(1, (1, 1, "common.entity.wild.aggressive.irrwurz")),
],

View File

@ -0,0 +1,15 @@
SpawnEntry (
name: "Taiga river wildlife.",
note: "",
rules: [
Pack(
groups: [
(5, (1, 1, "common.entity.wild.peaceful.beaver")),
(5, (1, 1, "common.entity.wild.peaceful.elbst")),
(5, (1, 1, "common.entity.wild.peaceful.duck")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -4,7 +4,7 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (1, 2, "common.entity.wild.aggressive.icepike")),
(1, (1, 2, "common.entity.wild.peaceful.marlin")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],

View File

@ -1,10 +1,10 @@
SpawnEntry (
name: "Tropical rare river wildlife.",
note: "",
name: "Temperate Ocean beach wildlife.",
note: "Beach inhabitants",
rules: [
Pack(
groups: [
(1, (1, 2, "common.entity.wild.aggressive.alligator")),
(5, (1, 3, "common.entity.wild.peaceful.puffin")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -0,0 +1,13 @@
SpawnEntry (
name: "Temperate Ocean wildlife.",
note: "Ocean inhabitants",
rules: [
Pack(
groups: [
(3, (3, 4, "common.entity.wild.peaceful.marlin")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -0,0 +1,32 @@
SpawnEntry (
name: "Temperate plains wildlife.",
note: "",
rules: [
Pack(
groups: [
(5, (1, 1, "common.entity.wild.aggressive.weevil")),
(5, (1, 7, "common.entity.wild.peaceful.horse")),
(5, (5, 10, "common.entity.wild.peaceful.cattle")),
(5, (2, 5, "common.entity.wild.peaceful.chicken")),
(5, (1, 7, "common.entity.wild.peaceful.rabbit")),
(5, (1, 2, "common.entity.wild.peaceful.frog")),
(5, (1, 7, "common.entity.wild.peaceful.pig")),
(5, (1, 1, "common.entity.wild.peaceful.leaf_beetle")),
(5, (1, 1, "common.entity.wild.peaceful.bushly")),
(5, (1, 1, "common.entity.wild.peaceful.driggle")),
(1, (1, 1, "common.entity.wild.aggressive.ogre")),
],
spawn_mode: Land,
day_period: [Morning, Noon, Evening],
),
Pack(
groups: [
// Solitary
// Pack
(1, (1, 2, "common.entity.wild.peaceful.emberfly")),
],
spawn_mode: Land,
day_period: [Night],
),
],
)

View File

@ -5,34 +5,12 @@ SpawnEntry (
Pack(
groups: [
// Pack animals
(1, (1, 7, "common.entity.wild.peaceful.deer")),
(1, (1, 3, "common.entity.wild.peaceful.rat")),
(1, (1, 7, "common.entity.wild.peaceful.rabbit")),
(1, (1, 7, "common.entity.wild.peaceful.jackalope")),
(1, (1, 7, "common.entity.wild.peaceful.boar")),
(1, (1, 7, "common.entity.wild.peaceful.sheep")),
(1, (1, 7, "common.entity.wild.peaceful.pig")),
(1, (1, 7, "common.entity.wild.peaceful.squirrel")),
(1, (1, 7, "common.entity.wild.peaceful.horse")),
(1, (1, 7, "common.entity.wild.peaceful.cattle")),
(1, (1, 7, "common.entity.wild.peaceful.goat")),
(1, (1, 7, "common.entity.wild.peaceful.llama")),
(1, (1, 7, "common.entity.wild.peaceful.alpaca")),
(1, (1, 7, "common.entity.wild.peaceful.chicken")),
(1, (1, 4, "common.entity.wild.peaceful.crow")),
(2, (1, 1, "common.entity.wild.peaceful.bushly")),
(2, (1, 7, "common.entity.wild.peaceful.boar")),
// Solitary
(2, (1, 1, "common.entity.wild.peaceful.mossy_snail")),
(2, (1, 1, "common.entity.wild.peaceful.treant_sapling")),
// Solitary
(2, (1, 1, "common.entity.wild.peaceful.forest_fox")),
(2, (1, 1, "common.entity.wild.peaceful.donkey")),
(2, (1, 1, "common.entity.wild.peaceful.goose")),
(2, (1, 1, "common.entity.wild.peaceful.peacock")),
(2, (1, 1, "common.entity.wild.peaceful.skunk")),
(2, (1, 1, "common.entity.wild.peaceful.raccoon")),
(2, (1, 1, "common.entity.wild.peaceful.catoblepas")),
(2, (1, 1, "common.entity.wild.peaceful.turtle")),
(2, (1, 1, "common.entity.wild.peaceful.hirdrasil")),
(2, (1, 1, "common.entity.wild.peaceful.truffler")),
(2, (1, 1, "common.entity.wild.peaceful.leaf_beetle")),
(2, (1, 1, "common.entity.wild.aggressive.weevil")),
@ -42,14 +20,7 @@ SpawnEntry (
),
Pack(
groups: [
// Solitary
(1, (1, 1, "common.entity.wild.aggressive.batfox")),
(5, (1, 1, "common.entity.wild.peaceful.forest_fox")),
(5, (1, 1, "common.entity.wild.peaceful.raccoon")),
// Pack
(5, (1, 3, "common.entity.wild.peaceful.rat")),
(5, (1, 3, "common.entity.wild.peaceful.squirrel")),
(3, (1, 3, "common.entity.wild.aggressive.bat")),
(5, (1, 3, "common.entity.wild.peaceful.emberfly")),
],
spawn_mode: Land,

View File

@ -5,22 +5,13 @@ SpawnEntry (
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.ogre")),
(1, (1, 1, "common.entity.wild.aggressive.swamp_troll")),
(1, (1, 1, "common.entity.wild.aggressive.dullahan")),
(2, (1, 1, "common.entity.wild.peaceful.bushly")),
(2, (1, 1, "common.entity.wild.peaceful.driggle")),
],
spawn_mode: Land,
day_period: [Morning, Noon, Evening],
),
Pack(
groups: [
// Solitary
(1, (1, 1, "common.entity.wild.aggressive.ogre")),
(1, (1, 1, "common.entity.wild.aggressive.swamp_troll")),
(1, (1, 1, "common.entity.wild.aggressive.dullahan")),
// Pack
(1, (1, 3, "common.entity.wild.peaceful.emberfly")),
],
spawn_mode: Land,
day_period: [Night],

View File

@ -4,11 +4,9 @@ SpawnEntry (
rules: [
Pack(
groups: [
(5, (1, 1, "common.entity.wild.peaceful.beaver")),
(5, (1, 1, "common.entity.wild.peaceful.elbst")),
(5, (1, 1, "common.entity.wild.peaceful.duck")),
(1, (1, 1, "common.entity.wild.peaceful.kelpie")),
(1, (1, 1, "common.entity.wild.aggressive.hakulaq")),
(5, (2, 3, "common.entity.wild.peaceful.duck")),
(5, (1, 2, "common.entity.wild.peaceful.goose")),
(5, (1, 1, "common.entity.wild.peaceful.turtle")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -1,16 +0,0 @@
SpawnEntry (
name: "Temperate water wildlife.",
note: "River inhabitants",
rules: [
Pack(
groups: [
(1, (3, 4, "common.entity.wild.peaceful.marlin")),
(1, (3, 4, "common.entity.wild.peaceful.piranha")),
(1, (3, 4, "common.entity.wild.peaceful.clownfish")),
(1, (1, 1, "common.entity.wild.peaceful.puffin")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -5,20 +5,36 @@ SpawnEntry (
Pack(
groups: [
// Aggressive
(1, (1, 1, "common.entity.wild.aggressive.bear")),
(1, (1, 1, "common.entity.wild.aggressive.tarasque")),
(1, (1, 1, "common.entity.wild.aggressive.wood_raptor")),
(1, (1, 1, "common.entity.wild.aggressive.deadwood")),
(1, (1, 1, "common.entity.wild.aggressive.saber")),
(1, (1, 1, "common.entity.wild.aggressive.weevil")),
(5, (1, 1, "common.entity.wild.aggressive.weevil")),
// Peaceful
(1, (1, 1, "common.entity.wild.peaceful.leaf_beetle")),
(1, (1, 1, "common.entity.wild.peaceful.bushly")),
(1, (1, 1, "common.entity.wild.peaceful.mossy_snail")),
(1, (1, 1, "common.entity.wild.peaceful.treant_sapling")),
(5, (1, 1, "common.entity.wild.peaceful.skunk")),
(5, (1, 4, "common.entity.wild.peaceful.crow")),
(5, (1, 1, "common.entity.wild.peaceful.leaf_beetle")),
(5, (1, 7, "common.entity.wild.peaceful.deer")),
(5, (1, 7, "common.entity.wild.peaceful.rabbit")),
(5, (1, 2, "common.entity.wild.peaceful.squirrel")),
(5, (1, 1, "common.entity.wild.peaceful.mossy_snail")),
(5, (1, 1, "common.entity.wild.peaceful.treant_sapling")),
(5, (1, 1, "common.entity.wild.peaceful.raccoon")),
(5, (1, 1, "common.entity.wild.peaceful.turtle")),
(5, (1, 2, "common.entity.wild.peaceful.frog")),
(5, (1, 2, "common.entity.wild.peaceful.fungome")),
(1, (1, 1, "common.entity.wild.peaceful.hirdrasil")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],
day_period: [Morning, Noon, Evening],
),
Pack(
groups: [
// Solitary
(1, (1, 1, "common.entity.wild.peaceful.forest_fox")),
// Pack
(1, (1, 3, "common.entity.wild.peaceful.rat")),
(1, (1, 3, "common.entity.wild.peaceful.squirrel")),
(1, (1, 3, "common.entity.wild.peaceful.raccoon")),
],
spawn_mode: Land,
day_period: [Night],
),
],
)

View File

@ -0,0 +1,14 @@
SpawnEntry (
name: "Tropical Ocean beach wildlife.",
note: "Beach inhabitants",
rules: [
Pack(
groups: [
(3, (1, 3, "common.entity.wild.aggressive.sea_crocodile")),
(1, (1, 1, "common.entity.wild.aggressive.reefsnapper")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -1,11 +1,10 @@
SpawnEntry (
name: "Ocean water wildlife.",
name: "Tropical Ocean wildlife.",
note: "Ocean inhabitants",
rules: [
Pack(
groups: [
(3, (1, 3, "common.entity.wild.aggressive.sea_crocodile")),
(1, (1, 1, "common.entity.wild.aggressive.reefsnapper")),
(3, (3, 4, "common.entity.wild.peaceful.clownfish")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],

View File

@ -4,9 +4,14 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (1, 2, "common.entity.wild.aggressive.male_lion")),
(1, (1, 3, "common.entity.wild.aggressive.hyena")),
(1, (1, 1, "common.entity.wild.peaceful.dodo")),
(5, (1, 2, "common.entity.wild.aggressive.male_lion")),
(5, (1, 3, "common.entity.wild.aggressive.hyena")),
(5, (3, 6, "common.entity.wild.peaceful.zebra")),
(5, (3, 6, "common.entity.wild.peaceful.antelope")),
(5, (1, 1, "common.entity.wild.peaceful.porcupine")),
(5, (1, 1, "common.entity.wild.peaceful.pangolin")),
(5, (1, 1, "common.entity.wild.aggressive.tarantula")),
(1, (1, 1, "common.entity.wild.aggressive.ngoubou")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -4,9 +4,17 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (1, 2, "common.entity.wild.peaceful.frog")),
(1, (1, 2, "common.entity.wild.peaceful.axolotl")),
(1, (1, 2, "common.entity.wild.peaceful.fungome")),
(5, (3, 4, "common.entity.wild.peaceful.piranha")),
(5, (1, 2, "common.entity.wild.peaceful.axolotl")),
(4, (1, 2, "common.entity.wild.aggressive.alligator")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],
),
Pack(
groups: [
(2, (1, 1, "common.entity.wild.peaceful.kelpie")),
(2, (1, 1, "common.entity.wild.aggressive.crocodile")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],

View File

@ -1,12 +1,13 @@
SpawnEntry (
name: "Tundra rare animals.",
name: "Tundra core animals.",
note: "Search for them in the heart of tundra.",
rules: [
Pack(
groups: [
(15, (1, 1, "common.entity.wild.aggressive.snow_raptor")),
(1, (1, 1, "common.entity.wild.aggressive.snow_raptor")),
(1, (1, 1, "common.entity.wild.aggressive.wendigo")),
(1, (2, 6, "common.entity.wild.peaceful.mammoth")),
(1, (1, 3, "common.entity.wild.peaceful.yak")),
(1, (1, 1, "common.entity.wild.aggressive.mountain_troll")),
],
spawn_mode: Land,

View File

@ -0,0 +1,21 @@
SpawnEntry (
name: "Tundra river wildlife.",
note: "",
rules: [
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.hakulaq")),
(1, (1, 2, "common.entity.wild.aggressive.icepike")),
],
spawn_mode: Water,
day_period: [Night, Morning, Noon, Evening],
),
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.hakulaq")),
],
spawn_mode: Ice,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -4,7 +4,6 @@ SpawnEntry (
rules: [
Pack(
groups: [
(1, (1, 1, "common.entity.wild.peaceful.jackalope")),
(1, (1, 1, "common.entity.wild.peaceful.arctic_hare")),
],
spawn_mode: Land,

View File

@ -1,20 +1,27 @@
SpawnEntry (
name: "Tundra animals.",
name: "Tundra snow animals.",
note: "Usually you can find them in snowy areas.",
rules: [
Pack(
groups: [
(1, (1, 3, "common.entity.wild.aggressive.frostfang")),
(1, (1, 1, "common.entity.wild.aggressive.akhlut")),
(1, (1, 1, "common.entity.wild.aggressive.icedrake")),
(1, (1, 3, "common.entity.wild.aggressive.snow_raptor")),
(1, (1, 1, "common.entity.wild.aggressive.roshwalr")),
(5, (5, 20, "common.entity.wild.peaceful.penguin")),
(5, (5, 10, "common.entity.wild.peaceful.seal")),
(1, (1, 1, "common.entity.wild.peaceful.snowy_owl")),
(1, (1, 1, "common.entity.wild.peaceful.arctic_fox")),
],
spawn_mode: Land,
day_period: [Night, Morning, Noon, Evening],
),
Pack(
groups: [
(1, (1, 1, "common.entity.wild.aggressive.akhlut")),
(1, (1, 1, "common.entity.wild.aggressive.icedrake")),
(1, (1, 1, "common.entity.wild.aggressive.roshwalr")),
],
spawn_mode: Ice,
day_period: [Night, Morning, Noon, Evening],
),
],
)

View File

@ -211,6 +211,18 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
("world.wildlife.spawn.tundra.forest", |c, col| {
close(c.temp, CONFIG.snow_temp, 0.3) * col.tree_density * BASE_DENSITY * 1.4
}),
// River wildlife
("world.wildlife.spawn.tundra.river", |c, col| {
close(col.temp, CONFIG.snow_temp, 0.3)
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt > CONFIG.sea_level + 20.0
{
0.001
} else {
0.0
}
}),
// Forest animals event
(
"world.wildlife.spawn.calendar.christmas.tundra.forest",
@ -264,15 +276,37 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
("world.wildlife.spawn.taiga.water", |c, col| {
close(c.temp, CONFIG.snow_temp, 0.15) * col.tree_density * BASE_DENSITY * 5.0
}),
// River wildlife
("world.wildlife.spawn.taiga.river", |c, col| {
close(col.temp, CONFIG.snow_temp + 0.2, 0.6)
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt > CONFIG.sea_level + 20.0
{
0.001
} else {
0.0
}
}),
// **Temperate**
// Area rare
("world.wildlife.spawn.temperate.rare", |c, _col| {
close(c.temp, CONFIG.temperate_temp, 0.8) * BASE_DENSITY * 0.08
}),
// Plains
("world.wildlife.spawn.temperate.plains", |c, _col| {
close(c.temp, CONFIG.temperate_temp, 0.8)
* close(c.tree_density, 0.0, 0.1)
* BASE_DENSITY
* 4.0
}),
// River wildlife
("world.wildlife.spawn.temperate.river", |_c, col| {
("world.wildlife.spawn.temperate.river", |c, col| {
close(col.temp, CONFIG.temperate_temp, 0.6)
* if col.water_dist.map(|d| d < 10.0).unwrap_or(false) {
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt > CONFIG.sea_level + 20.0
{
0.001
} else {
0.0
@ -280,7 +314,7 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
}),
// Forest animals
("world.wildlife.spawn.temperate.wood", |c, col| {
close(c.temp, CONFIG.temperate_temp + 0.1, 0.5) * col.tree_density * BASE_DENSITY * 1.0
close(c.temp, CONFIG.temperate_temp + 0.1, 0.5) * col.tree_density * BASE_DENSITY * 3.0
}),
// Rainforest animals
("world.wildlife.spawn.temperate.rainforest", |c, _col| {
@ -308,9 +342,28 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
* 4.0
},
),
// Water animals
("world.wildlife.spawn.temperate.water", |c, col| {
close(c.temp, CONFIG.temperate_temp, 1.0) * col.tree_density * BASE_DENSITY * 5.0
// Ocean animals
("world.wildlife.spawn.temperate.ocean", |_c, col| {
close(col.temp, CONFIG.temperate_temp, 1.0) / 10.0
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& matches!(col.chunk.get_biome(), BiomeKind::Ocean)
{
0.001
} else {
0.0
}
}),
// Ocean beach animals
("world.wildlife.spawn.temperate.beach", |c, col| {
close(col.temp, CONFIG.temperate_temp, 1.0) / 10.0
* if col.water_dist.map(|d| d < 30.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt < CONFIG.sea_level + 2.0
{
0.001
} else {
0.0
}
}),
// **Jungle**
// Rainforest animals
@ -347,19 +400,13 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
},
),
// **Tropical**
// Rare river animals
("world.wildlife.spawn.tropical.river_rare", |_c, col| {
close(col.temp, CONFIG.tropical_temp + 0.2, 0.5)
* if col.water_dist.map(|d| d < 10.0).unwrap_or(false) {
0.0001
} else {
0.0
}
}),
// River animals
("world.wildlife.spawn.tropical.river", |_c, col| {
("world.wildlife.spawn.tropical.river", |c, col| {
close(col.temp, CONFIG.tropical_temp, 0.5)
* if col.water_dist.map(|d| d < 10.0).unwrap_or(false) {
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt > CONFIG.sea_level + 20.0
{
0.001
} else {
0.0
@ -369,7 +416,19 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
("world.wildlife.spawn.tropical.ocean", |_c, col| {
close(col.temp, CONFIG.tropical_temp, 0.1) / 10.0
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& matches!(col.chunk.get_biome(), BiomeKind::Ocean)
{
0.001
} else {
0.0
}
}),
// Ocean beach animals
("world.wildlife.spawn.tropical.beach", |c, col| {
close(col.temp, CONFIG.tropical_temp, 1.0) / 10.0
* if col.water_dist.map(|d| d < 30.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt < CONFIG.sea_level + 2.0
{
0.001
} else {
@ -378,7 +437,7 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
}),
// Arctic ocean animals
("world.wildlife.spawn.arctic.ocean", |_c, col| {
close(col.temp, 0.0, 0.25) / 10.0
close(col.temp, CONFIG.snow_temp, 0.25) / 10.0
* if matches!(col.chunk.get_biome(), BiomeKind::Ocean) {
0.001
} else {
@ -431,10 +490,13 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
* 1.3
}),
// River animals
("world.wildlife.spawn.desert.river", |_c, col| {
("world.wildlife.spawn.desert.river", |c, col| {
close(col.temp, CONFIG.desert_temp + 0.2, 0.3)
* if col.water_dist.map(|d| d < 10.0).unwrap_or(false) {
0.0001
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false)
&& !matches!(col.chunk.get_biome(), BiomeKind::Ocean)
&& c.alt > CONFIG.sea_level + 20.0
{
0.001
} else {
0.0
}