add groups and node validation

This commit is contained in:
flux 2023-07-20 09:30:15 -07:00
parent f18e089bac
commit 74577517ec
Signed by: flux
GPG Key ID: 9333B27816848A15
18 changed files with 236 additions and 123 deletions

View File

@ -1,5 +1,6 @@
spawnit.register({
entity_name = "mobs_monster:dungeon_master",
groups = { monster = 1 },
chance = 300 * 7000 / 6000,
on = {"caverealms:hot_cobble"},
max_y = -8000,
@ -15,4 +16,4 @@ spawnit.register({
ent.shoot_interval = 1.5
ent.dogshoot_switch = 0
end,
})
}, true)

View File

@ -7,6 +7,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "flower_cow:flower_cow",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 80000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
@ -16,4 +17,4 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)

View File

@ -1,5 +1,7 @@
yl_spawnit = fmod.create()
for mod in pairs(yl_spawnit.has) do
yl_spawnit.dofile(mod)
for mod, has in pairs(yl_spawnit.has) do
if has then
yl_spawnit.dofile(mod)
end
end

View File

@ -9,6 +9,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "mobs_animal:bee",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 7000) / BASE_CHANCE_RATIO,
near = { "group:flower" },
on = { "any" },
@ -18,20 +19,22 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:bunny",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
min_y = 5,
max_y = 200,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:chicken",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
@ -41,10 +44,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:cow",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
@ -54,10 +58,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:kitten",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 10000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
@ -66,20 +71,22 @@ spawnit.register({
min_time_of_day = DUSK,
max_time_of_day = DAWN,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:panda",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout" },
min_y = 10,
max_y = 80,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:penguin",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 20000) / BASE_CHANCE_RATIO,
on = { "default:snowblock", "default:ice" },
min_y = 0,
@ -88,16 +95,17 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:rat",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
min_light = 3,
max_light = 9,
max_y = 0,
max_in_area = MAX_IN_AREA,
})
}, true)
local function make_child(obj, ent)
local textures = ent.base_texture
@ -175,6 +183,7 @@ spawnit.register({
["mobs_animal:sheep_grey"] = 1,
["mobs_animal:sheep_dark_grey"] = 1,
},
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 12000) / BASE_CHANCE_RATIO,
cluster = 4,
on = { "group:soil" },
@ -186,10 +195,11 @@ spawnit.register({
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
after_spawn = after_spawn_sheep,
})
}, true)
spawnit.register({
entity_name = "mobs_animal:pumba",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
on = { "default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass", "default:dirt_with_rainforest_litter", "ethereal:mushroom_dirt" },
near = { "group:mushroom", "group:grass" },
@ -197,4 +207,4 @@ spawnit.register({
max_y = 200,
min_light = 2,
max_in_area = MAX_IN_AREA,
})
}, true)

View File

