normalize mod

This commit is contained in:
flux 2023-07-20 09:36:19 -07:00
parent 74577517ec
commit 72d8b6e3e5
Signed by: flux
GPG Key ID: 9333B27816848A15
23 changed files with 993 additions and 123 deletions

14
.editorconfig Normal file
View File

@ -0,0 +1,14 @@
# See https://editorconfig.org/
root = true
[*]
charset = utf-8
end_of_line = lf
indent_style = space
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true
[*.{lua,luacheckrc}]
indent_style = tab

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
github: fluxionary

31
.github/workflows/pre-commit.yml vendored Normal file
View File

@ -0,0 +1,31 @@
name: pre-commit
on: [push, pull_request, workflow_dispatch]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/setup-python@master
- name: install luarocks
run: sudo apt-get install -y luarocks
- name: add luarocks path
run: echo "$HOME/.luarocks/bin" >> $GITHUB_PATH
- name: luacheck install
run: luarocks install --local luacheck
- name: install cargo
run: sudo apt-get install -y cargo
- name: install stylua
run: cargo install stylua
- name: Install pre-commit
run: pip3 install pre-commit
- name: Run pre-commit
run: pre-commit run --all-files

665
.luacheckrc Normal file
View File

@ -0,0 +1,665 @@
std = "lua51+luajit+minetest+yl_spawnit"
unused_args = false
max_line_length = 120
stds.minetest = {
read_globals = {
"DIR_DELIM",
"dump",
"dump2",
"INIT",
math = {
fields = {
abs = {},
acos = {},
asin = {},
atan = {},
atan2 = {},
ceil = {},
cos = {},
cosh = {},
deg = {},
exp = {},
factorial = {},
floor = {},
fmod = {},
frexp = {},
huge = {},
hypot = {},
ldexp = {},
log = {},
log10 = {},
max = {},
min = {},
modf = {},
pi = {},
pow = {},
rad = {},
random = {},
randomseed = {},
round = {},
sign = {},
sin = {},
sinh = {},
sqrt = {},
tan = {},
tanh = {},
},
},
table = {
fields = {
copy = {},
concat = {},
foreach = {},
foreachi = {},
getn = {},
indexof = {},
insert = {},
insert_all = {},
key_value_swap = {},
maxn = {},
move = {},
remove = {},
shuffle = {},
sort = {},
},
},
string = {
fields = {
byte = {},
char = {},
dump = {},
find = {},
format = {},
gmatch = {},
len = {},
lower = {},
match = {},
rep = {},
reverse = {},
split = {},
sub = {},
trim = {},
upper = {},
},
},
vector = {
fields = {
add = {},
angle = {},
apply = {},
check = {},
combine = {},
copy = {},
cross = {},
dir_to_rotation = {},
direction = {},
distance = {},
divide = {},
dot = {},
equals = {},
floor = {},
from_string = {},
length = {},
metatable = {},
multiply = {},
new = {},
normalize = {},
offset = {},
rotate = {},
rotate_around_axis = {},
round = {},
sort = {},
subtract = {},
to_string = {},
zero = {},
},
},
ItemStack = {
fields = {
add_item = {},
add_wear = {},
add_wear_by_uses = {},
clear = {},
get_count = {},
get_definition = {},
get_description = {},
get_free_space = {},
get_meta = {},
get_metadata = {},
get_name = {},
get_short_description = {},
get_stack_max = {},
get_tool_capabilities = {},
get_wear = {},
is_empty = {},
is_known = {},
item_fits = {},
peek_item = {},
replace = {},
set_count = {},
set_metadata = {},
set_name = {},
set_wear = {},
take_item = {},
to_string = {},
to_table = {},
},
},
PerlinNoise = {
fields = {
get_2d = {},
get_3d = {},
},
},
PerlinNoiseMap = {
fields = {
calc_2d_map = {},
calc_3d_map = {},
get_2d_map = {},
get_2d_map_flat = {},
get_3d_map = {},
get_3d_map_flat = {},
get_map_slice = {},
},
},
PseudoRandom = {
fields = {
next = {},
},
},
PcgRandom = {
fields = {
next = {},
rand_normal_dist = {},
},
},
SecureRandom = {
fields = {
next_bytes = {},
},
},
Settings = {
fields = {
get = {},
get_bool = {},
get_flags = {},
get_names = {},
get_np_group = {},
remove = {},
set = {},
set_bool = {},
set_np_group = {},
to_table = {},
write = {},
},
},
VoxelArea = {
fields = {
MaxEdge = {},
MinEdge = {},
contains = {},
containsi = {},
containsp = {},
getExtent = {},
getVolume = {},
index = {},
indexp = {},
iter = {},
iterp = {},
new = {},
position = {},
ystride = {},
zstride = {},
},
},
VoxelManip = {
fields = {
calc_lighting = {},
get_data = {},
get_emerged_area = {},
get_light_data = {},
get_node_at = {},
get_param2_data = {},
read_from_map = {},
set_data = {},
set_light_data = {},
set_lighting = {},
set_node_at = {},
set_param2_data = {},
update_liquids = {},
update_map = {},
was_modified = {},
write_to_map = {},
},
},
minetest = {
fields = {
CONTENT_AIR = {},
CONTENT_IGNORE = {},
CONTENT_UNKNOWN = {},
EMERGE_CANCELLED = {},
EMERGE_ERRORED = {},
EMERGE_FROM_DISK = {},
EMERGE_FROM_MEMORY = {},
EMERGE_GENERATED = {},
LIGHT_MAX = {},
MAP_BLOCKSIZE = {},
PLAYER_MAX_BREATH_DEFAULT = {},
PLAYER_MAX_HP_DEFAULT = {},
add_entity = {},
add_item = {},
add_node = {},
add_node_level = {},
add_particle = {},
add_particlespawner = {},
after = {},
async_event_handler = {},
async_jobs = {},
auth_reload = {},
ban_player = {},
builtin_auth_handler = {},
bulk_set_node = {},
calculate_knockback = {},
callback_origins = {},
cancel_shutdown_requests = {},
chat_send_all = {},
chat_send_player = {},
chatcommands = {},
check_for_falling = {},
check_password_entry = {},
check_player_privs = {},
check_single_for_falling = {},
clear_craft = {},
clear_objects = {},
clear_registered_biomes = {},
clear_registered_decorations = {},
clear_registered_ores = {},
clear_registered_schematics = {},
close_formspec = {},
colorize = {},
colorspec_to_bytes = {},
colorspec_to_colorstring = {},
compare_block_status = {},
compress = {},
cpdir = {},
craft_predict = {},
craftitemdef_default = {},
create_detached_inventory = {},
create_detached_inventory_raw = {},
create_schematic = {},
debug = {},
decode_base64 = {},
decompress = {},
delete_area = {},
delete_particlespawner = {},
deserialize = {},
detached_inventories = {},
dig_node = {},
dir_to_facedir = {},
dir_to_wallmounted = {},
dir_to_yaw = {},
disconnect_player = {},
do_async_callback = {},
do_item_eat = {},
dynamic_add_media = {},
dynamic_media_callbacks = {},
emerge_area = {},
encode_base64 = {},
encode_png = {},
env = {},
explode_scrollbar_event = {},
explode_table_event = {},
explode_textlist_event = {},
facedir_to_dir = {},
features = {},
find_node_near = {},
find_nodes_in_area = {},
find_nodes_in_area_under_air = {},
find_nodes_with_meta = {},
find_path = {},
fix_light = {},
forceload_block = {},
forceload_free_block = {},
format_chat_message = {},
formspec_escape = {},
generate_decorations = {},
generate_ores = {},
get_all_craft_recipes = {},
get_artificial_light = {},
get_auth_handler = {},
get_background_escape_sequence = {},
get_ban_description = {},
get_ban_list = {},
get_biome_data = {},
get_biome_id = {},
get_biome_name = {},
get_builtin_path = {},
get_color_escape_sequence = {},
get_connected_players = {},
get_content_id = {},
get_craft_recipe = {},
get_craft_result = {},
get_current_modname = {},
get_day_count = {},
get_decoration_id = {},
get_dig_params = {},
get_dir_list = {},
get_gametime = {},
get_gen_notify = {},
get_heat = {},
get_hit_params = {},
get_humidity = {},
get_inventory = {},
get_item_group = {},
get_last_run_mod = {},
get_mapgen_object = {},
get_mapgen_params = {},
get_mapgen_setting = {},
get_mapgen_setting_noiseparams = {},
get_meta = {},
get_mod_storage = {},
get_modnames = {},
get_modpath = {},
get_name_from_content_id = {},
get_natural_light = {},
get_node = {},
get_node_drops = {},
get_node_group = {},
get_node_level = {},
get_node_light = {},
get_node_max_level = {},
get_node_or_nil = {},
get_node_timer = {},
get_noiseparams = {},
get_objects_in_area = {},
get_objects_inside_radius = {},
get_password_hash = {},
get_perlin = {},
get_perlin_map = {},
get_player_by_name = {},
get_player_information = {},
get_player_ip = {},
get_player_privs = {},
get_player_radius_area = {},
get_pointed_thing_position = {},
get_position_from_hash = {},
get_server_max_lag = {},
get_server_status = {},
get_server_uptime = {},
get_spawn_level = {},
get_timeofday = {},
get_tool_wear_after_use = {},
get_translated_string = {},
get_translator = {},
get_us_time = {},
get_user_path = {},
get_version = {},
get_voxel_manip = {},
get_worldpath = {},
global_exists = {},
handle_async = {},
handle_node_drops = {},
has_feature = {},
hash_node_position = {},
hud_replace_builtin = {},
inventorycube = {},
is_area_protected = {},
is_colored_paramtype = {},
is_creative_enabled = {},
is_nan = {},
is_player = {},
is_protected = {},
is_singleplayer = {},
is_yes = {},
item_drop = {},
item_eat = {},
item_place = {},
item_place_node = {},
item_place_object = {},
item_secondary_use = {},
itemstring_with_color = {},
itemstring_with_palette = {},
kick_player = {},
line_of_sight = {},
load_area = {},
log = {},
luaentities = {},
mkdir = {},
mod_channel_join = {},
mvdir = {},
node_dig = {},
node_punch = {},
nodedef_default = {},
noneitemdef_default = {},
notify_authentication_modified = {},
object_refs = {},
on_craft = {},
override_chatcommand = {},
override_item = {},
parse_coordinates = {},
parse_json = {},
parse_relative_number = {},
place_node = {},
place_schematic = {},
place_schematic_on_vmanip = {},
player_exists = {},
pointed_thing_to_face_pos = {},
pos_to_string = {},
print = {},
privs_to_string = {},
punch_node = {},
raillike_group = {},
raycast = {},
read_schematic = {},
record_protection_violation = {},
register_abm = {},
register_alias = {},
register_alias_force = {},
register_allow_player_inventory_action = {},
register_async_dofile = {},
register_authentication_handler = {},
register_biome = {},
register_can_bypass_userlimit = {},
register_chatcommand = {},
register_craft = {},
register_craft_predict = {},
register_craftitem = {},
register_decoration = {},
register_entity = {},
register_globalstep = {},
register_item = {},
register_lbm = {},
register_node = {},
register_on_auth_fail = {},
register_on_authplayer = {},
register_on_chat_message = {},
register_on_chatcommand = {},
register_on_cheat = {},
register_on_craft = {},
register_on_dieplayer = {},
register_on_dignode = {},
register_on_generated = {},
register_on_item_eat = {},
register_on_joinplayer = {},
register_on_leaveplayer = {},
register_on_liquid_transformed = {},
register_on_mapgen_init = {},
register_on_mapblocks_changed = {},
register_on_modchannel_message = {},
register_on_mods_loaded = {},
register_on_newplayer = {},
register_on_placenode = {},
register_on_player_hpchange = {},
register_on_player_inventory_action = {},
register_on_player_receive_fields = {},
register_on_prejoinplayer = {},
register_on_priv_grant = {},
register_on_priv_revoke = {},
register_on_protection_violation = {},
register_on_punchnode = {},
register_on_punchplayer = {},
register_on_respawnplayer = {},
register_on_rightclickplayer = {},
register_on_shutdown = {},
register_ore = {},
register_playerevent = {},
register_privilege = {},
register_schematic = {},
register_tool = {},
registered_abms = {other_fields = true},
registered_aliases = {other_fields = true},
registered_allow_player_inventory_actions = {other_fields = true},
registered_biomes = {other_fields = true},
registered_can_bypass_userlimit = {other_fields = true},
registered_chatcommands = {other_fields = true},
registered_craft_predicts = {other_fields = true},
registered_craftitems = {other_fields = true},
registered_decorations = {other_fields = true},
registered_entities = {other_fields = true},
registered_globalsteps = {other_fields = true},
registered_items = {other_fields = true},
registered_lbms = {other_fields = true},
registered_nodes = {other_fields = true},
registered_on_authplayers = {other_fields = true},
registered_on_chat_messages = {other_fields = true},
registered_on_chatcommands = {other_fields = true},
registered_on_cheats = {other_fields = true},
registered_on_crafts = {other_fields = true},
registered_on_dieplayers = {other_fields = true},
registered_on_dignodes = {other_fields = true},
registered_on_generateds = {other_fields = true},
registered_on_item_eats = {other_fields = true},
registered_on_joinplayers = {other_fields = true},
registered_on_leaveplayers = {other_fields = true},
registered_on_liquid_transformed = {other_fields = true},
registered_on_modchannel_message = {other_fields = true},
registered_on_mods_loaded = {other_fields = true},
registered_on_newplayers = {other_fields = true},
registered_on_placenodes = {other_fields = true},
registered_on_player_hpchange = {other_fields = true},
registered_on_player_hpchanges = {other_fields = true},
registered_on_player_inventory_actions = {other_fields = true},
registered_on_player_receive_fields = {other_fields = true},
registered_on_prejoinplayers = {other_fields = true},
registered_on_priv_grant = {other_fields = true},
registered_on_priv_revoke = {other_fields = true},
registered_on_protection_violation = {other_fields = true},
registered_on_punchnodes = {other_fields = true},
registered_on_punchplayers = {other_fields = true},
registered_on_respawnplayers = {other_fields = true},
registered_on_rightclickplayers = {other_fields = true},
registered_on_shutdown = {other_fields = true},
registered_ores = {other_fields = true},
registered_playerevents = {other_fields = true},
registered_privileges = {other_fields = true},
registered_tools = {other_fields = true},
remove_detached_inventory = {},
remove_detached_inventory_raw = {},
remove_node = {},
remove_player = {},
remove_player_auth = {},
request_http_api = {},
request_insecure_environment = {},
request_shutdown = {},
rgba = {},
rmdir = {},
rollback_get_last_node_actor = {},
rollback_get_node_actions = {},
rollback_punch_callbacks = {},
rollback_revert_actions_by = {},
rotate_and_place = {},
rotate_node = {},
run_callbacks = {},
run_priv_callbacks = {},
safe_file_write = {},
send_join_message = {},
send_leave_message = {},
serialize = {},
serialize_roundtrip = {},
serialize_schematic = {},
set_gen_notify = {},
set_last_run_mod = {},
set_mapgen_params = {},
set_mapgen_setting = {},
set_mapgen_setting_noiseparams = {},
set_node = {},
set_node_level = {},
set_noiseparams = {},
set_player_password = {},
set_player_privs = {},
set_timeofday = {},
setting_get = {},
setting_get_pos = {},
setting_getbool = {},
setting_save = {},
setting_set = {},
setting_setbool = {},
settings = {
fields = {
get = {},
get_bool = {},
get_np_group = {},
get_flags = {},
set = {},
set_bool = {},
set_np_group = {},
remove = {},
get_names = {},
write = {},
to_table = {},
},
},
sha1 = {},
show_formspec = {},
show_general_help_formspec = {},
show_privs_help_formspec = {},
sound_fade = {},
sound_play = {},
sound_stop = {},
spawn_falling_node = {},
spawn_item = {},
spawn_tree = {},
string_to_area = {},
string_to_pos = {},
string_to_privs = {},
strip_background_colors = {},
strip_colors = {},
strip_foreground_colors = {},
strip_param2_color = {},
swap_node = {},
tooldef_default = {},
transforming_liquid_add = {},
translate = {},
unban_player_or_ip = {},
unregister_biome = {},
unregister_chatcommand = {},
unregister_item = {},
wallmounted_to_dir = {},
wrap_text = {},
write_json = {},
yaw_to_dir = {},
},
},
}
}
stds.yl_spawnit = {
globals = {
"yl_spawnit",
mob_core = {fields = {"spawn_enabled"}},
petz = {fields = {settings = {fields = {"spawn_interval"}}}},
},
read_globals = {
"fmod",
"spawnit",
"mob_core",
"mobs_balrog",
"nether",
"petz",
"water_life",
},
}

