Major basic mob definition update

Set the attributes of almost all mobs:
- Damage
- Size
- Collision box
- Basic behaviour
- fear_height
- view_range
- Sound distance
- Other attributes
master
Wuzzy 2017-06-29 22:01:05 +02:00
parent bf72b0d797
commit ee12957f02
34 changed files with 285 additions and 329 deletions

View File

@ -21,7 +21,7 @@ mobs:register_mob("mobs_mc:bat", {
run_velocity = 6.0,
-- TODO: Hang upside down
animation = {
speed_normal = 80, speed_run = 80,
walk_speed = 80, stand_speed = 80, run_speed = 80,
stand_start = 0, stand_end = 40,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,

View File

@ -15,7 +15,7 @@ mobs:register_mob("mobs_mc:blaze", {
type = "monster",
hp_min = 20,
hp_max = 20,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.79, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_blaze.b3d",
@ -28,13 +28,12 @@ mobs:register_mob("mobs_mc:blaze", {
random = "blaze_breath",
death = "blaze_died",
damage = "blaze_hurt1",
attack = "default_punch3",
distance = 16,
},
walk_velocity = .8,
run_velocity = 1.6,
damage = 6,
pathfinding = 1,
group_attack = true,
drops = {
{name = mobs_mc.items.blaze_rod,
chance = 1,
@ -48,26 +47,25 @@ mobs:register_mob("mobs_mc:blaze", {
walk_end = 40,
run_start = 1,
run_end = 40,
shoot_start = 1,
shoot_end = 40,
shoot_start = 1,
shoot_end = 40,
},
drawtype = "front",
-- MC Wiki: 1 damage every half second
-- MC Wiki: takes 1 damage every half second while in water
water_damage = 2,
lava_damage = 0,
fall_damage = 0,
light_damage = 0,
view_range = 16,
attack_type = "shoot",
arrow = "mobs_mc:blaze_fireball",
shoot_interval = 3.5,
passive = false,
jump = true,
arrow = "mobs_mc:blaze_fireball",
shoot_interval = 3.5,
passive = false,
jump = true,
jump_height = 4,
floats = 1,
fly = true,
jump_chance = 98,
fear_height = 120,
fly = true,
jump_chance = 98,
fear_height = 120,
})
mobs:register_spawn("mobs_mc:blaze", mobs_mc.spawn.nether_fortress, minetest.LIGHT_MAX+1, 0, 5000, 1, -1000, true)

View File

@ -47,9 +47,10 @@ mobs:register_mob("mobs_mc:chicken", {
random = "mobs_chicken",
death = "Chickenhurt1", -- TODO: replace
damage = "Chickenhurt1", -- TODO: replace
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 0,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,
@ -57,6 +58,7 @@ mobs:register_mob("mobs_mc:chicken", {
follow = mobs_mc.follow.chicken,
view_range = 16,
fear_height = 4,
on_rightclick = function(self, clicker)

View File

@ -28,15 +28,15 @@ local cow_def = {
water_damage = 1,
lava_damage = 5,
light_damage = 0,
fear_height = 3,
runaway = true,
sounds = {
random = "Cow1",
death = "Cowhurt1",
damage = "Cowhurt1",
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 0,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,
@ -63,7 +63,7 @@ local cow_def = {
end,
follow = mobs_mc.items.wheat,
view_range = 10,
fear_height = 2,
fear_height = 4,
}
mobs:register_mob("mobs_mc:cow", cow_def)

View File

@ -31,6 +31,7 @@ mobs:register_mob("mobs_mc:creeper", {
damage = "Creeper4", -- TODO: Replce
war_cry = "tnt_ignite",
explode = "tnt_explode",
distance = 16,
},
makes_footstep_sound = true,
walk_velocity = 1.5,
@ -161,8 +162,9 @@ mobs:register_mob("mobs_mc:creeper", {
},
drawtype = "front",
floats = 1,
fear_height = 4,
water_damage = 1,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
view_range = 16,
})

View File

@ -37,24 +37,22 @@ mobs:register_mob("mobs_mc:enderdragon", {
type = "monster",
pathfinding = 1,
attacks_animals = true,
walk_chance = 88,
walk_chance = 100,
hp_max = 200,
hp_min = 200,
--collisionbox = {-0.35, 0.51, -0.35, 0.35, 1.61, 0.35},
--collisionbox = {-0.5, 0.5, -0.5, 0.5, 1.2, 0.5},
collisionbox = {-0.5, 0.01, -0.5, 0.5, 1.2, 0.5},
collisionbox = {-2, 3, -2, 2, 5, 2},
physical = false,
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_ender_dragon.b3d",
textures = {
{"mobs_mc_enderdragon.png"},
},
visual_size = {x=1, y=1},
makes_footstep_sound = true,
visual_size = {x=3, y=3},
view_range = 35,
walk_velocity = 2,
run_velocity = 4,
sounds = {
walk_velocity = 6,
run_velocity = 6,
sounds = {
shoot_attack = "mesed",
attack = "mese_dragon",
distance = 60,
@ -67,14 +65,12 @@ mobs:register_mob("mobs_mc:enderdragon", {
jump_chance = 100,
fear_height = 120,
fly = true,
fly_in = {'default:void', "air"},
fly_in = {"air"},
dogshoot_switch = 1,
dogshoot_count_max =5,
dogshoot_count2_max = 5,
passive = false,
attack_animals = true,
--floats=1,
floats=1,
drops = {
{name = mobs_mc.items.dragon_egg,
chance = 1,
@ -87,17 +83,11 @@ mobs:register_mob("mobs_mc:enderdragon", {
light_damage = 0,
on_rightclick = nil,
attack_type = "dogshoot",
--explosion_radius = 14,
--dogshoot_stop = true,
--arrow = "mobs:roar_of_the_dragon",
--arrow = "mobs_mc:roar_of_the_dragon",
--arrow = "mobs:fireball",
arrow = "mobs_mc:fireball2",
--reach = 5,
shoot_interval = 0.5,
shoot_offset = -1,
animation = {
speed_normal = 25, speed_run = 50,
fly_speed = 8, stand_speed = 8,
stand_start = 0, stand_end = 20,
walk_start = 0, walk_end = 20,
run_start = 0, run_end = 20,

View File

@ -35,6 +35,7 @@ mobs:register_mob("mobs_mc:enderman", {
war_cry = "mobs_sandmonster",
death = "green_slime_death",
damage = "Creeperdeath",
distance = 16,
},
walk_velocity = 0.2,
run_velocity = 3.4,
@ -134,10 +135,10 @@ mobs:register_mob("mobs_mc:enderman", {
end,
drawtype = "front",
water_damage = 8,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
view_range = 16,
fear_height = 10,
fear_height = 4,
attack_type = "dogfight",
})

View File

@ -13,19 +13,18 @@
mobs:register_mob("mobs_mc:ghast", {
type = "monster",
pathfinding = true,
pathfinding = 1,
group_attack = true,
hp_min = 10,
hp_max = 10,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-2, 5, -2, 2, 9, 2},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_ghast.b3d",
textures = {
{"mobs_mc_ghast.png"},
},
visual_size = {x=4, y=4},
makes_footstep_sound = true,
visual_size = {x=12, y=12},
sounds = {
shoot = "mobs_fireball",
death = "zombiedeath",
@ -33,8 +32,8 @@ mobs:register_mob("mobs_mc:ghast", {
attack = "mobs_fireball",
random = "mobs_eerie",
},
walk_velocity = .8,
run_velocity = 2.6,
walk_velocity = 1.6,
run_velocity = 3.2,
drops = {
{name = mobs_mc.items.gunpowder,
chance = 1,
@ -46,17 +45,16 @@ mobs:register_mob("mobs_mc:ghast", {
max = 1,},
},
animation = {
speed_normal = 25, speed_run = 25,
stand_speed = 50, walk_speed = 50, run_speed = 50,
stand_start = 0, stand_end = 40,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,
},
drawtype = "front",
water_damage = 10,
lava_damage = 0,
lava_damage = 4,
light_damage = 0,
fall_damage = 0,
view_range = 16,
view_range = 100,
--attack_type = "dogshoot",
attack_type = "dogshoot",
arrow = "mobs_monster:fireball",
@ -71,7 +69,7 @@ mobs:register_mob("mobs_mc:ghast", {
jump_height = 4,
floats=1,
fly = true,
fly_in = {"air", "mcl_portals:nether_air"},
fly_in = {"air"},
jump_chance = 98,
fear_height = 120,
})

View File

@ -5,37 +5,34 @@
--###################
mobs:register_mob("mobs_mc:guardian", {
type = "monster",
stepheight = 1.2,
type = "monster",
hp_min = 30,
hp_max = 30,
passive = false,
attack_type = "dogfight",
pathfinding = true,
view_range = 16,
pathfinding = 1,
view_range = 16,
walk_velocity = 2,
run_velocity = 4,
damage = 6,
group_attack = true,
-- Note: This collision box is pretty generous because they can't be rotated yet, but at least it not confusing for the player.
-- TODO: Make the hitbox smaller when Minetest supports rotation of collision boxes
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.425, 0.25, -0.425, 0.425, 1.1, 0.425},
visual = "mesh",
mesh = "mobs_mc_guardian.b3d",
textures = {
{"mobs_mc_guardian.png"},
},
visual_size = {x=4, y=4},
sounds = {
visual_size = {x=3, y=3},
sounds = {
damage = "mobs_mc_squid_hurt",
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 20,
walk_start = 0, walk_end = 20,
run_start = 0, run_end = 20,
},
drops = {
drops = {
-- TODO: Fix drops
{name = mobs_mc.items.black_dye,
chance = 1,
@ -43,19 +40,12 @@ mobs:register_mob("mobs_mc:guardian", {
max = 3,},
},
rotate = 180,
visual_size = {x=4.5, y=4.5},
makes_footstep_sound = false,
stepheight = 2.1,
fly = true,
--floats=1,
fly_in = mobs_mc.items.water_source,
fall_speed = -2,
view_range = 8,
fall_damage = 1,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
fly = 1,
fly_in = mobs_mc.items.water_source,
view_range = 8,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
})
mobs:register_spawn("mobs_mc:guardian", mobs_mc.spawn.water, minetest.LIGHT_MAX+1, 0, 5000, 2, -1000, true)

View File

@ -5,38 +5,35 @@
--###################
mobs:register_mob("mobs_mc:guardian_elder", {
type = "monster",
stepheight = 1.2,
type = "monster",
hp_min = 80,
hp_max = 80,
passive = false,
attack_type = "dogfight",
pathfinding = true,
view_range = 16,
pathfinding = 1,
view_range = 16,
walk_velocity = 2,
run_velocity = 4,
damage = 8,
group_attack = true,
-- Note: This collision box is pretty generous because they can't be rotated yet, but at least it not confusing for the player.
-- TODO: Make the hitbox smaller when Minetest supports rotation of collision boxes
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.99875, 0.5, -0.99875, 0.99875, 2.4975, 0.99875},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_guardian.b3d",
textures = {
{"mobs_mc_guardian_elder.png"},
},
visual_size = {x=4, y=4},
sounds = {
visual_size = {x=7, y=7},
sounds = {
damage = "mobs_mc_squid_hurt",
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 20,
walk_start = 0, walk_end = 20,
run_start = 0, run_end = 20,
},
drops = {
drops = {
-- TODO: Implement correct drops
{name = mobs_mc.items.black_dye,
chance = 1,
@ -44,18 +41,11 @@ mobs:register_mob("mobs_mc:guardian_elder", {
max = 3,},
},
rotate = 180,
visual_size = {x=4.5, y=4.5},
makes_footstep_sound = false,
stepheight = 2.1,
fly = true,
--floats=1,
fly_in = mobs_mc.items.water_source,
fall_speed = -2,
view_range = 8,
fall_damage = 1,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
fly = true,
fly_in = mobs_mc.items.water_source,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
})

View File

@ -151,6 +151,7 @@ skeleton_horse.sounds = {
random = "skeleton1",
death = "skeletondeath",
damage = "skeletonhurt1",
distance = 16,
}
mobs:register_mob("mobs_mc:skeleton_horse", skeleton_horse)
@ -167,6 +168,7 @@ zombie_horse.sounds = {
random = "zombie1",
death = "zombiedeath",
damage = "zombiehurt1",
distance = 16,
}
mobs:register_mob("mobs_mc:zombie_horse", zombie_horse)

View File

@ -16,7 +16,7 @@ mobs:register_mob("mobs_mc:iron_golem", {
passive = true,
hp_min = 100,
hp_max = 100,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.7, -0.01, -0.7, 0.7, 2.69, 0.7},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_iron_golem.b3d",
@ -26,17 +26,17 @@ mobs:register_mob("mobs_mc:iron_golem", {
visual_size = {x=3, y=3},
makes_footstep_sound = true,
sounds = {
war_cry = "mobs_wolf_attack",
-- TODO
distance = 16,
},
view_range = 16,
stepheight = 1.1,
stepheight = 1.2,
owner = "",
order = "follow",
floats = {x=0,y=0,z=0},
walk_velocity = 4,
run_velocity = 4,
stepheight = 1.1,
floats = 0,
walk_velocity = 0.6,
run_velocity = 1.2,
-- Approximation
damage = 14,
group_attack = true,
attacks_monsters = true,
@ -53,18 +53,17 @@ mobs:register_mob("mobs_mc:iron_golem", {
},
drawtype = "front",
water_damage = 0,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
fall_damage = 0,
animation = {
speed_normal = 15, speed_run = 25,
stand_speed = 15, walk_speed = 15, run_speed = 25, punch_speed = 15,
stand_start = 0, stand_end = 0,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,
punch_start = 40, punch_end = 50,
punch_start = 40, punch_end = 50,
},
jump = true,
step = 1,
blood_amount = 0,
})

View File

@ -18,15 +18,15 @@ mobs:register_mob("mobs_mc:parrot", {
pathfinding = true,
hp_min = 6,
hp_max = 6,
collisionbox = {-0.25, -0.01, -0.25, 0.25, 0.6, 0.25},
collisionbox = {-0.25, -0.01, -0.25, 0.25, 0.89, 0.25},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_parrot.b3d",
textures = {{"mobs_mc_parrot_blue.png"},{"mobs_mc_parrot_green.png"},{"mobs_mc_parrot_grey.png"},{"mobs_mc_parrot_red_blue.png"},{"mobs_mc_parrot_yellow_blue.png"}},
visual_size = {x=3, y=3},
makes_footstep_sound = true,
walk_velocity = .8,
run_velocity = 2.6,
walk_velocity = 3,
run_velocity = 5,
drops = {
{name = mobs_mc.items.feather,
chance = 1,
@ -34,8 +34,8 @@ mobs:register_mob("mobs_mc:parrot", {
max = 2,},
},
animation = {
speed_normal = 50,
speed_run = 50,
stand_speed = 50,
walk_speed = 50,
stand_start = 0,
stand_end = 0,
walk_start = 0,
@ -45,32 +45,24 @@ mobs:register_mob("mobs_mc:parrot", {
--fly_start = 30,
--fly_end = 45,
},
walk_chance = 100,
drawtype = "front",
water_damage = 10,
lava_damage = 2,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
fall_damage = 0,
view_range = 16,
attack_type = "dogfight",
attacks_monsters = true,
jump = true,
jump_height = 4,
stepheight = 1.2,
floats=1,
floats = 1,
physical = true,
fly = true,
fly_in = {"air"},
jump_chance = 98,
fear_height = 120,
view_range = 25,
fear_height = 4,
view_range = 16,
on_rightclick = function(self, clicker)
if mobs:feed_tame(self, clicker, 8, true, true) then
return
end
mobs:capture_mob(self, clicker, 30, 50, 80, false, nil)
mobs:capture_mob(self, clicker, 0, 50, 80, false, nil)
end,
})

View File

@ -51,6 +51,7 @@ mobs:register_mob("mobs_mc:polar_bear", {
fear_height = 4,
sounds = {
random = "Cowhurt1", -- TODO: Replace
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,

View File

@ -35,7 +35,7 @@ local rabbit = {
water_damage = 1,
lava_damage = 4,
light_damage = 0,
fear_height = 2,
fear_height = 4,
animation = {
speed_normal = 25, speed_run = 50,
stand_start = 0, stand_end = 0,

View File

@ -63,13 +63,14 @@ mobs:register_mob("mobs_mc:sheep", {
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
fear_height = 3,
fear_height = 4,
sounds = {
random = "Sheep3",
death = "Sheep3",
damage = "Sheep3",
random = "mobs_sheep",
death = "mobs_sheep",
damage = "mobs_sheep",
distance = 16,
},
animation = {
speed_normal = 24,

View File

@ -14,24 +14,22 @@
mobs:register_mob("mobs_mc:shulker", {
type = "monster",
attack_type = "shoot",
shoot_interval = 0.5,
attack_type = "shoot",
shoot_interval = 0.5,
arrow = "mobs_mc:shulkerbullet",
shoot_offset = 0.5,
passive = false,
stepheight = 1.2,
hp_min = 30,
hp_max = 30,
armor = 150,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.5, -0.01, -0.5, 0.5, 0.99, 0.5},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_shulker.b3d",
textures = { "mobs_mc_shulker_purple.png", },
-- TODO: Make shulker dye-able
visual_size = {x=3, y=3},
walk_velocity = 0.0000000001,
run_velocity = 0.0000000001,
walk_chance = 0,
jump = false,
drops = {
{name = mobs_mc.items.shulker_shell,
@ -39,21 +37,27 @@ mobs:register_mob("mobs_mc:shulker", {
min = 1,
max = 1,},
},
animation = {
stand_speed = 25, walk_speed = 25, run_speed = 50, punch_speed = 25,
speed_normal = 25, speed_run = 50,
stand_start = 0, stand_end = 45,
walk_start = 0, walk_end = 45,
run_start = 0, run_end = 45,
punch_start = 80, punch_end = 100,
},
blood_amount = 0,
view_range = 16,
fear_height = 4,
water_damage = 1,
lava_damage = 4,
light_damage = 0,
})
-- bullet arrow (weapon)
mobs:register_arrow("mobs_mc:shulkerbullet", {
visual = "sprite",
visual_size = {x = 0.25, y = 0.25},
textures = {"shulkerbullet.png"},
textures = {"mobs_mc_shulkerbullet.png"},
velocity = 6,
hit_player = function(self, player)

View File

@ -17,8 +17,8 @@ mobs:register_mob("mobs_mc:skeleton", {
type = "monster",
hp_min = 20,
hp_max = 20,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.9, 0.4},
pathfinding = true,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.98, 0.3},
pathfinding = 1,
group_attack = true,
visual = "mesh",
mesh = "mobs_mc_skeleton.b3d",
@ -32,6 +32,7 @@ mobs:register_mob("mobs_mc:skeleton", {
random = "skeleton1",
death = "skeletondeath",
damage = "skeletonhurt1",
distance = 16,
},
walk_velocity = 1.2,
run_velocity = 2.4,
@ -50,41 +51,40 @@ mobs:register_mob("mobs_mc:skeleton", {
min = 0,
max = 2,},
{name = "mobs_mc:skeleton_head",
chance = 50,
chance = 200,
min = 0,
max = 1,},
},
animation = {
animation = {
stand_start = 0,
stand_end = 40,
speed_stand = 5,
speed_stand = 5,
walk_start = 40,
walk_end = 60,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
hurt_end = 120,
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
lava_damage = 4,
light_damage = 1,
view_range = 16,
fear_height = 4,
attack_type = "dogshoot",
--arrow = "throwing:arrow_entity", --was "mobs:arrow_entity"
arrow = "mobs_mc:arrow_entity",
shoot_interval = 2.5,
shoot_offset = 1,
--'dogshoot_switch' allows switching between shoot and dogfight modes inside dogshoot using timer (1 = shoot, 2 = dogfight)
--'dogshoot_count_max' number of seconds before switching above modes.
dogshoot_switch = 1,
dogshoot_count_max =1.8,
blood_amount = 0,
})

View File

@ -17,9 +17,9 @@ mobs:register_mob("mobs_mc:stray", {
type = "monster",
hp_min = 20,
hp_max = 20,
pathfinding = true,
pathfinding = 1,
group_attack = true,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.98, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_skeleton_stray.b3d",
@ -32,6 +32,7 @@ mobs:register_mob("mobs_mc:stray", {
random = "skeleton1",
death = "skeletondeath",
damage = "skeletonhurt1",
distance = 16,
},
walk_velocity = 1.2,
run_velocity = 2.4,
@ -57,33 +58,33 @@ mobs:register_mob("mobs_mc:stray", {
animation = {
stand_start = 0,
stand_end = 40,
speed_stand = 5,
speed_stand = 5,
walk_start = 40,
walk_end = 60,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
hurt_end = 120,
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
water_damage = 0,
lava_damage = 4,
light_damage = 1,
fear_height = 4,
view_range = 16,
attack_type = "dogshoot",
arrow = "mobs_mc:arrow_entity",
shoot_interval = 2.5,
shoot_offset = 1,
--'dogshoot_switch' allows switching between shoot and dogfight modes inside dogshoot using timer (1 = shoot, 2 = dogfight)
--'dogshoot_count_max' number of seconds before switching above modes.
dogshoot_switch = 1,
dogshoot_count_max =3,
blood_amount = 0,
})
--spawn

View File

@ -17,21 +17,22 @@ mobs:register_mob("mobs_mc:witherskeleton", {
type = "monster",
hp_min = 20,
hp_max = 20,
pathfinding = true,
pathfinding = 1,
group_attack = true,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2.39, 0.35},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_wither_skeleton.b3d",
textures = {
{"mobs_mc_witherskeleton.png"},
},
visual_size = {x=3, y=3},
visual_size = {x=3.6, y=3.6},
makes_footstep_sound = true,
sounds = {
random = "skeleton1",
death = "skeletondeath",
damage = "skeletonhurt1",
distance = 16,
},
walk_velocity = 1.2,
run_velocity = 2.4,
@ -53,33 +54,33 @@ mobs:register_mob("mobs_mc:witherskeleton", {
animation = {
stand_start = 0,
stand_end = 40,
speed_stand = 5,
speed_stand = 5,
walk_start = 40,
walk_end = 60,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
speed_walk = 50,
shoot_start = 70,
shoot_end = 90,
punch_start = 70,
punch_end = 90,
die_start = 120,
die_end = 130,
speed_die = 5,
hurt_start = 100,
hurt_end = 120,
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
water_damage = 0,
lava_damage = 4,
light_damage = 1,
view_range = 16,
attack_type = "dogfight",
arrow = "mobs_mc:arrow_entity",
shoot_interval = 2.5,
shoot_offset = 1,
--'dogshoot_switch' allows switching between shoot and dogfight modes inside dogshoot using timer (1 = shoot, 2 = dogfight)
--'dogshoot_count_max' number of seconds before switching above modes.
dogshoot_switch = 1,
dogshoot_count_max =0.5,
blood_amount = 0,
fear_height = 4,
})
--spawn

View File

@ -19,6 +19,7 @@ local slime_big = {
death = "green_slime_death",
damage = "green_slime_damage",
attack = "green_slime_attack",
distance = 16,
},
damage = 4,
reach = 3,
@ -137,6 +138,7 @@ local magma_cube_big = {
death = "green_slime_death",
damage = "green_slime_damage",
attack = "green_slime_attack",
distance = 16,
},
walk_velocity = 4,
run_velocity = 4,

View File

@ -53,9 +53,8 @@ mobs:register_mob("mobs_mc:enderman", {
visual_size = {x=1.2, y=2.5},
makes_footstep_sound = true,
sounds = {
random = "mobs_sandmonster",
death = "green_slime_death",
damage = "Creeperdeath",
-- TODO
distance = 16,
},
walk_velocity = 3.2,
run_velocity = 5.4,

View File

@ -44,7 +44,6 @@ local spider = {
drops = {
{name = mobs_mc.items.string, chance = 1, min = 0, max = 2,},
{name = mobs_mc.items.spider_eye, chance = 3, min = 1, max = 1,},
{name = "mobs_mc:spider_head", chance = 200, min = 1, max = 1,},
},
specific_attack = { "player", "mobs_mc:iron_golem" },
water_damage = 0,

View File

@ -21,7 +21,8 @@ mobs:register_mob("mobs_mc:squid", {
},
sounds = {
damage = "mobs_mc_squid_hurt",
},
distance = 16,
},
animation = {
stand_start = 1,
stand_end = 60,
@ -47,12 +48,11 @@ mobs:register_mob("mobs_mc:squid", {
jump_chance = 98,
fall_speed = 0.5,
view_range = 16,
fall_damage = 1,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
runaway = true,
fear_height = 4,
})
-- Spawn near the water surface

View File

@ -38,7 +38,7 @@ mobs:register_mob("mobs_mc:vex", {
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 40, stand_end = 80,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,

View File

@ -13,9 +13,9 @@
mobs:register_mob("mobs_mc:villager", {
type = "npc",
hp_min = 35,
hp_max = 75,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
hp_min = 20,
hp_max = 20,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_villager.b3d",
@ -27,35 +27,27 @@ mobs:register_mob("mobs_mc:villager", {
},
visual_size = {x=3, y=3},
makes_footstep_sound = true,
damage = 2,
walk_velocity = 1.2,
run_velocity = 2.4,
group_attack = true,
attack_type = "dogfight",
drops = {
{name = "default:apple",
chance = 10,
min = 1,
max = 2,},
},
armor = 90,
drops = {},
sounds = {
random = "Villager1",
death = "Villagerdead",
damage = "Villagerhurt1",
distance = 16,
},
animation = {
speed_normal = 25, speed_run = 50,
stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 0,
walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40,
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
view_range = 16,
fear_height = 5,
fear_height = 4,
--[[
on_rightclick = function(self, clicker)
local inv

View File

@ -15,22 +15,21 @@ mobs:register_mob("mobs_mc:evoker", {
type = "monster",
physical = true,
pathfinding = 1,
hp_min = 35,
hp_max = 75,
hp_min = 24,
hp_max = 24,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.95, 0.4},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_evoker.b3d",
textures = {
{"mobs_mc_evoker_base.png"},
-- TODO: Attack glow
},
textures = {
{"mobs_mc_evoker_base.png"},
-- TODO: Attack glow
},
visual_size = {x=3, y=3},
makes_footstep_sound = true,
damage = 2,
damage = 6,
walk_velocity = 0.2,
run_velocity = 1.4,
damage = 1,
group_attack = true,
attack_type = "dogfight",
-- Summon vexes
@ -59,33 +58,31 @@ mobs:register_mob("mobs_mc:evoker", {
min = 1,
max = 1,},
},
armor = 90,
sounds = {
random = "Villagerdead",
death = "Villagerdead",
damage = "mese_dragon",
attack = "zombiedeath",
distance = 16,
},
animation = {
speed_normal = 25,
speed_run = 25,
stand_start = 40,
stand_end = 59,
speed_stand = 5,
speed_stand = 5,
walk_start = 0,
walk_end = 40,
--speed_walk = 50,
shoot_start = 60,
shoot_end = 80,
die_start = 80,
die_end = 130,
shoot_start = 60,
shoot_end = 80,
die_start = 80,
die_end = 130,
},
water_damage = 1,
lava_damage = 5,
water_damage = 0,
lava_damage = 4,
light_damage = 0,
view_range = 13,
fear_height = 2,
view_range = 16,
fear_height = 4,
})
-- spawn eggs

View File

@ -6,14 +6,12 @@
mobs:register_mob("mobs_mc:illusioner", {
type = "monster",
attack_type = "shoot",
shoot_interval = 0.5,
shoot_interval = 0.5,
arrow = "mobs_mc:arrow_entity",
shoot_offset = 1.5,
stepheight = 1.2,
hp_min = 30,
hp_max = 60,
armor = 150,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
hp_min = 33,
hp_max = 32,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_illusioner.b3d",
@ -25,21 +23,25 @@ mobs:register_mob("mobs_mc:illusioner", {
run_velocity = 2,
jump = true,
animation = {
speed_normal = 25,
speed_run = 25,
walk_speed = 25,
run_speed = 25,
shoot_speed = 25,
stand_start = 40,
stand_end = 59,
--speed_stand = 5,
stand_speed = 5,
walk_start = 0,
walk_end = 40,
--speed_walk = 50,
shoot_start = 90,
shoot_end = 110,
die_start = 110,
die_end = 130,
speed_die = 5,
--speed_walk = 50,
shoot_start = 90,
shoot_end = 110,
die_start = 110,
die_end = 130,
die_speed = 5,
-- 60-80 magic arm swinging, 80-90 transition between magic to bow shooting
},
view_range = 16,
fear_height = 4,
lava_damage = 4,
})
mobs:register_egg("mobs_mc:illusioner", "Illusioner", "mobs_mc_spawn_icon_illusioner.png", 0)

View File

@ -14,23 +14,21 @@ mobs:register_mob("mobs_mc:vindicator", {
type = "monster",
physical = false,
pathfinding = 1,
hp_min = 35,
hp_max = 75,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.95, 0.4},
hp_min = 24,
hp_max = 24,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_vindicator.b3d",
textures = {
{"mobs_mc_vindicator_base.png^mobs_mc_vindicator_axe.png"},
-- TODO: Glow when attacking (mobs_mc_vindicator.png)
},
textures = {
{"mobs_mc_vindicator_base.png^mobs_mc_vindicator_axe.png"},
-- TODO: Glow when attacking (mobs_mc_vindicator.png)
},
visual_size = {x=3, y=3},
makes_footstep_sound = true,
damage = 2,
damage = 13,
walk_velocity = 1.2,
run_velocity = 2.4,
damage = 1,
group_attack = true,
attack_type = "dogfight",
drops = {
{name = mobs_mc.items.emerald,
@ -48,24 +46,26 @@ mobs:register_mob("mobs_mc:vindicator", {
damage = "Villagerhurt1",
},
animation = {
speed_normal = 25,
speed_run = 25,
walk_speed = 25,
run_speed = 25,
stand_start = 40,
stand_end = 59,
speed_stand = 5,
stand_speed = 5,
walk_start = 0,
walk_end = 40,
--speed_walk = 50,
punch_start = 90,
punch_end = 110,
die_start = 110,
die_end = 130,
--speed_walk = 50,
punch_speed = 25,
punch_start = 90,
punch_end = 110,
die_speed = 25,
die_start = 110,
die_end = 130,
},
water_damage = 1,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
view_range = 13,
fear_height = 3,
view_range = 16,
fear_height = 4,
})

View File

@ -13,9 +13,10 @@
mobs:register_mob("mobs_mc:villager_zombie", {
type = "monster",
hp_min = 35,
hp_max = 75,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
hp_min = 20,
hp_max = 20,
armor = 90,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_villager_zombie.b3d",
@ -29,11 +30,10 @@ mobs:register_mob("mobs_mc:villager_zombie", {
},
visual_size = {x=3, y=3},
makes_footstep_sound = true,
damage = 2,
damage = 3,
walk_velocity = 1.2,
run_velocity = 2.4,
group_attack = true,
attack_type = "dogfight",
attack_type = "dogfight",
group_attack = true,
drops = {
{name = mobs_mc.items.rotten_flesh,
@ -60,6 +60,7 @@ mobs:register_mob("mobs_mc:villager_zombie", {
random = "Villager1",
death = "Villagerdead",
damage = "Villagerhurt1",
distance = 16,
},
animation = {
speed_normal = 25,

View File

@ -17,7 +17,7 @@ mobs:register_mob("mobs_mc:witch", {
type = "monster",
hp_min = 26,
hp_max = 26,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_witch.b3d",
@ -35,8 +35,6 @@ mobs:register_mob("mobs_mc:witch", {
arrow = "mobs:potion_arrow",
shoot_interval = 2.5,
shoot_offset = 1,
--'dogshoot_switch' allows switching between shoot and dogfight modes inside dogshoot using timer (1 = shoot, 2 = dogfight)
--'dogshoot_count_max' number of seconds before switching above modes.
dogshoot_switch = 1,
dogshoot_count_max =1.8,
max_drops = 3,
@ -53,6 +51,7 @@ mobs:register_mob("mobs_mc:witch", {
random = "Villager1",
death = "Villagerdead",
damage = "Villagerhurt1",
distance = 16,
},
animation = {
speed_normal = 30,
@ -75,7 +74,7 @@ mobs:register_mob("mobs_mc:witch", {
lava_damage = 5,
light_damage = 0,
view_range = 16,
fear_height = 5,
fear_height = 4,
})

View File

@ -16,21 +16,23 @@ mobs:register_mob("mobs_mc:wither", {
type = "monster",
hp_max = 300,
hp_min = 300,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
armor = 80,
-- This deviates from MC Wiki's size, which makes no sense
collisionbox = {-0.9, 0.4, -0.9, 0.9, 2.45, 0.9},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_wither.b3d",
textures = {
{"mobs_mc_wither.png"},
},
visual_size = {x=3, y=3},
visual_size = {x=4, y=4},
makes_footstep_sound = true,
view_range = 20,
fear_height = 5,
view_range = 16,
fear_height = 4,
walk_velocity = 2,
run_velocity = 4,
stepheight = 1.2,
sounds = {
sounds = {
shoot_attack = "mesed",
attack = "mese_dragon",
distance = 60,
@ -38,43 +40,33 @@ mobs:register_mob("mobs_mc:wither", {
jump = true,
jump_height = 10,
jump_chance = 98,
fear_height = 120,
--fly = true,
fly = true,
dogshoot_switch = 1,
dogshoot_count_max =1,
--passive = false,
attack_animals = true,
floats=1,
drops = {
{name = "default:emeraldblock",
{name = mobs_mc.items.emerald,
chance = 1,
min = 1,
max = 3},
{name = "default:mese_crystal",
chance = 1,
min = 99,
max = 99},
{name = "mobs_mc:skeleton2_head", chance = 1, min = 1, max = 1},
},
armor = 60,
min = 18,
max = 21},
},
drawtype = "front",
water_damage = 0,
lava_damage = 0,
light_damage = 0,
on_rightclick = nil,
attack_type = "dogshoot",
explosion_radius = 3,
explosion_fire = 0,
dogshoot_stop = true,
--arrow = "mobs_mc:roar_of_the_dragon",
arrow = "mobs_mc:fireball",
reach = 5,
shoot_interval = 0.5,
shoot_offset = -1,
animation = {
speed_normal = 12, speed_run = 12,
walk_speed = 12, run_speed = 12, stand_speed = 12,
stand_start = 0, stand_end = 20,
walk_start = 0, walk_end = 20,
walk_start = 0, walk_end = 20,
run_start = 0, run_end = 20,
},
})

View File

@ -16,9 +16,8 @@ local zombie = {
type = "monster",
hp_min = 20,
hp_max = 20,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
--collisionbox = {-0.5, -0.01, -0.5, 0.5, 1.9, 0.5},
--rotate = -180,
armor = 90,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
visual = "mesh",
-- TODO: Switch to AMC zombie texture
mesh = "mobs_zombie.x",
@ -32,11 +31,12 @@ local zombie = {
random = "zombie1",
death = "zombiedeath",
damage = "zombiehurt1",
distance = 16,
},
walk_velocity = .8,
run_velocity = 1.6,
damage = 3,
fear_height = 8,
fear_height = 4,
pathfinding = 1,
jump = true,
--jump_height = 3,
@ -77,10 +77,10 @@ local zombie = {
death_end = 118,
},
drawtype = "front",
lava_damage = 5,
lava_damage = 4,
-- TODO: Burn mob only when in direct sunlight
light_damage = 2,
view_range = 17,
view_range = 16,
attack_type = "dogfight",
}

View File

@ -13,26 +13,27 @@
local pigman = {
--mobs:register_mob("mobs_mc:pigman", {
type = "npc",--made npc to simulate they only attack when attacked first.
hp_max = 60,
armor = 150,
collisionbox = {-0.35, -0.01, -0.35, 0.35, 2, 0.35},
hp_min = 20,
hp_max = 20,
armor = 90,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
rotate = -180,
visual = "mesh",
mesh = "mobs_mc_zombie_pigman.b3d",
textures = {{"mobs_mc_zombie_pigman.png"}},
visual_size = {x=3, y=3},
walk_velocity = 0.6,
run_velocity = 2,
sounds = {
random = "zombie1",
death = "zombiedeath",
damage = "zombiehurt1",
distance = 16,
},
jump = true,
hp_min = 20,
hp_max = 20,
makes_footstep_sound = true,
walk_velocity = .8,
run_velocity = 2.6,
damage = 9,
armor = 80,
pathfinding = true,
group_attack = true,
pathfinding = 1,
passive = false,
maxdrops = 2,
drops = {
@ -68,9 +69,9 @@ local pigman = {
},
drawtype = "front",
water_damage = 1,
lava_damage = 5,
lava_damage = 4,
light_damage = 0,
fear_height = 3,
fear_height = 4,
view_range = 16,
attack_type = "dogfight",
}