griefer.lua 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. mobs.register_mob("griefer:griefer", {
  2. description = "Black-Hearted Oerkki",
  3. type = "npc",
  4. passive = false,
  5. attack_type = "dogfight",
  6. attack_animals = true,
  7. attack_players = true,
  8. specific_allies = {
  9. ["griefer:elite_griefer"] = true,
  10. ["dm:dm"] = true,
  11. },
  12. pathfinding = 2,
  13. pathing_radius = 16,
  14. reach = 2,
  15. damage = 4*500,
  16. damage_group = "crumbly",
  17. hp_min = 8*500,
  18. hp_max = 34*500,
  19. armor = 100,
  20. armor_level = 2,
  21. -- Slightly smaller collision box makes mob movement easier.
  22. collisionbox = {-0.3, -1, -0.3, 0.3, 0.7, 0.3},
  23. --collisionbox = {-0.4, -1, -0.4, 0.4, 0.9, 0.4},
  24. visual = "mesh",
  25. mesh = "griefer_griefer.b3d",
  26. textures = {
  27. {"griefer_griefer1.png"},
  28. {"griefer_griefer2.png"},
  29. },
  30. makes_footstep_sound = false,
  31. sounds = {
  32. random = "griefer_griefer",
  33. },
  34. walk_velocity = 1,
  35. run_velocity = 3,
  36. sprint_velocity = 3.5,
  37. view_range = 20,
  38. jump = true,
  39. drops = {
  40. {name = "default:junglegrass", chance = 10*3, min = 1, max = 2},
  41. {name = "default:grass_dummy", chance = 6*3, min = 1, max = 2},
  42. {name = "default:cactus", chance = 15*3, min = 1, max = 1},
  43. {name = "default:dry_shrub", chance = 8, min = 1, max = 5},
  44. {name = "default:dry_shrub2", chance = 8, min = 1, max = 5},
  45. {name = "default:papyrus", chance = 15, min = 1, max = 3},
  46. -- Required to make it possible to obtain more dirt in Caverealm survival.
  47. {name = "bones:bones_type2", chance = 5, min = 1, max = 1},
  48. },
  49. water_damage = 0,
  50. lava_damage = 4*500,
  51. makes_bones_in_lava = false,
  52. light_damage = 0,
  53. fear_height = 3,
  54. animation = {
  55. stand_start = 0,
  56. stand_end = 23,
  57. walk_start = 24,
  58. walk_end = 36,
  59. run_start = 37,
  60. run_end = 49,
  61. punch_start = 37,
  62. punch_end = 49,
  63. speed_normal = 15,
  64. speed_run = 15,
  65. },
  66. replace_rate = 10,
  67. replace_what = {
  68. "torches:torch_floor",
  69. "torches:torch_wall",
  70. "torches:torch_ceiling",
  71. "torches:kalite_torch_floor",
  72. "torches:kalite_torch_wall",
  73. "torches:kalite_torch_ceiling",
  74. },
  75. replace_with = "air",
  76. replace_offset = 0,
  77. replace_range = 2,
  78. immune_to = {
  79. {"default:gold_lump", -10}, -- heals by 10 points
  80. },
  81. })
  82. mobs.register_spawn_abm({
  83. name = "griefer:griefer",
  84. nodes = {"griefer:grieferstone"},
  85. interval = 3,
  86. chance = 10,
  87. -- Warning, do NOT change! The cursed-stone configuration in the Outback's gateroom depends on this.
  88. min_light = 0,
  89. max_light = 5,
  90. player_min_range = 4,
  91. player_max_range = 30,
  92. mob_limit = 3,
  93. absolute_mob_limit = 16,
  94. mob_range = 20,
  95. min_count = 1,
  96. max_count = 3,
  97. })
  98. mobs.register_spawn_abm({
  99. name = "griefer:griefer",
  100. nodes = {"griefer:naraxen"},
  101. interval = 3,
  102. chance = 10,
  103. -- Warning, do NOT change! Required for Naraxen lava fortresses.
  104. min_light = 0,
  105. max_light = 10,
  106. player_min_range = 4,
  107. player_max_range = 30,
  108. mob_limit = 3,
  109. absolute_mob_limit = 16,
  110. mob_range = 20,
  111. min_count = 1,
  112. max_count = 3,
  113. })
  114. mobs.register_egg("griefer:griefer", "Black Hearted Griefer", "default_obsidian.png", 1)
  115. mobs.alias_mob("mobs_monster:oerkki", "griefer:griefer")
  116. mobs.alias_mob("mobs:oerkki", "griefer:griefer")