Compare commits
10 Commits
6840900bc3
...
5712a7b634
Author | SHA1 | Date | |
---|---|---|---|
5712a7b634 | |||
af6a894c10 | |||
c5bb3f133a | |||
07dbd2ded4 | |||
e234b4064d | |||
603ddf50bb | |||
b62370c097 | |||
dae251bd80 | |||
89068508c7 | |||
24517ab6fd |
40
README.md
40
README.md
@ -4,7 +4,7 @@ This mod adds big moster
|
|||||||
|
|
||||||
![Mobs Balrog's screenshot](screenshot.png)
|
![Mobs Balrog's screenshot](screenshot.png)
|
||||||
|
|
||||||
## About
|
## Information
|
||||||
|
|
||||||
This mod added a configurable big BIG moster to defeat,
|
This mod added a configurable big BIG moster to defeat,
|
||||||
taken it from the Lord of The Rings game and reworked it a bit.
|
taken it from the Lord of The Rings game and reworked it a bit.
|
||||||
@ -12,20 +12,48 @@ taken it from the Lord of The Rings game and reworked it a bit.
|
|||||||
was originally made by Hamlet but abandoned, now minimal fixed
|
was originally made by Hamlet but abandoned, now minimal fixed
|
||||||
for VenenuX minetest game, https://forum.minetest.net/viewtopic.php?f=11&t=18459
|
for VenenuX minetest game, https://forum.minetest.net/viewtopic.php?f=11&t=18459
|
||||||
|
|
||||||
## Usage
|
#### DIFERENCES WITH FLUX FORK : more fair and consistent
|
||||||
|
|
||||||
**Spawn chance**: 1 in half a million (twice the chance of being struck
|
The flux fork is unfair and inconsistent:
|
||||||
by a lightning in real life) under -1500 on the ground
|
|
||||||
|
|
||||||
**Lowered stats**: HP range to a min of 200 to a max of 600; if you are
|
* heavy cos has more textures and sound effects (nice but slow on phones)
|
||||||
|
* the whip just spend so much on any action
|
||||||
|
* seems sometimes not care of creative mode
|
||||||
|
* the monster is great but unfair and
|
||||||
|
* players never meet it cos spamn too much deep, and finally
|
||||||
|
* dont work in any minetest, neither well in phones/rasberrys/tables.
|
||||||
|
* it chat with player cheaters so will cause some lag in low end devices
|
||||||
|
|
||||||
|
This mob is more simple, unfeatured but faster:
|
||||||
|
|
||||||
|
* it hurts any player, event in protected areas
|
||||||
|
* dont detect invisibility in some cases
|
||||||
|
* it loads faster and works in any device, event phones or rpis
|
||||||
|
* the balrog dont chat with players launchind obscure sentences, causing more lag
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
|
||||||
|
**Spawn chance**: 1 en a thousand (same the chance of being struck
|
||||||
|
by a lightning in real life) under -1500 on the ground, but if nether then
|
||||||
|
will be 1 in half a more thousand under -8000 on the ground.
|
||||||
|
|
||||||
|
**Lowered stats**: HP range to a min of 400 to a max of 600; if you are
|
||||||
alone then you are dead, if you are in a party you might defeat it.
|
alone then you are dead, if you are in a party you might defeat it.
|
||||||
Maybe. It's a deity after all.
|
Maybe. It's a deity after all.
|
||||||
|
|
||||||
|
## Technicall information
|
||||||
|
|
||||||
The mob is configurable by settings, check [settingtypes.txt](settingtypes.txt) file.
|
The mob is configurable by settings, check [settingtypes.txt](settingtypes.txt) file.
|
||||||
|
|
||||||
* `mobs_balrog:balrog` : the balrog deity!
|
* `mobs_balrog:balrog` : the balrog deity!
|
||||||
* `mobs_balrog:balrog_whip` : the balrog whip weapon
|
* `mobs_balrog:balrog_whip` : the balrog whip weapon
|
||||||
|
|
||||||
|
Some commits on flux's fork are unclear by example dccf3edeccbd5c7ee6947f12919fc375690a42ff
|
||||||
|
seems work in pvp but also changes the tool registry.
|
||||||
|
|
||||||
|
Another doub change is the balrog life, in commit 3918415ed53f85266e95f6886173c6a8197b2092
|
||||||
|
that increases to 2400 but are not documneted, so non modders will not understand why dont die!
|
||||||
|
|
||||||
## Download:
|
## Download:
|
||||||
|
|
||||||
* https://codeberg.org/minenux/minetest-mod-mobs_balrog
|
* https://codeberg.org/minenux/minetest-mod-mobs_balrog
|
||||||
@ -34,7 +62,7 @@ Changelog [changelog.md](changelog.md)
|
|||||||
|
|
||||||
## Dependencies:
|
## Dependencies:
|
||||||
|
|
||||||
* tnt and default, from basic games,
|
* tnt, default, from basic games,
|
||||||
* mobs (or so called mobs_redo)
|
* mobs (or so called mobs_redo)
|
||||||
* intllib if you are using minetest 0.4 series and only optional
|
* intllib if you are using minetest 0.4 series and only optional
|
||||||
|
|
||||||
|
15
changelog.md
15
changelog.md
@ -10,6 +10,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
|
|||||||
- No further addition planned.
|
- No further addition planned.
|
||||||
|
|
||||||
|
|
||||||
|
## [0.6.0] - 2024-03-30
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- detect nether and spawn into right nodes, more deep if and more chance
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- prevent balrogs from spawning on trap nodes, using stone group
|
||||||
|
- make the balrog whip act as a wielded light source
|
||||||
|
- check user validation on use to avoid crash on disconected
|
||||||
|
- keep balrog whip drop from exploding with the balrog due lagfix
|
||||||
|
- improved information in the mod.conf, no shit of forums or contendb
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [0.5.0] - 2021-11-27
|
## [0.5.0] - 2021-11-27
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
default
|
default
|
||||||
tnt
|
tnt
|
||||||
|
fire
|
||||||
mobs
|
mobs
|
||||||
|
nether?
|
||||||
intllib?
|
intllib?
|
@ -1 +1 @@
|
|||||||
Adds balrog mob to defeat
|
MOB balrogs to defeat, under deep and if nether so more deep
|
||||||
|
25
init.lua
25
init.lua
@ -77,7 +77,7 @@ end
|
|||||||
|
|
||||||
local CHANCE = tonumber(minetest.settings:get("mobs_balrog_chance"))
|
local CHANCE = tonumber(minetest.settings:get("mobs_balrog_chance"))
|
||||||
if (CHANCE == nil) then
|
if (CHANCE == nil) then
|
||||||
CHANCE = 500000
|
CHANCE = 50000
|
||||||
end
|
end
|
||||||
|
|
||||||
local MAX_NUMBER = tonumber(minetest.settings:get("mobs_balrog_aoc"))
|
local MAX_NUMBER = tonumber(minetest.settings:get("mobs_balrog_aoc"))
|
||||||
@ -102,7 +102,7 @@ end
|
|||||||
|
|
||||||
local MIN_HP = tonumber(minetest.settings:get("mobs_balrog_min_hp"))
|
local MIN_HP = tonumber(minetest.settings:get("mobs_balrog_min_hp"))
|
||||||
if (MIN_HP == nil) then
|
if (MIN_HP == nil) then
|
||||||
MIN_HP = 200
|
MIN_HP = 400
|
||||||
end
|
end
|
||||||
|
|
||||||
local MAX_HP = tonumber(minetest.settings:get("mobs_balrog_max_hp"))
|
local MAX_HP = tonumber(minetest.settings:get("mobs_balrog_max_hp"))
|
||||||
@ -131,6 +131,12 @@ if (PATH_FINDER == nil) then
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
local spawn_nodes = {"group:stone"}
|
||||||
|
if minetest.get_modpath("nether") then
|
||||||
|
spawn_nodes = {"nether:rack", "nether:rack_deep", "group:stone"}
|
||||||
|
CHANCE = 10000
|
||||||
|
MAX_HEIGHT = -8000
|
||||||
|
end
|
||||||
--
|
--
|
||||||
-- Balrog entity
|
-- Balrog entity
|
||||||
--
|
--
|
||||||
@ -144,7 +150,7 @@ mobs:register_mob("mobs_balrog:balrog", {
|
|||||||
walk_velocity = 3.5,
|
walk_velocity = 3.5,
|
||||||
run_velocity = 5.2,
|
run_velocity = 5.2,
|
||||||
walk_chance = WALK_CHANCE,
|
walk_chance = WALK_CHANCE,
|
||||||
jump_height = 16,
|
jump_height = 14,
|
||||||
stepheight = 2.2,
|
stepheight = 2.2,
|
||||||
view_range = VIEW_RANGE,
|
view_range = VIEW_RANGE,
|
||||||
damage = DAMAGE,
|
damage = DAMAGE,
|
||||||
@ -164,6 +170,7 @@ mobs:register_mob("mobs_balrog:balrog", {
|
|||||||
pathfinding = PATH_FINDER,
|
pathfinding = PATH_FINDER,
|
||||||
makes_footstep_sound = true,
|
makes_footstep_sound = true,
|
||||||
sounds = {
|
sounds = {
|
||||||
|
distance = VIEW_RANGE * 8,
|
||||||
war_cry = "mobs_balrog_howl",
|
war_cry = "mobs_balrog_howl",
|
||||||
death = "mobs_balrog_howl",
|
death = "mobs_balrog_howl",
|
||||||
attack = "mobs_balrog_stone_death"
|
attack = "mobs_balrog_stone_death"
|
||||||
@ -194,7 +201,7 @@ mobs:register_mob("mobs_balrog:balrog", {
|
|||||||
on_die = function(self, pos)
|
on_die = function(self, pos)
|
||||||
self.object:remove()
|
self.object:remove()
|
||||||
|
|
||||||
minetest.after(0.1, function()
|
minetest.after(0.0, function()
|
||||||
-- This has been taken from ../tnt/init.lua @243
|
-- This has been taken from ../tnt/init.lua @243
|
||||||
minetest.add_particlespawner({
|
minetest.add_particlespawner({
|
||||||
amount = 128,
|
amount = 128,
|
||||||
@ -212,10 +219,9 @@ mobs:register_mob("mobs_balrog:balrog", {
|
|||||||
texture = "fire_basic_flame.png",
|
texture = "fire_basic_flame.png",
|
||||||
collisiondetection = true,
|
collisiondetection = true,
|
||||||
})
|
})
|
||||||
|
|
||||||
tnt.boom(pos, {
|
tnt.boom(pos, {
|
||||||
name = "Balrog's Blast",
|
name = "Balrog's Blast",
|
||||||
radius = 16,
|
radius = 6,
|
||||||
damage_radius = 16,
|
damage_radius = 16,
|
||||||
disable_drops = true,
|
disable_drops = true,
|
||||||
ignore_protection = false,
|
ignore_protection = false,
|
||||||
@ -236,6 +242,7 @@ minetest.register_tool("mobs_balrog:balrog_whip", {
|
|||||||
minetest.get_background_escape_sequence("darkred"),
|
minetest.get_background_escape_sequence("darkred"),
|
||||||
inventory_image = "mobs_balrog_balrog_whip.png^[transform3",
|
inventory_image = "mobs_balrog_balrog_whip.png^[transform3",
|
||||||
on_use = function(itemstack, user, pointed_thing)
|
on_use = function(itemstack, user, pointed_thing)
|
||||||
|
if not user then return end
|
||||||
if pointed_thing.type == "nothing" then
|
if pointed_thing.type == "nothing" then
|
||||||
local dir = user:get_look_dir()
|
local dir = user:get_look_dir()
|
||||||
local pos = user:get_pos()
|
local pos = user:get_pos()
|
||||||
@ -346,6 +353,10 @@ minetest.register_tool("mobs_balrog:balrog_whip", {
|
|||||||
collisiondetection = true,
|
collisiondetection = true,
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
on_blast = function(self, damage)
|
||||||
|
return false, false, {}
|
||||||
|
end,
|
||||||
|
light_source = 14,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -355,7 +366,7 @@ minetest.register_tool("mobs_balrog:balrog_whip", {
|
|||||||
|
|
||||||
|
|
||||||
mobs:spawn({name = "mobs_balrog:balrog",
|
mobs:spawn({name = "mobs_balrog:balrog",
|
||||||
nodes = {"group:cracky"},
|
nodes = spawn_nodes,
|
||||||
max_light = MAX_LIGHT,
|
max_light = MAX_LIGHT,
|
||||||
min_light = MIN_LIGHT,
|
min_light = MIN_LIGHT,
|
||||||
interval = INTERVAL,
|
interval = INTERVAL,
|
||||||
|
11
mod.conf
11
mod.conf
@ -1,3 +1,10 @@
|
|||||||
name = mobs_balrog
|
name = mobs_balrog
|
||||||
description = Adds balrogs mob to defeat
|
description = MOB balrogs to defeat, under deep and if nether so more deep
|
||||||
depends = default, mobs, tnt
|
depends = default, fire, mobs, tnt
|
||||||
|
title = mobs_balrog
|
||||||
|
url = https://codeberg.org/minenux/minetest-mod-mobs_balrog
|
||||||
|
website = https://git.minetest.io/minenux/minetest-mod-mobs_balrog
|
||||||
|
media_license = CC-BY-SA-3.0
|
||||||
|
version = 0.6.0
|
||||||
|
min_minetest_version = 0.4.16
|
||||||
|
optional_depends = nether
|
||||||
|
@ -12,7 +12,7 @@ mobs_balrog_interval (Interval) int 60
|
|||||||
|
|
||||||
# Spawn chance, higher is less likely
|
# Spawn chance, higher is less likely
|
||||||
# Probabilita' di comparsa, maggiore e' e meno e' probabile
|
# Probabilita' di comparsa, maggiore e' e meno e' probabile
|
||||||
mobs_balrog_chance (Chance) int 500000
|
mobs_balrog_chance (Chance) int 50000
|
||||||
|
|
||||||
# Max number of spawned barlogs
|
# Max number of spawned barlogs
|
||||||
# Numero massimo di balrog generati
|
# Numero massimo di balrog generati
|
||||||
@ -28,7 +28,7 @@ mobs_balrog_max_height (Max Height) int -1800
|
|||||||
|
|
||||||
# Min hit points
|
# Min hit points
|
||||||
# Punti salute minimi
|
# Punti salute minimi
|
||||||
mobs_balrog_min_hp (Min HP) int 200
|
mobs_balrog_min_hp (Min HP) int 400
|
||||||
|
|
||||||
# Max hit points
|
# Max hit points
|
||||||
# Punti salute massimi
|
# Punti salute massimi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user