34
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,34 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.3.0
hooks:
- id: fix-byte-order-marker
- id: end-of-file-fixer
- id: trailing-whitespace
- id: mixed-line-ending
args: [ --fix=lf ]
- repo: local
hooks:
- id: detect_debug
name: detect debug
language: pygrep
entry: DEBUG
pass_filenames: true
exclude: .pre-commit-config.yaml
fail_fast: true
- id: stylua
name: stylua
language: system
entry: stylua
pass_filenames: true
types: [ file, lua ]
fail_fast: true
- id: luacheck
name: luacheck
language: system
entry: luacheck
pass_filenames: true
types: [ file, lua ]
args: [ -q ]
fail_fast: true

21
LICENSE.txt Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2023 flux
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# yl_spawnit
TODO: write a description

View File

@ -2,7 +2,7 @@ spawnit.register({
entity_name = "mobs_monster:dungeon_master",
groups = { monster = 1 },
chance = 300 * 7000 / 6000,
on = {"caverealms:hot_cobble"},
on = { "caverealms:hot_cobble" },
max_y = -8000,
max_light = 12,
max_in_area = 2,

View File

@ -1,4 +1,4 @@
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
local MAX_IN_AREA = 1

View File

@ -1 +1 @@
mob_core.spawn_enabled = false -- note that this doesn't disable the ABM, but nothing will spawn
mob_core.spawn_enabled = false -- note that this doesn't disable the ABM, but nothing will spawn

View File

@ -1,6 +1,6 @@
local f = string.format
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
local MAX_IN_AREA = 5
@ -119,25 +119,25 @@ local function make_child(obj, ent)
obj:set_properties({
textures = textures,
visual_size = {
x = ent.base_size.x * .5,
y = ent.base_size.y * .5
x = ent.base_size.x * 0.5,
y = ent.base_size.y * 0.5,
},
collisionbox = {
ent.base_colbox[1] * .5,
ent.base_colbox[2] * .5,
ent.base_colbox[3] * .5,
ent.base_colbox[4] * .5,
ent.base_colbox[5] * .5,
ent.base_colbox[6] * .5
ent.base_colbox[1] * 0.5,
ent.base_colbox[2] * 0.5,
ent.base_colbox[3] * 0.5,
ent.base_colbox[4] * 0.5,
ent.base_colbox[5] * 0.5,
ent.base_colbox[6] * 0.5,
},
selectionbox = {
ent.base_selbox[1] * .5,
ent.base_selbox[2] * .5,
ent.base_selbox[3] * .5,
ent.base_selbox[4] * .5,
ent.base_selbox[5] * .5,
ent.base_selbox[6] * .5
}
ent.base_selbox[1] * 0.5,
ent.base_selbox[2] * 0.5,
ent.base_selbox[3] * 0.5,
ent.base_selbox[4] * 0.5,
ent.base_selbox[5] * 0.5,
ent.base_selbox[6] * 0.5,
},
})
ent.child = true
@ -163,9 +163,7 @@ local function after_spawn_sheep(pos, obj)
local lamb = math.random(4) == 1
if horns and not lamb then
local texture = f("mobs_sheep_base.png^mobs_sheep_horns.png^(mobs_sheep_wool.png^[multiply:%s)",
colors[color]
)
local texture = f("mobs_sheep_base.png^mobs_sheep_horns.png^(mobs_sheep_wool.png^[multiply:%s)", colors[color])
obj:set_properties({ textures = { texture } })
ent.base_texture = { texture }
@ -201,7 +199,12 @@ 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" },
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" },
min_y = 0,
max_y = 200,

View File

@ -1,11 +1,10 @@
spawnit.register({
entity_name = "mobs_banshee:banshee",
groups = { monster = 1 },
chance = 300,
within = { "breathable" },
on = { "any" },
near = { "bones:bones"},
near = { "bones:bones" },
max_in_area = 1,
min_player_distance = 12,
spawn_in_protected = false,

View File

@ -1,4 +1,3 @@
spawnit.register({
entity_name = "mobs_gazer:gazer",
groups = { monster = 1 },

View File

@ -5,9 +5,9 @@ local DUSK = 19500 / 24000
local near
if ghost_bones_only then
near = {"bones:bones", "mobs_humans:human_bones"}
near = { "bones:bones", "mobs_humans:human_bones" }
else
near = {"any"}
near = { "any" }
end
spawnit.register({

View File

@ -1,4 +1,4 @@
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE_RATIO = 6000 -- dirt monster
local DAWN = 4500 / 24000
@ -7,7 +7,7 @@ local DUSK = 19500 / 24000
spawnit.register({
entity_name = "mobs_monster:dirt_monster",
groups = { monster = 1 },
on = {"group:soil"},
on = { "group:soil" },
chance = BASE_CHANCE * 6000 / BASE_CHANCE_RATIO,
min_y = 0,
max_light = 7,
@ -47,8 +47,8 @@ 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"},
on = { "default:obsidian", "caverealms:hot_cobble" },
near = { "group:fire" },
max_y = -150,
min_light = 12,
max_in_area = 1,
@ -61,9 +61,12 @@ spawnit.register({
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"
},
"default:snow",
"default:ice",
"default:stone",
"default:dry_dirt_with_dry_grass",
"ethereal:dry_dirt",
},
min_y = 0,
max_light = 7,
max_in_area = 1,
@ -75,7 +78,7 @@ spawnit.register({
entity_name = "mobs_monster:lava_flan",
groups = { monster = 1 },
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
within = {"default:lava_source"},
within = { "default:lava_source" },
on = { "any" },
max_y = 0,
max_in_area = 1,
@ -88,7 +91,7 @@ spawnit.register({
groups = { monster = 1 },
chance = BASE_CHANCE * 5000 / BASE_CHANCE_RATIO,
on = { "any" },
near = { "default:mese", "default:stone_with_mese"},
near = { "default:mese", "default:stone_with_mese" },
max_y = -20,
max_light = 7,
max_in_area = 1,
@ -136,7 +139,7 @@ spawnit.register({
entity_name = "mobs_monster:sand_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"default:desert_sand"},
on = { "default:desert_sand" },
min_y = 0,
max_light = 7,
max_in_area = 2,
@ -148,8 +151,13 @@ 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"},
on = {
"default:dirt_with_rainforest_litter",
"default:snowblock",
"default:snow",
"ethereal:crystal_dirt",
"ethereal:cold_dirt",
},
min_y = 25,
max_light = 8,
max_in_area = 1,
@ -172,7 +180,7 @@ 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"},
on = { "default:stone", "default:desert_stone", "default:sandstone" },
max_y = 0,
max_light = 7,
max_in_area = 1,
@ -184,8 +192,8 @@ 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"},
on = { "group:soil" },
near = { "group:tree", "group:leaves" },
min_y = 0,
max_y = 5000,
max_light = 6,
@ -200,7 +208,7 @@ spawnit.register({
entity_name = "mobs_monster:tree_monster",
groups = { monster = 1 },
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
on = {"group:leaves"},
on = { "group:leaves" },
min_y = 0,
max_light = 7,
max_in_area = 1,

View File

@ -5,14 +5,16 @@ spawnit.register({
entity_name = "mobs_others:snow_walker",
groups = { monster = 1 },
chance = 300,
on = {"default:dirt_with_snow",
"default:permafrost",
"default:permafrost_with_stones",
"default:permafrost_with_moss",
"default:snow",
"default:snowblock",
"default:ice",
"default:cave_ice"},
on = {
"default:dirt_with_snow",
"default:permafrost",
"default:permafrost_with_stones",
"default:permafrost_with_moss",
"default:snow",
"default:snowblock",
"default:ice",
"default:cave_ice",
},
min_y = -15,
max_in_area = 2,
min_time_of_day = DUSK,

View File

@ -1,5 +1,12 @@
name = spawn_things
version = 2023-07-16
title = yl_spawnit
description = spawnit rules for your-land
author = flux
license = MIT
media_license = CC-BY-SA-4.0
version = 2023-07-20
min_minetest_version = 5.7.0
supported_games = *
depends = fmod, spawnit
optional_depends = """
caverealms_lite,

View File

@ -3,7 +3,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 150000,
cluster = 1,
on = {"any"},
on = { "any" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
min_player_distance = 16,
@ -15,7 +15,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 15,
cluster = 2,
on = {"nether:sand", "nether:rack"},
on = { "nether:sand", "nether:rack" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
min_player_distance = 5,

123
petz.lua
View File

@ -1,7 +1,7 @@
-- disable petz spawning
petz.settings.spawn_interval = math.huge
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local MAX_IN_AREA = 5
local DAWN = 4500 / 24000
@ -90,7 +90,16 @@ 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" },
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,
max_y = 5000,
min_light = 8,
@ -143,7 +152,14 @@ 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" },
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,
@ -153,7 +169,14 @@ 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" },
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,
@ -163,7 +186,13 @@ 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" },
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,
max_y = 5000,
min_light = 12,
@ -186,7 +215,16 @@ 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" },
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,
max_y = 5000,
min_light = 8,
@ -199,7 +237,13 @@ 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" },
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,
max_y = 5000,
min_light = 12,
@ -226,7 +270,16 @@ 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" },
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,
max_y = 5000,
min_player_distance = 12,
@ -238,7 +291,7 @@ spawnit.register({
entity_name = "petz:hamster",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = { "group:sand","default:desert_sandstone","default:sandstone" },
on = { "group:sand", "default:desert_sandstone", "default:sandstone" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
@ -287,7 +340,7 @@ 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" },
on = { "default:dirt_with_dry_grass", "default:dry_dirt", "default:dry_dirt_with_dry_grass", "ethereal:dry_dirt" },
min_y = 0,
max_y = 5000,
min_player_distance = 12,
@ -299,7 +352,7 @@ 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" },
on = { "default:dirt_with_dry_grass", "default:dry_dirt", "default:dry_dirt_with_dry_grass", "ethereal:dry_dirt" },
min_y = 0,
max_y = 5000,
min_player_distance = 12,
@ -323,7 +376,7 @@ spawnit.register({
entity_name = "petz:mr_pumpkin",
groups = { monster = 1 },
chance = BASE_CHANCE / 0.1,
on = { "group:soil","group:stone" },
on = { "group:soil", "group:stone" },
max_y = 5000,
min_player_distance = 12,
spawn_in_protected = false,
@ -337,8 +390,8 @@ spawnit.register({
entity_name = "petz:panda",
groups = { animal = 1 },
chance = BASE_CHANCE,
on = {"group:soil"},
near = {"ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout"},
on = { "group:soil" },
near = { "ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout" },
min_y = 0,
max_y = 5000,
max_in_area = MAX_IN_AREA,
@ -347,9 +400,16 @@ spawnit.register({
spawnit.register({
entity_name = "petz:parrot",
groups = { animal = 1 },
chance = BASE_CHANCE/ 0.8,
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" },
near = {
"default:jungleleaves",
"moretrees:jungletree_leaves_yellow",
"moretrees:jungletree_leaves_red",
"ethereal:palmleaves",
"moretrees:date_palm_leaves",
"moretrees:palm_leaves",
},
min_y = 0,
max_y = 5000,
min_light = 10,
@ -363,7 +423,7 @@ spawnit.register({
groups = { animal = 1 },
chance = BASE_CHANCE,
cluster = 3,
on = { "default:snowblock","default:ice" },
on = { "default:snowblock", "default:ice" },
min_y = 0,
max_y = 10,
min_light = 12,
@ -400,7 +460,7 @@ 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" },
on = { "default:snowblock", "default:ice", "default:dirt_with_snow", "default:snow" },
min_y = 0,
max_y = 5000,
min_player_distance = 12,
@ -463,7 +523,7 @@ 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" },
on = { "group:soil", "group:stone", "rainbow_source:black_water_source" },
max_y = 5000,
max_light = 10,
min_player_distance = 12,
@ -475,7 +535,7 @@ 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" },
on = { "default:snowblock", "default:ice", "default:dirt_with_snow", "default:snow" },
min_y = -32,
max_y = 10,
min_player_distance = 12,
@ -500,7 +560,7 @@ 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" },
on = { "default:snowblock", "default:ice", "default:dirt_with_snow", "default:snow" },
min_y = 20,
max_y = 5000,
min_player_distance = 12,
@ -526,7 +586,17 @@ 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" },
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,
@ -538,7 +608,14 @@ spawnit.register({
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" },
near = {
"default:jungleleaves",
"moretrees:jungletree_leaves_yellow",
"moretrees:jungletree_leaves_red",
"ethereal:palmleaves",
"moretrees:date_palm_leaves",
"moretrees:palm_leaves",
},
min_y = 0,
max_y = 5000,
min_light = 12,

View File

@ -2,7 +2,7 @@ spawnit.register({
entity_name = "scorpion:big",
groups = { monster = 1 },
chance = 500,
on = {"default:desert_sand"},
on = { "default:desert_sand" },
min_y = -10,
max_y = 150,
max_light = 14,
@ -15,7 +15,7 @@ spawnit.register({
entity_name = "scorpion:boss",
groups = { monster = 1 },
chance = 5000,
on = {"default:desert_stone"},
on = { "default:desert_stone" },
min_y = 0,
max_y = 150,
max_light = 10,
@ -28,7 +28,7 @@ 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"},
on = { "default:desert_sand", "default:dirt_with_rainforest_litter", "default:dry_dirt_with_dry_grass" },
min_y = -10,
max_y = 200,
max_in_area = 5,

View File

@ -1,4 +1,4 @@
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local DAWN = 4500 / 24000
local DUSK = 19500 / 24000
@ -27,8 +27,8 @@ if water_life.swampz then
entity_name = "water_life:alligator",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"default:river_water_source"},
within = { "default:river_water_source" },
on = { "default:river_water_source" },
min_y = -50,
max_y = 150,
min_light = 12,
@ -45,8 +45,8 @@ spawnit.register({
entity_name = "water_life:beaver",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"any"},
within = { "default:river_water_source" },
on = { "any" },
min_y = 20,
max_y = 150,
min_light = 12,
@ -60,8 +60,8 @@ 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"},
within = { "default:water_source" },
near = { "water_life:seagrassgreen", "water_life:seagrassred" },
min_y = -50,
max_y = 1,
max_in_area = 15,
@ -71,8 +71,8 @@ spawnit.register({
entity_name = "water_life:clownfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"any"},
within = { "default:water_source" },
on = { "any" },
near = {
"group:coral",
"default:coral_brown",
@ -97,11 +97,11 @@ spawnit.register({
entity_name = "water_life:coralfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
within = { "default:water_source" },
min_y = -50,
max_y = 1,
max_in_area = 5,
on = {"any"},
on = { "any" },
near = {
"group:coral",
"default:coral_brown",
@ -123,8 +123,8 @@ spawnit.register({
entity_name = "water_life:croc",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
within = { "default:water_source" },
on = { "default:water_source" },
min_y = -50,
max_y = 150,
min_light = 12,
@ -140,7 +140,7 @@ spawnit.register({
entity_name = "water_life:gecko",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
near = {"group:tree","group:leaves","default:junglegrass"},
near = { "group:tree", "group:leaves", "default:junglegrass" },
min_y = 0,
max_y = 150,
min_light = 12,
@ -154,7 +154,7 @@ spawnit.register({
entity_name = "water_life:gull",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
on = {"any"},
on = { "any" },
min_y = 0,
max_y = 150,
min_light = 12,
@ -168,8 +168,8 @@ spawnit.register({
entity_name = "water_life:jellyfish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
within = { "default:water_source" },
on = { "default:water_source" },
min_y = -50,
max_y = 1,
max_in_area = 5,
@ -180,8 +180,8 @@ spawnit.register({
entity_name = "water_life:piranha",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"any"},
within = { "default:river_water_source" },
on = { "any" },
min_y = 0,
max_y = 150,
max_in_area = 3,
@ -192,8 +192,8 @@ spawnit.register({
entity_name = "water_life:fish",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:river_water_source"},
on = {"default:river_water_source"},
within = { "default:river_water_source" },
on = { "default:river_water_source" },
min_y = 0,
max_y = 150,
max_in_area = 3,
@ -204,7 +204,7 @@ spawnit.register({
entity_name = "water_life:urchin",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
within = { "default:water_source" },
near = {
"group:coral",
"default:coral_brown",
@ -230,8 +230,8 @@ spawnit.register({
entity_name = "water_life:shark",
groups = { animal = 1, hostile = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
within = { "default:water_source" },
on = { "default:water_source" },
min_y = -50,
max_y = 1,
max_in_area = 1,
@ -245,8 +245,14 @@ spawnit.register({
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",
"default:sand", "default:desert_sand", "default:sandstone", "default:desert_sandstone", "default:desert_stone",
"default:dirt_with_dry_grass",
"default:dry_dirt_with_dry_grass",
"default:dirt_with_rainforest_litter",
"default:sand",
"default:desert_sand",
"default:sandstone",
"default:desert_sandstone",
"default:desert_stone",
},
min_y = 0,
max_y = 150,
@ -261,8 +267,8 @@ spawnit.register({
entity_name = "water_life:whale",
groups = { animal = 1 },
chance = BASE_CHANCE * 1,
within = {"default:water_source"},
on = {"default:water_source"},
within = { "default:water_source" },
on = { "default:water_source" },
min_y = -50,
max_y = 1,
max_in_area = 1,

View File

@ -1,4 +1,4 @@
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE = 300 -- one every 5 minutes
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
local MAX_IN_AREA = 1

View File

@ -3,7 +3,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 30.6,
cluster = 4,
on = {"nether:lava_crust"},
on = { "nether:lava_crust" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -16,7 +16,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 13.7 * 2,
cluster = 4,
on = {"nether:rack_deep", "nether:rack"},
on = { "nether:rack_deep", "nether:rack" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -29,7 +29,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 13.3 * 2,
cluster = 5,
on = {"nether:rack_deep", "nether:rack"},
on = { "nether:rack_deep", "nether:rack" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -42,7 +42,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 12.7 * 2,
cluster = 3,
on = {"nether:rack_deep", "nether:rack"},
on = { "nether:rack_deep", "nether:rack" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -55,7 +55,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 20.1 * 2,
cluster = 6,
on = {"nether:rack", "nether:sand","nether:basalt", "nether:rack_deep"},
on = { "nether:rack", "nether:sand", "nether:basalt", "nether:rack_deep" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -69,12 +69,12 @@ spawnit.register({
chance = 27.3,
cluster = 3,
on = {
"nether:rack",
"nether:sand",
"nether:rack_deep",
"yl_nether:rack_deep_with_electrum",
"yl_nether:rack_deep_with_electrumite"
},
"nether:rack",
"nether:sand",
"nether:rack_deep",
"yl_nether:rack_deep_with_electrum",
"yl_nether:rack_deep_with_electrumite",
},
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -87,7 +87,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 20.3,
cluster = 5,
on = {"nether:rack_deep","yl_nether:rack_deep_with_electrum", "yl_nether:rack_deep_with_electrumite"},
on = { "nether:rack_deep", "yl_nether:rack_deep_with_electrum", "yl_nether:rack_deep_with_electrumite" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,
@ -100,7 +100,7 @@ spawnit.register({
groups = { monster = 1 },
chance = 25.7,
cluster = 2,
on = {"nether:rack", "nether:sand", "nether:rack_deep", "nether:lava_crust"},
on = { "nether:rack", "nether:sand", "nether:rack_deep", "nether:lava_crust" },
min_y = nether.DEPTH_FLOOR,
max_y = nether.DEPTH_CEILING,
max_in_area = 6,