@ -4,6 +4,7 @@ local base_chance = 7200
spawnit.register({
entity_name = "mobs_balrog:balrog",
groups = { monster = 1 },
chance = base_chance,
within = { "breathable" },
on = { "node" },
@ -15,10 +16,11 @@ spawnit.register({
max_in_area_radius = 128,
min_player_distance = 24,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_balrog:balrog",
groups = { monster = 1 },
chance = base_chance / 2,
within = { "breathable" },
on = { "node" },
@ -30,4 +32,4 @@ spawnit.register({
max_in_area_radius = 128,
min_player_distance = 24,
spawn_in_protected = false,
})
}, true)

View File

@ -1,6 +1,7 @@
spawnit.register({
entity_name = "mobs_banshee:banshee",
groups = { monster = 1 },
chance = 300,
within = { "breathable" },
on = { "any" },
@ -8,4 +9,4 @@ spawnit.register({
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -1,10 +1,11 @@
spawnit.register({
entity_name = "mobs_gazer:gazer" ,
entity_name = "mobs_gazer:gazer",
groups = { monster = 1 },
chance = 300,
on = { "node" },
max_y = -500,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -12,6 +12,7 @@ end
spawnit.register({
entity_name = "mobs_ghost_redo:ghost",
groups = { monster = 1 },
chance = 300,
within = { "any" },
on = { "any" },
@ -21,4 +22,4 @@ spawnit.register({
max_time_of_day = DAWN,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -1,8 +1,9 @@
spawnit.register({
entity_name = "mobs_mime:mime",
groups = { monster = 1 },
chance = 300,
max_in_area = 1,
within = { "not walkable" },
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -6,6 +6,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "mobs_monster:dirt_monster",
groups = { monster = 1 },
on = {"group:soil"},
chance = BASE_CHANCE * 6000 / BASE_CHANCE_RATIO,
min_y = 0,
@ -15,21 +16,23 @@ spawnit.register({
max_in_area = 2,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:dungeon_master",
groups = { monster = 1 },
chance = BASE_CHANCE * 9000 / BASE_CHANCE_RATIO,
max_y = -70,
max_light = 5,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
if yl_spawnit.has.nether and nether.DEPTH_FLOOR > -70 then
spawnit.register({
entity_name = "mobs_monster:dungeon_master",
groups = { monster = 1 },
chance = 300,
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
@ -37,126 +40,137 @@ if yl_spawnit.has.nether and nether.DEPTH_FLOOR > -70 then
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
end
spawnit.register({
entity_name = "mobs_monster:fire_spirit",
groups = { monster = 1 },
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
on = {"default:obsidian", "caverealms:hot_cobble"},
near = {"group:fire"},
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
max_y = -150,
min_light = 12,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:land_guard",
groups = { monster = 1 },
chance = BASE_CHANCE * 25000 / BASE_CHANCE_RATIO,
on = {
"default:snow", "default:ice", "default:stone",
"default:dry_dirt_with_dry_grass", "ethereal:dry_dirt"
},
chance = BASE_CHANCE * 25000 / BASE_CHANCE_RATIO,
min_y = 0,
max_light = 7,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:lava_flan",
groups = { monster = 1 },
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
within = {"default:lava_source"},
on = { "any" },
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
max_y = 0,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:mese_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 5000 / BASE_CHANCE_RATIO,
on = { "any" },
near = { "default:mese", "default:stone_with_mese"},
chance = BASE_CHANCE * 5000 / BASE_CHANCE_RATIO,
max_y = -20,
max_light = 7,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:oerkki",
on = { "group:cracky", "group:crumbly" },
groups = { monster = 1 },
chance = BASE_CHANCE * 6000 / BASE_CHANCE_RATIO,
on = { "group:cracky", "group:crumbly" },
max_y = -10,
max_light = 6,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:oerkki",
on = { "group:cracky", "group:crumbly" },
groups = { monster = 1 },
chance = BASE_CHANCE * 3000 / BASE_CHANCE_RATIO,
on = { "group:cracky", "group:crumbly" },
max_y = -10000,
max_light = 6,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:oerkki",
on = { "group:cracky", "group:crumbly" },
groups = { monster = 1 },
chance = BASE_CHANCE * 1000 / BASE_CHANCE_RATIO,
on = { "group:cracky", "group:crumbly" },
max_y = -25000,
max_light = 6,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:sand_monster",
on = {"default:desert_sand"},
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"default:desert_sand"},
min_y = 0,
max_light = 7,
max_in_area = 2,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:spider",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"default:dirt_with_rainforest_litter", "default:snowblock",
"default:snow", "ethereal:crystal_dirt", "ethereal:cold_dirt"},
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
min_y = 25,
max_light = 8,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:spider",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
max_y = -40,
max_light = 7,
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:stone_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"default:stone", "default:desert_stone", "default:sandstone"},
max_y = 0,
@ -164,10 +178,11 @@ spawnit.register({
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:tree_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"group:soil"},
near = {"group:tree", "group:leaves"},
@ -179,10 +194,11 @@ spawnit.register({
max_time_of_day = DAWN,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "mobs_monster:tree_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"group:leaves"},
min_y = 0,
@ -192,4 +208,4 @@ spawnit.register({
max_time_of_day = DAWN,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -3,6 +3,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "mobs_others:snow_walker",
groups = { monster = 1 },
chance = 300,
on = {"default:dirt_with_snow",
"default:permafrost",
@ -18,6 +19,6 @@ spawnit.register({
max_time_of_day = DAWN,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
-- the ice monsters are automatically spawned w/ the snow walkers

View File

@ -6,4 +6,4 @@ spawnit.register({
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -1,5 +1,6 @@
spawnit.register({
entity_name = "nether_mobs:dragon",
groups = { monster = 1 },
chance = 150000,
cluster = 1,
on = {"any"},
@ -7,10 +8,11 @@ spawnit.register({
max_y = nether.DEPTH_CEILING,
min_player_distance = 16,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "nether_mobs:netherman",
groups = { monster = 1 },
chance = 15,
cluster = 2,
on = {"nether:sand", "nether:rack"},
@ -18,4 +20,4 @@ spawnit.register({
max_y = nether.DEPTH_CEILING,
min_player_distance = 5,
spawn_in_protected = false,
})
}, true)

138
petz.lua
View File

@ -9,6 +9,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "petz:bat",
groups = { animal = 1 },
chance = BASE_CHANCE,
within = { "breathable airlike" },
on = { "any" },
@ -17,10 +18,11 @@ spawnit.register({
min_time_of_day = DUSK,
max_time_of_day = DAWN,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:beaver",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
within = { "default:river_water_source" },
on = { "any" },
@ -30,20 +32,22 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:bunny",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 3,
on = { "group:soil" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:butterfly",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "any" },
near = { "group:flower" },
@ -53,10 +57,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:calf",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 3,
on = { "group:soil" },
@ -66,10 +71,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:camel",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "group:sand", "default:desert_sandstone", "default:sandstone" },
min_y = 0,
@ -78,10 +84,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:chimp",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_rainforest_litter", "ethereal:jungle_dirt", "default:jungleleaves", "moretrees:jungletree_leaves_yellow", "moretrees:jungletree_leaves_red", "ethereal:palmleaves", "moretrees:date_palm_leaves", "moretrees:palm_leaves" },
min_y = 0,
@ -90,10 +97,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:clownfish",
groups = { animal = 1 },
chance = BASE_CHANCE,
cluster = 3,
within = { "default:water_source" },
@ -103,10 +111,11 @@ spawnit.register({
max_y = 5000,
min_light = 2,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:dolphin",
groups = { animal = 1 },
chance = BASE_CHANCE,
cluster = 3,
within = { "default:water_source" },
@ -115,10 +124,11 @@ spawnit.register({
max_y = 5000,
min_light = 2,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:ducky",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "group:soil", "group:water" },
min_y = 0,
@ -127,28 +137,31 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:elephant",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_rainforest_litter","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt","ethereal:jungle_dirt" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:elephant_female",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_rainforest_litter","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt","ethereal:jungle_dirt" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:flamingo",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
on = { "default:dirt_with_coniferous_litter","default:dirt_with_grass","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass" },
min_y = 0,
@ -157,19 +170,21 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:foxy",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
on = { "group:soil" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:frog",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "default:dirt_with_grass","default:dirt_with_rainforest_litter","ethereal:bamboo_dirt","ethereal:grove_dirt","ethereal:jungle_dirt","ethereal:prairie_dirt","woodsoils:grass_with_leaves_1","woodsoils:grass_with_leaves_2" },
min_y = 0,
@ -178,10 +193,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:gecko",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
on = { "default:dirt_with_coniferous_litter","default:dirt_with_grass","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass" },
min_y = 0,
@ -190,10 +206,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:goat",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 3,
on = { "group:soil" },
@ -203,10 +220,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:grizzly",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_grass","default:dirt_with_rainforest_litter","ethereal:bamboo_dirt","ethereal:grove_dirt","ethereal:jungle_dirt","ethereal:prairie_dirt","woodsoils:grass_with_leaves_1","woodsoils:grass_with_leaves_2" },
min_y = 0,
@ -214,19 +232,21 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:hamster",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "group:sand","default:desert_sandstone","default:sandstone" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:hen",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "group:soil" },
min_y = 0,
@ -235,10 +255,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:kitty",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "group:soil" },
min_y = 0,
@ -246,10 +267,11 @@ spawnit.register({
min_time_of_day = DUSK,
max_time_of_day = DAWN,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:lamb",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 3,
on = { "group:soil" },
@ -259,10 +281,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:leopard",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt" },
min_y = 0,
@ -270,10 +293,11 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:lion",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt" },
min_y = 0,
@ -281,10 +305,11 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:moth",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
on = { "any" },
min_y = 0,
@ -292,10 +317,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:mr_pumpkin",
groups = { monster = 1 },
chance = BASE_CHANCE / 0.1,
on = { "group:soil","group:stone" },
max_y = 5000,
@ -305,20 +331,22 @@ spawnit.register({
return os.date("*t").month == 10
end,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:panda",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = {"group:soil"},
near = {"ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout"},
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:parrot",
groups = { animal = 1 },
chance = BASE_CHANCE/ 0.8,
on = { "any" },
near = { "default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
@ -328,10 +356,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:penguin",
groups = { animal = 1 },
chance = BASE_CHANCE,
cluster = 3,
on = { "default:snowblock","default:ice" },
@ -341,10 +370,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:pigeon",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "any" },
min_y = 0,
@ -353,20 +383,22 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:piggy",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 3,
on = { "group:soil" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:polar_bear",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
min_y = 0,
@ -374,10 +406,11 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:pony",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
cluster = 5,
on = { "group:soil" },
@ -387,10 +420,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:puppy",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
on = { "group:soil" },
min_y = 0,
@ -399,19 +433,21 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:queen_ant",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.4,
on = { "group:soil" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:queen_bee",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.4,
on = { "any" },
near = { "group:flower" },
@ -421,10 +457,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:rat",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE / 0.2,
on = { "group:soil","group:stone","rainbow_source:black_water_source" },
max_y = 5000,
@ -432,10 +469,11 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:santa_killer",
groups = { monster = 1 },
chance = BASE_CHANCE / 0.1,
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
min_y = -32,
@ -446,19 +484,21 @@ spawnit.register({
return os.date("*t").month == 12
end,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:silkworm",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "group:leaves" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:snow_leopard",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
min_y = 20,
@ -466,10 +506,11 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:squirrel",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
cluster = 3,
on = { "group:leaves", "group:tree" },
@ -479,20 +520,22 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:tarantula",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
on = { "group:stone","default:dirt_with_rainforest_litter","ethereal:jungle_dirt","default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
max_y = 5000,
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:toucan",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.8,
on = { "any" },
near = { "default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
@ -502,10 +545,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:tropicalfish",
groups = { animal = 1 },
chance = BASE_CHANCE,
within = { "default:water_source" },
on = { "any" },
@ -514,10 +558,11 @@ spawnit.register({
max_y = 5000,
min_light = 2,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:turtle",
groups = { animal = 1 },
chance = BASE_CHANCE / 0.6,
within = { "group:water" },
on = { "any" },
@ -527,10 +572,11 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)
spawnit.register({
entity_name = "petz:wolf",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE,
cluster = 4,
on = { "group:soil" },
@ -539,4 +585,4 @@ spawnit.register({
min_player_distance = 12,
spawn_in_protected = false,
max_in_area = MAX_IN_AREA,
})
}, true)

View File

@ -1,5 +1,6 @@
spawnit.register({
entity_name = "scorpion:big",
groups = { monster = 1 },
chance = 500,
on = {"default:desert_sand"},
min_y = -10,
@ -8,10 +9,11 @@ spawnit.register({
max_in_area = 5,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "scorpion:boss",
groups = { monster = 1 },
chance = 5000,
on = {"default:desert_stone"},
min_y = 0,
@ -20,10 +22,11 @@ spawnit.register({
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "scorpion:little",
groups = { monster = 1 },
chance = 300,
on = {"default:desert_sand", "default:dirt_with_rainforest_litter", "default:dry_dirt_with_dry_grass"},
min_y = -10,
@ -31,4 +34,4 @@ spawnit.register({
max_in_area = 5,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)

View File

@ -25,6 +25,7 @@ table.insert_all(water_life.no_spawn_table, {
if water_life.swampz then
spawnit.register({
entity_name = "water_life:alligator",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"default:river_water_source"},
@ -37,11 +38,12 @@ if water_life.swampz then
max_time_of_day = DUSK,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
end
spawnit.register({
entity_name = "water_life:beaver",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"any"},
@ -52,20 +54,22 @@ spawnit.register({
max_in_area_radius = 32,
min_time_of_day = DAWN,
max_time_of_day = DUSK,
})
}, true)
spawnit.register({
entity_name = "water_life:clams",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
near = {"water_life:seagrassgreen","water_life:seagrassred"},
min_y = -50,
max_y = 1,
max_in_area = 15,
})
}, true)
spawnit.register({
entity_name = "water_life:clownfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"any"},
@ -87,10 +91,11 @@ spawnit.register({
min_y = -50,
max_y = 1,
min_light = 12,
})
}, true)
spawnit.register({
entity_name = "water_life:coralfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
min_y = -50,
@ -112,10 +117,11 @@ spawnit.register({
"water_life:coralmagenta",
"water_life:coralskyblue",
},
})
}, true)
spawnit.register({
entity_name = "water_life:croc",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
@ -128,10 +134,11 @@ spawnit.register({
max_time_of_day = DUSK,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "water_life:gecko",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
near = {"group:tree","group:leaves","default:junglegrass"},
min_y = 0,
@ -141,10 +148,11 @@ spawnit.register({
max_in_area_radius = 32,
min_time_of_day = DAWN,
max_time_of_day = DUSK,
})
}, true)
spawnit.register({
entity_name = "water_life:gull",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
on = {"any"},
min_y = 0,
@ -154,10 +162,11 @@ spawnit.register({
max_in_area_radius = 32,
min_time_of_day = DAWN,
max_time_of_day = DUSK,
})
}, true)
spawnit.register({
entity_name = "water_life:jellyfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
@ -165,10 +174,11 @@ spawnit.register({
max_y = 1,
max_in_area = 5,
max_in_area_radius = 32,
})
}, true)
spawnit.register({
entity_name = "water_life:piranha",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"any"},
@ -176,10 +186,11 @@ spawnit.register({
max_y = 150,
max_in_area = 3,
max_in_area_radius = 32,
})
}, true)
spawnit.register({
entity_name = "water_life:fish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"default:river_water_source"},
@ -187,10 +198,11 @@ spawnit.register({
max_y = 150,
max_in_area = 3,
max_in_area_radius = 32,
})
}, true)
spawnit.register({
entity_name = "water_life:urchin",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
near = {
@ -212,10 +224,11 @@ spawnit.register({
max_y = 1,
max_in_area = 16,
max_in_area_radius = 32,
})
}, true)
spawnit.register({
entity_name = "water_life:shark",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
@ -225,10 +238,11 @@ spawnit.register({
max_in_area_radius = 32,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "water_life:snake",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE * 1,
on = {
"default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass", "default:dirt_with_rainforest_litter",
@ -240,10 +254,12 @@ spawnit.register({
max_in_area = 5,
min_time_of_day = DAWN,
max_time_of_day = DUSK,
})
spawn_in_protected = false,
}, true)
spawnit.register({
entity_name = "water_life:whale",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
@ -252,4 +268,4 @@ spawnit.register({
max_in_area = 1,
max_in_area_radius = 32,
spawn_in_protected = false,
})
}, true)

View File

@ -7,6 +7,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "yl_commons:biome_cow",
groups = { animal = 1 },
chance = BASE_CHANCE * (60 * 80000) / BASE_CHANCE_RATIO,
on = { "group:soil" },
near = { "group:grass" },
@ -16,4 +17,4 @@ spawnit.register({
min_time_of_day = DAWN,
max_time_of_day = DUSK,
max_in_area = MAX_IN_AREA,
})
}, true)

View File

@ -1,5 +1,6 @@
spawnit.register({
entity_name = "yl_nether_mobs:blaze",
groups = { monster = 1 },
chance = 30.6,
cluster = 4,
on = {"nether:lava_crust"},
@ -8,10 +9,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 5,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:iron_golem",
groups = { monster = 1 },
chance = 13.7 * 2,
cluster = 4,
on = {"nether:rack_deep", "nether:rack"},
@ -20,10 +22,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 5,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:ogre",
groups = { monster = 1 },
chance = 13.3 * 2,
cluster = 5,
on = {"nether:rack_deep", "nether:rack"},
@ -32,10 +35,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 5,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:rat",
groups = { monster = 1 },
chance = 12.7 * 2,
cluster = 3,
on = {"nether:rack_deep", "nether:rack"},
@ -44,10 +48,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 5,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:witherskeleton",
groups = { monster = 1 },
chance = 20.1 * 2,
cluster = 6,
on = {"nether:rack", "nether:sand","nether:basalt", "nether:rack_deep"},
@ -56,10 +61,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 10,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:evoker",
groups = { monster = 1 },
chance = 27.3,
cluster = 3,
on = {
@ -74,10 +80,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 10,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:whip",
groups = { monster = 1 },
chance = 20.3,
cluster = 5,
on = {"nether:rack_deep","yl_nether:rack_deep_with_electrum", "yl_nether:rack_deep_with_electrumite"},
@ -86,10 +93,11 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 9,
spawn_in_protected = false,
})
}, true)
spawnit.register({
entity_name = "yl_nether_mobs:wither",
groups = { monster = 1 },
chance = 25.7,
cluster = 2,
on = {"nether:rack", "nether:sand", "nether:rack_deep", "nether:lava_crust"},
@ -98,4 +106,4 @@ spawnit.register({
max_in_area = 6,
min_player_distance = 12,
spawn_in_protected = false,
})
}, true)