yl_spawnit/mobs_monster.lua

231 lines
6.1 KiB
Lua
Raw Normal View History

2023-07-20 01:07:27 +02:00
local BASE_CHANCE_RATIO = 6000 -- dirt monster
spawnit.register({
entity_name = "mobs_monster:dirt_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 18:36:19 +02:00
on = { "group:soil" },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 6000 / BASE_CHANCE_RATIO,
2023-07-20 01:07:27 +02:00
min_y = 0,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 20:11:17 +02:00
min_time_of_day = yl_spawnit.dusk,
max_time_of_day = yl_spawnit.dawn,
2023-07-20 01:07:27 +02:00
max_in_area = 2,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:dungeon_master",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 9000 / BASE_CHANCE_RATIO,
2023-07-20 01:07:27 +02:00
max_y = -70,
2023-07-23 00:47:38 +02:00
max_node_light = 5,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
if yl_spawnit.has.nether and nether.DEPTH_FLOOR > -70 then
spawnit.register({
entity_name = "mobs_monster:dungeon_master",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 01:07:27 +02:00
chance = 300,
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
2023-07-23 00:47:38 +02:00
max_node_light = 5,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
end
spawnit.register({
entity_name = "mobs_monster:fire_spirit",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 1500 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = { "default:obsidian", "caverealms:hot_cobble" },
near = { "group:fire" },
2023-07-20 01:07:27 +02:00
max_y = -150,
2023-07-23 00:47:38 +02:00
min_node_light = 12,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:land_guard",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 25000 / BASE_CHANCE_RATIO,
2023-07-20 01:07:27 +02:00
on = {
2023-07-20 18:36:19 +02:00
"default:snow",
"default:ice",
"default:stone",
"default:dry_dirt_with_dry_grass",
"ethereal:dry_dirt",
},
2023-07-20 01:07:27 +02:00
min_y = 0,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:lava_flan",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 1500 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
within = { "default:lava_source" },
2023-07-20 01:07:27 +02:00
on = { "any" },
max_y = 0,
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:mese_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 5000 / BASE_CHANCE_RATIO,
2023-07-20 01:07:27 +02:00
on = { "any" },
2023-07-20 18:36:19 +02:00
near = { "default:mese", "default:stone_with_mese" },
2023-07-20 01:07:27 +02:00
max_y = -20,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:oerkki",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
chance = yl_spawnit.base_chance * 30000 / BASE_CHANCE_RATIO,
2023-07-20 18:30:15 +02:00
on = { "group:cracky", "group:crumbly" },
2023-07-20 01:07:27 +02:00
max_y = -10,
2023-07-23 00:47:38 +02:00
max_node_light = 6,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:oerkki",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
chance = yl_spawnit.base_chance * 15000 / BASE_CHANCE_RATIO,
2023-07-20 18:30:15 +02:00
on = { "group:cracky", "group:crumbly" },
2023-07-20 01:07:27 +02:00
max_y = -10000,
2023-07-23 00:47:38 +02:00
max_node_light = 6,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:oerkki",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
chance = yl_spawnit.base_chance * 5000 / BASE_CHANCE_RATIO,
2023-07-20 18:30:15 +02:00
on = { "group:cracky", "group:crumbly" },
2023-07-20 01:07:27 +02:00
max_y = -25000,
2023-07-23 00:47:38 +02:00
max_node_light = 6,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:sand_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 7000 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = { "default:desert_sand" },
2023-07-20 01:07:27 +02:00
min_y = 0,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 2,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:spider",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
chance = yl_spawnit.base_chance * 21000 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = {
"default:dirt_with_rainforest_litter",
"default:snowblock",
"default:snow",
"ethereal:crystal_dirt",
"ethereal:cold_dirt",
},
2023-07-20 01:07:27 +02:00
min_y = 25,
2023-07-23 00:47:38 +02:00
max_node_light = 8,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:spider",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 7000 / BASE_CHANCE_RATIO,
2023-07-20 01:07:27 +02:00
max_y = -40,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:stone_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
chance = yl_spawnit.base_chance * 35000 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = { "default:stone", "default:desert_stone", "default:sandstone" },
2023-07-20 01:07:27 +02:00
max_y = 0,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:tree_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 7000 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = { "group:soil" },
near = { "group:tree", "group:leaves" },
2023-07-20 01:07:27 +02:00
min_y = 0,
max_y = 5000,
2023-07-23 00:47:38 +02:00
max_node_light = 6,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 20:11:17 +02:00
min_time_of_day = yl_spawnit.dusk,
max_time_of_day = yl_spawnit.dawn,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)
2023-07-20 01:07:27 +02:00
spawnit.register({
entity_name = "mobs_monster:tree_monster",
2023-07-20 18:30:15 +02:00
groups = { monster = 1 },
2023-07-20 20:11:17 +02:00
chance = yl_spawnit.base_chance * 7000 / BASE_CHANCE_RATIO,
2023-07-20 18:36:19 +02:00
on = { "group:leaves" },
2023-07-20 01:07:27 +02:00
min_y = 0,
2023-07-23 00:47:38 +02:00
max_node_light = 7,
2023-07-20 01:07:27 +02:00
max_in_area = 1,
max_any_in_area = 6,
2023-07-20 20:11:17 +02:00
min_time_of_day = yl_spawnit.dusk,
max_time_of_day = yl_spawnit.dawn,
2023-07-20 01:07:27 +02:00
min_player_distance = 12,
spawn_in_protected = false,
}, yl_spawnit.settings.check_nodes)