Browse Source

Fix minetest.conf.enliven and non-redundant conf editring (split at "=" correctly). Add&swap several mods (See changelog). Add build script.

Poikilos 2 weeks ago
parent
commit
d11b63517d
  1. 2
      build
  2. 12
      changelog.md
  3. 2
      pyenliven/gamebuilder.py
  4. 48
      pyenliven/metadata.py
  5. 12
      readme.md

2
build

@ -0,0 +1,2 @@
#!/bin/bash
python3 buildenliven.py --delete --no-pull

12
changelog.md

@ -7,11 +7,19 @@ Changelog](https://keepachangelog.com/en/1.0.0/).
## [git] - 2026-03-07
### Added
- Add several mods.
- bedrock2, fire_plus, frame, playerlist
- sneak mods: invisible, visible_sneak
- Add several other mods.
### Changed
- Switched to from Mobs Redo to creatura.
- Mobs Redo to creatura
- throwing_arrows to x_bows
- playeranim to bodyanim
- Swapped out several other mods.
### Removed
- homedecor_modpack & homedecor_ua
- sling
## [git] - 2026-03-07
### Added

2
pyenliven/gamebuilder.py

@ -198,7 +198,7 @@ class GameBuilder:
# Default conf path if not provided
if not conf_path:
conf_path = os.path.join(self.source_game, "minetest.conf.enliven")
conf_path = os.path.join(self.target_game, "minetest.conf.enliven")
self.update_conf(conf_path)

48
pyenliven/metadata.py

@ -78,6 +78,8 @@ gamespec['add_mods']: List[Dict[str, any]] = [
# Worldgen
{'name': "bakedclay", 'repo': ["https://notabug.org/tenplus1/bakedclay.git",
"https://codeberg.org/tenplus1/bakedclay.git"]},
{'name': "bedrock2", 'repo': "https://codeberg.org/Wuzzy/minetest_bedrock2.git",
'settings': OrderedDict(bedrock2_y=-128)},
{'name': "biome_lib", 'repo': "https://github.com/mt-mods/biome_lib.git"},
# {'name': "birthstones", 'repo': "https://github.com/Poikilos/birthstones.git"}, # commented to reduce inventory overload
{'name': "bushes_soil", 'repo': "https://github.com/Poikilos/bushes_soil.git"},
@ -95,6 +97,7 @@ gamespec['add_mods']: List[Dict[str, any]] = [
# {'name': "moreblocks", 'repo': "https://github.com/minetest-mods/moreblocks.git",
# 'why-not': "permanently changes default stairs. Has many registrations. Has its own ropes (vine-like ones).",
# 'why': "Can use place_rotated. Has stairsplus."},
# TODO: Make a mod to auto-convert corners on place&harvest (for stairsio items merged into mtg)
{'name': "rope_bridges", 'repo': "https://github.com/sfence/rope_bridges.git"},
# TODO: ^ Make rope_bridges use x_farming if moreblocks not present (can also use ropes or vines mods)
# {'name': "moreores", 'repo': "https://github.com/minetest-mods/moreores.git",
@ -153,6 +156,13 @@ gamespec['add_mods']: List[Dict[str, any]] = [
# TODO: May be contribute graphics for the "Planned Features" list. Maybe 3D.
# ── Gameplay / Items ───────────────────────────────────────
# TODO: from https://content.luanti.org/packages/PetiAPocok/minetest_extended/ add:
# TODO: snowball (or use minetest-mods/throwing or x_bows and fork https://codeberg.org/TPH/exile_snow or simpler https://content.luanti.org/packages/ComputeGraphics/snowball/ so snow drops it)
# TODO: ice and snow melting by furnace (also torch/fire if not in mtg)
# TODO: craft for green dye from cactus
# TODO: Chests drop the items what are inside of it when broke
# TODO: furnaces drop the items what are inside of it when broke
# TODO: Improved mese monster texture
{'name': "3d_armor", 'repo': ["https://github.com/stujones11/minetest-3d_armor.git",
"https://github.com/minetest-mods/3d_armor.git"]},
{'name': "anvil", 'repo': "https://github.com/minetest-mods/anvil.git"},
@ -178,8 +188,9 @@ gamespec['add_mods']: List[Dict[str, any]] = [
{'name': "flowerpot", 'repo': "https://github.com/minetest-mods/flowerpot.git",
'what': "Works with most plants, and lightweight as in no entity"},
# ^ Make sure it works with x_farming--Make compat mod if necessary. See api.md.
{'name': "homedecor_modpack", 'repo': "https://github.com/mt-mods/homedecor_modpack.git"},
{'name': "homedecor_ua", 'repo': "https://github.com/Poikilos/homedecor_ua.git"},
{'name': "frame", 'repo': "https://github.com/minetest-mods/frame.git"},
# {'name': "homedecor_modpack", 'repo': "https://github.com/mt-mods/homedecor_modpack.git"},
# {'name': "homedecor_ua", 'repo': "https://github.com/Poikilos/homedecor_ua.git"},
{'name': "item_drop", 'repo': "https://github.com/minetest-mods/item_drop.git",
'settings': {'item_drop.pickup_radius': "1.425"}},
{'name': "mesecons_carts", 'repo': "https://cheapiesystems.com/git/mesecons_carts.git"},
@ -192,20 +203,22 @@ gamespec['add_mods']: List[Dict[str, any]] = [
# TODO: ^ Simplify Painted 3D Armor and just make banners combine with shields
{'name': "ropes", 'repo': "https://github.com/minetest-mods/ropes.git",
'why-not': "Use ropes from x_farming instead."},
{'name': "sling", 'repo': "https://github.com/minetest-mods/sling.git"},
# {'name': "sling", 'repo': "https://github.com/minetest-mods/sling.git"},
{'name': "signs_lib", 'repo': "https://github.com/mt-mods/signs_lib.git"},
{'name': "slimenodes", 'repo': "https://github.com/Poikilos/slimenodes.git"},
{'name': "sounding_line", 'repo': "https://github.com/minetest-mods/sounding_line.git"},
# {'name': "stamina", 'repo': "https://codeberg.org/tenplus1/stamina.git",
# 'comment': "Patches item_eat to affect saturation instead of health.",
# 'help-dev': "Changes ItemStack before register_on_item_eat callbacks, but they can use 6th param for original ItemStack",
# 'privs': {'invincible':['no_hunger']}},
# 'privs': {'invincible': ['no_hunger']}},
# TODO: ^ Modify stamina to depend on hunger_ng *or* hbhunger, which many mods use (usually hunger_ng, but often either)
# {'name': "sponge", 'repo': "https://github.com/BenjieFiftysix/sponge"},
# TODO: ^ Test, make sure is in worldgen. Integrate with marinara?
{'name': "throwing", 'repo': "https://github.com/minetest-mods/throwing.git"},
{'name': "throwing_arrows", 'repo': "https://github.com/minetest-mods/throwing_arrows.git",
'settings': {'throwing.enable_arrow': "true"}},
# {'name': "throwing_arrows", 'repo': "https://github.com/minetest-mods/throwing_arrows.git",
# 'settings': {'throwing.enable_arrow': "true"}},
{'name': "x_bows", 'repo': "https://bitbucket.org/minetest_gamers/x_bows.git",
'why': "Makes arrows stick into things"},
{'name': "travelnet", 'repo': "https://github.com/Sokomine/travelnet.git"},
# {'name': "ts_furniture", 'repo': "https://github.com/minetest-mods/ts_furniture.git"},
# TODO: ^ Make sitting work for steps (and slabs?) instead.
@ -227,9 +240,11 @@ gamespec['add_mods']: List[Dict[str, any]] = [
'what': "Additional farming including giant cacti, bonemeal, empty soup bowl, placeable food",
'why': "better graphics than farming redo"},
# TODO: ^ Make sure x_farming works with: minetest_game/farming, hunger_ng
# TODO: ^ Add white dye from bonemeal recipe if not present
{'name': "xdecor", 'repo': "https://codeberg.org/Wuzzy/xdecor-libre.git"},
# TODO: ^ Remove shaped nodes.
# TODO: ^ Make kc_modpack unregister the enchanting table and register a table for its system
# TODO: Add version of vessels with jars from minetest_extended?
# ── Player UX ──────────────────────────────────────────────
{'name': "ambience", 'repo': ["https://notabug.org/tenplus1/ambience.git",
@ -237,6 +252,7 @@ gamespec['add_mods']: List[Dict[str, any]] = [
{'name': "effervescence", 'repo': "https://github.com/EmptyStar/effervescence.git"},
# TODO: ^ designed for Asuna, so may need work for: naturalbiomes, livingjungle, plantlife_modpack
{'name': "environment_music", 'repo': "https://github.com/Poikilos/environment_music.git"},
{'name': "fire_plus", 'repo': "https://github.com/Dumpster-Studios/fire_plus.git"},
{'name': "hbsprint", 'repo': "https://github.com/minetest-mods/hbsprint.git"},
{'name': "hunger_ng", 'repo': ["https://gitlab.com/4w/hunger_ng.git",
"https://git.0x7be.net/dirk/hunger_ng"],
@ -249,12 +265,17 @@ gamespec['add_mods']: List[Dict[str, any]] = [
'exclude': ["music_default", "music_dfcaverns"],
'what': "music_api such as for Poikilos' environment_music"},
{'name': "player_monoids", 'repo': "https://github.com/minetest-mods/player_monoids.git"},
{'name': "playeranim", 'repo': "https://github.com/minetest-mods/playeranim.git",
'what': "Makes the head, and the right arm when you're mining, face the way you're facing"},
# {'name': "playeranim", 'repo': "https://github.com/minetest-mods/playeranim.git",
# 'what': "Makes the head, and the right arm when you're mining, face the way you're facing"},
{'name': "bodyanim", 'repo': "https://github.com/dacctal/luanti-bodyanim.git",
'description': "Player bodies follow their walk direction, and player heads follow their look direction. Based on Lone_Wolf's headanim"},
# TODO: ^ Make sneak animation for bodyanim
{'name': "playereffects", 'repo': "https://github.com/sys4-fr/playereffects"},
{'name': "playerlist", 'repo': "https://github.com/LizzyFleckenstein03/playerlist.git",
'what': "Show player list on sneak. Has color API and ping.",
'content_url': "https://content.luanti.org/packages/AiTechEye/invisible/"},
# {'name': "skinsdb", 'repo': "https://github.com/minetest-mods/skinsdb.git"},
# {'name': "sprint", 'repo': "https://github.com/GunshipPenguin/sprint.git"},
# TODO: ^ Make sure stamina mod fully implements sprint
# {'name': "unified_inventory",'repo': [
# "https://github.com/minetest-mods/unified_inventory.git",
# "https://github.com/MinetestForFun/unified_inventory" # fork with "nicer interface"
@ -264,12 +285,19 @@ gamespec['add_mods']: List[Dict[str, any]] = [
# 'why-not': "Now included in minetest_game"},
# {'name': "bags", 'repo': "https://github.com/cornernote/minetest-bags.git"},
{'name': "prestibags", 'repo': "https://github.com/Poikilos/prestibags.git"},
# TODO: make dyed_prestibags (See also https://codeberg.org/Codiac/prestibags)
# {'name': "woodcutting", 'repo': "https://github.com/minetest-mods/woodcutting.git",
# 'what': "harvest tree while sneak pressed to gather whole tree"},
# {'name': "radiant_damage", 'repo': "https://github.com/minetest-mods/radiant_damage.git"},
# TODO: ^ Make walking on hardened lava cause damage
{'name': "invisible", 'repo': "https://github.com/AiTechEye/invisible.git",
'items': {'moderator': ['invisible:tool']}, # i is alias for invisible:tool
'privs': {'moderator': ['invisible']}},
# NOTE: ^ See also visible_sneak
{'name': "unified_stamina", 'repo': "https://github.com/t-affeldt/unified_stamina.git",
'why': "Works with various stamina mods including hbsprint"},
{'name': "visible_sneak", 'repo': "https://github.com/wireva/visible_sneak.git"}
# TODO: ^ Make sure can sneak under things (1.5 m), otherwise switch to https://content.luanti.org/packages/zempik10/good_sneaking/ and fix non-moving legs
# ── Legacy / Special ───────────────────────────────────────
# {'name': "animal_materials_legacy"},
@ -425,7 +453,7 @@ def update_conf(path, new_settings):
f" No '=' in {rawL.rstrip()}")
dst.write(rawL)
continue
parts = line.split(line, 1)
parts = line.split("=", 1)
parts[0] = parts[0].strip()
if not parts[0]:
logger.warning(

12
readme.md

@ -8,6 +8,18 @@ ENLIVEN is a work in progress, but the goals are:
- Immersion: Create an experience where UI and UX are intuitive so that
they don't distract from storytelling or in other cases the "feeling"
(such as survival or creativity).
- Reduce nodes and instead emphasize emergent behavior (unique
interaction between existing nodes, craftitems, and/or mobs), such
as by:
- Adding interactivity to existing nodes not making more nodes.
Instead of making mods like ts_furniture, make player able
to sit on more nodes.
- Adding features using existing ores instead of adding more ores.
minetest_game doesn't have an endgame, so making one is better
than cluttering the main world. Instead of making something lazy
(new ore) that permanently affects balance and ramping, wait until
we can make something better (realms and/or structures with
cohesive lore to add distinct advancement tiers).
- [Ramping](https://poikilos.org/2019/08/17/ramping-in-sandbox-games/):
What is done so far includes making minor changes to mods to make
a clear techtree that can't be short-circuited in "cheap" (both

Loading…
Cancel
Save