diff --git a/assets/common/entity/wild/aggressive/akhlut.ron b/assets/common/entity/wild/aggressive/akhlut.ron new file mode 100644 index 0000000000..244b2bb79c --- /dev/null +++ b/assets/common/entity/wild/aggressive/akhlut.ron @@ -0,0 +1,11 @@ +EntityConfig ( + name: Automatic, + body: RandomWith("akhlut"), + alignment: Alignment(Enemy), + + loot: LootTable("common.loot_tables.creature.quad_medium.ice"), + + hands: Uninit, + + meta: [], +) diff --git a/assets/common/entity/wild/aggressive/icedrake.ron b/assets/common/entity/wild/aggressive/icedrake.ron new file mode 100644 index 0000000000..2ee1ec8d3c --- /dev/null +++ b/assets/common/entity/wild/aggressive/icedrake.ron @@ -0,0 +1,11 @@ +EntityConfig ( + name: Automatic, + body: RandomWith("icedrake"), + alignment: Alignment(Enemy), + + loot: LootTable("common.loot_tables.creature.quad_medium.ice"), + + hands: Uninit, + + meta: [], +) diff --git a/assets/common/entity/wild/peaceful/penguin.ron b/assets/common/entity/wild/peaceful/penguin.ron new file mode 100644 index 0000000000..4c8407afce --- /dev/null +++ b/assets/common/entity/wild/peaceful/penguin.ron @@ -0,0 +1,11 @@ +EntityConfig ( + name: Automatic, + body: RandomWith("penguin"), + alignment: Alignment(Wild), + + loot: LootTable("common.loot_tables.creature.quad_medium.gentle"), + + hands: Uninit, + + meta: [], +) diff --git a/assets/world/wildlife/spawn/tundra/snow.ron b/assets/world/wildlife/spawn/tundra/snow.ron index 41fd8a1f3e..a19ca64284 100644 --- a/assets/world/wildlife/spawn/tundra/snow.ron +++ b/assets/world/wildlife/spawn/tundra/snow.ron @@ -5,8 +5,11 @@ SpawnEntry ( 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, 3, "common.entity.wild.aggressive.roshwalr")), + (5, (1, 5, "common.entity.wild.peaceful.penguin")), ], is_underwater: false, day_period: [Night, Morning, Noon, Evening], diff --git a/server/src/rtsim/entity.rs b/server/src/rtsim/entity.rs index 062dd7a034..7c0e29a312 100644 --- a/server/src/rtsim/entity.rs +++ b/server/src/rtsim/entity.rs @@ -837,11 +837,11 @@ mod tests { // Bird Medium test for bird_med_species in BIRD_MEDIUM_ROSTER { let female_body = comp::bird_medium::Body { - species: bird_med_species, + species: *bird_med_species, body_type: comp::bird_medium::BodyType::Female, }; let male_body = comp::bird_medium::Body { - species: bird_med_species, + species: *bird_med_species, body_type: comp::bird_medium::BodyType::Male, }; diff --git a/world/src/layer/spot.rs b/world/src/layer/spot.rs index ce20d368ae..f19d7b922c 100644 --- a/world/src/layer/spot.rs +++ b/world/src/layer/spot.rs @@ -170,7 +170,7 @@ impl Spot { Self::generate_spots( Spot::GnarlingTotem, world, - 1000.0, + 2.0, |g, c| { g < 0.25 && !c.near_cliffs() @@ -474,10 +474,10 @@ pub fn apply_spots_to(canvas: &mut Canvas, _dynamic_rng: &mut impl Rng) { base_structures: Some("spots_grasslands.gnarling_totem"), entity_radius: 30.0, entities: &[ - (2..4, "common.entity.dungeon.tier-0.mugger"), - (2..4, "common.entity.dungeon.tier-0.stalker"), - (2..4, "common.entity.dungeon.tier-0.logger"), - (1..2, "common.entity.dungeon.tier-0.chieftain"), + (3..5, "common.entity.dungeon.tier-0.mugger"), + (3..5, "common.entity.dungeon.tier-0.stalker"), + (3..5, "common.entity.dungeon.tier-0.logger"), + (2..4, "common.entity.dungeon.tier-0.chieftain"), ], }, Spot::GnarlingTree => SpotConfig {