#!/bin/sh # Copyright 2017 expertmm. License: # 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. #First make sure all folders in $HOME/.minetest are created (I am not sure whether this is required!): # minetestserver # Mods were found at https://forum.minetest.net/viewforum.php?f=11 # * Git version uses /home/*/minetest/games and /usr/local/share/minetest/games but the latter is used for minetestserver (minetest-server package) # (Ubuntu 14.04 Trusty Tahr Server) folders were found using: # cd / # sudo find -name 'worlds' (worlds folder is in $HOME/.minetest) # sudo find -name 'minimal' (stable build [such as 0.4.9 games folder is /usr/share/games/minetest/games, but git version games folder is /usr/local/share/minetest/games) # ISSUES: # * ERROR[Main]: Singleplayer mode says following mods could not be found: 3d_armor areas mobs mobs_animal mobs_monster protector technic treasurer unified_inventory xban2 sudo echo "starting ENLIVEN installer script..." #region paste this part into terminal to get some great environment variables if [ "$0" = "-bash" ]; then echo "you must have pasted this into terminal, so assuming REPO_PATH" REPO_PATH="$HOME/GitHub/EnlivenMinetest" echo "$REPO_PATH" else SCRIPT=$(readlink -f "$0") # Absolute path this script is in, thus /home/user/bin SCRIPTPATH=$(dirname "$SCRIPT") REPO_PATH=$(dirname "$SCRIPTPATH") fi PATCHES_PATH="$REPO_PATH/patches" if [ ! -d "$PATCHES_PATH" ]; then # maybe moved somewhere or this code was pasted PATCHES_PATH=$HOME/GitHub/EnlivenMinetest/patches fi if [ ! -d "$PATCHES_PATH" ]; then # maybe running from root of repo PATCHES_PATH="patches" fi if [ ! -d "$PATCHES_PATH" ]; then # should work if ran from folder where exists PATCHES_PATH="../patches" fi if [ ! -d "$PATCHES_PATH" ]; then echo "ERROR: could not find patches such as in $PATCHES_PATH" echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 fi # NOTE: minetest mods (other than 0.4.16 client-side mods) are ALWAYS ONLY installed on server, unless you need them for singleplayer mtgame_name="minetest_game" USR_SHARE_MINETEST=/usr/share/games/minetest try_path="/usr/share/minetest" if [ -d "$try_path" ]; then # Arch linux USR_SHARE_MINETEST="$try_path" fi if [ ! -d "$USR_SHARE_MINETEST" ]; then # IF git version is installed and regular one is NOT: try_path="/usr/local/share/minetest" if [ -d "$try_path" ]; then USR_SHARE_MINETEST="$try_path" fi fi # UNUSED (unknown use): MT_GAMES_DIR=$HOME/.minetest/mods # intentionally skip the slash in the following line since $USR_SHARE_MINETEST already starts with one: MT_BACKUP_GAMES_DIR=$HOME/Backup$USR_SHARE_MINETEST/games MT_GAMES_DIR=$USR_SHARE_MINETEST/games MT_MYGAME_BAK=$USR_SHARE_MINETEST/ENLIVEN_BAK MT_MYGAME_NAME=ENLIVEN MT_MYGAME_DIR=$MT_GAMES_DIR/$MT_MYGAME_NAME # formerly MT_MYGAME_MODDIR: MT_MYGAME_MODS_PATH=$MT_MYGAME_DIR/mods MT_MYWORLD_NAME=FCAGameAWorld MT_MYWORLD_DIR=$HOME/.minetest/worlds/$MT_MYWORLD_NAME WORLD_MT_PATH=$MT_MYWORLD_DIR/world.mt err_txt=$HOME/err-enliven.txt # see also https://www.shellscript.sh/functions.html add_zip_mod() { cd $HOME/Downloads MTMOD_DEST_NAME=$1 MTMOD_UNZ_NAME=$2 URL=$3 MTMOD_SRC_ZIP=$MTMOD_DEST_NAME.zip MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME if [ ! -z "`ls | grep $MTMOD_UNZ_NAME`" ]; then # works with wildcard in variable rm -Rf $MTMOD_UNZ_NAME fi if [ -f $MTMOD_SRC_ZIP ]; then rm -f $MTMOD_SRC_ZIP fi if [ -d "$MTMOD_DEST_PATH" ]; then sudo rm -Rf "$MTMOD_DEST_PATH" fi wget -O $MTMOD_SRC_ZIP $URL unzip "$MTMOD_SRC_ZIP" if [ -d "$MTMOD_UNZ_NAME" ]; then # outer case is for safety in case variable is blank or something if [ -d "$MTMOD_UNZ_NAME/.git" ]; then rm -Rf "$MTMOD_UNZ_NAME/.git" fi if [ -f "$MTMOD_UNZ_NAME/.gitignore" ]; then rm -Rf "$MTMOD_UNZ_NAME/.gitignore" fi # remove etc to make users downloading mods faster: if [ -d "$MTMOD_UNZ_NAME/etc" ]; then rm -Rf "$MTMOD_UNZ_NAME/etc" fi fi sudo mv $MTMOD_UNZ_NAME "$MTMOD_DEST_PATH" sudo rm -Rf "$MTMOD_DEST_PATH/etc" if [ ! -d "$MTMOD_DEST_PATH" ]; then echo " ERROR: failed to unzip $MTMOD_DEST_PATH, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 else echo " added as $MTMOD_DEST_PATH" fi } add_git_mod() { cd $HOME/Downloads MTMOD_DEST_NAME=$1 MTMOD_UNZ_NAME=$2 URL=$3 MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME if [ ! -z "`ls | grep $MTMOD_UNZ_NAME`" ]; then # works with wildcard in variable rm -Rf $MTMOD_UNZ_NAME fi if [ -d "$MTMOD_DEST_PATH" ]; then sudo rm -Rf "$MTMOD_DEST_PATH" fi git clone $URL if [ -d "$MTMOD_UNZ_NAME" ]; then # outer case is for safety in case variable is blank or something if [ -d "$MTMOD_UNZ_NAME/.git" ]; then rm -Rf "$MTMOD_UNZ_NAME/.git" fi if [ -f "$MTMOD_UNZ_NAME/.gitignore" ]; then rm -Rf "$MTMOD_UNZ_NAME/.gitignore" fi # remove etc to make users downloading mods faster: if [ -d "$MTMOD_UNZ_NAME/etc" ]; then rm -Rf "$MTMOD_UNZ_NAME/etc" fi fi sudo mv $MTMOD_UNZ_NAME "$MTMOD_DEST_PATH" sudo rm -Rf "$MTMOD_DEST_PATH/etc" if [ ! -d "$MTMOD_DEST_PATH" ]; then echo " ERROR: failed to unzip $MTMOD_DEST_PATH, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 else echo " added as $MTMOD_DEST_PATH" fi } remove_mod() { cd $HOME/Downloads MTMOD_DEST_NAME=$1 MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME if [ -d "$MTMOD_DEST_PATH" ]; then sudo rm -Rf "$MTMOD_DEST_PATH" fi if [ -d "$MTMOD_DEST_PATH" ]; then echo " ERROR in remove_mod: failed to remove $MTMOD_DEST_PATH, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 else echo " removed $MTMOD_DEST_PATH" fi } #endregion paste this part into terminal to get some great environment variables if [ -d /tmp/local_mts_user ]; then # handle paranoia about directory with similar name rm -Rf /tmp/local_mts_user fi echo $USER > /tmp/local_mts_user # BACKUP world.mt: # workaround bug in earlier version of installer sudo chown `cat /tmp/local_mts_user` "$MT_MYWORLD_DIR/world.mt" if [ -f "$MT_MYWORLD_DIR/world.mt.1st" ]; then # workaround bug in earlier version of installer sudo chown `cat /tmp/local_mts_user` "$MT_MYWORLD_DIR/world.mt.1st" fi if [ ! -d "$MT_MYGAME_DIR" ]; then mkdir "$MT_MYGAME_DIR" else # workaround bug in earlier version of installer sudo chown -R `cat /tmp/local_mts_user` "$MT_MYGAME_DIR" fi if [ -f "$MT_MYWORLD_DIR/world.mt.1st" ]; then echo "Already backed up world.mt to $MT_MYWORLD_DIR/world.mt.1st" else cp "$MT_MYWORLD_DIR/world.mt" "$MT_MYWORLD_DIR/world.mt.1st" echo "The original world.mt is now backed up at $MT_MYWORLD_DIR/world.mt.1st" fi if [ -f "$MT_MYWORLD_DIR/world.mt" ]; then mv -f "$MT_MYWORLD_DIR/world.mt" "$MT_MYWORLD_DIR/world.mt.bak" fi # REMAKE world.mt cd if [ -f "$WORLD_MT_PATH" ]; then # workaround bug in earlier version of installer sudo chown `cat /tmp/local_mts_user` "$WORLD_MT_PATH" sudo chgrp `cat /tmp/local_mts_user` "$WORLD_MT_PATH" fi echo "gameid = $MT_MYGAME_NAME" > "$WORLD_MT_PATH" echo "backend = leveldb" >> "$WORLD_MT_PATH" #MT_MYGAME_DIR (a Minetest "game") is the equivalent of a Minecraft modpack, however, in this case it is actually a collection of mods and modpacks, either of which can be in the mods folder #cd if [ ! -d "$HOME/Downloads" ]; then mkdir "$HOME/Downloads" fi cd "$HOME/Downloads" if [ -d "$MT_MYGAME_BAK" ]; then echo "already backed up to $MT_MYGAME_BAK" else sudo mv "$MT_MYGAME_DIR" "$MT_MYGAME_BAK" sudo mkdir "$MT_MYGAME_DIR" fi #sudo mkdir "$MT_MYGAME_DIR" #sudo mkdir "$MT_MYGAME_MODS_PATH" if [ ! -d "$MT_MYGAME_DIR/" ]; then echo "ERROR: failed to create $MT_MYGAME_DIR, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 fi #sudo cp -R $USR_SHARE_MINETEST/games/$mtgame_name/mods/* "$MT_MYGAME_DIR/mods/" if [ -d "$USR_SHARE_MINETEST/games/minetest" ]; then # Arch linux mtgame_name="minetest" fi sudo cp -R $USR_SHARE_MINETEST/games/$mtgame_name/* "$MT_MYGAME_DIR/" #wget https://github.com/BlockMen/cme/releases/download/v2.3/cme-2_3-BlockMen.zip #unzip cme-2_3-BlockMen.zip #sudo mv cme "$MT_MYGAME_MODS_PATH/cme" ##DO NOT DO THIS (since cme is a modpack): echo "load_mod_cme = true" >> "$WORLD_MT_PATH" #echo "#cme Creatures MOB-Engine (cme) is a modpack" >> "$WORLD_MT_PATH" # description="(must be logged in to forum to download release version at https://forum.minetest.net/download/file.php?id=5282)" # author="TenPlus1" add_git_mod mobs mobs_redo https://github.com/tenplus1/mobs_redo.git echo "load_mod_mobs = true" >> "$WORLD_MT_PATH" add_git_mod mobs_monster mobs_monster https://github.com/tenplus1/mobs_monster.git echo "load_mod_mobs_monster = true" >> "$WORLD_MT_PATH" add_git_mod mobs_animal mobs_animal https://github.com/tenplus1/mobs_animal.git echo "load_mod_mobs_animal = true" >> "$WORLD_MT_PATH" # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=9376" # author="tenplus1" # description="not the original 2012 protector or 2012 fork of 2012 protector; must be logged in to download protector.zip release version at https://forum.minetest.net/download/file.php?id=5046" add_git_mod protector protector https://github.com/tenplus1/protector.git #sudo su - #WRITEABLE_MINETEST_CONF=$USR_SHARE_MINETEST/games/$MT_MYGAME_NAME/minetest.conf WRITEABLE_MINETEST_CONF=$HOME/minetest.conf rm -f "$HOME/minetest.conf" if [ ! -f "$USR_SHARE_MINETEST/games/$MT_MYGAME_NAME/minetest.conf" ]; then sudo cp "$USR_SHARE_MINETEST/games/$mtgame_name/minetest.conf" "$USR_SHARE_MINETEST/games/$MT_MYGAME_NAME/minetest.conf.1st" fi cp "$USR_SHARE_MINETEST/games/$mtgame_name/minetest.conf" "$WRITEABLE_MINETEST_CONF" touch "$WRITEABLE_MINETEST_CONF" #4080 since boundaries in chunkymap/singleimage.py (to be compatible with approximate browser max image size) are -4096 to 4096 echo "map_generation_limit = 4096" >> "$WRITEABLE_MINETEST_CONF" #NOTE: map_generation_limit (aka world boundary, world border, or world limit) must be divisible by 64, so for example, 5000 results in invisible wall at 4928 echo "protector_radius = 7" >> "$WRITEABLE_MINETEST_CONF" echo "protector_flip = true" >> "$WRITEABLE_MINETEST_CONF" echo "protector_pvp = true" >> "$WRITEABLE_MINETEST_CONF" echo "protector_pvp_spawn = 10" >> "$WRITEABLE_MINETEST_CONF" echo "protector_drop = false" >> "$WRITEABLE_MINETEST_CONF" echo "protector_hurt = 3" >> "$WRITEABLE_MINETEST_CONF" echo "default_privs = interact,shout,home" >> "$WRITEABLE_MINETEST_CONF" echo "max_users = 50" >> "$WRITEABLE_MINETEST_CONF" echo "motd = \"Actions and chat messages are logged. Use inventory to see recipes (use web for live map if available).\"" >> "$WRITEABLE_MINETEST_CONF" echo "disallow_empty_passwords = true" >> "$WRITEABLE_MINETEST_CONF" echo "secure.trusted_mods = advanced_npc" >> "$WRITEABLE_MINETEST_CONF" echo "server_dedicated = false" >> "$WRITEABLE_MINETEST_CONF" echo "hudbars_bar_type = statbar_modern" >> "$WRITEABLE_MINETEST_CONF" sudo mv -f $HOME/minetest.conf "$USR_SHARE_MINETEST/games/$MT_MYGAME_NAME/minetest.conf" echo "load_mod_protector = true" >> "$WORLD_MT_PATH" #formerly https://github.com/kaeza/minetest-xban2/archive/master.tar.gz add_git_mod xban2 xban2 https://github.com/minetest-mods/xban2.git echo "load_mod_xban2 = true" >> "$WORLD_MT_PATH" echo "Installing ShadowNinja's " echo "Installing ShadowNinja's " >> $MTMOD_SRC_ZIP.txt add_git_mod areas areas https://github.com/ShadowNinja/areas.git echo "load_mod_areas = true" >> "$WORLD_MT_PATH" if [ -f "$MT_MYGAME_DIR/game.conf.1st" ]; then echo "Already backed up $MT_MYGAME_DIR/game.conf to $MT_MYGAME_DIR/game.conf.1st" else sudo cp "$MT_MYGAME_DIR/game.conf" "$MT_MYGAME_DIR/game.conf.1st" fi echo "name = $MT_MYGAME_NAME" > "$HOME/game.conf" sudo mv -f "$HOME/game.conf" "$MT_MYGAME_DIR/game.conf" #su - #FAILS: echo "name = $MT_MYGAME_NAME" > "$MT_MYGAME_DIR/game.conf" #sudo nano "$MT_MYGAME_DIR/game.conf" echo "" echo "You should see $MT_MYGAME_NAME in the list below if the game was configured properly:" minetestserver --gameid list echo "" add_git_mod unified_inventory unified_inventory https://github.com/minetest-mods/unified_inventory.git echo "load_mod_unified_inventory = true" >> "$WORLD_MT_PATH" add_git_mod technic technic https://github.com/minetest-mods/technic.git # load technic/technic: echo "load_mod_technic = true" >> "$WORLD_MT_PATH" add_git_mod treasurer minetest_treasurer http://repo.or.cz/minetest_treasurer.git echo "load_mod_treasurer = true" >> "$WORLD_MT_PATH" cd "$HOME/Downloads" MTMOD_DEST_NAME=trm_pyramids MTMOD_UNZ_NAME=trm_pyramids MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME if [ ! -z "`ls | grep $MTMOD_UNZ_NAME`" ]; then # works with wildcard in variable rm -Rf "$MTMOD_UNZ_NAME" fi mkdir "$MTMOD_UNZ_NAME" cd "$MTMOD_UNZ_NAME" wget https://github.com/MinetestForFun/server-minetestforfun/raw/master/mods/trm_pyramids/depends.txt wget https://github.com/MinetestForFun/server-minetestforfun/raw/master/mods/trm_pyramids/init.lua wget https://github.com/MinetestForFun/server-minetestforfun/raw/master/mods/trm_pyramids/more_trms.lua wget https://github.com/MinetestForFun/server-minetestforfun/blob/master/LICENSE if [ -d "$MTMOD_DEST_PATH" ]; then sudo rm -Rf "$MTMOD_DEST_PATH" fi sudo mkdir "$MTMOD_DEST_PATH" sudo mv -f depends.txt "$MTMOD_DEST_PATH/" sudo mv -f init.lua "$MTMOD_DEST_PATH/" sudo mv -f more_trms.lua "$MTMOD_DEST_PATH/" sudo mv -f LICENSE "$MTMOD_DEST_PATH/" cd .. rmdir "$MTMOD_UNZ_NAME" # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=11153&hilit=hunger" # description="Wuzzy's hudbars (no builtin bars; used by sprint, hbhunger, and hbarmor)" add_git_mod hudbars minetest_hudbars git://repo.or.cz/minetest_hudbars.git # author="Wuzzy" # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=11153&hilit=hunger" add_git_mod hbarmor minetest_hbarmor git://repo.or.cz/minetest_hbarmor.git # author="Wuzzy # description="hbhunger for hudbars" # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=11153&hilit=hunger" add_git_mod hbhunger minetest_hbhunger git://repo.or.cz/minetest_hbhunger.git add_git_mod moreblocks moreblocks https://github.com/minetest-mods/moreblocks.git add_git_mod pipeworks pipeworks https://github.com/minetest-mods/pipeworks.git add_git_mod plantlife_modpack plantlife_modpack https://github.com/minetest-mods/plantlife_modpack.git # forum_url="https://forum.minetest.net/viewtopic.php?f=9&t=12368" # description="Installing Napiophelios's lapis fork since has blocks, but minetest-mods has a version as well, with dye (not used): https://forum.minetest.net/viewtopic.php?f=9&t=11287" add_git_mod lapis LapisLazuli https://github.com/Napiophelios/LapisLazuli.git echo "patching lapis (Napiophelios's fork) to enable columns..." cd $HOME/Downloads if [ -f "init.lua" ]; then sudo rm init.lua fi MTMOD_DEST_NAME=lapis MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME head -3 "$MTMOD_DEST_PATH/init.lua" > init.lua if [ -f "$MTMOD_DEST_PATH/init.lua" ]; then if [ ! -f "$MTMOD_DEST_PATH/columns_enabled" ]; then # cat starting at line after head command above to not skip any # lines, in case later version changes position of lines echo 'dofile(minetest.get_modpath("lapis").."/columns.lua")' >> init.lua tail -n +4 "$MTMOD_DEST_PATH/init.lua" >> init.lua echo "true" > "columns_enabled" sudo mv -f columns_enabled "$MTMOD_DEST_PATH/" sudo mv -f init.lua "$MTMOD_DEST_PATH/" echo "PATCHED $MTMOD_DEST_PATH/init.lua to enable columns" else echo "WARNING: not enabling columns since $MTMOD_DEST_PATH/columns_enabled file exists" fi else echo "FAILED to patch lapis since no $MTMOD_DEST_PATH/init.lua" echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 fi echo "not installing helicopter--crashes 0.4.14-git, but was updated on 2017-06-08 and was not tested since then" # add_git_mod helicopter helicopter https://github.com/SokolovPavel/helicopter.git remove_mod helicopter add_git_mod biome_lib biome_lib https://github.com/minetest-mods/biome_lib.git add_git_mod moretrees moretrees https://github.com/minetest-mods/moretrees.git add_git_mod 3d_armor minetest-3d_armor https://github.com/stujones11/minetest-3d_armor.git #mv minetest-3d_armor-master minetest-3d_armor_MODPACK #sudo mv minetest-3d_armor_MODPACK/wieldview $MT_MYGAME_MODS_PATH/wieldview #sudo mv minetest-3d_armor_MODPACK/3d_armor $MT_MYGAME_MODS_PATH/3d_armor #sudo mv minetest-3d_armor_MODPACK/shields $MT_MYGAME_MODS_PATH/shields #echo "load_mod_wieldview = true" >> "$WORLD_MT_PATH" echo "load_mod_3d_armor = true" >> "$WORLD_MT_PATH" #echo "load_mod_shields = true" >> "$WORLD_MT_PATH" #echo "load_mod_technic_armor = false" >> "$WORLD_MT_PATH" add_git_mod caverealms minetest-caverealms https://github.com/HeroOfTheWinds/minetest-caverealms #if [ -f "master.zip" ]; then #rm master.zip #fi #wget https://github.com/Splizard/minetest-mod-snow/archive/master.zip #mv master.zip snow.zip #unzip snow.zip #mv minetest-mod-snow-master snow #sudo mv snow "$MT_MYGAME_MODS_PATH/snow" # (since snow prevents server 0.4.13 git 2016-02-16 from starting): #sudo mv $MT_MYGAME_MODS_PATH/snow $HOME/Downloads/snow # formerly https://github.com/Calinou/moreores.git add_git_mod moreores moreores https://github.com/minetest-mods/moreores.git # forum_url="https://forum.minetest.net/viewtopic.php?f=9&t=9650" add_git_mod sprint sprint https://github.com/GunshipPenguin/sprint.git #the following is NOT needed, since one of the mods above adds the home gui and home permission (but no /home or /sethome command) #if [ -f "master.zip" ]; then #rm master.zip #fi #wget https://github.com/cornernote/minetest-home_gui/archive/master.zip #mv master.zip minetest-home_gui.zip #unzip minetest-home_gui.zip #sudo mv minetest-home_gui-master/home_gui "$MT_MYGAME_MODS_PATH/home_gui" #echo "snow:snow 255 255 255" >> $HOME/minetest/util/colors.txt #echo "snow:snow_block 255 255 255" >> $HOME/minetest/util/colors.txt #echo "snow:ice 144 217 234" >> $HOME/minetest/util/colors.txt #sh chunkymap/install-ubuntu.sh add_git_mod mesecons mesecons https://github.com/minetest-mods/mesecons ############ REQUIRES MESECONS ############ ##### NEEDED since carts in minetest_game added much of this functionality but not yet startstoprail nor detectorrail ##### #See also carts plus, a fork of carts (the PilzAdam one later added to minetest_game) https://github.com/Kilarin/minetest-mod-carts-plus which adds touring rails, a hand break, switching, and view locking #NOTE: boost_cart has handbrake (back key), Rail junction switching with the 'right-left' walking keys #So either install this mod or do (less functionality): #minetest.register_alias("boost_cart:detectorrail", "carts:rail") #minetest.register_alias("boost_cart:startstoprail", "carts:powerrail") #-- carts:brakerail #-- carts:cart #-- carts:powerrail #-- carts:rail # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=10172&hilit=boost+cart" add_git_mod boost_cart boost_cart https://github.com/SmallJoker/boost_cart.git echo "Installing minetest-mods' (NOT MinetestForFun's PvP fork of Echoes91's, NOT Echoes91's Throwing enhanced NOT PilzAdam's NOT Jeija's) Throwing " add_git_mod throwing throwing https://github.com/minetest-mods/throwing.git add_git_mod throwing_arrows throwing_arrows https://github.com/minetest-mods/throwing_arrows.git add_git_mod tsm_mines tsm_mines http://repo.or.cz/tsm_mines.git add_git_mod tsm_railcorridors tsm_railcorridors http://repo.or.cz/RailCorridors/tsm_railcorridors.git echo "Installing Minetestforfun's (NOT wulfsdad's) fishing " echo "Installing Minetestforfun's (NOT wulfsdad's) fishing " >> fishing.txt add_git_mod fishing fishing https://github.com/MinetestForFun/fishing.git cd "$HOME/Downloads" echo "Installing AntumMT's modernized fork of Kilarin's compassgps (NOT TeTpaAka, nor Echo, nor PilzAdam compass) " echo "Installing AntumMT's modernized fork of Kilarin's compassgps (NOT TeTpaAka, nor Echo, nor PilzAdam compass) " >> compassgps.txt # https://github.com/Kilarin/compassgps.git add_git_mod compassgps mod-compassgps https://github.com/AntumMT/mod-compassgps.git # author="ShadowNinja" # forum_url="https://forum.minetest.net/viewtopic.php?id=8434" add_git_mod whitelist whitelist https://github.com/ShadowNinja/whitelist.git add_git_mod playereffects minetest_playereffects http://repo.or.cz/minetest_playereffects.git # Byakuren. . # add_git_mod monoidal_effects monoidal_effects https://github.com/minetest-mods/monoidal_effects.git # monoidal_effects by Byakuren [raymoo on GitHub] is deprecated by player_monoids by Byakuren [raymoo on GitHub] +playereffects by Wuzzy # according to the author https://forum.minetest.net/viewtopic.php?t=13941 add_git_mod player_monoids player_monoids https://github.com/minetest-mods/player_monoids.git # add_zip_mod worldedit Uberi-Minetest-WorldEdit-* https://github.com/Uberi/MineTest-WorldEdit/zipball/master # add_zip_mod worldedit Minetest-WorldEdit-* https://github.com/Uberi/MineTest-WorldEdit/zipball/master echo "Installing Uberi's worldedit..." add_git_mod worldedit Minetest-WorldEdit https://github.com/Uberi/Minetest-WorldEdit.git #MarkBu's ambience/ambiance ambient sounds (burli on https://forum.minetest.net/viewtopic.php?f=9&t=14814 ) #add_zip_mod ambianceplus ambianceplus-master https://github.com/MarkuBu/ambianceplus/archive/master.zip # tenplus1's ambience/ambiance ambient sounds (fork linked at original's thread at https://forum.minetest.net/viewtopic.php?f=11&t=2807&start=275 ) add_zip_mod ambience ambience-master https://github.com/tenplus1/ambience/archive/master.zip # expertmm fork of LeMagnesium's minetest-mod-metatools add_zip_mod metatools minetest-mod-metatools-master https://github.com/expertmm/minetest-mod-metatools/archive/master.zip #[mod-pack] sky critters (for mobs_redo) [mobs_sky] #requires mobs redo add_zip_mod mobs_sky mobs_sky-master https://github.com/blert2112/mobs_sky/archive/master.zip # forum_url: https://forum.minetest.net/viewtopic.php?f=11&t=13857 # description: # * REPLACES pyramids. # * Works with mobs_redo and creatures. # * optionally makes use of fire (in minetest_game; only uses fire:flint_and_steel), mobs, creatures, bones, xpanes (now part of minetest_game) # * only RECIPES require fake_fire and xpanes # * NOW (2017-2018) IS A MODPACK: formerly was a mod named spawners, now is a modpack containing: # * spawners_env: appears in Dungeons and Temples (the pink stone ones); spawns hostile mobs; has small chance of spawning a spawner # * spawners_mobs: spawns non-hostile mobs # * spawners_ores: spawns ores #add_zip_mod spawners minetest_gamers-spawners-* https://bitbucket.org/minetest_gamers/spawners/get/master.zip add_git_mod spawners spawners https://bitbucket.org/minetest_gamers/spawners.git MTMOD_DEST_NAME=spawners/spawners_ores MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME if [ -d "$MTMOD_DEST_PATH" ]; then echo "removing $MTMOD_DEST_NAME..." sudo rm -Rf "$MTMOD_DEST_PATH" else echo "ERROR: could not find $MTMOD_DEST_PATH for removal, so cancelling ENLIVEN install" echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 fi if [ -d "$MTMOD_DEST_PATH" ]; then echo "ERROR: could not remove $MTMOD_DEST_PATH for removal, so cancelling ENLIVEN install" echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 fi echo "SPAWN_PYRAMIDS = true" > settings.txt echo "SPAWNERS_GENERATE = true" >> settings.txt echo "CHESTS_GENERATE = true" >> settings.txt sudo mv settings.txt "$MTMOD_DEST_PATH/" echo "NOTE: in spawners, only SPAWNERS_GENERATE or CHESTS_GENERATE, not both (SPAWNERS_GENERATE overrides) spawn in world for now. See thread for updated info: https://forum.minetest.net/viewtopic.php?f=11&t=13857&start=25" echo "see also expertmm's game-install-enliven-testing-SPAWNERS_BOTH_DEBUG.txt" # forum_url: https://forum.minetest.net/viewtopic.php?t=12189 # description: Adds animations to the players' head add_zip_mod playeranim playeranim-master https://github.com/minetest-mods/playeranim/archive/master.zip add_zip_mod homedecor_modpack homedecor_modpack-master https://github.com/minetest-mods/homedecor_modpack/archive/master.zip # expertmm fork of a rather non-maintained mod--forum link is at https://forum.minetest.net/viewtopic.php?id=3663 # (original mod was at https://github.com/Doc22/birthstones-mod/archive/master.zip) add_zip_mod birthstones minetest-birthstones-master https://github.com/expertmm/minetest-birthstones/archive/master.zip add_zip_mod bakedclay bakedclay-master https://github.com/tenplus1/bakedclay/archive/master.zip # https://forum.minetest.net/viewtopic.php?f=11&t=12440&p=310915#p310915 # wget https://forum.minetest.net/download/file.php?id=6140 # forum link file.php?id=6140 changed, so use salahzar's GitHub upload instead: add_zip_mod invhack minetest-invhack-master https://github.com/salahzar/minetest-invhack/archive/master.zip add_zip_mod unifieddyes unifieddyes-master https://github.com/minetest-mods/unifieddyes/archive/master.zip #Sokomine's original version has no security ( https://forum.minetest.net/viewtopic.php?id=4877 ) # https://github.com/Sokomine/travelnet/archive/master.zip add_zip_mod travelnet travelnet-master https://github.com/expertmm/travelnet/archive/master.zip add_zip_mod anvil anvil-master https://github.com/minetest-mods/anvil/archive/master.zip add_zip_mod sling sling-master https://github.com/minetest-mods/sling/archive/master.zip #REPLACES PilzAdam's, modified by kaeza, maintained by VenessaE; FORMERLY in homedecor_modpack #forum post: https://forum.minetest.net/viewtopic.php?t=13762 # kaeza's signs_lib (forked from PilzAdam's and TheXYZ's code) was moved here from: https://github.com/kaeza/minetest-signs_lib-extrafonts/archive/master.zip add_zip_mod signs_lib signs_lib-master https://github.com/minetest-mods/signs_lib/archive/master.zip # EXTRA FONTS PACK for signs_lib DOESN'T SEEM TO WORK IN MULTIPLAYER, and is unwieldy to use: #cd $HOME/Downloads #MTMOD_DL_ZIP=master.zip #MTMOD_SRC_ZIP=minetest-signs_lib-extrafonts.zip #MTMOD_UNZ_NAME=minetest-signs_lib-extrafonts-master #MTMOD_DEST_NAME=signs_lib/textures #MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$MTMOD_DEST_NAME #if [ ! -z "`ls | grep $MTMOD_UNZ_NAME`" ]; then # works with wildcard in variable # rm -Rf $MTMOD_UNZ_NAME #fi #if [ -f $MTMOD_DL_ZIP ]; then # rm -f $MTMOD_DL_ZIP #fi #if [ -f $MTMOD_SRC_ZIP ]; then # rm -f $MTMOD_SRC_ZIP #fi #if [ -d "$MTMOD_DEST_PATH" ]; then # sudo rm -Rf "$MTMOD_DEST_PATH" #fi #wget https://github.com/kaeza/minetest-signs_lib-extrafonts/archive/master.zip #mv $MTMOD_DL_ZIP "$MTMOD_SRC_ZIP" #unzip "$MTMOD_SRC_ZIP" ##sudo cp -f $MTMOD_UNZ_NAME/15px/* "$MTMOD_DEST_PATH/" #sudo cp -f $MTMOD_UNZ_NAME/31px/* "$MTMOD_DEST_PATH/" #if [ ! -d "$MTMOD_DEST_PATH" ]; then # echo "ERROR: failed to unzip $MTMOD_DEST_PATH, so cannot continue." > $err_txt # cat $err_txt # echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." # sleep 1 # echo " 3..." # sleep 1 # echo " 2..." # sleep 1 # echo " 1..." # sleep 1 # exit 1 #fi add_git_mod farming farming https://github.com/tenplus1/farming.git # forum_url="https://forum.minetest.net/viewtopic.php?f=11&t=10423" # Wuzzy's slimenodes mod (only available via /give command). # web view: http://repo.or.cz/w/minetest_slimenodes.git add_git_mod slimenodes minetest_slimenodes http://repo.or.cz/minetest_slimenodes.git # treasurer forum post here: https://forum.minetest.net/viewtopic.php?t=7292 # (this trmp is linked from there) #(a trmp is just a modpack of TRMs for treasurer. At least one trm must be installed for treasurer to to anything) # MTMOD_DL_ZIP=file.php?id=1301 # Copied to GitHub by ClockGen (I posted the link below on the forum page) # wget -O $MTMOD_SRC_ZIP https://forum.minetest.net/download/file.php?id=1301 add_git_mod trmp_minetest_game trmp_minetest_game https://github.com/ClockGen/trmp_minetest_game.git # NOTE: tsm_chests_dungeon supercedes dungeon_loot: if [ -d "$MT_MYGAME_MODS_PATH/dungeon_loot" ]; then echo "WARNING: tsm_chests_dungeon may not be compatible with dungeon_loot" echo "press Ctrl C to cancel installing ENLIVEN" sleep 4 echo "4..." sleep 1 echo "3..." sleep 1 echo "2..." sleep 1 echo "1..." sleep 1 fi add_git_mod tsm_chests_dungeon minetest_tsm_chests_dungeon http://repo.or.cz/minetest_tsm_chests_dungeon.git # NOTE: a skin database is at http://minetest.fensta.bplaced.net/ # bell07's 2016 (FORK of Krock's fork of dmonty's) u_skins (u_skins is a skin GUI that works with unified_inventory, whereas other skin GUIs often use inventory++) # Krock's is outdated and has remaining bugs such as in updater: wget https://github.com/SmallJoker/minetest-u_skinsdb/archive/master.zip # bell07's no longer exists # wget https://github.com/bell07/minetest-u_skinsdb/archive/master.zip # add_zip_mod u_skins minetest-u_skinsdb-master https://github.com/dmonty2/minetest-u_skinsdb/archive/master.zip #add_zip_mod u_skins minetest-u_skinsdb-master https://github.com/dmonty2/minetest-u_skinsdb/archive/master.zip # add_zip_mod skinsdb minetest-u_skinsdb-master https://github.com/dmonty2/minetest-u_skinsdb/archive/master.zip # forked and is now a part of minetest-mods thanks to bell07 MATCHING_MODS_BEFORE="`ls $MT_MYGAME_MODS_PATH | grep skin`" remove_mod u_skinsdb remove_mod u_skins PATCH_SKINS_MOD_NAME="skinsdb" # used further down too! add_zip_mod $PATCH_SKINS_MOD_NAME skinsdb-master https://github.com/minetest-mods/skinsdb/archive/master.zip if [ ! -z "$MATCHING_MODS_BEFORE" ]; then echo "Removed $MATCHING_MODS_BEFORE then installed $PATCH_SKINS_MOD_NAME (this output is shown on purpose)" fi # Update skins database (WARNING: skin numbering affects chosen player skin): # (jq is a json processor, required for the updater bash script:) # sudo apt-get -y install jq # cd "$MTMOD_DEST_PATH" # cd u_skins #bell07's version is a mod, not a modpack # cd updater # NOTE: # Only download entire skins database if you # REALLY, REALLY MEAN IT: # ./update_skins_db.sh # (note, bell07 has the fixed bash script, but the python3 script is still bugged as of 2016-01-29, and includes a .NET assembly that seems to only work for Windows (has meta directory not found error on mono for Linux) # PATCH FURTHER DOWN WILL REMOVE EXISTING SKINS AND ONLY ADD EnlivenMinetest skins from patches folder echo echo echo if [ -d "$PATCHES_PATH" ]; then echo "adding the following necessary integration mods:" ls $PATCHES_PATH/mods-integration/ sudo cp -R $PATCHES_PATH/mods-integration/* "$MT_MYGAME_MODS_PATH/" echo echo "adding the following multiplayer mods:" ls $PATCHES_PATH/mods-multiplayer/ sudo cp -R $PATCHES_PATH/mods-multiplayer/* "$MT_MYGAME_MODS_PATH/" echo "adding non-manual patches to subgame (vs minetest_game and downloaded mods):" echo "patching $MT_MYGAME_DIR (files only, so 'omitting directory' warnings are ok)..." sudo cp -f $PATCHES_PATH/subgame/* "$MT_MYGAME_DIR/" echo "patching $MT_MYGAME_DIR (files only, so 'omitting directory' warnings are ok)..." sudo cp -f $PATCHES_PATH/subgame/menu/* "$MT_MYGAME_DIR/menu/" echo "patching $MT_MYGAME_DIR (files only, so 'omitting directory' warnings are ok)..." sudo cp -f $PATCHES_PATH/subgame/mods/mobs/textures/* "$MT_MYGAME_DIR/mods/mobs/textures/" echo "patching $MT_MYGAME_DIR (files only, so 'omitting directory' warnings are ok)..." sudo cp -f $PATCHES_PATH/subgame/mods/mobs_monster/textures/* "$MT_MYGAME_DIR/mods/mobs_monster/textures/" # REMOVE EXISTING SKINS AND ONLY ADD expertmm skins: MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/$PATCH_SKINS_MOD_NAME SUB_NAME="textures" # include u_skins since u_skins/u_skins IS THE MOD in the modpack SUB_PATH="$MTMOD_DEST_PATH/$SUB_NAME" if [ -d "$SUB_PATH" ]; then echo "removing original $SUB_PATH/character_*..." rm -Rf $SUB_PATH/character_* # cannot have quotes if using wildcards fi sudo cp -f $PATCHES_PATH/mods-multiplayer/$PATCH_SKINS_MOD_NAME/$SUB_NAME/* "$SUB_PATH" if [ ! -d "$SUB_PATH" ]; then echo "ERROR: failed to install expertmm's skins to $SUB_PATH, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 else echo "installed expertmm's skins to $SUB_PATH" fi SUB_NAME="meta" # include u_skins since u_skins/u_skins IS THE MOD in the modpack SUB_PATH="$MTMOD_DEST_PATH/$SUB_NAME" if [ -d "$SUB_PATH" ]; then echo "removing original $SUB_PATH/character_*..." rm -Rf $SUB_PATH/character_* # cannot have quotes if using wildcards fi sudo cp -f $PATCHES_PATH/mods-multiplayer/$PATCH_SKINS_MOD_NAME/$SUB_NAME/* "$SUB_PATH" if [ ! -d "$SUB_PATH" ]; then echo "ERROR: failed to install expertmm's skins to $SUB_PATH, so cannot continue." > $err_txt cat $err_txt echo " press Ctrl C to cancel ENLIVEN install or this terminal will close..." sleep 1 echo " 3..." sleep 1 echo " 2..." sleep 1 echo " 1..." sleep 1 exit 1 else echo "installed metadata for expertmm's skins to $SUB_PATH" fi echo "mods affected: mobs mobs_monsters $PATCH_SKINS_MOD_NAME" PATCHED_FLAG="" BASIS_PATH=$PATCHES_PATH/subgame-basis/mods/bones/init.lua MODIFIED_PATH=$PATCHES_PATH/subgame/mods/bones/init.lua MTMOD_DEST_NAME=bones MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/bones TARGET_PATH=$MTMOD_DEST_PATH/init.lua TRY_DIFF="`diff $BASIS_PATH $TARGET_PATH`" if [ -z "$TRY_DIFF" ]; then sudo cp -f $MODIFIED_PATH "$MT_MYGAME_DIR/mods/bones/" echo "done attempting to patch $MTMOD_DEST_PATH/" else echo "FAILED to patch $MTMOD_DEST_NAME since $TARGET_PATH differs from known version (this is not a problem if you ran the patcher more than once)." fi BASIS_PATH=$PATCHES_PATH/subgame-basis/mods/homedecor_modpack/homedecor/gastronomy.lua MODIFIED_PATH=$PATCHES_PATH/subgame/mods/homedecor_modpack/homedecor/gastronomy.lua TARGET_PATH=$MT_MYGAME_MODS_PATH/homedecor_modpack/homedecor/gastronomy.lua MTMOD_DEST_NAME=homedecor_modpack MTMOD_DEST_PATH=$MT_MYGAME_MODS_PATH/homedecor_modpack/homedecor TRY_DIFF="`diff $BASIS_PATH $TARGET_PATH`" if [ -z "$TRY_DIFF" ]; then sudo cp -f $MODIFIED_PATH "$MTMOD_DEST_PATH/" echo "done attempting to patch $MTMOD_DEST_PATH/" else echo "FAILED to patch $MTMOD_DEST_NAME since $TARGET_PATH differs from known version (this is not a problem if you ran the patcher more than once)." fi BASIS_PATH=$PATCHES_PATH/subgame-basis/mods/homedecor_modpack/homedecor/crafts.lua MODIFIED_PATH=$PATCHES_PATH/subgame/mods/homedecor_modpack/homedecor/crafts.lua TARGET_PATH=$MT_MYGAME_MODS_PATH/homedecor_modpack/homedecor/crafts.lua MTMOD_DEST_NAME=homedecor_modpack TRY_DIFF="`diff $BASIS_PATH $TARGET_PATH`" if [ -z "$TRY_DIFF" ]; then sudo cp -f $MODIFIED_PATH "$MTMOD_DEST_PATH/" echo "done attempting to patch $MTMOD_DEST_PATH/" else echo "FAILED to patch $MTMOD_DEST_NAME since $TARGET_PATH differs from known version (this is not a problem if you ran the patcher more than once)." fi if [ -d "$PATCHES_PATH/subgame/mods/homedecor_modpack/homedecor/models" ]; then # deprecated, but copy in case gets un-deprecated cp -f $PATCHES_PATH/subgame/mods/homedecor_modpack/homedecor/models/* "$MTMOD_DEST_PATH/models/" fi # NOTE: quotes don't work with wildcard cp -f $PATCHES_PATH/subgame/mods/homedecor_modpack/homedecor/textures/* "$MTMOD_DEST_PATH/textures/" echo "# not recommended:" echo "sudo cp -Rf $PATCHES_PATH/mods-stopgap/* $MT_MYGAME_MODS_PATH/" echo "sudo rm -Rf $MT_MYGAME_MODS_PATH/1.nonworking" else echo "did not find $PATCHES_PATH, so skipped automatic patching which is partially implemented" fi echo echo "# remove not available on 0.4.16 stable (is only avail on 0.4.16-dev or higher)" echo "sudo rm -Rf /usr/share/games/minetest/games/ENLIVEN/mods/worldedit/worldedit_brush" echo echo echo echo "#### $WORLD_MT_PATH: ####" cat "$WORLD_MT_PATH" echo "### end $WORLD_MT_PATH ##" echo "" echo "" echo "" #echo "Remember, if you are using Better HUD + Hunger, add the values for the new meat to hunger.lua" #echo "--see " echo "NOTE: hud_hunger/hunger/food.lua now comes with values for food from mobs." #hud_hunger now includes mobs food (see /usr/local/share/minetest/games/enliven/mods/hud_hunger/hunger/food.lua ) echo "" echo "NOW MAKE SURE YOU EDIT $MT_MYGAME_MODS_PATH/protector/init.lua near line 325 to block comment ( --[[ then afterward --]]) the on_rightclick registration (since protection block right-clicked by its owner crashes server)" echo "Then make sure you login, REMEMBERING to put a password in second box, then logout then:" echo " nano $MT_MYWORLD_DIR/players/username where username is YOUR username, give yourself the following permissions to edit areas, edit protector blocks (and other protector nodes), and do other things: areas,delprotect,home,noclip,fly,rollback,settime,teleport,bring,fast,password,give,ban,privs,kick,worldedit" echo " bring: allows to you teleport other players" echo " ban: allows /ban ip and /unban ip (and /whitelist add player and /whitelist remove player commands if whitelist mod is installed)" echo " kick: allows /kick player" echo " privs: allows grant and revoke commands" echo " delprotect: circumvents protector blocks, including allowing removing them" echo " invhack: editing player inventories as moderator" echo "" echo " * for invhack, remember to do: /giveme invhack:tool" echo " * uncomment columns in lapis mod" echo " * Make sure client (server done already above) minetest.conf has secure.trusted_mods = advanced_npc" echo " * Make sure writable minetest conf was successfully written" echo " over $MT_MYGAME_DIR/minetest.conf with (NOTE: protector_drop is deprecated):" echo "protector_radius = 7" echo "protector_pvp = true" echo "protector_pvp_spawn = 10" echo "protector_drop = false" echo "protector_hurt = 3" echo "" echo "default_privs = interact,shout,home" echo "max_users = 50" echo "motd = \"Actions and chat messages are logged. Visit fcacloud.com/minetest for recipes and live map.\"" echo "disallow_empty_passwords = true" echo "" echo "#not all settings can be changed in this minetest.conf (see minetest.conf.example in THIS folder)" echo "#some settings can only be changed in client's local copy of minetest.conf (see or login scripts in network)"